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__ */ ((x3) => typeof require !== "undefined" ? require : typeof Proxy !== "undefined" ? new Proxy(x3, {
  get: (a2, b) => (typeof require !== "undefined" ? require : a2)[b]
}) : x3)(function(x3) {
  if (typeof require !== "undefined") return require.apply(this, arguments);
  throw Error('Dynamic require of "' + x3 + '" is not supported');
});
var __esm = (fn, res, err2) => function __init() {
  if (err2) throw err2[0];
  try {
    return fn && (res = (0, fn[__getOwnPropNames(fn)[0]])(fn = 0)), res;
  } catch (e) {
    throw err2 = [e], e;
  }
};
var __commonJS = (cb, mod2) => function __require3() {
  try {
    return mod2 || (0, cb[__getOwnPropNames(cb)[0]])((mod2 = { exports: {} }).exports, mod2), mod2.exports;
  } catch (e) {
    throw mod2 = 0, e;
  }
};
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 = (mod2, isNodeMode, target2) => (target2 = mod2 != null ? __create(__getProtoOf(mod2)) : {}, __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 || !mod2 || !mod2.__esModule ? __defProp(target2, "default", { value: mod2, enumerable: true }) : target2,
  mod2
));
var __toCommonJS = (mod2) => __copyProps(__defProp({}, "__esModule", { value: true }), mod2);

// ../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 redactUrlCredentials(text) {
  let result2 = "";
  let cursor = 0;
  while (cursor < text.length) {
    const schemeSep = text.indexOf("://", cursor);
    if (schemeSep === -1)
      return result2 + text.slice(cursor);
    const authorityStart = schemeSep + 3;
    result2 += text.slice(cursor, authorityStart);
    cursor = authorityStart;
    if (schemeSep === 0 || !isSchemeTailChar(text.charCodeAt(schemeSep - 1)))
      continue;
    let lastAt = -1;
    for (let i4 = authorityStart; i4 < text.length; i4++) {
      const code = text.charCodeAt(i4);
      if (code === 47 || code === 63 || code === 35 || isAsciiWhitespace(code))
        break;
      if (code === 64)
        lastAt = i4;
    }
    if (lastAt !== -1)
      cursor = lastAt + 1;
  }
  return result2;
}
function redactAndSanitize(text) {
  let sanitized = "";
  for (const char of text) {
    const code = char.codePointAt(0);
    if (code <= 31 || code >= 127 && code <= 159)
      continue;
    sanitized += char;
  }
  return redactUrlCredentials(sanitized);
}
function isSchemeTailChar(code) {
  return code >= 48 && code <= 57 || code >= 65 && code <= 90 || code >= 97 && code <= 122;
}
function isAsciiWhitespace(code) {
  return code === 32 || code === 9 || code === 10 || code === 11 || code === 12 || code === 13;
}
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, opts3) {
        super(message, { cause: opts3?.cause });
        this.code = code.startsWith("ERR_PNPM_") ? code : `ERR_PNPM_${code}`;
        this.hint = opts3?.hint;
        this.attempts = opts3?.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 ${redactUrlCredentials(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";
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/fast-safe-stringify/2.1.1/71177aa317bf9c10d6ba54feb1e03d154d670845bac275960b4cc587a01d5783/node_modules/fast-safe-stringify/index.js
var require_fast_safe_stringify = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/fast-safe-stringify/2.1.1/71177aa317bf9c10d6ba54feb1e03d154d670845bac275960b4cc587a01d5783/node_modules/fast-safe-stringify/index.js"(exports2, module2) {
    module2.exports = stringify2;
    stringify2.default = stringify2;
    stringify2.stable = deterministicStringify;
    stringify2.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 stringify2(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 i4;
      if (typeof val === "object" && val !== null) {
        for (i4 = 0; i4 < stack.length; i4++) {
          if (stack[i4] === 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 (i4 = 0; i4 < val.length; i4++) {
            decirc(val[i4], i4, i4, stack, val, depth, options);
          }
        } else {
          var keys4 = Object.keys(val);
          for (i4 = 0; i4 < keys4.length; i4++) {
            var key = keys4[i4];
            decirc(val[key], key, i4, 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 i4;
      if (typeof val === "object" && val !== null) {
        for (i4 = 0; i4 < stack.length; i4++) {
          if (stack[i4] === 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 (i4 = 0; i4 < val.length; i4++) {
            deterministicDecirc(val[i4], i4, i4, stack, val, depth, options);
          }
        } else {
          var tmp = {};
          var keys4 = Object.keys(val).sort(compareFunction);
          for (i4 = 0; i4 < keys4.length; i4++) {
            var key = keys4[i4];
            deterministicDecirc(val[key], key, i4, 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 i4 = 0; i4 < replacerStack.length; i4++) {
            var part = replacerStack[i4];
            if (part[1] === key && part[0] === val) {
              val = part[2];
              replacerStack.splice(i4, 1);
              break;
            }
          }
        }
        return replacer2.call(this, key, val);
      };
    }
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/individual/3.0.0/82ec8ef054bfaf915092db8496dd7cdf5d8a529ff6202ce432d93772b51b5045/node_modules/individual/index.js
var require_individual = __commonJS({
  "../../../../../setup-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;
    }
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/bole/5.0.29/6922e0a3a11b46fb67db71b821bacb20a87db33d8d1fb079a84a148dc6373834/node_modules/bole/format.js
var require_format = __commonJS({
  "../../../../../setup-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;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/bole/5.0.29/6922e0a3a11b46fb67db71b821bacb20a87db33d8d1fb079a84a148dc6373834/node_modules/bole/bole.js
var require_bole = __commonJS({
  "../../../../../setup-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 os20 = __require("os");
    var pid = process.pid;
    var hasObjMode = false;
    var scache = [];
    var hostname;
    try {
      hostname = os20.hostname();
    } catch (e) {
      hostname = os20.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(err2, out) {
      out.err = {
        name: err2.name,
        message: err2.message,
        code: err2.code,
        // perhaps
        stack: stackToString(err2)
      };
    }
    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 stringify2(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 i4 = 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(stringify2(level, nameSt, message, out) + "\n"));
          return;
        }
        for (; i4 < l; i4++) {
          if (objectMode(outputs[i4])) {
            if (objectOut === void 0) {
              objectOut = extend3(level, name, message, out);
            }
            outputs[i4].write(objectOut);
          } else {
            if (stringified === void 0) {
              stringified = Buffer.from(stringify2(level, nameSt, message, out) + "\n");
            }
            outputs[i4].write(stringified);
          }
        }
      };
    }
    function bole7(name) {
      function boleLogger(subname) {
        return bole7(name + ":" + subname);
      }
      function makeLogger(p, level) {
        p[level] = levelLogger(level, name);
        return p;
      }
      return levels.reduce(makeLogger, boleLogger);
    }
    bole7.output = function output(opt) {
      let b = false;
      if (Array.isArray(opt)) {
        opt.forEach(bole7.output);
        return bole7;
      }
      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 bole7;
    };
    bole7.reset = function reset2() {
      for (const level of levels) {
        individual[level].splice(0, individual[level].length);
      }
      individual.fastTime = false;
      return bole7;
    };
    bole7.setFastTime = function setFastTime(b) {
      if (!arguments.length) {
        individual.fastTime = true;
      } else {
        individual.fastTime = b;
      }
      return bole7;
    };
    module2.exports = bole7;
  }
});

// ../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";
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/split2/4.2.0/40e414c630ab7f443818aa50ee06a670a46fe60cf81f7f81a46733d76a4ce6ba/node_modules/split2/index.js
var require_split2 = __commonJS({
  "../../../../../setup-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: StringDecoder4 } = __require("string_decoder");
    var kLast = /* @__PURE__ */ Symbol("last");
    var kDecoder = /* @__PURE__ */ Symbol("decoder");
    function transform3(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 i4 = 0; i4 < list2.length; i4++) {
        try {
          push(this, this.mapper(list2[i4]));
        } 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 split4(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 = transform3;
      options.flush = flush;
      options.readableObjectMode = true;
      const stream2 = new Transform2(options);
      stream2[kLast] = "";
      stream2[kDecoder] = new StringDecoder4("utf8");
      stream2.matcher = matcher;
      stream2.mapper = mapper;
      stream2.maxLength = options.maxLength;
      stream2.skipOverflow = options.skipOverflow || false;
      stream2.overflow = false;
      stream2._destroy = function(err2, cb) {
        this._writableState.errorEmitted = false;
        cb(err2);
      };
      return stream2;
    }
    module2.exports = split4;
  }
});

// ../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();
  }
});

// ../../../../../setup-pnpm/store/v11/links/@rushstack/worker-pool/0.7.22/ad5e60f5afbdfd4a572cd9186100f398e76bfd5ae8be80912be8c14590fa55ce/node_modules/@rushstack/worker-pool/lib-commonjs/WorkerPool.js
var require_WorkerPool = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@rushstack/worker-pool/0.7.22/ad5e60f5afbdfd4a572cd9186100f398e76bfd5ae8be80912be8c14590fa55ce/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((resolve4, reject3) => this._onComplete.push([resolve4, 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((resolve4, reject3) => {
          this._pending.push([resolve4, 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", (err2) => {
          this._onError(err2);
          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 [resolve4] of this._onComplete.splice(0)) {
            resolve4();
          }
        }
      }
      /**
       * 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;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@rushstack/worker-pool/0.7.22/ad5e60f5afbdfd4a572cd9186100f398e76bfd5ae8be80912be8c14590fa55ce/node_modules/@rushstack/worker-pool/lib-commonjs/index.js
var require_lib_commonjs = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@rushstack/worker-pool/0.7.22/ad5e60f5afbdfd4a572cd9186100f398e76bfd5ae8be80912be8c14590fa55ce/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;
    } });
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/is-windows/1.0.2/8de297753f5a2f0d3154b27e41b774686b53f5e3c186cf9f734f0a5ce4054b2e/node_modules/is-windows/index.js
var require_is_windows = __commonJS({
  "../../../../../setup-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));
      };
    });
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/yocto-queue/1.2.2/348d8ba76aa8900ea8a2afbfce3cd78b8cda7172621258f8b7f12b7e257691be/node_modules/yocto-queue/index.js
var Node, Queue;
var init_yocto_queue = __esm({
  "../../../../../setup-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();
        }
      }
    };
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/p-limit/7.3.1/96c91b58d3cf12a5f7864997332990fa791102c36d2ab98129102c47dae29741/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 run2 = async (function_, resolve4, arguments_) => {
    const result2 = (async () => function_(...arguments_))();
    resolve4(result2);
    try {
      await result2;
    } catch {
    }
    next2();
  };
  const enqueue = (function_, resolve4, reject3, arguments_) => {
    const queueItem = { reject: reject3 };
    new Promise((internalResolve) => {
      queueItem.run = internalResolve;
      queue2.enqueue(queueItem);
    }).then(run2.bind(void 0, function_, resolve4, arguments_));
    if (activeCount < concurrency) {
      resumeNext();
    }
  };
  const generator = (function_, ...arguments_) => new Promise((resolve4, reject3) => {
    enqueue(function_, resolve4, 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, index2) => generator(function_, value, index2));
        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({
  "../../../../../setup-pnpm/store/v11/links/@/p-limit/7.3.1/96c91b58d3cf12a5f7864997332990fa791102c36d2ab98129102c47dae29741/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,
  finishWorkers: () => finishWorkers,
  hardLinkDir: () => hardLinkDir,
  importPackage: () => importPackage,
  initStoreDir: () => initStoreDir,
  readPkgFromCafs: () => readPkgFromCafs,
  restartWorkerPool: () => restartWorkerPool,
  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(opts3) {
  if (!workerPool) {
    workerPool = createTarballWorkerPool();
  }
  const localWorker = await workerPool.checkoutWorkerAsync(true);
  return new Promise((resolve4, 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) {
        try {
          opts3.storeIndex.setRawMany(indexWrites);
        } catch (err2) {
          reject3(err2);
          return;
        }
      }
      resolve4(value);
    });
    localWorker.postMessage({
      type: "add-dir",
      storeDir: opts3.storeDir,
      dir: opts3.dir,
      filesIndexFile: opts3.filesIndexFile,
      sideEffectsCacheKey: opts3.sideEffectsCacheKey,
      readManifest: opts3.readManifest,
      pkg: opts3.pkg,
      appendManifest: opts3.appendManifest,
      files: opts3.files,
      includeNodeModules: opts3.includeNodeModules
    });
  });
}
async function addFilesFromTarball(opts3) {
  if (!workerPool) {
    workerPool = createTarballWorkerPool();
  }
  const localWorker = await workerPool.checkoutWorkerAsync(true);
  return new Promise((resolve4, 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: opts3.url
          }));
          return;
        }
        reject3(new PnpmError(error.code ?? "TARBALL_EXTRACT", `Failed to add tarball from "${opts3.url}" to store: ${error.message}`));
        return;
      }
      if (indexWrites) {
        try {
          opts3.storeIndex.queueWrites(indexWrites);
        } catch (err2) {
          reject3(err2);
          return;
        }
      }
      resolve4(value);
    });
    localWorker.postMessage({
      type: "extract",
      buffer: opts3.buffer,
      storeDir: opts3.storeDir,
      integrity: opts3.integrity,
      filesIndexFile: opts3.filesIndexFile,
      readManifest: opts3.readManifest,
      pkg: opts3.pkg,
      appendManifest: opts3.appendManifest,
      ignoreFilePattern: opts3.ignoreFilePattern
    });
  });
}
async function readPkgFromCafs(ctx, filesIndexFile, opts3) {
  if (!workerPool) {
    workerPool = createTarballWorkerPool();
  }
  const localWorker = await workerPool.checkoutWorkerAsync(true);
  return new Promise((resolve4, 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);
        }
      }
      resolve4(value);
    });
    localWorker.postMessage({
      type: "readPkgFromCafs",
      filesIndexFile,
      ...ctx,
      ...opts3
    });
  });
}
async function importPackage(opts3) {
  return limitImportingPackage(async () => {
    if (!workerPool) {
      workerPool = createTarballWorkerPool();
    }
    const localWorker = await workerPool.checkoutWorkerAsync(true);
    return new Promise((resolve4, reject3) => {
      localWorker.once("message", ({ status, error, value }) => {
        workerPool.checkinWorker(localWorker);
        if (status === "error") {
          reject3(new PnpmError(error.code ?? "LINKING_FAILED", `[importPackage ${opts3.targetDir}] ${error.message}`));
          return;
        }
        resolve4(value);
      });
      localWorker.postMessage({
        type: "link",
        ...opts3
      });
    });
  });
}
async function symlinkAllModules(opts3) {
  if (!workerPool) {
    workerPool = createTarballWorkerPool();
  }
  const localWorker = await workerPool.checkoutWorkerAsync(true);
  return new Promise((resolve4, reject3) => {
    localWorker.once("message", ({ status, error, value }) => {
      workerPool.checkinWorker(localWorker);
      if (status === "error") {
        const hint = opts3.deps?.[0]?.modules != null ? createErrorHint(error, opts3.deps[0].modules) : void 0;
        reject3(new PnpmError(error.code ?? "SYMLINK_FAILED", `[symlinkAllModules] ${error.message}`, { hint }));
        return;
      }
      resolve4(value);
    });
    localWorker.postMessage({
      type: "symlinkAllModules",
      ...opts3
    });
  });
}
function createErrorHint(err2, checkedDir) {
  if ("code" in err2 && err2.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((resolve4, reject3) => {
    localWorker.once("message", ({ status, error }) => {
      workerPool.checkinWorker(localWorker);
      if (status === "error") {
        reject3(new PnpmError(error.code ?? "HARDLINK_FAILED", error.message));
        return;
      }
      resolve4();
    });
    localWorker.postMessage({
      type: "hardLinkDir",
      src: src2,
      destDirs
    });
  });
}
async function initStoreDir(storeDir) {
  if (!workerPool) {
    workerPool = createTarballWorkerPool();
  }
  const localWorker = await workerPool.checkoutWorkerAsync(true);
  return new Promise((resolve4, reject3) => {
    localWorker.once("message", ({ status, error }) => {
      workerPool.checkinWorker(localWorker);
      if (status === "error") {
        reject3(new PnpmError(error.code ?? "INIT_CAFS_FAILED", error.message));
        return;
      }
      resolve4();
    });
    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(opts3) {
        super("TARBALL_INTEGRITY", `Got unexpected checksum for "${opts3.url}". Wanted "${opts3.expected}". Got "${opts3.found}".`, {
          attempts: opts3.attempts,
          hint: `The downloaded tarball does not match the integrity recorded in the lockfile. pnpm will not silently overwrite the locked integrity \u2014 that would defeat the lockfile's protection if a registry or proxy is serving tampered content.

If you trust the new content (legitimate republish, or stale local metadata cache):

  - Run "pnpm store prune" and retry, in case only the metadata cache is out of date.
  - Run "pnpm install --update-checksums" to refresh the locked integrity from the registry.

If you did not expect this package to change, treat it as a potential supply-chain issue and verify the new content before re-running with --update-checksums.`
        });
        this.found = opts3.found;
        this.expected = opts3.expected;
        this.algorithm = opts3.algorithm;
        this.sri = opts3.sri;
        this.url = opts3.url;
      }
    };
    limitImportingPackage = pLimit(4);
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/load-json-file/7.0.1/dbd04cc64095fbd5cd55a7af38baeafcf5d82cb8d99f88d07cf0902ad6b5e65b/node_modules/load-json-file/index.js
import { readFileSync, promises as fs } from "node:fs";
async function loadJsonFile(filePath, options) {
  const buffer3 = await readFile(filePath);
  return parse2(buffer3, options);
}
function loadJsonFileSync(filePath, options) {
  const buffer3 = readFileSync(filePath);
  return parse2(buffer3, options);
}
var readFile, parse2;
var init_load_json_file = __esm({
  "../../../../../setup-pnpm/store/v11/links/@/load-json-file/7.0.1/dbd04cc64095fbd5cd55a7af38baeafcf5d82cb8d99f88d07cf0902ad6b5e65b/node_modules/load-json-file/index.js"() {
    ({ readFile } = fs);
    parse2 = (buffer3, { beforeParse, reviver } = {}) => {
      let data = new TextDecoder().decode(buffer3);
      if (typeof beforeParse === "function") {
        data = beforeParse(data);
      }
      return JSON.parse(data, reviver);
    };
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/semver/7.8.5/50b76942b76b1567bb275b07b36d4efd1f7bc678ee222317e6ec7ff2c047c60d/node_modules/semver/internal/debug.js
var require_debug = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/semver/7.8.5/50b76942b76b1567bb275b07b36d4efd1f7bc678ee222317e6ec7ff2c047c60d/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;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/semver/7.8.5/50b76942b76b1567bb275b07b36d4efd1f7bc678ee222317e6ec7ff2c047c60d/node_modules/semver/internal/constants.js
var require_constants = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/semver/7.8.5/50b76942b76b1567bb275b07b36d4efd1f7bc678ee222317e6ec7ff2c047c60d/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
    };
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/semver/7.8.5/50b76942b76b1567bb275b07b36d4efd1f7bc678ee222317e6ec7ff2c047c60d/node_modules/semver/internal/re.js
var require_re = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/semver/7.8.5/50b76942b76b1567bb275b07b36d4efd1f7bc678ee222317e6ec7ff2c047c60d/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, max4] of safeRegexReplacements) {
        value = value.split(`${token}*`).join(`${token}{0,${max4}}`).split(`${token}+`).join(`${token}{1,${max4}}`);
      }
      return value;
    };
    var createToken = (name, value, isGlobal) => {
      const safe = makeSafeRegex(value);
      const index2 = R2++;
      debug(name, index2, value);
      t2[name] = index2;
      src2[index2] = value;
      safeSrc[index2] = safe;
      re[index2] = new RegExp(value, isGlobal ? "g" : void 0);
      safeRe[index2] = 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*$");
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/semver/7.8.5/50b76942b76b1567bb275b07b36d4efd1f7bc678ee222317e6ec7ff2c047c60d/node_modules/semver/internal/parse-options.js
var require_parse_options = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/semver/7.8.5/50b76942b76b1567bb275b07b36d4efd1f7bc678ee222317e6ec7ff2c047c60d/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;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/semver/7.8.5/50b76942b76b1567bb275b07b36d4efd1f7bc678ee222317e6ec7ff2c047c60d/node_modules/semver/internal/identifiers.js
var require_identifiers = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/semver/7.8.5/50b76942b76b1567bb275b07b36d4efd1f7bc678ee222317e6ec7ff2c047c60d/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
    };
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/semver/7.8.5/50b76942b76b1567bb275b07b36d4efd1f7bc678ee222317e6ec7ff2c047c60d/node_modules/semver/classes/semver.js
var require_semver = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/semver/7.8.5/50b76942b76b1567bb275b07b36d4efd1f7bc678ee222317e6ec7ff2c047c60d/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 isPrereleaseIdentifier = (prerelease, identifier) => {
      const identifiers = identifier.split(".");
      if (identifiers.length > prerelease.length) {
        return false;
      }
      for (let i4 = 0; i4 < identifiers.length; i4++) {
        if (compareIdentifiers(prerelease[i4], identifiers[i4]) !== 0) {
          return false;
        }
      }
      return true;
    };
    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 i4 = 0;
        do {
          const a2 = this.prerelease[i4];
          const b = other.prerelease[i4];
          debug("prerelease compare", i4, 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 (++i4);
      }
      compareBuild(other) {
        if (!(other instanceof _SemVer)) {
          other = new _SemVer(other, this.options);
        }
        let i4 = 0;
        do {
          const a2 = this.build[i4];
          const b = other.build[i4];
          debug("build compare", i4, 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 (++i4);
      }
      // 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 i4 = this.prerelease.length;
              while (--i4 >= 0) {
                if (typeof this.prerelease[i4] === "number") {
                  this.prerelease[i4]++;
                  i4 = -2;
                }
              }
              if (i4 === -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 (isPrereleaseIdentifier(this.prerelease, identifier)) {
                const prereleaseBase = this.prerelease[identifier.split(".").length];
                if (isNaN(prereleaseBase)) {
                  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;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/semver/7.8.5/50b76942b76b1567bb275b07b36d4efd1f7bc678ee222317e6ec7ff2c047c60d/node_modules/semver/functions/parse.js
var require_parse = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/semver/7.8.5/50b76942b76b1567bb275b07b36d4efd1f7bc678ee222317e6ec7ff2c047c60d/node_modules/semver/functions/parse.js"(exports2, module2) {
    "use strict";
    var SemVer = require_semver();
    var parse12 = (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 = parse12;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/semver/7.8.5/50b76942b76b1567bb275b07b36d4efd1f7bc678ee222317e6ec7ff2c047c60d/node_modules/semver/functions/valid.js
var require_valid = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/semver/7.8.5/50b76942b76b1567bb275b07b36d4efd1f7bc678ee222317e6ec7ff2c047c60d/node_modules/semver/functions/valid.js"(exports2, module2) {
    "use strict";
    var parse12 = require_parse();
    var valid6 = (version2, options) => {
      const v = parse12(version2, options);
      return v ? v.version : null;
    };
    module2.exports = valid6;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/semver/7.8.5/50b76942b76b1567bb275b07b36d4efd1f7bc678ee222317e6ec7ff2c047c60d/node_modules/semver/functions/clean.js
var require_clean = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/semver/7.8.5/50b76942b76b1567bb275b07b36d4efd1f7bc678ee222317e6ec7ff2c047c60d/node_modules/semver/functions/clean.js"(exports2, module2) {
    "use strict";
    var parse12 = require_parse();
    var clean2 = (version2, options) => {
      const s = parse12(version2.trim().replace(/^[=v]+/, ""), options);
      return s ? s.version : null;
    };
    module2.exports = clean2;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/spdx-license-ids/3.0.23/b9ecf04b031822f0b7bd6fefb53e3d9a430d9952a8f772c345694537448bf8d5/node_modules/spdx-license-ids/index.json
var require_spdx_license_ids = __commonJS({
  "../../../../../setup-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"
    ];
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/spdx-license-ids/3.0.23/b9ecf04b031822f0b7bd6fefb53e3d9a430d9952a8f772c345694537448bf8d5/node_modules/spdx-license-ids/deprecated.json
var require_deprecated = __commonJS({
  "../../../../../setup-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"
    ];
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/spdx-exceptions/2.5.0/84a4d711f292f8700460e10d3de3b6ded5409912124ca2833bd0aa92a90002ea/node_modules/spdx-exceptions/index.json
var require_spdx_exceptions = __commonJS({
  "../../../../../setup-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"
    ];
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/spdx-expression-parse/3.0.1/1f87c1cf2c95978a41fb5c72a6fa92fffa604dfb27db2b4cd1e6f5bffacb4f72/node_modules/spdx-expression-parse/scan.js
var require_scan = __commonJS({
  "../../../../../setup-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 index2 = 0;
      function hasMore() {
        return index2 < source.length;
      }
      function read2(value) {
        if (value instanceof RegExp) {
          var chars = source.slice(index2);
          var match = chars.match(value);
          if (match) {
            index2 += match[0].length;
            return match[0];
          }
        } else {
          if (source.indexOf(value, index2) === index2) {
            index2 += value.length;
            return value;
          }
        }
      }
      function skipWhitespace() {
        read2(/[ ]*/);
      }
      function operator() {
        var string;
        var possibilities = ["WITH", "AND", "OR", "(", ")", ":", "+"];
        for (var i4 = 0; i4 < possibilities.length; i4++) {
          string = read2(possibilities[i4]);
          if (string) {
            break;
          }
        }
        if (string === "+" && index2 > 1 && source[index2 - 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 " + index2);
        }
        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 = index2;
        var string = idstring();
        if (licenses.indexOf(string) !== -1) {
          return {
            type: "LICENSE",
            string
          };
        } else if (exceptions.indexOf(string) !== -1) {
          return {
            type: "EXCEPTION",
            string
          };
        }
        index2 = 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[index2] + "` at offset " + index2);
        }
        tokens.push(token);
      }
      return tokens;
    };
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/spdx-expression-parse/3.0.1/1f87c1cf2c95978a41fb5c72a6fa92fffa604dfb27db2b4cd1e6f5bffacb4f72/node_modules/spdx-expression-parse/parse.js
var require_parse2 = __commonJS({
  "../../../../../setup-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 index2 = 0;
      function hasMore() {
        return index2 < tokens.length;
      }
      function token() {
        return hasMore() ? tokens[index2] : null;
      }
      function next2() {
        if (!hasMore()) {
          throw new Error();
        }
        index2++;
      }
      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 = index2;
        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 };
        }
        index2 = 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;
    };
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/spdx-expression-parse/3.0.1/1f87c1cf2c95978a41fb5c72a6fa92fffa604dfb27db2b4cd1e6f5bffacb4f72/node_modules/spdx-expression-parse/index.js
var require_spdx_expression_parse = __commonJS({
  "../../../../../setup-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_scan();
    var parse12 = require_parse2();
    module2.exports = function(source) {
      return parse12(scan3(source));
    };
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/spdx-correct/3.2.0/953412edf6e0c76ab49ddea31c6828d8790e9b871d0b73d8ee97bc8e4ed559e5/node_modules/spdx-correct/index.js
var require_spdx_correct = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/spdx-correct/3.2.0/953412edf6e0c76ab49ddea31c6828d8790e9b871d0b73d8ee97bc8e4ed559e5/node_modules/spdx-correct/index.js"(exports2, module2) {
    var parse12 = require_spdx_expression_parse();
    var spdxLicenseIds = require_spdx_license_ids();
    function valid6(string) {
      try {
        parse12(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 i4 = 0; i4 < transforms.length; i4++) {
        var transformed = transforms[i4](identifier).trim();
        if (transformed !== identifier && valid6(transformed)) {
          return transformed;
        }
      }
      return null;
    };
    var validLastResort = function(identifier) {
      var upperCased = identifier.toUpperCase();
      for (var i4 = 0; i4 < lastResorts.length; i4++) {
        var lastResort = lastResorts[i4];
        if (upperCased.indexOf(lastResort[SUBSTRING]) > -1) {
          return lastResort[IDENTIFIER2];
        }
      }
      return null;
    };
    var anyCorrection = function(identifier, check2) {
      for (var i4 = 0; i4 < transpositions.length; i4++) {
        var transposition = transpositions[i4];
        var transposed = transposition[TRANSPOSED];
        if (identifier.indexOf(transposed) > -1) {
          var corrected = identifier.replace(
            transposed,
            transposition[CORRECT]
          );
          var checked = check2(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 (valid6(identifier)) {
        return postprocess(identifier);
      }
      var noPlus = identifier.replace(/\+$/, "").trim();
      if (valid6(noPlus)) {
        return postprocess(noPlus);
      }
      var transformed = validTransformation(identifier);
      if (transformed !== null) {
        return postprocess(transformed);
      }
      transformed = anyCorrection(identifier, function(argument) {
        if (valid6(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;
      }
    }
  }
});

// ../../../../../setup-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({
  "../../../../../setup-pnpm/store/v11/links/@/validate-npm-package-license/3.0.4/93832b02e3fcfbb94dc370baef4142df8479d246565fa3a21e63843fedcea255/node_modules/validate-npm-package-license/index.js"(exports2, module2) {
    var parse12 = 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 = parse12(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
        };
      }
    };
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/lru-cache/11.5.2/3c8a5c5c2cceba3fecd9e8d125966b3ed0ce73d9dab68b7445d94e4705306a7a/node_modules/lru-cache/dist/commonjs/node/index.min.js
var require_index_min = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/lru-cache/11.5.2/3c8a5c5c2cceba3fecd9e8d125966b3ed0ce73d9dab68b7445d94e4705306a7a/node_modules/lru-cache/dist/commonjs/node/index.min.js"(exports2) {
    "use strict";
    var j2 = (u2, t2) => () => (t2 || u2((t2 = { exports: {} }).exports, t2), t2.exports);
    var I3 = 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((R2) => {
      "use strict";
      Object.defineProperty(R2, "__esModule", { value: true });
      R2.defaultPerf = void 0;
      R2.defaultPerf = typeof performance == "object" && performance && typeof performance.now == "function" ? performance : Date;
    });
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.LRUCache = void 0;
    var g = I3();
    var N = P2();
    var C = () => g.metrics.hasSubscribers || g.tracing.hasSubscribers;
    var k2 = /* @__PURE__ */ new Set();
    var G3 = typeof process == "object" && process ? process : {};
    var V = (u2, t2, e, i4) => {
      typeof G3.emitWarning == "function" ? G3.emitWarning(u2, t2, e, i4) : console.error(`[${e}] ${t2}: ${u2}`);
    };
    var q = (u2) => !k2.has(u2);
    var T2 = (u2) => !!u2 && u2 === Math.floor(u2) && u2 > 0 && isFinite(u2);
    var H2 = (u2) => T2(u2) ? u2 <= Math.pow(2, 8) ? Uint8Array : u2 <= Math.pow(2, 16) ? Uint16Array : u2 <= Math.pow(2, 32) ? Uint32Array : u2 <= Number.MAX_SAFE_INTEGER ? W2 : null : null;
    var W2 = class extends Array {
      constructor(t2) {
        super(t2), this.fill(0);
      }
    };
    var L3 = class u2 {
      heap;
      length;
      static #o = false;
      static create(t2) {
        let e = H2(t2);
        if (!e) return [];
        u2.#o = true;
        let i4 = new u2(t2, e);
        return u2.#o = false, i4;
      }
      constructor(t2, e) {
        if (!u2.#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 M3 = class u2 {
      #o;
      #c;
      #m;
      #W;
      #S;
      #x;
      #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;
      #R;
      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, i4, s, n2) => t2.#G(e, i4, s, n2), moveToTail: (e) => t2.#M(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.#x;
      }
      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: i4, ttlResolution: s = 1, ttlAutopurge: n2, updateAgeOnGet: o2, updateAgeOnHas: l, allowStale: h2, dispose: r, onInsert: c3, disposeAfter: w, noDisposeOnSet: y, noUpdateTTL: d3, maxSize: p = 0, maxEntrySize: f = 0, sizeCalculation: _, fetchMethod: a2, memoMethod: S3, noDeleteOnFetchRejection: F, noDeleteOnStaleGet: b, allowStaleOnFetchRejection: m, allowStaleOnFetchAbort: A2, ignoreFetchAbort: z, backgroundFetchSize: x3 = 1, perf: v } = t2;
        if (this.backgroundFetchSize = x3, 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 = _, 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 (S3 !== void 0 && typeof S3 != "function") throw new TypeError("memoMethod must be a function if defined");
        if (this.#j = S3, a2 !== void 0 && typeof a2 != "function") throw new TypeError("fetchMethod must be a function if specified");
        if (this.#x = a2, this.#U = !!a2, 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.#_ = L3.create(e), this.#n = 0, this.#b = 0, typeof r == "function" && (this.#m = r), typeof c3 == "function" && (this.#W = c3), typeof w == "function" ? (this.#S = w, this.#r = []) : (this.#S = void 0, this.#r = void 0), this.#T = !!this.#m, this.#R = !!this.#W, this.#f = !!this.#S, this.noDisposeOnSet = !!y, this.noUpdateTTL = !!d3, this.noDeleteOnFetchRejection = !!F, this.allowStaleOnFetchRejection = !!m, this.allowStaleOnFetchAbort = !!A2, 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 = !!h2, this.noDeleteOnStaleGet = !!b, this.updateAgeOnGet = !!o2, this.updateAgeOnHas = !!l, this.ttlResolution = T2(s) || s === 0 ? s : 1, this.ttlAutopurge = !!n2, this.ttl = i4 || 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 D3 = "LRU_CACHE_UNBOUNDED";
          q(D3) && (k2.add(D3), V("TTL caching without ttlAutopurge, max, or maxSize can result in unbounded memory consumption.", "UnboundedCacheWarning", D3, u2));
        }
      }
      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 i4 = this.ttlAutopurge ? Array.from({ length: this.#o }) : void 0;
        this.#g = i4, this.#H = (h2, r, c3 = this.#w.now()) => {
          e[h2] = r !== 0 ? c3 : 0, t2[h2] = r, s(h2, r);
        }, this.#D = (h2) => {
          e[h2] = t2[h2] !== 0 ? this.#w.now() : 0, s(h2, t2[h2]);
        };
        let s = this.ttlAutopurge ? (h2, r) => {
          if (i4?.[h2] && (clearTimeout(i4[h2]), i4[h2] = void 0), r && r !== 0 && i4) {
            let c3 = setTimeout(() => {
              this.#p(h2) ? (this.#v(this.#i[h2], "expire"), i4[h2] = void 0) : s(h2, l(h2));
            }, r + 1);
            c3.unref && c3.unref(), i4[h2] = c3;
          }
        } : () => {
        };
        this.#E = (h2, r) => {
          if (t2[r]) {
            let c3 = t2[r], w = e[r];
            if (!c3 || !w) return;
            h2.ttl = c3, h2.start = w, h2.now = n2 || o2();
            let y = h2.now - w;
            h2.remainingTTL = c3 - y;
          }
        };
        let n2 = 0, o2 = () => {
          let h2 = this.#w.now();
          if (this.ttlResolution > 0) {
            n2 = h2;
            let r = setTimeout(() => n2 = 0, this.ttlResolution);
            r.unref && r.unref();
          }
          return h2;
        };
        this.getRemainingTTL = (h2) => {
          let r = this.#s.get(h2);
          return r === void 0 ? 0 : l(r);
        };
        let l = (h2) => {
          let r = t2[h2], c3 = e[h2];
          if (!r || !c3) return 1 / 0;
          let w = (n2 || o2()) - c3;
          return r - w;
        };
        this.#p = (h2) => {
          let r = e[h2], c3 = t2[h2];
          return !!c3 && !!r && (n2 || o2()) - r > c3;
        };
      }
      #D = () => {
      };
      #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, i4, s, n2) => {
          if (!T2(s)) {
            if (this.#e(i4)) return this.backgroundFetchSize;
            if (n2) {
              if (typeof n2 != "function") throw new TypeError("sizeCalculation must be a function");
              if (s = n2(i4, 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, i4, s) => {
          if (t2[e] = i4, this.#c) {
            let n2 = this.#c - t2[e];
            for (; this.#b > n2; ) this.#P(true);
          }
          this.#b += t2[e], s && (s.entrySize = i4, s.totalCalculatedSize = this.#b);
        };
      }
      #C = (t2) => {
      };
      #I = (t2, e, i4) => {
      };
      #N = (t2, e, i4, s) => {
        if (i4 || 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 i4 of this.#A()) {
          let s = this.#t[i4], n2 = this.#e(s) ? s.__staleWhileFetching : s;
          if (n2 !== void 0 && t2(n2, this.#i[i4], this)) return this.#L(this.#i[i4], e);
        }
      }
      forEach(t2, e = this) {
        for (let i4 of this.#A()) {
          let s = this.#t[i4], n2 = this.#e(s) ? s.__staleWhileFetching : s;
          n2 !== void 0 && t2.call(e, n2, this.#i[i4], this);
        }
      }
      rforEach(t2, e = this) {
        for (let i4 of this.#z()) {
          let s = this.#t[i4], n2 = this.#e(s) ? s.__staleWhileFetching : s;
          n2 !== void 0 && t2.call(e, n2, this.#i[i4], 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 i4 = this.#t[e], s = this.#e(i4) ? i4.__staleWhileFetching : i4;
        if (s === void 0) return;
        let n2 = { value: s };
        if (this.#d && this.#F) {
          let o2 = this.#d[e], l = this.#F[e];
          if (o2 && l) {
            let h2 = o2 - (this.#w.now() - l);
            n2.ttl = h2, 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 i4 = this.#i[e], s = this.#t[e], n2 = this.#e(s) ? s.__staleWhileFetching : s;
          if (n2 === void 0 || i4 === void 0) continue;
          let o2 = { value: n2 };
          if (this.#d && this.#F) {
            o2.ttl = this.#d[e];
            let l = this.#w.now() - this.#F[e];
            o2.start = Math.floor(Date.now() - l);
          }
          this.#y && (o2.size = this.#y[e]), t2.unshift([i4, o2]);
        }
        return t2;
      }
      load(t2) {
        this.clear();
        for (let [e, i4] of t2) {
          if (i4.start) {
            let s = Date.now() - i4.start;
            i4.start = this.#w.now() - s;
          }
          this.#O(e, i4.value, i4);
        }
      }
      set(t2, e, i4 = {}) {
        let { status: s = g.metrics.hasSubscribers ? {} : void 0 } = i4;
        i4.status = s, s && (s.op = "set", s.key = t2, e !== void 0 && (s.value = e), s.cache = this);
        let n2 = this.#O(t2, e, i4);
        return s && g.metrics.hasSubscribers && g.metrics.publish(s), n2;
      }
      #O(t2, e, i4, s) {
        let { ttl: n2 = this.ttl, start: o2, noDisposeOnSet: l = this.noDisposeOnSet, sizeCalculation: h2 = this.sizeCalculation, status: r } = i4, c3 = this.#e(e);
        if (e === void 0) return r && (r.set = "deleted"), this.delete(t2), this;
        let { noUpdateTTL: w = this.noUpdateTTL } = i4;
        r && !c3 && (r.value = e);
        let y = this.#N(t2, e, i4.size || 0, h2, r);
        if (this.maxEntrySize && y > this.maxEntrySize) return this.#v(t2, "set"), r && (r.set = "miss", r.maxEntrySizeExceeded = true), this;
        let d3 = this.#n === 0 ? void 0 : this.#s.get(t2);
        if (d3 === void 0) d3 = this.#n === 0 ? this.#h : this.#_.length !== 0 ? this.#_.pop() : this.#n === this.#o ? this.#P(false) : this.#n, this.#i[d3] = t2, this.#t[d3] = e, this.#s.set(t2, d3), this.#l[this.#h] = d3, this.#u[d3] = this.#h, this.#h = d3, this.#n++, this.#I(d3, y, r), r && (r.set = "add"), w = false, this.#R && !c3 && this.#W?.(e, t2, "add");
        else {
          this.#M(d3);
          let p = this.#t[d3];
          if (e !== p) {
            if (!l) 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(d3), this.#I(d3, y, r), this.#t[d3] = e, !c3) {
              let f = p && this.#e(p) ? p.__staleWhileFetching : p, _ = f === void 0 ? "add" : e !== f ? "replace" : "update";
              r && (r.set = _, f !== void 0 && (r.oldValue = f)), this.#R && this.onInsert?.(e, t2, _);
            }
          } else c3 || (r && (r.set = "update"), this.#R && this.onInsert?.(e, t2, "update"));
        }
        if (n2 !== 0 && !this.#d && this.#k(), this.#d && (w || this.#H(d3, n2, o2), r && this.#E(r, d3)), !l && 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, i4 = this.#i[e], s = this.#t[e], n2 = this.#e(s);
        n2 && s.__abortController.abort(new Error("evicted"));
        let o2 = n2 ? s.__staleWhileFetching : s;
        return (this.#T || this.#f) && o2 !== void 0 && (this.#T && this.#m?.(o2, i4, "evict"), this.#f && this.#r?.push([o2, i4, "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(i4), this.#n--, e;
      }
      has(t2, e = {}) {
        let { status: i4 = g.metrics.hasSubscribers ? {} : void 0 } = e;
        e.status = i4, i4 && (i4.op = "has", i4.key = t2, i4.cache = this);
        let s = this.#Y(t2, e);
        return g.metrics.hasSubscribers && g.metrics.publish(i4), s;
      }
      #Y(t2, e = {}) {
        let { updateAgeOnHas: i4 = this.updateAgeOnHas, status: s } = e, n2 = this.#s.get(t2);
        if (n2 !== void 0) {
          let o2 = this.#t[n2];
          if (this.#e(o2) && o2.__staleWhileFetching === void 0) return false;
          if (this.#p(n2)) s && (s.has = "stale", this.#E(s, n2));
          else return i4 && this.#D(n2), s && (s.has = "hit", this.#E(s, n2)), true;
        } else s && (s.has = "miss");
        return false;
      }
      peek(t2, e = {}) {
        let { status: i4 = C() ? {} : void 0 } = e;
        i4 && (i4.op = "peek", i4.key = t2, i4.cache = this), e.status = i4;
        let s = this.#J(t2, e);
        return g.metrics.hasSubscribers && g.metrics.publish(i4), s;
      }
      #J(t2, e) {
        let { status: i4, allowStale: s = this.allowStale } = e, n2 = this.#s.get(t2);
        if (n2 === void 0 || !s && this.#p(n2)) {
          i4 && (i4.peek = n2 === void 0 ? "miss" : "stale");
          return;
        }
        let o2 = this.#t[n2], l = this.#e(o2) ? o2.__staleWhileFetching : o2;
        return i4 && (l !== void 0 ? (i4.peek = "hit", i4.value = l) : i4.peek = "miss"), l;
      }
      #G(t2, e, i4, s) {
        let n2 = e === void 0 ? void 0 : this.#t[e];
        if (this.#e(n2)) return n2;
        let o2 = new AbortController(), { signal: l } = i4;
        l?.addEventListener("abort", () => o2.abort(l.reason), { signal: o2.signal });
        let h2 = { signal: o2.signal, options: i4, context: s }, r = (f, _ = false) => {
          let { aborted: a2 } = o2.signal, S3 = i4.ignoreFetchAbort && f !== void 0, F = i4.ignoreFetchAbort || !!(i4.allowStaleOnFetchAbort && f !== void 0);
          if (i4.status && (a2 && !_ ? (i4.status.fetchAborted = true, i4.status.fetchError = o2.signal.reason, S3 && (i4.status.fetchAbortIgnored = true)) : i4.status.fetchResolved = true), a2 && !S3 && !_) return w(o2.signal.reason, F);
          let b = d3, m = this.#t[e];
          return (m === d3 || m === void 0 && S3 && _) && (f === void 0 ? b.__staleWhileFetching !== void 0 ? this.#t[e] = b.__staleWhileFetching : this.#v(t2, "fetch") : (i4.status && (i4.status.fetchUpdated = true), this.#O(t2, f, h2.options, b))), f;
        }, c3 = (f) => (i4.status && (i4.status.fetchRejected = true, i4.status.fetchError = f), w(f, false)), w = (f, _) => {
          let { aborted: a2 } = o2.signal, S3 = a2 && i4.allowStaleOnFetchAbort, F = S3 || i4.allowStaleOnFetchRejection, b = F || i4.noDeleteOnFetchRejection, m = d3;
          if (this.#t[e] === d3 && (!b || !_ && m.__staleWhileFetching === void 0 ? this.#v(t2, "fetch") : S3 || (this.#t[e] = m.__staleWhileFetching)), F) return i4.status && m.__staleWhileFetching !== void 0 && (i4.status.returnedStale = true), m.__staleWhileFetching;
          if (m.__returned === m) throw f;
        }, y = (f, _) => {
          let a2 = this.#x?.(t2, n2, h2);
          o2.signal.addEventListener("abort", () => {
            (!i4.ignoreFetchAbort || i4.allowStaleOnFetchAbort) && (f(void 0), i4.allowStaleOnFetchAbort && (f = (S3) => r(S3, true)));
          }), a2 && a2 instanceof Promise ? a2.then((S3) => f(S3 === void 0 ? void 0 : S3), _) : a2 !== void 0 && f(a2);
        };
        i4.status && (i4.status.fetchDispatched = true);
        let d3 = new Promise(y).then(r, c3), p = Object.assign(d3, { __abortController: o2, __staleWhileFetching: n2, __returned: void 0 });
        return e === void 0 ? (this.#O(t2, p, { ...h2.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 i4 = 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 && i4 && (s.trace = true, g.tracing.tracePromise(() => n2, s).catch(() => {
        })), n2;
      }
      async #q(t2, e = {}) {
        let { allowStale: i4 = this.allowStale, updateAgeOnGet: s = this.updateAgeOnGet, noDeleteOnStaleGet: n2 = this.noDeleteOnStaleGet, ttl: o2 = this.ttl, noDisposeOnSet: l = this.noDisposeOnSet, size: h2 = 0, sizeCalculation: r = this.sizeCalculation, noUpdateTTL: c3 = this.noUpdateTTL, noDeleteOnFetchRejection: w = this.noDeleteOnFetchRejection, allowStaleOnFetchRejection: y = this.allowStaleOnFetchRejection, ignoreFetchAbort: d3 = this.ignoreFetchAbort, allowStaleOnFetchAbort: p = this.allowStaleOnFetchAbort, context: f, forceRefresh: _ = false, status: a2, signal: S3 } = e;
        if (a2 && (a2.op = "fetch", a2.key = t2, _ && (a2.forceRefresh = true), a2.cache = this), !this.#U) return a2 && (a2.fetch = "get"), this.#L(t2, { allowStale: i4, updateAgeOnGet: s, noDeleteOnStaleGet: n2, status: a2 });
        let F = { allowStale: i4, updateAgeOnGet: s, noDeleteOnStaleGet: n2, ttl: o2, noDisposeOnSet: l, size: h2, sizeCalculation: r, noUpdateTTL: c3, noDeleteOnFetchRejection: w, allowStaleOnFetchRejection: y, allowStaleOnFetchAbort: p, ignoreFetchAbort: d3, status: a2, signal: S3 }, b = this.#s.get(t2);
        if (b === void 0) {
          a2 && (a2.fetch = "miss");
          let m = this.#G(t2, b, F, f);
          return m.__returned = m;
        } else {
          let m = this.#t[b];
          if (this.#e(m)) {
            let E = i4 && m.__staleWhileFetching !== void 0;
            return a2 && (a2.fetch = "inflight", E && (a2.returnedStale = true)), E ? m.__staleWhileFetching : m.__returned = m;
          }
          let A2 = this.#p(b);
          if (!_ && !A2) return a2 && (a2.fetch = "hit"), this.#M(b), s && this.#D(b), a2 && this.#E(a2, b), m;
          let z = this.#G(t2, b, F, f), v = z.__staleWhileFetching !== void 0 && i4;
          return a2 && (a2.fetch = A2 ? "stale" : "refresh", v && A2 && (a2.returnedStale = true)), v ? z.__staleWhileFetching : z.__returned = z;
        }
      }
      forceFetch(t2, e = {}) {
        let i4 = 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 && i4 && (s.trace = true, g.tracing.tracePromise(() => n2, s).catch(() => {
        })), n2;
      }
      async #K(t2, e = {}) {
        let i4 = await this.#q(t2, e);
        if (i4 === void 0) throw new Error("fetch() returned undefined");
        return i4;
      }
      memo(t2, e = {}) {
        let { status: i4 = g.metrics.hasSubscribers ? {} : void 0 } = e;
        e.status = i4, i4 && (i4.op = "memo", i4.key = t2, e.context && (i4.context = e.context), i4.cache = this);
        let s = this.#Q(t2, e);
        return i4 && (i4.value = s), g.metrics.hasSubscribers && g.metrics.publish(i4), s;
      }
      #Q(t2, e = {}) {
        let i4 = this.#j;
        if (!i4) throw new Error("no memoMethod provided to constructor");
        let { context: s, status: n2, forceRefresh: o2, ...l } = e;
        n2 && o2 && (n2.forceRefresh = true);
        let h2 = this.#L(t2, l), r = o2 || h2 === void 0;
        if (n2 && (n2.memo = r ? "miss" : "hit", r || (n2.value = h2)), !r) return h2;
        let c3 = i4(t2, h2, { options: l, context: s });
        return n2 && (n2.value = c3), this.#O(t2, c3, l), c3;
      }
      get(t2, e = {}) {
        let { status: i4 = g.metrics.hasSubscribers ? {} : void 0 } = e;
        e.status = i4, i4 && (i4.op = "get", i4.key = t2, i4.cache = this);
        let s = this.#L(t2, e);
        return i4 && (s !== void 0 && (i4.value = s), g.metrics.hasSubscribers && g.metrics.publish(i4)), s;
      }
      #L(t2, e = {}) {
        let { allowStale: i4 = this.allowStale, updateAgeOnGet: s = this.updateAgeOnGet, noDeleteOnStaleGet: n2 = this.noDeleteOnStaleGet, status: o2 } = e, l = this.#s.get(t2);
        if (l === void 0) {
          o2 && (o2.get = "miss");
          return;
        }
        let h2 = this.#t[l], r = this.#e(h2);
        return o2 && this.#E(o2, l), this.#p(l) ? r ? (o2 && (o2.get = "stale-fetching"), i4 && h2.__staleWhileFetching !== void 0 ? (o2 && (o2.returnedStale = true), h2.__staleWhileFetching) : void 0) : (n2 || this.#v(t2, "expire"), o2 && (o2.get = "stale"), i4 ? (o2 && (o2.returnedStale = true), h2) : void 0) : (o2 && (o2.get = r ? "fetching" : "hit"), this.#M(l), s && this.#D(l), r ? h2.__staleWhileFetching : h2);
      }
      #B(t2, e) {
        this.#u[e] = t2, this.#l[t2] = e;
      }
      #M(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 i4 = 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), i4 = 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 o2 = this.#u[s];
              this.#l[o2] = this.#l[s];
              let l = this.#l[s];
              this.#u[l] = 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 i4;
      }
      clear() {
        return this.#$("delete");
      }
      #$(t2) {
        for (let e of this.#z({ allowStale: true })) {
          let i4 = this.#t[e];
          if (this.#e(i4)) i4.__abortController.abort(new Error("deleted"));
          else {
            let s = this.#i[e];
            this.#T && this.#m?.(i4, s, t2), this.#f && this.#r?.push([i4, 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, i4;
          for (; i4 = e?.shift(); ) this.#S?.(...i4);
        }
      }
    };
    exports2.LRUCache = M3;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/hosted-git-info/9.0.3/0236043d24a75df82d5b736b50b2144e801f90f8866fd36abdbcc5420eeaa952/node_modules/hosted-git-info/lib/hosts.js
var require_hosts = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/hosted-git-info/9.0.3/0236043d24a75df82d5b736b50b2144e801f90f8866fd36abdbcc5420eeaa952/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: path240 }) => `https://${domain}/${user}/${project}${maybeJoin("/", editpath, "/", maybeEncode(committish || "HEAD"), "/", path240)}`,
      browsetemplate: ({ domain, user, project, committish, treepath }) => `https://${domain}/${user}/${project}${maybeJoin("/", treepath, "/", maybeEncode(committish))}`,
      browsetreetemplate: ({ domain, user, project, committish, treepath, path: path240, fragment, hashformat }) => `https://${domain}/${user}/${project}/${treepath}/${maybeEncode(committish || "HEAD")}/${path240}${maybeJoin("#", hashformat(fragment || ""))}`,
      browseblobtemplate: ({ domain, user, project, committish, blobpath, path: path240, fragment, hashformat }) => `https://${domain}/${user}/${project}/${blobpath}/${maybeEncode(committish || "HEAD")}/${path240}${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: path240 }) => `https://${domain}/${user}/${project}/raw/${maybeEncode(committish || "HEAD")}/${path240}`,
      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: path240 }) => `https://${maybeJoin(auth, "@")}raw.githubusercontent.com/${user}/${project}/${maybeEncode(committish || "HEAD")}/${path240}`,
      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: path240, editpath }) => `https://${domain}/${user}/${project}${maybeJoin("/", treepath, "/", maybeEncode(committish || "HEAD"), "/", path240, 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 path240 = url7.pathname.slice(1);
        if (path240.includes("/-/") || path240.includes("/archive.tar.gz")) {
          return;
        }
        const segments = path240.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: path240, hashformat }) => `https://${domain}/${project}${maybeJoin("/", maybeEncode(committish))}${maybeJoin("#", hashformat(path240))}`,
      browseblobtemplate: ({ domain, project, committish, path: path240, hashformat }) => `https://${domain}/${project}${maybeJoin("/", maybeEncode(committish))}${maybeJoin("#", hashformat(path240))}`,
      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: path240 }) => `https://gist.githubusercontent.com/${user}/${project}/raw${maybeJoin("/", maybeEncode(committish))}/${path240}`,
      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: path240 }) => `https://${domain}/${user}/${project}/blob/${maybeEncode(committish) || "HEAD"}/${path240}`,
      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;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/hosted-git-info/9.0.3/0236043d24a75df82d5b736b50b2144e801f90f8866fd36abdbcc5420eeaa952/node_modules/hosted-git-info/lib/parse-url.js
var require_parse_url = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/hosted-git-info/9.0.3/0236043d24a75df82d5b736b50b2144e801f90f8866fd36abdbcc5420eeaa952/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 = (u2) => {
      try {
        return new url7.URL(u2);
      } catch {
      }
    };
    var correctProtocol = (arg, protocols) => {
      const firstColon = arg.indexOf(":");
      const proto3 = arg.slice(0, firstColon + 1);
      if (Object.prototype.hasOwnProperty.call(protocols, proto3)) {
        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));
    };
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/hosted-git-info/9.0.3/0236043d24a75df82d5b736b50b2144e801f90f8866fd36abdbcc5420eeaa952/node_modules/hosted-git-info/lib/from-url.js
var require_from_url = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/hosted-git-info/9.0.3/0236043d24a75df82d5b736b50b2144e801f90f8866fd36abdbcc5420eeaa952/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, opts3, { 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 (err2) {
        if (err2 instanceof URIError) {
          return;
        } else {
          throw err2;
        }
      }
      return [gitHostName, user, auth, project, committish, defaultRepresentation, opts3];
    };
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/hosted-git-info/9.0.3/0236043d24a75df82d5b736b50b2144e801f90f8866fd36abdbcc5420eeaa952/node_modules/hosted-git-info/lib/index.js
var require_lib = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/hosted-git-info/9.0.3/0236043d24a75df82d5b736b50b2144e801f90f8866fd36abdbcc5420eeaa952/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 proto3 = /(?:git\+)http:$/.test(protocol) ? "http:" : "https:";
        const path240 = pathname.replace(/\.git$/, "");
        return `${proto3}//${hostname}${path240}`;
      } catch {
        return null;
      }
    }
    var GitHost = class _GitHost {
      constructor(type4, user, auth, project, committish, defaultRepresentation, opts3 = {}) {
        Object.assign(this, _GitHost.#gitHosts[type4], {
          type: type4,
          user,
          auth,
          project,
          committish,
          default: defaultRepresentation,
          opts: opts3
        });
      }
      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, opts3) {
        if (typeof giturl !== "string") {
          return;
        }
        const key = giturl + JSON.stringify(opts3 || {});
        if (!cache.has(key)) {
          const hostArgs = fromUrl(giturl, opts3, {
            gitHosts: _GitHost.#gitHosts,
            protocols: _GitHost.#protocols
          });
          cache.set(key, hostArgs ? new _GitHost(...hostArgs) : void 0);
        }
        return cache.get(key);
      }
      static fromManifest(manifest, opts3 = {}) {
        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\+/, ""), opts3) || null;
        if (info) {
          return info;
        }
        const unk = unknownHostedUrl(rurl);
        return _GitHost.fromUrl(unk, opts3) || unk;
      }
      static parseUrl(url7) {
        return parseUrl(url7);
      }
      #fill(template, opts3) {
        if (typeof template !== "function") {
          return null;
        }
        const options = { ...this, ...this.opts, ...opts3 };
        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(opts3) {
        return this.#fill(this.sshtemplate, opts3);
      }
      sshurl(opts3) {
        return this.#fill(this.sshurltemplate, opts3);
      }
      browse(path240, ...args) {
        if (typeof path240 !== "string") {
          return this.#fill(this.browsetemplate, path240);
        }
        if (typeof args[0] !== "string") {
          return this.#fill(this.browsetreetemplate, { ...args[0], path: path240 });
        }
        return this.#fill(this.browsetreetemplate, { ...args[1], fragment: args[0], path: path240 });
      }
      // 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(path240, ...args) {
        if (typeof args[0] !== "string") {
          return this.#fill(this.browseblobtemplate, { ...args[0], path: path240 });
        }
        return this.#fill(this.browseblobtemplate, { ...args[1], fragment: args[0], path: path240 });
      }
      docs(opts3) {
        return this.#fill(this.docstemplate, opts3);
      }
      bugs(opts3) {
        return this.#fill(this.bugstemplate, opts3);
      }
      https(opts3) {
        return this.#fill(this.httpstemplate, opts3);
      }
      git(opts3) {
        return this.#fill(this.gittemplate, opts3);
      }
      shortcut(opts3) {
        return this.#fill(this.shortcuttemplate, opts3);
      }
      path(opts3) {
        return this.#fill(this.pathtemplate, opts3);
      }
      tarball(opts3) {
        return this.#fill(this.tarballtemplate, { ...opts3, noCommittish: false });
      }
      file(path240, opts3) {
        return this.#fill(this.filetemplate, { ...opts3, path: path240 });
      }
      edit(path240, opts3) {
        return this.#fill(this.edittemplate, { ...opts3, path: path240 });
      }
      getDefaultRepresentation() {
        return this.default;
      }
      toString(opts3) {
        if (this.default && typeof this[this.default] === "function") {
          return this[this.default](opts3);
        }
        return this.sshurl(opts3);
      }
    };
    for (const [name, host] of Object.entries(hosts)) {
      GitHost.addHost(name, host);
    }
    module2.exports = GitHost;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/normalize-package-data/8.0.0/a58dcc1753ae241207c8e5c37e5bd6f41682fc5ed59c408a57b942039f6e9e9c/node_modules/normalize-package-data/lib/extract_description.js
var require_extract_description = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/normalize-package-data/8.0.0/a58dcc1753ae241207c8e5c37e5bd6f41682fc5ed59c408a57b942039f6e9e9c/node_modules/normalize-package-data/lib/extract_description.js"(exports2, module2) {
    module2.exports = extractDescription;
    function extractDescription(d3) {
      if (!d3) {
        return;
      }
      if (d3 === "ERROR: No README data found!") {
        return;
      }
      d3 = d3.trim().split("\n");
      let s = 0;
      while (d3[s] && d3[s].trim().match(/^(#|$)/)) {
        s++;
      }
      const l = d3.length;
      let e = s + 1;
      while (e < l && d3[e].trim()) {
        e++;
      }
      return d3.slice(s, e).join(" ").trim();
    }
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/normalize-package-data/8.0.0/a58dcc1753ae241207c8e5c37e5bd6f41682fc5ed59c408a57b942039f6e9e9c/node_modules/normalize-package-data/lib/typos.json
var require_typos = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/normalize-package-data/8.0.0/a58dcc1753ae241207c8e5c37e5bd6f41682fc5ed59c408a57b942039f6e9e9c/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" }
    };
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/normalize-package-data/8.0.0/a58dcc1753ae241207c8e5c37e5bd6f41682fc5ed59c408a57b942039f6e9e9c/node_modules/normalize-package-data/lib/fixer.js
var require_fixer = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/normalize-package-data/8.0.0/a58dcc1753ae241207c8e5c37e5bd6f41682fc5ed59c408a57b942039f6e9e9c/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_lib();
    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(d3) {
          if (Object.prototype.hasOwnProperty.call(data, d3)) {
            this.warn("typo", d3, typos.topLevel[d3]);
          }
        }, 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(d3) {
            var r = data[deps][d3];
            if (typeof r !== "string") {
              this.warn("nonStringDependency", d3, JSON.stringify(r));
              delete data[deps][d3];
            }
            var hosted = hostedGitInfo.fromUrl(data[deps][d3]);
            if (hosted) {
              data[deps][d3] = 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 u2 = person.url || person.web;
      var wrappedUrl = u2 ? " (" + u2 + ")" : "";
      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 d3 = data.dependencies || {};
      Object.keys(o2).forEach(function(k2) {
        d3[k2] = o2[k2];
      });
      data.dependencies = d3;
    }
    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(d3) {
        return typeof d3 === "string";
      }).forEach(function(d3) {
        d3 = d3.trim().split(/(:?[@\s><=])/);
        var dn = d3.shift();
        var dv = d3.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];
        }
      });
    }
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/normalize-package-data/8.0.0/a58dcc1753ae241207c8e5c37e5bd6f41682fc5ed59c408a57b942039f6e9e9c/node_modules/normalize-package-data/lib/warning_messages.json
var require_warning_messages = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/normalize-package-data/8.0.0/a58dcc1753ae241207c8e5c37e5bd6f41682fc5ed59c408a57b942039f6e9e9c/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."
    };
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/normalize-package-data/8.0.0/a58dcc1753ae241207c8e5c37e5bd6f41682fc5ed59c408a57b942039f6e9e9c/node_modules/normalize-package-data/lib/make_warning.js
var require_make_warning = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/normalize-package-data/8.0.0/a58dcc1753ae241207c8e5c37e5bd6f41682fc5ed59c408a57b942039f6e9e9c/node_modules/normalize-package-data/lib/make_warning.js"(exports2, module2) {
    var util70 = __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 util70.format.apply(null, args);
      }
    };
    function makeTypoWarning(providedName, probableName, field) {
      if (field) {
        providedName = field + "['" + providedName + "']";
        probableName = field + "['" + probableName + "']";
      }
      return util70.format(messages.typo, providedName, probableName);
    }
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/normalize-package-data/8.0.0/a58dcc1753ae241207c8e5c37e5bd6f41682fc5ed59c408a57b942039f6e9e9c/node_modules/normalize-package-data/lib/normalize.js
var require_normalize = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/normalize-package-data/8.0.0/a58dcc1753ae241207c8e5c37e5bd6f41682fc5ed59c408a57b942039f6e9e9c/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 path3 from "node:path";
import util from "node:util";
function readPackageJsonSync(pkgPath) {
  try {
    const manifest = loadJsonFileSync(pkgPath);
    (0, import_normalize_package_data.default)(manifest);
    return manifest;
  } catch (err2) {
    if (err2.code)
      throw err2;
    throw new PnpmError("BAD_PACKAGE_JSON", `${pkgPath}: ${err2.message}`);
  }
}
async function readPackageJson(pkgPath) {
  try {
    const manifest = await loadJsonFile(pkgPath);
    (0, import_normalize_package_data.default)(manifest);
    return manifest;
  } catch (err2) {
    if (err2.code)
      throw err2;
    throw new PnpmError("BAD_PACKAGE_JSON", `${pkgPath}: ${err2.message}`);
  }
}
function readPackageJsonFromDirSync(pkgPath) {
  return readPackageJsonSync(path3.join(pkgPath, "package.json"));
}
async function readPackageJsonFromDir(pkgPath) {
  return readPackageJson(path3.join(pkgPath, "package.json"));
}
async function safeReadPackageJson(pkgPath) {
  try {
    return await readPackageJson(pkgPath);
  } catch (err2) {
    if (err2.code !== "ENOENT")
      throw err2;
    return null;
  }
}
async function safeReadPackageJsonFromDir(pkgPath) {
  return safeReadPackageJson(path3.join(pkgPath, "package.json"));
}
function readPackageJsonFromDirRawSync(pkgPath) {
  try {
    return loadJsonFileSync(path3.join(pkgPath, "package.json"));
  } catch (err2) {
    if (util.types.isNativeError(err2) && "code" in err2)
      throw err2;
    throw new PnpmError("BAD_PACKAGE_JSON", `${pkgPath}: ${err2 instanceof Error ? err2.message : String(err2)}`);
  }
}
var import_normalize_package_data;
var init_lib5 = __esm({
  "../pkg-manifest/reader/lib/index.js"() {
    "use strict";
    init_lib2();
    init_load_json_file();
    import_normalize_package_data = __toESM(require_normalize(), 1);
  }
});

// ../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/promptLogger.js
var promptLogger;
var init_promptLogger = __esm({
  "../core/core-loggers/lib/promptLogger.js"() {
    "use strict";
    init_lib3();
    promptLogger = logger("prompt");
  }
});

// ../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/reportPackageImported.js
function reportPackageImported(opts3) {
  progressLogger.debug({
    method: opts3.method,
    requester: opts3.requester,
    status: "imported",
    to: opts3.to
  });
  if (isKnownImportMethod(opts3.method)) {
    packageImportMethodLogger.debug({ method: opts3.method });
  }
}
function isKnownImportMethod(method2) {
  return method2 === "clone" || method2 === "hardlink" || method2 === "copy";
}
var init_reportPackageImported = __esm({
  "../core/core-loggers/lib/reportPackageImported.js"() {
    "use strict";
    init_packageImportMethodLogger();
    init_progressLogger();
  }
});

// ../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_promptLogger();
    init_registryLogger();
    init_removalLogger();
    init_reportPackageImported();
    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();
  }
});

// ../../../../../setup-pnpm/store/v11/links/@pnpm/npm-lifecycle/1100.0.0/ff78e43c853aec1b96afdbf0d3cffd4eb3a54b72fb7c08203ab5b8d48fe5f6c2/node_modules/@pnpm/npm-lifecycle/lib/spawn.js
import { spawn as _spawn } from "child_process";
import { EventEmitter } 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 spawn(cmd, args, options, log3) {
  const cmdWillOutput = willCmdOutput(options && options.stdio);
  if (cmdWillOutput) startRunning(log3);
  const raw = _spawn(cmd, args, options);
  const cooked = new EventEmitter();
  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({
  "../../../../../setup-pnpm/store/v11/links/@pnpm/npm-lifecycle/1100.0.0/ff78e43c853aec1b96afdbf0d3cffd4eb3a54b72fb7c08203ab5b8d48fe5f6c2/node_modules/@pnpm/npm-lifecycle/lib/spawn.js"() {
    running = 0;
  }
});

// ../../../../../setup-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(d3, b) {
  if (typeof b !== "function" && b !== null)
    throw new TypeError("Class extends value " + String(b) + " is not a constructor or null");
  extendStatics(d3, b);
  function __() {
    this.constructor = d3;
  }
  d3.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 i4 = 0, p = Object.getOwnPropertySymbols(s); i4 < p.length; i4++) {
      if (e.indexOf(p[i4]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i4]))
        t2[p[i4]] = s[p[i4]];
    }
  return t2;
}
function __decorate(decorators, target2, key, desc) {
  var c3 = arguments.length, r = c3 < 3 ? target2 : desc === null ? desc = Object.getOwnPropertyDescriptor(target2, key) : desc, d3;
  if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target2, key, desc);
  else for (var i4 = decorators.length - 1; i4 >= 0; i4--) if (d3 = decorators[i4]) r = (c3 < 3 ? d3(r) : c3 > 3 ? d3(target2, key, r) : d3(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 i4 = decorators.length - 1; i4 >= 0; i4--) {
    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[i4])(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 i4 = 0; i4 < initializers.length; i4++) {
    value = useValue ? initializers[i4].call(thisArg, value) : initializers[i4].call(thisArg);
  }
  return useValue ? value : void 0;
}
function __propKey(x3) {
  return typeof x3 === "symbol" ? x3 : "".concat(x3);
}
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(resolve4) {
      resolve4(value);
    });
  }
  return new (P2 || (P2 = Promise))(function(resolve4, 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 ? resolve4(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], i4 = 0;
  if (m) return m.call(o2);
  if (o2 && typeof o2.length === "number") return {
    next: function() {
      if (o2 && i4 >= o2.length) o2 = void 0;
      return { value: o2 && o2[i4++], 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 i4 = m.call(o2), r, ar = [], e;
  try {
    while ((n2 === void 0 || n2-- > 0) && !(r = i4.next()).done) ar.push(r.value);
  } catch (error) {
    e = { error };
  } finally {
    try {
      if (r && !r.done && (m = i4["return"])) m.call(i4);
    } finally {
      if (e) throw e.error;
    }
  }
  return ar;
}
function __spread() {
  for (var ar = [], i4 = 0; i4 < arguments.length; i4++)
    ar = ar.concat(__read(arguments[i4]));
  return ar;
}
function __spreadArrays() {
  for (var s = 0, i4 = 0, il = arguments.length; i4 < il; i4++) s += arguments[i4].length;
  for (var r = Array(s), k2 = 0, i4 = 0; i4 < il; i4++)
    for (var a2 = arguments[i4], j2 = 0, jl = a2.length; j2 < jl; j2++, k2++)
      r[k2] = a2[j2];
  return r;
}
function __spreadArray(to, from5, pack3) {
  if (pack3 || arguments.length === 2) for (var i4 = 0, l = from5.length, ar; i4 < l; i4++) {
    if (ar || !(i4 in from5)) {
      if (!ar) ar = Array.prototype.slice.call(from5, 0, i4);
      ar[i4] = from5[i4];
    }
  }
  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 || []), i4, q = [];
  return i4 = Object.create((typeof AsyncIterator === "function" ? AsyncIterator : Object).prototype), verb("next"), verb("throw"), verb("return", awaitReturn), i4[Symbol.asyncIterator] = function() {
    return this;
  }, i4;
  function awaitReturn(f) {
    return function(v) {
      return Promise.resolve(v).then(f, reject3);
    };
  }
  function verb(n2, f) {
    if (g[n2]) {
      i4[n2] = function(v) {
        return new Promise(function(a2, b) {
          q.push([n2, v, a2, b]) > 1 || resume(n2, v);
        });
      };
      if (f) i4[n2] = f(i4[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 i4, p;
  return i4 = {}, verb("next"), verb("throw", function(e) {
    throw e;
  }), verb("return"), i4[Symbol.iterator] = function() {
    return this;
  }, i4;
  function verb(n2, f) {
    i4[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], i4;
  return m ? m.call(o2) : (o2 = typeof __values === "function" ? __values(o2) : o2[Symbol.iterator](), i4 = {}, verb("next"), verb("throw"), verb("return"), i4[Symbol.asyncIterator] = function() {
    return this;
  }, i4);
  function verb(n2) {
    i4[n2] = o2[n2] && function(v) {
      return new Promise(function(resolve4, reject3) {
        v = o2[n2](v), settle(resolve4, reject3, v.done, v.value);
      });
    };
  }
  function settle(resolve4, reject3, d3, v) {
    Promise.resolve(v).then(function(v2) {
      resolve4({ value: v2, done: d3 });
    }, reject3);
  }
}
function __makeTemplateObject(cooked, raw) {
  if (Object.defineProperty) {
    Object.defineProperty(cooked, "raw", { value: raw });
  } else {
    cooked.raw = raw;
  }
  return cooked;
}
function __importStar(mod2) {
  if (mod2 && mod2.__esModule) return mod2;
  var result2 = {};
  if (mod2 != null) {
    for (var k2 = ownKeys(mod2), i4 = 0; i4 < k2.length; i4++) if (k2[i4] !== "default") __createBinding(result2, mod2, k2[i4]);
  }
  __setModuleDefault(result2, mod2);
  return result2;
}
function __importDefault(mod2) {
  return mod2 && mod2.__esModule ? mod2 : { default: mod2 };
}
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(env4, 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);
      }
    };
    env4.stack.push({ value, dispose, async });
  } else if (async) {
    env4.stack.push({ async: true });
  }
  return value;
}
function __disposeResources(env4) {
  function fail(e) {
    env4.error = env4.hasError ? new _SuppressedError(e, env4.error, "An error was suppressed during disposal.") : e;
    env4.hasError = true;
  }
  var r, s = 0;
  function next2() {
    while (r = env4.stack.pop()) {
      try {
        if (!r.async && s === 1) return s = 0, env4.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 env4.hasError ? Promise.reject(env4.error) : Promise.resolve();
    if (env4.hasError) throw env4.error;
  }
  return next2();
}
function __rewriteRelativeImportExtension(path240, preserveJsx) {
  if (typeof path240 === "string" && /^\.\.?\//.test(path240)) {
    return path240.replace(/\.(tsx)$|((?:\.d)?)((?:\.[^./]+?)?)\.([cm]?)ts$/i, function(m, tsx, d3, ext, cm) {
      return tsx ? preserveJsx ? ".jsx" : ".js" : d3 && (!ext || !cm) ? m : d3 + ext + "." + cm.toLowerCase() + "js";
    });
  }
  return path240;
}
var extendStatics, __assign, __createBinding, __setModuleDefault, ownKeys, _SuppressedError, tslib_es6_default;
var init_tslib_es6 = __esm({
  "../../../../../setup-pnpm/store/v11/links/@/tslib/2.8.1/ef04cb918080dbc449e2ce3d21f749e314adbcd20f189125968547b4240d49ef/node_modules/tslib/tslib.es6.mjs"() {
    extendStatics = function(d3, b) {
      extendStatics = Object.setPrototypeOf || { __proto__: [] } instanceof Array && function(d4, b2) {
        d4.__proto__ = b2;
      } || function(d4, b2) {
        for (var p in b2) if (Object.prototype.hasOwnProperty.call(b2, p)) d4[p] = b2[p];
      };
      return extendStatics(d3, b);
    };
    __assign = function() {
      __assign = Object.assign || function __assign2(t2) {
        for (var s, i4 = 1, n2 = arguments.length; i4 < n2; i4++) {
          s = arguments[i4];
          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
    };
  }
});

// ../../../../../setup-pnpm/store/v11/links/@yarnpkg/fslib/3.1.5/0e9904b11de6308a21798242812fdf27d11a2bd1d4eaf78322aa70681bfeb694/node_modules/@yarnpkg/fslib/lib/constants.js
var require_constants2 = __commonJS({
  "../../../../../setup-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;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@yarnpkg/fslib/3.1.5/0e9904b11de6308a21798242812fdf27d11a2bd1d4eaf78322aa70681bfeb694/node_modules/@yarnpkg/fslib/lib/errors.js
var require_errors = __commonJS({
  "../../../../../setup-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`);
    }
  }
});

// ../../../../../setup-pnpm/store/v11/links/@yarnpkg/fslib/3.1.5/0e9904b11de6308a21798242812fdf27d11a2bd1d4eaf78322aa70681bfeb694/node_modules/@yarnpkg/fslib/lib/statUtils.js
var require_statUtils = __commonJS({
  "../../../../../setup-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_constants2();
    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;
    }
  }
});

// ../../../../../setup-pnpm/store/v11/links/@yarnpkg/fslib/3.1.5/0e9904b11de6308a21798242812fdf27d11a2bd1d4eaf78322aa70681bfeb694/node_modules/@yarnpkg/fslib/lib/path.js
var require_path = __commonJS({
  "../../../../../setup-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);
    }
  }
});

// ../../../../../setup-pnpm/store/v11/links/@yarnpkg/fslib/3.1.5/0e9904b11de6308a21798242812fdf27d11a2bd1d4eaf78322aa70681bfeb694/node_modules/@yarnpkg/fslib/lib/algorithms/copyPromise.js
var require_copyPromise = __commonJS({
  "../../../../../setup-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 constants6 = tslib_12.__importStar(require_constants2());
    var path_1 = require_path();
    var defaultTime = new Date(constants6.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, opts3) {
      const normalizedDestination = destinationFs.pathUtils.normalize(destination);
      const normalizedSource = sourceFs.pathUtils.normalize(source);
      const prelayout = [];
      const postlayout = [];
      const { atime, mtime } = opts3.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, { ...opts3, 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, opts3) {
      const destinationStat = opts3.didParentExist ? await maybeLStat(destinationFs, destination) : null;
      const sourceStat = await sourceFs.lstatPromise(source);
      const { atime, mtime } = opts3.stableTime ? { atime: defaultTime, mtime: defaultTime } : sourceStat;
      let updated;
      switch (true) {
        case sourceStat.isDirectory():
          {
            updated = await copyFolder(prelayout, postlayout, destinationFs, destination, destinationStat, sourceFs, source, sourceStat, opts3);
          }
          break;
        case sourceStat.isFile():
          {
            updated = await copyFile(prelayout, postlayout, destinationFs, destination, destinationStat, sourceFs, source, sourceStat, opts3);
          }
          break;
        case sourceStat.isSymbolicLink():
          {
            updated = await copySymlink(prelayout, postlayout, destinationFs, destination, destinationStat, sourceFs, source, sourceStat, opts3);
          }
          break;
        default: {
          throw new Error(`Unsupported file type (${sourceStat.mode})`);
        }
      }
      if (opts3.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, opts3) {
      if (destinationStat !== null && !destinationStat.isDirectory()) {
        if (opts3.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 (err2) {
            if (err2.code !== `EEXIST`) {
              throw err2;
            }
          }
        });
        updated = true;
      }
      const entries = await sourceFs.readdirPromise(source);
      const nextOpts = opts3.didParentExist && !destinationStat ? { ...opts3, didParentExist: false } : opts3;
      if (opts3.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, opts3, 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 (opts3.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 (err2) {
              if (err2.code === `EEXIST`) {
                tempPathCleaned = true;
                await destinationFs.unlinkPromise(tempPath2);
              } else {
                throw err2;
              }
            }
          }
        }
        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, opts3) {
      if (destinationStat !== null) {
        if (opts3.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, opts3) {
      if (opts3.linkStrategy?.type === `HardlinkFromIndex`) {
        return copyFileViaIndex(prelayout, postlayout, destinationFs, destination, destinationStat, sourceFs, source, sourceStat, opts3, opts3.linkStrategy);
      } else {
        return copyFileDirect(prelayout, postlayout, destinationFs, destination, destinationStat, sourceFs, source, sourceStat, opts3);
      }
    }
    async function copySymlink(prelayout, postlayout, destinationFs, destination, destinationStat, sourceFs, source, sourceStat, opts3) {
      if (destinationStat !== null) {
        if (opts3.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;
    }
  }
});

// ../../../../../setup-pnpm/store/v11/links/@yarnpkg/fslib/3.1.5/0e9904b11de6308a21798242812fdf27d11a2bd1d4eaf78322aa70681bfeb694/node_modules/@yarnpkg/fslib/lib/algorithms/opendir.js
var require_opendir = __commonJS({
  "../../../../../setup-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_errors());
    var CustomDir = class {
      constructor(path240, nextDirent, opts3 = {}) {
        this.path = path240;
        this.nextDirent = nextDirent;
        this.opts = opts3;
        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, path240, entries, opts3) {
      const nextDirent = () => {
        const filename = entries.shift();
        if (typeof filename === `undefined`)
          return null;
        const entryPath = fakeFs.pathUtils.join(path240, filename);
        return Object.assign(fakeFs.statSync(entryPath), {
          name: filename,
          path: void 0
        });
      };
      return new CustomDir(path240, nextDirent, opts3);
    }
  }
});

// ../../../../../setup-pnpm/store/v11/links/@yarnpkg/fslib/3.1.5/0e9904b11de6308a21798242812fdf27d11a2bd1d4eaf78322aa70681bfeb694/node_modules/@yarnpkg/fslib/lib/algorithms/watchFile/CustomStatWatcher.js
var require_CustomStatWatcher = __commonJS({
  "../../../../../setup-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, path240, opts3) {
        const statWatcher = new _CustomStatWatcher(fakeFs, path240, opts3);
        statWatcher.start();
        return statWatcher;
      }
      constructor(fakeFs, path240, { bigint = false } = {}) {
        super();
        this.status = Status.Ready;
        this.changeListeners = /* @__PURE__ */ new Map();
        this.startTimeout = null;
        this.fakeFs = fakeFs;
        this.path = path240;
        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(opts3) {
        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);
        }, opts3.interval);
        return opts3.persistent ? interval : interval.unref();
      }
      /**
       * Registers a listener and assigns it an interval.
       */
      registerChangeListener(listener, opts3) {
        this.addListener(Event2.Change, listener);
        this.changeListeners.set(listener, this.makeInterval(opts3));
      }
      /**
       * 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;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@yarnpkg/fslib/3.1.5/0e9904b11de6308a21798242812fdf27d11a2bd1d4eaf78322aa70681bfeb694/node_modules/@yarnpkg/fslib/lib/algorithms/watchFile.js
var require_watchFile = __commonJS({
  "../../../../../setup-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, path240, 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(path240);
      if (typeof statWatcher === `undefined`) {
        statWatcher = CustomStatWatcher_1.CustomStatWatcher.create(fakeFs, path240, { bigint });
        statWatchers.set(path240, statWatcher);
      }
      statWatcher.registerChangeListener(listener, { persistent, interval });
      return statWatcher;
    }
    function unwatchFile(fakeFs, path240, cb) {
      const statWatchers = statWatchersByFakeFS.get(fakeFs);
      if (typeof statWatchers === `undefined`)
        return;
      const statWatcher = statWatchers.get(path240);
      if (typeof statWatcher === `undefined`)
        return;
      if (typeof cb === `undefined`)
        statWatcher.unregisterAllChangeListeners();
      else
        statWatcher.unregisterChangeListener(cb);
      if (!statWatcher.hasChangeListeners()) {
        statWatcher.stop();
        statWatchers.delete(path240);
      }
    }
    function unwatchAllFiles(fakeFs) {
      const statWatchers = statWatchersByFakeFS.get(fakeFs);
      if (typeof statWatchers === `undefined`)
        return;
      for (const path240 of statWatchers.keys()) {
        unwatchFile(fakeFs, path240);
      }
    }
  }
});

// ../../../../../setup-pnpm/store/v11/links/@yarnpkg/fslib/3.1.5/0e9904b11de6308a21798242812fdf27d11a2bd1d4eaf78322aa70681bfeb694/node_modules/@yarnpkg/fslib/lib/FakeFS.js
var require_FakeFS = __commonJS({
  "../../../../../setup-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(path240, { algorithm = `sha512` } = {}) {
        const fd2 = await this.openPromise(path240, `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(fd2, chunk, 0, CHUNK_SIZE)) !== 0)
            hash2.update(bytesRead === CHUNK_SIZE ? chunk : chunk.slice(0, bytesRead));
          return hash2.digest(`hex`);
        } finally {
          await this.closePromise(fd2);
        }
      }
      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((resolve4) => setTimeout(resolve4, 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 u2 = 2; u2 <= parts.length; ++u2) {
          const subPath = parts.slice(0, u2).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 u2 = 2; u2 <= parts.length; ++u2) {
          const subPath = parts.slice(0, u2).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: overwrite2 = true, stableSort = false, stableTime = false, linkStrategy = null } = {}) {
        return await (0, copyPromise_1.copyPromise)(this, destination, baseFs, source, { overwrite: overwrite2, stableSort, stableTime, linkStrategy });
      }
      copySync(destination, source, { baseFs = this, overwrite: overwrite2 = 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: overwrite2 });
          }
        } else if (stat2.isFile()) {
          if (!exists || overwrite2) {
            if (exists)
              this.removeSync(destination);
            const content = baseFs.readFileSync(source);
            this.writeFileSync(destination, content);
          }
        } else if (stat2.isSymbolicLink()) {
          if (!exists || overwrite2) {
            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, opts3 = {}) {
        if (Buffer.isBuffer(content)) {
          return this.changeFileBufferPromise(p, content, opts3);
        } else {
          return this.changeFileTextPromise(p, content, opts3);
        }
      }
      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, opts3 = {}) {
        if (Buffer.isBuffer(content)) {
          return this.changeFileBufferSync(p, content, opts3);
        } else {
          return this.changeFileTextSync(p, content, opts3);
        }
      }
      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 fd2 = 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 (fd2 === null) {
          try {
            fd2 = 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((resolve4) => setTimeout(resolve4, interval));
              } else {
                throw new Error(`Couldn't acquire a lock in a reasonable time (via ${lockPath})`);
              }
            } else {
              throw error;
            }
          }
        }
        await this.writePromise(fd2, JSON.stringify([process.pid]));
        try {
          return await callback2();
        } finally {
          try {
            await this.closePromise(fd2);
            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));
    }
  }
});

// ../../../../../setup-pnpm/store/v11/links/@yarnpkg/fslib/3.1.5/0e9904b11de6308a21798242812fdf27d11a2bd1d4eaf78322aa70681bfeb694/node_modules/@yarnpkg/fslib/lib/ProxiedFS.js
var require_ProxiedFS = __commonJS({
  "../../../../../setup-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(path240) {
        return this.mapFromBase(this.baseFs.resolve(this.mapToBase(path240)));
      }
      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, opts3) {
        return Object.assign(await this.baseFs.opendirPromise(this.mapToBase(p), opts3), { path: p });
      }
      opendirSync(p, opts3) {
        return Object.assign(this.baseFs.opendirSync(this.mapToBase(p), opts3), { path: p });
      }
      async readPromise(fd2, buffer3, offset, length, position3) {
        return await this.baseFs.readPromise(fd2, buffer3, offset, length, position3);
      }
      readSync(fd2, buffer3, offset, length, position3) {
        return this.baseFs.readSync(fd2, buffer3, offset, length, position3);
      }
      async writePromise(fd2, buffer3, offset, length, position3) {
        if (typeof buffer3 === `string`) {
          return await this.baseFs.writePromise(fd2, buffer3, offset);
        } else {
          return await this.baseFs.writePromise(fd2, buffer3, offset, length, position3);
        }
      }
      writeSync(fd2, buffer3, offset, length, position3) {
        if (typeof buffer3 === `string`) {
          return this.baseFs.writeSync(fd2, buffer3, offset);
        } else {
          return this.baseFs.writeSync(fd2, buffer3, offset, length, position3);
        }
      }
      async closePromise(fd2) {
        return this.baseFs.closePromise(fd2);
      }
      closeSync(fd2) {
        this.baseFs.closeSync(fd2);
      }
      createReadStream(p, opts3) {
        return this.baseFs.createReadStream(p !== null ? this.mapToBase(p) : p, opts3);
      }
      createWriteStream(p, opts3) {
        return this.baseFs.createWriteStream(p !== null ? this.mapToBase(p) : p, opts3);
      }
      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, opts3) {
        return this.baseFs.statPromise(this.mapToBase(p), opts3);
      }
      statSync(p, opts3) {
        return this.baseFs.statSync(this.mapToBase(p), opts3);
      }
      async fstatPromise(fd2, opts3) {
        return this.baseFs.fstatPromise(fd2, opts3);
      }
      fstatSync(fd2, opts3) {
        return this.baseFs.fstatSync(fd2, opts3);
      }
      lstatPromise(p, opts3) {
        return this.baseFs.lstatPromise(this.mapToBase(p), opts3);
      }
      lstatSync(p, opts3) {
        return this.baseFs.lstatSync(this.mapToBase(p), opts3);
      }
      async fchmodPromise(fd2, mask) {
        return this.baseFs.fchmodPromise(fd2, mask);
      }
      fchmodSync(fd2, mask) {
        return this.baseFs.fchmodSync(fd2, 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(fd2, uid, gid) {
        return this.baseFs.fchownPromise(fd2, uid, gid);
      }
      fchownSync(fd2, uid, gid) {
        return this.baseFs.fchownSync(fd2, 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, opts3) {
        return this.baseFs.appendFilePromise(this.fsMapToBase(p), content, opts3);
      }
      appendFileSync(p, content, opts3) {
        return this.baseFs.appendFileSync(this.fsMapToBase(p), content, opts3);
      }
      async writeFilePromise(p, content, opts3) {
        return this.baseFs.writeFilePromise(this.fsMapToBase(p), content, opts3);
      }
      writeFileSync(p, content, opts3) {
        return this.baseFs.writeFileSync(this.fsMapToBase(p), content, opts3);
      }
      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, opts3) {
        return this.baseFs.mkdirPromise(this.mapToBase(p), opts3);
      }
      mkdirSync(p, opts3) {
        return this.baseFs.mkdirSync(this.mapToBase(p), opts3);
      }
      async rmdirPromise(p, opts3) {
        return this.baseFs.rmdirPromise(this.mapToBase(p), opts3);
      }
      rmdirSync(p, opts3) {
        return this.baseFs.rmdirSync(this.mapToBase(p), opts3);
      }
      async rmPromise(p, opts3) {
        return this.baseFs.rmPromise(this.mapToBase(p), opts3);
      }
      rmSync(p, opts3) {
        return this.baseFs.rmSync(this.mapToBase(p), opts3);
      }
      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, opts3) {
        return this.baseFs.readdirPromise(this.mapToBase(p), opts3);
      }
      readdirSync(p, opts3) {
        return this.baseFs.readdirSync(this.mapToBase(p), opts3);
      }
      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(fd2, len) {
        return this.baseFs.ftruncatePromise(fd2, len);
      }
      ftruncateSync(fd2, len) {
        return this.baseFs.ftruncateSync(fd2, 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;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@yarnpkg/fslib/3.1.5/0e9904b11de6308a21798242812fdf27d11a2bd1d4eaf78322aa70681bfeb694/node_modules/@yarnpkg/fslib/lib/AliasFS.js
var require_AliasFS = __commonJS({
  "../../../../../setup-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;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@yarnpkg/fslib/3.1.5/0e9904b11de6308a21798242812fdf27d11a2bd1d4eaf78322aa70681bfeb694/node_modules/@yarnpkg/fslib/lib/NodeFS.js
var require_NodeFS = __commonJS({
  "../../../../../setup-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((resolve4, reject3) => {
          this.realFs.open(path_1.npath.fromPortablePath(p), flags, mode, this.makeCallback(resolve4, reject3));
        });
      }
      openSync(p, flags, mode) {
        return this.realFs.openSync(path_1.npath.fromPortablePath(p), flags, mode);
      }
      async opendirPromise(p, opts3) {
        return await new Promise((resolve4, reject3) => {
          if (typeof opts3 !== `undefined`) {
            this.realFs.opendir(path_1.npath.fromPortablePath(p), opts3, this.makeCallback(resolve4, reject3));
          } else {
            this.realFs.opendir(path_1.npath.fromPortablePath(p), this.makeCallback(resolve4, reject3));
          }
        }).then((dir) => {
          const dirWithFixedPath = dir;
          Object.defineProperty(dirWithFixedPath, `path`, {
            value: p,
            configurable: true,
            writable: true
          });
          return dirWithFixedPath;
        });
      }
      opendirSync(p, opts3) {
        const dir = typeof opts3 !== `undefined` ? this.realFs.opendirSync(path_1.npath.fromPortablePath(p), opts3) : 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(fd2, buffer3, offset = 0, length = 0, position3 = -1) {
        return await new Promise((resolve4, reject3) => {
          this.realFs.read(fd2, buffer3, offset, length, position3, (error, bytesRead) => {
            if (error) {
              reject3(error);
            } else {
              resolve4(bytesRead);
            }
          });
        });
      }
      readSync(fd2, buffer3, offset, length, position3) {
        return this.realFs.readSync(fd2, buffer3, offset, length, position3);
      }
      async writePromise(fd2, buffer3, offset, length, position3) {
        return await new Promise((resolve4, reject3) => {
          if (typeof buffer3 === `string`) {
            return this.realFs.write(fd2, buffer3, offset, this.makeCallback(resolve4, reject3));
          } else {
            return this.realFs.write(fd2, buffer3, offset, length, position3, this.makeCallback(resolve4, reject3));
          }
        });
      }
      writeSync(fd2, buffer3, offset, length, position3) {
        if (typeof buffer3 === `string`) {
          return this.realFs.writeSync(fd2, buffer3, offset);
        } else {
          return this.realFs.writeSync(fd2, buffer3, offset, length, position3);
        }
      }
      async closePromise(fd2) {
        await new Promise((resolve4, reject3) => {
          this.realFs.close(fd2, this.makeCallback(resolve4, reject3));
        });
      }
      closeSync(fd2) {
        this.realFs.closeSync(fd2);
      }
      createReadStream(p, opts3) {
        const realPath = p !== null ? path_1.npath.fromPortablePath(p) : p;
        return this.realFs.createReadStream(realPath, opts3);
      }
      createWriteStream(p, opts3) {
        const realPath = p !== null ? path_1.npath.fromPortablePath(p) : p;
        return this.realFs.createWriteStream(realPath, opts3);
      }
      async realpathPromise(p) {
        return await new Promise((resolve4, reject3) => {
          this.realFs.realpath(path_1.npath.fromPortablePath(p), {}, this.makeCallback(resolve4, reject3));
        }).then((path240) => {
          return path_1.npath.toPortablePath(path240);
        });
      }
      realpathSync(p) {
        return path_1.npath.toPortablePath(this.realFs.realpathSync(path_1.npath.fromPortablePath(p), {}));
      }
      async existsPromise(p) {
        return await new Promise((resolve4) => {
          this.realFs.exists(path_1.npath.fromPortablePath(p), resolve4);
        });
      }
      accessSync(p, mode) {
        return this.realFs.accessSync(path_1.npath.fromPortablePath(p), mode);
      }
      async accessPromise(p, mode) {
        return await new Promise((resolve4, reject3) => {
          this.realFs.access(path_1.npath.fromPortablePath(p), mode, this.makeCallback(resolve4, reject3));
        });
      }
      existsSync(p) {
        return this.realFs.existsSync(path_1.npath.fromPortablePath(p));
      }
      async statPromise(p, opts3) {
        return await new Promise((resolve4, reject3) => {
          if (opts3) {
            this.realFs.stat(path_1.npath.fromPortablePath(p), opts3, this.makeCallback(resolve4, reject3));
          } else {
            this.realFs.stat(path_1.npath.fromPortablePath(p), this.makeCallback(resolve4, reject3));
          }
        });
      }
      statSync(p, opts3) {
        if (opts3) {
          return this.realFs.statSync(path_1.npath.fromPortablePath(p), opts3);
        } else {
          return this.realFs.statSync(path_1.npath.fromPortablePath(p));
        }
      }
      async fstatPromise(fd2, opts3) {
        return await new Promise((resolve4, reject3) => {
          if (opts3) {
            this.realFs.fstat(fd2, opts3, this.makeCallback(resolve4, reject3));
          } else {
            this.realFs.fstat(fd2, this.makeCallback(resolve4, reject3));
          }
        });
      }
      fstatSync(fd2, opts3) {
        if (opts3) {
          return this.realFs.fstatSync(fd2, opts3);
        } else {
          return this.realFs.fstatSync(fd2);
        }
      }
      async lstatPromise(p, opts3) {
        return await new Promise((resolve4, reject3) => {
          if (opts3) {
            this.realFs.lstat(path_1.npath.fromPortablePath(p), opts3, this.makeCallback(resolve4, reject3));
          } else {
            this.realFs.lstat(path_1.npath.fromPortablePath(p), this.makeCallback(resolve4, reject3));
          }
        });
      }
      lstatSync(p, opts3) {
        if (opts3) {
          return this.realFs.lstatSync(path_1.npath.fromPortablePath(p), opts3);
        } else {
          return this.realFs.lstatSync(path_1.npath.fromPortablePath(p));
        }
      }
      async fchmodPromise(fd2, mask) {
        return await new Promise((resolve4, reject3) => {
          this.realFs.fchmod(fd2, mask, this.makeCallback(resolve4, reject3));
        });
      }
      fchmodSync(fd2, mask) {
        return this.realFs.fchmodSync(fd2, mask);
      }
      async chmodPromise(p, mask) {
        return await new Promise((resolve4, reject3) => {
          this.realFs.chmod(path_1.npath.fromPortablePath(p), mask, this.makeCallback(resolve4, reject3));
        });
      }
      chmodSync(p, mask) {
        return this.realFs.chmodSync(path_1.npath.fromPortablePath(p), mask);
      }
      async fchownPromise(fd2, uid, gid) {
        return await new Promise((resolve4, reject3) => {
          this.realFs.fchown(fd2, uid, gid, this.makeCallback(resolve4, reject3));
        });
      }
      fchownSync(fd2, uid, gid) {
        return this.realFs.fchownSync(fd2, uid, gid);
      }
      async chownPromise(p, uid, gid) {
        return await new Promise((resolve4, reject3) => {
          this.realFs.chown(path_1.npath.fromPortablePath(p), uid, gid, this.makeCallback(resolve4, reject3));
        });
      }
      chownSync(p, uid, gid) {
        return this.realFs.chownSync(path_1.npath.fromPortablePath(p), uid, gid);
      }
      async renamePromise(oldP, newP) {
        return await new Promise((resolve4, reject3) => {
          this.realFs.rename(path_1.npath.fromPortablePath(oldP), path_1.npath.fromPortablePath(newP), this.makeCallback(resolve4, 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((resolve4, reject3) => {
          this.realFs.copyFile(path_1.npath.fromPortablePath(sourceP), path_1.npath.fromPortablePath(destP), flags, this.makeCallback(resolve4, 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, opts3) {
        return await new Promise((resolve4, reject3) => {
          const fsNativePath = typeof p === `string` ? path_1.npath.fromPortablePath(p) : p;
          if (opts3) {
            this.realFs.appendFile(fsNativePath, content, opts3, this.makeCallback(resolve4, reject3));
          } else {
            this.realFs.appendFile(fsNativePath, content, this.makeCallback(resolve4, reject3));
          }
        });
      }
      appendFileSync(p, content, opts3) {
        const fsNativePath = typeof p === `string` ? path_1.npath.fromPortablePath(p) : p;
        if (opts3) {
          this.realFs.appendFileSync(fsNativePath, content, opts3);
        } else {
          this.realFs.appendFileSync(fsNativePath, content);
        }
      }
      async writeFilePromise(p, content, opts3) {
        return await new Promise((resolve4, reject3) => {
          const fsNativePath = typeof p === `string` ? path_1.npath.fromPortablePath(p) : p;
          if (opts3) {
            this.realFs.writeFile(fsNativePath, content, opts3, this.makeCallback(resolve4, reject3));
          } else {
            this.realFs.writeFile(fsNativePath, content, this.makeCallback(resolve4, reject3));
          }
        });
      }
      writeFileSync(p, content, opts3) {
        const fsNativePath = typeof p === `string` ? path_1.npath.fromPortablePath(p) : p;
        if (opts3) {
          this.realFs.writeFileSync(fsNativePath, content, opts3);
        } else {
          this.realFs.writeFileSync(fsNativePath, content);
        }
      }
      async unlinkPromise(p) {
        return await new Promise((resolve4, reject3) => {
          this.realFs.unlink(path_1.npath.fromPortablePath(p), this.makeCallback(resolve4, reject3));
        });
      }
      unlinkSync(p) {
        return this.realFs.unlinkSync(path_1.npath.fromPortablePath(p));
      }
      async utimesPromise(p, atime, mtime) {
        return await new Promise((resolve4, reject3) => {
          this.realFs.utimes(path_1.npath.fromPortablePath(p), atime, mtime, this.makeCallback(resolve4, reject3));
        });
      }
      utimesSync(p, atime, mtime) {
        this.realFs.utimesSync(path_1.npath.fromPortablePath(p), atime, mtime);
      }
      async lutimesPromise(p, atime, mtime) {
        return await new Promise((resolve4, reject3) => {
          this.realFs.lutimes(path_1.npath.fromPortablePath(p), atime, mtime, this.makeCallback(resolve4, reject3));
        });
      }
      lutimesSync(p, atime, mtime) {
        this.realFs.lutimesSync(path_1.npath.fromPortablePath(p), atime, mtime);
      }
      async mkdirPromise(p, opts3) {
        return await new Promise((resolve4, reject3) => {
          this.realFs.mkdir(path_1.npath.fromPortablePath(p), opts3, this.makeCallback(resolve4, reject3));
        });
      }
      mkdirSync(p, opts3) {
        return this.realFs.mkdirSync(path_1.npath.fromPortablePath(p), opts3);
      }
      async rmdirPromise(p, opts3) {
        return await new Promise((resolve4, reject3) => {
          if (opts3) {
            this.realFs.rmdir(path_1.npath.fromPortablePath(p), opts3, this.makeCallback(resolve4, reject3));
          } else {
            this.realFs.rmdir(path_1.npath.fromPortablePath(p), this.makeCallback(resolve4, reject3));
          }
        });
      }
      rmdirSync(p, opts3) {
        return this.realFs.rmdirSync(path_1.npath.fromPortablePath(p), opts3);
      }
      async rmPromise(p, opts3) {
        return await new Promise((resolve4, reject3) => {
          if (opts3) {
            this.realFs.rm(path_1.npath.fromPortablePath(p), opts3, this.makeCallback(resolve4, reject3));
          } else {
            this.realFs.rm(path_1.npath.fromPortablePath(p), this.makeCallback(resolve4, reject3));
          }
        });
      }
      rmSync(p, opts3) {
        return this.realFs.rmSync(path_1.npath.fromPortablePath(p), opts3);
      }
      async linkPromise(existingP, newP) {
        return await new Promise((resolve4, reject3) => {
          this.realFs.link(path_1.npath.fromPortablePath(existingP), path_1.npath.fromPortablePath(newP), this.makeCallback(resolve4, 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((resolve4, reject3) => {
          this.realFs.symlink(path_1.npath.fromPortablePath(target2.replace(/\/+$/, ``)), path_1.npath.fromPortablePath(p), type4, this.makeCallback(resolve4, 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((resolve4, reject3) => {
          const fsNativePath = typeof p === `string` ? path_1.npath.fromPortablePath(p) : p;
          this.realFs.readFile(fsNativePath, encoding, this.makeCallback(resolve4, reject3));
        });
      }
      readFileSync(p, encoding) {
        const fsNativePath = typeof p === `string` ? path_1.npath.fromPortablePath(p) : p;
        return this.realFs.readFileSync(fsNativePath, encoding);
      }
      async readdirPromise(p, opts3) {
        return await new Promise((resolve4, reject3) => {
          if (opts3) {
            if (opts3.recursive && process.platform === `win32`) {
              if (opts3.withFileTypes) {
                this.realFs.readdir(path_1.npath.fromPortablePath(p), opts3, this.makeCallback((results) => resolve4(results.map(direntToPortable)), reject3));
              } else {
                this.realFs.readdir(path_1.npath.fromPortablePath(p), opts3, this.makeCallback((results) => resolve4(results.map(path_1.npath.toPortablePath)), reject3));
              }
            } else {
              this.realFs.readdir(path_1.npath.fromPortablePath(p), opts3, this.makeCallback(resolve4, reject3));
            }
          } else {
            this.realFs.readdir(path_1.npath.fromPortablePath(p), this.makeCallback(resolve4, reject3));
          }
        });
      }
      readdirSync(p, opts3) {
        if (opts3) {
          if (opts3.recursive && process.platform === `win32`) {
            if (opts3.withFileTypes) {
              return this.realFs.readdirSync(path_1.npath.fromPortablePath(p), opts3).map(direntToPortable);
            } else {
              return this.realFs.readdirSync(path_1.npath.fromPortablePath(p), opts3).map(path_1.npath.toPortablePath);
            }
          } else {
            return this.realFs.readdirSync(path_1.npath.fromPortablePath(p), opts3);
          }
        } else {
          return this.realFs.readdirSync(path_1.npath.fromPortablePath(p));
        }
      }
      async readlinkPromise(p) {
        return await new Promise((resolve4, reject3) => {
          this.realFs.readlink(path_1.npath.fromPortablePath(p), this.makeCallback(resolve4, reject3));
        }).then((path240) => {
          return path_1.npath.toPortablePath(path240);
        });
      }
      readlinkSync(p) {
        return path_1.npath.toPortablePath(this.realFs.readlinkSync(path_1.npath.fromPortablePath(p)));
      }
      async truncatePromise(p, len) {
        return await new Promise((resolve4, reject3) => {
          this.realFs.truncate(path_1.npath.fromPortablePath(p), len, this.makeCallback(resolve4, reject3));
        });
      }
      truncateSync(p, len) {
        return this.realFs.truncateSync(path_1.npath.fromPortablePath(p), len);
      }
      async ftruncatePromise(fd2, len) {
        return await new Promise((resolve4, reject3) => {
          this.realFs.ftruncate(fd2, len, this.makeCallback(resolve4, reject3));
        });
      }
      ftruncateSync(fd2, len) {
        return this.realFs.ftruncateSync(fd2, 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(resolve4, reject3) {
        return (err2, result2) => {
          if (err2) {
            reject3(err2);
          } else {
            resolve4(result2);
          }
        };
      }
    };
    exports2.NodeFS = NodeFS;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@yarnpkg/fslib/3.1.5/0e9904b11de6308a21798242812fdf27d11a2bd1d4eaf78322aa70681bfeb694/node_modules/@yarnpkg/fslib/lib/CwdFS.js
var require_CwdFS = __commonJS({
  "../../../../../setup-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(path240) {
        return path240;
      }
      mapToBase(path240) {
        if (this.pathUtils.isAbsolute(path240)) {
          return path240;
        } else {
          return this.pathUtils.join(this.target, path240);
        }
      }
    };
    exports2.CwdFS = CwdFS;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@yarnpkg/fslib/3.1.5/0e9904b11de6308a21798242812fdf27d11a2bd1d4eaf78322aa70681bfeb694/node_modules/@yarnpkg/fslib/lib/JailFS.js
var require_JailFS = __commonJS({
  "../../../../../setup-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;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@yarnpkg/fslib/3.1.5/0e9904b11de6308a21798242812fdf27d11a2bd1d4eaf78322aa70681bfeb694/node_modules/@yarnpkg/fslib/lib/LazyFS.js
var require_LazyFS = __commonJS({
  "../../../../../setup-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;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@yarnpkg/fslib/3.1.5/0e9904b11de6308a21798242812fdf27d11a2bd1d4eaf78322aa70681bfeb694/node_modules/@yarnpkg/fslib/lib/MountFS.js
var require_MountFS = __commonJS({
  "../../../../../setup-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_errors());
    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 [path240, { childFs }] of this.mountInstances.entries()) {
            childFs.saveAndClose?.();
            this.mountInstances.delete(path240);
          }
        }
      }
      discardAndClose() {
        (0, watchFile_1.unwatchAllFiles)(this);
        if (this.mountInstances) {
          for (const [path240, { childFs }] of this.mountInstances.entries()) {
            childFs.discardAndClose?.();
            this.mountInstances.delete(path240);
          }
        }
      }
      resolve(p) {
        return this.baseFs.resolve(p);
      }
      remapFd(mountFs, fd2) {
        const remappedFd = this.nextFd++ | this.magic;
        this.fdMap.set(remappedFd, [mountFs, fd2]);
        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, opts3) {
        return await this.makeCallPromise(p, async () => {
          return await this.baseFs.opendirPromise(p, opts3);
        }, async (mountFs, { subPath }) => {
          return await mountFs.opendirPromise(subPath, opts3);
        }, {
          requireSubpath: false
        });
      }
      opendirSync(p, opts3) {
        return this.makeCallSync(p, () => {
          return this.baseFs.opendirSync(p, opts3);
        }, (mountFs, { subPath }) => {
          return mountFs.opendirSync(subPath, opts3);
        }, {
          requireSubpath: false
        });
      }
      async readPromise(fd2, buffer3, offset, length, position3) {
        if ((fd2 & MOUNT_MASK) !== this.magic)
          return await this.baseFs.readPromise(fd2, buffer3, offset, length, position3);
        const entry = this.fdMap.get(fd2);
        if (typeof entry === `undefined`)
          throw errors2.EBADF(`read`);
        const [mountFs, realFd] = entry;
        return await mountFs.readPromise(realFd, buffer3, offset, length, position3);
      }
      readSync(fd2, buffer3, offset, length, position3) {
        if ((fd2 & MOUNT_MASK) !== this.magic)
          return this.baseFs.readSync(fd2, buffer3, offset, length, position3);
        const entry = this.fdMap.get(fd2);
        if (typeof entry === `undefined`)
          throw errors2.EBADF(`readSync`);
        const [mountFs, realFd] = entry;
        return mountFs.readSync(realFd, buffer3, offset, length, position3);
      }
      async writePromise(fd2, buffer3, offset, length, position3) {
        if ((fd2 & MOUNT_MASK) !== this.magic) {
          if (typeof buffer3 === `string`) {
            return await this.baseFs.writePromise(fd2, buffer3, offset);
          } else {
            return await this.baseFs.writePromise(fd2, buffer3, offset, length, position3);
          }
        }
        const entry = this.fdMap.get(fd2);
        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(fd2, buffer3, offset, length, position3) {
        if ((fd2 & MOUNT_MASK) !== this.magic) {
          if (typeof buffer3 === `string`) {
            return this.baseFs.writeSync(fd2, buffer3, offset);
          } else {
            return this.baseFs.writeSync(fd2, buffer3, offset, length, position3);
          }
        }
        const entry = this.fdMap.get(fd2);
        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(fd2) {
        if ((fd2 & MOUNT_MASK) !== this.magic)
          return await this.baseFs.closePromise(fd2);
        const entry = this.fdMap.get(fd2);
        if (typeof entry === `undefined`)
          throw errors2.EBADF(`close`);
        this.fdMap.delete(fd2);
        const [mountFs, realFd] = entry;
        return await mountFs.closePromise(realFd);
      }
      closeSync(fd2) {
        if ((fd2 & MOUNT_MASK) !== this.magic)
          return this.baseFs.closeSync(fd2);
        const entry = this.fdMap.get(fd2);
        if (typeof entry === `undefined`)
          throw errors2.EBADF(`closeSync`);
        this.fdMap.delete(fd2);
        const [mountFs, realFd] = entry;
        return mountFs.closeSync(realFd);
      }
      createReadStream(p, opts3) {
        if (p === null)
          return this.baseFs.createReadStream(p, opts3);
        return this.makeCallSync(p, () => {
          return this.baseFs.createReadStream(p, opts3);
        }, (mountFs, { archivePath, subPath }) => {
          const stream2 = mountFs.createReadStream(subPath, opts3);
          stream2.path = path_1.npath.fromPortablePath(this.pathUtils.join(archivePath, subPath));
          return stream2;
        });
      }
      createWriteStream(p, opts3) {
        if (p === null)
          return this.baseFs.createWriteStream(p, opts3);
        return this.makeCallSync(p, () => {
          return this.baseFs.createWriteStream(p, opts3);
        }, (mountFs, { subPath }) => {
          return mountFs.createWriteStream(subPath, opts3);
        });
      }
      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, opts3) {
        return await this.makeCallPromise(p, async () => {
          return await this.baseFs.statPromise(p, opts3);
        }, async (mountFs, { subPath }) => {
          return await mountFs.statPromise(subPath, opts3);
        });
      }
      statSync(p, opts3) {
        return this.makeCallSync(p, () => {
          return this.baseFs.statSync(p, opts3);
        }, (mountFs, { subPath }) => {
          return mountFs.statSync(subPath, opts3);
        });
      }
      async fstatPromise(fd2, opts3) {
        if ((fd2 & MOUNT_MASK) !== this.magic)
          return this.baseFs.fstatPromise(fd2, opts3);
        const entry = this.fdMap.get(fd2);
        if (typeof entry === `undefined`)
          throw errors2.EBADF(`fstat`);
        const [mountFs, realFd] = entry;
        return mountFs.fstatPromise(realFd, opts3);
      }
      fstatSync(fd2, opts3) {
        if ((fd2 & MOUNT_MASK) !== this.magic)
          return this.baseFs.fstatSync(fd2, opts3);
        const entry = this.fdMap.get(fd2);
        if (typeof entry === `undefined`)
          throw errors2.EBADF(`fstatSync`);
        const [mountFs, realFd] = entry;
        return mountFs.fstatSync(realFd, opts3);
      }
      async lstatPromise(p, opts3) {
        return await this.makeCallPromise(p, async () => {
          return await this.baseFs.lstatPromise(p, opts3);
        }, async (mountFs, { subPath }) => {
          return await mountFs.lstatPromise(subPath, opts3);
        });
      }
      lstatSync(p, opts3) {
        return this.makeCallSync(p, () => {
          return this.baseFs.lstatSync(p, opts3);
        }, (mountFs, { subPath }) => {
          return mountFs.lstatSync(subPath, opts3);
        });
      }
      async fchmodPromise(fd2, mask) {
        if ((fd2 & MOUNT_MASK) !== this.magic)
          return this.baseFs.fchmodPromise(fd2, mask);
        const entry = this.fdMap.get(fd2);
        if (typeof entry === `undefined`)
          throw errors2.EBADF(`fchmod`);
        const [mountFs, realFd] = entry;
        return mountFs.fchmodPromise(realFd, mask);
      }
      fchmodSync(fd2, mask) {
        if ((fd2 & MOUNT_MASK) !== this.magic)
          return this.baseFs.fchmodSync(fd2, mask);
        const entry = this.fdMap.get(fd2);
        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(fd2, uid, gid) {
        if ((fd2 & MOUNT_MASK) !== this.magic)
          return this.baseFs.fchownPromise(fd2, uid, gid);
        const entry = this.fdMap.get(fd2);
        if (typeof entry === `undefined`)
          throw errors2.EBADF(`fchown`);
        const [zipFs, realFd] = entry;
        return zipFs.fchownPromise(realFd, uid, gid);
      }
      fchownSync(fd2, uid, gid) {
        if ((fd2 & MOUNT_MASK) !== this.magic)
          return this.baseFs.fchownSync(fd2, uid, gid);
        const entry = this.fdMap.get(fd2);
        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, opts3) {
        return await this.makeCallPromise(p, async () => {
          return await this.baseFs.appendFilePromise(p, content, opts3);
        }, async (mountFs, { subPath }) => {
          return await mountFs.appendFilePromise(subPath, content, opts3);
        });
      }
      appendFileSync(p, content, opts3) {
        return this.makeCallSync(p, () => {
          return this.baseFs.appendFileSync(p, content, opts3);
        }, (mountFs, { subPath }) => {
          return mountFs.appendFileSync(subPath, content, opts3);
        });
      }
      async writeFilePromise(p, content, opts3) {
        return await this.makeCallPromise(p, async () => {
          return await this.baseFs.writeFilePromise(p, content, opts3);
        }, async (mountFs, { subPath }) => {
          return await mountFs.writeFilePromise(subPath, content, opts3);
        });
      }
      writeFileSync(p, content, opts3) {
        return this.makeCallSync(p, () => {
          return this.baseFs.writeFileSync(p, content, opts3);
        }, (mountFs, { subPath }) => {
          return mountFs.writeFileSync(subPath, content, opts3);
        });
      }
      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, opts3) {
        return await this.makeCallPromise(p, async () => {
          return await this.baseFs.mkdirPromise(p, opts3);
        }, async (mountFs, { subPath }) => {
          return await mountFs.mkdirPromise(subPath, opts3);
        });
      }
      mkdirSync(p, opts3) {
        return this.makeCallSync(p, () => {
          return this.baseFs.mkdirSync(p, opts3);
        }, (mountFs, { subPath }) => {
          return mountFs.mkdirSync(subPath, opts3);
        });
      }
      async rmdirPromise(p, opts3) {
        return await this.makeCallPromise(p, async () => {
          return await this.baseFs.rmdirPromise(p, opts3);
        }, async (mountFs, { subPath }) => {
          return await mountFs.rmdirPromise(subPath, opts3);
        });
      }
      rmdirSync(p, opts3) {
        return this.makeCallSync(p, () => {
          return this.baseFs.rmdirSync(p, opts3);
        }, (mountFs, { subPath }) => {
          return mountFs.rmdirSync(subPath, opts3);
        });
      }
      async rmPromise(p, opts3) {
        return await this.makeCallPromise(p, async () => {
          return await this.baseFs.rmPromise(p, opts3);
        }, async (mountFs, { subPath }) => {
          return await mountFs.rmPromise(subPath, opts3);
        });
      }
      rmSync(p, opts3) {
        return this.makeCallSync(p, () => {
          return this.baseFs.rmSync(p, opts3);
        }, (mountFs, { subPath }) => {
          return mountFs.rmSync(subPath, opts3);
        });
      }
      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, opts3) {
        return await this.makeCallPromise(p, async () => {
          return await this.baseFs.readdirPromise(p, opts3);
        }, async (mountFs, { subPath }) => {
          return await mountFs.readdirPromise(subPath, opts3);
        }, {
          requireSubpath: false
        });
      }
      readdirSync(p, opts3) {
        return this.makeCallSync(p, () => {
          return this.baseFs.readdirSync(p, opts3);
        }, (mountFs, { subPath }) => {
          return mountFs.readdirSync(subPath, opts3);
        }, {
          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(fd2, len) {
        if ((fd2 & MOUNT_MASK) !== this.magic)
          return this.baseFs.ftruncatePromise(fd2, len);
        const entry = this.fdMap.get(fd2);
        if (typeof entry === `undefined`)
          throw errors2.EBADF(`ftruncate`);
        const [mountFs, realFd] = entry;
        return mountFs.ftruncatePromise(realFd, len);
      }
      ftruncateSync(fd2, len) {
        if ((fd2 & MOUNT_MASK) !== this.magic)
          return this.baseFs.ftruncateSync(fd2, len);
        const entry = this.fdMap.get(fd2);
        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(max4) {
        if (this.mountInstances === null)
          return;
        const now = Date.now();
        let nextExpiresAt = now + this.maxAge;
        let closeCount = max4 === null ? 0 : this.mountInstances.size - max4;
        for (const [path240, { childFs, expiresAt, refCount }] of this.mountInstances.entries()) {
          if (refCount !== 0 || childFs.hasOpenFileHandles?.()) {
            continue;
          } else if (now >= expiresAt) {
            childFs.saveAndClose?.();
            this.mountInstances.delete(path240);
            closeCount -= 1;
            continue;
          } else if (max4 === null || closeCount <= 0) {
            nextExpiresAt = expiresAt;
            break;
          }
          childFs.saveAndClose?.();
          this.mountInstances.delete(path240);
          closeCount -= 1;
        }
        if (this.limitOpenFilesTimeout === null && (max4 === null && this.mountInstances.size > 0 || max4 !== 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;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@yarnpkg/fslib/3.1.5/0e9904b11de6308a21798242812fdf27d11a2bd1d4eaf78322aa70681bfeb694/node_modules/@yarnpkg/fslib/lib/NoFS.js
var require_NoFS = __commonJS({
  "../../../../../setup-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(fd2) {
        throw makeError2();
      }
      fstatSync(fd2) {
        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(fd2, len) {
        throw makeError2();
      }
      ftruncateSync(fd2, len) {
        throw makeError2();
      }
      watch() {
        throw makeError2();
      }
      watchFile() {
        throw makeError2();
      }
      unwatchFile() {
        throw makeError2();
      }
    };
    exports2.NoFS = NoFS;
    NoFS.instance = new NoFS();
  }
});

// ../../../../../setup-pnpm/store/v11/links/@yarnpkg/fslib/3.1.5/0e9904b11de6308a21798242812fdf27d11a2bd1d4eaf78322aa70681bfeb694/node_modules/@yarnpkg/fslib/lib/PosixFS.js
var require_PosixFS = __commonJS({
  "../../../../../setup-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(path240) {
        return path_1.npath.fromPortablePath(path240);
      }
      mapToBase(path240) {
        return path_1.npath.toPortablePath(path240);
      }
    };
    exports2.PosixFS = PosixFS;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@yarnpkg/fslib/3.1.5/0e9904b11de6308a21798242812fdf27d11a2bd1d4eaf78322aa70681bfeb694/node_modules/@yarnpkg/fslib/lib/VirtualFS.js
var require_VirtualFS = __commonJS({
  "../../../../../setup-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 realpath4 = this.baseFs.realpathSync(this.mapToBase(p));
        return _VirtualFS.makeVirtualPath(match[1], match[3], realpath4);
      }
      async realpathPromise(p) {
        const match = p.match(VIRTUAL_REGEXP);
        if (!match)
          return await this.baseFs.realpathPromise(p);
        if (!match[5])
          return p;
        const realpath4 = await this.baseFs.realpathPromise(this.mapToBase(p));
        return _VirtualFS.makeVirtualPath(match[1], match[3], realpath4);
      }
      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;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@yarnpkg/fslib/3.1.5/0e9904b11de6308a21798242812fdf27d11a2bd1d4eaf78322aa70681bfeb694/node_modules/@yarnpkg/fslib/lib/NodePathFS.js
var require_NodePathFS = __commonJS({
  "../../../../../setup-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(path240) {
        return path240;
      }
      mapToBase(path240) {
        if (typeof path240 === `string`)
          return path240;
        if (path240 instanceof URL)
          return (0, url_1.fileURLToPath)(path240);
        if (Buffer.isBuffer(path240)) {
          const str2 = path240.toString();
          if (!isUtf8(path240, 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)(path240)}`);
      }
    };
    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;
    }
  }
});

// ../../../../../setup-pnpm/store/v11/links/@yarnpkg/fslib/3.1.5/0e9904b11de6308a21798242812fdf27d11a2bd1d4eaf78322aa70681bfeb694/node_modules/@yarnpkg/fslib/lib/patchFs/FileHandle.js
var require_FileHandle = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@yarnpkg/fslib/3.1.5/0e9904b11de6308a21798242812fdf27d11a2bd1d4eaf78322aa70681bfeb694/node_modules/@yarnpkg/fslib/lib/patchFs/FileHandle.js"(exports2) {
    "use strict";
    var _a2;
    var _b2;
    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(fd2, baseFs) {
        this[_a2] = 1;
        this[_b2] = void 0;
        this[_c] = void 0;
        this[_d] = void 0;
        this[kBaseFs] = baseFs;
        this[kFd] = fd2;
      }
      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(opts3) {
        try {
          this[kRef](this.stat);
          return await this[kBaseFs].fstatPromise(this.fd, opts3);
        } 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 fd2 = this[kFd];
          this[kFd] = -1;
          this[kClosePromise] = this[kBaseFs].closePromise(fd2).finally(() => {
            this[kClosePromise] = void 0;
          });
        } else {
          this[kClosePromise] = new Promise((resolve4, reject3) => {
            this[kCloseResolve] = resolve4;
            this[kCloseReject] = reject3;
          }).finally(() => {
            this[kClosePromise] = void 0;
            this[kCloseReject] = void 0;
            this[kCloseResolve] = void 0;
          });
        }
        return this[kClosePromise];
      }
      [(_a2 = kRefs, _b2 = kClosePromise, _c = kCloseResolve, _d = kCloseReject, kRef)](caller) {
        if (this[kFd] === -1) {
          const err2 = new Error(`file closed`);
          err2.code = `EBADF`;
          err2.syscall = caller.name;
          throw err2;
        }
        this[kRefs]++;
      }
      [kUnref]() {
        this[kRefs]--;
        if (this[kRefs] === 0) {
          const fd2 = this[kFd];
          this[kFd] = -1;
          this[kBaseFs].closePromise(fd2).then(this[kCloseResolve], this[kCloseReject]);
        }
      }
    };
    exports2.FileHandle = FileHandle;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@yarnpkg/fslib/3.1.5/0e9904b11de6308a21798242812fdf27d11a2bd1d4eaf78322aa70681bfeb694/node_modules/@yarnpkg/fslib/lib/patchFs/patchFs.js
var require_patchFs = __commonJS({
  "../../../../../setup-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 [fd2, 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(fd2, 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 [fd2, 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(fd2, 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 fd2 = await fakeFs.openPromise(...args);
          return new FileHandle_1.FileHandle(fd2, fakeFs);
        });
      }
      {
        patchedFs.read[util_1.promisify.custom] = async (fd2, buffer3, ...args) => {
          const res = fakeFs.readPromise(fd2, buffer3, ...args);
          return { bytesRead: await res, buffer: buffer3 };
        };
        patchedFs.write[util_1.promisify.custom] = async (fd2, buffer3, ...args) => {
          const res = fakeFs.writePromise(fd2, buffer3, ...args);
          return { bytesWritten: await res, buffer: buffer3 };
        };
      }
    }
    function extendFs(realFs, fakeFs) {
      const patchedFs = Object.create(realFs);
      patchFs(patchedFs, fakeFs);
      return patchedFs;
    }
  }
});

// ../../../../../setup-pnpm/store/v11/links/@yarnpkg/fslib/3.1.5/0e9904b11de6308a21798242812fdf27d11a2bd1d4eaf78322aa70681bfeb694/node_modules/@yarnpkg/fslib/lib/xfs.js
var require_xfs = __commonJS({
  "../../../../../setup-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 {
          }
        }
      }
    });
  }
});

// ../../../../../setup-pnpm/store/v11/links/@yarnpkg/fslib/3.1.5/0e9904b11de6308a21798242812fdf27d11a2bd1d4eaf78322aa70681bfeb694/node_modules/@yarnpkg/fslib/lib/index.js
var require_lib2 = __commonJS({
  "../../../../../setup-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 constants6 = tslib_12.__importStar(require_constants2());
    exports2.constants = constants6;
    var errors2 = tslib_12.__importStar(require_errors());
    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;
    } });
  }
});

// ../../../../../setup-pnpm/store/v11/links/@yarnpkg/parsers/3.0.3/8a40a6e3fc1d026e3eec58c9a9d234f5c21a191df6e66242e0507871c7724a19/node_modules/@yarnpkg/parsers/lib/grammars/shell.js
var require_shell = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@yarnpkg/parsers/3.0.3/8a40a6e3fc1d026e3eec58c9a9d234f5c21a191df6e66242e0507871c7724a19/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 = "", i4;
          for (i4 = 0; i4 < expectation.parts.length; i4++) {
            escapedParts += expectation.parts[i4] instanceof Array ? classEscape(expectation.parts[i4][0]) + "-" + classEscape(expectation.parts[i4][1]) : classEscape(expectation.parts[i4]);
          }
          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), i4, j2;
        for (i4 = 0; i4 < expected2.length; i4++) {
          descriptions[i4] = describeExpectation(expected2[i4]);
        }
        descriptions.sort();
        if (descriptions.length > 0) {
          for (i4 = 1, j2 = 1; i4 < descriptions.length; i4++) {
            if (descriptions[i4 - 1] !== descriptions[i4]) {
              descriptions[j2] = descriptions[i4];
              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(fd2, redirect, arg) {
        return { type: `redirection`, subtype: redirect, fd: fd2 !== null ? parseInt(fd2) : 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
    };
  }
});

// ../../../../../setup-pnpm/store/v11/links/@yarnpkg/parsers/3.0.3/8a40a6e3fc1d026e3eec58c9a9d234f5c21a191df6e66242e0507871c7724a19/node_modules/@yarnpkg/parsers/lib/shell.js
var require_shell2 = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@yarnpkg/parsers/3.0.3/8a40a6e3fc1d026e3eec58c9a9d234f5c21a191df6e66242e0507871c7724a19/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 }, index2) => `${stringifyCommandLine(command)}${type4 === `;` ? index2 !== 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((env4) => stringifyEnvSegment(env4)).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((env4) => stringifyEnvSegment(env4)).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)}`;
      }
    }
  }
});

// ../../../../../setup-pnpm/store/v11/links/@yarnpkg/parsers/3.0.3/8a40a6e3fc1d026e3eec58c9a9d234f5c21a191df6e66242e0507871c7724a19/node_modules/@yarnpkg/parsers/lib/grammars/resolution.js
var require_resolution = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@yarnpkg/parsers/3.0.3/8a40a6e3fc1d026e3eec58c9a9d234f5c21a191df6e66242e0507871c7724a19/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 = "", i4;
          for (i4 = 0; i4 < expectation.parts.length; i4++) {
            escapedParts += expectation.parts[i4] instanceof Array ? classEscape(expectation.parts[i4][0]) + "-" + classEscape(expectation.parts[i4][1]) : classEscape(expectation.parts[i4]);
          }
          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), i4, j2;
        for (i4 = 0; i4 < expected2.length; i4++) {
          descriptions[i4] = describeExpectation(expected2[i4]);
        }
        descriptions.sort();
        if (descriptions.length > 0) {
          for (i4 = 1, j2 = 1; i4 < descriptions.length; i4++) {
            if (descriptions[i4 - 1] !== descriptions[i4]) {
              descriptions[j2] = descriptions[i4];
              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
    };
  }
});

// ../../../../../setup-pnpm/store/v11/links/@yarnpkg/parsers/3.0.3/8a40a6e3fc1d026e3eec58c9a9d234f5c21a191df6e66242e0507871c7724a19/node_modules/@yarnpkg/parsers/lib/resolution.js
var require_resolution2 = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@yarnpkg/parsers/3.0.3/8a40a6e3fc1d026e3eec58c9a9d234f5c21a191df6e66242e0507871c7724a19/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;
    }
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/js-yaml/3.15.0/c54f9397ff82cb15bdd05886af07a74607482a66771b1479e81715c2bd21d2a7/node_modules/js-yaml/lib/js-yaml/common.js
var require_common = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/js-yaml/3.15.0/c54f9397ff82cb15bdd05886af07a74607482a66771b1479e81715c2bd21d2a7/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 index2, length, key, sourceKeys;
      if (source) {
        sourceKeys = Object.keys(source);
        for (index2 = 0, length = sourceKeys.length; index2 < length; index2 += 1) {
          key = sourceKeys[index2];
          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;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/js-yaml/3.15.0/c54f9397ff82cb15bdd05886af07a74607482a66771b1479e81715c2bd21d2a7/node_modules/js-yaml/lib/js-yaml/exception.js
var require_exception = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/js-yaml/3.15.0/c54f9397ff82cb15bdd05886af07a74607482a66771b1479e81715c2bd21d2a7/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;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/js-yaml/3.15.0/c54f9397ff82cb15bdd05886af07a74607482a66771b1479e81715c2bd21d2a7/node_modules/js-yaml/lib/js-yaml/mark.js
var require_mark = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/js-yaml/3.15.0/c54f9397ff82cb15bdd05886af07a74607482a66771b1479e81715c2bd21d2a7/node_modules/js-yaml/lib/js-yaml/mark.js"(exports2, module2) {
    "use strict";
    var common4 = 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 common4.repeat(" ", indent) + head2 + snippet2 + tail2 + "\n" + common4.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;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/js-yaml/3.15.0/c54f9397ff82cb15bdd05886af07a74607482a66771b1479e81715c2bd21d2a7/node_modules/js-yaml/lib/js-yaml/type.js
var require_type = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/js-yaml/3.15.0/c54f9397ff82cb15bdd05886af07a74607482a66771b1479e81715c2bd21d2a7/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;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/js-yaml/3.15.0/c54f9397ff82cb15bdd05886af07a74607482a66771b1479e81715c2bd21d2a7/node_modules/js-yaml/lib/js-yaml/schema.js
var require_schema = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/js-yaml/3.15.0/c54f9397ff82cb15bdd05886af07a74607482a66771b1479e81715c2bd21d2a7/node_modules/js-yaml/lib/js-yaml/schema.js"(exports2, module2) {
    "use strict";
    var common4 = 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, index2) {
        return exclude.indexOf(index2) === -1;
      });
    }
    function compileMap2() {
      var result2 = {
        scalar: {},
        sequence: {},
        mapping: {},
        fallback: {}
      }, index2, length;
      function collectType(type4) {
        result2[type4.kind][type4.tag] = result2["fallback"][type4.tag] = type4;
      }
      for (index2 = 0, length = arguments.length; index2 < length; index2 += 1) {
        arguments[index2].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 = common4.toArray(schemas);
      types3 = common4.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;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/js-yaml/3.15.0/c54f9397ff82cb15bdd05886af07a74607482a66771b1479e81715c2bd21d2a7/node_modules/js-yaml/lib/js-yaml/type/str.js
var require_str = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/js-yaml/3.15.0/c54f9397ff82cb15bdd05886af07a74607482a66771b1479e81715c2bd21d2a7/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 : "";
      }
    });
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/js-yaml/3.15.0/c54f9397ff82cb15bdd05886af07a74607482a66771b1479e81715c2bd21d2a7/node_modules/js-yaml/lib/js-yaml/type/seq.js
var require_seq = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/js-yaml/3.15.0/c54f9397ff82cb15bdd05886af07a74607482a66771b1479e81715c2bd21d2a7/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 : [];
      }
    });
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/js-yaml/3.15.0/c54f9397ff82cb15bdd05886af07a74607482a66771b1479e81715c2bd21d2a7/node_modules/js-yaml/lib/js-yaml/type/map.js
var require_map = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/js-yaml/3.15.0/c54f9397ff82cb15bdd05886af07a74607482a66771b1479e81715c2bd21d2a7/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 : {};
      }
    });
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/js-yaml/3.15.0/c54f9397ff82cb15bdd05886af07a74607482a66771b1479e81715c2bd21d2a7/node_modules/js-yaml/lib/js-yaml/schema/failsafe.js
var require_failsafe = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/js-yaml/3.15.0/c54f9397ff82cb15bdd05886af07a74607482a66771b1479e81715c2bd21d2a7/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()
      ]
    });
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/js-yaml/3.15.0/c54f9397ff82cb15bdd05886af07a74607482a66771b1479e81715c2bd21d2a7/node_modules/js-yaml/lib/js-yaml/type/null.js
var require_null = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/js-yaml/3.15.0/c54f9397ff82cb15bdd05886af07a74607482a66771b1479e81715c2bd21d2a7/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 max4 = data.length;
      return max4 === 1 && data === "~" || max4 === 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"
    });
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/js-yaml/3.15.0/c54f9397ff82cb15bdd05886af07a74607482a66771b1479e81715c2bd21d2a7/node_modules/js-yaml/lib/js-yaml/type/bool.js
var require_bool = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/js-yaml/3.15.0/c54f9397ff82cb15bdd05886af07a74607482a66771b1479e81715c2bd21d2a7/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 max4 = data.length;
      return max4 === 4 && (data === "true" || data === "True" || data === "TRUE") || max4 === 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"
    });
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/js-yaml/3.15.0/c54f9397ff82cb15bdd05886af07a74607482a66771b1479e81715c2bd21d2a7/node_modules/js-yaml/lib/js-yaml/type/int.js
var require_int = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/js-yaml/3.15.0/c54f9397ff82cb15bdd05886af07a74607482a66771b1479e81715c2bd21d2a7/node_modules/js-yaml/lib/js-yaml/type/int.js"(exports2, module2) {
    "use strict";
    var common4 = 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 max4 = data.length, index2 = 0, hasDigits = false, ch;
      if (!max4) return false;
      ch = data[index2];
      if (ch === "-" || ch === "+") {
        ch = data[++index2];
      }
      if (ch === "0") {
        if (index2 + 1 === max4) return true;
        ch = data[++index2];
        if (ch === "b") {
          index2++;
          for (; index2 < max4; index2++) {
            ch = data[index2];
            if (ch === "_") continue;
            if (ch !== "0" && ch !== "1") return false;
            hasDigits = true;
          }
          return hasDigits && ch !== "_";
        }
        if (ch === "x") {
          index2++;
          for (; index2 < max4; index2++) {
            ch = data[index2];
            if (ch === "_") continue;
            if (!isHexCode2(data.charCodeAt(index2))) return false;
            hasDigits = true;
          }
          return hasDigits && ch !== "_";
        }
        for (; index2 < max4; index2++) {
          ch = data[index2];
          if (ch === "_") continue;
          if (!isOctCode2(data.charCodeAt(index2))) return false;
          hasDigits = true;
        }
        return hasDigits && ch !== "_";
      }
      if (ch === "_") return false;
      for (; index2 < max4; index2++) {
        ch = data[index2];
        if (ch === "_") continue;
        if (ch === ":") break;
        if (!isDecCode2(data.charCodeAt(index2))) {
          return false;
        }
        hasDigits = true;
      }
      if (!hasDigits || ch === "_") return false;
      if (ch !== ":") return true;
      return /^(:[0-5]?[0-9])+$/.test(data.slice(index2));
    }
    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(d3) {
          value += d3 * 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 && !common4.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"]
      }
    });
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/js-yaml/3.15.0/c54f9397ff82cb15bdd05886af07a74607482a66771b1479e81715c2bd21d2a7/node_modules/js-yaml/lib/js-yaml/type/float.js
var require_float = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/js-yaml/3.15.0/c54f9397ff82cb15bdd05886af07a74607482a66771b1479e81715c2bd21d2a7/node_modules/js-yaml/lib/js-yaml/type/float.js"(exports2, module2) {
    "use strict";
    var common4 = 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(d3) {
          value += d3 * 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 (common4.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 || common4.isNegativeZero(object));
    }
    module2.exports = new Type2("tag:yaml.org,2002:float", {
      kind: "scalar",
      resolve: resolveYamlFloat2,
      construct: constructYamlFloat2,
      predicate: isFloat2,
      represent: representYamlFloat2,
      defaultStyle: "lowercase"
    });
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/js-yaml/3.15.0/c54f9397ff82cb15bdd05886af07a74607482a66771b1479e81715c2bd21d2a7/node_modules/js-yaml/lib/js-yaml/schema/json.js
var require_json = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/js-yaml/3.15.0/c54f9397ff82cb15bdd05886af07a74607482a66771b1479e81715c2bd21d2a7/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()
      ]
    });
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/js-yaml/3.15.0/c54f9397ff82cb15bdd05886af07a74607482a66771b1479e81715c2bd21d2a7/node_modules/js-yaml/lib/js-yaml/schema/core.js
var require_core = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/js-yaml/3.15.0/c54f9397ff82cb15bdd05886af07a74607482a66771b1479e81715c2bd21d2a7/node_modules/js-yaml/lib/js-yaml/schema/core.js"(exports2, module2) {
    "use strict";
    var Schema2 = require_schema();
    module2.exports = new Schema2({
      include: [
        require_json()
      ]
    });
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/js-yaml/3.15.0/c54f9397ff82cb15bdd05886af07a74607482a66771b1479e81715c2bd21d2a7/node_modules/js-yaml/lib/js-yaml/type/timestamp.js
var require_timestamp = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/js-yaml/3.15.0/c54f9397ff82cb15bdd05886af07a74607482a66771b1479e81715c2bd21d2a7/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
    });
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/js-yaml/3.15.0/c54f9397ff82cb15bdd05886af07a74607482a66771b1479e81715c2bd21d2a7/node_modules/js-yaml/lib/js-yaml/type/merge.js
var require_merge = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/js-yaml/3.15.0/c54f9397ff82cb15bdd05886af07a74607482a66771b1479e81715c2bd21d2a7/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
    });
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/js-yaml/3.15.0/c54f9397ff82cb15bdd05886af07a74607482a66771b1479e81715c2bd21d2a7/node_modules/js-yaml/lib/js-yaml/type/binary.js
var require_binary = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/js-yaml/3.15.0/c54f9397ff82cb15bdd05886af07a74607482a66771b1479e81715c2bd21d2a7/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, max4 = data.length, map26 = BASE64_MAP2;
      for (idx = 0; idx < max4; 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, ""), max4 = input.length, map26 = BASE64_MAP2, bits2 = 0, result2 = [];
      for (idx = 0; idx < max4; idx++) {
        if (idx % 4 === 0 && idx) {
          result2.push(bits2 >> 16 & 255);
          result2.push(bits2 >> 8 & 255);
          result2.push(bits2 & 255);
        }
        bits2 = bits2 << 6 | map26.indexOf(input.charAt(idx));
      }
      tailbits = max4 % 4 * 6;
      if (tailbits === 0) {
        result2.push(bits2 >> 16 & 255);
        result2.push(bits2 >> 8 & 255);
        result2.push(bits2 & 255);
      } else if (tailbits === 18) {
        result2.push(bits2 >> 10 & 255);
        result2.push(bits2 >> 2 & 255);
      } else if (tailbits === 12) {
        result2.push(bits2 >> 4 & 255);
      }
      if (NodeBuffer) {
        return NodeBuffer.from ? NodeBuffer.from(result2) : new NodeBuffer(result2);
      }
      return result2;
    }
    function representYamlBinary2(object) {
      var result2 = "", bits2 = 0, idx, tail2, max4 = object.length, map26 = BASE64_MAP2;
      for (idx = 0; idx < max4; idx++) {
        if (idx % 3 === 0 && idx) {
          result2 += map26[bits2 >> 18 & 63];
          result2 += map26[bits2 >> 12 & 63];
          result2 += map26[bits2 >> 6 & 63];
          result2 += map26[bits2 & 63];
        }
        bits2 = (bits2 << 8) + object[idx];
      }
      tail2 = max4 % 3;
      if (tail2 === 0) {
        result2 += map26[bits2 >> 18 & 63];
        result2 += map26[bits2 >> 12 & 63];
        result2 += map26[bits2 >> 6 & 63];
        result2 += map26[bits2 & 63];
      } else if (tail2 === 2) {
        result2 += map26[bits2 >> 10 & 63];
        result2 += map26[bits2 >> 4 & 63];
        result2 += map26[bits2 << 2 & 63];
        result2 += map26[64];
      } else if (tail2 === 1) {
        result2 += map26[bits2 >> 2 & 63];
        result2 += map26[bits2 << 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
    });
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/js-yaml/3.15.0/c54f9397ff82cb15bdd05886af07a74607482a66771b1479e81715c2bd21d2a7/node_modules/js-yaml/lib/js-yaml/type/omap.js
var require_omap = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/js-yaml/3.15.0/c54f9397ff82cb15bdd05886af07a74607482a66771b1479e81715c2bd21d2a7/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 = [], index2, length, pair, pairKey, pairHasKey, object = data;
      for (index2 = 0, length = object.length; index2 < length; index2 += 1) {
        pair = object[index2];
        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
    });
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/js-yaml/3.15.0/c54f9397ff82cb15bdd05886af07a74607482a66771b1479e81715c2bd21d2a7/node_modules/js-yaml/lib/js-yaml/type/pairs.js
var require_pairs = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/js-yaml/3.15.0/c54f9397ff82cb15bdd05886af07a74607482a66771b1479e81715c2bd21d2a7/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 index2, length, pair, keys4, result2, object = data;
      result2 = new Array(object.length);
      for (index2 = 0, length = object.length; index2 < length; index2 += 1) {
        pair = object[index2];
        if (_toString3.call(pair) !== "[object Object]") return false;
        keys4 = Object.keys(pair);
        if (keys4.length !== 1) return false;
        result2[index2] = [keys4[0], pair[keys4[0]]];
      }
      return true;
    }
    function constructYamlPairs2(data) {
      if (data === null) return [];
      var index2, length, pair, keys4, result2, object = data;
      result2 = new Array(object.length);
      for (index2 = 0, length = object.length; index2 < length; index2 += 1) {
        pair = object[index2];
        keys4 = Object.keys(pair);
        result2[index2] = [keys4[0], pair[keys4[0]]];
      }
      return result2;
    }
    module2.exports = new Type2("tag:yaml.org,2002:pairs", {
      kind: "sequence",
      resolve: resolveYamlPairs2,
      construct: constructYamlPairs2
    });
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/js-yaml/3.15.0/c54f9397ff82cb15bdd05886af07a74607482a66771b1479e81715c2bd21d2a7/node_modules/js-yaml/lib/js-yaml/type/set.js
var require_set = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/js-yaml/3.15.0/c54f9397ff82cb15bdd05886af07a74607482a66771b1479e81715c2bd21d2a7/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
    });
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/js-yaml/3.15.0/c54f9397ff82cb15bdd05886af07a74607482a66771b1479e81715c2bd21d2a7/node_modules/js-yaml/lib/js-yaml/schema/default_safe.js
var require_default_safe = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/js-yaml/3.15.0/c54f9397ff82cb15bdd05886af07a74607482a66771b1479e81715c2bd21d2a7/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_core()
      ],
      implicit: [
        require_timestamp(),
        require_merge()
      ],
      explicit: [
        require_binary(),
        require_omap(),
        require_pairs(),
        require_set()
      ]
    });
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/js-yaml/3.15.0/c54f9397ff82cb15bdd05886af07a74607482a66771b1479e81715c2bd21d2a7/node_modules/js-yaml/lib/js-yaml/type/js/undefined.js
var require_undefined = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/js-yaml/3.15.0/c54f9397ff82cb15bdd05886af07a74607482a66771b1479e81715c2bd21d2a7/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
    });
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/js-yaml/3.15.0/c54f9397ff82cb15bdd05886af07a74607482a66771b1479e81715c2bd21d2a7/node_modules/js-yaml/lib/js-yaml/type/js/regexp.js
var require_regexp = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/js-yaml/3.15.0/c54f9397ff82cb15bdd05886af07a74607482a66771b1479e81715c2bd21d2a7/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
    });
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/js-yaml/3.15.0/c54f9397ff82cb15bdd05886af07a74607482a66771b1479e81715c2bd21d2a7/node_modules/js-yaml/lib/js-yaml/type/js/function.js
var require_function = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/js-yaml/3.15.0/c54f9397ff82cb15bdd05886af07a74607482a66771b1479e81715c2bd21d2a7/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 (err2) {
        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
    });
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/js-yaml/3.15.0/c54f9397ff82cb15bdd05886af07a74607482a66771b1479e81715c2bd21d2a7/node_modules/js-yaml/lib/js-yaml/schema/default_full.js
var require_default_full = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/js-yaml/3.15.0/c54f9397ff82cb15bdd05886af07a74607482a66771b1479e81715c2bd21d2a7/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()
      ]
    });
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/js-yaml/3.15.0/c54f9397ff82cb15bdd05886af07a74607482a66771b1479e81715c2bd21d2a7/node_modules/js-yaml/lib/js-yaml/loader.js
var require_loader = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/js-yaml/3.15.0/c54f9397ff82cb15bdd05886af07a74607482a66771b1479e81715c2bd21d2a7/node_modules/js-yaml/lib/js-yaml/loader.js"(exports2, module2) {
    "use strict";
    var common4 = 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 lc2;
      if (48 <= c3 && c3 <= 57) {
        return c3 - 48;
      }
      lc2 = c3 | 32;
      if (97 <= lc2 && lc2 <= 102) {
        return lc2 - 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 (i4 = 0; i4 < 256; i4++) {
      simpleEscapeCheck2[i4] = simpleEscapeSequence2(i4) ? 1 : 0;
      simpleEscapeMap2[i4] = simpleEscapeSequence2(i4);
    }
    var i4;
    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.maxTotalMergeKeys = typeof options["maxTotalMergeKeys"] === "number" ? options["maxTotalMergeKeys"] : 1e4;
      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.totalMergeKeys = 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, index2, quantity;
      if (!common4.isObject(source)) {
        throwError2(state, "cannot merge mappings; the provided source object is unacceptable");
      }
      sourceKeys = Object.keys(source);
      for (index2 = 0, quantity = sourceKeys.length; index2 < quantity; index2 += 1) {
        key = sourceKeys[index2];
        if (state.maxTotalMergeKeys !== -1 && ++state.totalMergeKeys > state.maxTotalMergeKeys) {
          throwError2(state, "merge keys exceeded maxTotalMergeKeys (" + state.maxTotalMergeKeys + ")");
        }
        if (!_hasOwnProperty2.call(destination, key)) {
          setProperty2(destination, key, source[key]);
          overridableKeys[key] = true;
        }
      }
    }
    function storeMappingPair2(state, _result, overridableKeys, keyTag, keyNode, valueNode, startLine, startPos) {
      var index2, quantity;
      if (Array.isArray(keyNode)) {
        keyNode = Array.prototype.slice.call(keyNode);
        for (index2 = 0, quantity = keyNode.length; index2 < quantity; index2 += 1) {
          if (Array.isArray(keyNode[index2])) {
            throwError2(state, "nested arrays are not supported inside keys");
          }
          if (typeof keyNode === "object" && _class2(keyNode[index2]) === "[object Object]") {
            keyNode[index2] = "[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 (index2 = 0, quantity = valueNode.length; index2 < quantity; index2 += 1) {
            mergeMappings2(state, _result, valueNode[index2], 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 += common4.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 += common4.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 += common4.repeat("\n", didReadContent ? 1 + emptyLines : emptyLines);
          } else if (atMoreIndented) {
            atMoreIndented = false;
            state.result += common4.repeat("\n", emptyLines + 1);
          } else if (emptyLines === 0) {
            if (didReadContent) {
              state.result += " ";
            }
          } else {
            state.result += common4.repeat("\n", emptyLines);
          }
        } else {
          state.result += common4.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 index2 = 0, length = documents.length; index2 < length; index2 += 1) {
        iterator(documents[index2]);
      }
    }
    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, common4.extend({ schema: DEFAULT_SAFE_SCHEMA }, options));
    }
    function safeLoad2(input, options) {
      return load3(input, common4.extend({ schema: DEFAULT_SAFE_SCHEMA }, options));
    }
    module2.exports.loadAll = loadAll2;
    module2.exports.load = load3;
    module2.exports.safeLoadAll = safeLoadAll2;
    module2.exports.safeLoad = safeLoad2;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/js-yaml/3.15.0/c54f9397ff82cb15bdd05886af07a74607482a66771b1479e81715c2bd21d2a7/node_modules/js-yaml/lib/js-yaml/dumper.js
var require_dumper = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/js-yaml/3.15.0/c54f9397ff82cb15bdd05886af07a74607482a66771b1479e81715c2bd21d2a7/node_modules/js-yaml/lib/js-yaml/dumper.js"(exports2, module2) {
    "use strict";
    var common4 = 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, index2, length, tag, style, type4;
      if (map26 === null) return {};
      result2 = {};
      keys4 = Object.keys(map26);
      for (index2 = 0, length = keys4.length; index2 < length; index2 += 1) {
        tag = keys4[index2];
        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 + common4.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 = common4.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 = common4.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" + common4.repeat(" ", state.indent * level);
    }
    function testImplicitResolving2(state, str2) {
      var index2, length, type4;
      for (index2 = 0, length = state.implicitTypes.length; index2 < length; index2 += 1) {
        type4 = state.implicitTypes[index2];
        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 i4;
      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 (i4 = 0; i4 < string.length; i4++) {
          char = string.charCodeAt(i4);
          if (!isPrintable2(char)) {
            return STYLE_DOUBLE2;
          }
          prev_char = i4 > 0 ? string.charCodeAt(i4 - 1) : null;
          plain = plain && isPlainSafe2(char, prev_char);
        }
      } else {
        for (i4 = 0; i4 < string.length; i4++) {
          char = string.charCodeAt(i4);
          if (char === CHAR_LINE_FEED2) {
            hasLineBreak = true;
            if (shouldTrackWidth) {
              hasFoldableLine = hasFoldableLine || // Foldable line = too long, and not more-indented.
              i4 - previousLineBreak - 1 > lineWidth && string[previousLineBreak + 1] !== " ";
              previousLineBreak = i4;
            }
          } else if (!isPrintable2(char)) {
            return STYLE_DOUBLE2;
          }
          prev_char = i4 > 0 ? string.charCodeAt(i4 - 1) : null;
          plain = plain && isPlainSafe2(char, prev_char);
        }
        hasFoldableLine = hasFoldableLine || shouldTrackWidth && (i4 - 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 i4 = 0; i4 < string.length; i4++) {
        char = string.charCodeAt(i4);
        if (char >= 55296 && char <= 56319) {
          nextChar = string.charCodeAt(i4 + 1);
          if (nextChar >= 56320 && nextChar <= 57343) {
            result2 += encodeHex2((char - 55296) * 1024 + nextChar - 56320 + 65536);
            i4++;
            continue;
          }
        }
        escapeSeq = ESCAPE_SEQUENCES2[char];
        result2 += !escapeSeq && isPrintable2(char) ? string[i4] : escapeSeq || encodeHex2(char);
      }
      return result2;
    }
    function writeFlowSequence2(state, level, object) {
      var _result = "", _tag = state.tag, index2, length;
      for (index2 = 0, length = object.length; index2 < length; index2 += 1) {
        if (writeNode2(state, level, object[index2], false, false)) {
          if (index2 !== 0) _result += "," + (!state.condenseFlow ? " " : "");
          _result += state.dump;
        }
      }
      state.tag = _tag;
      state.dump = "[" + _result + "]";
    }
    function writeBlockSequence2(state, level, object, compact) {
      var _result = "", _tag = state.tag, index2, length;
      for (index2 = 0, length = object.length; index2 < length; index2 += 1) {
        if (writeNode2(state, level + 1, object[index2], true, true)) {
          if (!compact || index2 !== 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), index2, length, objectKey, objectValue, pairBuffer;
      for (index2 = 0, length = objectKeyList.length; index2 < length; index2 += 1) {
        pairBuffer = "";
        if (index2 !== 0) pairBuffer += ", ";
        if (state.condenseFlow) pairBuffer += '"';
        objectKey = objectKeyList[index2];
        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), index2, 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 (index2 = 0, length = objectKeyList.length; index2 < length; index2 += 1) {
        pairBuffer = "";
        if (!compact || index2 !== 0) {
          pairBuffer += generateNextLine2(state, level);
        }
        objectKey = objectKeyList[index2];
        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, index2, length, type4, style;
      typeList = explicit ? state.explicitTypes : state.implicitTypes;
      for (index2 = 0, length = typeList.length; index2 < length; index2 += 1) {
        type4 = typeList[index2];
        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 = [], index2, length;
      inspectNode2(object, objects, duplicatesIndexes);
      for (index2 = 0, length = duplicatesIndexes.length; index2 < length; index2 += 1) {
        state.duplicates.push(objects[duplicatesIndexes[index2]]);
      }
      state.usedDuplicates = new Array(length);
    }
    function inspectNode2(object, objects, duplicatesIndexes) {
      var objectKeyList, index2, length;
      if (object !== null && typeof object === "object") {
        index2 = objects.indexOf(object);
        if (index2 !== -1) {
          if (duplicatesIndexes.indexOf(index2) === -1) {
            duplicatesIndexes.push(index2);
          }
        } else {
          objects.push(object);
          if (Array.isArray(object)) {
            for (index2 = 0, length = object.length; index2 < length; index2 += 1) {
              inspectNode2(object[index2], objects, duplicatesIndexes);
            }
          } else {
            objectKeyList = Object.keys(object);
            for (index2 = 0, length = objectKeyList.length; index2 < length; index2 += 1) {
              inspectNode2(object[objectKeyList[index2]], 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, common4.extend({ schema: DEFAULT_SAFE_SCHEMA }, options));
    }
    module2.exports.dump = dump2;
    module2.exports.safeDump = safeDump2;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/js-yaml/3.15.0/c54f9397ff82cb15bdd05886af07a74607482a66771b1479e81715c2bd21d2a7/node_modules/js-yaml/lib/js-yaml.js
var require_js_yaml = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/js-yaml/3.15.0/c54f9397ff82cb15bdd05886af07a74607482a66771b1479e81715c2bd21d2a7/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_json();
    module2.exports.CORE_SCHEMA = require_core();
    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");
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/js-yaml/3.15.0/c54f9397ff82cb15bdd05886af07a74607482a66771b1479e81715c2bd21d2a7/node_modules/js-yaml/index.js
var require_js_yaml2 = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/js-yaml/3.15.0/c54f9397ff82cb15bdd05886af07a74607482a66771b1479e81715c2bd21d2a7/node_modules/js-yaml/index.js"(exports2, module2) {
    "use strict";
    var yaml5 = require_js_yaml();
    module2.exports = yaml5;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@yarnpkg/parsers/3.0.3/8a40a6e3fc1d026e3eec58c9a9d234f5c21a191df6e66242e0507871c7724a19/node_modules/@yarnpkg/parsers/lib/grammars/syml.js
var require_syml = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@yarnpkg/parsers/3.0.3/8a40a6e3fc1d026e3eec58c9a9d234f5c21a191df6e66242e0507871c7724a19/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 = "", i4;
          for (i4 = 0; i4 < expectation.parts.length; i4++) {
            escapedParts += expectation.parts[i4] instanceof Array ? classEscape(expectation.parts[i4][0]) + "-" + classEscape(expectation.parts[i4][1]) : classEscape(expectation.parts[i4]);
          }
          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), i4, j2;
        for (i4 = 0; i4 < expected2.length; i4++) {
          descriptions[i4] = describeExpectation(expected2[i4]);
        }
        descriptions.sort();
        if (descriptions.length > 0) {
          for (i4 = 1, j2 = 1; i4 < descriptions.length; i4++) {
            if (descriptions[i4 - 1] !== descriptions[i4]) {
              descriptions[j2] = descriptions[i4];
              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
    };
  }
});

// ../../../../../setup-pnpm/store/v11/links/@yarnpkg/parsers/3.0.3/8a40a6e3fc1d026e3eec58c9a9d234f5c21a191df6e66242e0507871c7724a19/node_modules/@yarnpkg/parsers/lib/syml.js
var require_syml2 = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@yarnpkg/parsers/3.0.3/8a40a6e3fc1d026e3eec58c9a9d234f5c21a191df6e66242e0507871c7724a19/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 = parseSyml;
    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, index2) => {
          const value2 = data[key];
          const stringifiedKey = stringifyString(key);
          const stringifiedValue = stringifyValue(value2, indentLevel + 1, true);
          const recordIndentation = index2 > 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 parseSyml(source) {
      return parseViaJsYaml(source);
    }
  }
});

// ../../../../../setup-pnpm/store/v11/links/@yarnpkg/parsers/3.0.3/8a40a6e3fc1d026e3eec58c9a9d234f5c21a191df6e66242e0507871c7724a19/node_modules/@yarnpkg/parsers/lib/index.js
var require_lib3 = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@yarnpkg/parsers/3.0.3/8a40a6e3fc1d026e3eec58c9a9d234f5c21a191df6e66242e0507871c7724a19/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;
    } });
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/color-name/1.1.4/db1acd33dd83fced9587bc0d94d0a4a5899ce138b7a3312624091f84f811efb4/node_modules/color-name/index.js
var require_color_name = __commonJS({
  "../../../../../setup-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]
    };
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/color-convert/2.0.1/4f6772797e186f77129d8a7c1c86b27315f77c7c395b04cbb5e203e58897407b/node_modules/color-convert/conversions.js
var require_conversions = __commonJS({
  "../../../../../setup-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 max4 = Math.max(r, g, b);
      const delta = max4 - min;
      let h2;
      let s;
      if (max4 === min) {
        h2 = 0;
      } else if (r === max4) {
        h2 = (g - b) / delta;
      } else if (g === max4) {
        h2 = 2 + (b - r) / delta;
      } else if (b === max4) {
        h2 = 4 + (r - g) / delta;
      }
      h2 = Math.min(h2 * 60, 360);
      if (h2 < 0) {
        h2 += 360;
      }
      const l = (min + max4) / 2;
      if (max4 === min) {
        s = 0;
      } else if (l <= 0.5) {
        s = delta / (max4 + min);
      } else {
        s = delta / (2 - max4 - 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 diff2 = v - Math.min(r, g, b);
      const diffc = function(c3) {
        return (v - c3) / 6 / diff2 + 1 / 2;
      };
      if (diff2 === 0) {
        h2 = 0;
        s = 0;
      } else {
        s = diff2 / 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(x3, y) {
      return (x3[0] - y[0]) ** 2 + (x3[1] - y[1]) ** 2 + (x3[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 x3 = 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 [x3 * 100, y * 100, z * 100];
    };
    convert.rgb.lab = function(rgb) {
      const xyz = convert.rgb.xyz(rgb);
      let x3 = xyz[0];
      let y = xyz[1];
      let z = xyz[2];
      x3 /= 95.047;
      y /= 100;
      z /= 108.883;
      x3 = x3 > 8856e-6 ? x3 ** (1 / 3) : 7.787 * x3 + 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 * (x3 - 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 i4 = 0; i4 < 3; i4++) {
        t3 = h2 + 1 / 3 * -(i4 - 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[i4] = 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 i4 = Math.floor(6 * h2);
      const v = 1 - bl;
      f = 6 * h2 - i4;
      if ((i4 & 1) !== 0) {
        f = 1 - f;
      }
      const n2 = wh + f * (v - wh);
      let r;
      let g;
      let b;
      switch (i4) {
        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 x3 = xyz[0] / 100;
      const y = xyz[1] / 100;
      const z = xyz[2] / 100;
      let r;
      let g;
      let b;
      r = x3 * 3.2406 + y * -1.5372 + z * -0.4986;
      g = x3 * -0.9689 + y * 1.8758 + z * 0.0415;
      b = x3 * 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 x3 = xyz[0];
      let y = xyz[1];
      let z = xyz[2];
      x3 /= 95.047;
      y /= 100;
      z /= 108.883;
      x3 = x3 > 8856e-6 ? x3 ** (1 / 3) : 7.787 * x3 + 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 * (x3 - 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 x3;
      let y;
      let z;
      y = (l + 16) / 116;
      x3 = a2 / 500 + y;
      z = y - b / 200;
      const y2 = y ** 3;
      const x22 = x3 ** 3;
      const z2 = z ** 3;
      y = y2 > 8856e-6 ? y2 : (y - 16 / 116) / 7.787;
      x3 = x22 > 8856e-6 ? x22 : (x3 - 16 / 116) / 7.787;
      z = z2 > 8856e-6 ? z2 : (z - 16 / 116) / 7.787;
      x3 *= 95.047;
      y *= 100;
      z *= 108.883;
      return [x3, 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 max4 = Math.max(Math.max(r, g), b);
      const min = Math.min(Math.min(r, g), b);
      const chroma = max4 - min;
      let grayscale;
      let hue;
      if (chroma < 1) {
        grayscale = min / (1 - chroma);
      } else {
        grayscale = 0;
      }
      if (chroma <= 0) {
        hue = 0;
      } else if (max4 === r) {
        hue = (g - b) / chroma % 6;
      } else if (max4 === 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];
    };
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/color-convert/2.0.1/4f6772797e186f77129d8a7c1c86b27315f77c7c395b04cbb5e203e58897407b/node_modules/color-convert/route.js
var require_route = __commonJS({
  "../../../../../setup-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, i4 = 0; i4 < len; i4++) {
        graph[models[i4]] = {
          // 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, i4 = 0; i4 < len; i4++) {
          const adjacent = adjacents[i4];
          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 path240 = [graph[toModel].parent, toModel];
      let fn = conversions[graph[toModel].parent][toModel];
      let cur = graph[toModel].parent;
      while (graph[cur].parent) {
        path240.unshift(graph[cur].parent);
        fn = link2(conversions[graph[cur].parent][cur], fn);
        cur = graph[cur].parent;
      }
      fn.conversion = path240;
      return fn;
    }
    module2.exports = function(fromModel) {
      const graph = deriveBFS(fromModel);
      const conversion = {};
      const models = Object.keys(graph);
      for (let len = models.length, i4 = 0; i4 < len; i4++) {
        const toModel = models[i4];
        const node = graph[toModel];
        if (node.parent === null) {
          continue;
        }
        conversion[toModel] = wrapConversion(toModel, graph);
      }
      return conversion;
    };
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/color-convert/2.0.1/4f6772797e186f77129d8a7c1c86b27315f77c7c395b04cbb5e203e58897407b/node_modules/color-convert/index.js
var require_color_convert = __commonJS({
  "../../../../../setup-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, i4 = 0; i4 < len; i4++) {
            result2[i4] = Math.round(result2[i4]);
          }
        }
        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;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/ansi-styles/4.3.0/19cbb9b0298c7c316d1ea9b4f4af113ca1cfb7bece33e1eb982d38ef24b719ab/node_modules/ansi-styles/index.js
var require_ansi_styles = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/ansi-styles/4.3.0/19cbb9b0298c7c316d1ea9b4f4af113ca1cfb7bece33e1eb982d38ef24b719ab/node_modules/ansi-styles/index.js"(exports2, module2) {
    "use strict";
    var wrapAnsi164 = (fn, offset) => (...args) => {
      const code = fn(...args);
      return `\x1B[${code + offset}m`;
    };
    var wrapAnsi2564 = (fn, offset) => (...args) => {
      const code = fn(...args);
      return `\x1B[${38 + offset};5;${code}m`;
    };
    var wrapAnsi16m4 = (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, get2) => {
      Object.defineProperty(object, property, {
        get: () => {
          const value = get2();
          Object.defineProperty(object, property, {
            value,
            enumerable: true,
            configurable: true
          });
          return value;
        },
        enumerable: true,
        configurable: true
      });
    };
    var colorConvert;
    var makeDynamicStyles = (wrap2, targetSpace, identity5, isBackground) => {
      if (colorConvert === void 0) {
        colorConvert = require_color_convert();
      }
      const offset = isBackground ? 10 : 0;
      const styles6 = {};
      for (const [sourceSpace, suite] of Object.entries(colorConvert)) {
        const name = sourceSpace === "ansi16" ? "ansi" : sourceSpace;
        if (sourceSpace === targetSpace) {
          styles6[name] = wrap2(identity5, offset);
        } else if (typeof suite === "object") {
          styles6[name] = wrap2(suite[targetSpace], offset);
        }
      }
      return styles6;
    };
    function assembleStyles4() {
      const codes = /* @__PURE__ */ new Map();
      const styles6 = {
        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]
        }
      };
      styles6.color.gray = styles6.color.blackBright;
      styles6.bgColor.bgGray = styles6.bgColor.bgBlackBright;
      styles6.color.grey = styles6.color.blackBright;
      styles6.bgColor.bgGrey = styles6.bgColor.bgBlackBright;
      for (const [groupName, group] of Object.entries(styles6)) {
        for (const [styleName, style] of Object.entries(group)) {
          styles6[styleName] = {
            open: `\x1B[${style[0]}m`,
            close: `\x1B[${style[1]}m`
          };
          group[styleName] = styles6[styleName];
          codes.set(style[0], style[1]);
        }
        Object.defineProperty(styles6, groupName, {
          value: group,
          enumerable: false
        });
      }
      Object.defineProperty(styles6, "codes", {
        value: codes,
        enumerable: false
      });
      styles6.color.close = "\x1B[39m";
      styles6.bgColor.close = "\x1B[49m";
      setLazyProperty(styles6.color, "ansi", () => makeDynamicStyles(wrapAnsi164, "ansi16", ansi2ansi, false));
      setLazyProperty(styles6.color, "ansi256", () => makeDynamicStyles(wrapAnsi2564, "ansi256", ansi2ansi, false));
      setLazyProperty(styles6.color, "ansi16m", () => makeDynamicStyles(wrapAnsi16m4, "rgb", rgb2rgb, false));
      setLazyProperty(styles6.bgColor, "ansi", () => makeDynamicStyles(wrapAnsi164, "ansi16", ansi2ansi, true));
      setLazyProperty(styles6.bgColor, "ansi256", () => makeDynamicStyles(wrapAnsi2564, "ansi256", ansi2ansi, true));
      setLazyProperty(styles6.bgColor, "ansi16m", () => makeDynamicStyles(wrapAnsi16m4, "rgb", rgb2rgb, true));
      return styles6;
    }
    Object.defineProperty(module2, "exports", {
      enumerable: true,
      get: assembleStyles4
    });
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/has-flag/4.0.0/1fad706e903703154c297a2951628dfd40fbb2e08c338b053c5c129fe3b69d3f/node_modules/has-flag/index.js
var require_has_flag = __commonJS({
  "../../../../../setup-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);
    };
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/supports-color/7.2.0/a7e73cdb8490938e8580fddf322eefaa0db2596179188982a430aec866a2c894/node_modules/supports-color/index.js
var require_supports_color = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/supports-color/7.2.0/a7e73cdb8490938e8580fddf322eefaa0db2596179188982a430aec866a2c894/node_modules/supports-color/index.js"(exports2, module2) {
    "use strict";
    var os20 = __require("os");
    var tty6 = __require("tty");
    var hasFlag5 = require_has_flag();
    var { env: env4 } = process;
    var forceColor;
    if (hasFlag5("no-color") || hasFlag5("no-colors") || hasFlag5("color=false") || hasFlag5("color=never")) {
      forceColor = 0;
    } else if (hasFlag5("color") || hasFlag5("colors") || hasFlag5("color=true") || hasFlag5("color=always")) {
      forceColor = 1;
    }
    if ("FORCE_COLOR" in env4) {
      if (env4.FORCE_COLOR === "true") {
        forceColor = 1;
      } else if (env4.FORCE_COLOR === "false") {
        forceColor = 0;
      } else {
        forceColor = env4.FORCE_COLOR.length === 0 ? 1 : Math.min(parseInt(env4.FORCE_COLOR, 10), 3);
      }
    }
    function translateLevel4(level) {
      if (level === 0) {
        return false;
      }
      return {
        level,
        hasBasic: true,
        has256: level >= 2,
        has16m: level >= 3
      };
    }
    function supportsColor4(haveStream, streamIsTTY) {
      if (forceColor === 0) {
        return 0;
      }
      if (hasFlag5("color=16m") || hasFlag5("color=full") || hasFlag5("color=truecolor")) {
        return 3;
      }
      if (hasFlag5("color=256")) {
        return 2;
      }
      if (haveStream && !streamIsTTY && forceColor === void 0) {
        return 0;
      }
      const min = forceColor || 0;
      if (env4.TERM === "dumb") {
        return min;
      }
      if (process.platform === "win32") {
        const osRelease = os20.release().split(".");
        if (Number(osRelease[0]) >= 10 && Number(osRelease[2]) >= 10586) {
          return Number(osRelease[2]) >= 14931 ? 3 : 2;
        }
        return 1;
      }
      if ("CI" in env4) {
        if (["TRAVIS", "CIRCLECI", "APPVEYOR", "GITLAB_CI", "GITHUB_ACTIONS", "BUILDKITE"].some((sign) => sign in env4) || env4.CI_NAME === "codeship") {
          return 1;
        }
        return min;
      }
      if ("TEAMCITY_VERSION" in env4) {
        return /^(9\.(0*[1-9]\d*)\.|\d{2,}\.)/.test(env4.TEAMCITY_VERSION) ? 1 : 0;
      }
      if (env4.COLORTERM === "truecolor") {
        return 3;
      }
      if ("TERM_PROGRAM" in env4) {
        const version2 = parseInt((env4.TERM_PROGRAM_VERSION || "").split(".")[0], 10);
        switch (env4.TERM_PROGRAM) {
          case "iTerm.app":
            return version2 >= 3 ? 3 : 2;
          case "Apple_Terminal":
            return 2;
        }
      }
      if (/-256(color)?$/i.test(env4.TERM)) {
        return 2;
      }
      if (/^screen|^xterm|^vt100|^vt220|^rxvt|color|ansi|cygwin|linux/i.test(env4.TERM)) {
        return 1;
      }
      if ("COLORTERM" in env4) {
        return 1;
      }
      return min;
    }
    function getSupportLevel(stream2) {
      const level = supportsColor4(stream2, stream2 && stream2.isTTY);
      return translateLevel4(level);
    }
    module2.exports = {
      supportsColor: getSupportLevel,
      stdout: translateLevel4(supportsColor4(true, tty6.isatty(1))),
      stderr: translateLevel4(supportsColor4(true, tty6.isatty(2)))
    };
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/chalk/3.0.0/615025f2c08a39e297798d948e1a848bb92c6e5a90143a697b334ec3f26759ab/node_modules/chalk/source/util.js
var require_util = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/chalk/3.0.0/615025f2c08a39e297798d948e1a848bb92c6e5a90143a697b334ec3f26759ab/node_modules/chalk/source/util.js"(exports2, module2) {
    "use strict";
    var stringReplaceAll3 = (string, substring, replacer2) => {
      let index2 = string.indexOf(substring);
      if (index2 === -1) {
        return string;
      }
      const substringLength = substring.length;
      let endIndex = 0;
      let returnValue = "";
      do {
        returnValue += string.substr(endIndex, index2 - endIndex) + substring + replacer2;
        endIndex = index2 + substringLength;
        index2 = string.indexOf(substring, endIndex);
      } while (index2 !== -1);
      returnValue += string.substr(endIndex);
      return returnValue;
    };
    var stringEncaseCRLFWithFirstIndex3 = (string, prefix, postfix, index2) => {
      let endIndex = 0;
      let returnValue = "";
      do {
        const gotCR = string[index2 - 1] === "\r";
        returnValue += string.substr(endIndex, (gotCR ? index2 - 1 : index2) - endIndex) + prefix + (gotCR ? "\r\n" : "\n") + postfix;
        endIndex = index2 + 1;
        index2 = string.indexOf("\n", endIndex);
      } while (index2 !== -1);
      returnValue += string.substr(endIndex);
      return returnValue;
    };
    module2.exports = {
      stringReplaceAll: stringReplaceAll3,
      stringEncaseCRLFWithFirstIndex: stringEncaseCRLFWithFirstIndex3
    };
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/chalk/3.0.0/615025f2c08a39e297798d948e1a848bb92c6e5a90143a697b334ec3f26759ab/node_modules/chalk/source/templates.js
var require_templates = __commonJS({
  "../../../../../setup-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 u2 = c3[0] === "u";
      const bracket = c3[1] === "{";
      if (u2 && !bracket && c3.length === 5 || c3[0] === "x" && c3.length === 3) {
        return String.fromCharCode(parseInt(c3.slice(1), 16));
      }
      if (u2 && 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(chalk3, styles6) {
      const enabled = {};
      for (const layer of styles6) {
        for (const style of layer.styles) {
          enabled[style[0]] = layer.inverse ? null : style.slice(1);
        }
      }
      let current = chalk3;
      for (const [styleName, styles7] of Object.entries(enabled)) {
        if (!Array.isArray(styles7)) {
          continue;
        }
        if (!(styleName in current)) {
          throw new Error(`Unknown Chalk style: ${styleName}`);
        }
        current = styles7.length > 0 ? current[styleName](...styles7) : current[styleName];
      }
      return current;
    }
    module2.exports = (chalk3, temporary) => {
      const styles6 = [];
      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(styles6.length === 0 ? string : buildStyle(chalk3, styles6)(string));
          styles6.push({ inverse: inverse2, styles: parseStyle(style) });
        } else if (close) {
          if (styles6.length === 0) {
            throw new Error("Found extraneous } in Chalk template literal");
          }
          chunks.push(buildStyle(chalk3, styles6)(chunk.join("")));
          chunk = [];
          styles6.pop();
        } else {
          chunk.push(character);
        }
      });
      chunks.push(chunk.join(""));
      if (styles6.length > 0) {
        const errMsg = `Chalk template literal is missing ${styles6.length} closing bracket${styles6.length === 1 ? "" : "s"} (\`}\`)`;
        throw new Error(errMsg);
      }
      return chunks.join("");
    };
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/chalk/3.0.0/615025f2c08a39e297798d948e1a848bb92c6e5a90143a697b334ec3f26759ab/node_modules/chalk/source/index.js
var require_source = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/chalk/3.0.0/615025f2c08a39e297798d948e1a848bb92c6e5a90143a697b334ec3f26759ab/node_modules/chalk/source/index.js"(exports2, module2) {
    "use strict";
    var ansiStyles4 = require_ansi_styles();
    var { stdout: stdoutColor3, stderr: stderrColor3 } = require_supports_color();
    var {
      stringReplaceAll: stringReplaceAll3,
      stringEncaseCRLFWithFirstIndex: stringEncaseCRLFWithFirstIndex3
    } = require_util();
    var levelMapping2 = [
      "ansi",
      "ansi",
      "ansi256",
      "ansi16m"
    ];
    var styles6 = /* @__PURE__ */ Object.create(null);
    var applyOptions3 = (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 = stdoutColor3 ? stdoutColor3.level : 0;
      object.level = options.level === void 0 ? colorLevel : options.level;
    };
    var ChalkClass = class {
      constructor(options) {
        return chalkFactory3(options);
      }
    };
    var chalkFactory3 = (options) => {
      const chalk4 = {};
      applyOptions3(chalk4, options);
      chalk4.template = (...arguments_) => chalkTag(chalk4.template, ...arguments_);
      Object.setPrototypeOf(chalk4, Chalk.prototype);
      Object.setPrototypeOf(chalk4.template, chalk4);
      chalk4.template.constructor = () => {
        throw new Error("`chalk.constructor()` is deprecated. Use `new chalk.Instance()` instead.");
      };
      chalk4.template.Instance = ChalkClass;
      return chalk4.template;
    };
    function Chalk(options) {
      return chalkFactory3(options);
    }
    for (const [styleName, style] of Object.entries(ansiStyles4)) {
      styles6[styleName] = {
        get() {
          const builder = createBuilder3(this, createStyler3(style.open, style.close, this._styler), this._isEmpty);
          Object.defineProperty(this, styleName, { value: builder });
          return builder;
        }
      };
    }
    styles6.visible = {
      get() {
        const builder = createBuilder3(this, this._styler, true);
        Object.defineProperty(this, "visible", { value: builder });
        return builder;
      }
    };
    var usedModels3 = ["rgb", "hex", "keyword", "hsl", "hsv", "hwb", "ansi", "ansi256"];
    for (const model of usedModels3) {
      styles6[model] = {
        get() {
          const { level } = this;
          return function(...arguments_) {
            const styler = createStyler3(ansiStyles4.color[levelMapping2[level]][model](...arguments_), ansiStyles4.color.close, this._styler);
            return createBuilder3(this, styler, this._isEmpty);
          };
        }
      };
    }
    for (const model of usedModels3) {
      const bgModel = "bg" + model[0].toUpperCase() + model.slice(1);
      styles6[bgModel] = {
        get() {
          const { level } = this;
          return function(...arguments_) {
            const styler = createStyler3(ansiStyles4.bgColor[levelMapping2[level]][model](...arguments_), ansiStyles4.bgColor.close, this._styler);
            return createBuilder3(this, styler, this._isEmpty);
          };
        }
      };
    }
    var proto3 = Object.defineProperties(() => {
    }, {
      ...styles6,
      level: {
        enumerable: true,
        get() {
          return this._generator.level;
        },
        set(level) {
          this._generator.level = level;
        }
      }
    });
    var createStyler3 = (open3, close, parent) => {
      let openAll;
      let closeAll;
      if (parent === void 0) {
        openAll = open3;
        closeAll = close;
      } else {
        openAll = parent.openAll + open3;
        closeAll = close + parent.closeAll;
      }
      return {
        open: open3,
        close,
        openAll,
        closeAll,
        parent
      };
    };
    var createBuilder3 = (self2, _styler, _isEmpty) => {
      const builder = (...arguments_) => {
        return applyStyle3(builder, arguments_.length === 1 ? "" + arguments_[0] : arguments_.join(" "));
      };
      builder.__proto__ = proto3;
      builder._generator = self2;
      builder._styler = _styler;
      builder._isEmpty = _isEmpty;
      return builder;
    };
    var applyStyle3 = (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 = stringReplaceAll3(string, styler.close, styler.open);
          styler = styler.parent;
        }
      }
      const lfIndex = string.indexOf("\n");
      if (lfIndex !== -1) {
        string = stringEncaseCRLFWithFirstIndex3(string, closeAll, openAll, lfIndex);
      }
      return openAll + string + closeAll;
    };
    var template;
    var chalkTag = (chalk4, ...strings2) => {
      const [firstString] = strings2;
      if (!Array.isArray(firstString)) {
        return strings2.join(" ");
      }
      const arguments_ = strings2.slice(1);
      const parts = [firstString.raw[0]];
      for (let i4 = 1; i4 < firstString.length; i4++) {
        parts.push(
          String(arguments_[i4 - 1]).replace(/[{}\\]/g, "\\$&"),
          String(firstString.raw[i4])
        );
      }
      if (template === void 0) {
        template = require_templates();
      }
      return template(chalk4, parts.join(""));
    };
    Object.defineProperties(Chalk.prototype, styles6);
    var chalk3 = Chalk();
    chalk3.supportsColor = stdoutColor3;
    chalk3.stderr = Chalk({ level: stderrColor3 ? stderrColor3.level : 0 });
    chalk3.stderr.supportsColor = stderrColor3;
    chalk3.Level = {
      None: 0,
      Basic: 1,
      Ansi256: 2,
      TrueColor: 3,
      0: "None",
      1: "Basic",
      2: "Ansi256",
      3: "TrueColor"
    };
    module2.exports = chalk3;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/clipanion/3.2.0-rc.6/23222bdcfc643cdf493929a474d229a1041e5dceeec18bed0e3374c38e65101e/node_modules/clipanion/lib/constants.js
var require_constants3 = __commonJS({
  "../../../../../setup-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;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/clipanion/3.2.0-rc.6/23222bdcfc643cdf493929a474d229a1041e5dceeec18bed0e3374c38e65101e/node_modules/clipanion/lib/errors.js
var require_errors2 = __commonJS({
  "../../../../../setup-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 constants6 = require_constants3();
    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 }, index2) => {
            return `${`${index2}.`.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, index2) => {
          return `${`${index2}.`.padStart(4)} ${usage}`;
        }).join(`
`)}

${whileRunning(input)}`;
      }
    };
    var whileRunning = (input) => `While running ${input.filter((token) => {
      return token !== constants6.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;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/clipanion/3.2.0-rc.6/23222bdcfc643cdf493929a474d229a1041e5dceeec18bed0e3374c38e65101e/node_modules/clipanion/lib/advanced/options/utils.js
var require_utils = __commonJS({
  "../../../../../setup-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_errors2();
    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 check2 = validator(value, { errors: errors3, coercions, coercion });
      if (!check2)
        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;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/typanion/3.14.0/01b9bec83b63fffc8af013516fe5341ea9ef2155f032dc3833090560ec1a78ca/node_modules/typanion/lib/index.js
var require_lib4 = __commonJS({
  "../../../../../setup-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 _a2, _b2, _c;
      if (typeof key === `number`) {
        return `${(_a2 = state === null || state === void 0 ? void 0 : state.p) !== null && _a2 !== void 0 ? _a2 : `.`}[${key}]`;
      } else if (simpleKeyRegExp.test(key)) {
        return `${(_b2 = state === null || state === void 0 ? void 0 : state.p) !== null && _b2 !== void 0 ? _b2 : ``}.${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 _a2;
          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([(_a2 = state.p) !== null && _a2 !== void 0 ? _a2 : `.`, 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 _a2;
          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 (_b2) {
                }
                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([(_a2 = state.p) !== null && _a2 !== void 0 ? _a2 : `.`, 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 _a2;
          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 (_b2) {
            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([(_a2 = state.p) !== null && _a2 !== void 0 ? _a2 : `.`, state.coercion.bind(null, wrapper.value)]);
          return true;
        }
      });
    }
    function isDate() {
      return makeValidator({
        test: (value, state) => {
          var _a2;
          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 (_b2) {
                  }
                  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([(_a2 = state.p) !== null && _a2 !== void 0 ? _a2 : `.`, 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 _a2;
          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 valid6 = true;
          for (let t2 = 0, T2 = value.length; t2 < T2; ++t2) {
            valid6 = spec(value[t2], Object.assign(Object.assign({}, state), { p: computeKey(state, t2), coercion: makeCoercionFn(value, t2) })) && valid6;
            if (!valid6 && (state === null || state === void 0 ? void 0 : state.errors) == null) {
              break;
            }
          }
          if (value !== originalValue)
            state.coercions.push([(_a2 = state.p) !== null && _a2 !== void 0 ? _a2 : `.`, state.coercion.bind(null, value)]);
          return valid6;
        }
      });
    }
    function isSet(spec, { delimiter } = {}) {
      const isArrayValidator = isArray(spec, { delimiter });
      return makeValidator({
        test: (value, state) => {
          var _a2, _b2;
          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([(_a2 = state.p) !== null && _a2 !== void 0 ? _a2 : `.`, makeLazyCoercionFn(state.coercion, value, updateValue)]);
              return true;
            } else {
              let valid6 = true;
              for (const subValue of value) {
                valid6 = spec(subValue, Object.assign({}, state)) && valid6;
                if (!valid6 && (state === null || state === void 0 ? void 0 : state.errors) == null) {
                  break;
                }
              }
              return valid6;
            }
          }
          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([(_b2 = state.p) !== null && _b2 !== void 0 ? _b2 : `.`, makeLazyCoercionFn(state.coercion, value, () => new Set(store.value))]);
            return true;
          }
          return pushError(state, `Expected a set (got ${getPrintable(value)})`);
        }
      });
    }
    function isMap2(keySpec, valueSpec) {
      const isArrayValidator = isArray(isTuple([keySpec, valueSpec]));
      const isRecordValidator = isRecord2(valueSpec, { keys: keySpec });
      return makeValidator({
        test: (value, state) => {
          var _a2, _b2, _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([(_a2 = state.p) !== null && _a2 !== void 0 ? _a2 : `.`, makeLazyCoercionFn(state.coercion, value, updateValue)]);
              return true;
            } else {
              let valid6 = true;
              for (const [key, subValue] of value) {
                valid6 = keySpec(key, Object.assign({}, state)) && valid6;
                if (!valid6 && (state === null || state === void 0 ? void 0 : state.errors) == null) {
                  break;
                }
                valid6 = valueSpec(subValue, Object.assign(Object.assign({}, state), { p: computeKey(state, key) })) && valid6;
                if (!valid6 && (state === null || state === void 0 ? void 0 : state.errors) == null) {
                  break;
                }
              }
              return valid6;
            }
          }
          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([(_b2 = state.p) !== null && _b2 !== void 0 ? _b2 : `.`, 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 _a2;
          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([(_a2 = state.p) !== null && _a2 !== void 0 ? _a2 : `.`, state.coercion.bind(null, value)]);
            }
          }
          if (!Array.isArray(value))
            return pushError(state, `Expected a tuple (got ${getPrintable(value)})`);
          let valid6 = lengthValidator(value, Object.assign({}, state));
          for (let t2 = 0, T2 = value.length; t2 < T2 && t2 < spec.length; ++t2) {
            valid6 = spec[t2](value[t2], Object.assign(Object.assign({}, state), { p: computeKey(state, t2), coercion: makeCoercionFn(value, t2) })) && valid6;
            if (!valid6 && (state === null || state === void 0 ? void 0 : state.errors) == null) {
              break;
            }
          }
          return valid6;
        }
      });
    }
    function isRecord2(spec, { keys: keySpec = null } = {}) {
      const isArrayValidator = isArray(isTuple([keySpec !== null && keySpec !== void 0 ? keySpec : isString(), spec]));
      return makeValidator({
        test: (value, state) => {
          var _a2;
          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([(_a2 = state.p) !== null && _a2 !== void 0 ? _a2 : `.`, 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 valid6 = true;
          for (let t2 = 0, T2 = keys4.length; t2 < T2 && (valid6 || (state === null || state === void 0 ? void 0 : state.errors) != null); ++t2) {
            const key = keys4[t2];
            const sub = value[key];
            if (key === `__proto__` || key === `constructor`) {
              valid6 = pushError(Object.assign(Object.assign({}, state), { p: computeKey(state, key) }), `Unsafe property name`);
              continue;
            }
            if (keySpec !== null && !keySpec(key, state)) {
              valid6 = false;
              continue;
            }
            if (!spec(sub, Object.assign(Object.assign({}, state), { p: computeKey(state, key), coercion: makeCoercionFn(value, key) }))) {
              valid6 = false;
              continue;
            }
          }
          return valid6;
        }
      });
    }
    function isDict(spec, opts3 = {}) {
      return isRecord2(spec, opts3);
    }
    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 valid6 = true;
          for (const key of keys4) {
            if (key === `constructor` || key === `__proto__`) {
              valid6 = 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`) {
                valid6 = spec(sub, Object.assign(Object.assign({}, state), { p: computeKey(state, key), coercion: makeCoercionFn(value, key) })) && valid6;
              } else if (extraSpec === null) {
                valid6 = 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 (!valid6 && (state === null || state === void 0 ? void 0 : state.errors) == null) {
              break;
            }
          }
          if (extraSpec !== null && (valid6 || (state === null || state === void 0 ? void 0 : state.errors) != null))
            valid6 = extraSpec(extra, state) && valid6;
          return valid6;
        }
      });
      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 _a2, _b2, _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: `${(_a2 = state === null || state === void 0 ? void 0 : state.p) !== null && _a2 !== void 0 ? _a2 : `.`}#${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`)
            (_b2 = state === null || state === void 0 ? void 0 : state.coercions) === null || _b2 === void 0 ? void 0 : _b2.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 check2 = isValidArgList(args);
        if (!check2)
          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: unsafe2 = false } = {}) {
      return makeValidator({
        test: (value, state) => {
          if (value !== Math.round(value))
            return pushError(state, `Expected to be an integer (got ${value})`);
          if (!unsafe2 && !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 (_a2) {
            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 _a2, _b2;
          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([(_a2 = state.p) !== null && _a2 !== void 0 ? _a2 : `.`, state.coercion.bind(null, context.value)]);
              }
              (_b2 = state === null || state === void 0 ? void 0 : state.coercions) === null || _b2 === void 0 ? void 0 : _b2.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 _a2;
      const requiredSet = new Set(requiredKeys);
      const check2 = checks[(_a2 = options === null || options === void 0 ? void 0 : options.missingIf) !== null && _a2 !== void 0 ? _a2 : "missing"];
      return makeValidator({
        test: (value, state) => {
          const keys4 = new Set(Object.keys(value));
          const problems = [];
          for (const key of requiredSet)
            if (!check2(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 _a2;
      const requiredSet = new Set(requiredKeys);
      const check2 = checks[(_a2 = options === null || options === void 0 ? void 0 : options.missingIf) !== null && _a2 !== void 0 ? _a2 : "missing"];
      return makeValidator({
        test: (value, state) => {
          const keys4 = Object.keys(value);
          const valid6 = keys4.some((key) => check2(requiredSet, key, value));
          if (!valid6)
            return pushError(state, `Missing at least one property from ${getPrintableArray(Array.from(requiredSet), `or`)}`);
          return true;
        }
      });
    }
    function hasForbiddenKeys(forbiddenKeys, options) {
      var _a2;
      const forbiddenSet = new Set(forbiddenKeys);
      const check2 = checks[(_a2 = options === null || options === void 0 ? void 0 : options.missingIf) !== null && _a2 !== void 0 ? _a2 : "missing"];
      return makeValidator({
        test: (value, state) => {
          const keys4 = new Set(Object.keys(value));
          const problems = [];
          for (const key of forbiddenSet)
            if (check2(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 _a2;
      const exclusiveSet = new Set(exclusiveKeys);
      const check2 = checks[(_a2 = options === null || options === void 0 ? void 0 : options.missingIf) !== null && _a2 !== void 0 ? _a2 : "missing"];
      return makeValidator({
        test: (value, state) => {
          const keys4 = new Set(Object.keys(value));
          const used = [];
          for (const key of exclusiveSet)
            if (check2(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 _a2, _b2;
      const skipped = new Set((_a2 = options === null || options === void 0 ? void 0 : options.ignore) !== null && _a2 !== void 0 ? _a2 : []);
      const check2 = checks[(_b2 = options === null || options === void 0 ? void 0 : options.missingIf) !== null && _b2 !== void 0 ? _b2 : "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 (!check2(keys4, subject, value) || skipped.has(value[subject]))
            return true;
          const problems = [];
          for (const key of otherSet)
            if ((check2(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 = isMap2;
    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;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/clipanion/3.2.0-rc.6/23222bdcfc643cdf493929a474d229a1041e5dceeec18bed0e3374c38e65101e/node_modules/clipanion/lib/advanced/Command.js
var require_Command = __commonJS({
  "../../../../../setup-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_utils();
    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 d3 = Object.getOwnPropertyDescriptor(e, k2);
            Object.defineProperty(n2, k2, d3.get ? d3 : {
              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_lib4());
          });
          const schema2 = applyCascade(isDict(isUnknown()), cascade);
          const errors2 = [];
          const coercions = [];
          const check2 = schema2(this, { errors: errors2, coercions });
          if (!check2)
            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;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/clipanion/3.2.0-rc.6/23222bdcfc643cdf493929a474d229a1041e5dceeec18bed0e3374c38e65101e/node_modules/clipanion/lib/format.js
var require_format2 = __commonJS({
  "../../../../../setup-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, index2) => {
            return ` `.repeat(indent) + (index2 === 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;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/clipanion/3.2.0-rc.6/23222bdcfc643cdf493929a474d229a1041e5dceeec18bed0e3374c38e65101e/node_modules/clipanion/lib/core.js
var require_core2 = __commonJS({
  "../../../../../setup-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 constants6 = require_constants3();
    var errors2 = require_errors2();
    function debug(str2) {
      if (constants6.DEBUG) {
        console.log(str2);
      }
    }
    var basicHelpState = {
      candidateUsage: null,
      requiredOptions: [],
      errorMessage: null,
      ignoreOptions: false,
      path: [],
      positionals: [],
      options: [],
      remainder: null,
      selectedIndex: constants6.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, constants6.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 process25 = (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)
            process25(to);
        for (const [, { to }] of nodeDef.dynamics)
          process25(to);
        for (const { to } of nodeDef.shortcuts)
          process25(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);
            }
          }
        }
      };
      process25(constants6.NODE_INITIAL);
    }
    function debugMachine(machine, { prefix = `` } = {}) {
      if (constants6.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: constants6.NODE_INITIAL, state: {
        candidateUsage: null,
        requiredOptions: [],
        errorMessage: null,
        ignoreOptions: false,
        options: [],
        path: [],
        positionals: [],
        remainder: null,
        selectedIndex: null
      } }];
      debugMachine(machine, { prefix: `  ` });
      const tokens = [constants6.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 === constants6.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 !== constants6.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 === constants6.END_OF_INPUT && input.length === 1) {
          return [{
            node: constants6.NODE_INITIAL,
            state: basicHelpState
          }];
        }
        if (nextBranches.length === 0) {
          throw new errors2.UnknownSyntaxError(input, branches.filter(({ node }) => {
            return node !== constants6.NODE_ERRORED;
          }).map(({ state }) => {
            return { usage: state.candidateUsage, reason: null };
          }));
        }
        if (nextBranches.every(({ node }) => node === constants6.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, constants6.END_OF_INPUT)) {
        for (const { to } of node.statics[constants6.END_OF_INPUT])
          if (to === constants6.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 !== constants6.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 === constants6.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, constants6.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 === constants6.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, i4) => segment === secondPath[i4]), ...rest);
    }
    function makeNode2() {
      return {
        dynamics: [],
        shortcuts: [],
        statics: {}
      };
    }
    function isTerminalNode(node) {
      return node === constants6.NODE_SUCCESS || node === constants6.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 && constants6.BATCH_REGEX.test(segment) && [...segment.slice(1)].every((name) => names.includes(`-${name}`));
      },
      isBoundOption: (state, segment, names, options) => {
        const optionParsing = segment.match(constants6.BINDING_REGEX);
        return !state.ignoreOptions && !!optionParsing && constants6.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 && constants6.HELP_REGEX.test(segment);
      },
      isUnsupportedOption: (state, segment, names) => {
        return !state.ignoreOptions && segment.startsWith(`-`) && constants6.OPTION_REGEX.test(segment) && !names.includes(segment);
      },
      isInvalidOption: (state, segment) => {
        return !state.ignoreOptions && segment.startsWith(`-`) && !constants6.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, index2) => {
        return { ...state, selectedIndex: index2 };
      },
      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(constants6.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 _a2;
        const copy2 = { ...state, options: [...state.options] };
        const lastOption = state.options[state.options.length - 1];
        lastOption.value = ((_a2 = lastOption.value) !== null && _a2 !== void 0 ? _a2 : []).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 */
          ,
          index2
        ] = segment.match(constants6.HELP_REGEX);
        if (typeof index2 !== `undefined`) {
          return { ...state, options: [{ name: `-c`, value: String(command) }, { name: `-i`, value: index2 }] };
        } else {
          return { ...state, options: [{ name: `-c`, value: String(command) }] };
        }
      },
      setError: (state, segment, errorMessage) => {
        if (segment === constants6.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(path240) {
        this.paths.push(path240);
      }
      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 = constants6.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, constants6.NODE_INITIAL, constants6.START_OF_INPUT, firstNode, [`setCandidateState`, { candidateUsage, requiredOptions }]);
        const positionalArgument = this.arity.proxy ? `always` : `isNotOptionLike`;
        const paths3 = this.paths.length > 0 ? this.paths : [[]];
        for (const path240 of paths3) {
          let lastPathNode = firstNode;
          if (path240.length > 0) {
            const optionPathNode = injectNode(machine, makeNode2());
            registerShortcut(machine, lastPathNode, optionPathNode);
            this.registerOptions(machine, optionPathNode);
            lastPathNode = optionPathNode;
          }
          for (let t2 = 0; t2 < path240.length; ++t2) {
            const nextPathNode = injectNode(machine, makeNode2());
            registerStatic(machine, lastPathNode, path240[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, constants6.END_OF_INPUT, constants6.NODE_SUCCESS, [`setSelectedIndex`, constants6.HELP_COMMAND_INDEX]);
            this.registerOptions(machine, lastPathNode);
          }
          if (this.arity.leading.length > 0)
            registerStatic(machine, lastPathNode, constants6.END_OF_INPUT, constants6.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, constants6.END_OF_INPUT, constants6.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, constants6.END_OF_INPUT, constants6.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, constants6.END_OF_INPUT, constants6.NODE_ERRORED, [`setError`, `Not enough positional arguments`]);
            registerDynamic(machine, lastTrailingNode, `isNotOptionLike`, nextTrailingNode, `pushPositional`);
            lastTrailingNode = nextTrailingNode;
          }
          registerDynamic(machine, lastTrailingNode, positionalArgument, constants6.NODE_ERRORED, [`setError`, `Extraneous positional argument`]);
          registerStatic(machine, lastTrailingNode, constants6.END_OF_INPUT, constants6.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], constants6.NODE_ERRORED, [`setError`, `Unsupported option name`]);
        registerDynamic(machine, node, [`isInvalidOption`], constants6.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, constants6.END_OF_INPUT, constants6.NODE_ERRORED, `setOptionArityError`);
              registerDynamic(machine, lastNode, `isOptionLike`, constants6.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, opts3 = {}) {
        return new _CliBuilder(opts3).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;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/clipanion/3.2.0-rc.6/23222bdcfc643cdf493929a474d229a1041e5dceeec18bed0e3374c38e65101e/node_modules/clipanion/lib/advanced/HelpCommand.js
var require_HelpCommand = __commonJS({
  "../../../../../setup-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 index2 = 0;
          for (const command of this.commands)
            this.context.stdout.write(this.cli.usage(this.contexts[command].commandClass, { prefix: `${index2++}. `.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;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/clipanion/3.2.0-rc.6/23222bdcfc643cdf493929a474d229a1041e5dceeec18bed0e3374c38e65101e/node_modules/clipanion/lib/advanced/Cli.js
var require_Cli = __commonJS({
  "../../../../../setup-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 constants6 = require_constants3();
    var Command = require_Command();
    var tty6 = __require("tty");
    var core2 = require_core2();
    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(tty6);
    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 _a2;
        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 index2 = builder.cliIndex;
        const paths3 = (_a2 = commandClass.paths) !== null && _a2 !== void 0 ? _a2 : command.paths;
        if (typeof paths3 !== `undefined`)
          for (const path240 of paths3)
            builder.addPath(path240);
        this.registrations.set(commandClass, { specs, builder, index: index2 });
        for (const [key, { definition }] of specs.entries())
          definition(builder, key);
        builder.setContext({
          commandClass
        });
      }
      process(input) {
        const { contexts, process: process25 } = this.builder.compile();
        const state = process25(input);
        switch (state.selectedIndex) {
          case constants6.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 _a2;
        let command;
        const context = {
          ..._Cli.defaultContext,
          ...userContext
        };
        const colored = (_a2 = this.enableColors) !== null && _a2 !== void 0 ? _a2 : 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, opts3) => this.error(error, opts3),
          format: (colored2) => this.format(colored2),
          process: (input2) => this.process(input2),
          run: (input2, subContext) => this.run(input2, { ...context, ...subContext }),
          usage: (command2, opts3) => this.usage(command2, opts3)
        };
        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: index2 }] of this.registrations) {
          if (typeof commandClass.usage === `undefined`)
            continue;
          const { usage: path240 } = this.getUsageByIndex(index2, { detailed: false });
          const { usage, options } = this.getUsageByIndex(index2, { 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: path240, usage, category, description, details, examples, options });
        }
        return data;
      }
      usage(command = null, { colored, detailed = false, prefix = `$ ` } = {}) {
        var _a2;
        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 || ((_a2 = paths3 === null || paths3 === void 0 ? void 0 : paths3.some((path240) => path240.length === 0)) !== null && _a2 !== void 0 ? _a2 : 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: index2 }] 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(index2);
            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, _a2) {
        var _b2;
        var { colored, command = (_b2 = error[errorCommandSymbol]) !== null && _b2 !== void 0 ? _b2 : null } = _a2 === void 0 ? {} : _a2;
        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 _a2;
        return ((_a2 = colored !== null && colored !== void 0 ? colored : this.enableColors) !== null && _a2 !== void 0 ? _a2 : _Cli.defaultContext.colorDepth > 1) ? format2.richFormat : format2.textFormat;
      }
      getUsageByRegistration(klass, opts3) {
        const record = this.registrations.get(klass);
        if (typeof record === `undefined`)
          throw new Error(`Assertion failed: Unregistered command`);
        return this.getUsageByIndex(record.index, opts3);
      }
      getUsageByIndex(n2, opts3) {
        return this.builder.getBuilderByIndex(n2).usage(opts3);
      }
    };
    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;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/clipanion/3.2.0-rc.6/23222bdcfc643cdf493929a474d229a1041e5dceeec18bed0e3374c38e65101e/node_modules/clipanion/lib/advanced/builtins/definitions.js
var require_definitions = __commonJS({
  "../../../../../setup-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;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/clipanion/3.2.0-rc.6/23222bdcfc643cdf493929a474d229a1041e5dceeec18bed0e3374c38e65101e/node_modules/clipanion/lib/advanced/builtins/help.js
var require_help = __commonJS({
  "../../../../../setup-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;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/clipanion/3.2.0-rc.6/23222bdcfc643cdf493929a474d229a1041e5dceeec18bed0e3374c38e65101e/node_modules/clipanion/lib/advanced/builtins/version.js
var require_version = __commonJS({
  "../../../../../setup-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 _a2;
        this.context.stdout.write(`${(_a2 = this.cli.binaryVersion) !== null && _a2 !== void 0 ? _a2 : `<unknown>`}
`);
      }
    };
    VersionCommand.paths = [[`-v`], [`--version`]];
    exports2.VersionCommand = VersionCommand;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/clipanion/3.2.0-rc.6/23222bdcfc643cdf493929a474d229a1041e5dceeec18bed0e3374c38e65101e/node_modules/clipanion/lib/advanced/builtins/index.js
var require_builtins = __commonJS({
  "../../../../../setup-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 help82 = require_help();
    var version2 = require_version();
    exports2.DefinitionsCommand = definitions.DefinitionsCommand;
    exports2.HelpCommand = help82.HelpCommand;
    exports2.VersionCommand = version2.VersionCommand;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/clipanion/3.2.0-rc.6/23222bdcfc643cdf493929a474d229a1041e5dceeec18bed0e3374c38e65101e/node_modules/clipanion/lib/advanced/options/Array.js
var require_Array = __commonJS({
  "../../../../../setup-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_utils();
    function Array2(descriptor, initialValueBase, optsBase) {
      const [initialValue, opts3] = utils.rerouteArguments(initialValueBase, optsBase !== null && optsBase !== void 0 ? optsBase : {});
      const { arity = 1 } = opts3;
      const optNames = descriptor.split(`,`);
      const nameSet = new Set(optNames);
      return utils.makeCommandOption({
        definition(builder) {
          builder.addOption({
            names: optNames,
            arity,
            hidden: opts3 === null || opts3 === void 0 ? void 0 : opts3.hidden,
            description: opts3 === null || opts3 === void 0 ? void 0 : opts3.description,
            required: opts3.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;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/clipanion/3.2.0-rc.6/23222bdcfc643cdf493929a474d229a1041e5dceeec18bed0e3374c38e65101e/node_modules/clipanion/lib/advanced/options/Boolean.js
var require_Boolean = __commonJS({
  "../../../../../setup-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_utils();
    function Boolean2(descriptor, initialValueBase, optsBase) {
      const [initialValue, opts3] = 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: opts3.hidden,
            description: opts3.description,
            required: opts3.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;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/clipanion/3.2.0-rc.6/23222bdcfc643cdf493929a474d229a1041e5dceeec18bed0e3374c38e65101e/node_modules/clipanion/lib/advanced/options/Counter.js
var require_Counter = __commonJS({
  "../../../../../setup-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_utils();
    function Counter2(descriptor, initialValueBase, optsBase) {
      const [initialValue, opts3] = 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: opts3.hidden,
            description: opts3.description,
            required: opts3.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;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/clipanion/3.2.0-rc.6/23222bdcfc643cdf493929a474d229a1041e5dceeec18bed0e3374c38e65101e/node_modules/clipanion/lib/advanced/options/Proxy.js
var require_Proxy = __commonJS({
  "../../../../../setup-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_utils();
    function Proxy2(opts3 = {}) {
      return utils.makeCommandOption({
        definition(builder, key) {
          var _a2;
          builder.addProxy({
            name: (_a2 = opts3.name) !== null && _a2 !== void 0 ? _a2 : key,
            required: opts3.required
          });
        },
        transformer(builder, key, state) {
          return state.positionals.map(({ value }) => value);
        }
      });
    }
    exports2.Proxy = Proxy2;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/clipanion/3.2.0-rc.6/23222bdcfc643cdf493929a474d229a1041e5dceeec18bed0e3374c38e65101e/node_modules/clipanion/lib/advanced/options/Rest.js
var require_Rest = __commonJS({
  "../../../../../setup-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_utils();
    var core2 = require_core2();
    function Rest(opts3 = {}) {
      return utils.makeCommandOption({
        definition(builder, key) {
          var _a2;
          builder.addRest({
            name: (_a2 = opts3.name) !== null && _a2 !== void 0 ? _a2 : key,
            required: opts3.required
          });
        },
        transformer(builder, key, state) {
          const isRestPositional = (index2) => {
            const positional = state.positionals[index2];
            if (positional.extra === core2.NoLimits)
              return true;
            if (positional.extra === false && index2 < 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;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/clipanion/3.2.0-rc.6/23222bdcfc643cdf493929a474d229a1041e5dceeec18bed0e3374c38e65101e/node_modules/clipanion/lib/advanced/options/String.js
var require_String = __commonJS({
  "../../../../../setup-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_utils();
    var core2 = require_core2();
    function StringOption(descriptor, initialValueBase, optsBase) {
      const [initialValue, opts3] = utils.rerouteArguments(initialValueBase, optsBase !== null && optsBase !== void 0 ? optsBase : {});
      const { arity = 1 } = opts3;
      const optNames = descriptor.split(`,`);
      const nameSet = new Set(optNames);
      return utils.makeCommandOption({
        definition(builder) {
          builder.addOption({
            names: optNames,
            arity: opts3.tolerateBoolean ? 0 : arity,
            hidden: opts3.hidden,
            description: opts3.description,
            required: opts3.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, opts3.validator);
          } else {
            return currentValue;
          }
        }
      });
    }
    function StringPositional(opts3 = {}) {
      const { required = true } = opts3;
      return utils.makeCommandOption({
        definition(builder, key) {
          var _a2;
          builder.addPositional({
            name: (_a2 = opts3.name) !== null && _a2 !== void 0 ? _a2 : key,
            required: opts3.required
          });
        },
        transformer(builder, key, state) {
          var _a2;
          for (let i4 = 0; i4 < state.positionals.length; ++i4) {
            if (state.positionals[i4].extra === core2.NoLimits)
              continue;
            if (required && state.positionals[i4].extra === true)
              continue;
            if (!required && state.positionals[i4].extra === false)
              continue;
            const [positional] = state.positionals.splice(i4, 1);
            return utils.applyValidator((_a2 = opts3.name) !== null && _a2 !== void 0 ? _a2 : key, positional.value, opts3.validator);
          }
          return void 0;
        }
      });
    }
    function String2(descriptor, ...args) {
      if (typeof descriptor === `string`) {
        return StringOption(descriptor, ...args);
      } else {
        return StringPositional(descriptor);
      }
    }
    exports2.String = String2;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/clipanion/3.2.0-rc.6/23222bdcfc643cdf493929a474d229a1041e5dceeec18bed0e3374c38e65101e/node_modules/clipanion/lib/advanced/options/index.js
var require_options = __commonJS({
  "../../../../../setup-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_utils();
    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;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/clipanion/3.2.0-rc.6/23222bdcfc643cdf493929a474d229a1041e5dceeec18bed0e3374c38e65101e/node_modules/clipanion/lib/advanced/index.js
var require_advanced = __commonJS({
  "../../../../../setup-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_errors2();
    var Command = require_Command();
    var format2 = require_format2();
    var Cli = require_Cli();
    var index2 = require_builtins();
    var index$12 = require_options();
    exports2.UsageError = errors2.UsageError;
    exports2.Command = Command.Command;
    exports2.formatMarkdownish = format2.formatMarkdownish;
    exports2.Cli = Cli.Cli;
    exports2.Builtins = index2;
    exports2.Option = index$12;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@yarnpkg/shell/4.0.0/e4d3c97bc095084c4a5f406c57a310e03d671ac655e026cb36a0dacdf0a0ad6d/node_modules/@yarnpkg/shell/lib/commands/entry.js
var require_entry = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@yarnpkg/shell/4.0.0/e4d3c97bc095084c4a5f406c57a310e03d671ac655e026cb36a0dacdf0a0ad6d/node_modules/@yarnpkg/shell/lib/commands/entry.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, "__esModule", { value: true });
    var fslib_12 = require_lib2();
    var clipanion_12 = require_advanced();
    var index_1 = require_lib5();
    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;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@yarnpkg/shell/4.0.0/e4d3c97bc095084c4a5f406c57a310e03d671ac655e026cb36a0dacdf0a0ad6d/node_modules/@yarnpkg/shell/lib/errors.js
var require_errors3 = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@yarnpkg/shell/4.0.0/e4d3c97bc095084c4a5f406c57a310e03d671ac655e026cb36a0dacdf0a0ad6d/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;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/fast-glob/3.3.3/7bbd1b783b00572e63a4e2dde3f7c12481cea32e4ffd96728b8dcfb8c83bd443/node_modules/fast-glob/out/utils/array.js
var require_array = __commonJS({
  "../../../../../setup-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;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/fast-glob/3.3.3/7bbd1b783b00572e63a4e2dde3f7c12481cea32e4ffd96728b8dcfb8c83bd443/node_modules/fast-glob/out/utils/errno.js
var require_errno = __commonJS({
  "../../../../../setup-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;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/fast-glob/3.3.3/7bbd1b783b00572e63a4e2dde3f7c12481cea32e4ffd96728b8dcfb8c83bd443/node_modules/fast-glob/out/utils/fs.js
var require_fs = __commonJS({
  "../../../../../setup-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;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/fast-glob/3.3.3/7bbd1b783b00572e63a4e2dde3f7c12481cea32e4ffd96728b8dcfb8c83bd443/node_modules/fast-glob/out/utils/path.js
var require_path2 = __commonJS({
  "../../../../../setup-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 os20 = __require("os");
    var path240 = __require("path");
    var IS_WINDOWS_PLATFORM = os20.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 path240.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;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/is-extglob/2.1.1/a31b887f7d8fd45bac03cbc721084fb7eadd6056f0d86063907b9e7f109f7f5e/node_modules/is-extglob/index.js
var require_is_extglob = __commonJS({
  "../../../../../setup-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;
    };
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/is-glob/4.0.3/5f6010d19ebbd407d4ddad3f32ad93b07ae9baaa0b44d778899bd947e1a7324b/node_modules/is-glob/index.js
var require_is_glob = __commonJS({
  "../../../../../setup-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 index2 = 0;
      var pipeIndex = -2;
      var closeSquareIndex = -2;
      var closeCurlyIndex = -2;
      var closeParenIndex = -2;
      var backSlashIndex = -2;
      while (index2 < str2.length) {
        if (str2[index2] === "*") {
          return true;
        }
        if (str2[index2 + 1] === "?" && /[\].+)]/.test(str2[index2])) {
          return true;
        }
        if (closeSquareIndex !== -1 && str2[index2] === "[" && str2[index2 + 1] !== "]") {
          if (closeSquareIndex < index2) {
            closeSquareIndex = str2.indexOf("]", index2);
          }
          if (closeSquareIndex > index2) {
            if (backSlashIndex === -1 || backSlashIndex > closeSquareIndex) {
              return true;
            }
            backSlashIndex = str2.indexOf("\\", index2);
            if (backSlashIndex === -1 || backSlashIndex > closeSquareIndex) {
              return true;
            }
          }
        }
        if (closeCurlyIndex !== -1 && str2[index2] === "{" && str2[index2 + 1] !== "}") {
          closeCurlyIndex = str2.indexOf("}", index2);
          if (closeCurlyIndex > index2) {
            backSlashIndex = str2.indexOf("\\", index2);
            if (backSlashIndex === -1 || backSlashIndex > closeCurlyIndex) {
              return true;
            }
          }
        }
        if (closeParenIndex !== -1 && str2[index2] === "(" && str2[index2 + 1] === "?" && /[:!=]/.test(str2[index2 + 2]) && str2[index2 + 3] !== ")") {
          closeParenIndex = str2.indexOf(")", index2);
          if (closeParenIndex > index2) {
            backSlashIndex = str2.indexOf("\\", index2);
            if (backSlashIndex === -1 || backSlashIndex > closeParenIndex) {
              return true;
            }
          }
        }
        if (pipeIndex !== -1 && str2[index2] === "(" && str2[index2 + 1] !== "|") {
          if (pipeIndex < index2) {
            pipeIndex = str2.indexOf("|", index2);
          }
          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[index2] === "\\") {
          var open3 = str2[index2 + 1];
          index2 += 2;
          var close = chars[open3];
          if (close) {
            var n2 = str2.indexOf(close, index2);
            if (n2 !== -1) {
              index2 = n2 + 1;
            }
          }
          if (str2[index2] === "!") {
            return true;
          }
        } else {
          index2++;
        }
      }
      return false;
    };
    var relaxedCheck = function(str2) {
      if (str2[0] === "!") {
        return true;
      }
      var index2 = 0;
      while (index2 < str2.length) {
        if (/[*?{}()[\]]/.test(str2[index2])) {
          return true;
        }
        if (str2[index2] === "\\") {
          var open3 = str2[index2 + 1];
          index2 += 2;
          var close = chars[open3];
          if (close) {
            var n2 = str2.indexOf(close, index2);
            if (n2 !== -1) {
              index2 = n2 + 1;
            }
          }
          if (str2[index2] === "!") {
            return true;
          }
        } else {
          index2++;
        }
      }
      return false;
    };
    module2.exports = function isGlob(str2, options) {
      if (typeof str2 !== "string" || str2 === "") {
        return false;
      }
      if (isExtglob(str2)) {
        return true;
      }
      var check2 = strictCheck;
      if (options && options.strict === false) {
        check2 = relaxedCheck;
      }
      return check2(str2);
    };
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/glob-parent/5.1.2/fedc04e54f83a0c0643c3abdfa28e0c97c4bf9ac1c7dd2f1e5201e4f33e3e49d/node_modules/glob-parent/index.js
var require_glob_parent = __commonJS({
  "../../../../../setup-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, opts3) {
      var options = Object.assign({ flipBackslashes: true }, opts3);
      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");
    };
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/braces/3.0.3/d2039003dfed14fc26988ac9171b4dfe6ab58307723d49dad0895a1368a75bcb/node_modules/braces/lib/utils.js
var require_utils2 = __commonJS({
  "../../../../../setup-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, max4, step2 = 1, limit) => {
      if (limit === false) return false;
      if (!exports2.isInteger(min) || !exports2.isInteger(max4)) return false;
      return (Number(max4) - 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 i4 = 0; i4 < arr.length; i4++) {
          const ele = arr[i4];
          if (Array.isArray(ele)) {
            flat(ele);
            continue;
          }
          if (ele !== void 0) {
            result2.push(ele);
          }
        }
        return result2;
      };
      flat(args);
      return result2;
    };
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/braces/3.0.3/d2039003dfed14fc26988ac9171b4dfe6ab58307723d49dad0895a1368a75bcb/node_modules/braces/lib/stringify.js
var require_stringify = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/braces/3.0.3/d2039003dfed14fc26988ac9171b4dfe6ab58307723d49dad0895a1368a75bcb/node_modules/braces/lib/stringify.js"(exports2, module2) {
    "use strict";
    var utils = require_utils2();
    module2.exports = (ast, options = {}) => {
      const stringify2 = (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 += stringify2(child);
          }
        }
        return output;
      };
      return stringify2(ast);
    };
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/is-number/7.0.0/9613abb83deb6b72fdd092fda49730946a626517d4926a9f5c00ca322630c588/node_modules/is-number/index.js
var require_is_number = __commonJS({
  "../../../../../setup-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;
    };
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/to-regex-range/5.0.1/e55082e174dc917a955607638a77d8978552a7d78773d047c1263c740e4d7c0f/node_modules/to-regex-range/index.js
var require_to_regex_range = __commonJS({
  "../../../../../setup-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, max4, options) => {
      if (isNumber(min) === false) {
        throw new TypeError("toRegexRange: expected the first argument to be a number");
      }
      if (max4 === void 0 || min === max4) {
        return String(min);
      }
      if (isNumber(max4) === false) {
        throw new TypeError("toRegexRange: expected the second argument to be a number.");
      }
      let opts3 = { relaxZeros: true, ...options };
      if (typeof opts3.strictZeros === "boolean") {
        opts3.relaxZeros = opts3.strictZeros === false;
      }
      let relax = String(opts3.relaxZeros);
      let shorthand = String(opts3.shorthand);
      let capture = String(opts3.capture);
      let wrap2 = String(opts3.wrap);
      let cacheKey = min + ":" + max4 + "=" + relax + shorthand + capture + wrap2;
      if (toRegexRange.cache.hasOwnProperty(cacheKey)) {
        return toRegexRange.cache[cacheKey].result;
      }
      let a2 = Math.min(min, max4);
      let b = Math.max(min, max4);
      if (Math.abs(a2 - b) === 1) {
        let result2 = min + "|" + max4;
        if (opts3.capture) {
          return `(${result2})`;
        }
        if (opts3.wrap === false) {
          return result2;
        }
        return `(?:${result2})`;
      }
      let isPadded = hasPadding(min) || hasPadding(max4);
      let state = { min, max: max4, 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, opts3);
        a2 = state.a = 0;
      }
      if (b >= 0) {
        positives = splitToPatterns(a2, b, state, opts3);
      }
      state.negatives = negatives;
      state.positives = positives;
      state.result = collatePatterns(negatives, positives, opts3);
      if (opts3.capture === true) {
        state.result = `(${state.result})`;
      } else if (opts3.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, max4) {
      let nines = 1;
      let zeros = 1;
      let stop = countNines(min, nines);
      let stops = /* @__PURE__ */ new Set([max4]);
      while (min <= stop && stop <= max4) {
        stops.add(stop);
        nines += 1;
        stop = countNines(min, nines);
      }
      stop = countZeros(max4 + 1, zeros) - 1;
      while (min < stop && stop <= max4) {
        stops.add(stop);
        zeros += 1;
        stop = countZeros(max4 + 1, zeros) - 1;
      }
      stops = [...stops];
      stops.sort(compare3);
      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 i4 = 0; i4 < digits; i4++) {
        let [startDigit, stopDigit] = zipped[i4];
        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, max4, tok, options) {
      let ranges = splitToRanges(min, max4);
      let tokens = [];
      let start = min;
      let prev;
      for (let i4 = 0; i4 < ranges.length; i4++) {
        let max5 = ranges[i4];
        let obj = rangeToPattern(String(start), String(max5), 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 = max5 + 1;
          continue;
        }
        if (tok.isPadded) {
          zeros = padZeros(max5, tok, options);
        }
        obj.string = zeros + obj.pattern + toQuantifier(obj.count);
        tokens.push(obj);
        start = max5 + 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 i4 = 0; i4 < a2.length; i4++) arr.push([a2[i4], b[i4]]);
      return arr;
    }
    function compare3(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 diff2 = Math.abs(tok.maxLen - String(value).length);
      let relax = options.relaxZeros !== false;
      switch (diff2) {
        case 0:
          return "";
        case 1:
          return relax ? "0?" : "0";
        case 2:
          return relax ? "0{0,2}" : "00";
        default: {
          return relax ? `0{0,${diff2}}` : `0{${diff2}}`;
        }
      }
    }
    toRegexRange.cache = {};
    toRegexRange.clearCache = () => toRegexRange.cache = {};
    module2.exports = toRegexRange;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/fill-range/7.1.1/cdf2fb341eb6146d178e71e3e567948d1810e3947af7ae4c97c575c1cbd80d2a/node_modules/fill-range/index.js
var require_fill_range = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/fill-range/7.1.1/cdf2fb341eb6146d178e71e3e567948d1810e3947af7ae4c97c575c1cbd80d2a/node_modules/fill-range/index.js"(exports2, module2) {
    "use strict";
    var util70 = __require("util");
    var toRegexRange = require_to_regex_range();
    var isObject4 = (val) => val !== null && typeof val === "object" && !Array.isArray(val);
    var transform3 = (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 index2 = -1;
      if (value[0] === "-") value = value.slice(1);
      if (value === "0") return false;
      while (value[++index2] === "0") ;
      return index2 > 0;
    };
    var stringify2 = (start, end, options) => {
      if (typeof start === "string" || typeof end === "string") {
        return true;
      }
      return options.stringify === true;
    };
    var pad4 = (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 wrap2 = options.wrap === true;
        let prefix = options.capture ? "" : "?:";
        return wrap2 ? `(${prefix}${start.join("|")})` : start.join("|");
      }
      return toRegexRange(start, end, options);
    };
    var rangeError = (...args) => {
      return new RangeError("Invalid range arguments: " + util70.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 && stringify2(start, end, options) === false;
      let format2 = options.transform || transform3(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 index2 = 0;
      while (descending ? a2 >= b : a2 <= b) {
        if (options.toRegex === true && step2 > 1) {
          push(a2);
        } else {
          range.push(pad4(format2(a2, index2), maxLen, toNumber));
        }
        a2 = descending ? a2 - step2 : a2 + step2;
        index2++;
      }
      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 max4 = Math.max(a2, b);
      if (options.toRegex && step2 === 1) {
        return toRange(min, max4, false, options);
      }
      let range = [];
      let index2 = 0;
      while (descending ? a2 >= b : a2 <= b) {
        range.push(format2(a2, index2));
        a2 = descending ? a2 - step2 : a2 + step2;
        index2++;
      }
      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 opts3 = { ...options };
      if (opts3.capture === true) opts3.wrap = true;
      step2 = step2 || opts3.step || 1;
      if (!isNumber(step2)) {
        if (step2 != null && !isObject4(step2)) return invalidStep(step2, opts3);
        return fill(start, end, 1, step2);
      }
      if (isNumber(start) && isNumber(end)) {
        return fillNumbers(start, end, step2, opts3);
      }
      return fillLetters(start, end, Math.max(Math.abs(step2), 1), opts3);
    };
    module2.exports = fill;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/braces/3.0.3/d2039003dfed14fc26988ac9171b4dfe6ab58307723d49dad0895a1368a75bcb/node_modules/braces/lib/compile.js
var require_compile = __commonJS({
  "../../../../../setup-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_utils2();
    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;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/braces/3.0.3/d2039003dfed14fc26988ac9171b4dfe6ab58307723d49dad0895a1368a75bcb/node_modules/braces/lib/expand.js
var require_expand = __commonJS({
  "../../../../../setup-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 stringify2 = require_stringify();
    var utils = require_utils2();
    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(), stringify2(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 = stringify2(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 i4 = 0; i4 < node.nodes.length; i4++) {
          const child = node.nodes[i4];
          if (child.type === "comma" && node.type === "brace") {
            if (i4 === 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;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/braces/3.0.3/d2039003dfed14fc26988ac9171b4dfe6ab58307723d49dad0895a1368a75bcb/node_modules/braces/lib/constants.js
var require_constants4 = __commonJS({
  "../../../../../setup-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 */
    };
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/braces/3.0.3/d2039003dfed14fc26988ac9171b4dfe6ab58307723d49dad0895a1368a75bcb/node_modules/braces/lib/parse.js
var require_parse3 = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/braces/3.0.3/d2039003dfed14fc26988ac9171b4dfe6ab58307723d49dad0895a1368a75bcb/node_modules/braces/lib/parse.js"(exports2, module2) {
    "use strict";
    var stringify2 = require_stringify();
    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_constants4();
    var parse12 = (input, options = {}) => {
      if (typeof input !== "string") {
        throw new TypeError("Expected a string");
      }
      const opts3 = options || {};
      const max4 = typeof opts3.maxLength === "number" ? Math.min(MAX_LENGTH, opts3.maxLength) : MAX_LENGTH;
      if (input.length > max4) {
        throw new SyntaxError(`Input length (${input.length}), exceeds max characters (${max4})`);
      }
      const ast = { type: "root", input, nodes: [] };
      const stack = [ast];
      let block = ast;
      let prev = ast;
      let brackets = 0;
      const length = input.length;
      let index2 = 0;
      let depth = 0;
      let value;
      const advance = () => input[index2++];
      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 (index2 < 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 (index2 < 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 open3 = value;
          let next2;
          if (options.keepQuotes !== true) {
            value = "";
          }
          while (index2 < length && (next2 = advance())) {
            if (next2 === CHAR_BACKSLASH) {
              value += next2 + advance();
              continue;
            }
            if (next2 === open3) {
              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 open3 = block.nodes.shift();
            block.nodes = [open3, { type: "text", value: stringify2(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 index3 = parent.nodes.indexOf(block);
          parent.nodes.splice(index3, 1, ...block.nodes);
        }
      } while (stack.length > 0);
      push({ type: "eos" });
      return ast;
    };
    module2.exports = parse12;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/braces/3.0.3/d2039003dfed14fc26988ac9171b4dfe6ab58307723d49dad0895a1368a75bcb/node_modules/braces/index.js
var require_braces = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/braces/3.0.3/d2039003dfed14fc26988ac9171b4dfe6ab58307723d49dad0895a1368a75bcb/node_modules/braces/index.js"(exports2, module2) {
    "use strict";
    var stringify2 = require_stringify();
    var compile = require_compile();
    var expand = require_expand();
    var parse12 = require_parse3();
    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 = {}) => parse12(input, options);
    braces.stringify = (input, options = {}) => {
      if (typeof input === "string") {
        return stringify2(braces.parse(input, options), options);
      }
      return stringify2(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;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/picomatch/2.3.2/970562b178c2a3cae5d09ba562604a9292f4cc3586bd7d210594148d4f487bd5/node_modules/picomatch/lib/constants.js
var require_constants5 = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/picomatch/2.3.2/970562b178c2a3cae5d09ba562604a9292f4cc3586bd7d210594148d4f487bd5/node_modules/picomatch/lib/constants.js"(exports2, module2) {
    "use strict";
    var path240 = __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: path240.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;
      }
    };
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/picomatch/2.3.2/970562b178c2a3cae5d09ba562604a9292f4cc3586bd7d210594148d4f487bd5/node_modules/picomatch/lib/utils.js
var require_utils3 = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/picomatch/2.3.2/970562b178c2a3cae5d09ba562604a9292f4cc3586bd7d210594148d4f487bd5/node_modules/picomatch/lib/utils.js"(exports2) {
    "use strict";
    var path240 = __require("path");
    var win32 = process.platform === "win32";
    var {
      REGEX_BACKSLASH,
      REGEX_REMOVE_BACKSLASH,
      REGEX_SPECIAL_CHARS,
      REGEX_SPECIAL_CHARS_GLOBAL
    } = require_constants5();
    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 || path240.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;
    };
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/picomatch/2.3.2/970562b178c2a3cae5d09ba562604a9292f4cc3586bd7d210594148d4f487bd5/node_modules/picomatch/lib/scan.js
var require_scan2 = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/picomatch/2.3.2/970562b178c2a3cae5d09ba562604a9292f4cc3586bd7d210594148d4f487bd5/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_constants5();
    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 opts3 = options || {};
      const length = input.length - 1;
      const scanToEnd = opts3.parts === true || opts3.scanToEnd === true;
      const slashes = [];
      const tokens = [];
      const parts = [];
      let str2 = input;
      let index2 = -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 = () => index2 >= length;
      const peek = () => str2.charCodeAt(index2 + 1);
      const advance = () => {
        prev = code;
        return str2.charCodeAt(++index2);
      };
      while (index2 < 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(index2);
          tokens.push(token);
          token = { value: "", depth: 0, isGlob: false };
          if (finished7 === true) continue;
          if (prev === CHAR_DOT && index2 === start + 1) {
            start += 2;
            continue;
          }
          lastIndex = index2 + 1;
          continue;
        }
        if (opts3.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 && index2 === 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 (opts3.nonegate !== true && code === CHAR_EXCLAMATION_MARK && index2 === start) {
          negated = token.negated = true;
          start++;
          continue;
        }
        if (opts3.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 (opts3.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 (opts3.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 (opts3.tokens === true) {
        state.maxDepth = 0;
        if (!isPathSeparator(code)) {
          tokens.push(token);
        }
        state.tokens = tokens;
      }
      if (opts3.parts === true || opts3.tokens === true) {
        let prevIndex;
        for (let idx = 0; idx < slashes.length; idx++) {
          const n2 = prevIndex ? prevIndex + 1 : start;
          const i4 = slashes[idx];
          const value = input.slice(n2, i4);
          if (opts3.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 = i4;
        }
        if (prevIndex && prevIndex + 1 < input.length) {
          const value = input.slice(prevIndex + 1);
          parts.push(value);
          if (opts3.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;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/picomatch/2.3.2/970562b178c2a3cae5d09ba562604a9292f4cc3586bd7d210594148d4f487bd5/node_modules/picomatch/lib/parse.js
var require_parse4 = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/picomatch/2.3.2/970562b178c2a3cae5d09ba562604a9292f4cc3586bd7d210594148d4f487bd5/node_modules/picomatch/lib/parse.js"(exports2, module2) {
    "use strict";
    var constants6 = require_constants5();
    var utils = require_utils3();
    var {
      MAX_LENGTH,
      POSIX_REGEX_SOURCE,
      REGEX_NON_SPECIAL_CHARS,
      REGEX_SPECIAL_CHARS_BACKREF,
      REPLACEMENTS
    } = constants6;
    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 i4 = 0; i4 < values.length; i4++) {
        for (let j2 = i4 + 1; j2 < values.length; j2++) {
          const a2 = values[i4];
          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 i4 = 1; i4 < pattern.length; i4++) {
        const ch = pattern[i4];
        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 && i4 !== pattern.length - 1) {
              return;
            }
            return {
              type: pattern[0],
              body: pattern.slice(2, i4),
              end: i4
            };
          }
        }
      }
    };
    var getStarExtglobSequenceOutput = (pattern) => {
      let index2 = 0;
      const chars = [];
      while (index2 < pattern.length) {
        const match = parseRepeatedExtglob(pattern.slice(index2), 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);
        index2 += 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 max4 = typeof options.maxExtglobRecursion === "number" ? options.maxExtglobRecursion : constants6.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) > max4) {
          return { risky: true };
        }
      }
      return { risky: false };
    };
    var parse12 = (input, options) => {
      if (typeof input !== "string") {
        throw new TypeError("Expected a string");
      }
      input = REPLACEMENTS[input] || input;
      const opts3 = { ...options };
      const max4 = typeof opts3.maxLength === "number" ? Math.min(MAX_LENGTH, opts3.maxLength) : MAX_LENGTH;
      let len = input.length;
      if (len > max4) {
        throw new SyntaxError(`Input length: ${len}, exceeds maximum allowed length: ${max4}`);
      }
      const bos = { type: "bos", value: "", output: opts3.prepend || "" };
      const tokens = [bos];
      const capture = opts3.capture ? "" : "?:";
      const win32 = utils.isWindows(options);
      const PLATFORM_CHARS = constants6.globChars(win32);
      const EXTGLOB_CHARS = constants6.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 = (opts4) => {
        return `(${capture}(?:(?!${START_ANCHOR}${opts4.dot ? DOTS_SLASH : DOT_LITERAL}).)*?)`;
      };
      const nodot = opts3.dot ? "" : NO_DOT;
      const qmarkNoDot = opts3.dot ? QMARK : QMARK_NO_DOT;
      let star = opts3.bash === true ? globstar(opts3) : STAR;
      if (opts3.capture) {
        star = `(${star})`;
      }
      if (typeof opts3.noext === "boolean") {
        opts3.noextglob = opts3.noext;
      }
      const state = {
        input,
        index: -1,
        start: 0,
        dot: opts3.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 = (opts3.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, opts3);
        if ((token.type === "plus" || token.type === "star") && analysis.risky) {
          const safeOutput = analysis.safeOutput ? (token.output ? "" : ONE_CHAR) + (opts3.capture ? `(${analysis.safeOutput})` : analysis.safeOutput) : void 0;
          const open3 = tokens[token.tokensIndex];
          open3.type = "text";
          open3.value = literal;
          open3.output = safeOutput || utils.escapeRegex(literal);
          for (let i4 = token.tokensIndex + 1; i4 < tokens.length; i4++) {
            tokens[i4].value = "";
            tokens[i4].output = "";
            delete tokens[i4].suffix;
          }
          state.output = token.output + open3.output;
          state.backtrack = true;
          push({ type: "paren", extglob: true, value, output: "" });
          decrement("parens");
          return;
        }
        let output = token.close + (opts3.capture ? ")" : "");
        let rest;
        if (token.type === "negate") {
          let extglobStar = star;
          if (token.inner && token.inner.length > 1 && token.inner.includes("/")) {
            extglobStar = globstar(opts3);
          }
          if (extglobStar !== star || eos() || /^\)+$/.test(remaining())) {
            output = token.close = `)$))${extglobStar}`;
          }
          if (token.inner.includes("*") && (rest = remaining()) && /^\.[^\\/.]+$/.test(rest)) {
            const expression = parse12(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 (opts3.fastpaths !== false && !/(^[*!]|[/()[\]{}"])/.test(input)) {
        let backslashes = false;
        let output = input.replace(REGEX_SPECIAL_CHARS_BACKREF, (m, esc, chars, first, rest, index2) => {
          if (first === "\\") {
            backslashes = true;
            return m;
          }
          if (first === "?") {
            if (esc) {
              return esc + first + (rest ? QMARK.repeat(rest.length) : "");
            }
            if (index2 === 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 (opts3.unescape === true) {
            output = output.replace(/\\/g, "");
          } else {
            output = output.replace(/\\+/g, (m) => {
              return m.length % 2 === 0 ? "\\\\" : m ? "\\" : "";
            });
          }
        }
        if (output === input && opts3.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 === "/" && opts3.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 (opts3.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 (opts3.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 (opts3.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 (opts3.keepQuotes === true) {
            push({ type: "text", value });
          }
          continue;
        }
        if (value === "(") {
          increment2("parens");
          push({ type: "paren", value });
          continue;
        }
        if (value === ")") {
          if (state.parens === 0 && opts3.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 (opts3.nobracket === true || !remaining().includes("]")) {
            if (opts3.nobracket !== true && opts3.strictBrackets === true) {
              throw new SyntaxError(syntaxError("closing", "]"));
            }
            value = `\\${value}`;
          } else {
            increment2("brackets");
          }
          push({ type: "bracket", value });
          continue;
        }
        if (value === "]") {
          if (opts3.nobracket === true || prev && prev.type === "bracket" && prev.value.length === 1) {
            push({ type: "text", value, output: `\\${value}` });
            continue;
          }
          if (state.brackets === 0) {
            if (opts3.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 (opts3.literalBrackets === false || utils.hasRegexChars(prevValue)) {
            continue;
          }
          const escaped = utils.escapeRegex(prev.value);
          state.output = state.output.slice(0, -prev.value.length);
          if (opts3.literalBrackets === true) {
            state.output += escaped;
            prev.value = escaped;
            continue;
          }
          prev.value = `(${capture}${escaped}|${prev.value})`;
          state.output += prev.value;
          continue;
        }
        if (value === "{" && opts3.nobrace !== true) {
          increment2("braces");
          const open3 = {
            type: "brace",
            value,
            output: "(",
            outputIndex: state.output.length,
            tokensIndex: state.tokens.length
          };
          braces.push(open3);
          push(open3);
          continue;
        }
        if (value === "}") {
          const brace = braces[braces.length - 1];
          if (opts3.nobrace === true || !brace) {
            push({ type: "text", value, output: value });
            continue;
          }
          let output = ")";
          if (brace.dots === true) {
            const arr = tokens.slice();
            const range = [];
            for (let i4 = arr.length - 1; i4 >= 0; i4--) {
              tokens.pop();
              if (arr[i4].type === "brace") {
                break;
              }
              if (arr[i4].type !== "dots") {
                range.unshift(arr[i4].value);
              }
            }
            output = expandRange(range, opts3);
            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 && opts3.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 (opts3.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 (opts3.noextglob !== true && peek() === "(") {
            if (peek(2) !== "?" || !/[!=<:]/.test(peek(3))) {
              extglobOpen("negate", value);
              continue;
            }
          }
          if (opts3.nonegate !== true && state.index === 0) {
            negate();
            continue;
          }
        }
        if (value === "+") {
          if (opts3.noextglob !== true && peek() === "(" && peek(2) !== "?") {
            extglobOpen("plus", value);
            continue;
          }
          if (prev && prev.value === "(" || opts3.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 (opts3.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 (opts3.noextglob !== true && /^\([^?]/.test(rest)) {
          extglobOpen("star", value);
          continue;
        }
        if (prev.type === "star") {
          if (opts3.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 (opts3.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(opts3);
            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(opts3) + (opts3.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(opts3)}${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(opts3)}${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(opts3);
          prev.value += value;
          state.output += prev.output;
          state.globstar = true;
          consume(value);
          continue;
        }
        const token = { type: "star", value, output: star };
        if (opts3.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") && opts3.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 (opts3.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 (opts3.strictBrackets === true) throw new SyntaxError(syntaxError("closing", "]"));
        state.output = utils.escapeLast(state.output, "[");
        decrement("brackets");
      }
      while (state.parens > 0) {
        if (opts3.strictBrackets === true) throw new SyntaxError(syntaxError("closing", ")"));
        state.output = utils.escapeLast(state.output, "(");
        decrement("parens");
      }
      while (state.braces > 0) {
        if (opts3.strictBrackets === true) throw new SyntaxError(syntaxError("closing", "}"));
        state.output = utils.escapeLast(state.output, "{");
        decrement("braces");
      }
      if (opts3.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;
    };
    parse12.fastpaths = (input, options) => {
      const opts3 = { ...options };
      const max4 = typeof opts3.maxLength === "number" ? Math.min(MAX_LENGTH, opts3.maxLength) : MAX_LENGTH;
      const len = input.length;
      if (len > max4) {
        throw new SyntaxError(`Input length: ${len}, exceeds maximum allowed length: ${max4}`);
      }
      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
      } = constants6.globChars(win32);
      const nodot = opts3.dot ? NO_DOTS : NO_DOT;
      const slashDot = opts3.dot ? NO_DOTS_SLASH : NO_DOT;
      const capture = opts3.capture ? "" : "?:";
      const state = { negated: false, prefix: "" };
      let star = opts3.bash === true ? ".*?" : STAR;
      if (opts3.capture) {
        star = `(${star})`;
      }
      const globstar = (opts4) => {
        if (opts4.noglobstar === true) return star;
        return `(${capture}(?:(?!${START_ANCHOR}${opts4.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(opts3);
          case "**/*":
            return `(?:${nodot}${globstar(opts3)}${SLASH_LITERAL})?${slashDot}${ONE_CHAR}${star}`;
          case "**/*.*":
            return `(?:${nodot}${globstar(opts3)}${SLASH_LITERAL})?${slashDot}${star}${DOT_LITERAL}${ONE_CHAR}${star}`;
          case "**/.*":
            return `(?:${nodot}${globstar(opts3)}${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 && opts3.strictSlashes !== true) {
        source += `${SLASH_LITERAL}?`;
      }
      return source;
    };
    module2.exports = parse12;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/picomatch/2.3.2/970562b178c2a3cae5d09ba562604a9292f4cc3586bd7d210594148d4f487bd5/node_modules/picomatch/lib/picomatch.js
var require_picomatch = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/picomatch/2.3.2/970562b178c2a3cae5d09ba562604a9292f4cc3586bd7d210594148d4f487bd5/node_modules/picomatch/lib/picomatch.js"(exports2, module2) {
    "use strict";
    var path240 = __require("path");
    var scan3 = require_scan2();
    var parse12 = require_parse4();
    var utils = require_utils3();
    var constants6 = require_constants5();
    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 opts3 = 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 (opts3.ignore) {
        const ignoreOpts = { ...options, ignore: null, onMatch: null, onResult: null };
        isIgnored = picomatch2(opts3.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 opts3.onResult === "function") {
          opts3.onResult(result2);
        }
        if (isMatch === false) {
          result2.isMatch = false;
          return returnObject ? result2 : false;
        }
        if (isIgnored(input)) {
          if (typeof opts3.onIgnore === "function") {
            opts3.onIgnore(result2);
          }
          result2.isMatch = false;
          return returnObject ? result2 : false;
        }
        if (typeof opts3.onMatch === "function") {
          opts3.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 opts3 = options || {};
      const format2 = opts3.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 || opts3.capture === true) {
        if (opts3.matchBase === true || opts3.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(path240.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 parse12(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 opts3 = options || {};
      const prepend = opts3.contains ? "" : "^";
      const append = opts3.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 = parse12.fastpaths(input, options);
      }
      if (!parsed.output) {
        parsed = parse12(input, options);
      }
      return picomatch2.compileRe(parsed, options, returnOutput, returnState);
    };
    picomatch2.toRegex = (source, options) => {
      try {
        const opts3 = options || {};
        return new RegExp(source, opts3.flags || (opts3.nocase ? "i" : ""));
      } catch (err2) {
        if (options && options.debug === true) throw err2;
        return /$^/;
      }
    };
    picomatch2.constants = constants6;
    module2.exports = picomatch2;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/picomatch/2.3.2/970562b178c2a3cae5d09ba562604a9292f4cc3586bd7d210594148d4f487bd5/node_modules/picomatch/index.js
var require_picomatch2 = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/picomatch/2.3.2/970562b178c2a3cae5d09ba562604a9292f4cc3586bd7d210594148d4f487bd5/node_modules/picomatch/index.js"(exports2, module2) {
    "use strict";
    module2.exports = require_picomatch();
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/micromatch/4.0.8/e3e5f26f16f8b95548bbbd14ad679e23348853c21837502922840101deaebdcd/node_modules/micromatch/index.js
var require_micromatch = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/micromatch/4.0.8/e3e5f26f16f8b95548bbbd14ad679e23348853c21837502922840101deaebdcd/node_modules/micromatch/index.js"(exports2, module2) {
    "use strict";
    var util70 = __require("util");
    var braces = require_braces();
    var picomatch2 = require_picomatch2();
    var utils = require_utils3();
    var isEmptyString = (v) => v === "" || v === "./";
    var hasBraces = (v) => {
      const index2 = v.indexOf("{");
      return index2 > -1 && v.indexOf("}", index2) > -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 i4 = 0; i4 < patterns.length; i4++) {
        let isMatch = picomatch2(String(patterns[i4]), { ...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: "${util70.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: "${util70.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;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/fast-glob/3.3.3/7bbd1b783b00572e63a4e2dde3f7c12481cea32e4ffd96728b8dcfb8c83bd443/node_modules/fast-glob/out/utils/pattern.js
var require_pattern = __commonJS({
  "../../../../../setup-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 path240 = __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 = path240.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 absolute2 = [];
      const relative2 = [];
      for (const pattern of patterns) {
        if (isAbsolute4(pattern)) {
          absolute2.push(pattern);
        } else {
          relative2.push(pattern);
        }
      }
      return [absolute2, relative2];
    }
    exports2.partitionAbsoluteAndRelative = partitionAbsoluteAndRelative;
    function isAbsolute4(pattern) {
      return path240.isAbsolute(pattern);
    }
    exports2.isAbsolute = isAbsolute4;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/merge2/1.4.1/020a5dba6708533d1a210be2e70dc318b18a338e31693a47aac3f81caa5b43bf/node_modules/merge2/index.js
var require_merge2 = __commonJS({
  "../../../../../setup-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 slice4 = Array.prototype.slice;
    module2.exports = merge22;
    function merge22() {
      const streamsQueue = [];
      const args = slice4.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 i4 = 0, len = arguments.length; i4 < len; i4++) {
          streamsQueue.push(pauseStreams(arguments[i4], 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 pipe3(stream2) {
          function onend() {
            stream2.removeListener("merge2UnpipeEnd", onend);
            stream2.removeListener("end", onend);
            if (doPipeError) {
              stream2.removeListener("error", onerror);
            }
            next2();
          }
          function onerror(err2) {
            mergedStream.emit("error", err2);
          }
          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 i4 = 0; i4 < streams.length; i4++) {
          pipe3(streams[i4]);
        }
        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 i4 = 0, len = streams.length; i4 < len; i4++) {
          streams[i4] = pauseStreams(streams[i4], options);
        }
      }
      return streams;
    }
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/fast-glob/3.3.3/7bbd1b783b00572e63a4e2dde3f7c12481cea32e4ffd96728b8dcfb8c83bd443/node_modules/fast-glob/out/utils/stream.js
var require_stream = __commonJS({
  "../../../../../setup-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"));
    }
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/fast-glob/3.3.3/7bbd1b783b00572e63a4e2dde3f7c12481cea32e4ffd96728b8dcfb8c83bd443/node_modules/fast-glob/out/utils/string.js
var require_string = __commonJS({
  "../../../../../setup-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;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/fast-glob/3.3.3/7bbd1b783b00572e63a4e2dde3f7c12481cea32e4ffd96728b8dcfb8c83bd443/node_modules/fast-glob/out/utils/index.js
var require_utils4 = __commonJS({
  "../../../../../setup-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 fs131 = require_fs();
    exports2.fs = fs131;
    var path240 = require_path2();
    exports2.path = path240;
    var pattern = require_pattern();
    exports2.pattern = pattern;
    var stream2 = require_stream();
    exports2.stream = stream2;
    var string = require_string();
    exports2.string = string;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/fast-glob/3.3.3/7bbd1b783b00572e63a4e2dde3f7c12481cea32e4ffd96728b8dcfb8c83bd443/node_modules/fast-glob/out/managers/tasks.js
var require_tasks = __commonJS({
  "../../../../../setup-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_utils4();
    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;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@nodelib/fs.stat/2.0.5/a18fe583fa720fc7a562f64b45734df4ad1fd796cd7d66bee7833dc660f30bcf/node_modules/@nodelib/fs.stat/out/providers/async.js
var require_async = __commonJS({
  "../../../../../setup-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(path240, settings, callback2) {
      settings.fs.lstat(path240, (lstatError, lstat2) => {
        if (lstatError !== null) {
          callFailureCallback(callback2, lstatError);
          return;
        }
        if (!lstat2.isSymbolicLink() || !settings.followSymbolicLink) {
          callSuccessCallback(callback2, lstat2);
          return;
        }
        settings.fs.stat(path240, (statError, stat2) => {
          if (statError !== null) {
            if (settings.throwErrorOnBrokenSymbolicLink) {
              callFailureCallback(callback2, statError);
              return;
            }
            callSuccessCallback(callback2, lstat2);
            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);
    }
  }
});

// ../../../../../setup-pnpm/store/v11/links/@nodelib/fs.stat/2.0.5/a18fe583fa720fc7a562f64b45734df4ad1fd796cd7d66bee7833dc660f30bcf/node_modules/@nodelib/fs.stat/out/providers/sync.js
var require_sync = __commonJS({
  "../../../../../setup-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(path240, settings) {
      const lstat2 = settings.fs.lstatSync(path240);
      if (!lstat2.isSymbolicLink() || !settings.followSymbolicLink) {
        return lstat2;
      }
      try {
        const stat2 = settings.fs.statSync(path240);
        if (settings.markSymbolicLink) {
          stat2.isSymbolicLink = () => true;
        }
        return stat2;
      } catch (error) {
        if (!settings.throwErrorOnBrokenSymbolicLink) {
          return lstat2;
        }
        throw error;
      }
    }
    exports2.read = read2;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@nodelib/fs.stat/2.0.5/a18fe583fa720fc7a562f64b45734df4ad1fd796cd7d66bee7833dc660f30bcf/node_modules/@nodelib/fs.stat/out/adapters/fs.js
var require_fs2 = __commonJS({
  "../../../../../setup-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 fs131 = __require("fs");
    exports2.FILE_SYSTEM_ADAPTER = {
      lstat: fs131.lstat,
      stat: fs131.stat,
      lstatSync: fs131.lstatSync,
      statSync: fs131.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;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@nodelib/fs.stat/2.0.5/a18fe583fa720fc7a562f64b45734df4ad1fd796cd7d66bee7833dc660f30bcf/node_modules/@nodelib/fs.stat/out/settings.js
var require_settings = __commonJS({
  "../../../../../setup-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 fs131 = require_fs2();
    var Settings = class {
      constructor(_options = {}) {
        this._options = _options;
        this.followSymbolicLink = this._getValue(this._options.followSymbolicLink, true);
        this.fs = fs131.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;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@nodelib/fs.stat/2.0.5/a18fe583fa720fc7a562f64b45734df4ad1fd796cd7d66bee7833dc660f30bcf/node_modules/@nodelib/fs.stat/out/index.js
var require_out = __commonJS({
  "../../../../../setup-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_async();
    var sync3 = require_sync();
    var settings_1 = require_settings();
    exports2.Settings = settings_1.default;
    function stat2(path240, optionsOrSettingsOrCallback, callback2) {
      if (typeof optionsOrSettingsOrCallback === "function") {
        async.read(path240, getSettings(), optionsOrSettingsOrCallback);
        return;
      }
      async.read(path240, getSettings(optionsOrSettingsOrCallback), callback2);
    }
    exports2.stat = stat2;
    function statSync4(path240, optionsOrSettings) {
      const settings = getSettings(optionsOrSettings);
      return sync3.read(path240, settings);
    }
    exports2.statSync = statSync4;
    function getSettings(settingsOrOptions = {}) {
      if (settingsOrOptions instanceof settings_1.default) {
        return settingsOrOptions;
      }
      return new settings_1.default(settingsOrOptions);
    }
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/queue-microtask/1.2.3/5004b678cd06a4c9cf01ec5a4a3e88e0dab2d5e57ebf6952bbba02687d2d4b96/node_modules/queue-microtask/index.js
var require_queue_microtask = __commonJS({
  "../../../../../setup-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((err2) => setTimeout(() => {
      throw err2;
    }, 0));
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/run-parallel/1.2.0/3913053af3a6a9a6db127d62f377d6c4737d2538ca54cac3931789acb2492492/node_modules/run-parallel/index.js
var require_run_parallel = __commonJS({
  "../../../../../setup-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(err2) {
        function end() {
          if (cb) cb(err2, results);
          cb = null;
        }
        if (isSync) queueMicrotask2(end);
        else end();
      }
      function each(i4, err2, result2) {
        results[i4] = result2;
        if (--pending === 0 || err2) {
          done(err2);
        }
      }
      if (!pending) {
        done(null);
      } else if (keys4) {
        keys4.forEach(function(key) {
          tasks[key](function(err2, result2) {
            each(key, err2, result2);
          });
        });
      } else {
        tasks.forEach(function(task, i4) {
          task(function(err2, result2) {
            each(i4, err2, result2);
          });
        });
      }
      isSync = false;
    }
  }
});

// ../../../../../setup-pnpm/store/v11/links/@nodelib/fs.scandir/2.1.5/e782c397301ae1070a1c79775f17168b1359e43b12ae9e53bffd03056bd135d9/node_modules/@nodelib/fs.scandir/out/constants.js
var require_constants6 = __commonJS({
  "../../../../../setup-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;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@nodelib/fs.scandir/2.1.5/e782c397301ae1070a1c79775f17168b1359e43b12ae9e53bffd03056bd135d9/node_modules/@nodelib/fs.scandir/out/utils/fs.js
var require_fs3 = __commonJS({
  "../../../../../setup-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;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@nodelib/fs.scandir/2.1.5/e782c397301ae1070a1c79775f17168b1359e43b12ae9e53bffd03056bd135d9/node_modules/@nodelib/fs.scandir/out/utils/index.js
var require_utils5 = __commonJS({
  "../../../../../setup-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 fs131 = require_fs3();
    exports2.fs = fs131;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@nodelib/fs.scandir/2.1.5/e782c397301ae1070a1c79775f17168b1359e43b12ae9e53bffd03056bd135d9/node_modules/@nodelib/fs.scandir/out/providers/common.js
var require_common2 = __commonJS({
  "../../../../../setup-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;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@nodelib/fs.scandir/2.1.5/e782c397301ae1070a1c79775f17168b1359e43b12ae9e53bffd03056bd135d9/node_modules/@nodelib/fs.scandir/out/providers/async.js
var require_async2 = __commonJS({
  "../../../../../setup-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_constants6();
    var utils = require_utils5();
    var common4 = 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: common4.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 path240 = common4.joinPathSegments(directory, name, settings.pathSegmentSeparator);
          return (done) => {
            fsStat.stat(path240, settings.fsStatSettings, (error, stats) => {
              if (error !== null) {
                done(error);
                return;
              }
              const entry = {
                name,
                path: path240,
                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);
    }
  }
});

// ../../../../../setup-pnpm/store/v11/links/@nodelib/fs.scandir/2.1.5/e782c397301ae1070a1c79775f17168b1359e43b12ae9e53bffd03056bd135d9/node_modules/@nodelib/fs.scandir/out/providers/sync.js
var require_sync2 = __commonJS({
  "../../../../../setup-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_constants6();
    var utils = require_utils5();
    var common4 = 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: common4.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 = common4.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;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@nodelib/fs.scandir/2.1.5/e782c397301ae1070a1c79775f17168b1359e43b12ae9e53bffd03056bd135d9/node_modules/@nodelib/fs.scandir/out/adapters/fs.js
var require_fs4 = __commonJS({
  "../../../../../setup-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 fs131 = __require("fs");
    exports2.FILE_SYSTEM_ADAPTER = {
      lstat: fs131.lstat,
      stat: fs131.stat,
      lstatSync: fs131.lstatSync,
      statSync: fs131.statSync,
      readdir: fs131.readdir,
      readdirSync: fs131.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;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@nodelib/fs.scandir/2.1.5/e782c397301ae1070a1c79775f17168b1359e43b12ae9e53bffd03056bd135d9/node_modules/@nodelib/fs.scandir/out/settings.js
var require_settings2 = __commonJS({
  "../../../../../setup-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 path240 = __require("path");
    var fsStat = require_out();
    var fs131 = require_fs4();
    var Settings = class {
      constructor(_options = {}) {
        this._options = _options;
        this.followSymbolicLinks = this._getValue(this._options.followSymbolicLinks, false);
        this.fs = fs131.createFileSystemAdapter(this._options.fs);
        this.pathSegmentSeparator = this._getValue(this._options.pathSegmentSeparator, path240.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;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@nodelib/fs.scandir/2.1.5/e782c397301ae1070a1c79775f17168b1359e43b12ae9e53bffd03056bd135d9/node_modules/@nodelib/fs.scandir/out/index.js
var require_out2 = __commonJS({
  "../../../../../setup-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_async2();
    var sync3 = require_sync2();
    var settings_1 = require_settings2();
    exports2.Settings = settings_1.default;
    function scandir(path240, optionsOrSettingsOrCallback, callback2) {
      if (typeof optionsOrSettingsOrCallback === "function") {
        async.read(path240, getSettings(), optionsOrSettingsOrCallback);
        return;
      }
      async.read(path240, getSettings(optionsOrSettingsOrCallback), callback2);
    }
    exports2.scandir = scandir;
    function scandirSync(path240, optionsOrSettings) {
      const settings = getSettings(optionsOrSettings);
      return sync3.read(path240, settings);
    }
    exports2.scandirSync = scandirSync;
    function getSettings(settingsOrOptions = {}) {
      if (settingsOrOptions instanceof settings_1.default) {
        return settingsOrOptions;
      }
      return new settings_1.default(settingsOrOptions);
    }
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/reusify/1.1.0/ba0ed478ca8bcc297c0a0bb75bc1fab72c39937204f3b60af935de964b431505/node_modules/reusify/reusify.js
var require_reusify = __commonJS({
  "../../../../../setup-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 get2() {
        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: get2,
        release
      };
    }
    module2.exports = reusify;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/fastq/1.20.1/e556497869ec3893fd89b8e14a079864c1ae527d27c9ccec81f767b12c4cacdd/node_modules/fastq/queue.js
var require_queue = __commonJS({
  "../../../../../setup-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(handler83) {
        errorHandler2 = handler83;
      }
    }
    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(err2, result2) {
        var callback2 = self2.callback;
        var errorHandler2 = self2.errorHandler;
        var val = self2.value;
        self2.value = null;
        self2.callback = noop5;
        if (self2.errorHandler) {
          errorHandler2(err2, val);
        }
        callback2.call(self2.context, err2, 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(resolve4, reject3) {
          pushCb(value, function(err2, result2) {
            if (err2) {
              reject3(err2);
              return;
            }
            resolve4(result2);
          });
        });
        p.catch(noop5);
        return p;
      }
      function unshift(value) {
        var p = new Promise(function(resolve4, reject3) {
          unshiftCb(value, function(err2, result2) {
            if (err2) {
              reject3(err2);
              return;
            }
            resolve4(result2);
          });
        });
        p.catch(noop5);
        return p;
      }
      function drained() {
        var p = new Promise(function(resolve4) {
          process.nextTick(function() {
            if (queue2.idle()) {
              resolve4();
            } else {
              var previousDrain = queue2.drain;
              queue2.drain = function() {
                if (typeof previousDrain === "function") previousDrain();
                resolve4();
                queue2.drain = previousDrain;
              };
            }
          });
        });
        return p;
      }
    }
    module2.exports = fastqueue;
    module2.exports.promise = queueAsPromised;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@nodelib/fs.walk/1.2.8/b1d6c9ee0eed3cb108f73a2593634a23c7b72fdd7d0c348ec6eedca2d5c75d23/node_modules/@nodelib/fs.walk/out/readers/common.js
var require_common3 = __commonJS({
  "../../../../../setup-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;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@nodelib/fs.walk/1.2.8/b1d6c9ee0eed3cb108f73a2593634a23c7b72fdd7d0c348ec6eedca2d5c75d23/node_modules/@nodelib/fs.walk/out/readers/reader.js
var require_reader = __commonJS({
  "../../../../../setup-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 common4 = require_common3();
    var Reader2 = class {
      constructor(_root, _settings) {
        this._root = _root;
        this._settings = _settings;
        this._root = common4.replacePathSegmentSeparator(_root, _settings.pathSegmentSeparator);
      }
    };
    exports2.default = Reader2;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@nodelib/fs.walk/1.2.8/b1d6c9ee0eed3cb108f73a2593634a23c7b72fdd7d0c348ec6eedca2d5c75d23/node_modules/@nodelib/fs.walk/out/readers/async.js
var require_async3 = __commonJS({
  "../../../../../setup-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 common4 = 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 || !common4.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 = common4.joinPathSegments(base, entry.name, this._settings.pathSegmentSeparator);
        }
        if (common4.isAppliedFilter(this._settings.entryFilter, entry)) {
          this._emitEntry(entry);
        }
        if (entry.dirent.isDirectory() && common4.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;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@nodelib/fs.walk/1.2.8/b1d6c9ee0eed3cb108f73a2593634a23c7b72fdd7d0c348ec6eedca2d5c75d23/node_modules/@nodelib/fs.walk/out/providers/async.js
var require_async4 = __commonJS({
  "../../../../../setup-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_async3();
    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);
    }
  }
});

// ../../../../../setup-pnpm/store/v11/links/@nodelib/fs.walk/1.2.8/b1d6c9ee0eed3cb108f73a2593634a23c7b72fdd7d0c348ec6eedca2d5c75d23/node_modules/@nodelib/fs.walk/out/providers/stream.js
var require_stream2 = __commonJS({
  "../../../../../setup-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_async3();
    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;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@nodelib/fs.walk/1.2.8/b1d6c9ee0eed3cb108f73a2593634a23c7b72fdd7d0c348ec6eedca2d5c75d23/node_modules/@nodelib/fs.walk/out/readers/sync.js
var require_sync3 = __commonJS({
  "../../../../../setup-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 common4 = 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 (!common4.isFatalError(this._settings, error)) {
          return;
        }
        throw error;
      }
      _handleEntry(entry, base) {
        const fullpath = entry.path;
        if (base !== void 0) {
          entry.path = common4.joinPathSegments(base, entry.name, this._settings.pathSegmentSeparator);
        }
        if (common4.isAppliedFilter(this._settings.entryFilter, entry)) {
          this._pushToStorage(entry);
        }
        if (entry.dirent.isDirectory() && common4.isAppliedFilter(this._settings.deepFilter, entry)) {
          this._pushToQueue(fullpath, base === void 0 ? void 0 : entry.path);
        }
      }
      _pushToStorage(entry) {
        this._storage.push(entry);
      }
    };
    exports2.default = SyncReader;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@nodelib/fs.walk/1.2.8/b1d6c9ee0eed3cb108f73a2593634a23c7b72fdd7d0c348ec6eedca2d5c75d23/node_modules/@nodelib/fs.walk/out/providers/sync.js
var require_sync4 = __commonJS({
  "../../../../../setup-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;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@nodelib/fs.walk/1.2.8/b1d6c9ee0eed3cb108f73a2593634a23c7b72fdd7d0c348ec6eedca2d5c75d23/node_modules/@nodelib/fs.walk/out/settings.js
var require_settings3 = __commonJS({
  "../../../../../setup-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 path240 = __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, path240.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;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@nodelib/fs.walk/1.2.8/b1d6c9ee0eed3cb108f73a2593634a23c7b72fdd7d0c348ec6eedca2d5c75d23/node_modules/@nodelib/fs.walk/out/index.js
var require_out3 = __commonJS({
  "../../../../../setup-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_async4();
    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);
    }
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/fast-glob/3.3.3/7bbd1b783b00572e63a4e2dde3f7c12481cea32e4ffd96728b8dcfb8c83bd443/node_modules/fast-glob/out/readers/reader.js
var require_reader2 = __commonJS({
  "../../../../../setup-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 path240 = __require("path");
    var fsStat = require_out();
    var utils = require_utils4();
    var Reader2 = 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 path240.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 = Reader2;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/fast-glob/3.3.3/7bbd1b783b00572e63a4e2dde3f7c12481cea32e4ffd96728b8dcfb8c83bd443/node_modules/fast-glob/out/readers/stream.js
var require_stream3 = __commonJS({
  "../../../../../setup-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 = (index2, _enc, done) => {
          return this._getEntry(filepaths[index2], patterns[index2], options).then((entry) => {
            if (entry !== null && options.entryFilter(entry)) {
              stream2.push(entry);
            }
            if (index2 === filepaths.length - 1) {
              stream2.end();
            }
            done();
          }).catch(done);
        };
        for (let i4 = 0; i4 < filepaths.length; i4++) {
          stream2.write(i4);
        }
        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((resolve4, reject3) => {
          this._stat(filepath, this._fsStatSettings, (error, stats) => {
            return error === null ? resolve4(stats) : reject3(error);
          });
        });
      }
    };
    exports2.default = ReaderStream;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/fast-glob/3.3.3/7bbd1b783b00572e63a4e2dde3f7c12481cea32e4ffd96728b8dcfb8c83bd443/node_modules/fast-glob/out/readers/async.js
var require_async5 = __commonJS({
  "../../../../../setup-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((resolve4, reject3) => {
          this._walkAsync(root, options, (error, entries) => {
            if (error === null) {
              resolve4(entries);
            } else {
              reject3(error);
            }
          });
        });
      }
      async static(patterns, options) {
        const entries = [];
        const stream2 = this._readerStream.static(patterns, options);
        return new Promise((resolve4, reject3) => {
          stream2.once("error", reject3);
          stream2.on("data", (entry) => entries.push(entry));
          stream2.once("end", () => resolve4(entries));
        });
      }
    };
    exports2.default = ReaderAsync;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/fast-glob/3.3.3/7bbd1b783b00572e63a4e2dde3f7c12481cea32e4ffd96728b8dcfb8c83bd443/node_modules/fast-glob/out/providers/matchers/matcher.js
var require_matcher = __commonJS({
  "../../../../../setup-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_utils4();
    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;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/fast-glob/3.3.3/7bbd1b783b00572e63a4e2dde3f7c12481cea32e4ffd96728b8dcfb8c83bd443/node_modules/fast-glob/out/providers/matchers/partial.js
var require_partial = __commonJS({
  "../../../../../setup-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, index2) => {
            const segment = pattern.segments[index2];
            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;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/fast-glob/3.3.3/7bbd1b783b00572e63a4e2dde3f7c12481cea32e4ffd96728b8dcfb8c83bd443/node_modules/fast-glob/out/providers/filters/deep.js
var require_deep = __commonJS({
  "../../../../../setup-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_utils4();
    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;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/fast-glob/3.3.3/7bbd1b783b00572e63a4e2dde3f7c12481cea32e4ffd96728b8dcfb8c83bd443/node_modules/fast-glob/out/providers/filters/entry.js
var require_entry2 = __commonJS({
  "../../../../../setup-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_utils4();
    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;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/fast-glob/3.3.3/7bbd1b783b00572e63a4e2dde3f7c12481cea32e4ffd96728b8dcfb8c83bd443/node_modules/fast-glob/out/providers/filters/error.js
var require_error = __commonJS({
  "../../../../../setup-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_utils4();
    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;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/fast-glob/3.3.3/7bbd1b783b00572e63a4e2dde3f7c12481cea32e4ffd96728b8dcfb8c83bd443/node_modules/fast-glob/out/providers/transformers/entry.js
var require_entry3 = __commonJS({
  "../../../../../setup-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_utils4();
    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;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/fast-glob/3.3.3/7bbd1b783b00572e63a4e2dde3f7c12481cea32e4ffd96728b8dcfb8c83bd443/node_modules/fast-glob/out/providers/provider.js
var require_provider = __commonJS({
  "../../../../../setup-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 path240 = __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 path240.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;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/fast-glob/3.3.3/7bbd1b783b00572e63a4e2dde3f7c12481cea32e4ffd96728b8dcfb8c83bd443/node_modules/fast-glob/out/providers/async.js
var require_async6 = __commonJS({
  "../../../../../setup-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_async5();
    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;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/fast-glob/3.3.3/7bbd1b783b00572e63a4e2dde3f7c12481cea32e4ffd96728b8dcfb8c83bd443/node_modules/fast-glob/out/providers/stream.js
var require_stream4 = __commonJS({
  "../../../../../setup-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;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/fast-glob/3.3.3/7bbd1b783b00572e63a4e2dde3f7c12481cea32e4ffd96728b8dcfb8c83bd443/node_modules/fast-glob/out/readers/sync.js
var require_sync5 = __commonJS({
  "../../../../../setup-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;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/fast-glob/3.3.3/7bbd1b783b00572e63a4e2dde3f7c12481cea32e4ffd96728b8dcfb8c83bd443/node_modules/fast-glob/out/providers/sync.js
var require_sync6 = __commonJS({
  "../../../../../setup-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;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/fast-glob/3.3.3/7bbd1b783b00572e63a4e2dde3f7c12481cea32e4ffd96728b8dcfb8c83bd443/node_modules/fast-glob/out/settings.js
var require_settings4 = __commonJS({
  "../../../../../setup-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 fs131 = __require("fs");
    var os20 = __require("os");
    var CPU_COUNT = Math.max(os20.cpus().length, 1);
    exports2.DEFAULT_FILE_SYSTEM_ADAPTER = {
      lstat: fs131.lstat,
      lstatSync: fs131.lstatSync,
      stat: fs131.stat,
      statSync: fs131.statSync,
      readdir: fs131.readdir,
      readdirSync: fs131.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;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/fast-glob/3.3.3/7bbd1b783b00572e63a4e2dde3f7c12481cea32e4ffd96728b8dcfb8c83bd443/node_modules/fast-glob/out/index.js
var require_out4 = __commonJS({
  "../../../../../setup-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_async6();
    var stream_12 = require_stream4();
    var sync_1 = require_sync6();
    var settings_1 = require_settings4();
    var utils = require_utils4();
    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;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@yarnpkg/shell/4.0.0/e4d3c97bc095084c4a5f406c57a310e03d671ac655e026cb36a0dacdf0a0ad6d/node_modules/@yarnpkg/shell/lib/globUtils.js
var require_globUtils = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@yarnpkg/shell/4.0.0/e4d3c97bc095084c4a5f406c57a310e03d671ac655e026cb36a0dacdf0a0ad6d/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_lib2();
    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;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/isexe/2.0.0/b49cd413d57d8ea430128de708f0af2b808f841b338175c75fae74b70a296b56/node_modules/isexe/windows.js
var require_windows = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/isexe/2.0.0/b49cd413d57d8ea430128de708f0af2b808f841b338175c75fae74b70a296b56/node_modules/isexe/windows.js"(exports2, module2) {
    module2.exports = isexe;
    isexe.sync = sync3;
    var fs131 = __require("fs");
    function checkPathExt(path240, 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 i4 = 0; i4 < pathext.length; i4++) {
        var p = pathext[i4].toLowerCase();
        if (p && path240.substr(-p.length).toLowerCase() === p) {
          return true;
        }
      }
      return false;
    }
    function checkStat(stat2, path240, options) {
      if (!stat2.isSymbolicLink() && !stat2.isFile()) {
        return false;
      }
      return checkPathExt(path240, options);
    }
    function isexe(path240, options, cb) {
      fs131.stat(path240, function(er, stat2) {
        cb(er, er ? false : checkStat(stat2, path240, options));
      });
    }
    function sync3(path240, options) {
      return checkStat(fs131.statSync(path240), path240, options);
    }
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/isexe/2.0.0/b49cd413d57d8ea430128de708f0af2b808f841b338175c75fae74b70a296b56/node_modules/isexe/mode.js
var require_mode = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/isexe/2.0.0/b49cd413d57d8ea430128de708f0af2b808f841b338175c75fae74b70a296b56/node_modules/isexe/mode.js"(exports2, module2) {
    module2.exports = isexe;
    isexe.sync = sync3;
    var fs131 = __require("fs");
    function isexe(path240, options, cb) {
      fs131.stat(path240, function(er, stat2) {
        cb(er, er ? false : checkStat(stat2, options));
      });
    }
    function sync3(path240, options) {
      return checkStat(fs131.statSync(path240), options);
    }
    function checkStat(stat2, options) {
      return stat2.isFile() && checkMode(stat2, options);
    }
    function checkMode(stat2, options) {
      var mod2 = 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 u2 = parseInt("100", 8);
      var g = parseInt("010", 8);
      var o2 = parseInt("001", 8);
      var ug = u2 | g;
      var ret2 = mod2 & o2 || mod2 & g && gid === myGid || mod2 & u2 && uid === myUid || mod2 & ug && myUid === 0;
      return ret2;
    }
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/isexe/2.0.0/b49cd413d57d8ea430128de708f0af2b808f841b338175c75fae74b70a296b56/node_modules/isexe/index.js
var require_isexe = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/isexe/2.0.0/b49cd413d57d8ea430128de708f0af2b808f841b338175c75fae74b70a296b56/node_modules/isexe/index.js"(exports2, module2) {
    var fs131 = __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(path240, 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(resolve4, reject3) {
          isexe(path240, options || {}, function(er, is) {
            if (er) {
              reject3(er);
            } else {
              resolve4(is);
            }
          });
        });
      }
      core2(path240, options || {}, function(er, is) {
        if (er) {
          if (er.code === "EACCES" || options && options.ignoreErrors) {
            er = null;
            is = false;
          }
        }
        cb(er, is);
      });
    }
    function sync3(path240, options) {
      try {
        return core2.sync(path240, options || {});
      } catch (er) {
        if (options && options.ignoreErrors || er.code === "EACCES") {
          return false;
        } else {
          throw er;
        }
      }
    }
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/which/2.0.2/552539f3776c3e1eb0a529e767aae6852f3518bf73e532a9552c4d0550928726/node_modules/which/which.js
var require_which = __commonJS({
  "../../../../../setup-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 path240 = __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 = (i4) => new Promise((resolve4, reject3) => {
        if (i4 === pathEnv.length)
          return opt.all && found.length ? resolve4(found) : reject3(getNotFoundError(cmd));
        const ppRaw = pathEnv[i4];
        const pathPart = /^".*"$/.test(ppRaw) ? ppRaw.slice(1, -1) : ppRaw;
        const pCmd = path240.join(pathPart, cmd);
        const p = !pathPart && /^\.[\\\/]/.test(cmd) ? cmd.slice(0, 2) + pCmd : pCmd;
        resolve4(subStep(p, i4, 0));
      });
      const subStep = (p, i4, ii) => new Promise((resolve4, reject3) => {
        if (ii === pathExt.length)
          return resolve4(step2(i4 + 1));
        const ext = pathExt[ii];
        isexe(p + ext, { pathExt: pathExtExe }, (er, is) => {
          if (!er && is) {
            if (opt.all)
              found.push(p + ext);
            else
              return resolve4(p + ext);
          }
          return resolve4(subStep(p, i4, 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 i4 = 0; i4 < pathEnv.length; i4++) {
        const ppRaw = pathEnv[i4];
        const pathPart = /^".*"$/.test(ppRaw) ? ppRaw.slice(1, -1) : ppRaw;
        const pCmd = path240.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;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/path-key/3.1.1/4524722710f23d5df14794bb9ac6310753022b2d064db4bf0dc53fac262d1422/node_modules/path-key/index.js
var require_path_key = __commonJS({
  "../../../../../setup-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 platform5 = options.platform || process.platform;
      if (platform5 !== "win32") {
        return "PATH";
      }
      return Object.keys(environment).reverse().find((key) => key.toUpperCase() === "PATH") || "Path";
    };
    module2.exports = pathKey2;
    module2.exports.default = pathKey2;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/cross-spawn/7.0.6/a0a7b60251bf98d42302e5b6167c5496ce00c1a1aae367d1dcd3d4eca3396349/node_modules/cross-spawn/lib/util/resolveCommand.js
var require_resolveCommand = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/cross-spawn/7.0.6/a0a7b60251bf98d42302e5b6167c5496ce00c1a1aae367d1dcd3d4eca3396349/node_modules/cross-spawn/lib/util/resolveCommand.js"(exports2, module2) {
    "use strict";
    var path240 = __require("path");
    var which4 = require_which();
    var getPathKey = require_path_key();
    function resolveCommandAttempt(parsed, withoutPathExt) {
      const env4 = 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 (err2) {
        }
      }
      let resolved;
      try {
        resolved = which4.sync(parsed.command, {
          path: env4[getPathKey({ env: env4 })],
          pathExt: withoutPathExt ? path240.delimiter : void 0
        });
      } catch (e) {
      } finally {
        if (shouldSwitchCwd) {
          process.chdir(cwd);
        }
      }
      if (resolved) {
        resolved = path240.resolve(hasCustomCwd ? parsed.options.cwd : "", resolved);
      }
      return resolved;
    }
    function resolveCommand(parsed) {
      return resolveCommandAttempt(parsed) || resolveCommandAttempt(parsed, true);
    }
    module2.exports = resolveCommand;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/cross-spawn/7.0.6/a0a7b60251bf98d42302e5b6167c5496ce00c1a1aae367d1dcd3d4eca3396349/node_modules/cross-spawn/lib/util/escape.js
var require_escape = __commonJS({
  "../../../../../setup-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;
  }
});

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

// ../../../../../setup-pnpm/store/v11/links/@/shebang-command/2.0.0/8a593e2b41a0b69672623125edc9ec47df5d5edc811fcc6220217417db76e3ce/node_modules/shebang-command/index.js
var require_shebang_command = __commonJS({
  "../../../../../setup-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 [path240, argument] = match[0].replace(/#! ?/, "").split(" ");
      const binary2 = path240.split("/").pop();
      if (binary2 === "env") {
        return argument;
      }
      return argument ? `${binary2} ${argument}` : binary2;
    };
  }
});

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

// ../../../../../setup-pnpm/store/v11/links/@/cross-spawn/7.0.6/a0a7b60251bf98d42302e5b6167c5496ce00c1a1aae367d1dcd3d4eca3396349/node_modules/cross-spawn/lib/parse.js
var require_parse5 = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/cross-spawn/7.0.6/a0a7b60251bf98d42302e5b6167c5496ce00c1a1aae367d1dcd3d4eca3396349/node_modules/cross-spawn/lib/parse.js"(exports2, module2) {
    "use strict";
    var path240 = __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 = path240.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 parse12(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 = parse12;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/cross-spawn/7.0.6/a0a7b60251bf98d42302e5b6167c5496ce00c1a1aae367d1dcd3d4eca3396349/node_modules/cross-spawn/lib/enoent.js
var require_enoent = __commonJS({
  "../../../../../setup-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 err2 = verifyENOENT(arg1, parsed);
          if (err2) {
            return originalEmit.call(cp, "error", err2);
          }
        }
        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
    };
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/cross-spawn/7.0.6/a0a7b60251bf98d42302e5b6167c5496ce00c1a1aae367d1dcd3d4eca3396349/node_modules/cross-spawn/index.js
var require_cross_spawn = __commonJS({
  "../../../../../setup-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 parse12 = require_parse5();
    var enoent = require_enoent();
    function spawn8(command, args, options) {
      const parsed = parse12(command, args, options);
      const spawned = cp.spawn(parsed.command, parsed.args, parsed.options);
      enoent.hookChildProcess(spawned, parsed);
      return spawned;
    }
    function spawnSync5(command, args, options) {
      const parsed = parse12(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 = spawn8;
    module2.exports.spawn = spawn8;
    module2.exports.sync = spawnSync5;
    module2.exports._parse = parse12;
    module2.exports._enoent = enoent;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@yarnpkg/shell/4.0.0/e4d3c97bc095084c4a5f406c57a310e03d671ac655e026cb36a0dacdf0a0ad6d/node_modules/@yarnpkg/shell/lib/pipe.js
var require_pipe = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@yarnpkg/shell/4.0.0/e4d3c97bc095084c4a5f406c57a310e03d671ac655e026cb36a0dacdf0a0ad6d/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, opts3, 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((resolve4) => {
            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}
`);
                    resolve4(127);
                  }
                  break;
                case `EACCES`:
                  {
                    stdio[2].write(`permission denied: ${name}
`);
                    resolve4(128);
                  }
                  break;
                default:
                  {
                    stdio[2].write(`uncaught error: ${error.message}
`);
                    resolve4(1);
                  }
                  break;
              }
            });
            child.on(`close`, (code) => {
              activeChildren.delete(child);
              if (activeChildren.size === 0) {
                process.off(`SIGINT`, sigintHandler);
                process.off(`SIGTERM`, sigtermHandler);
              }
              if (code !== null) {
                resolve4(code);
              } else {
                resolve4(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 pipe3 = new PipeStream();
        next2.pipe = pipe3;
        next2.stdout = this.stdout;
        next2.stderr = this.stderr;
        if ((source & Pipe.STDOUT) === Pipe.STDOUT)
          this.stdout = pipe3;
        else if (this.ancestor !== null)
          this.stderr = this.ancestor.stdout;
        if ((source & Pipe.STDERR) === Pipe.STDERR)
          this.stderr = pipe3;
        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, opts3) {
      return Handle.start(p, opts3);
    }
    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;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@yarnpkg/shell/4.0.0/e4d3c97bc095084c4a5f406c57a310e03d671ac655e026cb36a0dacdf0a0ad6d/node_modules/@yarnpkg/shell/lib/index.js
var require_lib5 = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@yarnpkg/shell/4.0.0/e4d3c97bc095084c4a5f406c57a310e03d671ac655e026cb36a0dacdf0a0ad6d/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_lib2();
    var parsers_1 = require_lib3();
    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_errors3();
    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(fd2, type4, state) {
      const stream2 = new stream_12.PassThrough({ autoDestroy: true });
      switch (fd2) {
        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: "${fd2}"`);
        }
      }
      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], opts3, state) => {
        const resolvedTarget = fslib_12.ppath.resolve(state.cwd, fslib_12.npath.toPortablePath(target2));
        const stat2 = await opts3.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, opts3, state) => {
        state.stdout.write(`${fslib_12.npath.fromPortablePath(state.cwd)}
`);
        return 0;
      }],
      [`:`, async (args, opts3, state) => {
        return 0;
      }],
      [`true`, async (args, opts3, state) => {
        return 0;
      }],
      [`false`, async (args, opts3, state) => {
        return 1;
      }],
      [`exit`, async ([code, ...rest], opts3, state) => {
        return state.exitCode = parseInt(code ?? state.variables[`?`], 10);
      }],
      [`echo`, async (args, opts3, state) => {
        state.stdout.write(`${args.join(` `)}
`);
        return 0;
      }],
      [`sleep`, async ([time], opts3, 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, opts3, 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, opts3, 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: fd2 } = JSON.parse(key);
          const pushInput = (readableFactory) => {
            switch (fd2) {
              case null:
              case 0:
                {
                  inputs.push(readableFactory);
                }
                break;
              default:
                throw new Error(`Unsupported file descriptor: "${fd2}"`);
            }
          };
          const pushOutput = (writable2) => {
            switch (fd2) {
              case null:
              case 1:
                {
                  outputs.push(writable2);
                }
                break;
              case 2:
                {
                  errors2.push(writable2);
                }
                break;
              default:
                throw new Error(`Unsupported file descriptor: "${fd2}"`);
            }
          };
          const count2 = Number(args[t2++]);
          const last = t2 + count2;
          for (let u2 = t2; u2 < last; ++t2, ++u2) {
            switch (type4) {
              case `<`:
                {
                  pushInput(() => {
                    return opts3.baseFs.createReadStream(fslib_12.ppath.resolve(state.cwd, fslib_12.npath.toPortablePath(args[u2])));
                  });
                }
                break;
              case `<<<`:
                {
                  pushInput(() => {
                    const input = new stream_12.PassThrough();
                    process.nextTick(() => {
                      input.write(`${args[u2]}
`);
                      input.end();
                    });
                    return input;
                  });
                }
                break;
              case `<&`:
                {
                  pushInput(() => getFileDescriptorStream(Number(args[u2]), StreamType.Readable, state));
                }
                break;
              case `>`:
              case `>>`:
                {
                  const outputPath = fslib_12.ppath.resolve(state.cwd, fslib_12.npath.toPortablePath(args[u2]));
                  if (outputPath === `/dev/null`) {
                    pushOutput(new stream_12.Writable({
                      autoDestroy: true,
                      emitClose: true,
                      write(chunk, encoding, callback2) {
                        setImmediate(callback2);
                      }
                    }));
                  } else {
                    pushOutput(opts3.baseFs.createWriteStream(outputPath, type4 === `>>` ? { flags: `a` } : void 0));
                  }
                }
                break;
              case `>&`:
                {
                  pushOutput(getFileDescriptorStream(Number(args[u2]), StreamType.Writable, state));
                }
                break;
              default: {
                throw new Error(`Assertion failed: Unsupported redirection type: "${type4}"`);
              }
            }
          }
        }
        if (inputs.length > 0) {
          const pipe3 = new stream_12.PassThrough();
          stdin = pipe3;
          const bindInput = (n2) => {
            if (n2 === inputs.length) {
              pipe3.end();
            } else {
              const input = inputs[n2]();
              input.pipe(pipe3, { end: false });
              input.on(`end`, () => {
                bindInput(n2 + 1);
              });
            }
          };
          bindInput(0);
        }
        if (outputs.length > 0) {
          const pipe3 = new stream_12.PassThrough();
          stdout = pipe3;
          for (const output of outputs) {
            pipe3.pipe(output);
          }
        }
        if (errors2.length > 0) {
          const pipe3 = new stream_12.PassThrough();
          stderr = pipe3;
          for (const error of errors2) {
            pipe3.pipe(error);
          }
        }
        const exitCode = await (0, pipe_2.start)(makeCommandAction(args.slice(t2 + 1), opts3, 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((resolve4, reject3) => {
            output.on(`error`, (error) => {
              reject3(error);
            });
            output.on(`close`, () => {
              resolve4();
            });
            output.end();
          });
        }));
        await Promise.all(errors2.map((err2) => {
          return new Promise((resolve4, reject3) => {
            err2.on(`error`, (error) => {
              reject3(error);
            });
            err2.on(`close`, () => {
              resolve4();
            });
            err2.end();
          });
        }));
        return exitCode;
      }]
    ]);
    async function executeBufferedSubshell(ast, opts3, state) {
      const chunks = [];
      const stdout = new stream_12.PassThrough();
      stdout.on(`data`, (chunk) => chunks.push(chunk));
      await executeShellLine(ast, opts3, cloneState(state, { stdout }));
      return Buffer.concat(chunks).toString().replace(/[\r\n]+$/, ``);
    }
    async function applyEnvVariables(environmentSegments, opts3, state) {
      const envPromises = environmentSegments.map(async (envSegment) => {
        const interpolatedArgs = await interpolateArguments(envSegment.args, opts3, state);
        return {
          name: envSegment.name,
          value: interpolatedArgs.join(` `)
        };
      });
      const interpolatedEnvs = await Promise.all(envPromises);
      return interpolatedEnvs.reduce((envs, env4) => {
        envs[env4.name] = env4.value;
        return envs;
      }, {});
    }
    function split4(raw) {
      return raw.match(/[^ \r\n\t]+/g) || [];
    }
    async function evaluateVariable(segment, opts3, state, push, pushAndClose = push) {
      switch (segment.name) {
        case `$`:
          {
            push(String(process.pid));
          }
          break;
        case `#`:
          {
            push(String(opts3.args.length));
          }
          break;
        case `@`:
          {
            if (segment.quoted) {
              for (const raw of opts3.args) {
                pushAndClose(raw);
              }
            } else {
              for (const raw of opts3.args) {
                const parts = split4(raw);
                for (let t2 = 0; t2 < parts.length - 1; ++t2)
                  pushAndClose(parts[t2]);
                push(parts[parts.length - 1]);
              }
            }
          }
          break;
        case `*`:
          {
            const raw = opts3.args.join(` `);
            if (segment.quoted) {
              push(raw);
            } else {
              for (const part of split4(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 < opts3.args.length) {
                raw = opts3.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, opts3, state)).join(` `);
            } else if (typeof raw === `undefined`) {
              if (segment.defaultValue) {
                raw = (await interpolateArguments(segment.defaultValue, opts3, 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 = split4(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, opts3, 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 }, opts3, state, (result2) => parts.push(result2));
        const number = Number(parts.join(` `));
        if (Number.isNaN(number)) {
          return evaluateArithmetic({ type: `variable`, name: parts.join(` `) }, opts3, state);
        } else {
          return evaluateArithmetic({ type: `number`, value: number }, opts3, state);
        }
      } else {
        return operators[arithmetic.type](await evaluateArithmetic(arithmetic.left, opts3, state), await evaluateArithmetic(arithmetic.right, opts3, state));
      }
    }
    async function interpolateArguments(commandArgs, opts3, 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, fd2, target2) => {
        const key = JSON.stringify({ type: type4, fd: fd2 });
        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, opts3, 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, opts3, state);
                      if (segment.quoted) {
                        push(raw);
                      } else {
                        const parts = split4(raw);
                        for (let t2 = 0; t2 < parts.length - 1; ++t2)
                          pushAndClose(parts[t2]);
                        push(parts[parts.length - 1]);
                      }
                    }
                    break;
                  case `variable`:
                    {
                      await evaluateVariable(segment, opts3, state, push, pushAndClose);
                    }
                    break;
                  case `arithmetic`:
                    {
                      push(String(await evaluateArithmetic(segment.arithmetic, opts3, 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 opts3.glob.match(pattern, { cwd: state.cwd, baseFs: opts3.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, opts3, state) {
      if (!opts3.builtins.has(args[0]))
        args = [`command`, ...args];
      const nativeCwd = fslib_12.npath.fromPortablePath(state.cwd);
      let env4 = state.environment;
      if (typeof env4.PWD !== `undefined`)
        env4 = { ...env4, PWD: nativeCwd };
      const [name, ...rest] = args;
      if (name === `command`) {
        return (0, pipe_1.makeProcess)(rest[0], rest.slice(1), opts3, {
          cwd: nativeCwd,
          env: env4
        });
      }
      const builtin = opts3.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, opts3, state);
        } finally {
          state.stdin = initialStdin;
          state.stdout = initialStdout;
          state.stderr = initialStderr;
        }
      });
    }
    function makeSubshellAction(ast, opts3, state) {
      return (stdio) => {
        const stdin = new stream_12.PassThrough();
        const promise2 = executeShellLine(ast, opts3, cloneState(state, { stdin }));
        return { stdin, promise: promise2 };
      };
    }
    function makeGroupAction(ast, opts3, state) {
      return (stdio) => {
        const stdin = new stream_12.PassThrough();
        const promise2 = executeShellLine(ast, opts3, state);
        return { stdin, promise: promise2 };
      };
    }
    function makeActionFromProcedure(procedure, args, opts3, 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], opts3, activeState);
      }
    }
    async function executeCommandChainImpl(node, opts3, 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, opts3, state);
              const environment = await applyEnvVariables(current.envs, opts3, state);
              action = current.envs.length ? makeCommandAction(args, opts3, cloneState(activeState, { environment })) : makeCommandAction(args, opts3, activeState);
            }
            break;
          case `subshell`:
            {
              const args = await interpolateArguments(current.args, opts3, state);
              const procedure = makeSubshellAction(current.subshell, opts3, activeState);
              action = makeActionFromProcedure(procedure, args, opts3, activeState);
            }
            break;
          case `group`:
            {
              const args = await interpolateArguments(current.args, opts3, state);
              const procedure = makeGroupAction(current.group, opts3, activeState);
              action = makeActionFromProcedure(procedure, args, opts3, activeState);
            }
            break;
          case `envs`:
            {
              const environment = await applyEnvVariables(current.envs, opts3, state);
              activeState.environment = { ...activeState.environment, ...environment };
              action = makeCommandAction([`true`], opts3, 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, opts3, state, { background = false } = {}) {
      function getColorizer(index2) {
        const colors = [`#2E86AB`, `#A23B72`, `#F18F01`, `#C73E1D`, `#CCE2A3`];
        const colorName = colors[index2 % colors.length];
        return chalk_1.default.hex(colorName);
      }
      if (background) {
        const index2 = state.nextBackgroundJobIndex++;
        const colorizer = getColorizer(index2);
        const rawPrefix = `[${index2}]`;
        const prefix = colorizer(rawPrefix);
        const { stdout, stderr } = (0, pipe_1.createOutputStreamsWithPrefix)(state, { prefix });
        state.backgroundJobs.push(executeCommandChainImpl(node, opts3, 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, opts3, state);
    }
    async function executeCommandLine(node, opts3, state, { background = false } = {}) {
      let code;
      const setCode = (newCode) => {
        code = newCode;
        state.variables[`?`] = String(newCode);
      };
      const executeChain = async (line) => {
        try {
          return await executeCommandChain(line.chain, opts3, 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, opts3, state) {
      const originalBackgroundJobs = state.backgroundJobs;
      state.backgroundJobs = [];
      let rightMostExitCode = 0;
      for (const { command, type: type4 } of node) {
        rightMostExitCode = await executeCommandLine(command, opts3, 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((env4) => env4.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: env4 = process.env, stdin = process.stdin, stdout = process.stdout, stderr = process.stderr, variables = {}, glob: glob2 = globUtils } = {}) {
      const normalizedEnv = {};
      for (const [key, value] of Object.entries(env4))
        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;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/uid-number/0.0.6/d04855dc85bbb4bcc22c591b5735c9bd66e0fa8a79beff5cdea8767cafefe83e/node_modules/uid-number/uid-number.js
var require_uid_number = __commonJS({
  "../../../../../setup-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 path240 = __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);
        }
      );
    }
  }
});

// ../../../../../setup-pnpm/store/v11/links/@pnpm/byline/1.0.0/fa6df58dc699ae6d0f94f2455b5df743180d224d978e80fd2cc83f13668114f0/node_modules/@pnpm/byline/lib/byline.js
var require_byline = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@pnpm/byline/1.0.0/fa6df58dc699ae6d0f94f2455b5df743180d224d978e80fd2cc83f13668114f0/node_modules/@pnpm/byline/lib/byline.js"(exports2, module2) {
    var stream2 = __require("stream");
    var util70 = __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;
          }
        }
      });
    }
    util70.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);
      }
    };
  }
});

// ../../../../../setup-pnpm/store/v11/links/@pnpm/constants/1001.3.1/d7b76e811dc62c15564a513225363643bbc754292ea30726cdf2c2b97b40fa97/node_modules/@pnpm/constants/lib/index.js
var require_lib6 = __commonJS({
  "../../../../../setup-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(platform5 = process.platform) {
      return platform5 === "win32" ? "node.exe" : "bin/node";
    }
    function getDenoBinLocationForCurrentOS2(platform5 = process.platform) {
      return platform5 === "win32" ? "deno.exe" : "deno";
    }
    function getBunBinLocationForCurrentOS2(platform5 = process.platform) {
      return platform5 === "win32" ? "bun.exe" : "bun";
    }
  }
});

// ../../../../../setup-pnpm/store/v11/links/@pnpm/error/1000.1.0/7615b54aca07fb65793d2c5b449f57748ccb32edf18b8276669c68d7b30266bb/node_modules/@pnpm/error/lib/index.js
var require_lib7 = __commonJS({
  "../../../../../setup-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_lib6();
    var PnpmError3 = class extends Error {
      code;
      hint;
      attempts;
      prefix;
      pkgsStack;
      constructor(code, message, opts3) {
        super(message, { cause: opts3?.cause });
        this.code = code.startsWith("ERR_PNPM_") ? code : `ERR_PNPM_${code}`;
        this.hint = opts3?.hint;
        this.attempts = opts3?.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;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/isexe/3.1.5/0a2a0bf2de536c3b901542b1e0bb2a1d073da4dce47f747114511f415dfa6d0a/node_modules/isexe/dist/commonjs/index.min.js
var require_index_min2 = __commonJS({
  "../../../../../setup-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((i4) => {
      "use strict";
      Object.defineProperty(i4, "__esModule", { value: true });
      i4.sync = i4.isexe = void 0;
      var M3 = __require("node:fs"), x3 = __require("node:fs/promises"), q = async (t2, e = {}) => {
        let { ignoreErrors: r = false } = e;
        try {
          return d3(await (0, x3.stat)(t2), e);
        } catch (s) {
          let n2 = s;
          if (r || n2.code === "EACCES") return false;
          throw n2;
        }
      };
      i4.isexe = q;
      var m = (t2, e = {}) => {
        let { ignoreErrors: r = false } = e;
        try {
          return d3((0, M3.statSync)(t2), e);
        } catch (s) {
          let n2 = s;
          if (r || n2.code === "EACCES") return false;
          throw n2;
        }
      };
      i4.sync = m;
      var d3 = (t2, e) => t2.isFile() && A2(t2, e), A2 = (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 u2 = /* @__PURE__ */ new Set([n2, ...s]), c3 = t2.mode, S3 = 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 && u2.has(P2) || c3 & f && S3 === 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"), I3 = __require("node:fs/promises"), D3 = __require("node:path"), F = async (t2, e = {}) => {
        let { ignoreErrors: r = false } = e;
        try {
          return y(await (0, I3.stat)(t2), t2, e);
        } catch (s) {
          let n2 = s;
          if (r || n2.code === "EACCES") return false;
          throw n2;
        }
      };
      o2.isexe = F;
      var L3 = (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 = L3;
      var B = (t2, e) => {
        let { pathExt: r = process.env.PATHEXT || "" } = e, s = r.split(D3.delimiter);
        if (s.indexOf("") !== -1) return true;
        for (let n2 of s) {
          let u2 = n2.toLowerCase(), c3 = t2.substring(t2.length - u2.length).toLowerCase();
          if (u2 && c3 === u2) 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 G3 = 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 G3(r, e), r;
      };
    })();
    var X2 = 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;
    X2(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;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/which/4.0.0/a609b205d6706d17c9118c7393eeed7b543c82ed7f1ccc19839c83a4cf09044e/node_modules/which/lib/index.js
var require_lib8 = __commonJS({
  "../../../../../setup-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: join5, 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 + join5(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;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@pnpm/npm-lifecycle/1100.0.0/ff78e43c853aec1b96afdbf0d3cffd4eb3a54b72fb7c08203ab5b8d48fe5f6c2/node_modules/@pnpm/npm-lifecycle/lib/extendPath.js
import fs2 from "fs";
import path4 from "path";
function extendPath(wd, originalPath, nodeGyp, opts3) {
  const pathArr = [...opts3.extraBinPaths || []];
  const p = wd.split(/[\\/]node_modules[\\/]/);
  let acc = path4.resolve(p.shift());
  pathArr.unshift(nodeGyp);
  p.forEach((pp) => {
    pathArr.unshift(path4.join(acc, "node_modules", ".bin"));
    acc = path4.join(acc, "node_modules", pp);
  });
  pathArr.unshift(path4.join(acc, "node_modules", ".bin"));
  if (shouldPrependCurrentNodeDirToPATH(opts3)) {
    pathArr.push(path4.dirname(process.execPath));
  }
  if (originalPath) pathArr.push(originalPath);
  return pathArr.join(process.platform === "win32" ? ";" : ":");
}
function shouldPrependCurrentNodeDirToPATH(opts3) {
  const cfgsetting = opts3.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_which.default.sync(path4.basename(process.execPath), { pathExt: isWindows15 ? ";" : ":" });
    isDifferentNodeInPath = fs2.realpathSync(process.execPath).toUpperCase() !== fs2.realpathSync(foundExecPath).toUpperCase();
  } catch (e) {
    isDifferentNodeInPath = true;
  }
  if (cfgsetting === "warn-only") {
    if (isDifferentNodeInPath && !shouldPrependCurrentNodeDirToPATH.hasWarned) {
      if (foundExecPath) {
        opts3.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 {
        opts3.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_which;
var init_extendPath = __esm({
  "../../../../../setup-pnpm/store/v11/links/@pnpm/npm-lifecycle/1100.0.0/ff78e43c853aec1b96afdbf0d3cffd4eb3a54b72fb7c08203ab5b8d48fe5f6c2/node_modules/@pnpm/npm-lifecycle/lib/extendPath.js"() {
    import_which = __toESM(require_lib8(), 1);
  }
});

// ../../../../../setup-pnpm/store/v11/links/@pnpm/npm-lifecycle/1100.0.0/ff78e43c853aec1b96afdbf0d3cffd4eb3a54b72fb7c08203ab5b8d48fe5f6c2/node_modules/@pnpm/npm-lifecycle/index.js
import path5 from "path";
import fs3 from "fs";
import { createRequire } from "module";
import { PassThrough } from "stream";
function logid(pkg, stage) {
  return `${pkg._id}~${stage}:`;
}
function hookStat(dir, stage, cb) {
  const hook = path5.join(dir, ".hooks", stage);
  const cachedStatError = hookStatCache.get(hook);
  if (cachedStatError === void 0) {
    return fs3.stat(hook, (statError) => {
      hookStatCache.set(hook, statError);
      cb(statError);
    });
  }
  return setImmediate(() => cb(cachedStatError));
}
function lifecycle(pkg, stage, wd, opts3) {
  return new Promise((resolve4, reject3) => {
    while (pkg && pkg._data) pkg = pkg._data;
    if (!pkg) return reject3(new Error("Invalid package data"));
    opts3.log.info("lifecycle", logid(pkg, stage), pkg._id);
    if (!pkg.scripts) pkg.scripts = {};
    if (stage === "prepublish" && opts3.ignorePrepublish) {
      opts3.log.info("lifecycle", logid(pkg, stage), "ignored because ignore-prepublish is set to true", pkg._id);
      delete pkg.scripts.prepublish;
    }
    hookStat(opts3.dir, stage, (statError) => {
      if (!pkg.scripts[stage] && statError) return resolve4();
      validWd(wd || path5.resolve(opts3.dir, pkg.name), (er, wd2) => {
        if (er) return reject3(er);
        const env4 = makeEnv(pkg, opts3);
        env4.npm_lifecycle_event = stage;
        env4.npm_node_execpath = env4.NODE = env4.NODE || process.execPath;
        env4.npm_package_json = path5.join(wd2, "package.json");
        if (process.pkg != null) {
          env4.npm_execpath = process.execPath;
        } else {
          env4.npm_execpath = process.argv[1] || process.cwd();
        }
        env4.INIT_CWD = process.cwd();
        env4.npm_config_node_gyp = env4.npm_config_node_gyp || DEFAULT_NODE_GYP_PATH;
        if (opts3.extraEnv) {
          for (const [key, value] of Object.entries(opts3.extraEnv)) {
            env4[key] = value;
          }
        }
        if (!opts3.unsafePerm) {
          const tmpdir = path5.join(wd2, "node_modules", ".tmp");
          try {
            fs3.mkdirSync(tmpdir, { recursive: true });
          } catch (err2) {
            if (err2.code !== "EEXIST") throw err2;
          }
          env4.TMPDIR = tmpdir;
        }
        lifecycle_(pkg, stage, wd2, opts3, env4, (er2) => {
          if (er2) return reject3(er2);
          return resolve4();
        });
      });
    });
  });
}
function lifecycle_(pkg, stage, wd, opts3, env4, cb) {
  env4[PATH] = extendPath(wd, env4[PATH], path5.join(import.meta.dirname, "node-gyp-bin"), opts3);
  let packageLifecycle = pkg.scripts && Object.prototype.hasOwnProperty.call(pkg.scripts, stage);
  if (opts3.ignoreScripts) {
    opts3.log.info("lifecycle", logid(pkg, stage), "ignored because ignore-scripts is set to true", pkg._id);
    packageLifecycle = false;
  } else if (packageLifecycle) {
    env4.npm_lifecycle_script = pkg.scripts[stage];
  } else {
    opts3.log.silly("lifecycle", logid(pkg, stage), `no script for ${stage}, continuing`);
  }
  function done(er) {
    if (er) {
      if (opts3.force) {
        opts3.log.info("lifecycle", logid(pkg, stage), "forced, continuing", er);
        er = null;
      } else if (opts3.failOk) {
        opts3.log.warn("lifecycle", logid(pkg, stage), "continuing anyway", er.message);
        er = null;
      }
    }
    cb(er);
  }
  const tasks = [
    packageLifecycle && [runPackageLifecycle, pkg, stage, env4, wd, opts3],
    [runHookLifecycle, pkg, stage, env4, wd, opts3]
  ];
  let i4 = 0;
  function next2(er) {
    if (er) return done(er);
    while (i4 < tasks.length) {
      const task = tasks[i4++];
      if (task) {
        const [fn, ...args] = task;
        fn(...args, next2);
        return;
      }
    }
    done();
  }
  next2();
}
function validWd(d3, cb) {
  fs3.stat(d3, (er, st) => {
    if (er || !st.isDirectory()) {
      const p = path5.dirname(d3);
      if (p === d3) {
        return cb(new Error("Could not find suitable wd"));
      }
      return validWd(p, cb);
    }
    return cb(null, d3);
  });
}
function runPackageLifecycle(pkg, stage, env4, wd, opts3, cb) {
  const cmd = env4.npm_lifecycle_script;
  runCmd(cmd, pkg, env4, stage, wd, opts3, cb);
}
function dequeue() {
  running2 = false;
  if (queue.length) {
    const r = queue.shift();
    runCmd.apply(null, r);
  }
}
function runCmd(cmd, pkg, env4, stage, wd, opts3, cb) {
  if (opts3.runConcurrently !== true) {
    if (running2) {
      queue.push([cmd, pkg, env4, stage, wd, opts3, cb]);
      return;
    }
    running2 = true;
  }
  opts3.log.pause();
  let unsafe2 = opts3.unsafePerm;
  const user = unsafe2 ? null : opts3.user;
  const group = unsafe2 ? null : opts3.group;
  opts3.log.verbose("lifecycle", logid(pkg, stage), "unsafe-perm in lifecycle", unsafe2);
  if (process.platform === "win32") {
    unsafe2 = true;
  }
  if (unsafe2) {
    runCmd_(cmd, pkg, env4, wd, opts3, stage, unsafe2, 0, 0, cb);
  } else {
    (0, import_uid_number.default)(user, group, (er, uid, gid) => {
      runCmd_(cmd, pkg, env4, wd, opts3, stage, unsafe2, uid, gid, cb);
    });
  }
}
function runCmd_(cmd, pkg, env4, wd, opts3, stage, unsafe2, uid, gid, cb_) {
  function cb(er) {
    cb_.apply(null, arguments);
    opts3.log.resume();
    process.nextTick(dequeue);
  }
  const conf = {
    cwd: wd,
    env: env4,
    stdio: opts3.stdio || [0, 1, 2]
  };
  if (!unsafe2) {
    conf.uid = uid ^ 0;
    conf.gid = gid ^ 0;
  }
  let sh = "sh";
  let shFlag = "-c";
  const customShell = opts3.scriptShell;
  if (customShell) {
    sh = customShell;
  } else if (process.platform === "win32") {
    sh = process.env.comspec || "cmd";
    shFlag = "/d /s /c";
    conf.windowsVerbatimArguments = true;
  }
  opts3.log.verbose("lifecycle", logid(pkg, stage), "PATH:", env4[PATH]);
  opts3.log.verbose("lifecycle", logid(pkg, stage), "CWD:", wd);
  opts3.log.silly("lifecycle", logid(pkg, stage), "Args:", [shFlag, cmd]);
  if (opts3.shellEmulator) {
    const execOpts = { cwd: import_fslib.npath.toPortablePath(wd), env: env4 };
    if (opts3.stdio === "pipe") {
      const stdout = new PassThrough();
      const stderr = new PassThrough();
      (0, import_byline.default)(stdout).on("data", (data) => {
        opts3.log.verbose("lifecycle", logid(pkg, stage), "stdout", data.toString());
      });
      (0, import_byline.default)(stderr).on("data", (data) => {
        opts3.log.verbose("lifecycle", logid(pkg, stage), "stderr", data.toString());
      });
      execOpts.stdout = stdout;
      execOpts.stderr = stderr;
    }
    (0, import_shell.execute)(cmd, [], execOpts).then((code) => {
      opts3.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((err2) => procError(err2));
    return;
  }
  const proc = spawn(sh, [shFlag, cmd], conf, opts3.log);
  proc.on("error", procError);
  proc.on("close", (code, signal) => {
    opts3.log.silly("lifecycle", logid(pkg, stage), "Returned: code:", code, " signal:", signal);
    let err2;
    if (signal) {
      err2 = new import_error3.PnpmError("CHILD_PROCESS_FAILED", `Command failed with signal "${signal}"`);
      process.kill(process.pid, signal);
    } else if (code) {
      err2 = new import_error3.PnpmError("CHILD_PROCESS_FAILED", `Exit status ${code}`);
      err2.errno = code;
    }
    procError(err2);
  });
  (0, import_byline.default)(proc.stdout).on("data", (data) => {
    opts3.log.verbose("lifecycle", logid(pkg, stage), "stdout", data.toString());
  });
  (0, import_byline.default)(proc.stderr).on("data", (data) => {
    opts3.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) {
      opts3.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";
      }
      fs3.stat(opts3.dir, (statError) => {
        if (statError && statError.code === "ENOENT" && opts3.dir.split(path5.sep).slice(-1)[0] === "node_modules") {
          opts3.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, env4, wd, opts3, cb) {
  hookStat(opts3.dir, stage, (er) => {
    if (er) return cb();
    const cmd = path5.join(opts3.dir, ".hooks", stage);
    runCmd(cmd, pkg, env4, stage, wd, opts3, cb);
  });
}
function makeEnv(data, opts3, prefix, env4) {
  prefix = prefix || "npm_package_";
  if (!env4) {
    env4 = {};
    for (const i4 in process.env) {
      if (!i4.match(/^npm_package_/) && !i4.match(/^(npm|pnpm)_config_([/@_]|.*:_)/) && (!i4.match(/^PATH$/i) || i4 === PATH)) {
        env4[i4] = process.env[i4];
      }
    }
    if (opts3.production) env4.NODE_ENV = "production";
  } else if (!Object.prototype.hasOwnProperty.call(data, "_lifecycleEnv")) {
    Object.defineProperty(
      data,
      "_lifecycleEnv",
      {
        value: env4,
        enumerable: false
      }
    );
  }
  if (opts3.nodeOptions) env4.NODE_OPTIONS = opts3.nodeOptions;
  for (const i4 in data) {
    if (i4.charAt(0) !== "_") {
      const envKey = (prefix + i4).replace(/[^a-zA-Z0-9_]/g, "_");
      if (!["name", "version", "config", "engines", "bin"].includes(i4) && !prefix.startsWith("npm_package_config_") && !prefix.startsWith("npm_package_engines_") && !prefix.startsWith("npm_package_bin_")) {
        continue;
      }
      if (data[i4] && typeof data[i4] === "object") {
        try {
          JSON.stringify(data[i4]);
          makeEnv(data[i4], opts3, `${envKey}_`, env4);
        } catch (ex) {
          const d3 = data[i4];
          makeEnv(
            { name: d3.name, version: d3.version, path: d3.path },
            opts3,
            `${envKey}_`,
            env4
          );
        }
      } else {
        env4[envKey] = String(data[i4]);
        env4[envKey] = env4[envKey].includes("\n") ? JSON.stringify(env4[envKey]) : env4[envKey];
      }
    }
  }
  return env4;
}
var import_shell, import_fslib, import_uid_number, import_byline, import_error3, require2, DEFAULT_NODE_GYP_PATH, hookStatCache, PATH, running2, queue;
var init_npm_lifecycle = __esm({
  "../../../../../setup-pnpm/store/v11/links/@pnpm/npm-lifecycle/1100.0.0/ff78e43c853aec1b96afdbf0d3cffd4eb3a54b72fb7c08203ab5b8d48fe5f6c2/node_modules/@pnpm/npm-lifecycle/index.js"() {
    init_spawn();
    import_shell = __toESM(require_lib5(), 1);
    import_fslib = __toESM(require_lib2(), 1);
    import_uid_number = __toESM(require_uid_number(), 1);
    import_byline = __toESM(require_byline(), 1);
    import_error3 = __toESM(require_lib7(), 1);
    init_extendPath();
    require2 = createRequire(import.meta.url);
    try {
      DEFAULT_NODE_GYP_PATH = require2.resolve("node-gyp/bin/node-gyp");
    } catch (err2) {
    }
    hookStatCache = /* @__PURE__ */ new Map();
    PATH = "PATH";
    if (process.platform === "win32") {
      PATH = "Path";
      Object.keys(process.env).forEach((e) => {
        if (e.match(/^PATH$/i)) {
          PATH = e;
        }
      });
    }
    running2 = false;
    queue = [];
  }
});

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

// ../../../../../setup-pnpm/store/v11/links/@/chalk/6.0.0/cd2a556d0256a46f7c89b1088cd2f3657ac9728a34c820a160c07a6357e19b00/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(Number.parseInt(style[0], 10), 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.underlineColor.close = "\x1B[59m";
  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);
  styles.underlineColor.ansi = wrapUnderlineAnsi;
  styles.underlineColor.ansi256 = wrapAnsi256(ANSI_UNDERLINE_OFFSET);
  styles.underlineColor.ansi16m = wrapAnsi16m(ANSI_UNDERLINE_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 = /[\da-f]{6}|[\da-f]{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 -- We need the speed */
          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, ANSI_UNDERLINE_OFFSET, wrapAnsi16, wrapAnsi256, wrapAnsi16m, wrapUnderlineAnsi, styles, modifierNames, foregroundColorNames, backgroundColorNames, underlineColorNames, colorNames, ansiStyles, ansi_styles_default;
var init_ansi_styles = __esm({
  "../../../../../setup-pnpm/store/v11/links/@/chalk/6.0.0/cd2a556d0256a46f7c89b1088cd2f3657ac9728a34c820a160c07a6357e19b00/node_modules/chalk/source/vendor/ansi-styles/index.js"() {
    ANSI_BACKGROUND_OFFSET = 10;
    ANSI_UNDERLINE_OFFSET = 20;
    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`;
    wrapUnderlineAnsi = (code) => `\x1B[58;5;${code < 90 ? code - 30 : code - 90 + 8}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],
        // Extended underline styles (`SGR 4:x` sub-parameters). Not in upstream `ansi-styles`.
        underlineDouble: ["4:2", 24],
        underlineCurly: ["4:3", 24],
        underlineDotted: ["4:4", 24],
        underlineDashed: ["4:5", 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]
      },
      // Underline color (`SGR 58`/`59`). Not in upstream `ansi-styles`.
      underlineColor: {
        underlineBlack: ["58;5;0", 59],
        underlineRed: ["58;5;1", 59],
        underlineGreen: ["58;5;2", 59],
        underlineYellow: ["58;5;3", 59],
        underlineBlue: ["58;5;4", 59],
        underlineMagenta: ["58;5;5", 59],
        underlineCyan: ["58;5;6", 59],
        underlineWhite: ["58;5;7", 59],
        // Bright color
        underlineBlackBright: ["58;5;8", 59],
        underlineGray: ["58;5;8", 59],
        // Alias of `underlineBlackBright`
        underlineGrey: ["58;5;8", 59],
        // Alias of `underlineBlackBright`
        underlineRedBright: ["58;5;9", 59],
        underlineGreenBright: ["58;5;10", 59],
        underlineYellowBright: ["58;5;11", 59],
        underlineBlueBright: ["58;5;12", 59],
        underlineMagentaBright: ["58;5;13", 59],
        underlineCyanBright: ["58;5;14", 59],
        underlineWhiteBright: ["58;5;15", 59]
      }
    };
    modifierNames = Object.keys(styles.modifier);
    foregroundColorNames = Object.keys(styles.color);
    backgroundColorNames = Object.keys(styles.bgColor);
    underlineColorNames = Object.keys(styles.underlineColor);
    colorNames = [...foregroundColorNames, ...backgroundColorNames];
    ansiStyles = assembleStyles();
    ansi_styles_default = ansiStyles;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/chalk/6.0.0/cd2a556d0256a46f7c89b1088cd2f3657ac9728a34c820a160c07a6357e19b00/node_modules/chalk/source/vendor/supports-color/index.js
import process2 from "node:process";
import os2 from "node:os";
import tty from "node:tty";
function hasFlag(flag, argv2 = globalThis.Deno ? globalThis.Deno.args : process2.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 hasNumericForceColor() {
  return /^\d+$/.test(env.FORCE_COLOR);
}
function envForceColor() {
  if (!("FORCE_COLOR" in env)) {
    return;
  }
  if (env.FORCE_COLOR === "false") {
    return 0;
  }
  if (env.FORCE_COLOR === "true" || env.FORCE_COLOR.length === 0) {
    return 1;
  }
  if (!hasNumericForceColor()) {
    return;
  }
  return 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 (forceColor !== void 0 && hasNumericForceColor()) {
    return forceColor;
  }
  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 (process2.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(".", 1)[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({
  "../../../../../setup-pnpm/store/v11/links/@/chalk/6.0.0/cd2a556d0256a46f7c89b1088cd2f3657ac9728a34c820a160c07a6357e19b00/node_modules/chalk/source/vendor/supports-color/index.js"() {
    ({ env } = process2);
    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: tty.isatty(1) }),
      stderr: createSupportsColor({ isTTY: tty.isatty(2) })
    };
    supports_color_default = supportsColor;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/chalk/6.0.0/cd2a556d0256a46f7c89b1088cd2f3657ac9728a34c820a160c07a6357e19b00/node_modules/chalk/source/index.js
function createChalk(options) {
  return chalkFactory(options);
}
var stdoutColor, stderrColor, GENERATOR, STYLER, IS_EMPTY, LEVEL, styles2, assertValidLevel, levelDescriptor, applyOptions, chalkFactory, createModelConverters, usedModels, proto, createStyler, createBuilder, applyStyle, chalk, chalkStderr, source_default;
var init_source = __esm({
  "../../../../../setup-pnpm/store/v11/links/@/chalk/6.0.0/cd2a556d0256a46f7c89b1088cd2f3657ac9728a34c820a160c07a6357e19b00/node_modules/chalk/source/index.js"() {
    init_utilities();
    init_ansi_styles();
    init_supports_color();
    ({ stdout: stdoutColor, stderr: stderrColor } = supports_color_default);
    GENERATOR = /* @__PURE__ */ Symbol("GENERATOR");
    STYLER = /* @__PURE__ */ Symbol("STYLER");
    IS_EMPTY = /* @__PURE__ */ Symbol("IS_EMPTY");
    LEVEL = /* @__PURE__ */ Symbol("LEVEL");
    styles2 = /* @__PURE__ */ Object.create(null);
    assertValidLevel = (level) => {
      if (!Number.isSafeInteger(level) || level < 0 || level > 3) {
        throw new Error("The `level` should be an integer from 0 to 3");
      }
    };
    levelDescriptor = {
      enumerable: true,
      get() {
        return this[LEVEL];
      },
      set(level) {
        assertValidLevel(level);
        this[LEVEL] = level;
      }
    };
    applyOptions = (object, options = {}) => {
      if (options.level !== void 0) {
        assertValidLevel(options.level);
      }
      const colorLevel = stdoutColor ? stdoutColor.level : 0;
      object[LEVEL] = options.level === void 0 ? colorLevel : options.level;
    };
    chalkFactory = (options) => {
      const chalk3 = (...strings2) => strings2.join(" ");
      applyOptions(chalk3, options);
      Object.setPrototypeOf(chalk3, createChalk.prototype);
      return chalk3;
    };
    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;
      }
    };
    createModelConverters = (model, type4) => {
      const style = ansi_styles_default[type4];
      if (model === "rgb") {
        const ansi2 = (red2, green2, blue2) => style.ansi(ansi_styles_default.rgbToAnsi(red2, green2, blue2));
        const ansi256 = (red2, green2, blue2) => style.ansi256(ansi_styles_default.rgbToAnsi256(red2, green2, blue2));
        return [ansi2, ansi2, ansi256, style.ansi16m];
      }
      if (model === "hex") {
        const ansi2 = (hex) => style.ansi(ansi_styles_default.hexToAnsi(hex));
        const ansi256 = (hex) => style.ansi256(ansi_styles_default.hexToAnsi256(hex));
        return [ansi2, ansi2, ansi256, (hex) => style.ansi16m(...ansi_styles_default.hexToRgb(hex))];
      }
      const ansi = (code) => style.ansi(ansi_styles_default.ansi256ToAnsi(code));
      return [ansi, ansi, style.ansi256, style.ansi256];
    };
    usedModels = ["rgb", "hex", "ansi256"];
    for (const model of usedModels) {
      const capitalizedModel = model[0].toUpperCase() + model.slice(1);
      for (const [styleName, type4] of [
        [model, "color"],
        ["bg" + capitalizedModel, "bgColor"],
        ["underline" + capitalizedModel, "underlineColor"]
      ]) {
        const { close } = ansi_styles_default[type4];
        const converters = createModelConverters(model, type4);
        styles2[styleName] = {
          get() {
            const styleFunction = function(first, second, third) {
              const open3 = converters[this.level](first, second, third);
              return createBuilder(this, createStyler(open3, close, this[STYLER]), this[IS_EMPTY]);
            };
            Object.defineProperty(this, styleName, { value: styleFunction });
            return styleFunction;
          }
        };
      }
    }
    proto = Object.defineProperties(
      () => {
      },
      {
        ...styles2,
        level: {
          enumerable: true,
          get() {
            return this[GENERATOR].level;
          },
          set(level) {
            this[GENERATOR].level = level;
          }
        }
      }
    );
    createStyler = (open3, close, parent) => {
      let openAll;
      let closeAll;
      if (parent === void 0) {
        openAll = open3;
        closeAll = close;
      } else {
        openAll = parent.openAll + open3;
        closeAll = close + parent.closeAll;
      }
      return {
        open: open3,
        close,
        openAll,
        closeAll,
        parent
      };
    };
    createBuilder = (self2, _styler, _isEmpty) => {
      const builder = (...arguments_) => {
        if (arguments_.length === 1) {
          return applyStyle(builder, "" + arguments_[0]);
        }
        if (arguments_.length === 2) {
          return applyStyle(builder, arguments_[0] + " " + arguments_[1]);
        }
        return applyStyle(builder, arguments_.join(" "));
      };
      Object.setPrototypeOf(builder, proto);
      builder[GENERATOR] = self2[GENERATOR] ?? self2;
      builder[STYLER] = _styler;
      builder[IS_EMPTY] = _isEmpty;
      return builder;
    };
    applyStyle = (self2, string) => {
      if (self2[GENERATOR][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, level: levelDescriptor });
    chalk = createChalk();
    chalkStderr = createChalk({ level: stderrColor ? stderrColor.level : 0 });
    source_default = chalk;
  }
});

// ../../../../../setup-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({
  "../../../../../setup-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 path6 from "node:path";
function noop() {
}
async function runLifecycleHook(stage, manifest, opts3) {
  const optional = opts3.optional === true;
  if (opts3.scriptShell != null && typeof opts3.scriptShell === "string" && isWindowsBatchFile(opts3.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(opts3.pkgRoot, m.scripts);
      }
      break;
  }
  if (opts3.args?.length && m.scripts?.[stage]) {
    const escapedArgs = (0, import_is_windows2.default)() ? opts3.args.map((arg) => JSON.stringify(arg)).join(" ") : join(opts3.args);
    m.scripts[stage] = `${m.scripts[stage]} ${escapedArgs}`;
  }
  if (m.scripts[stage] === "npx only-allow pnpm" || !m.scripts[stage])
    return false;
  if (opts3.stdio !== "inherit") {
    lifecycleLogger.debug({
      depPath: opts3.depPath,
      optional,
      script: m.scripts[stage],
      stage,
      wd: opts3.pkgRoot
    });
  } else if (!opts3.silent) {
    process.stderr.write(source_default.dim(`$ ${m.scripts[stage]}`) + "\n");
  }
  const logLevel = opts3.stdio !== "inherit" || opts3.silent ? "silent" : void 0;
  await lifecycle(m, stage, opts3.pkgRoot, {
    config: {},
    dir: opts3.rootModulesDir,
    extraBinPaths: opts3.extraBinPaths,
    extraEnv: {
      ...opts3.extraEnv,
      INIT_CWD: opts3.initCwd ?? process.cwd(),
      PNPM_SCRIPT_SRC_DIR: opts3.pkgRoot,
      ...opts3.userAgent ? { npm_config_user_agent: opts3.userAgent } : {}
    },
    log: {
      clearProgress: noop,
      info: noop,
      level: logLevel,
      pause: noop,
      resume: noop,
      showProgress: noop,
      silly: npmLog,
      verbose: npmLog,
      warn: (...msg) => {
        globalWarn(msg.join(" "));
      }
    },
    runConcurrently: true,
    scriptsPrependNodePath: opts3.scriptsPrependNodePath,
    scriptShell: opts3.scriptShell,
    shellEmulator: opts3.shellEmulator,
    stdio: opts3.stdio ?? "pipe",
    unsafePerm: opts3.unsafePerm
  });
  return true;
  function npmLog(prefix, logId, stdtype, line) {
    switch (stdtype) {
      case "stdout":
      case "stderr":
        lifecycleLogger.debug({
          depPath: opts3.depPath,
          line: (line ?? 0).toString(),
          stage,
          stdio: stdtype,
          wd: opts3.pkgRoot
        });
        return;
      case "Returned: code:": {
        if (opts3.stdio === "inherit") {
          return;
        }
        const code = line ?? 1;
        lifecycleLogger.debug({
          depPath: opts3.depPath,
          exitCode: code,
          optional,
          stage,
          wd: opts3.pkgRoot
        });
      }
    }
  }
}
function checkBindingGyp(root, scripts) {
  if (existsSync(path6.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_windows2.default)() && (scriptShellLower.endsWith(".cmd") || scriptShellLower.endsWith(".bat"));
}
var import_is_windows2;
var init_runLifecycleHook = __esm({
  "../exec/lifecycle/lib/runLifecycleHook.js"() {
    "use strict";
    init_lib6();
    init_lib2();
    init_lib3();
    init_npm_lifecycle();
    init_source();
    import_is_windows2 = __toESM(require_is_windows(), 1);
    init_shlex();
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/better-path-resolve/2.0.0/e066f8a0a157777f698ec4707dc0026edc830ea8827eeb29a3d32906ea207d48/node_modules/better-path-resolve/index.js
import path7 from "node:path";
function winResolve(p) {
  if (arguments.length === 0) return path7.resolve();
  if (typeof p !== "string") {
    return path7.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 path7.resolve(p);
}
var import_is_windows3, betterPathResolve;
var init_better_path_resolve = __esm({
  "../../../../../setup-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 : path7.resolve;
  }
});

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

// ../../../../../setup-pnpm/store/v11/links/@/fdir/6.5.0/92cef02bb7338ec6f865927f0ad397886bc8d20cc74f1aee86f8d27eae78fb28/node_modules/fdir/dist/index.mjs
import { createRequire as createRequire2 } from "module";
import { basename, dirname, normalize, relative, resolve, sep } from "path";
import * as nativeFs from "fs";
function cleanPath(path240) {
  let normalized = normalize(path240);
  if (normalized.length > 1 && normalized[normalized.length - 1] === sep) normalized = normalized.substring(0, normalized.length - 1);
  return normalized;
}
function convertSlashes(path240, separator) {
  return path240.replace(SLASHES_REGEX, separator);
}
function isRootDirectory(path240) {
  return path240 === "/" || WINDOWS_ROOT_DIR_REGEX.test(path240);
}
function normalizePath(path240, options) {
  const { resolvePaths, normalizePath: normalizePath$1, pathSeparator } = options;
  const pathNeedsCleaning = process.platform === "win32" && path240.includes("/") || path240.startsWith(".");
  if (resolvePaths) path240 = resolve(path240);
  if (normalizePath$1 || pathNeedsCleaning) path240 = cleanPath(path240);
  if (path240 === ".") return "";
  const needsSeperator = path240[path240.length - 1] !== pathSeparator;
  return convertSlashes(needsSeperator ? path240 + pathSeparator : path240, 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 relativePath2 = directoryPath.substring(root.length) || ".";
    if (filters.every((filter14) => filter14(relativePath2, true))) paths3.push(relativePath2);
  };
}
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 : empty;
}
function build$2(options, isSynchronous) {
  if (!options.resolveSymlinks || options.excludeSymlinks) return null;
  return isSynchronous ? resolveSymlinks : resolveSymlinksAsync;
}
function isRecursive(path240, resolved, state) {
  if (state.options.useRealPaths) return isRecursiveUsingRealPaths(resolved, state);
  let parent = dirname(path240);
  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(path240, 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, (err2, output) => {
      if (err2) return reject3(err2);
      resolve$1(output);
    });
  });
}
function callback(root, options, callback$1) {
  let walker = new Walker(root, options, callback$1);
  walker.start();
}
function sync(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, empty, resolveSymlinksAsync, resolveSymlinks, onlyCountsSync, groupsSync, defaultSync, limitFilesSync, onlyCountsAsync, defaultAsync, limitFilesAsync, groupsAsync, readdirOpts, walkAsync, walkSync, Queue2, Counter, Aborter, Walker, APIBuilder, pm, Builder;
var init_dist = __esm({
  "../../../../../setup-pnpm/store/v11/links/@/fdir/6.5.0/92cef02bb7338ec6f865927f0ad397886bc8d20cc74f1aee86f8d27eae78fb28/node_modules/fdir/dist/index.mjs"() {
    __require2 = /* @__PURE__ */ createRequire2(import.meta.url);
    SLASHES_REGEX = /[\\/]/g;
    WINDOWS_ROOT_DIR_REGEX = /^[a-z]:[\\/]$/i;
    pushDirectory = (directoryPath, paths3) => {
      paths3.push(directoryPath || ".");
    };
    pushDirectoryFilter = (directoryPath, paths3, filters) => {
      const path240 = directoryPath || ".";
      if (filters.every((filter14) => filter14(path240, true))) paths3.push(path240);
    };
    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
      });
    };
    empty = () => {
    };
    resolveSymlinksAsync = function(path240, state, callback$1) {
      const { queue: queue2, fs: fs131, options: { suppressErrors } } = state;
      queue2.enqueue();
      fs131.realpath(path240, (error, resolvedPath) => {
        if (error) return queue2.dequeue(suppressErrors ? null : error, state);
        fs131.stat(resolvedPath, (error$1, stat2) => {
          if (error$1) return queue2.dequeue(suppressErrors ? null : error$1, state);
          if (stat2.isDirectory() && isRecursive(path240, resolvedPath, state)) return queue2.dequeue(null, state);
          callback$1(stat2, resolvedPath);
          queue2.dequeue(null, state);
        });
      });
    };
    resolveSymlinks = function(path240, state, callback$1) {
      const { queue: queue2, fs: fs131, options: { suppressErrors } } = state;
      queue2.enqueue();
      try {
        const resolvedPath = fs131.realpathSync(path240);
        const stat2 = fs131.statSync(resolvedPath);
        if (stat2.isDirectory() && isRecursive(path240, 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: fs131 } = state;
      state.visited.push(crawlPath);
      state.counts.directories++;
      fs131.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: fs131 } = state;
      if (currentDepth < 0) return;
      state.visited.push(crawlPath);
      state.counts.directories++;
      let entries = [];
      try {
        entries = fs131.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 i4 = 0; i4 < entries.length; ++i4) {
          const entry = entries[i4];
          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 path240 = joinDirectoryPath(entry.name, directoryPath, this.state.options.pathSeparator);
            if (exclude && exclude(entry.name, path240)) continue;
            this.pushDirectory(path240, paths3, filters);
            this.walkDirectory(this.state, path240, path240, depth - 1, this.walk);
          } else if (this.resolveSymlink && entry.isSymbolicLink()) {
            let path240 = joinPathWithBasePath(entry.name, directoryPath);
            this.resolveSymlink(path240, this.state, (stat2, resolvedPath) => {
              if (stat2.isDirectory()) {
                resolvedPath = normalizePath(resolvedPath, this.state.options);
                if (exclude && exclude(entry.name, useRealPaths ? resolvedPath : path240 + pathSeparator)) return;
                this.walkDirectory(this.state, resolvedPath, useRealPaths ? resolvedPath : path240 + pathSeparator, depth - 1, this.walk);
              } else {
                resolvedPath = useRealPaths ? resolvedPath : path240;
                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 sync(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((path240) => isMatch(path240));
        return this;
      }
    };
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/picomatch/4.0.5/b8dea5617f0d4573a84f4dd7127438bc2998da20025ab7c9668f49b248d777a8/node_modules/picomatch/lib/constants.js
var require_constants7 = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/picomatch/4.0.5/b8dea5617f0d4573a84f4dd7127438bc2998da20025ab7c9668f49b248d777a8/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;
      }
    };
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/picomatch/4.0.5/b8dea5617f0d4573a84f4dd7127438bc2998da20025ab7c9668f49b248d777a8/node_modules/picomatch/lib/utils.js
var require_utils6 = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/picomatch/4.0.5/b8dea5617f0d4573a84f4dd7127438bc2998da20025ab7c9668f49b248d777a8/node_modules/picomatch/lib/utils.js"(exports2) {
    "use strict";
    var {
      REGEX_BACKSLASH,
      REGEX_REMOVE_BACKSLASH,
      REGEX_SPECIAL_CHARS,
      REGEX_SPECIAL_CHARS_GLOBAL
    } = require_constants7();
    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 platform5 = navigator.platform.toLowerCase();
        return platform5 === "win32" || platform5 === "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 = (path240, { windows } = {}) => {
      const segs = path240.split(windows ? /[\\/]/ : "/");
      const last = segs[segs.length - 1];
      if (last === "") {
        return segs[segs.length - 2];
      }
      return last;
    };
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/picomatch/4.0.5/b8dea5617f0d4573a84f4dd7127438bc2998da20025ab7c9668f49b248d777a8/node_modules/picomatch/lib/scan.js
var require_scan3 = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/picomatch/4.0.5/b8dea5617f0d4573a84f4dd7127438bc2998da20025ab7c9668f49b248d777a8/node_modules/picomatch/lib/scan.js"(exports2, module2) {
    "use strict";
    var utils = require_utils6();
    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_constants7();
    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 opts3 = options || {};
      const length = input.length - 1;
      const scanToEnd = opts3.parts === true || opts3.scanToEnd === true;
      const slashes = [];
      const tokens = [];
      const parts = [];
      let str2 = input;
      let index2 = -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 = () => index2 >= length;
      const peek = () => str2.charCodeAt(index2 + 1);
      const advance = () => {
        prev = code;
        return str2.charCodeAt(++index2);
      };
      while (index2 < 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(index2);
          tokens.push(token);
          token = { value: "", depth: 0, isGlob: false };
          if (finished7 === true) continue;
          if (prev === CHAR_DOT && index2 === start + 1) {
            start += 2;
            continue;
          }
          lastIndex = index2 + 1;
          continue;
        }
        if (opts3.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 && index2 === 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 (opts3.nonegate !== true && code === CHAR_EXCLAMATION_MARK && index2 === start) {
          negated = token.negated = true;
          start++;
          continue;
        }
        if (opts3.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 (opts3.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 (opts3.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 (opts3.tokens === true) {
        state.maxDepth = 0;
        if (!isPathSeparator(code)) {
          tokens.push(token);
        }
        state.tokens = tokens;
      }
      if (opts3.parts === true || opts3.tokens === true) {
        let prevIndex;
        for (let idx = 0; idx < slashes.length; idx++) {
          const n2 = prevIndex ? prevIndex + 1 : start;
          const i4 = slashes[idx];
          const value = input.slice(n2, i4);
          if (opts3.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 = i4;
        }
        if (prevIndex && prevIndex + 1 < input.length) {
          const value = input.slice(prevIndex + 1);
          parts.push(value);
          if (opts3.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;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/picomatch/4.0.5/b8dea5617f0d4573a84f4dd7127438bc2998da20025ab7c9668f49b248d777a8/node_modules/picomatch/lib/parse.js
var require_parse6 = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/picomatch/4.0.5/b8dea5617f0d4573a84f4dd7127438bc2998da20025ab7c9668f49b248d777a8/node_modules/picomatch/lib/parse.js"(exports2, module2) {
    "use strict";
    var constants6 = require_constants7();
    var utils = require_utils6();
    var {
      MAX_LENGTH,
      POSIX_REGEX_SOURCE,
      REGEX_NON_SPECIAL_CHARS,
      REGEX_SPECIAL_CHARS_BACKREF,
      REPLACEMENTS
    } = constants6;
    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 i4 = 0; i4 < values.length; i4++) {
        for (let j2 = i4 + 1; j2 < values.length; j2++) {
          const a2 = values[i4];
          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 i4 = 1; i4 < pattern.length; i4++) {
        const ch = pattern[i4];
        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 && i4 !== pattern.length - 1) {
              return;
            }
            return {
              type: pattern[0],
              body: pattern.slice(2, i4),
              end: i4
            };
          }
        }
      }
    };
    var buildCharClassStar = (chars) => {
      const source = chars.length === 1 ? utils.escapeRegex(chars[0]) : `[${chars.map((ch) => utils.escapeRegex(ch)).join("")}]`;
      return `${source}*`;
    };
    var getStarExtglobSequenceChars = (pattern) => {
      let index2 = 0;
      const chars = [];
      while (index2 < pattern.length) {
        const match = parseRepeatedExtglob(pattern.slice(index2), 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);
        index2 += match.end + 1;
      }
      if (chars.length < 1) {
        return;
      }
      return chars;
    };
    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 max4 = typeof options.maxExtglobRecursion === "number" ? options.maxExtglobRecursion : constants6.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 };
        }
      }
      const safeChars = [];
      let sawStarSequence = false;
      let combinable = true;
      for (const branch of branches) {
        const chars = getStarExtglobSequenceChars(branch);
        if (chars) {
          sawStarSequence = true;
          safeChars.push(...chars);
          continue;
        }
        const literal = normalizeSimpleBranch(branch);
        if (literal && literal.length === 1) {
          safeChars.push(literal);
          continue;
        }
        combinable = false;
        if (repeatedExtglobRecursion(branch) > max4) {
          return { risky: true };
        }
      }
      if (sawStarSequence) {
        return combinable ? { risky: true, safeOutput: buildCharClassStar([...new Set(safeChars)]) } : { risky: true };
      }
      return { risky: false };
    };
    var parse12 = (input, options) => {
      if (typeof input !== "string") {
        throw new TypeError("Expected a string");
      }
      input = REPLACEMENTS[input] || input;
      const opts3 = { ...options };
      const max4 = typeof opts3.maxLength === "number" ? Math.min(MAX_LENGTH, opts3.maxLength) : MAX_LENGTH;
      let len = input.length;
      if (len > max4) {
        throw new SyntaxError(`Input length: ${len}, exceeds maximum allowed length: ${max4}`);
      }
      const bos = { type: "bos", value: "", output: opts3.prepend || "" };
      const tokens = [bos];
      const capture = opts3.capture ? "" : "?:";
      const PLATFORM_CHARS = constants6.globChars(opts3.windows);
      const EXTGLOB_CHARS = constants6.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 = (opts4) => {
        return `(${capture}(?:(?!${START_ANCHOR}${opts4.dot ? DOTS_SLASH : DOT_LITERAL}).)*?)`;
      };
      const nodot = opts3.dot ? "" : NO_DOT;
      const qmarkNoDot = opts3.dot ? QMARK : QMARK_NO_DOT;
      let star = opts3.bash === true ? globstar(opts3) : STAR;
      if (opts3.capture) {
        star = `(${star})`;
      }
      if (typeof opts3.noext === "boolean") {
        opts3.noextglob = opts3.noext;
      }
      const state = {
        input,
        index: -1,
        start: 0,
        dot: opts3.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 = (opts3.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, opts3);
        if ((token.type === "plus" || token.type === "star") && analysis.risky) {
          const safeOutput = analysis.safeOutput ? (token.output ? "" : ONE_CHAR) + (opts3.capture ? `(${analysis.safeOutput})` : analysis.safeOutput) : void 0;
          const open3 = tokens[token.tokensIndex];
          open3.type = "text";
          open3.value = literal;
          open3.output = safeOutput || utils.escapeRegex(literal);
          for (let i4 = token.tokensIndex + 1; i4 < tokens.length; i4++) {
            tokens[i4].value = "";
            tokens[i4].output = "";
            delete tokens[i4].suffix;
          }
          state.output = token.output + open3.output;
          state.backtrack = true;
          push({ type: "paren", extglob: true, value, output: "" });
          decrement("parens");
          return;
        }
        let output = token.close + (opts3.capture ? ")" : "");
        let rest;
        if (token.type === "negate") {
          let extglobStar = star;
          if (token.inner && token.inner.length > 1 && token.inner.includes("/")) {
            extglobStar = globstar(opts3);
          }
          if (extglobStar !== star || eos() || /^\)+$/.test(remaining())) {
            output = token.close = `)$))${extglobStar}`;
          }
          if (token.inner.includes("*") && (rest = remaining()) && /^\.[^\\/.]+$/.test(rest)) {
            const expression = parse12(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 (opts3.fastpaths !== false && !/(^[*!]|[/()[\]{}"])/.test(input)) {
        let backslashes = false;
        let output = input.replace(REGEX_SPECIAL_CHARS_BACKREF, (m, esc, chars, first, rest, index2) => {
          if (first === "\\") {
            backslashes = true;
            return m;
          }
          if (first === "?") {
            if (esc) {
              return esc + first + (rest ? QMARK.repeat(rest.length) : "");
            }
            if (index2 === 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 (opts3.unescape === true) {
            output = output.replace(/\\/g, "");
          } else {
            output = output.replace(/\\+/g, (m) => {
              return m.length % 2 === 0 ? "\\\\" : m ? "\\" : "";
            });
          }
        }
        if (output === input && opts3.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 === "/" && opts3.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 (opts3.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 (opts3.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 (opts3.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 (opts3.keepQuotes === true) {
            push({ type: "text", value });
          }
          continue;
        }
        if (value === "(") {
          increment2("parens");
          push({ type: "paren", value });
          continue;
        }
        if (value === ")") {
          if (state.parens === 0 && opts3.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 (opts3.nobracket === true || !remaining().includes("]")) {
            if (opts3.nobracket !== true && opts3.strictBrackets === true) {
              throw new SyntaxError(syntaxError("closing", "]"));
            }
            value = `\\${value}`;
          } else {
            increment2("brackets");
          }
          push({ type: "bracket", value });
          continue;
        }
        if (value === "]") {
          if (opts3.nobracket === true || prev && prev.type === "bracket" && prev.value.length === 1) {
            push({ type: "text", value, output: `\\${value}` });
            continue;
          }
          if (state.brackets === 0) {
            if (opts3.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 (opts3.literalBrackets === false || utils.hasRegexChars(prevValue)) {
            continue;
          }
          const escaped = utils.escapeRegex(prev.value);
          state.output = state.output.slice(0, -prev.value.length);
          if (opts3.literalBrackets === true) {
            state.output += escaped;
            prev.value = escaped;
            continue;
          }
          prev.value = `(${capture}${escaped}|${prev.value})`;
          state.output += prev.value;
          continue;
        }
        if (value === "{" && opts3.nobrace !== true) {
          increment2("braces");
          const open3 = {
            type: "brace",
            value,
            output: "(",
            outputIndex: state.output.length,
            tokensIndex: state.tokens.length
          };
          braces.push(open3);
          push(open3);
          continue;
        }
        if (value === "}") {
          const brace = braces[braces.length - 1];
          if (opts3.nobrace === true || !brace) {
            push({ type: "text", value, output: value });
            continue;
          }
          let output = ")";
          if (brace.dots === true) {
            const arr = tokens.slice();
            const range = [];
            for (let i4 = arr.length - 1; i4 >= 0; i4--) {
              tokens.pop();
              if (arr[i4].type === "brace") {
                break;
              }
              if (arr[i4].type !== "dots") {
                range.unshift(arr[i4].value);
              }
            }
            output = expandRange(range, opts3);
            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 && opts3.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 (opts3.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 (opts3.noextglob !== true && peek() === "(") {
            if (peek(2) !== "?" || !/[!=<:]/.test(peek(3))) {
              extglobOpen("negate", value);
              continue;
            }
          }
          if (opts3.nonegate !== true && state.index === 0) {
            negate();
            continue;
          }
        }
        if (value === "+") {
          if (opts3.noextglob !== true && peek() === "(" && peek(2) !== "?") {
            extglobOpen("plus", value);
            continue;
          }
          if (prev && prev.value === "(" || opts3.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 (opts3.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 (opts3.noextglob !== true && /^\([^?]/.test(rest)) {
          extglobOpen("star", value);
          continue;
        }
        if (prev.type === "star") {
          if (opts3.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 (opts3.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(opts3);
            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(opts3) + (opts3.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(opts3)}${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(opts3)}${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(opts3);
          prev.value += value;
          state.output += prev.output;
          state.globstar = true;
          consume(value);
          continue;
        }
        const token = { type: "star", value, output: star };
        if (opts3.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") && opts3.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 (opts3.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 (opts3.strictBrackets === true) throw new SyntaxError(syntaxError("closing", "]"));
        state.output = utils.escapeLast(state.output, "[");
        decrement("brackets");
      }
      while (state.parens > 0) {
        if (opts3.strictBrackets === true) throw new SyntaxError(syntaxError("closing", ")"));
        state.output = utils.escapeLast(state.output, "(");
        decrement("parens");
      }
      while (state.braces > 0) {
        if (opts3.strictBrackets === true) throw new SyntaxError(syntaxError("closing", "}"));
        state.output = utils.escapeLast(state.output, "{");
        decrement("braces");
      }
      if (opts3.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;
    };
    parse12.fastpaths = (input, options) => {
      const opts3 = { ...options };
      const max4 = typeof opts3.maxLength === "number" ? Math.min(MAX_LENGTH, opts3.maxLength) : MAX_LENGTH;
      const len = input.length;
      if (len > max4) {
        throw new SyntaxError(`Input length: ${len}, exceeds maximum allowed length: ${max4}`);
      }
      input = REPLACEMENTS[input] || input;
      const {
        DOT_LITERAL,
        SLASH_LITERAL,
        ONE_CHAR,
        DOTS_SLASH,
        NO_DOT,
        NO_DOTS,
        NO_DOTS_SLASH,
        STAR,
        START_ANCHOR
      } = constants6.globChars(opts3.windows);
      const nodot = opts3.dot ? NO_DOTS : NO_DOT;
      const slashDot = opts3.dot ? NO_DOTS_SLASH : NO_DOT;
      const capture = opts3.capture ? "" : "?:";
      const state = { negated: false, prefix: "" };
      let star = opts3.bash === true ? ".*?" : STAR;
      if (opts3.capture) {
        star = `(${star})`;
      }
      const globstar = (opts4) => {
        if (opts4.noglobstar === true) return star;
        return `(${capture}(?:(?!${START_ANCHOR}${opts4.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(opts3);
          case "**/*":
            return `(?:${nodot}${globstar(opts3)}${SLASH_LITERAL})?${slashDot}${ONE_CHAR}${star}`;
          case "**/*.*":
            return `(?:${nodot}${globstar(opts3)}${SLASH_LITERAL})?${slashDot}${star}${DOT_LITERAL}${ONE_CHAR}${star}`;
          case "**/.*":
            return `(?:${nodot}${globstar(opts3)}${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 && opts3.strictSlashes !== true) {
        source += `${SLASH_LITERAL}?`;
      }
      return source;
    };
    module2.exports = parse12;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/picomatch/4.0.5/b8dea5617f0d4573a84f4dd7127438bc2998da20025ab7c9668f49b248d777a8/node_modules/picomatch/lib/picomatch.js
var require_picomatch3 = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/picomatch/4.0.5/b8dea5617f0d4573a84f4dd7127438bc2998da20025ab7c9668f49b248d777a8/node_modules/picomatch/lib/picomatch.js"(exports2, module2) {
    "use strict";
    var scan3 = require_scan3();
    var parse12 = require_parse6();
    var utils = require_utils6();
    var constants6 = require_constants7();
    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 opts3 = options || {};
      const posix2 = opts3.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 (opts3.ignore) {
        const ignoreOpts = { ...options, ignore: null, onMatch: null, onResult: null };
        isIgnored = picomatch2(opts3.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 opts3.onResult === "function") {
          opts3.onResult(result2);
        }
        if (isMatch === false) {
          result2.isMatch = false;
          return returnObject ? result2 : false;
        }
        if (isIgnored(input)) {
          if (typeof opts3.onIgnore === "function") {
            opts3.onIgnore(result2);
          }
          result2.isMatch = false;
          return returnObject ? result2 : false;
        }
        if (typeof opts3.onMatch === "function") {
          opts3.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 opts3 = options || {};
      const format2 = opts3.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 || opts3.capture === true) {
        if (opts3.matchBase === true || opts3.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 = options && options.windows) => {
      const regex2 = glob2 instanceof RegExp ? glob2 : picomatch2.makeRe(glob2, options);
      return regex2.test(utils.basename(input, { windows: posix2 }));
    };
    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 parse12(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 opts3 = options || {};
      const prepend = opts3.contains ? "" : "^";
      const append = opts3.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 = parse12.fastpaths(input, options);
      }
      if (!parsed.output) {
        parsed = parse12(input, options);
      }
      return picomatch2.compileRe(parsed, options, returnOutput, returnState);
    };
    picomatch2.toRegex = (source, options) => {
      try {
        const opts3 = options || {};
        return new RegExp(source, opts3.flags || (opts3.nocase ? "i" : ""));
      } catch (err2) {
        if (options && options.debug === true) throw err2;
        return /$^/;
      }
    };
    picomatch2.constants = constants6;
    module2.exports = picomatch2;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/picomatch/4.0.5/b8dea5617f0d4573a84f4dd7127438bc2998da20025ab7c9668f49b248d777a8/node_modules/picomatch/index.js
var require_picomatch4 = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/picomatch/4.0.5/b8dea5617f0d4573a84f4dd7127438bc2998da20025ab7c9668f49b248d777a8/node_modules/picomatch/index.js"(exports2, module2) {
    "use strict";
    var pico = require_picomatch3();
    var utils = require_utils6();
    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;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/tinyglobby/0.2.17/a3c70ed15c4e9e54ff4a3063cdf51313cc7d5d784275a9d776aa8e5fc0163ea8/node_modules/tinyglobby/dist/index.mjs
import { readdir, readdirSync, realpath, realpathSync, stat, statSync } from "fs";
import { isAbsolute, posix, resolve as resolve2 } from "path";
import { fileURLToPath } from "url";
function getPartialMatcher(patterns, options = {}) {
  const patternsCount = patterns.length;
  const patternsParts = Array(patternsCount);
  const matchers = Array(patternsCount);
  let i4, j2;
  for (i4 = 0; i4 < patternsCount; i4++) {
    const parts = splitPattern(patterns[i4]);
    patternsParts[i4] = 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[i4] = partMatchers;
  }
  return (input) => {
    const inputParts = input.split("/");
    if (inputParts[0] === ".." && ONLY_PARENT_DIRECTORIES.test(input)) return true;
    for (i4 = 0; i4 < patternsCount; i4++) {
      const patternParts = patternsParts[i4];
      const matcher = matchers[i4];
      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, absolute2) {
  if (cwd === root || root.startsWith(`${cwd}/`)) {
    if (absolute2) {
      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 (absolute2) 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 ensureNonDriveRelativePath(path240) {
  return path240.replace(DRIVE_RELATIVE_PATH, (match) => `${match}/`);
}
function splitPattern(path240) {
  var _result$parts;
  const result2 = import_picomatch.default.scan(path240, splitPatternOptions);
  return ((_result$parts = result2.parts) === null || _result$parts === void 0 ? void 0 : _result$parts.length) ? result2.parts : [path240];
}
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, opts3, props3, isIgnore) {
  var _PARENT_DIRECTORY$exe;
  const cwd = opts3.cwd;
  let result2 = pattern;
  if (pattern[pattern.length - 1] === "/") result2 = pattern.slice(0, -1);
  if (result2[result2.length - 1] !== "*" && opts3.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 i4 = 0;
    const cwdParts = escapedCwd.split("/");
    while (i4 < n2 && parts[i4 + n2] === cwdParts[cwdParts.length + i4 - n2]) {
      result2 = result2.slice(0, (n2 - i4 - 1) * 3) + result2.slice((n2 - i4) * 3 + parts[i4 + n2].length + 1) || ".";
      i4++;
    }
    const potentialRoot = posix.join(cwd, parentDir.slice(i4 * 3));
    if (potentialRoot[0] !== "." && props3.root.length > potentialRoot.length) {
      props3.root = ensureNonDriveRelativePath(potentialRoot);
      props3.depthOffset = -n2 + i4;
    }
  }
  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 i4 = 0; i4 < length; i4++) {
      const part = parts[i4];
      if (part === "**" && !parts[i4 + 1]) {
        newCommonPath.pop();
        break;
      }
      if (i4 === parts.length - 1 || part !== props3.commonPath[i4] || isDynamicPattern(part)) break;
      newCommonPath.push(part);
    }
    props3.depthOffset = newCommonPath.length;
    props3.commonPath = newCommonPath;
    props3.root = ensureNonDriveRelativePath(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: absolute2, 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, absolute2);
  const excludeFormatter = absolute2 ? format2 : buildFormat(cwd, root, true);
  const excludePredicate = (_, p) => {
    const relativePath2 = excludeFormatter(p, true);
    return relativePath2 !== "." && !partialMatcher(relativePath2) || ignore2(relativePath2);
  };
  let maxDepth;
  if (options.deep !== void 0) maxDepth = Math.round(options.deep - props3.depthOffset);
  const crawler = new Builder({
    filters: [debug ? (p, isDirectory) => {
      const path240 = format2(p, isDirectory);
      const matches2 = matcher(path240) && !ignore2(path240);
      if (matches2) log(`matched ${path240}`);
      return matches2;
    } : (p, isDirectory) => {
      const path240 = format2(p, isDirectory);
      return matcher(path240) && !ignore2(path240);
    }],
    exclude: debug ? (_, p) => {
      const skipped = excludePredicate(_, p);
      log(`${skipped ? "skipped" : "crawling"} ${p}`);
      return skipped;
    } : excludePredicate,
    fs: options.fs,
    pathSeparator: "/",
    relativePaths: !absolute2,
    resolvePaths: absolute2,
    includeBasePath: absolute2,
    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 && !absolute2 && buildRelative(cwd, root)];
}
function formatPaths(paths3, mapper) {
  if (mapper) for (let i4 = paths3.length - 1; i4 >= 0; i4--) paths3[i4] = mapper(paths3[i4]);
  return paths3;
}
function getOptions(options) {
  const opts3 = Object.assign({}, options);
  for (const key in defaultOptions) if (opts3[key] === void 0) Object.assign(opts3, { [key]: defaultOptions[key] });
  opts3.cwd = (opts3.cwd instanceof URL ? fileURLToPath(opts3.cwd) : resolve2(opts3.cwd || process.cwd())).replace(BACKSLASHES, "/");
  opts3.ignore = ensureStringArray(opts3.ignore);
  opts3.fs && (opts3.fs = {
    readdir: opts3.fs.readdir || readdir,
    readdirSync: opts3.fs.readdirSync || readdirSync,
    realpath: opts3.fs.realpath || realpath,
    realpathSync: opts3.fs.realpathSync || realpathSync,
    stat: opts3.fs.stat || stat,
    statSync: opts3.fs.statSync || statSync
  });
  if (opts3.debug) log("globbing with options:", opts3);
  return opts3;
}
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, DRIVE_RELATIVE_PATH, isWin, ONLY_PARENT_DIRECTORIES, WIN32_ROOT_DIR, isRoot, splitPatternOptions, POSIX_UNESCAPED_GLOB_SYMBOLS, WIN32_UNESCAPED_GLOB_SYMBOLS, escapePosixPath, escapeWin32Path, escapePath, PARENT_DIRECTORY, ESCAPING_BACKSLASHES, defaultOptions;
var init_dist2 = __esm({
  "../../../../../setup-pnpm/store/v11/links/@/tinyglobby/0.2.17/a3c70ed15c4e9e54ff4a3063cdf51313cc7d5d784275a9d776aa8e5fc0163ea8/node_modules/tinyglobby/dist/index.mjs"() {
    init_dist();
    import_picomatch = __toESM(require_picomatch4(), 1);
    isReadonlyArray = Array.isArray;
    BACKSLASHES = /\\/g;
    DRIVE_RELATIVE_PATH = /^[A-Za-z]:$/;
    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 = (path240) => path240.replace(POSIX_UNESCAPED_GLOB_SYMBOLS, "\\$&");
    escapeWin32Path = (path240) => path240.replace(WIN32_UNESCAPED_GLOB_SYMBOLS, "\\$&");
    escapePath = isWin ? escapeWin32Path : escapePosixPath;
    PARENT_DIRECTORY = /^(\/?\.\.)+/;
    ESCAPING_BACKSLASHES = /\\(?=[()[\]{}!*+?@|])/g;
    defaultOptions = {
      caseSensitiveMatch: true,
      debug: !!process.env.TINYGLOBBY_DEBUG,
      expandDirectories: true,
      followSymbolicLinks: true,
      onlyFiles: true
    };
  }
});

// ../bins/resolver/lib/index.js
import path9 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 = path9.join(pkgPath, manifest.directories.bin);
    if (!isSubdir(pkgPath, binDir)) {
      return [];
    }
    const files = await findFiles(binDir);
    return files.map((file) => ({
      name: path9.basename(file),
      path: path9.join(binDir, file)
    }));
  }
  return [];
}
async function findFiles(dir) {
  try {
    return await glob("**", {
      cwd: dir,
      onlyFiles: true,
      followSymbolicLinks: false,
      expandDirectories: false
    });
  } catch (err2) {
    if (err2.code !== "ENOENT") {
      throw err2;
    }
    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 === "" || binName === "." || binName === "..") {
      continue;
    }
    if (binName !== encodeURIComponent(binName) && binName !== "$") {
      continue;
    }
    const binPath = path9.join(pkgPath, binRelativePath);
    if (!isSubdir(pkgPath, binPath)) {
      continue;
    }
    cmds.push({ name: binName, path: binPath });
  }
  return cmds;
}
var BIN_OWNER_OVERRIDES;
var init_lib7 = __esm({
  "../bins/resolver/lib/index.js"() {
    "use strict";
    init_is_subdir();
    init_dist2();
    BIN_OWNER_OVERRIDES = {
      npx: ["npm"],
      pn: ["pnpm", "@pnpm/exe"],
      pnpm: ["@pnpm/exe"],
      pnpx: ["pnpm", "@pnpm/exe"],
      pnx: ["pnpm", "@pnpm/exe"]
    };
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/graceful-fs/4.2.11/e60a23841f60609f733db41b2b1eced16c30ec8fe2e67c2a9b80e2dab0755700/node_modules/graceful-fs/polyfills.js
var require_polyfills = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/graceful-fs/4.2.11/e60a23841f60609f733db41b2b1eced16c30ec8fe2e67c2a9b80e2dab0755700/node_modules/graceful-fs/polyfills.js"(exports2, module2) {
    var constants6 = __require("constants");
    var origCwd = process.cwd;
    var cwd = null;
    var platform5 = 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(d3) {
        cwd = null;
        chdir.call(process, d3);
      };
      if (Object.setPrototypeOf) Object.setPrototypeOf(process.chdir, chdir);
    }
    var chdir;
    module2.exports = patch;
    function patch(fs131) {
      if (constants6.hasOwnProperty("O_SYMLINK") && process.version.match(/^v0\.6\.[0-2]|^v0\.5\./)) {
        patchLchmod(fs131);
      }
      if (!fs131.lutimes) {
        patchLutimes(fs131);
      }
      fs131.chown = chownFix(fs131.chown);
      fs131.fchown = chownFix(fs131.fchown);
      fs131.lchown = chownFix(fs131.lchown);
      fs131.chmod = chmodFix(fs131.chmod);
      fs131.fchmod = chmodFix(fs131.fchmod);
      fs131.lchmod = chmodFix(fs131.lchmod);
      fs131.chownSync = chownFixSync(fs131.chownSync);
      fs131.fchownSync = chownFixSync(fs131.fchownSync);
      fs131.lchownSync = chownFixSync(fs131.lchownSync);
      fs131.chmodSync = chmodFixSync(fs131.chmodSync);
      fs131.fchmodSync = chmodFixSync(fs131.fchmodSync);
      fs131.lchmodSync = chmodFixSync(fs131.lchmodSync);
      fs131.stat = statFix(fs131.stat);
      fs131.fstat = statFix(fs131.fstat);
      fs131.lstat = statFix(fs131.lstat);
      fs131.statSync = statFixSync(fs131.statSync);
      fs131.fstatSync = statFixSync(fs131.fstatSync);
      fs131.lstatSync = statFixSync(fs131.lstatSync);
      if (fs131.chmod && !fs131.lchmod) {
        fs131.lchmod = function(path240, mode, cb) {
          if (cb) process.nextTick(cb);
        };
        fs131.lchmodSync = function() {
        };
      }
      if (fs131.chown && !fs131.lchown) {
        fs131.lchown = function(path240, uid, gid, cb) {
          if (cb) process.nextTick(cb);
        };
        fs131.lchownSync = function() {
        };
      }
      if (platform5 === "win32") {
        fs131.rename = typeof fs131.rename !== "function" ? fs131.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() {
                  fs131.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;
        })(fs131.rename);
      }
      fs131.read = typeof fs131.read !== "function" ? fs131.read : (function(fs$read) {
        function read2(fd2, 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(fs131, fd2, buffer3, offset, length, position3, callback2);
              }
              callback_.apply(this, arguments);
            };
          }
          return fs$read.call(fs131, fd2, buffer3, offset, length, position3, callback2);
        }
        if (Object.setPrototypeOf) Object.setPrototypeOf(read2, fs$read);
        return read2;
      })(fs131.read);
      fs131.readSync = typeof fs131.readSync !== "function" ? fs131.readSync : /* @__PURE__ */ (function(fs$readSync) {
        return function(fd2, buffer3, offset, length, position3) {
          var eagCounter = 0;
          while (true) {
            try {
              return fs$readSync.call(fs131, fd2, buffer3, offset, length, position3);
            } catch (er) {
              if (er.code === "EAGAIN" && eagCounter < 10) {
                eagCounter++;
                continue;
              }
              throw er;
            }
          }
        };
      })(fs131.readSync);
      function patchLchmod(fs132) {
        fs132.lchmod = function(path240, mode, callback2) {
          fs132.open(
            path240,
            constants6.O_WRONLY | constants6.O_SYMLINK,
            mode,
            function(err2, fd2) {
              if (err2) {
                if (callback2) callback2(err2);
                return;
              }
              fs132.fchmod(fd2, mode, function(err3) {
                fs132.close(fd2, function(err22) {
                  if (callback2) callback2(err3 || err22);
                });
              });
            }
          );
        };
        fs132.lchmodSync = function(path240, mode) {
          var fd2 = fs132.openSync(path240, constants6.O_WRONLY | constants6.O_SYMLINK, mode);
          var threw = true;
          var ret2;
          try {
            ret2 = fs132.fchmodSync(fd2, mode);
            threw = false;
          } finally {
            if (threw) {
              try {
                fs132.closeSync(fd2);
              } catch (er) {
              }
            } else {
              fs132.closeSync(fd2);
            }
          }
          return ret2;
        };
      }
      function patchLutimes(fs132) {
        if (constants6.hasOwnProperty("O_SYMLINK") && fs132.futimes) {
          fs132.lutimes = function(path240, at, mt, cb) {
            fs132.open(path240, constants6.O_SYMLINK, function(er, fd2) {
              if (er) {
                if (cb) cb(er);
                return;
              }
              fs132.futimes(fd2, at, mt, function(er2) {
                fs132.close(fd2, function(er22) {
                  if (cb) cb(er2 || er22);
                });
              });
            });
          };
          fs132.lutimesSync = function(path240, at, mt) {
            var fd2 = fs132.openSync(path240, constants6.O_SYMLINK);
            var ret2;
            var threw = true;
            try {
              ret2 = fs132.futimesSync(fd2, at, mt);
              threw = false;
            } finally {
              if (threw) {
                try {
                  fs132.closeSync(fd2);
                } catch (er) {
                }
              } else {
                fs132.closeSync(fd2);
              }
            }
            return ret2;
          };
        } else if (fs132.futimes) {
          fs132.lutimes = function(_a2, _b2, _c, cb) {
            if (cb) process.nextTick(cb);
          };
          fs132.lutimesSync = function() {
          };
        }
      }
      function chmodFix(orig) {
        if (!orig) return orig;
        return function(target2, mode, cb) {
          return orig.call(fs131, 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(fs131, 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(fs131, 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(fs131, 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(fs131, target2, options, callback2) : orig.call(fs131, target2, callback2);
        };
      }
      function statFixSync(orig) {
        if (!orig) return orig;
        return function(target2, options) {
          var stats = options ? orig.call(fs131, target2, options) : orig.call(fs131, 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;
      }
    }
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/graceful-fs/4.2.11/e60a23841f60609f733db41b2b1eced16c30ec8fe2e67c2a9b80e2dab0755700/node_modules/graceful-fs/legacy-streams.js
var require_legacy_streams = __commonJS({
  "../../../../../setup-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(fs131) {
      return {
        ReadStream,
        WriteStream
      };
      function ReadStream(path240, options) {
        if (!(this instanceof ReadStream)) return new ReadStream(path240, options);
        Stream.call(this);
        var self2 = this;
        this.path = path240;
        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 index2 = 0, length = keys4.length; index2 < length; index2++) {
          var key = keys4[index2];
          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;
        }
        fs131.open(this.path, this.flags, this.mode, function(err2, fd2) {
          if (err2) {
            self2.emit("error", err2);
            self2.readable = false;
            return;
          }
          self2.fd = fd2;
          self2.emit("open", fd2);
          self2._read();
        });
      }
      function WriteStream(path240, options) {
        if (!(this instanceof WriteStream)) return new WriteStream(path240, options);
        Stream.call(this);
        this.path = path240;
        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 index2 = 0, length = keys4.length; index2 < length; index2++) {
          var key = keys4[index2];
          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 = fs131.open;
          this._queue.push([this._open, this.path, this.flags, this.mode, void 0]);
          this.flush();
        }
      }
    }
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/graceful-fs/4.2.11/e60a23841f60609f733db41b2b1eced16c30ec8fe2e67c2a9b80e2dab0755700/node_modules/graceful-fs/clone.js
var require_clone = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/graceful-fs/4.2.11/e60a23841f60609f733db41b2b1eced16c30ec8fe2e67c2a9b80e2dab0755700/node_modules/graceful-fs/clone.js"(exports2, module2) {
    "use strict";
    module2.exports = clone4;
    var getPrototypeOf = Object.getPrototypeOf || function(obj) {
      return obj.__proto__;
    };
    function clone4(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;
    }
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/graceful-fs/4.2.11/e60a23841f60609f733db41b2b1eced16c30ec8fe2e67c2a9b80e2dab0755700/node_modules/graceful-fs/graceful-fs.js
var require_graceful_fs = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/graceful-fs/4.2.11/e60a23841f60609f733db41b2b1eced16c30ec8fe2e67c2a9b80e2dab0755700/node_modules/graceful-fs/graceful-fs.js"(exports2, module2) {
    var fs131 = __require("fs");
    var polyfills = require_polyfills();
    var legacy = require_legacy_streams();
    var clone4 = require_clone();
    var util70 = __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 (util70.debuglog)
      debug = util70.debuglog("gfs4");
    else if (/\bgfs4\b/i.test(process.env.NODE_DEBUG || ""))
      debug = function() {
        var m = util70.format.apply(util70, arguments);
        m = "GFS4: " + m.split(/\n/).join("\nGFS4: ");
        console.error(m);
      };
    if (!fs131[gracefulQueue]) {
      queue2 = global[gracefulQueue] || [];
      publishQueue(fs131, queue2);
      fs131.close = (function(fs$close) {
        function close(fd2, cb) {
          return fs$close.call(fs131, fd2, function(err2) {
            if (!err2) {
              resetQueue();
            }
            if (typeof cb === "function")
              cb.apply(this, arguments);
          });
        }
        Object.defineProperty(close, previousSymbol, {
          value: fs$close
        });
        return close;
      })(fs131.close);
      fs131.closeSync = (function(fs$closeSync) {
        function closeSync(fd2) {
          fs$closeSync.apply(fs131, arguments);
          resetQueue();
        }
        Object.defineProperty(closeSync, previousSymbol, {
          value: fs$closeSync
        });
        return closeSync;
      })(fs131.closeSync);
      if (/\bgfs4\b/i.test(process.env.NODE_DEBUG || "")) {
        process.on("exit", function() {
          debug(fs131[gracefulQueue]);
          __require("assert").equal(fs131[gracefulQueue].length, 0);
        });
      }
    }
    var queue2;
    if (!global[gracefulQueue]) {
      publishQueue(global, fs131[gracefulQueue]);
    }
    module2.exports = patch(clone4(fs131));
    if (process.env.TEST_GRACEFUL_FS_GLOBAL_PATCH && !fs131.__patched) {
      module2.exports = patch(fs131);
      fs131.__patched = true;
    }
    function patch(fs132) {
      polyfills(fs132);
      fs132.gracefulify = patch;
      fs132.createReadStream = createReadStream3;
      fs132.createWriteStream = createWriteStream2;
      var fs$readFile = fs132.readFile;
      fs132.readFile = readFile5;
      function readFile5(path240, options, cb) {
        if (typeof options === "function")
          cb = options, options = null;
        return go$readFile(path240, options, cb);
        function go$readFile(path241, options2, cb2, startTime) {
          return fs$readFile(path241, options2, function(err2) {
            if (err2 && (err2.code === "EMFILE" || err2.code === "ENFILE"))
              enqueue([go$readFile, [path241, options2, cb2], err2, startTime || Date.now(), Date.now()]);
            else {
              if (typeof cb2 === "function")
                cb2.apply(this, arguments);
            }
          });
        }
      }
      var fs$writeFile = fs132.writeFile;
      fs132.writeFile = writeFile3;
      function writeFile3(path240, data, options, cb) {
        if (typeof options === "function")
          cb = options, options = null;
        return go$writeFile(path240, data, options, cb);
        function go$writeFile(path241, data2, options2, cb2, startTime) {
          return fs$writeFile(path241, data2, options2, function(err2) {
            if (err2 && (err2.code === "EMFILE" || err2.code === "ENFILE"))
              enqueue([go$writeFile, [path241, data2, options2, cb2], err2, startTime || Date.now(), Date.now()]);
            else {
              if (typeof cb2 === "function")
                cb2.apply(this, arguments);
            }
          });
        }
      }
      var fs$appendFile = fs132.appendFile;
      if (fs$appendFile)
        fs132.appendFile = appendFile;
      function appendFile(path240, data, options, cb) {
        if (typeof options === "function")
          cb = options, options = null;
        return go$appendFile(path240, data, options, cb);
        function go$appendFile(path241, data2, options2, cb2, startTime) {
          return fs$appendFile(path241, data2, options2, function(err2) {
            if (err2 && (err2.code === "EMFILE" || err2.code === "ENFILE"))
              enqueue([go$appendFile, [path241, data2, options2, cb2], err2, startTime || Date.now(), Date.now()]);
            else {
              if (typeof cb2 === "function")
                cb2.apply(this, arguments);
            }
          });
        }
      }
      var fs$copyFile = fs132.copyFile;
      if (fs$copyFile)
        fs132.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(err2) {
            if (err2 && (err2.code === "EMFILE" || err2.code === "ENFILE" || err2.code === "EBUSY"))
              enqueue([go$copyFile, [src3, dest2, flags2, cb2], err2, startTime || Date.now(), Date.now()]);
            else {
              if (typeof cb2 === "function")
                cb2.apply(this, arguments);
            }
          });
        }
      }
      var fs$readdir = fs132.readdir;
      fs132.readdir = readdir3;
      var noReaddirOptionVersions = /^v[0-5]\./;
      function readdir3(path240, options, cb) {
        if (typeof options === "function")
          cb = options, options = null;
        var go$readdir = noReaddirOptionVersions.test(process.version) ? function go$readdir2(path241, options2, cb2, startTime) {
          return fs$readdir(path241, fs$readdirCallback(
            path241,
            options2,
            cb2,
            startTime
          ));
        } : function go$readdir2(path241, options2, cb2, startTime) {
          return fs$readdir(path241, options2, fs$readdirCallback(
            path241,
            options2,
            cb2,
            startTime
          ));
        };
        return go$readdir(path240, options, cb);
        function fs$readdirCallback(path241, options2, cb2, startTime) {
          return function(err2, files) {
            if (err2 && (err2.code === "EMFILE" || err2.code === "ENFILE"))
              enqueue([
                go$readdir,
                [path241, options2, cb2],
                err2,
                startTime || Date.now(),
                Date.now()
              ]);
            else {
              if (files && files.sort)
                files.sort();
              if (typeof cb2 === "function")
                cb2.call(this, err2, files);
            }
          };
        }
      }
      if (process.version.substr(0, 4) === "v0.8") {
        var legStreams = legacy(fs132);
        ReadStream = legStreams.ReadStream;
        WriteStream = legStreams.WriteStream;
      }
      var fs$ReadStream = fs132.ReadStream;
      if (fs$ReadStream) {
        ReadStream.prototype = Object.create(fs$ReadStream.prototype);
        ReadStream.prototype.open = ReadStream$open;
      }
      var fs$WriteStream = fs132.WriteStream;
      if (fs$WriteStream) {
        WriteStream.prototype = Object.create(fs$WriteStream.prototype);
        WriteStream.prototype.open = WriteStream$open;
      }
      Object.defineProperty(fs132, "ReadStream", {
        get: function() {
          return ReadStream;
        },
        set: function(val) {
          ReadStream = val;
        },
        enumerable: true,
        configurable: true
      });
      Object.defineProperty(fs132, "WriteStream", {
        get: function() {
          return WriteStream;
        },
        set: function(val) {
          WriteStream = val;
        },
        enumerable: true,
        configurable: true
      });
      var FileReadStream = ReadStream;
      Object.defineProperty(fs132, "FileReadStream", {
        get: function() {
          return FileReadStream;
        },
        set: function(val) {
          FileReadStream = val;
        },
        enumerable: true,
        configurable: true
      });
      var FileWriteStream = WriteStream;
      Object.defineProperty(fs132, "FileWriteStream", {
        get: function() {
          return FileWriteStream;
        },
        set: function(val) {
          FileWriteStream = val;
        },
        enumerable: true,
        configurable: true
      });
      function ReadStream(path240, 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;
        open3(that.path, that.flags, that.mode, function(err2, fd2) {
          if (err2) {
            if (that.autoClose)
              that.destroy();
            that.emit("error", err2);
          } else {
            that.fd = fd2;
            that.emit("open", fd2);
            that.read();
          }
        });
      }
      function WriteStream(path240, 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;
        open3(that.path, that.flags, that.mode, function(err2, fd2) {
          if (err2) {
            that.destroy();
            that.emit("error", err2);
          } else {
            that.fd = fd2;
            that.emit("open", fd2);
          }
        });
      }
      function createReadStream3(path240, options) {
        return new fs132.ReadStream(path240, options);
      }
      function createWriteStream2(path240, options) {
        return new fs132.WriteStream(path240, options);
      }
      var fs$open = fs132.open;
      fs132.open = open3;
      function open3(path240, flags, mode, cb) {
        if (typeof mode === "function")
          cb = mode, mode = null;
        return go$open(path240, flags, mode, cb);
        function go$open(path241, flags2, mode2, cb2, startTime) {
          return fs$open(path241, flags2, mode2, function(err2, fd2) {
            if (err2 && (err2.code === "EMFILE" || err2.code === "ENFILE"))
              enqueue([go$open, [path241, flags2, mode2, cb2], err2, startTime || Date.now(), Date.now()]);
            else {
              if (typeof cb2 === "function")
                cb2.apply(this, arguments);
            }
          });
        }
      }
      return fs132;
    }
    function enqueue(elem) {
      debug("ENQUEUE", elem[0].name, elem[1]);
      fs131[gracefulQueue].push(elem);
      retry5();
    }
    var retryTimer;
    function resetQueue() {
      var now = Date.now();
      for (var i4 = 0; i4 < fs131[gracefulQueue].length; ++i4) {
        if (fs131[gracefulQueue][i4].length > 2) {
          fs131[gracefulQueue][i4][3] = now;
          fs131[gracefulQueue][i4][4] = now;
        }
      }
      retry5();
    }
    function retry5() {
      clearTimeout(retryTimer);
      retryTimer = void 0;
      if (fs131[gracefulQueue].length === 0)
        return;
      var elem = fs131[gracefulQueue].shift();
      var fn = elem[0];
      var args = elem[1];
      var err2 = 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, err2);
      } 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 {
          fs131[gracefulQueue].push(elem);
        }
      }
      if (retryTimer === void 0) {
        retryTimer = setTimeout(retry5, 0);
      }
    }
  }
});

// ../fs/read-modules-dir/lib/index.js
import path10 from "node:path";
import util2 from "node:util";
async function readModulesDir(modulesDir) {
  try {
    return await _readModulesDir(modulesDir);
  } catch (err2) {
    if (util2.types.isNativeError(err2) && "code" in err2 && err2.code === "ENOENT")
      return null;
    throw err2;
  }
}
async function _readModulesDir(modulesDir, scope) {
  const pkgNames = [];
  const parentDir = scope ? path10.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_fs, readdir2;
var init_lib8 = __esm({
  "../fs/read-modules-dir/lib/index.js"() {
    "use strict";
    import_graceful_fs = __toESM(require_graceful_fs(), 1);
    readdir2 = util2.promisify(import_graceful_fs.default.readdir);
  }
});

// ../pkg-manifest/utils/lib/getAllDependenciesFromManifest.js
function getAllDependenciesFromManifest(manifest, opts3) {
  return {
    ...opts3?.autoInstallPeers ? manifest.peerDependencies : {},
    ...manifest.devDependencies,
    ...manifest.dependencies,
    ...manifest.optionalDependencies
  };
}
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";
  }
});

// ../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, DEFAULT_REGISTRY_SCOPE;
var init_misc = __esm({
  "../core/types/lib/misc.js"() {
    "use strict";
    DEPENDENCIES_FIELDS = [
      "optionalDependencies",
      "dependencies",
      "devDependencies"
    ];
    DEPENDENCIES_OR_PEER_FIELDS = [
      ...DEPENDENCIES_FIELDS,
      "peerDependencies"
    ];
    DEFAULT_REGISTRY_SCOPE = "@";
  }
});

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

// ../core/types/lib/package.js
function isRuntimeAlias(alias) {
  return RUNTIME_NAMES.includes(alias);
}
var RUNTIME_NAMES;
var init_package = __esm({
  "../core/types/lib/package.js"() {
    "use strict";
    RUNTIME_NAMES = ["node", "deno", "bun"];
  }
});

// ../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/versioning.js
var init_versioning = __esm({
  "../core/types/lib/versioning.js"() {
    "use strict";
  }
});

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

// ../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 (typeof runtime.version !== "string") {
      globalWarn(`Cannot download ${runtimeName} because no version is specified in ${enginesFieldName}.runtime`);
      continue;
    }
    const version2 = runtime.version.trim();
    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:${version2}`,
        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 (runtimes.some((runtime) => runtime.name === runtimeName) && typeof deps[runtimeName] === "string" && deps[runtimeName].startsWith("runtime:")) {
            delete deps[runtimeName];
          }
        }
      }
    } else {
      convertEnginesRuntimeToDependencies(manifest, enginesFieldName, dependenciesFieldName);
    }
  }
}
var init_convertEnginesRuntimeToDependencies = __esm({
  "../pkg-manifest/utils/lib/convertEnginesRuntimeToDependencies.js"() {
    "use strict";
    init_lib3();
    init_lib9();
  }
});

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

// ../../../../../setup-pnpm/store/v11/links/@/semver/7.8.5/50b76942b76b1567bb275b07b36d4efd1f7bc678ee222317e6ec7ff2c047c60d/node_modules/semver/functions/inc.js
var require_inc = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/semver/7.8.5/50b76942b76b1567bb275b07b36d4efd1f7bc678ee222317e6ec7ff2c047c60d/node_modules/semver/functions/inc.js"(exports2, module2) {
    "use strict";
    var SemVer = require_semver();
    var inc3 = (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 = inc3;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/semver/7.8.5/50b76942b76b1567bb275b07b36d4efd1f7bc678ee222317e6ec7ff2c047c60d/node_modules/semver/functions/diff.js
var require_diff = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/semver/7.8.5/50b76942b76b1567bb275b07b36d4efd1f7bc678ee222317e6ec7ff2c047c60d/node_modules/semver/functions/diff.js"(exports2, module2) {
    "use strict";
    var parse12 = require_parse();
    var diff2 = (version1, version2) => {
      const v1 = parse12(version1, null, true);
      const v2 = parse12(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 = diff2;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/semver/7.8.5/50b76942b76b1567bb275b07b36d4efd1f7bc678ee222317e6ec7ff2c047c60d/node_modules/semver/functions/major.js
var require_major = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/semver/7.8.5/50b76942b76b1567bb275b07b36d4efd1f7bc678ee222317e6ec7ff2c047c60d/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;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/semver/7.8.5/50b76942b76b1567bb275b07b36d4efd1f7bc678ee222317e6ec7ff2c047c60d/node_modules/semver/functions/minor.js
var require_minor = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/semver/7.8.5/50b76942b76b1567bb275b07b36d4efd1f7bc678ee222317e6ec7ff2c047c60d/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;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/semver/7.8.5/50b76942b76b1567bb275b07b36d4efd1f7bc678ee222317e6ec7ff2c047c60d/node_modules/semver/functions/patch.js
var require_patch = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/semver/7.8.5/50b76942b76b1567bb275b07b36d4efd1f7bc678ee222317e6ec7ff2c047c60d/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;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/semver/7.8.5/50b76942b76b1567bb275b07b36d4efd1f7bc678ee222317e6ec7ff2c047c60d/node_modules/semver/functions/prerelease.js
var require_prerelease = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/semver/7.8.5/50b76942b76b1567bb275b07b36d4efd1f7bc678ee222317e6ec7ff2c047c60d/node_modules/semver/functions/prerelease.js"(exports2, module2) {
    "use strict";
    var parse12 = require_parse();
    var prerelease = (version2, options) => {
      const parsed = parse12(version2, options);
      return parsed && parsed.prerelease.length ? parsed.prerelease : null;
    };
    module2.exports = prerelease;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/semver/7.8.5/50b76942b76b1567bb275b07b36d4efd1f7bc678ee222317e6ec7ff2c047c60d/node_modules/semver/functions/compare.js
var require_compare = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/semver/7.8.5/50b76942b76b1567bb275b07b36d4efd1f7bc678ee222317e6ec7ff2c047c60d/node_modules/semver/functions/compare.js"(exports2, module2) {
    "use strict";
    var SemVer = require_semver();
    var compare3 = (a2, b, loose) => new SemVer(a2, loose).compare(new SemVer(b, loose));
    module2.exports = compare3;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/semver/7.8.5/50b76942b76b1567bb275b07b36d4efd1f7bc678ee222317e6ec7ff2c047c60d/node_modules/semver/functions/rcompare.js
var require_rcompare = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/semver/7.8.5/50b76942b76b1567bb275b07b36d4efd1f7bc678ee222317e6ec7ff2c047c60d/node_modules/semver/functions/rcompare.js"(exports2, module2) {
    "use strict";
    var compare3 = require_compare();
    var rcompare = (a2, b, loose) => compare3(b, a2, loose);
    module2.exports = rcompare;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/semver/7.8.5/50b76942b76b1567bb275b07b36d4efd1f7bc678ee222317e6ec7ff2c047c60d/node_modules/semver/functions/compare-loose.js
var require_compare_loose = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/semver/7.8.5/50b76942b76b1567bb275b07b36d4efd1f7bc678ee222317e6ec7ff2c047c60d/node_modules/semver/functions/compare-loose.js"(exports2, module2) {
    "use strict";
    var compare3 = require_compare();
    var compareLoose = (a2, b) => compare3(a2, b, true);
    module2.exports = compareLoose;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/semver/7.8.5/50b76942b76b1567bb275b07b36d4efd1f7bc678ee222317e6ec7ff2c047c60d/node_modules/semver/functions/compare-build.js
var require_compare_build = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/semver/7.8.5/50b76942b76b1567bb275b07b36d4efd1f7bc678ee222317e6ec7ff2c047c60d/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;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/semver/7.8.5/50b76942b76b1567bb275b07b36d4efd1f7bc678ee222317e6ec7ff2c047c60d/node_modules/semver/functions/sort.js
var require_sort = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/semver/7.8.5/50b76942b76b1567bb275b07b36d4efd1f7bc678ee222317e6ec7ff2c047c60d/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;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/semver/7.8.5/50b76942b76b1567bb275b07b36d4efd1f7bc678ee222317e6ec7ff2c047c60d/node_modules/semver/functions/rsort.js
var require_rsort = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/semver/7.8.5/50b76942b76b1567bb275b07b36d4efd1f7bc678ee222317e6ec7ff2c047c60d/node_modules/semver/functions/rsort.js"(exports2, module2) {
    "use strict";
    var compareBuild = require_compare_build();
    var rsort2 = (list2, loose) => list2.sort((a2, b) => compareBuild(b, a2, loose));
    module2.exports = rsort2;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/semver/7.8.5/50b76942b76b1567bb275b07b36d4efd1f7bc678ee222317e6ec7ff2c047c60d/node_modules/semver/functions/gt.js
var require_gt = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/semver/7.8.5/50b76942b76b1567bb275b07b36d4efd1f7bc678ee222317e6ec7ff2c047c60d/node_modules/semver/functions/gt.js"(exports2, module2) {
    "use strict";
    var compare3 = require_compare();
    var gt = (a2, b, loose) => compare3(a2, b, loose) > 0;
    module2.exports = gt;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/semver/7.8.5/50b76942b76b1567bb275b07b36d4efd1f7bc678ee222317e6ec7ff2c047c60d/node_modules/semver/functions/lt.js
var require_lt = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/semver/7.8.5/50b76942b76b1567bb275b07b36d4efd1f7bc678ee222317e6ec7ff2c047c60d/node_modules/semver/functions/lt.js"(exports2, module2) {
    "use strict";
    var compare3 = require_compare();
    var lt2 = (a2, b, loose) => compare3(a2, b, loose) < 0;
    module2.exports = lt2;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/semver/7.8.5/50b76942b76b1567bb275b07b36d4efd1f7bc678ee222317e6ec7ff2c047c60d/node_modules/semver/functions/eq.js
var require_eq = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/semver/7.8.5/50b76942b76b1567bb275b07b36d4efd1f7bc678ee222317e6ec7ff2c047c60d/node_modules/semver/functions/eq.js"(exports2, module2) {
    "use strict";
    var compare3 = require_compare();
    var eq = (a2, b, loose) => compare3(a2, b, loose) === 0;
    module2.exports = eq;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/semver/7.8.5/50b76942b76b1567bb275b07b36d4efd1f7bc678ee222317e6ec7ff2c047c60d/node_modules/semver/functions/neq.js
var require_neq = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/semver/7.8.5/50b76942b76b1567bb275b07b36d4efd1f7bc678ee222317e6ec7ff2c047c60d/node_modules/semver/functions/neq.js"(exports2, module2) {
    "use strict";
    var compare3 = require_compare();
    var neq = (a2, b, loose) => compare3(a2, b, loose) !== 0;
    module2.exports = neq;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/semver/7.8.5/50b76942b76b1567bb275b07b36d4efd1f7bc678ee222317e6ec7ff2c047c60d/node_modules/semver/functions/gte.js
var require_gte = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/semver/7.8.5/50b76942b76b1567bb275b07b36d4efd1f7bc678ee222317e6ec7ff2c047c60d/node_modules/semver/functions/gte.js"(exports2, module2) {
    "use strict";
    var compare3 = require_compare();
    var gte = (a2, b, loose) => compare3(a2, b, loose) >= 0;
    module2.exports = gte;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/semver/7.8.5/50b76942b76b1567bb275b07b36d4efd1f7bc678ee222317e6ec7ff2c047c60d/node_modules/semver/functions/lte.js
var require_lte = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/semver/7.8.5/50b76942b76b1567bb275b07b36d4efd1f7bc678ee222317e6ec7ff2c047c60d/node_modules/semver/functions/lte.js"(exports2, module2) {
    "use strict";
    var compare3 = require_compare();
    var lte = (a2, b, loose) => compare3(a2, b, loose) <= 0;
    module2.exports = lte;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/semver/7.8.5/50b76942b76b1567bb275b07b36d4efd1f7bc678ee222317e6ec7ff2c047c60d/node_modules/semver/functions/cmp.js
var require_cmp = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/semver/7.8.5/50b76942b76b1567bb275b07b36d4efd1f7bc678ee222317e6ec7ff2c047c60d/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 lt2 = 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 lt2(a2, b, loose);
        case "<=":
          return lte(a2, b, loose);
        default:
          throw new TypeError(`Invalid operator: ${op}`);
      }
    };
    module2.exports = cmp;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/semver/7.8.5/50b76942b76b1567bb275b07b36d4efd1f7bc678ee222317e6ec7ff2c047c60d/node_modules/semver/functions/coerce.js
var require_coerce = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/semver/7.8.5/50b76942b76b1567bb275b07b36d4efd1f7bc678ee222317e6ec7ff2c047c60d/node_modules/semver/functions/coerce.js"(exports2, module2) {
    "use strict";
    var SemVer = require_semver();
    var parse12 = 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 parse12(`${major}.${minor}.${patch}${prerelease}${build2}`, options);
    };
    module2.exports = coerce;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/semver/7.8.5/50b76942b76b1567bb275b07b36d4efd1f7bc678ee222317e6ec7ff2c047c60d/node_modules/semver/functions/truncate.js
var require_truncate = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/semver/7.8.5/50b76942b76b1567bb275b07b36d4efd1f7bc678ee222317e6ec7ff2c047c60d/node_modules/semver/functions/truncate.js"(exports2, module2) {
    "use strict";
    var parse12 = require_parse();
    var constants6 = require_constants();
    var SemVer = require_semver();
    var truncate = (version2, truncation, options) => {
      if (!constants6.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 parse12(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;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/semver/7.8.5/50b76942b76b1567bb275b07b36d4efd1f7bc678ee222317e6ec7ff2c047c60d/node_modules/semver/internal/lrucache.js
var require_lrucache = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/semver/7.8.5/50b76942b76b1567bb275b07b36d4efd1f7bc678ee222317e6ec7ff2c047c60d/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;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/semver/7.8.5/50b76942b76b1567bb275b07b36d4efd1f7bc678ee222317e6ec7ff2c047c60d/node_modules/semver/classes/range.js
var require_range = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/semver/7.8.5/50b76942b76b1567bb275b07b36d4efd1f7bc678ee222317e6ec7ff2c047c60d/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 i4 = 0; i4 < this.set.length; i4++) {
            if (i4 > 0) {
              this.formatted += "||";
            }
            const comps = this.set[i4];
            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 i4 = 0; i4 < this.set.length; i4++) {
          if (testSet(this.set[i4], 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 invalidXRangeOrder = (M3, m, p) => isX(M3) && !isX(m) || isX(m) && p && !isX(p);
    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];
      const z = options.includePrerelease ? "-0" : "";
      return comp.replace(r, (_, M3, m, p, pr) => {
        debug("tilde", comp, _, M3, m, p, pr);
        let ret2;
        if (isX(M3)) {
          ret2 = "";
        } else if (isX(m)) {
          ret2 = `>=${M3}.0.0${z} <${+M3 + 1}.0.0-0`;
        } else if (isX(p)) {
          ret2 = `>=${M3}.${m}.0${z} <${M3}.${+m + 1}.0-0`;
        } else if (pr) {
          debug("replaceTilde pr", pr);
          ret2 = `>=${M3}.${m}.${p}-${pr} <${M3}.${+m + 1}.0-0`;
        } else {
          ret2 = `>=${M3}.${m}.${p} <${M3}.${+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, (_, M3, m, p, pr) => {
        debug("caret", comp, _, M3, m, p, pr);
        let ret2;
        if (isX(M3)) {
          ret2 = "";
        } else if (isX(m)) {
          ret2 = `>=${M3}.0.0${z} <${+M3 + 1}.0.0-0`;
        } else if (isX(p)) {
          if (M3 === "0") {
            ret2 = `>=${M3}.${m}.0${z} <${M3}.${+m + 1}.0-0`;
          } else {
            ret2 = `>=${M3}.${m}.0${z} <${+M3 + 1}.0.0-0`;
          }
        } else if (pr) {
          debug("replaceCaret pr", pr);
          if (M3 === "0") {
            if (m === "0") {
              ret2 = `>=${M3}.${m}.${p}-${pr} <${M3}.${m}.${+p + 1}-0`;
            } else {
              ret2 = `>=${M3}.${m}.${p}-${pr} <${M3}.${+m + 1}.0-0`;
            }
          } else {
            ret2 = `>=${M3}.${m}.${p}-${pr} <${+M3 + 1}.0.0-0`;
          }
        } else {
          debug("no pr");
          if (M3 === "0") {
            if (m === "0") {
              ret2 = `>=${M3}.${m}.${p} <${M3}.${m}.${+p + 1}-0`;
            } else {
              ret2 = `>=${M3}.${m}.${p} <${M3}.${+m + 1}.0-0`;
            }
          } else {
            ret2 = `>=${M3}.${m}.${p} <${+M3 + 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, M3, m, p, pr) => {
        debug("xRange", comp, ret2, gtlt, M3, m, p, pr);
        if (invalidXRangeOrder(M3, m, p)) {
          return comp;
        }
        const xM = isX(M3);
        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) {
              M3 = +M3 + 1;
              m = 0;
              p = 0;
            } else {
              m = +m + 1;
              p = 0;
            }
          } else if (gtlt === "<=") {
            gtlt = "<";
            if (xm) {
              M3 = +M3 + 1;
            } else {
              m = +m + 1;
            }
          }
          if (gtlt === "<") {
            pr = "-0";
          }
          ret2 = `${gtlt + M3}.${m}.${p}${pr}`;
        } else if (xm) {
          ret2 = `>=${M3}.0.0${pr} <${+M3 + 1}.0.0-0`;
        } else if (xp) {
          ret2 = `>=${M3}.${m}.0${pr} <${M3}.${+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 i4 = 0; i4 < set2.length; i4++) {
        if (!set2[i4].test(version2)) {
          return false;
        }
      }
      if (version2.prerelease.length && !options.includePrerelease) {
        for (let i4 = 0; i4 < set2.length; i4++) {
          debug(set2[i4].semver);
          if (set2[i4].semver === Comparator.ANY) {
            continue;
          }
          if (set2[i4].semver.prerelease.length > 0) {
            const allowed = set2[i4].semver;
            if (allowed.major === version2.major && allowed.minor === version2.minor && allowed.patch === version2.patch) {
              return true;
            }
          }
        }
        return false;
      }
      return true;
    };
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/semver/7.8.5/50b76942b76b1567bb275b07b36d4efd1f7bc678ee222317e6ec7ff2c047c60d/node_modules/semver/classes/comparator.js
var require_comparator = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/semver/7.8.5/50b76942b76b1567bb275b07b36d4efd1f7bc678ee222317e6ec7ff2c047c60d/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();
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/semver/7.8.5/50b76942b76b1567bb275b07b36d4efd1f7bc678ee222317e6ec7ff2c047c60d/node_modules/semver/functions/satisfies.js
var require_satisfies = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/semver/7.8.5/50b76942b76b1567bb275b07b36d4efd1f7bc678ee222317e6ec7ff2c047c60d/node_modules/semver/functions/satisfies.js"(exports2, module2) {
    "use strict";
    var Range = require_range();
    var satisfies4 = (version2, range, options) => {
      try {
        range = new Range(range, options);
      } catch (er) {
        return false;
      }
      return range.test(version2);
    };
    module2.exports = satisfies4;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/semver/7.8.5/50b76942b76b1567bb275b07b36d4efd1f7bc678ee222317e6ec7ff2c047c60d/node_modules/semver/ranges/to-comparators.js
var require_to_comparators = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/semver/7.8.5/50b76942b76b1567bb275b07b36d4efd1f7bc678ee222317e6ec7ff2c047c60d/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;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/semver/7.8.5/50b76942b76b1567bb275b07b36d4efd1f7bc678ee222317e6ec7ff2c047c60d/node_modules/semver/ranges/max-satisfying.js
var require_max_satisfying = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/semver/7.8.5/50b76942b76b1567bb275b07b36d4efd1f7bc678ee222317e6ec7ff2c047c60d/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 max4 = 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 (!max4 || maxSV.compare(v) === -1) {
            max4 = v;
            maxSV = new SemVer(max4, options);
          }
        }
      });
      return max4;
    };
    module2.exports = maxSatisfying;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/semver/7.8.5/50b76942b76b1567bb275b07b36d4efd1f7bc678ee222317e6ec7ff2c047c60d/node_modules/semver/ranges/min-satisfying.js
var require_min_satisfying = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/semver/7.8.5/50b76942b76b1567bb275b07b36d4efd1f7bc678ee222317e6ec7ff2c047c60d/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;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/semver/7.8.5/50b76942b76b1567bb275b07b36d4efd1f7bc678ee222317e6ec7ff2c047c60d/node_modules/semver/ranges/min-version.js
var require_min_version = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/semver/7.8.5/50b76942b76b1567bb275b07b36d4efd1f7bc678ee222317e6ec7ff2c047c60d/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 i4 = 0; i4 < range.set.length; ++i4) {
        const comparators = range.set[i4];
        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;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/semver/7.8.5/50b76942b76b1567bb275b07b36d4efd1f7bc678ee222317e6ec7ff2c047c60d/node_modules/semver/ranges/valid.js
var require_valid2 = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/semver/7.8.5/50b76942b76b1567bb275b07b36d4efd1f7bc678ee222317e6ec7ff2c047c60d/node_modules/semver/ranges/valid.js"(exports2, module2) {
    "use strict";
    var Range = require_range();
    var validRange4 = (range, options) => {
      try {
        return new Range(range, options).range || "*";
      } catch (er) {
        return null;
      }
    };
    module2.exports = validRange4;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/semver/7.8.5/50b76942b76b1567bb275b07b36d4efd1f7bc678ee222317e6ec7ff2c047c60d/node_modules/semver/ranges/outside.js
var require_outside = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/semver/7.8.5/50b76942b76b1567bb275b07b36d4efd1f7bc678ee222317e6ec7ff2c047c60d/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 satisfies4 = require_satisfies();
    var gt = require_gt();
    var lt2 = 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 = lt2;
          comp = ">";
          ecomp = ">=";
          break;
        case "<":
          gtfn = lt2;
          ltefn = gte;
          ltfn = gt;
          comp = "<";
          ecomp = "<=";
          break;
        default:
          throw new TypeError('Must provide a hilo val of "<" or ">"');
      }
      if (satisfies4(version2, range, options)) {
        return false;
      }
      for (let i4 = 0; i4 < range.set.length; ++i4) {
        const comparators = range.set[i4];
        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;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/semver/7.8.5/50b76942b76b1567bb275b07b36d4efd1f7bc678ee222317e6ec7ff2c047c60d/node_modules/semver/ranges/gtr.js
var require_gtr = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/semver/7.8.5/50b76942b76b1567bb275b07b36d4efd1f7bc678ee222317e6ec7ff2c047c60d/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;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/semver/7.8.5/50b76942b76b1567bb275b07b36d4efd1f7bc678ee222317e6ec7ff2c047c60d/node_modules/semver/ranges/ltr.js
var require_ltr = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/semver/7.8.5/50b76942b76b1567bb275b07b36d4efd1f7bc678ee222317e6ec7ff2c047c60d/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;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/semver/7.8.5/50b76942b76b1567bb275b07b36d4efd1f7bc678ee222317e6ec7ff2c047c60d/node_modules/semver/ranges/intersects.js
var require_intersects = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/semver/7.8.5/50b76942b76b1567bb275b07b36d4efd1f7bc678ee222317e6ec7ff2c047c60d/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;
  }
});

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

// ../../../../../setup-pnpm/store/v11/links/@/semver/7.8.5/50b76942b76b1567bb275b07b36d4efd1f7bc678ee222317e6ec7ff2c047c60d/node_modules/semver/ranges/subset.js
var require_subset = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/semver/7.8.5/50b76942b76b1567bb275b07b36d4efd1f7bc678ee222317e6ec7ff2c047c60d/node_modules/semver/ranges/subset.js"(exports2, module2) {
    "use strict";
    var Range = require_range();
    var Comparator = require_comparator();
    var { ANY } = Comparator;
    var satisfies4 = require_satisfies();
    var compare3 = 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, lt2;
      for (const c3 of sub) {
        if (c3.operator === ">" || c3.operator === ">=") {
          gt = higherGT(gt, c3, options);
        } else if (c3.operator === "<" || c3.operator === "<=") {
          lt2 = lowerLT(lt2, c3, options);
        } else {
          eqSet.add(c3.semver);
        }
      }
      if (eqSet.size > 1) {
        return null;
      }
      let gtltComp;
      if (gt && lt2) {
        gtltComp = compare3(gt.semver, lt2.semver, options);
        if (gtltComp > 0) {
          return null;
        } else if (gtltComp === 0 && (gt.operator !== ">=" || lt2.operator !== "<=")) {
          return null;
        }
      }
      for (const eq of eqSet) {
        if (gt && !satisfies4(eq, String(gt), options)) {
          return null;
        }
        if (lt2 && !satisfies4(eq, String(lt2), options)) {
          return null;
        }
        for (const c3 of dom) {
          if (!satisfies4(eq, String(c3), options)) {
            return false;
          }
        }
        return true;
      }
      let higher, lower;
      let hasDomLT, hasDomGT;
      let needDomLTPre = lt2 && !options.includePrerelease && lt2.semver.prerelease.length ? lt2.semver : false;
      let needDomGTPre = gt && !options.includePrerelease && gt.semver.prerelease.length ? gt.semver : false;
      if (needDomLTPre && needDomLTPre.prerelease.length === 1 && lt2.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 (lt2) {
          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(lt2, c3, options);
            if (lower === c3 && lower !== lt2) {
              return false;
            }
          } else if (lt2.operator === "<=" && !c3.test(lt2.semver)) {
            return false;
          }
        }
        if (!c3.operator && (lt2 || gt) && gtltComp !== 0) {
          return false;
        }
      }
      if (gt && hasDomLT && !lt2 && gtltComp !== 0) {
        return false;
      }
      if (lt2 && hasDomGT && !gt && gtltComp !== 0) {
        return false;
      }
      if (needDomGTPre || needDomLTPre) {
        return false;
      }
      return true;
    };
    var higherGT = (a2, b, options) => {
      if (!a2) {
        return b;
      }
      const comp = compare3(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 = compare3(a2.semver, b.semver, options);
      return comp < 0 ? a2 : comp > 0 ? b : b.operator === "<" && a2.operator === "<=" ? b : a2;
    };
    module2.exports = subset;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/semver/7.8.5/50b76942b76b1567bb275b07b36d4efd1f7bc678ee222317e6ec7ff2c047c60d/node_modules/semver/index.js
var require_semver2 = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/semver/7.8.5/50b76942b76b1567bb275b07b36d4efd1f7bc678ee222317e6ec7ff2c047c60d/node_modules/semver/index.js"(exports2, module2) {
    "use strict";
    var internalRe = require_re();
    var constants6 = require_constants();
    var SemVer = require_semver();
    var identifiers = require_identifiers();
    var parse12 = require_parse();
    var valid6 = require_valid();
    var clean2 = require_clean();
    var inc3 = require_inc();
    var diff2 = require_diff();
    var major = require_major();
    var minor = require_minor();
    var patch = require_patch();
    var prerelease = require_prerelease();
    var compare3 = require_compare();
    var rcompare = require_rcompare();
    var compareLoose = require_compare_loose();
    var compareBuild = require_compare_build();
    var sort = require_sort();
    var rsort2 = require_rsort();
    var gt = require_gt();
    var lt2 = 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 satisfies4 = require_satisfies();
    var toComparators = require_to_comparators();
    var maxSatisfying = require_max_satisfying();
    var minSatisfying = require_min_satisfying();
    var minVersion = require_min_version();
    var validRange4 = 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: parse12,
      valid: valid6,
      clean: clean2,
      inc: inc3,
      diff: diff2,
      major,
      minor,
      patch,
      prerelease,
      compare: compare3,
      rcompare,
      compareLoose,
      compareBuild,
      sort,
      rsort: rsort2,
      gt,
      lt: lt2,
      eq,
      neq,
      gte,
      lte,
      cmp,
      coerce,
      truncate,
      Comparator,
      Range,
      satisfies: satisfies4,
      toComparators,
      maxSatisfying,
      minSatisfying,
      minVersion,
      validRange: validRange4,
      outside,
      gtr,
      ltr,
      intersects,
      simplifyRange,
      subset,
      SemVer,
      re: internalRe.re,
      src: internalRe.src,
      tokens: internalRe.t,
      SEMVER_SPEC_VERSION: constants6.SEMVER_SPEC_VERSION,
      RELEASE_TYPES: constants6.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:");
}
function isAcceptablePeerSpec(version2) {
  return isValidPeerRange(version2) || version2.includes(":");
}
function getPeerVersionRange(version2) {
  if (version2.includes("||")) {
    return version2.split("||").map((part) => getPeerVersionRange(part.trim())).join(" || ");
  }
  if (isValidPeerRange(version2)) {
    return version2.replace(/^workspace:/, "");
  }
  const colon = version2.indexOf(":");
  if (colon > 0) {
    const body = version2.slice(colon + 1);
    if ((0, import_semver.validRange)(body) != null)
      return body;
    const at = body.lastIndexOf("@");
    if (at > 0 && (0, import_semver.validRange)(body.slice(at + 1)) != null)
      return body.slice(at + 1);
  }
  return "*";
}
var import_semver;
var init_lib10 = __esm({
  "../deps/peer-range/lib/index.js"() {
    "use strict";
    import_semver = __toESM(require_semver2(), 1);
  }
});

// ../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_lib10();
    init_lib9();
    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 : {}
  };
}
var init_lib11 = __esm({
  "../pkg-manifest/utils/lib/index.js"() {
    "use strict";
    init_getAllUniqueSpecs();
    init_getSpecFromPackageManifest();
    init_convertEnginesRuntimeToDependencies();
    init_getAllDependenciesFromManifest();
    init_getDependencyTypeFromManifest();
    init_updateProjectManifestObject();
  }
});

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

// ../../../../../setup-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 i4 = n2 - 1; i4 >= 0; --i4) {
    const info = strings2[i4];
    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({
  "../../../../../setup-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 i4 = 0; i4 < stringStarters.length; ++i4) {
        item = stringStarters[i4];
        const index2 = str2.indexOf(item.char);
        if (index2 > -1 && lastIndex < 0) {
          lastIndex = index2;
          winner = i4;
        }
        if (index2 > -1 && index2 < lastIndex) {
          lastIndex = index2;
          winner = i4;
        }
        item.index = index2;
      }
      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 i4 = 0; i4 < n2; ++i4) {
        const currentChar = str2[i4];
        if (currentChar === "\\") {
          ++i4;
          continue;
        }
        if (specialCharStart && currentChar === specialCharStart) {
          const newStr = str2.substring(i4);
          const stp = getNextClosingElement(newStr, specialCharEnd);
          i4 += stp.index;
        }
        if (chars.includes(currentChar)) {
          return {
            index: i4
          };
        }
      }
      return {
        index: -1
      };
    };
    movePointerIndex = (str2, index2) => {
      str2 = str2.substring(index2);
      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 index2 = {};
  const canonicalizer = /[\s'"]/g;
  for (let i4 = 0; i4 < jsonLines.length; ++i4) {
    const key = jsonLines[i4].replace(canonicalizer, "");
    if (key in index2) {
      index2[key] = -1;
    } else {
      index2[key] = i4;
    }
  }
  const jsonPrefix = {};
  for (const comment of comments) {
    let key = comment.on.replace(canonicalizer, "");
    if (key && index2[key] !== void 0 && index2[key] >= 0) {
      jsonLines[index2[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 && index2[key] !== void 0) {
        location = index2[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 && index2[key] !== void 0 && index2[key] >= 0) {
        jsonLines[index2[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 i4 = 0; i4 < jsonLines.length; ++i4) {
    if (jsonPrefix[i4]) {
      jsonLines[i4] = jsonPrefix[i4] + "\n" + jsonLines[i4];
    }
  }
  return jsonLines.join("\n");
}
var init_insertComments = __esm({
  "../text/comments-parser/lib/insertComments.js"() {
    "use strict";
  }
});

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

// ../../../../../setup-pnpm/store/v11/links/@/json5/2.2.3/f162a9b4613e6c0b6bda605606cba5f1d6fe32bf2ae34c6f3248b8ba7db73c93/node_modules/json5/lib/unicode.js
var require_unicode = __commonJS({
  "../../../../../setup-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]/;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/json5/2.2.3/f162a9b4613e6c0b6bda605606cba5f1d6fe32bf2ae34c6f3248b8ba7db73c93/node_modules/json5/lib/util.js
var require_util2 = __commonJS({
  "../../../../../setup-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);
      }
    };
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/json5/2.2.3/f162a9b4613e6c0b6bda605606cba5f1d6fe32bf2ae34c6f3248b8ba7db73c93/node_modules/json5/lib/parse.js
var require_parse7 = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/json5/2.2.3/f162a9b4613e6c0b6bda605606cba5f1d6fe32bf2ae34c6f3248b8ba7db73c93/node_modules/json5/lib/parse.js"(exports2, module2) {
    var util70 = require_util2();
    var source;
    var parseState;
    var stack;
    var pos;
    var line;
    var column;
    var token;
    var key;
    var root;
    module2.exports = function parse12(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 i4 = 0; i4 < value.length; i4++) {
            const key2 = String(i4);
            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 (util70.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 u2 = unicodeEscape();
        switch (u2) {
          case "$":
          case "_":
            break;
          default:
            if (!util70.isIdStartChar(u2)) {
              throw invalidIdentifier();
            }
            break;
        }
        buffer3 += u2;
        lexState = "identifierName";
      },
      identifierName() {
        switch (c3) {
          case "$":
          case "_":
          case "\u200C":
          case "\u200D":
            buffer3 += read2();
            return;
          case "\\":
            read2();
            lexState = "identifierNameEscape";
            return;
        }
        if (util70.isIdContinueChar(c3)) {
          buffer3 += read2();
          return;
        }
        return newToken("identifier", buffer3);
      },
      identifierNameEscape() {
        if (c3 !== "u") {
          throw invalidChar(read2());
        }
        read2();
        const u2 = unicodeEscape();
        switch (u2) {
          case "$":
          case "_":
          case "\u200C":
          case "\u200D":
            break;
          default:
            if (!util70.isIdContinueChar(u2)) {
              throw invalidIdentifier();
            }
            break;
        }
        buffer3 += u2;
        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 (util70.isDigit(c3)) {
          buffer3 += read2();
          return;
        }
        return newToken("numeric", sign * Number(buffer3));
      },
      decimalPointLeading() {
        if (util70.isDigit(c3)) {
          buffer3 += read2();
          lexState = "decimalFraction";
          return;
        }
        throw invalidChar(read2());
      },
      decimalPoint() {
        switch (c3) {
          case "e":
          case "E":
            buffer3 += read2();
            lexState = "decimalExponent";
            return;
        }
        if (util70.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 (util70.isDigit(c3)) {
          buffer3 += read2();
          return;
        }
        return newToken("numeric", sign * Number(buffer3));
      },
      decimalExponent() {
        switch (c3) {
          case "+":
          case "-":
            buffer3 += read2();
            lexState = "decimalExponentSign";
            return;
        }
        if (util70.isDigit(c3)) {
          buffer3 += read2();
          lexState = "decimalExponentInteger";
          return;
        }
        throw invalidChar(read2());
      },
      decimalExponentSign() {
        if (util70.isDigit(c3)) {
          buffer3 += read2();
          lexState = "decimalExponentInteger";
          return;
        }
        throw invalidChar(read2());
      },
      decimalExponentInteger() {
        if (util70.isDigit(c3)) {
          buffer3 += read2();
          return;
        }
        return newToken("numeric", sign * Number(buffer3));
      },
      hexadecimal() {
        if (util70.isHexDigit(c3)) {
          buffer3 += read2();
          lexState = "hexadecimalInteger";
          return;
        }
        throw invalidChar(read2());
      },
      hexadecimalInteger() {
        if (util70.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 (util70.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 (util70.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 (!util70.isHexDigit(c4)) {
        throw invalidChar(read2());
      }
      buffer4 += read2();
      c4 = peek();
      if (!util70.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 (!util70.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 replacements3 = {
        "'": "\\'",
        '"': '\\"',
        "\\": "\\\\",
        "\b": "\\b",
        "\f": "\\f",
        "\n": "\\n",
        "\r": "\\r",
        "	": "\\t",
        "\v": "\\v",
        "\0": "\\0",
        "\u2028": "\\u2028",
        "\u2029": "\\u2029"
      };
      if (replacements3[c4]) {
        return replacements3[c4];
      }
      if (c4 < " ") {
        const hexString = c4.charCodeAt(0).toString(16);
        return "\\x" + ("00" + hexString).substring(hexString.length);
      }
      return c4;
    }
    function syntaxError(message) {
      const err2 = new SyntaxError(message);
      err2.lineNumber = line;
      err2.columnNumber = column;
      return err2;
    }
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/json5/2.2.3/f162a9b4613e6c0b6bda605606cba5f1d6fe32bf2ae34c6f3248b8ba7db73c93/node_modules/json5/lib/stringify.js
var require_stringify2 = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/json5/2.2.3/f162a9b4613e6c0b6bda605606cba5f1d6fe32bf2ae34c6f3248b8ba7db73c93/node_modules/json5/lib/stringify.js"(exports2, module2) {
    var util70 = require_util2();
    module2.exports = function stringify2(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 replacements3 = {
          "'": "\\'",
          '"': '\\"',
          "\\": "\\\\",
          "\b": "\\b",
          "\f": "\\f",
          "\n": "\\n",
          "\r": "\\r",
          "	": "\\t",
          "\v": "\\v",
          "\0": "\\0",
          "\u2028": "\\u2028",
          "\u2029": "\\u2029"
        };
        let product = "";
        for (let i4 = 0; i4 < value2.length; i4++) {
          const c3 = value2[i4];
          switch (c3) {
            case "'":
            case '"':
              quotes[c3]++;
              product += c3;
              continue;
            case "\0":
              if (util70.isDigit(value2[i4 + 1])) {
                product += "\\x00";
                continue;
              }
          }
          if (replacements3[c3]) {
            product += replacements3[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"), replacements3[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 (!util70.isIdStartChar(firstChar)) {
          return quoteString2(key, true);
        }
        for (let i4 = firstChar.length; i4 < key.length; i4++) {
          if (!util70.isIdContinueChar(String.fromCodePoint(key.codePointAt(i4)))) {
            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 i4 = 0; i4 < value2.length; i4++) {
          const propertyString = serializeProperty(String(i4), 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;
      }
    };
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/json5/2.2.3/f162a9b4613e6c0b6bda605606cba5f1d6fe32bf2ae34c6f3248b8ba7db73c93/node_modules/json5/lib/index.js
var require_lib9 = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/json5/2.2.3/f162a9b4613e6c0b6bda605606cba5f1d6fe32bf2ae34c6f3248b8ba7db73c93/node_modules/json5/lib/index.js"(exports2, module2) {
    var parse12 = require_parse7();
    var stringify2 = require_stringify2();
    var JSON53 = {
      parse: parse12,
      stringify: stringify2
    };
    module2.exports = JSON53;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/signal-exit/4.1.0/03c01b974932dd7697f8480d6655f349321edaf97b16deb799df3fcd267f2475/node_modules/signal-exit/dist/cjs/signals.js
var require_signals = __commonJS({
  "../../../../../setup-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");
    }
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/signal-exit/4.1.0/03c01b974932dd7697f8480d6655f349321edaf97b16deb799df3fcd267f2475/node_modules/signal-exit/dist/cjs/index.js
var require_cjs = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/signal-exit/4.1.0/03c01b974932dd7697f8480d6655f349321edaf97b16deb799df3fcd267f2475/node_modules/signal-exit/dist/cjs/index.js"(exports2) {
    "use strict";
    var _a2;
    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 = (process26) => !!process26 && typeof process26 === "object" && typeof process26.removeListener === "function" && typeof process26.emit === "function" && typeof process26.reallyExit === "function" && typeof process26.listeners === "function" && typeof process26.kill === "function" && typeof process26.pid === "number" && typeof process26.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 i4 = list2.indexOf(fn);
        if (i4 === -1) {
          return;
        }
        if (i4 === 0 && list2.length === 1) {
          list2.length = 0;
        } else {
          list2.splice(i4, 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 = (handler83) => {
      return {
        onExit(cb, opts3) {
          return handler83.onExit(cb, opts3);
        },
        load() {
          return handler83.load();
        },
        unload() {
          return handler83.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 = process25.platform === "win32" ? "SIGINT" : "SIGHUP";
      /* c8 ignore stop */
      #emitter = new Emitter2();
      #process;
      #originalProcessEmit;
      #originalProcessReallyExit;
      #sigListeners = {};
      #loaded = false;
      constructor(process26) {
        super();
        this.#process = process26;
        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 = process26;
            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)
                process26.kill(process26.pid, s);
            }
          };
        }
        this.#originalProcessReallyExit = process26.reallyExit;
        this.#originalProcessEmit = process26.emit;
      }
      onExit(cb, opts3) {
        if (!processOk2(this.#process)) {
          return () => {
          };
        }
        if (this.#loaded === false) {
          this.load();
        }
        const ev = opts3?.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 process25 = globalThis.process;
    _a2 = signalExitWrap2(processOk2(process25) ? new SignalExit2(process25) : 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 = _a2.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 = _a2.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 = _a2.unload;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/write-file-atomic/7.0.1/3f58e6a24a6082d2cd35ba9cf64ab163d8e567e01caa4bf20e304366e65c2727/node_modules/write-file-atomic/lib/index.js
var require_lib10 = __commonJS({
  "../../../../../setup-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 fs131 = __require("fs");
    var crypto14 = __require("node:crypto");
    var { onExit: onExit2 } = require_cjs();
    var path240 = __require("path");
    var { promisify: promisify15 } = __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 + "." + crypto14.createHash("sha1").update(__filename).update(String(process.pid)).update(String(threadId2)).update(String(++invocations)).digest().readUInt32BE(0);
    }
    function cleanupOnExit2(tmpfile) {
      return () => {
        try {
          fs131.unlinkSync(typeof tmpfile === "function" ? tmpfile() : tmpfile);
        } catch {
        }
      };
    }
    function serializeActiveFile(absoluteName) {
      return new Promise((resolve4) => {
        if (!activeFiles[absoluteName]) {
          activeFiles[absoluteName] = [];
        }
        activeFiles[absoluteName].push(resolve4);
        if (activeFiles[absoluteName].length === 1) {
          resolve4();
        }
      });
    }
    function isChownErrOk(err2) {
      if (err2.code === "ENOSYS") {
        return true;
      }
      const nonroot = !process.getuid || process.getuid() !== 0;
      if (nonroot) {
        if (err2.code === "EINVAL" || err2.code === "EPERM") {
          return true;
        }
      }
      return false;
    }
    async function writeFileAsync(filename, data, options = {}) {
      if (typeof options === "string") {
        options = { encoding: options };
      }
      let fd2;
      let tmpfile;
      const removeOnExitHandler = onExit2(cleanupOnExit2(() => tmpfile));
      const absoluteName = path240.resolve(filename);
      try {
        await serializeActiveFile(absoluteName);
        const truename = await promisify15(fs131.realpath)(filename).catch(() => filename);
        tmpfile = getTmpname(truename);
        if (!options.mode || !options.chown) {
          const stats = await promisify15(fs131.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 };
            }
          }
        }
        fd2 = await promisify15(fs131.open)(tmpfile, "w", options.mode);
        if (options.tmpfileCreated) {
          await options.tmpfileCreated(tmpfile);
        }
        if (ArrayBuffer.isView(data)) {
          await promisify15(fs131.write)(fd2, data, 0, data.length, 0);
        } else if (data != null) {
          await promisify15(fs131.write)(fd2, String(data), 0, String(options.encoding || "utf8"));
        }
        if (options.fsync !== false) {
          await promisify15(fs131.fsync)(fd2);
        }
        await promisify15(fs131.close)(fd2);
        fd2 = null;
        if (options.chown) {
          await promisify15(fs131.chown)(tmpfile, options.chown.uid, options.chown.gid).catch((err2) => {
            if (!isChownErrOk(err2)) {
              throw err2;
            }
          });
        }
        if (options.mode) {
          await promisify15(fs131.chmod)(tmpfile, options.mode).catch((err2) => {
            if (!isChownErrOk(err2)) {
              throw err2;
            }
          });
        }
        await promisify15(fs131.rename)(tmpfile, truename);
      } finally {
        if (fd2) {
          await promisify15(fs131.close)(fd2).catch(
            /* istanbul ignore next */
            () => {
            }
          );
        }
        removeOnExitHandler();
        await promisify15(fs131.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 (err2) {
          return callback2(err2);
        }
      }
      return promise2;
    }
    function writeFileSync2(filename, data, options) {
      if (typeof options === "string") {
        options = { encoding: options };
      } else if (!options) {
        options = {};
      }
      try {
        filename = fs131.realpathSync(filename);
      } catch (ex) {
      }
      const tmpfile = getTmpname(filename);
      if (!options.mode || !options.chown) {
        try {
          const stats = fs131.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 fd2;
      const cleanup2 = cleanupOnExit2(tmpfile);
      const removeOnExitHandler = onExit2(cleanup2);
      let threw = true;
      try {
        fd2 = fs131.openSync(tmpfile, "w", options.mode || 438);
        if (options.tmpfileCreated) {
          options.tmpfileCreated(tmpfile);
        }
        if (ArrayBuffer.isView(data)) {
          fs131.writeSync(fd2, data, 0, data.length, 0);
        } else if (data != null) {
          fs131.writeSync(fd2, String(data), 0, String(options.encoding || "utf8"));
        }
        if (options.fsync !== false) {
          fs131.fsyncSync(fd2);
        }
        fs131.closeSync(fd2);
        fd2 = null;
        if (options.chown) {
          try {
            fs131.chownSync(tmpfile, options.chown.uid, options.chown.gid);
          } catch (err2) {
            if (!isChownErrOk(err2)) {
              throw err2;
            }
          }
        }
        if (options.mode) {
          try {
            fs131.chmodSync(tmpfile, options.mode);
          } catch (err2) {
            if (!isChownErrOk(err2)) {
              throw err2;
            }
          }
        }
        fs131.renameSync(tmpfile, filename);
        threw = false;
      } finally {
        if (fd2) {
          try {
            fs131.closeSync(fd2);
          } catch (ex) {
          }
        }
        removeOnExitHandler();
        if (threw) {
          cleanup2();
        }
      }
    }
  }
});

// ../../../../../setup-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 index2, length, key, sourceKeys;
  if (source) {
    sourceKeys = Object.keys(source);
    for (index2 = 0, length = sourceKeys.length; index2 < length; index2 += 1) {
      key = sourceKeys[index2];
      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, max4) {
  return common.repeat(" ", max4 - 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 = "", i4, line;
  var lineNoLength = Math.min(mark.line + options.linesAfter, lineEnds.length).toString().length;
  var maxLineLength = options.maxLength - (options.indent + lineNoLength + 3);
  for (i4 = 1; i4 <= options.linesBefore; i4++) {
    if (foundLineNo - i4 < 0) break;
    line = getLine(
      mark.buffer,
      lineStarts[foundLineNo - i4],
      lineEnds[foundLineNo - i4],
      mark.position - (lineStarts[foundLineNo] - lineStarts[foundLineNo - i4]),
      maxLineLength
    );
    result2 = common.repeat(" ", options.indent) + padStart((mark.line - i4 + 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 (i4 = 1; i4 <= options.linesAfter; i4++) {
    if (foundLineNo + i4 >= lineEnds.length) break;
    line = getLine(
      mark.buffer,
      lineStarts[foundLineNo + i4],
      lineEnds[foundLineNo + i4],
      mark.position - (lineStarts[foundLineNo] - lineStarts[foundLineNo + i4]),
      maxLineLength
    );
    result2 += common.repeat(" ", options.indent) + padStart((mark.line + i4 + 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, index2) {
    return exclude.indexOf(index2) === -1;
  });
}
function compileMap() {
  var result2 = {
    scalar: {},
    sequence: {},
    mapping: {},
    fallback: {},
    multi: {
      scalar: [],
      sequence: [],
      mapping: [],
      fallback: []
    }
  }, index2, 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 (index2 = 0, length = arguments.length; index2 < length; index2 += 1) {
    arguments[index2].forEach(collectType);
  }
  return result2;
}
function Schema$1(definition) {
  return this.extend(definition);
}
function resolveYamlNull(data) {
  if (data === null) return true;
  var max4 = data.length;
  return max4 === 1 && data === "~" || max4 === 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 max4 = data.length;
  return max4 === 4 && (data === "true" || data === "True" || data === "TRUE") || max4 === 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 max4 = data.length, index2 = 0, hasDigits = false, ch;
  if (!max4) return false;
  ch = data[index2];
  if (ch === "-" || ch === "+") {
    ch = data[++index2];
  }
  if (ch === "0") {
    if (index2 + 1 === max4) return true;
    ch = data[++index2];
    if (ch === "b") {
      index2++;
      for (; index2 < max4; index2++) {
        ch = data[index2];
        if (ch === "_") continue;
        if (ch !== "0" && ch !== "1") return false;
        hasDigits = true;
      }
      return hasDigits && ch !== "_";
    }
    if (ch === "x") {
      index2++;
      for (; index2 < max4; index2++) {
        ch = data[index2];
        if (ch === "_") continue;
        if (!isHexCode(data.charCodeAt(index2))) return false;
        hasDigits = true;
      }
      return hasDigits && ch !== "_";
    }
    if (ch === "o") {
      index2++;
      for (; index2 < max4; index2++) {
        ch = data[index2];
        if (ch === "_") continue;
        if (!isOctCode(data.charCodeAt(index2))) return false;
        hasDigits = true;
      }
      return hasDigits && ch !== "_";
    }
  }
  if (ch === "_") return false;
  for (; index2 < max4; index2++) {
    ch = data[index2];
    if (ch === "_") continue;
    if (!isDecCode(data.charCodeAt(index2))) {
      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, max4 = data.length, map26 = BASE64_MAP;
  for (idx = 0; idx < max4; 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, ""), max4 = input.length, map26 = BASE64_MAP, bits2 = 0, result2 = [];
  for (idx = 0; idx < max4; idx++) {
    if (idx % 4 === 0 && idx) {
      result2.push(bits2 >> 16 & 255);
      result2.push(bits2 >> 8 & 255);
      result2.push(bits2 & 255);
    }
    bits2 = bits2 << 6 | map26.indexOf(input.charAt(idx));
  }
  tailbits = max4 % 4 * 6;
  if (tailbits === 0) {
    result2.push(bits2 >> 16 & 255);
    result2.push(bits2 >> 8 & 255);
    result2.push(bits2 & 255);
  } else if (tailbits === 18) {
    result2.push(bits2 >> 10 & 255);
    result2.push(bits2 >> 2 & 255);
  } else if (tailbits === 12) {
    result2.push(bits2 >> 4 & 255);
  }
  return new Uint8Array(result2);
}
function representYamlBinary(object) {
  var result2 = "", bits2 = 0, idx, tail2, max4 = object.length, map26 = BASE64_MAP;
  for (idx = 0; idx < max4; idx++) {
    if (idx % 3 === 0 && idx) {
      result2 += map26[bits2 >> 18 & 63];
      result2 += map26[bits2 >> 12 & 63];
      result2 += map26[bits2 >> 6 & 63];
      result2 += map26[bits2 & 63];
    }
    bits2 = (bits2 << 8) + object[idx];
  }
  tail2 = max4 % 3;
  if (tail2 === 0) {
    result2 += map26[bits2 >> 18 & 63];
    result2 += map26[bits2 >> 12 & 63];
    result2 += map26[bits2 >> 6 & 63];
    result2 += map26[bits2 & 63];
  } else if (tail2 === 2) {
    result2 += map26[bits2 >> 10 & 63];
    result2 += map26[bits2 >> 4 & 63];
    result2 += map26[bits2 << 2 & 63];
    result2 += map26[64];
  } else if (tail2 === 1) {
    result2 += map26[bits2 >> 2 & 63];
    result2 += map26[bits2 << 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 = [], index2, length, pair, pairKey, pairHasKey, object = data;
  for (index2 = 0, length = object.length; index2 < length; index2 += 1) {
    pair = object[index2];
    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 index2, length, pair, keys4, result2, object = data;
  result2 = new Array(object.length);
  for (index2 = 0, length = object.length; index2 < length; index2 += 1) {
    pair = object[index2];
    if (_toString$1.call(pair) !== "[object Object]") return false;
    keys4 = Object.keys(pair);
    if (keys4.length !== 1) return false;
    result2[index2] = [keys4[0], pair[keys4[0]]];
  }
  return true;
}
function constructYamlPairs(data) {
  if (data === null) return [];
  var index2, length, pair, keys4, result2, object = data;
  result2 = new Array(object.length);
  for (index2 = 0, length = object.length; index2 < length; index2 += 1) {
    pair = object[index2];
    keys4 = Object.keys(pair);
    result2[index2] = [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 lc2;
  if (48 <= c3 && c3 <= 57) {
    return c3 - 48;
  }
  lc2 = c3 | 32;
  if (97 <= lc2 && lc2 <= 102) {
    return lc2 - 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, index2, quantity;
  if (!common.isObject(source)) {
    throwError(state, "cannot merge mappings; the provided source object is unacceptable");
  }
  sourceKeys = Object.keys(source);
  for (index2 = 0, quantity = sourceKeys.length; index2 < quantity; index2 += 1) {
    key = sourceKeys[index2];
    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 index2, quantity;
  if (Array.isArray(keyNode)) {
    keyNode = Array.prototype.slice.call(keyNode);
    for (index2 = 0, quantity = keyNode.length; index2 < quantity; index2 += 1) {
      if (Array.isArray(keyNode[index2])) {
        throwError(state, "nested arrays are not supported inside keys");
      }
      if (typeof keyNode === "object" && _class(keyNode[index2]) === "[object Object]") {
        keyNode[index2] = "[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 (index2 = 0, quantity = valueNode.length; index2 < quantity; index2 += 1) {
        mergeMappings(state, _result, valueNode[index2], 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 (err2) {
    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 index2 = 0, length = documents.length; index2 < length; index2 += 1) {
    iterator(documents[index2]);
  }
}
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, index2, length, tag, style, type4;
  if (map26 === null) return {};
  result2 = {};
  keys4 = Object.keys(map26);
  for (index2 = 0, length = keys4.length; index2 < length; index2 += 1) {
    tag = keys4[index2];
    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 index2, length, type4;
  for (index2 = 0, length = state.implicitTypes.length; index2 < length; index2 += 1) {
    type4 = state.implicitTypes[index2];
    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 i4;
  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 (i4 = 0; i4 < string.length; char >= 65536 ? i4 += 2 : i4++) {
      char = codePointAt(string, i4);
      if (!isPrintable(char)) {
        return STYLE_DOUBLE;
      }
      plain = plain && isPlainSafe(char, prevChar, inblock);
      prevChar = char;
    }
  } else {
    for (i4 = 0; i4 < string.length; char >= 65536 ? i4 += 2 : i4++) {
      char = codePointAt(string, i4);
      if (char === CHAR_LINE_FEED) {
        hasLineBreak = true;
        if (shouldTrackWidth) {
          hasFoldableLine = hasFoldableLine || // Foldable line = too long, and not more-indented.
          i4 - previousLineBreak - 1 > lineWidth && string[previousLineBreak + 1] !== " ";
          previousLineBreak = i4;
        }
      } else if (!isPrintable(char)) {
        return STYLE_DOUBLE;
      }
      plain = plain && isPlainSafe(char, prevChar, inblock);
      prevChar = char;
    }
    hasFoldableLine = hasFoldableLine || shouldTrackWidth && (i4 - 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 i4 = 0; i4 < string.length; char >= 65536 ? i4 += 2 : i4++) {
    char = codePointAt(string, i4);
    escapeSeq = ESCAPE_SEQUENCES[char];
    if (!escapeSeq && isPrintable(char)) {
      result2 += string[i4];
      if (char >= 65536) result2 += string[i4 + 1];
    } else {
      result2 += escapeSeq || encodeHex(char);
    }
  }
  return result2;
}
function writeFlowSequence(state, level, object) {
  var _result = "", _tag = state.tag, index2, length, value;
  for (index2 = 0, length = object.length; index2 < length; index2 += 1) {
    value = object[index2];
    if (state.replacer) {
      value = state.replacer.call(object, String(index2), 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, index2, length, value;
  for (index2 = 0, length = object.length; index2 < length; index2 += 1) {
    value = object[index2];
    if (state.replacer) {
      value = state.replacer.call(object, String(index2), 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), index2, length, objectKey, objectValue, pairBuffer;
  for (index2 = 0, length = objectKeyList.length; index2 < length; index2 += 1) {
    pairBuffer = "";
    if (_result !== "") pairBuffer += ", ";
    if (state.condenseFlow) pairBuffer += '"';
    objectKey = objectKeyList[index2];
    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), index2, 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 (index2 = 0, length = objectKeyList.length; index2 < length; index2 += 1) {
    pairBuffer = "";
    if (!compact || _result !== "") {
      pairBuffer += generateNextLine(state, level, doubleLine);
    }
    objectKey = objectKeyList[index2];
    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, index2, length, type4, style;
  typeList = explicit ? state.explicitTypes : state.implicitTypes;
  for (index2 = 0, length = typeList.length; index2 < length; index2 += 1) {
    type4 = typeList[index2];
    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 = [], index2, length;
  inspectNode(object, objects, duplicatesIndexes);
  for (index2 = 0, length = duplicatesIndexes.length; index2 < length; index2 += 1) {
    state.duplicates.push(objects[duplicatesIndexes[index2]]);
  }
  state.usedDuplicates = new Array(length);
}
function inspectNode(object, objects, duplicatesIndexes) {
  var objectKeyList, index2, length;
  if (object !== null && typeof object === "object") {
    index2 = objects.indexOf(object);
    if (index2 !== -1) {
      if (duplicatesIndexes.indexOf(index2) === -1) {
        duplicatesIndexes.push(index2);
      }
    } else {
      objects.push(object);
      if (Array.isArray(object)) {
        for (index2 = 0, length = object.length; index2 < length; index2 += 1) {
          inspectNode(object[index2], objects, duplicatesIndexes);
        }
      } else {
        objectKeyList = Object.keys(object);
        for (index2 = 0, length = objectKeyList.length; index2 < length; index2 += 1) {
          inspectNode(object[objectKeyList[index2]], 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, i, 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({
  "../../../../../setup-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 (i = 0; i < 256; i++) {
      simpleEscapeCheck[i] = simpleEscapeSequence(i) ? 1 : 0;
      simpleEscapeMap[i] = simpleEscapeSequence(i);
    }
    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 (err2) {
          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
    };
  }
});

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

// ../workspace/project-manifest-writer/lib/index.js
import { promises as fs5 } from "node:fs";
import path12 from "node:path";
async function writeProjectManifest(filePath, manifest, opts3) {
  const fileType = filePath.slice(filePath.lastIndexOf(".") + 1).toLowerCase();
  if (fileType === "yaml") {
    return writeYamlFile(filePath, manifest, YAML_FORMAT);
  }
  await fs5.mkdir(path12.dirname(filePath), { recursive: true });
  const trailingNewline = opts3?.insertFinalNewline === false ? "" : "\n";
  const indent = opts3?.indent ?? "	";
  const json2 = fileType === "json5" ? stringifyJson5(manifest, indent, opts3?.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_lib13 = __esm({
  "../workspace/project-manifest-writer/lib/index.js"() {
    "use strict";
    init_lib12();
    import_json5 = __toESM(require_lib9(), 1);
    import_write_file_atomic2 = __toESM(require_lib10(), 1);
    init_write_yaml_file();
    YAML_FORMAT = {
      noCompatMode: true,
      noRefs: true
    };
  }
});

// ../../../../../setup-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({
  "../../../../../setup-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";
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/fast-deep-equal/3.1.3/57fbe5fd6f7d3bd61519466ad102884cc9e5511fabd9777317b6582805433878/node_modules/fast-deep-equal/index.js
var require_fast_deep_equal = __commonJS({
  "../../../../../setup-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, i4, keys4;
        if (Array.isArray(a2)) {
          length = a2.length;
          if (length != b.length) return false;
          for (i4 = length; i4-- !== 0; )
            if (!equal2(a2[i4], b[i4])) 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 (i4 = length; i4-- !== 0; )
          if (!Object.prototype.hasOwnProperty.call(b, keys4[i4])) return false;
        for (i4 = length; i4-- !== 0; ) {
          var key = keys4[i4];
          if (!equal2(a2[key], b[key])) return false;
        }
        return true;
      }
      return a2 !== a2 && b !== b;
    };
  }
});

// ../../../../../setup-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({
  "../../../../../setup-pnpm/store/v11/links/@/strip-bom/5.0.0/c5abc9f591760d7581de2026bc6da7f255db82a0b75d02fcc6cebf460005b3e6/node_modules/strip-bom/index.js"() {
  }
});

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

// ../fs/graceful-fs/lib/index.js
import util3, { promisify } from "node:util";
function withEagainRetry(fn, maxRetries = 15) {
  return (...args) => {
    let attempts = 0;
    while (attempts <= maxRetries) {
      try {
        return fn(...args);
      } catch (err2) {
        if (util3.types.isNativeError(err2) && "code" in err2 && err2.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 err2;
      }
    }
    throw new Error("Unreachable");
  };
}
var import_graceful_fs2, lib_default;
var init_lib14 = __esm({
  "../fs/graceful-fs/lib/index.js"() {
    "use strict";
    import_graceful_fs2 = __toESM(require_graceful_fs(), 1);
    lib_default = {
      chmod: promisify(import_graceful_fs2.default.chmod),
      copyFile: promisify(import_graceful_fs2.default.copyFile),
      copyFileSync: withEagainRetry(import_graceful_fs2.default.copyFileSync),
      createReadStream: import_graceful_fs2.default.createReadStream,
      link: promisify(import_graceful_fs2.default.link),
      linkSync: withEagainRetry(import_graceful_fs2.default.linkSync),
      mkdir: promisify(import_graceful_fs2.default.mkdir),
      mkdirSync: withEagainRetry(import_graceful_fs2.default.mkdirSync),
      renameSync: withEagainRetry(import_graceful_fs2.default.renameSync),
      readFile: promisify(import_graceful_fs2.default.readFile),
      readFileSync: import_graceful_fs2.default.readFileSync,
      readdirSync: import_graceful_fs2.default.readdirSync,
      stat: promisify(import_graceful_fs2.default.stat),
      statSync: import_graceful_fs2.default.statSync,
      unlink: promisify(import_graceful_fs2.default.unlink),
      unlinkSync: import_graceful_fs2.default.unlinkSync,
      writeFile: promisify(import_graceful_fs2.default.writeFile),
      writeFileSync: withEagainRetry(import_graceful_fs2.default.writeFileSync)
    };
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/picocolors/1.1.1/a2cca8821324d9b53ce284317d33c07b8ca7ab5b808164538a24d91cf6e92abb/node_modules/picocolors/picocolors.js
var require_picocolors = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/picocolors/1.1.1/a2cca8821324d9b53ce284317d33c07b8ca7ab5b808164538a24d91cf6e92abb/node_modules/picocolors/picocolors.js"(exports2, module2) {
    var p = process || {};
    var argv2 = p.argv || [];
    var env4 = p.env || {};
    var isColorSupported = !(!!env4.NO_COLOR || argv2.includes("--no-color")) && (!!env4.FORCE_COLOR || argv2.includes("--color") || p.platform === "win32" || (p.stdout || {}).isTTY && env4.TERM !== "dumb" || !!env4.CI);
    var formatter = (open3, close, replace = open3) => (input) => {
      let string = "" + input, index2 = string.indexOf(close, open3.length);
      return ~index2 ? open3 + replaceClose(string, close, replace, index2) + close : open3 + string + close;
    };
    var replaceClose = (string, close, replace, index2) => {
      let result2 = "", cursor = 0;
      do {
        result2 += string.substring(cursor, index2) + replace;
        cursor = index2 + close.length;
        index2 = string.indexOf(close, cursor);
      } while (~index2);
      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;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/js-tokens/4.0.0/038d358beec99e899526453c19c712efb8d8c5672151a59f81b2da0b0ce1913e/node_modules/js-tokens/index.js
var require_js_tokens = __commonJS({
  "../../../../../setup-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;
    };
  }
});

// ../../../../../setup-pnpm/store/v11/links/@babel/helper-validator-identifier/7.29.7/245b100303fa501912a996539728e1dbb2e9186a607cc4cbcbe5771b75348cad/node_modules/@babel/helper-validator-identifier/lib/identifier.js
var require_identifier = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@babel/helper-validator-identifier/7.29.7/245b100303fa501912a996539728e1dbb2e9186a607cc4cbcbe5771b75348cad/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 i4 = 0, length = set2.length; i4 < length; i4 += 2) {
        pos += set2[i4];
        if (pos > code) return false;
        pos += set2[i4 + 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 i4 = 0; i4 < name.length; i4++) {
        let cp = name.charCodeAt(i4);
        if ((cp & 64512) === 55296 && i4 + 1 < name.length) {
          const trail = name.charCodeAt(++i4);
          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;
    }
  }
});

// ../../../../../setup-pnpm/store/v11/links/@babel/helper-validator-identifier/7.29.7/245b100303fa501912a996539728e1dbb2e9186a607cc4cbcbe5771b75348cad/node_modules/@babel/helper-validator-identifier/lib/keyword.js
var require_keyword = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@babel/helper-validator-identifier/7.29.7/245b100303fa501912a996539728e1dbb2e9186a607cc4cbcbe5771b75348cad/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);
    }
  }
});

// ../../../../../setup-pnpm/store/v11/links/@babel/helper-validator-identifier/7.29.7/245b100303fa501912a996539728e1dbb2e9186a607cc4cbcbe5771b75348cad/node_modules/@babel/helper-validator-identifier/lib/index.js
var require_lib11 = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@babel/helper-validator-identifier/7.29.7/245b100303fa501912a996539728e1dbb2e9186a607cc4cbcbe5771b75348cad/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();
  }
});

// ../../../../../setup-pnpm/store/v11/links/@babel/code-frame/7.29.7/f646253350eccedbd048ec93dac6746cd644e4b8d171437bc71f5b670a2ee453/node_modules/@babel/code-frame/lib/index.js
var require_lib12 = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@babel/code-frame/7.29.7/f646253350eccedbd048ec93dac6746cd644e4b8d171437bc71f5b670a2ee453/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_lib11();
    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, opts3, startLineBaseZero) {
      const startLoc = Object.assign({
        column: 0,
        line: -1
      }, loc.start);
      const endLoc = Object.assign({}, startLoc, loc.end);
      const {
        linesAbove = 2,
        linesBelow = 3
      } = opts3 || {};
      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 i4 = 0; i4 <= lineDiff; i4++) {
          const lineNumber = i4 + startLine;
          if (!startColumn) {
            markerLines[lineNumber] = true;
          } else if (i4 === 0) {
            const sourceLength = source[lineNumber - 1].length;
            markerLines[lineNumber] = [startColumn, sourceLength - startColumn + 1];
          } else if (i4 === lineDiff) {
            markerLines[lineNumber] = [0, endColumn];
          } else {
            const sourceLength = source[lineNumber - i4].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, opts3 = {}) {
      const shouldHighlight = opts3.forceColor || isColorSupported() && opts3.highlightCode;
      const startLineBaseZero = (opts3.startLine || 1) - 1;
      const defs = getDefs(shouldHighlight);
      const lines = rawLines.split(NEWLINE);
      const {
        start,
        end,
        markerLines
      } = getMarkerLines(loc, lines, opts3, 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, index3) => {
        const number = start + 1 + index3;
        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 && opts3.message) {
              markerLine += " " + defs.message(opts3.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 (opts3.message && !hasColumns) {
        frame = `${" ".repeat(numberMaxWidth + 1)}${opts3.message}
${frame}`;
      }
      if (shouldHighlight) {
        return defs.reset(frame);
      } else {
        return frame;
      }
    }
    function index2(rawLines, lineNumber, colNumber, opts3 = {}) {
      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, opts3);
    }
    exports2.codeFrameColumns = codeFrameColumns2;
    exports2.default = index2;
    exports2.highlight = highlight2;
  }
});

// ../../../../../setup-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({
  "../../../../../setup-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];
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/parse-json/8.3.0/3014bad20dbe1491c02be7a2d772f178763ab8b89549661c57bc31c8ad22dfe6/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({
  "../../../../../setup-pnpm/store/v11/links/@/parse-json/8.3.0/3014bad20dbe1491c02be7a2d772f178763ab8b89549661c57bc31c8ad22dfe6/node_modules/parse-json/index.js"() {
    import_code_frame = __toESM(require_lib12(), 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: index2, line, column } = match.groups;
      if (line && column) {
        return { line: Number(line), column: Number(column) };
      }
      return indexToPosition(string, Number(index2), { 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 (err2) {
    err2.message = `${err2.message} in ${filePath}`;
    err2["code"] = "ERR_PNPM_JSON5_PARSE";
    throw err2;
  }
}
async function readJsonFile(filePath) {
  const text = await readFileWithoutBom(filePath);
  try {
    return {
      data: parseJson(text, filePath),
      text
    };
  } catch (err2) {
    err2["code"] = "ERR_PNPM_JSON_PARSE";
    throw err2;
  }
}
async function readFileWithoutBom(path240) {
  return stripBom(await lib_default.readFile(path240, "utf8"));
}
var import_json52;
var init_readFile = __esm({
  "../workspace/project-manifest-reader/lib/readFile.js"() {
    "use strict";
    init_lib14();
    import_json52 = __toESM(require_lib9(), 1);
    init_parse_json();
    init_strip_bom();
  }
});

// ../workspace/project-manifest-reader/lib/index.js
import { promises as fs7 } from "node:fs";
import path13 from "node:path";
async function safeReadProjectManifestOnly(projectDir) {
  return limitProjectManifestReads(async () => {
    try {
      return await readProjectManifestOnly(projectDir);
    } catch (err2) {
      if (err2.code === "ERR_PNPM_NO_IMPORTER_MANIFEST_FOUND") {
        return null;
      }
      throw err2;
    }
  });
}
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 = path13.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 (err2) {
    if (err2.code !== "ENOENT")
      throw err2;
  }
  try {
    const manifestPath = path13.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 (err2) {
    if (err2.code !== "ENOENT")
      throw err2;
  }
  try {
    const manifestPath = path13.join(projectDir, "package.yaml");
    const manifest = await readPackageYaml(manifestPath);
    return {
      fileName: "package.yaml",
      manifest: convertManifestAfterRead(manifest),
      writeProjectManifest: createManifestWriter({ initialManifest: manifest, manifestPath })
    };
  } catch (err2) {
    if (err2.code !== "ENOENT")
      throw err2;
  }
  if ((0, import_is_windows4.default)()) {
    let s;
    try {
      s = await fs7.stat(projectDir);
    } catch (err2) {
    }
    if (s != null && !s.isDirectory()) {
      const err2 = new Error(`"${projectDir}" is not a directory`);
      err2["code"] = "ENOTDIR";
      throw err2;
    }
  }
  const filePath = path13.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 = path13.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 (err2) {
    if (err2.name !== "YAMLException")
      throw err2;
    err2.message = `${err2.message}
in ${filePath}`;
    err2.code = "ERR_PNPM_YAML_PARSE";
    throw err2;
  }
}
function createManifestWriter(opts3) {
  let initialManifest = normalize2(opts3.initialManifest);
  return async (updatedManifest, force) => {
    updatedManifest = convertManifestBeforeWrite(normalize2(updatedManifest));
    if (force === true || !(0, import_fast_deep_equal.default)(initialManifest, updatedManifest)) {
      await writeProjectManifest(opts3.manifestPath, updatedManifest, {
        comments: opts3.comments,
        indent: opts3.indent,
        insertFinalNewline: opts3.insertFinalNewline
      });
      initialManifest = normalize2(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) {
  const dependencies = readDependenciesField(manifest, dependenciesFieldName);
  for (const runtimeName of ["node", "deno", "bun"]) {
    const dep = dependencies?.[runtimeName];
    if (dependencies != null && typeof dep === "string" && dep.startsWith("runtime:")) {
      const version2 = dep.slice("runtime:".length).trim();
      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
        ];
      }
      delete dependencies[runtimeName];
    } else {
      removeManagedRuntimeEntry(manifest[enginesFieldName], runtimeName);
    }
  }
}
function readDependenciesField(manifest, dependenciesFieldName) {
  const dependencies = manifest[dependenciesFieldName];
  if (dependencies === void 0)
    return void 0;
  if (dependencies === null || typeof dependencies !== "object" || Array.isArray(dependencies)) {
    throw new PnpmError("INVALID_DEPENDENCIES_FIELD", `The "${dependenciesFieldName}" field must be an object.`);
  }
  return dependencies;
}
function removeManagedRuntimeEntry(enginesField, runtimeName) {
  if (!enginesField?.runtime)
    return;
  if (Array.isArray(enginesField.runtime)) {
    const runtimes = enginesField.runtime.filter((runtime) => !isManagedRuntimeEntry(runtime, runtimeName));
    if (runtimes.length === 0) {
      delete enginesField.runtime;
    } else {
      enginesField.runtime = runtimes;
    }
  } else if (isManagedRuntimeEntry(enginesField.runtime, runtimeName)) {
    delete enginesField.runtime;
  }
}
function isManagedRuntimeEntry(runtime, runtimeName) {
  return runtime.name === runtimeName && runtime.onFail === "download" && typeof runtime.version === "string";
}
function normalize2(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) || Array.isArray(value)) {
        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_windows4, limitProjectManifestReads, dependencyKeys;
var init_lib15 = __esm({
  "../workspace/project-manifest-reader/lib/index.js"() {
    "use strict";
    init_lib2();
    init_lib11();
    init_lib12();
    init_lib13();
    init_detect_indent();
    import_fast_deep_equal = __toESM(require_fast_deep_equal(), 1);
    import_is_windows4 = __toESM(require_is_windows(), 1);
    init_p_limit();
    init_read_yaml_file();
    init_readFile();
    limitProjectManifestReads = pLimit(4);
    dependencyKeys = /* @__PURE__ */ new Set([
      "dependencies",
      "devDependencies",
      "optionalDependencies",
      "peerDependencies"
    ]);
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/cmd-extension/1.0.2/d4e95e91e23d5ee84d5767c67145583dee351ce7379d1a67bfa94dd4ea2f593c/node_modules/cmd-extension/index.js
var require_cmd_extension = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/cmd-extension/1.0.2/d4e95e91e23d5ee84d5767c67145583dee351ce7379d1a67bfa94dd4ea2f593c/node_modules/cmd-extension/index.js"(exports2, module2) {
    "use strict";
    var path240 = __require("path");
    var cmdExtension2;
    if (process.env.PATHEXT) {
      cmdExtension2 = process.env.PATHEXT.split(path240.delimiter).find((ext) => ext.toUpperCase() === ".CMD");
    }
    module2.exports = cmdExtension2 || ".cmd";
  }
});

// ../../../../../setup-pnpm/store/v11/links/@zkochan/cmd-shim/9.0.6/a6e5be07669e7815d21d9b9a9cb0240e731666984b908ff4ce7635a7e4b85e3a/node_modules/@zkochan/cmd-shim/index.js
import path14 from "node:path";
import { promisify as promisify2 } from "node:util";
function ingestOptions(opts3) {
  const opts_ = { ...DEFAULT_OPTIONS, ...opts3 };
  opts_.fs_ = opts_.fs ? opts_.fs.promises : gfsPromises;
  return opts_;
}
async function cmdShim(src2, to, opts3) {
  const opts_ = ingestOptions(opts3);
  await cmdShim_(src2, to, opts_);
}
function isShimPointingAt(shimContent, src2) {
  return shimContent.includes(`# ${shimTarget(src2)}
`);
}
function rm(path240, opts3) {
  return opts3.fs_.unlink(path240).catch(() => {
  });
}
async function cmdShim_(src2, to, opts3) {
  const srcRuntimeInfo = await searchScriptRuntime(src2, opts3);
  await writeShimsPreCommon(to, opts3);
  return writeAllShims(src2, to, srcRuntimeInfo, opts3);
}
function writeShimsPreCommon(target2, opts3) {
  return opts3.fs_.mkdir(path14.dirname(target2), { recursive: true });
}
function writeAllShims(src2, to, srcRuntimeInfo, opts3) {
  const opts_ = ingestOptions(opts3);
  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, opts3) {
  return rm(target2, opts3);
}
function writeShimPost(target2, opts3) {
  return chmodShim(target2, opts3);
}
async function searchScriptRuntime(target2, opts3) {
  try {
    const data = await opts3.fs_.readFile(target2, "utf8");
    const firstLine = data.trim().split(/\r*\n/)[0];
    const shebang = firstLine.match(shebangExpr);
    if (!shebang) {
      const targetExtension = path14.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 (err2) {
    if (!isWindows5 || err2.code !== "ENOENT")
      throw err2;
    if (await opts3.fs_.stat(`${target2}${getExeExtension()}`)) {
      return {
        program: null,
        additionalArgs: ""
      };
    }
    throw err2;
  }
}
function getExeExtension() {
  let cmdExtension2;
  if (process.env.PATHEXT) {
    cmdExtension2 = process.env.PATHEXT.split(path14.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, opts3) {
  const defaultArgs = opts3.preserveSymlinks ? "--preserve-symlinks" : "";
  const args = [srcRuntimeInfo.additionalArgs, defaultArgs].filter((arg) => arg).join(" ");
  opts3 = Object.assign({}, opts3, {
    prog: srcRuntimeInfo.program,
    args
  });
  await writeShimPre(to, opts3);
  await opts3.fs_.writeFile(to, generateShimScript(src2, to, opts3), "utf8");
  return writeShimPost(to, opts3);
}
function generateCmdShim(src2, to, opts3) {
  const shTarget = path14.relative(path14.dirname(to), src2);
  let target2 = shTarget.split("/").join("\\");
  const quotedPathToTarget = path14.isAbsolute(target2) ? `"${target2}"` : `"%~dp0\\${target2}"`;
  let longProg;
  let prog = opts3.prog;
  let args = opts3.args || "";
  const nodePath = normalizePathEnvVar(opts3.nodePath).win32;
  const prependToPath = normalizePathEnvVar(opts3.prependToPath).win32;
  if (!prog) {
    prog = quotedPathToTarget;
    args = "";
    target2 = "";
  } else if (prog === "node" && opts3.nodeExecPath) {
    prog = `"${opts3.nodeExecPath}"`;
    target2 = quotedPathToTarget;
  } else {
    longProg = `"%~dp0\\${prog}.exe"`;
    target2 = quotedPathToTarget;
  }
  let progArgs = opts3.progArgs ? `${opts3.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, opts3) {
  let shTarget = path14.relative(path14.dirname(to), src2);
  let shProg = opts3.prog && opts3.prog.split("\\").join("/");
  let shLongProg;
  let shLongProgExe = "";
  let shProgExe = "";
  let shProgHasExe = false;
  shTarget = shTarget.split("\\").join("/");
  const quotedPathToTarget = path14.isAbsolute(shTarget) ? `"${shTarget}"` : `"$basedir/${shTarget}"`;
  const quotedPathToTarget_win = path14.isAbsolute(shTarget) ? `"${shTarget}"` : `"$basedir_win/${shTarget}"`;
  let shTarget_win = "";
  let args = opts3.args || "";
  const isCmdRuntime = opts3.prog === "cmd" || opts3.prog === "cmd.exe";
  const shNodePath = normalizePathEnvVar(opts3.nodePath).posix;
  if (!shProg) {
    shProg = quotedPathToTarget;
    args = "";
    shTarget = "";
  } else if (opts3.prog === "node" && opts3.nodeExecPath) {
    shProg = `"${opts3.nodeExecPath}"`;
    shTarget = /\.exe$/.test(opts3.nodeExecPath) ? quotedPathToTarget_win : quotedPathToTarget;
  } else {
    shProgHasExe = /\.exe$/i.test(shProg);
    shProgExe = shProgHasExe ? shProg : `${shProg}.exe`;
    shLongProg = `"$basedir/${shProg}"`;
    shLongProgExe = `"$basedir/${shProgExe}"`;
    shTarget = quotedPathToTarget;
    shTarget_win = quotedPathToTarget_win;
  }
  let progArgs = opts3.progArgs ? `${opts3.progArgs.join(` `)} ` : "";
  let sh = `#!/bin/sh
basedir=$(dirname "$(echo "$0" | sed -e 's,\\\\,/,g')")
basedir_win="$basedir"
exe=""
msys=""

case \`uname -a\` in
  *CYGWIN*|*MINGW*|*MSYS*)
    if command -v cygpath > /dev/null 2>&1; then
      basedir_win=\`cygpath -w "$basedir"\`
    fi
    exe=".exe"
    msys="true"
  ;;
  *WSL2*)
    if command -v wslpath > /dev/null 2>&1; then
      basedir_win="$(wslpath -w "$basedir" 2> /dev/null)"
      if [ $? -ne 0 ] || [ -z "$basedir_win" ]; then
        basedir_win="$basedir"
      else
        exe=".exe"
      fi
    fi
  ;;
esac

`;
  if (opts3.prependToPath) {
    sh += `export PATH="${opts3.prependToPath}:$PATH"
`;
  }
  if (shNodePath) {
    sh += `if [ -z "$NODE_PATH" ]; then
  export NODE_PATH="${shNodePath}"
else
  export NODE_PATH="${shNodePath}:$NODE_PATH"
fi
`;
  }
  const generateExecBlock = (execArgs) => {
    if (shLongProg) {
      if (shProgHasExe) {
        return `if [ -x ${shLongProgExe} ]; then
  exec ${shLongProgExe} ${execArgs} ${shTarget_win} ${progArgs}"$@"
else
  exec ${shProgExe} ${execArgs} ${shTarget_win} ${progArgs}"$@"
fi
`;
      } else {
        return `if [ -n "$exe" ] && [ -x ${shLongProgExe} ]; then
  exec ${shLongProgExe} ${execArgs} ${shTarget_win} ${progArgs}"$@"
elif [ -x ${shLongProg} ]; then
  exec ${shLongProg} ${execArgs} ${shTarget} ${progArgs}"$@"
elif command -v ${shProg} >/dev/null 2>&1; then
  exec ${shProg} ${execArgs} ${shTarget} ${progArgs}"$@"
elif [ -n "$exe" ] && command -v ${shProgExe} >/dev/null 2>&1; then
  exec ${shProgExe} ${execArgs} ${shTarget_win} ${progArgs}"$@"
else
  exec ${shProg} ${execArgs} ${shTarget} ${progArgs}"$@"
fi
`;
      }
    } else {
      return `exec ${shProg} ${execArgs} ${shTarget} ${progArgs}"$@"
exit $?
`;
    }
  };
  const msysArgs = isCmdRuntime ? escapeMsysCmdSwitches(args) : args;
  if (msysArgs !== args) {
    sh += `if [ -n "$msys" ]; then
${indentShellBlock(generateExecBlock(msysArgs))}
else
${indentShellBlock(generateExecBlock(args))}
fi
`;
  } else {
    sh += generateExecBlock(args);
  }
  sh += `# ${shimTarget(src2)}
`;
  return sh;
}
function indentShellBlock(script) {
  return script.split("\n").map((line) => line ? `  ${line}` : line).join("\n");
}
function generatePwshShim(src2, to, opts3) {
  let shTarget = path14.relative(path14.dirname(to), src2);
  const shProg = opts3.prog && opts3.prog.split("\\").join("/");
  let pwshProg = shProg && `"${shProg}$exe"`;
  let pwshLongProg;
  shTarget = shTarget.split("\\").join("/");
  const quotedPathToTarget = path14.isAbsolute(shTarget) ? `"${shTarget}"` : `"$basedir/${shTarget}"`;
  let args = opts3.args || "";
  let normalizedNodePathEnvVar = normalizePathEnvVar(opts3.nodePath);
  const nodePath = normalizedNodePathEnvVar.win32;
  const shNodePath = normalizedNodePathEnvVar.posix;
  let normalizedPrependPathEnvVar = normalizePathEnvVar(opts3.prependToPath);
  const prependPath = normalizedPrependPathEnvVar.win32;
  const shPrependPath = normalizedPrependPathEnvVar.posix;
  if (!pwshProg) {
    pwshProg = quotedPathToTarget;
    args = "";
    shTarget = "";
  } else if (opts3.prog === "node" && opts3.nodeExecPath) {
    pwshProg = `"${opts3.nodeExecPath}"`;
    shTarget = quotedPathToTarget;
  } else {
    pwshLongProg = `"$basedir/${opts3.prog}$exe"`;
    shTarget = quotedPathToTarget;
  }
  let progArgs = opts3.progArgs ? `${opts3.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 (opts3.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, opts3) {
  return opts3.fs_.chmod(to, 493);
}
function normalizePathEnvVar(nodePath) {
  if (!nodePath || !nodePath.length) {
    return {
      win32: "",
      posix: ""
    };
  }
  let split4 = typeof nodePath === "string" ? nodePath.split(path14.delimiter) : Array.from(nodePath);
  let result2 = {};
  for (let i4 = 0; i4 < split4.length; i4++) {
    const win32 = split4[i4].split("/").join("\\");
    const posix2 = isWindows5 ? split4[i4].split("\\").join("/").replace(/^([^:\\/]*):/, (_, $1) => `${isCygwin() ? "/proc/cygdrive" : "/mnt"}/${$1.toLowerCase()}`) : split4[i4];
    result2.win32 = result2.win32 ? `${result2.win32};${win32}` : win32;
    result2.posix = result2.posix ? `${result2.posix}:${posix2}` : posix2;
    result2[i4] = { 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_OPTIONS, extensionToProgramMap;
var init_cmd_shim = __esm({
  "../../../../../setup-pnpm/store/v11/links/@zkochan/cmd-shim/9.0.6/a6e5be07669e7815d21d9b9a9cb0240e731666984b908ff4ce7635a7e4b85e3a/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: promisify2(import_graceful_fs3.default.chmod),
      mkdir: promisify2(import_graceful_fs3.default.mkdir),
      readFile: promisify2(import_graceful_fs3.default.readFile),
      stat: promisify2(import_graceful_fs3.default.stat),
      unlink: promisify2(import_graceful_fs3.default.unlink),
      writeFile: promisify2(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_OPTIONS = {
      // 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"]
    ]);
  }
});

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

// ../../../../../setup-pnpm/store/v11/links/@/bin-links/6.0.2/214b5bc954b4e61c6b3800d2738e2f43b82349e2ff9ae51f98467b4bc5e7aaaa/node_modules/bin-links/lib/fix-bin.js
var require_fix_bin = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/bin-links/6.0.2/214b5bc954b4e61c6b3800d2738e2f43b82349e2ff9ae51f98467b4bc5e7aaaa/node_modules/bin-links/lib/fix-bin.js"(exports2, module2) {
    var {
      chmod,
      open: open3,
      readFile: readFile5
    } = __require("fs/promises");
    var execMode = 511 & ~process.umask();
    var writeFileAtomic11 = require_lib10();
    var isWindowsHashBang = (buf) => buf[0] === "#".charCodeAt(0) && buf[1] === "!".charCodeAt(0) && /^#![^\n]+\r\n/.test(buf.toString());
    var isWindowsHashbangFile = (file) => {
      const FALSE = () => false;
      return open3(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) => readFile5(file, "utf8").then((content) => writeFileAtomic11(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;
  }
});

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

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

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

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

// ../../../../../setup-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({
  "../../../../../setup-pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/internal/_isPlaceholder.js"() {
  }
});

// ../../../../../setup-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({
  "../../../../../setup-pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/internal/_curry1.js"() {
    init_isPlaceholder();
  }
});

// ../../../../../setup-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(_b2) {
          return fn(a2, _b2);
        });
      default:
        return _isPlaceholder(a2) && _isPlaceholder(b) ? f2 : _isPlaceholder(a2) ? _curry1(function(_a2) {
          return fn(_a2, b);
        }) : _isPlaceholder(b) ? _curry1(function(_b2) {
          return fn(a2, _b2);
        }) : fn(a2, b);
    }
  };
}
var init_curry2 = __esm({
  "../../../../../setup-pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/internal/_curry2.js"() {
    init_curry1();
    init_isPlaceholder();
  }
});

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

// ../../../../../setup-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({
  "../../../../../setup-pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/internal/_concat.js"() {
  }
});

// ../../../../../setup-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({
  "../../../../../setup-pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/internal/_arity.js"() {
  }
});

// ../../../../../setup-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({
  "../../../../../setup-pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/internal/_curryN.js"() {
    init_arity();
    init_isPlaceholder();
  }
});

// ../../../../../setup-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({
  "../../../../../setup-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;
  }
});

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

// ../../../../../setup-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(_b2, _c) {
          return fn(a2, _b2, _c);
        });
      case 2:
        return _isPlaceholder(a2) && _isPlaceholder(b) ? f3 : _isPlaceholder(a2) ? _curry2(function(_a2, _c) {
          return fn(_a2, b, _c);
        }) : _isPlaceholder(b) ? _curry2(function(_b2, _c) {
          return fn(a2, _b2, _c);
        }) : _curry1(function(_c) {
          return fn(a2, b, _c);
        });
      default:
        return _isPlaceholder(a2) && _isPlaceholder(b) && _isPlaceholder(c3) ? f3 : _isPlaceholder(a2) && _isPlaceholder(b) ? _curry2(function(_a2, _b2) {
          return fn(_a2, _b2, c3);
        }) : _isPlaceholder(a2) && _isPlaceholder(c3) ? _curry2(function(_a2, _c) {
          return fn(_a2, b, _c);
        }) : _isPlaceholder(b) && _isPlaceholder(c3) ? _curry2(function(_b2, _c) {
          return fn(a2, _b2, _c);
        }) : _isPlaceholder(a2) ? _curry1(function(_a2) {
          return fn(_a2, b, c3);
        }) : _isPlaceholder(b) ? _curry1(function(_b2) {
          return fn(a2, _b2, c3);
        }) : _isPlaceholder(c3) ? _curry1(function(_c) {
          return fn(a2, b, _c);
        }) : fn(a2, b, c3);
    }
  };
}
var init_curry3 = __esm({
  "../../../../../setup-pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/internal/_curry3.js"() {
    init_curry1();
    init_curry2();
    init_isPlaceholder();
  }
});

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

// ../../../../../setup-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({
  "../../../../../setup-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]";
    };
  }
});

// ../../../../../setup-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({
  "../../../../../setup-pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/internal/_isTransformer.js"() {
  }
});

// ../../../../../setup-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({
  "../../../../../setup-pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/internal/_dispatchable.js"() {
    init_isArray();
    init_isTransformer();
  }
});

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

// ../../../../../setup-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({
  "../../../../../setup-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);
      }
    };
  }
});

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

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

// ../../../../../setup-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({
  "../../../../../setup-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;
  }
});

// ../../../../../setup-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({
  "../../../../../setup-pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/internal/_map.js"() {
  }
});

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

// ../../../../../setup-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({
  "../../../../../setup-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(x3) {
      if (isArray_default(x3)) {
        return true;
      }
      if (!x3) {
        return false;
      }
      if (typeof x3 !== "object") {
        return false;
      }
      if (_isString(x3)) {
        return false;
      }
      if (x3.length === 0) {
        return true;
      }
      if (x3.length > 0) {
        return x3.hasOwnProperty(0) && x3.hasOwnProperty(x3.length - 1);
      }
      return false;
    });
    isArrayLike_default = _isArrayLike;
  }
});

// ../../../../../setup-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({
  "../../../../../setup-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, x3) {
        return this.f(acc, x3);
      };
      return XWrap2;
    })();
  }
});

// ../../../../../setup-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({
  "../../../../../setup-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;
  }
});

// ../../../../../setup-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({
  "../../../../../setup-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";
  }
});

// ../../../../../setup-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({
  "../../../../../setup-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;
  }
});

// ../../../../../setup-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({
  "../../../../../setup-pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/internal/_has.js"() {
  }
});

// ../../../../../setup-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({
  "../../../../../setup-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(x3) {
        return toString2.call(x3) === "[object Arguments]";
      } : function _isArguments2(x3) {
        return _has("callee", x3);
      };
    })();
    isArguments_default = _isArguments;
  }
});

// ../../../../../setup-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({
  "../../../../../setup-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;
  }
});

// ../../../../../setup-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({
  "../../../../../setup-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;
  }
});

// ../../../../../setup-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({
  "../../../../../setup-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;
    };
  }
});

// ../../../../../setup-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({
  "../../../../../setup-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;
  }
});

// ../../../../../setup-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({
  "../../../../../setup-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;
  }
});

// ../../../../../setup-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({
  "../../../../../setup-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;
  }
});

// ../../../../../setup-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({
  "../../../../../setup-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;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/allPass.js
var init_allPass = __esm({
  "../../../../../setup-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();
  }
});

// ../../../../../setup-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({
  "../../../../../setup-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;
  }
});

// ../../../../../setup-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({
  "../../../../../setup-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;
  }
});

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

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

// ../../../../../setup-pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/anyPass.js
var init_anyPass = __esm({
  "../../../../../setup-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();
  }
});

// ../../../../../setup-pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/ap.js
var init_ap = __esm({
  "../../../../../setup-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();
  }
});

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

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

// ../../../../../setup-pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/aperture.js
var init_aperture2 = __esm({
  "../../../../../setup-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();
  }
});

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

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

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

// ../../../../../setup-pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/applySpec.js
var init_applySpec = __esm({
  "../../../../../setup-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();
  }
});

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

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

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

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

// ../../../../../setup-pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/assocPath.js
var init_assocPath = __esm({
  "../../../../../setup-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();
  }
});

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

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

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

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

// ../../../../../setup-pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/liftN.js
var init_liftN = __esm({
  "../../../../../setup-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();
  }
});

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

// ../../../../../setup-pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/both.js
var init_both = __esm({
  "../../../../../setup-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();
  }
});

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

// ../../../../../setup-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({
  "../../../../../setup-pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/internal/_makeFlat.js"() {
    init_isArrayLike();
  }
});

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

// ../../../../../setup-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({
  "../../../../../setup-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;
  }
});

// ../../../../../setup-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({
  "../../../../../setup-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;
  }
});

// ../../../../../setup-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({
  "../../../../../setup-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(x3) {
            return fn(monad(x3))(x3);
          };
        }
        return _makeFlat(false)(map_default(fn, monad));
      })
    );
    chain_default = chain;
  }
});

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

// ../../../../../setup-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({
  "../../../../../setup-pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/internal/_cloneRegExp.js"() {
  }
});

// ../../../../../setup-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({
  "../../../../../setup-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;
  }
});

// ../../../../../setup-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({
  "../../../../../setup-pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/internal/_clone.js"() {
    init_cloneRegExp();
    init_type();
  }
});

// ../../../../../setup-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({
  "../../../../../setup-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;
  }
});

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

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

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

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

// ../../../../../setup-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({
  "../../../../../setup-pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/internal/_pipe.js"() {
  }
});

// ../../../../../setup-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({
  "../../../../../setup-pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/internal/_checkForMethod.js"() {
    init_isArray();
  }
});

// ../../../../../setup-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({
  "../../../../../setup-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;
  }
});

// ../../../../../setup-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({
  "../../../../../setup-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;
  }
});

// ../../../../../setup-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({
  "../../../../../setup-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();
  }
});

// ../../../../../setup-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({
  "../../../../../setup-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;
  }
});

// ../../../../../setup-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({
  "../../../../../setup-pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/compose.js"() {
    init_pipe2();
    init_reverse();
  }
});

// ../../../../../setup-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({
  "../../../../../setup-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;
  }
});

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

// ../../../../../setup-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({
  "../../../../../setup-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;
  }
});

// ../../../../../setup-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({
  "../../../../../setup-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;
  }
});

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

// ../../../../../setup-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({
  "../../../../../setup-pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/internal/_arrayFromIterator.js"() {
  }
});

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

// ../../../../../setup-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({
  "../../../../../setup-pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/internal/_functionName.js"() {
  }
});

// ../../../../../setup-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({
  "../../../../../setup-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;
  }
});

// ../../../../../setup-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(_a2, _b2) {
    return _equals(_a2, _b2, 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({
  "../../../../../setup-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();
  }
});

// ../../../../../setup-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({
  "../../../../../setup-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;
  }
});

// ../../../../../setup-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({
  "../../../../../setup-pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/internal/_indexOf.js"() {
    init_equals2();
  }
});

// ../../../../../setup-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({
  "../../../../../setup-pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/internal/_includes.js"() {
    init_indexOf();
  }
});

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

// ../../../../../setup-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({
  "../../../../../setup-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(d3) {
      return d3.toISOString();
    } : function _toISOString3(d3) {
      return d3.getUTCFullYear() + "-" + pad(d3.getUTCMonth() + 1) + "-" + pad(d3.getUTCDate()) + "T" + pad(d3.getUTCHours()) + ":" + pad(d3.getUTCMinutes()) + ":" + pad(d3.getUTCSeconds()) + "." + (d3.getUTCMilliseconds() / 1e3).toFixed(3).slice(2, 5) + "Z";
    };
  }
});

// ../../../../../setup-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({
  "../../../../../setup-pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/internal/_complement.js"() {
  }
});

// ../../../../../setup-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({
  "../../../../../setup-pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/internal/_filter.js"() {
  }
});

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

// ../../../../../setup-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({
  "../../../../../setup-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;
  }
});

// ../../../../../setup-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({
  "../../../../../setup-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;
  }
});

// ../../../../../setup-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({
  "../../../../../setup-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;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/internal/_toString.js
var init_toString = __esm({
  "../../../../../setup-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();
  }
});

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

// ../../../../../setup-pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/concat.js
var init_concat2 = __esm({
  "../../../../../setup-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();
  }
});

// ../../../../../setup-pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/cond.js
var init_cond = __esm({
  "../../../../../setup-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();
  }
});

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

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

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

// ../../../../../setup-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({
  "../../../../../setup-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;
  }
});

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

// ../../../../../setup-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({
  "../../../../../setup-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;
  }
});

// ../../../../../setup-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({
  "../../../../../setup-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;
  }
});

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

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

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

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

// ../../../../../setup-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({
  "../../../../../setup-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;
  }
});

// ../../../../../setup-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({
  "../../../../../setup-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 i4 = 0; i4 < secondLen; i4 += 1) {
        toFilterOut.add(second[i4]);
      }
      while (idx < firstLen) {
        if (toFilterOut.add(first[idx])) {
          out[out.length] = first[idx];
        }
        idx += 1;
      }
      return out;
    });
    difference_default = difference;
  }
});

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

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

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

// ../../../../../setup-pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/dissocPath.js
var init_dissocPath = __esm({
  "../../../../../setup-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();
  }
});

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

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

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

// ../../../../../setup-pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/drop.js
var init_drop = __esm({
  "../../../../../setup-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();
  }
});

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

// ../../../../../setup-pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/take.js
var init_take = __esm({
  "../../../../../setup-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();
  }
});

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

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

// ../../../../../setup-pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/dropLast.js
var init_dropLast2 = __esm({
  "../../../../../setup-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();
  }
});

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

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

// ../../../../../setup-pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/dropLastWhile.js
var init_dropLastWhile2 = __esm({
  "../../../../../setup-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();
  }
});

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

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

// ../../../../../setup-pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/dropRepeatsWith.js
var init_dropRepeatsWith = __esm({
  "../../../../../setup-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();
  }
});

// ../../../../../setup-pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/dropRepeats.js
var init_dropRepeats = __esm({
  "../../../../../setup-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();
  }
});

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

// ../../../../../setup-pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/dropWhile.js
var init_dropWhile = __esm({
  "../../../../../setup-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();
  }
});

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

// ../../../../../setup-pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/either.js
var init_either = __esm({
  "../../../../../setup-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();
  }
});

// ../../../../../setup-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({
  "../../../../../setup-pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/internal/_isTypedArray.js"() {
  }
});

// ../../../../../setup-pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/empty.js
var empty2, empty_default;
var init_empty = __esm({
  "../../../../../setup-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();
    empty2 = /* @__PURE__ */ _curry1(function empty3(x3) {
      return x3 != null && typeof x3["fantasy-land/empty"] === "function" ? x3["fantasy-land/empty"]() : x3 != null && x3.constructor != null && typeof x3.constructor["fantasy-land/empty"] === "function" ? x3.constructor["fantasy-land/empty"]() : x3 != null && typeof x3.empty === "function" ? x3.empty() : x3 != null && x3.constructor != null && typeof x3.constructor.empty === "function" ? x3.constructor.empty() : isArray_default(x3) ? [] : _isString(x3) ? "" : _isObject(x3) ? {} : isArguments_default(x3) ? /* @__PURE__ */ (function() {
        return arguments;
      })() : _isTypedArray(x3) ? x3.constructor.from("") : void 0;
    });
    empty_default = empty2;
  }
});

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

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

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

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

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

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

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

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

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

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

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

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

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

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

// ../../../../../setup-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({
  "../../../../../setup-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;
  }
});

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

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

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

// ../../../../../setup-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({
  "../../../../../setup-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;
  }
});

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

// ../../../../../setup-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({
  "../../../../../setup-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;
  }
});

// ../../../../../setup-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({
  "../../../../../setup-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;
  }
});

// ../../../../../setup-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({
  "../../../../../setup-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;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/intersection.js
var init_intersection = __esm({
  "../../../../../setup-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();
  }
});

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

// ../../../../../setup-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({
  "../../../../../setup-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;
  }
});

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

// ../../../../../setup-pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/internal/_stepCat.js
var init_stepCat = __esm({
  "../../../../../setup-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();
  }
});

// ../../../../../setup-pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/into.js
var init_into = __esm({
  "../../../../../setup-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();
  }
});

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

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

// ../../../../../setup-pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/invoker.js
var init_invoker = __esm({
  "../../../../../setup-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();
  }
});

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

// ../../../../../setup-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({
  "../../../../../setup-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(x3) {
      return x3 != null && equals_default(x3, empty_default(x3));
    });
    isEmpty_default = isEmpty;
  }
});

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

// ../../../../../setup-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({
  "../../../../../setup-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;
  }
});

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

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

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

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

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

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

// ../../../../../setup-pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/lensIndex.js
var init_lensIndex = __esm({
  "../../../../../setup-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();
  }
});

// ../../../../../setup-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({
  "../../../../../setup-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;
  }
});

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

// ../../../../../setup-pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/lensPath.js
var init_lensPath = __esm({
  "../../../../../setup-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();
  }
});

// ../../../../../setup-pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/lensProp.js
var init_lensProp = __esm({
  "../../../../../setup-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();
  }
});

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

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

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

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

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

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

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

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

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

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

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

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

// ../../../../../setup-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({
  "../../../../../setup-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;
  }
});

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

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

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

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

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

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

// ../../../../../setup-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({
  "../../../../../setup-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;
  }
});

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

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

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

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

// ../../../../../setup-pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/modifyPath.js
var init_modifyPath = __esm({
  "../../../../../setup-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();
  }
});

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

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

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

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

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

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

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

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

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

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

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

// ../../../../../setup-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({
  "../../../../../setup-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 index2 = {};
      var idx = 0;
      var len = names.length;
      while (idx < len) {
        index2[names[idx]] = 1;
        idx += 1;
      }
      for (var prop3 in obj) {
        if (!index2.hasOwnProperty(prop3)) {
          result2[prop3] = obj[prop3];
        }
      }
      return result2;
    });
    omit_default = omit;
  }
});

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

// ../../../../../setup-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({
  "../../../../../setup-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;
  }
});

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

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

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

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

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

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

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

// ../../../../../setup-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({
  "../../../../../setup-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;
  }
});

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

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

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

// ../../../../../setup-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({
  "../../../../../setup-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;
  }
});

// ../../../../../setup-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({
  "../../../../../setup-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;
  }
});

// ../../../../../setup-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({
  "../../../../../setup-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;
  }
});

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

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

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

// ../../../../../setup-pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/project.js
var init_project2 = __esm({
  "../../../../../setup-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();
  }
});

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

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

// ../../../../../setup-pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/promap.js
var init_promap2 = __esm({
  "../../../../../setup-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();
  }
});

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

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

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

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

// ../../../../../setup-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({
  "../../../../../setup-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(ps2, obj) {
      return ps2.map(function(p) {
        return path_default([p], obj);
      });
    });
    props_default = props;
  }
});

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

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

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

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

// ../../../../../setup-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({
  "../../../../../setup-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;
  }
});

// ../../../../../setup-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({
  "../../../../../setup-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;
  }
});

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

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

// ../../../../../setup-pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/sequence.js
var init_sequence = __esm({
  "../../../../../setup-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();
  }
});

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

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

// ../../../../../setup-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({
  "../../../../../setup-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;
  }
});

// ../../../../../setup-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({
  "../../../../../setup-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 i4 = 0;
        while (result2 === 0 && i4 < fns.length) {
          result2 = fns[i4](a2, b);
          i4 += 1;
        }
        return result2;
      });
    });
    sortWith_default = sortWith;
  }
});

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

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

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

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

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

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

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

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

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

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

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

// ../../../../../setup-pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/takeWhile.js
var init_takeWhile = __esm({
  "../../../../../setup-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();
  }
});

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

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

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

// ../../../../../setup-pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/test.js
var init_test = __esm({
  "../../../../../setup-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();
  }
});

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

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

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

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

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

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

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

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

// ../../../../../setup-pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/trim.js
var hasProtoTrim;
var init_trim = __esm({
  "../../../../../setup-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";
  }
});

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

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

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

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

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

// ../../../../../setup-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({
  "../../../../../setup-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;
  }
});

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

// ../../../../../setup-pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/uniqWith.js
var init_uniqWith = __esm({
  "../../../../../setup-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();
  }
});

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

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

// ../../../../../setup-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({
  "../../../../../setup-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;
  }
});

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

// ../../../../../setup-pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/unwind.js
var init_unwind = __esm({
  "../../../../../setup-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();
  }
});

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

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

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

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

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

// ../../../../../setup-pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/whereEq.js
var init_whereEq = __esm({
  "../../../../../setup-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();
  }
});

// ../../../../../setup-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({
  "../../../../../setup-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;
  }
});

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

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

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

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

// ../../../../../setup-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({
  "../../../../../setup-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;
  }
});

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

// ../../../../../setup-pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/index.js
var init_es = __esm({
  "../../../../../setup-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();
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/universalify/2.0.1/3983135594189f71b00fc07b6b17387b476e8a92e19ec2a61c1f0e0d68895f4d/node_modules/universalify/index.js
var require_universalify = __commonJS({
  "../../../../../setup-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((resolve4, reject3) => {
            args.push((err2, res) => err2 != null ? reject3(err2) : resolve4(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 });
    };
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/fs-extra/11.3.4/4cb0d718f8660ad2564c0d882d89a7255b59466c803fa7e6007de96d8c5aa18b/node_modules/fs-extra/lib/fs/index.js
var require_fs5 = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/fs-extra/11.3.4/4cb0d718f8660ad2564c0d882d89a7255b59466c803fa7e6007de96d8c5aa18b/node_modules/fs-extra/lib/fs/index.js"(exports2) {
    "use strict";
    var u2 = require_universalify().fromCallback;
    var fs131 = 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 fs131[key] === "function";
    });
    Object.assign(exports2, fs131);
    api2.forEach((method2) => {
      exports2[method2] = u2(fs131[method2]);
    });
    exports2.exists = function(filename, callback2) {
      if (typeof callback2 === "function") {
        return fs131.exists(filename, callback2);
      }
      return new Promise((resolve4) => {
        return fs131.exists(filename, resolve4);
      });
    };
    exports2.read = function(fd2, buffer3, offset, length, position3, callback2) {
      if (typeof callback2 === "function") {
        return fs131.read(fd2, buffer3, offset, length, position3, callback2);
      }
      return new Promise((resolve4, reject3) => {
        fs131.read(fd2, buffer3, offset, length, position3, (err2, bytesRead, buffer4) => {
          if (err2) return reject3(err2);
          resolve4({ bytesRead, buffer: buffer4 });
        });
      });
    };
    exports2.write = function(fd2, buffer3, ...args) {
      if (typeof args[args.length - 1] === "function") {
        return fs131.write(fd2, buffer3, ...args);
      }
      return new Promise((resolve4, reject3) => {
        fs131.write(fd2, buffer3, ...args, (err2, bytesWritten, buffer4) => {
          if (err2) return reject3(err2);
          resolve4({ bytesWritten, buffer: buffer4 });
        });
      });
    };
    exports2.readv = function(fd2, buffers, ...args) {
      if (typeof args[args.length - 1] === "function") {
        return fs131.readv(fd2, buffers, ...args);
      }
      return new Promise((resolve4, reject3) => {
        fs131.readv(fd2, buffers, ...args, (err2, bytesRead, buffers2) => {
          if (err2) return reject3(err2);
          resolve4({ bytesRead, buffers: buffers2 });
        });
      });
    };
    exports2.writev = function(fd2, buffers, ...args) {
      if (typeof args[args.length - 1] === "function") {
        return fs131.writev(fd2, buffers, ...args);
      }
      return new Promise((resolve4, reject3) => {
        fs131.writev(fd2, buffers, ...args, (err2, bytesWritten, buffers2) => {
          if (err2) return reject3(err2);
          resolve4({ bytesWritten, buffers: buffers2 });
        });
      });
    };
    if (typeof fs131.realpath.native === "function") {
      exports2.realpath.native = u2(fs131.realpath.native);
    } else {
      process.emitWarning(
        "fs.realpath.native is not a function. Is fs being monkey-patched?",
        "Warning",
        "fs-extra-WARN0003"
      );
    }
  }
});

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

// ../../../../../setup-pnpm/store/v11/links/@/fs-extra/11.3.4/4cb0d718f8660ad2564c0d882d89a7255b59466c803fa7e6007de96d8c5aa18b/node_modules/fs-extra/lib/mkdirs/make-dir.js
var require_make_dir = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/fs-extra/11.3.4/4cb0d718f8660ad2564c0d882d89a7255b59466c803fa7e6007de96d8c5aa18b/node_modules/fs-extra/lib/mkdirs/make-dir.js"(exports2, module2) {
    "use strict";
    var fs131 = require_fs5();
    var { checkPath } = require_utils7();
    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 fs131.mkdir(dir, {
        mode: getMode(options),
        recursive: true
      });
    };
    module2.exports.makeDirSync = (dir, options) => {
      checkPath(dir);
      return fs131.mkdirSync(dir, {
        mode: getMode(options),
        recursive: true
      });
    };
  }
});

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

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

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

// ../../../../../setup-pnpm/store/v11/links/@/fs-extra/11.3.4/4cb0d718f8660ad2564c0d882d89a7255b59466c803fa7e6007de96d8c5aa18b/node_modules/fs-extra/lib/util/stat.js
var require_stat = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/fs-extra/11.3.4/4cb0d718f8660ad2564c0d882d89a7255b59466c803fa7e6007de96d8c5aa18b/node_modules/fs-extra/lib/util/stat.js"(exports2, module2) {
    "use strict";
    var fs131 = require_fs5();
    var path240 = __require("path");
    var u2 = require_universalify().fromPromise;
    function getStats2(src2, dest, opts3) {
      const statFunc = opts3.dereference ? (file) => fs131.stat(file, { bigint: true }) : (file) => fs131.lstat(file, { bigint: true });
      return Promise.all([
        statFunc(src2),
        statFunc(dest).catch((err2) => {
          if (err2.code === "ENOENT") return null;
          throw err2;
        })
      ]).then(([srcStat, destStat]) => ({ srcStat, destStat }));
    }
    function getStatsSync(src2, dest, opts3) {
      let destStat;
      const statFunc = opts3.dereference ? (file) => fs131.statSync(file, { bigint: true }) : (file) => fs131.lstatSync(file, { bigint: true });
      const srcStat = statFunc(src2);
      try {
        destStat = statFunc(dest);
      } catch (err2) {
        if (err2.code === "ENOENT") return { srcStat, destStat: null };
        throw err2;
      }
      return { srcStat, destStat };
    }
    async function checkPaths(src2, dest, funcName, opts3) {
      const { srcStat, destStat } = await getStats2(src2, dest, opts3);
      if (destStat) {
        if (areIdentical(srcStat, destStat)) {
          const srcBaseName = path240.basename(src2);
          const destBaseName = path240.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, opts3) {
      const { srcStat, destStat } = getStatsSync(src2, dest, opts3);
      if (destStat) {
        if (areIdentical(srcStat, destStat)) {
          const srcBaseName = path240.basename(src2);
          const destBaseName = path240.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 = path240.resolve(path240.dirname(src2));
      const destParent = path240.resolve(path240.dirname(dest));
      if (destParent === srcParent || destParent === path240.parse(destParent).root) return;
      let destStat;
      try {
        destStat = await fs131.stat(destParent, { bigint: true });
      } catch (err2) {
        if (err2.code === "ENOENT") return;
        throw err2;
      }
      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 = path240.resolve(path240.dirname(src2));
      const destParent = path240.resolve(path240.dirname(dest));
      if (destParent === srcParent || destParent === path240.parse(destParent).root) return;
      let destStat;
      try {
        destStat = fs131.statSync(destParent, { bigint: true });
      } catch (err2) {
        if (err2.code === "ENOENT") return;
        throw err2;
      }
      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 = path240.resolve(src2).split(path240.sep).filter((i4) => i4);
      const destArr = path240.resolve(dest).split(path240.sep).filter((i4) => i4);
      return srcArr.every((cur, i4) => destArr[i4] === cur);
    }
    function errMsg(src2, dest, funcName) {
      return `Cannot ${funcName} '${src2}' to a subdirectory of itself, '${dest}'.`;
    }
    module2.exports = {
      // checkPaths
      checkPaths: u2(checkPaths),
      checkPathsSync,
      // checkParent
      checkParentPaths: u2(checkParentPaths),
      checkParentPathsSync,
      // Misc
      isSrcSubdir,
      areIdentical
    };
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/fs-extra/11.3.4/4cb0d718f8660ad2564c0d882d89a7255b59466c803fa7e6007de96d8c5aa18b/node_modules/fs-extra/lib/util/async.js
var require_async7 = __commonJS({
  "../../../../../setup-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,
            (err2) => err2 ?? new Error("unknown error")
          )
        );
      }
      await Promise.all(
        promises.map(
          (promise2) => promise2.then((possibleErr) => {
            if (possibleErr !== null) throw possibleErr;
          })
        )
      );
    }
    module2.exports = {
      asyncIteratorConcurrentProcess
    };
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/fs-extra/11.3.4/4cb0d718f8660ad2564c0d882d89a7255b59466c803fa7e6007de96d8c5aa18b/node_modules/fs-extra/lib/copy/copy.js
var require_copy = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/fs-extra/11.3.4/4cb0d718f8660ad2564c0d882d89a7255b59466c803fa7e6007de96d8c5aa18b/node_modules/fs-extra/lib/copy/copy.js"(exports2, module2) {
    "use strict";
    var fs131 = require_fs5();
    var path240 = __require("path");
    var { mkdirs } = require_mkdirs();
    var { pathExists: pathExists3 } = require_path_exists();
    var { utimesMillis } = require_utimes();
    var stat2 = require_stat();
    var { asyncIteratorConcurrentProcess } = require_async7();
    async function copy2(src2, dest, opts3 = {}) {
      if (typeof opts3 === "function") {
        opts3 = { filter: opts3 };
      }
      opts3.clobber = "clobber" in opts3 ? !!opts3.clobber : true;
      opts3.overwrite = "overwrite" in opts3 ? !!opts3.overwrite : opts3.clobber;
      if (opts3.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", opts3);
      await stat2.checkParentPaths(src2, srcStat, dest, "copy");
      const include = await runFilter(src2, dest, opts3);
      if (!include) return;
      const destParent = path240.dirname(dest);
      const dirExists = await pathExists3(destParent);
      if (!dirExists) {
        await mkdirs(destParent);
      }
      await getStatsAndPerformCopy(destStat, src2, dest, opts3);
    }
    async function runFilter(src2, dest, opts3) {
      if (!opts3.filter) return true;
      return opts3.filter(src2, dest);
    }
    async function getStatsAndPerformCopy(destStat, src2, dest, opts3) {
      const statFn = opts3.dereference ? fs131.stat : fs131.lstat;
      const srcStat = await statFn(src2);
      if (srcStat.isDirectory()) return onDir(srcStat, destStat, src2, dest, opts3);
      if (srcStat.isFile() || srcStat.isCharacterDevice() || srcStat.isBlockDevice()) return onFile(srcStat, destStat, src2, dest, opts3);
      if (srcStat.isSymbolicLink()) return onLink(destStat, src2, dest, opts3);
      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, opts3) {
      if (!destStat) return copyFile(srcStat, src2, dest, opts3);
      if (opts3.overwrite) {
        await fs131.unlink(dest);
        return copyFile(srcStat, src2, dest, opts3);
      }
      if (opts3.errorOnExist) {
        throw new Error(`'${dest}' already exists`);
      }
    }
    async function copyFile(srcStat, src2, dest, opts3) {
      await fs131.copyFile(src2, dest);
      if (opts3.preserveTimestamps) {
        if (fileIsNotWritable(srcStat.mode)) {
          await makeFileWritable(dest, srcStat.mode);
        }
        const updatedSrcStat = await fs131.stat(src2);
        await utimesMillis(dest, updatedSrcStat.atime, updatedSrcStat.mtime);
      }
      return fs131.chmod(dest, srcStat.mode);
    }
    function fileIsNotWritable(srcMode) {
      return (srcMode & 128) === 0;
    }
    function makeFileWritable(dest, srcMode) {
      return fs131.chmod(dest, srcMode | 128);
    }
    async function onDir(srcStat, destStat, src2, dest, opts3) {
      if (!destStat) {
        await fs131.mkdir(dest);
      }
      await asyncIteratorConcurrentProcess(await fs131.opendir(src2), async (item) => {
        const srcItem = path240.join(src2, item.name);
        const destItem = path240.join(dest, item.name);
        const include = await runFilter(srcItem, destItem, opts3);
        if (include) {
          const { destStat: destStat2 } = await stat2.checkPaths(srcItem, destItem, "copy", opts3);
          await getStatsAndPerformCopy(destStat2, srcItem, destItem, opts3);
        }
      });
      if (!destStat) {
        await fs131.chmod(dest, srcStat.mode);
      }
    }
    async function onLink(destStat, src2, dest, opts3) {
      let resolvedSrc = await fs131.readlink(src2);
      if (opts3.dereference) {
        resolvedSrc = path240.resolve(process.cwd(), resolvedSrc);
      }
      if (!destStat) {
        return fs131.symlink(resolvedSrc, dest);
      }
      let resolvedDest = null;
      try {
        resolvedDest = await fs131.readlink(dest);
      } catch (e) {
        if (e.code === "EINVAL" || e.code === "UNKNOWN") return fs131.symlink(resolvedSrc, dest);
        throw e;
      }
      if (opts3.dereference) {
        resolvedDest = path240.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 fs131.unlink(dest);
      return fs131.symlink(resolvedSrc, dest);
    }
    module2.exports = copy2;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/fs-extra/11.3.4/4cb0d718f8660ad2564c0d882d89a7255b59466c803fa7e6007de96d8c5aa18b/node_modules/fs-extra/lib/copy/copy-sync.js
var require_copy_sync = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/fs-extra/11.3.4/4cb0d718f8660ad2564c0d882d89a7255b59466c803fa7e6007de96d8c5aa18b/node_modules/fs-extra/lib/copy/copy-sync.js"(exports2, module2) {
    "use strict";
    var fs131 = require_graceful_fs();
    var path240 = __require("path");
    var mkdirsSync = require_mkdirs().mkdirsSync;
    var utimesMillisSync = require_utimes().utimesMillisSync;
    var stat2 = require_stat();
    function copySync2(src2, dest, opts3) {
      if (typeof opts3 === "function") {
        opts3 = { filter: opts3 };
      }
      opts3 = opts3 || {};
      opts3.clobber = "clobber" in opts3 ? !!opts3.clobber : true;
      opts3.overwrite = "overwrite" in opts3 ? !!opts3.overwrite : opts3.clobber;
      if (opts3.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", opts3);
      stat2.checkParentPathsSync(src2, srcStat, dest, "copy");
      if (opts3.filter && !opts3.filter(src2, dest)) return;
      const destParent = path240.dirname(dest);
      if (!fs131.existsSync(destParent)) mkdirsSync(destParent);
      return getStats2(destStat, src2, dest, opts3);
    }
    function getStats2(destStat, src2, dest, opts3) {
      const statSync4 = opts3.dereference ? fs131.statSync : fs131.lstatSync;
      const srcStat = statSync4(src2);
      if (srcStat.isDirectory()) return onDir(srcStat, destStat, src2, dest, opts3);
      else if (srcStat.isFile() || srcStat.isCharacterDevice() || srcStat.isBlockDevice()) return onFile(srcStat, destStat, src2, dest, opts3);
      else if (srcStat.isSymbolicLink()) return onLink(destStat, src2, dest, opts3);
      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, opts3) {
      if (!destStat) return copyFile(srcStat, src2, dest, opts3);
      return mayCopyFile(srcStat, src2, dest, opts3);
    }
    function mayCopyFile(srcStat, src2, dest, opts3) {
      if (opts3.overwrite) {
        fs131.unlinkSync(dest);
        return copyFile(srcStat, src2, dest, opts3);
      } else if (opts3.errorOnExist) {
        throw new Error(`'${dest}' already exists`);
      }
    }
    function copyFile(srcStat, src2, dest, opts3) {
      fs131.copyFileSync(src2, dest);
      if (opts3.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 fs131.chmodSync(dest, srcMode);
    }
    function setDestTimestamps(src2, dest) {
      const updatedSrcStat = fs131.statSync(src2);
      return utimesMillisSync(dest, updatedSrcStat.atime, updatedSrcStat.mtime);
    }
    function onDir(srcStat, destStat, src2, dest, opts3) {
      if (!destStat) return mkDirAndCopy(srcStat.mode, src2, dest, opts3);
      return copyDir(src2, dest, opts3);
    }
    function mkDirAndCopy(srcMode, src2, dest, opts3) {
      fs131.mkdirSync(dest);
      copyDir(src2, dest, opts3);
      return setDestMode(dest, srcMode);
    }
    function copyDir(src2, dest, opts3) {
      const dir = fs131.opendirSync(src2);
      try {
        let dirent;
        while ((dirent = dir.readSync()) !== null) {
          copyDirItem(dirent.name, src2, dest, opts3);
        }
      } finally {
        dir.closeSync();
      }
    }
    function copyDirItem(item, src2, dest, opts3) {
      const srcItem = path240.join(src2, item);
      const destItem = path240.join(dest, item);
      if (opts3.filter && !opts3.filter(srcItem, destItem)) return;
      const { destStat } = stat2.checkPathsSync(srcItem, destItem, "copy", opts3);
      return getStats2(destStat, srcItem, destItem, opts3);
    }
    function onLink(destStat, src2, dest, opts3) {
      let resolvedSrc = fs131.readlinkSync(src2);
      if (opts3.dereference) {
        resolvedSrc = path240.resolve(process.cwd(), resolvedSrc);
      }
      if (!destStat) {
        return fs131.symlinkSync(resolvedSrc, dest);
      } else {
        let resolvedDest;
        try {
          resolvedDest = fs131.readlinkSync(dest);
        } catch (err2) {
          if (err2.code === "EINVAL" || err2.code === "UNKNOWN") return fs131.symlinkSync(resolvedSrc, dest);
          throw err2;
        }
        if (opts3.dereference) {
          resolvedDest = path240.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) {
      fs131.unlinkSync(dest);
      return fs131.symlinkSync(resolvedSrc, dest);
    }
    module2.exports = copySync2;
  }
});

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

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

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

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

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

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

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

// ../../../../../setup-pnpm/store/v11/links/@/fs-extra/11.3.4/4cb0d718f8660ad2564c0d882d89a7255b59466c803fa7e6007de96d8c5aa18b/node_modules/fs-extra/lib/ensure/symlink.js
var require_symlink = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/fs-extra/11.3.4/4cb0d718f8660ad2564c0d882d89a7255b59466c803fa7e6007de96d8c5aa18b/node_modules/fs-extra/lib/ensure/symlink.js"(exports2, module2) {
    "use strict";
    var u2 = require_universalify().fromPromise;
    var path240 = __require("path");
    var fs131 = require_fs5();
    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 fs131.lstat(dstpath);
      } catch {
      }
      if (stats && stats.isSymbolicLink()) {
        let srcStat;
        if (path240.isAbsolute(srcpath)) {
          srcStat = await fs131.stat(srcpath);
        } else {
          const dstdir = path240.dirname(dstpath);
          const relativeToDst = path240.join(dstdir, srcpath);
          try {
            srcStat = await fs131.stat(relativeToDst);
          } catch {
            srcStat = await fs131.stat(srcpath);
          }
        }
        const dstStat = await fs131.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 = path240.dirname(dstpath);
      if (!await pathExists3(dir)) {
        await mkdirs(dir);
      }
      return fs131.symlink(srcpath, dstpath, toType);
    }
    function createSymlinkSync2(srcpath, dstpath, type4) {
      let stats;
      try {
        stats = fs131.lstatSync(dstpath);
      } catch {
      }
      if (stats && stats.isSymbolicLink()) {
        let srcStat;
        if (path240.isAbsolute(srcpath)) {
          srcStat = fs131.statSync(srcpath);
        } else {
          const dstdir = path240.dirname(dstpath);
          const relativeToDst = path240.join(dstdir, srcpath);
          try {
            srcStat = fs131.statSync(relativeToDst);
          } catch {
            srcStat = fs131.statSync(srcpath);
          }
        }
        const dstStat = fs131.statSync(dstpath);
        if (areIdentical(srcStat, dstStat)) return;
      }
      const relative2 = symlinkPathsSync(srcpath, dstpath);
      srcpath = relative2.toDst;
      type4 = symlinkTypeSync(relative2.toCwd, type4);
      const dir = path240.dirname(dstpath);
      const exists = fs131.existsSync(dir);
      if (exists) return fs131.symlinkSync(srcpath, dstpath, type4);
      mkdirsSync(dir);
      return fs131.symlinkSync(srcpath, dstpath, type4);
    }
    module2.exports = {
      createSymlink: u2(createSymlink),
      createSymlinkSync: createSymlinkSync2
    };
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/fs-extra/11.3.4/4cb0d718f8660ad2564c0d882d89a7255b59466c803fa7e6007de96d8c5aa18b/node_modules/fs-extra/lib/ensure/index.js
var require_ensure = __commonJS({
  "../../../../../setup-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
    };
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/jsonfile/6.2.1/4eef6320b797a6391b2bd057b7f45a61f6df9e0461d95dbbea0e70d498ea3860/node_modules/jsonfile/utils.js
var require_utils8 = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/jsonfile/6.2.1/4eef6320b797a6391b2bd057b7f45a61f6df9e0461d95dbbea0e70d498ea3860/node_modules/jsonfile/utils.js"(exports2, module2) {
    function stringify2(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: stringify2, stripBom: stripBom2 };
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/jsonfile/6.2.1/4eef6320b797a6391b2bd057b7f45a61f6df9e0461d95dbbea0e70d498ea3860/node_modules/jsonfile/index.js
var require_jsonfile = __commonJS({
  "../../../../../setup-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: stringify2, stripBom: stripBom2 } = require_utils8();
    async function _readFile(file, options = {}) {
      if (typeof options === "string") {
        options = { encoding: options };
      }
      const fs131 = options.fs || _fs;
      const shouldThrow = "throws" in options ? options.throws : true;
      let data = await universalify.fromCallback(fs131.readFile)(file, options);
      data = stripBom2(data);
      let obj;
      try {
        obj = JSON.parse(data, options ? options.reviver : null);
      } catch (err2) {
        if (shouldThrow) {
          err2.message = `${file}: ${err2.message}`;
          throw err2;
        } else {
          return null;
        }
      }
      return obj;
    }
    var readFile5 = universalify.fromPromise(_readFile);
    function readFileSync4(file, options = {}) {
      if (typeof options === "string") {
        options = { encoding: options };
      }
      const fs131 = options.fs || _fs;
      const shouldThrow = "throws" in options ? options.throws : true;
      try {
        let content = fs131.readFileSync(file, options);
        content = stripBom2(content);
        return JSON.parse(content, options.reviver);
      } catch (err2) {
        if (shouldThrow) {
          err2.message = `${file}: ${err2.message}`;
          throw err2;
        } else {
          return null;
        }
      }
    }
    async function _writeFile(file, obj, options = {}) {
      const fs131 = options.fs || _fs;
      const str2 = stringify2(obj, options);
      await universalify.fromCallback(fs131.writeFile)(file, str2, options);
    }
    var writeFile3 = universalify.fromPromise(_writeFile);
    function writeFileSync2(file, obj, options = {}) {
      const fs131 = options.fs || _fs;
      const str2 = stringify2(obj, options);
      return fs131.writeFileSync(file, str2, options);
    }
    module2.exports = {
      readFile: readFile5,
      readFileSync: readFileSync4,
      writeFile: writeFile3,
      writeFileSync: writeFileSync2
    };
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/fs-extra/11.3.4/4cb0d718f8660ad2564c0d882d89a7255b59466c803fa7e6007de96d8c5aa18b/node_modules/fs-extra/lib/json/jsonfile.js
var require_jsonfile2 = __commonJS({
  "../../../../../setup-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
    };
  }
});

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

// ../../../../../setup-pnpm/store/v11/links/@/fs-extra/11.3.4/4cb0d718f8660ad2564c0d882d89a7255b59466c803fa7e6007de96d8c5aa18b/node_modules/fs-extra/lib/json/output-json.js
var require_output_json = __commonJS({
  "../../../../../setup-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: stringify2 } = require_utils8();
    var { outputFile } = require_output_file();
    async function outputJson(file, data, options = {}) {
      const str2 = stringify2(data, options);
      await outputFile(file, str2, options);
    }
    module2.exports = outputJson;
  }
});

// ../../../../../setup-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({
  "../../../../../setup-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: stringify2 } = require_utils8();
    var { outputFileSync } = require_output_file();
    function outputJsonSync(file, data, options) {
      const str2 = stringify2(data, options);
      outputFileSync(file, str2, options);
    }
    module2.exports = outputJsonSync;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/fs-extra/11.3.4/4cb0d718f8660ad2564c0d882d89a7255b59466c803fa7e6007de96d8c5aa18b/node_modules/fs-extra/lib/json/index.js
var require_json2 = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/fs-extra/11.3.4/4cb0d718f8660ad2564c0d882d89a7255b59466c803fa7e6007de96d8c5aa18b/node_modules/fs-extra/lib/json/index.js"(exports2, module2) {
    "use strict";
    var u2 = require_universalify().fromPromise;
    var jsonFile = require_jsonfile2();
    jsonFile.outputJson = u2(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;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/fs-extra/11.3.4/4cb0d718f8660ad2564c0d882d89a7255b59466c803fa7e6007de96d8c5aa18b/node_modules/fs-extra/lib/move/move.js
var require_move = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/fs-extra/11.3.4/4cb0d718f8660ad2564c0d882d89a7255b59466c803fa7e6007de96d8c5aa18b/node_modules/fs-extra/lib/move/move.js"(exports2, module2) {
    "use strict";
    var fs131 = require_fs5();
    var path240 = __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, opts3 = {}) {
      const overwrite2 = opts3.overwrite || opts3.clobber || false;
      const { srcStat, isChangingCase = false } = await stat2.checkPaths(src2, dest, "move", opts3);
      await stat2.checkParentPaths(src2, srcStat, dest, "move");
      const destParent = path240.dirname(dest);
      const parsedParentPath = path240.parse(destParent);
      if (parsedParentPath.root !== destParent) {
        await mkdirp(destParent);
      }
      return doRename(src2, dest, overwrite2, isChangingCase);
    }
    async function doRename(src2, dest, overwrite2, isChangingCase) {
      if (!isChangingCase) {
        if (overwrite2) {
          await remove(dest);
        } else if (await pathExists3(dest)) {
          throw new Error("dest already exists.");
        }
      }
      try {
        await fs131.rename(src2, dest);
      } catch (err2) {
        if (err2.code !== "EXDEV") {
          throw err2;
        }
        await moveAcrossDevice(src2, dest, overwrite2);
      }
    }
    async function moveAcrossDevice(src2, dest, overwrite2) {
      const opts3 = {
        overwrite: overwrite2,
        errorOnExist: true,
        preserveTimestamps: true
      };
      await copy2(src2, dest, opts3);
      return remove(src2);
    }
    module2.exports = move;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/fs-extra/11.3.4/4cb0d718f8660ad2564c0d882d89a7255b59466c803fa7e6007de96d8c5aa18b/node_modules/fs-extra/lib/move/move-sync.js
var require_move_sync = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/fs-extra/11.3.4/4cb0d718f8660ad2564c0d882d89a7255b59466c803fa7e6007de96d8c5aa18b/node_modules/fs-extra/lib/move/move-sync.js"(exports2, module2) {
    "use strict";
    var fs131 = require_graceful_fs();
    var path240 = __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, opts3) {
      opts3 = opts3 || {};
      const overwrite2 = opts3.overwrite || opts3.clobber || false;
      const { srcStat, isChangingCase = false } = stat2.checkPathsSync(src2, dest, "move", opts3);
      stat2.checkParentPathsSync(src2, srcStat, dest, "move");
      if (!isParentRoot(dest)) mkdirpSync(path240.dirname(dest));
      return doRename(src2, dest, overwrite2, isChangingCase);
    }
    function isParentRoot(dest) {
      const parent = path240.dirname(dest);
      const parsedPath = path240.parse(parent);
      return parsedPath.root === parent;
    }
    function doRename(src2, dest, overwrite2, isChangingCase) {
      if (isChangingCase) return rename(src2, dest, overwrite2);
      if (overwrite2) {
        removeSync(dest);
        return rename(src2, dest, overwrite2);
      }
      if (fs131.existsSync(dest)) throw new Error("dest already exists.");
      return rename(src2, dest, overwrite2);
    }
    function rename(src2, dest, overwrite2) {
      try {
        fs131.renameSync(src2, dest);
      } catch (err2) {
        if (err2.code !== "EXDEV") throw err2;
        return moveAcrossDevice(src2, dest, overwrite2);
      }
    }
    function moveAcrossDevice(src2, dest, overwrite2) {
      const opts3 = {
        overwrite: overwrite2,
        errorOnExist: true,
        preserveTimestamps: true
      };
      copySync2(src2, dest, opts3);
      return removeSync(src2);
    }
    module2.exports = moveSync;
  }
});

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

// ../../../../../setup-pnpm/store/v11/links/@/fs-extra/11.3.4/4cb0d718f8660ad2564c0d882d89a7255b59466c803fa7e6007de96d8c5aa18b/node_modules/fs-extra/lib/index.js
var require_lib13 = __commonJS({
  "../../../../../setup-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_fs5(),
      // Export extra methods:
      ...require_copy2(),
      ...require_empty(),
      ...require_ensure(),
      ...require_json2(),
      ...require_mkdirs(),
      ...require_move2(),
      ...require_output_file(),
      ...require_path_exists(),
      ...require_remove()
    };
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/rename-overwrite/7.0.1/87428b418e43a94bf7c7f463bfc62ae5e0dc2e0a72cb36b94d07cf207fc3347b/node_modules/rename-overwrite/index.js
import crypto2 from "node:crypto";
import fs9 from "node:fs";
import path17 from "node:path";
async function renameOverwrite(oldPath, newPath, retry5 = 0) {
  try {
    await fs9.promises.rename(oldPath, newPath);
  } catch (err2) {
    retry5++;
    if (retry5 > 3) throw err2;
    switch (err2.code) {
      case "ENOTEMPTY":
      case "EEXIST":
      case "ENOTDIR":
        try {
          await swapRename(oldPath, newPath);
        } catch {
          await rimraf(newPath);
          await fs9.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 = err2;
        while (Date.now() - start < 6e4 && (lastError.code === "EPERM" || lastError.code === "EACCESS" || lastError.code === "EBUSY")) {
          await new Promise((resolve4) => setTimeout(resolve4, backoff));
          try {
            await fs9.promises.rename(oldPath, newPath);
            return;
          } catch (err3) {
            lastError = err3;
          }
          if (backoff < 100) {
            backoff += 10;
          }
        }
        throw lastError;
      }
      case "ENOENT":
        try {
          await fs9.promises.stat(oldPath);
        } catch (statErr) {
          if (statErr.code === "ENOENT") {
            throw statErr;
          }
        }
        await fs9.promises.mkdir(path17.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 err2;
    }
  }
}
function renameOverwriteSync(oldPath, newPath, retry5 = 0) {
  try {
    fs9.renameSync(oldPath, newPath);
  } catch (err2) {
    retry5++;
    if (retry5 > 3) throw err2;
    switch (err2.code) {
      // Windows Antivirus issues
      case "EPERM":
      case "EACCESS":
      case "EBUSY": {
        try {
          rimrafSync(newPath);
        } catch {
        }
        const start = Date.now();
        let backoff = 0;
        let lastError = err2;
        while (Date.now() - start < 6e4 && (lastError.code === "EPERM" || lastError.code === "EACCESS" || lastError.code === "EBUSY")) {
          const waitUntil = Date.now() + backoff;
          while (waitUntil > Date.now()) {
          }
          try {
            fs9.renameSync(oldPath, newPath);
            return;
          } catch (err3) {
            lastError = err3;
          }
          if (backoff < 100) {
            backoff += 10;
          }
        }
        throw lastError;
      }
      case "ENOTEMPTY":
      case "EEXIST":
      case "ENOTDIR":
        try {
          swapRenameSync(oldPath, newPath);
        } catch {
          rimrafSync(newPath);
          fs9.renameSync(oldPath, newPath);
        }
        break;
      case "ENOENT":
        fs9.mkdirSync(path17.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 err2;
    }
  }
}
function tempPath(p) {
  return `${p}_${process.pid.toString(16)}_${crypto2.randomBytes(4).toString("hex")}`;
}
async function swapRename(oldPath, newPath) {
  const temp = tempPath(newPath);
  await fs9.promises.rename(newPath, temp);
  try {
    await fs9.promises.rename(oldPath, newPath);
  } catch (err2) {
    try {
      await fs9.promises.rename(temp, newPath);
    } catch {
    }
    throw err2;
  }
  rimraf(temp).catch(() => {
  });
}
function swapRenameSync(oldPath, newPath) {
  const temp = tempPath(newPath);
  fs9.renameSync(newPath, temp);
  try {
    fs9.renameSync(oldPath, newPath);
  } catch (err2) {
    try {
      fs9.renameSync(temp, newPath);
    } catch {
    }
    throw err2;
  }
  try {
    rimrafSync(temp);
  } catch {
  }
}
var import_fs_extra, copySync, copy;
var init_rename_overwrite = __esm({
  "../../../../../setup-pnpm/store/v11/links/@/rename-overwrite/7.0.1/87428b418e43a94bf7c7f463bfc62ae5e0dc2e0a72cb36b94d07cf207fc3347b/node_modules/rename-overwrite/index.js"() {
    import_fs_extra = __toESM(require_lib13(), 1);
    init_rimraf();
    ({ copySync, copy } = import_fs_extra.default);
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/symlink-dir/10.0.1/99651a995e6d76e095bc87316473b0e784f9c820abf21dbac80a697d2ae16c64/node_modules/symlink-dir/dist/index.js
import { promises as fs10, 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, path240, opts3) {
  path240 = betterPathResolve(path240);
  target2 = betterPathResolve(target2);
  if (target2 === path240)
    throw new Error(`Symlink path is the same as the target path (${target2})`);
  return forceSymlink(target2, path240, opts3);
}
function isExistingSymlinkUpToDate(wantedTarget, path240, linkString) {
  const existingTarget = pathLib.isAbsolute(linkString) ? linkString : pathLib.join(pathLib.dirname(path240), linkString);
  return pathLib.relative(wantedTarget, existingTarget) === "";
}
function createTrueSymlinkAsync(target2, path240) {
  return fs10.symlink(resolveSrcOnTrueSymlink(target2, path240), path240, "dir");
}
function createTrueSymlinkSync(target2, path240) {
  symlinkSync(resolveSrcOnTrueSymlink(target2, path240), path240, "dir");
}
function createJunctionAsync(target2, path240) {
  return fs10.symlink(resolveSrcOnWinJunction(target2), path240, "junction");
}
function createJunctionSync(target2, path240) {
  symlinkSync(resolveSrcOnWinJunction(target2), path240, "junction");
}
async function forceSymlink(target2, path240, opts3) {
  let initialErr;
  try {
    if (opts3?.noJunction === true) {
      await createTrueSymlinkAsync(target2, path240);
    } else {
      await createSymlinkAsync(target2, path240);
    }
    return { reused: false };
  } catch (err2) {
    switch (err2.code) {
      case "ENOENT":
        try {
          await fs10.mkdir(pathLib.dirname(path240), { recursive: true });
        } catch (mkdirError) {
          mkdirError.message = `Error while trying to symlink "${target2}" to "${path240}". The error happened while trying to create the parent directory for the symlink target. Details: ${mkdirError}`;
          throw mkdirError;
        }
        await forceSymlink(target2, path240, opts3);
        return { reused: false };
      case "EEXIST":
      case "EISDIR":
        initialErr = err2;
        break;
      default:
        throw err2;
    }
  }
  let linkString;
  try {
    linkString = await fs10.readlink(path240);
  } catch (err2) {
    if (opts3?.overwrite === false) {
      throw initialErr;
    }
    const parentDir = pathLib.dirname(path240);
    let warn;
    if (opts3?.renameTried) {
      await fs10.unlink(path240);
      warn = `Symlink wanted name was occupied by directory or file. Old entity removed: "${parentDir}${pathLib.sep}{${pathLib.basename(path240)}".`;
    } else {
      const ignore2 = `.ignored_${pathLib.basename(path240)}`;
      try {
        await renameOverwrite(path240, 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(path240)} => ${ignore2}".`;
    }
    return {
      ...await forceSymlink(target2, path240, { ...opts3, renameTried: true }),
      warn
    };
  }
  if (isExistingSymlinkUpToDate(target2, path240, linkString)) {
    return { reused: true };
  }
  if (opts3?.overwrite === false) {
    throw initialErr;
  }
  try {
    await fs10.unlink(path240);
  } catch (error) {
    if (!types.isNativeError(error) || !("code" in error) || error.code !== "ENOENT") {
      throw error;
    }
  }
  return await forceSymlink(target2, path240, opts3);
}
var IS_WINDOWS, createSymlinkAsync, createSymlinkSync;
var init_dist3 = __esm({
  "../../../../../setup-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, path240) => {
        try {
          await createTrueSymlinkAsync(target2, path240);
          createSymlinkSync = createTrueSymlinkSync;
          createSymlinkAsync = createTrueSymlinkAsync;
        } catch (err2) {
          if (err2.code === "EPERM") {
            await createJunctionAsync(target2, path240);
            createSymlinkSync = createJunctionSync;
            createSymlinkAsync = createJunctionAsync;
          } else {
            throw err2;
          }
        }
      };
      createSymlinkSync = (target2, path240) => {
        try {
          createTrueSymlinkSync(target2, path240);
          createSymlinkSync = createTrueSymlinkSync;
          createSymlinkAsync = createTrueSymlinkAsync;
        } catch (err2) {
          if (err2.code === "EPERM") {
            createJunctionSync(target2, path240);
            createSymlinkSync = createJunctionSync;
            createSymlinkAsync = createJunctionAsync;
          } else {
            throw err2;
          }
        }
      };
    } else {
      createSymlinkAsync = createTrueSymlinkAsync;
      createSymlinkSync = createTrueSymlinkSync;
    }
  }
});

// ../bins/linker/lib/getBinNodePaths.js
import { promises as fs11 } from "node:fs";
import path18 from "node:path";
async function getBinNodePaths(target2) {
  const targetDir = path18.dirname(target2);
  let dir;
  try {
    dir = await fs11.realpath(targetDir);
  } catch (err2) {
    if (err2.code !== "ENOENT") {
      throw err2;
    }
    dir = targetDir;
  }
  let currentDir = dir;
  while (true) {
    if (path18.basename(currentDir) === "node_modules") {
      if (path18.basename(path18.dirname(currentDir)) !== "node_modules") {
        const nodeModulesDir = currentDir;
        const result2 = [];
        const rel = path18.relative(nodeModulesDir, dir);
        if (rel) {
          const relSegments = rel.split(path18.sep);
          const pkgDir = relSegments[0].startsWith("@") ? path18.join(nodeModulesDir, relSegments[0], relSegments[1]) : path18.join(nodeModulesDir, relSegments[0]);
          result2.push(path18.join(pkgDir, "node_modules"));
        }
        result2.push(nodeModulesDir);
        return result2;
      }
    }
    const parent = path18.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 fs12 } from "node:fs";
import { createRequire as createRequire3 } from "node:module";
import path19 from "node:path";
async function linkBins(modulesDir, binsDir, opts3) {
  const allDeps = await readModulesDir(modulesDir);
  if (allDeps === null)
    return [];
  return linkBinsOfPkgsByAliases(allDeps, binsDir, {
    ...opts3,
    modulesDir
  });
}
async function linkBinsOfPkgsByAliases(depsAliases, binsDir, opts3) {
  const pkgBinOpts = {
    allowExoticManifests: false,
    ...opts3
  };
  const directDependencies = opts3.projectManifest == null ? void 0 : new Set(Object.keys(getAllDependenciesFromManifest(opts3.projectManifest)));
  const allCmds = unnest_default((await Promise.all(depsAliases.map((alias) => ({
    depDir: path19.resolve(opts3.modulesDir, alias),
    isDirectDependency: directDependencies?.has(alias)
  })).filter(({ depDir }) => !isSubdir(depDir, binsDir)).map(async ({ depDir, isDirectDependency }) => {
    const target2 = (0, import_normalize_path.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, opts3);
}
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, opts3 = {}) {
  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 = opts3.excludeBins;
  if (excludeBins?.size) {
    allCmds = allCmds.filter((cmd) => !excludeBins.has(cmd.name));
  }
  return _linkBins(allCmds, binsTarget, opts3);
}
async function _linkBins(allCmds, binsDir, opts3) {
  if (allCmds.length === 0)
    return [];
  allCmds = deduplicateCommands(allCmds, binsDir);
  await fs12.mkdir(binsDir, { recursive: true });
  const results = await Promise.allSettled(allCmds.map(async (cmd) => linkBin(cmd, binsDir, opts3)));
  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_semver3.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 fs12.realpath(filename);
  return (0, import_normalize_path.default)(real).includes("/node_modules/");
}
async function getPackageBins(opts3, target2) {
  const manifest = opts3.allowExoticManifests ? await safeReadProjectManifestOnly(target2) : await safeReadPkgJson(target2);
  if (manifest == null) {
    return [];
  }
  if (isEmpty_default(manifest.bin) && !await isFromModules(target2)) {
    opts3.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 = createRequire3(import.meta.dirname);
    const nodeDir = path19.dirname(require4.resolve("node/CHANGELOG.md", { paths: [pkgDir] }));
    if (nodeDir) {
      nodeExecPath = path19.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, opts3) {
  const externalBinPath = path19.join(binsDir, cmd.name);
  try {
    const stat2 = await fs12.lstat(externalBinPath);
    if (stat2.isSymbolicLink()) {
      const target2 = await fs12.readlink(externalBinPath);
      if (target2 === cmd.path || path19.resolve(binsDir, target2) === path19.resolve(cmd.path)) {
        return;
      }
    } else if (stat2.isFile() && stat2.size < CMD_SHIM_MAX_SIZE) {
      const content = await fs12.readFile(externalBinPath, "utf8");
      if (isShimPointingAt(content, cmd.path)) {
        return;
      }
    }
  } catch {
  }
  if (IS_WINDOWS2) {
    const exePath = path19.join(binsDir, `${cmd.name}${getExeExtension2()}`);
    const isNodeExe = cmd.name === "node" && cmd.path.toLowerCase().endsWith(".exe");
    if (existsSync2(exePath)) {
      if (isNodeExe && await isSameFile(exePath, cmd.path)) {
        return;
      }
      globalWarn(`The target bin directory already contains an exe called ${cmd.name}, so removing ${exePath}`);
      await rimraf(exePath);
    }
    if (isNodeExe) {
      try {
        await fs12.link(cmd.path, exePath);
      } catch {
        await fs12.copyFile(cmd.path, exePath);
      }
      return;
    }
  } else if (cmd.name === "node") {
    await rimraf(externalBinPath);
    await fs12.symlink(cmd.path, externalBinPath, "file");
    return;
  }
  if (opts3?.preferSymlinkedExecutables && !IS_WINDOWS2 && cmd.nodeExecPath == null) {
    try {
      await symlinkDir(cmd.path, externalBinPath);
      await ensureExecutable(cmd.path, 493);
    } catch (err2) {
      if (err2.code !== "ENOENT" && err2.code !== "EISDIR") {
        throw err2;
      }
      globalWarn(`Failed to create bin at ${externalBinPath}. ${err2.message}`);
    }
    return;
  }
  try {
    let nodePath;
    if (opts3?.extraNodePaths?.length) {
      const binNodePaths = await getBinNodePaths(cmd.path);
      if (binNodePaths.length === 0) {
        nodePath = opts3.extraNodePaths;
      } else {
        nodePath = [...binNodePaths];
        for (const p of opts3.extraNodePaths) {
          if (!binNodePaths.includes(p)) {
            nodePath.push(p);
          }
        }
      }
    }
    await cmdShim(cmd.path, externalBinPath, {
      createPwshFile: cmd.makePowerShellShim,
      nodePath,
      nodeExecPath: cmd.nodeExecPath
    });
  } catch (err2) {
    if (err2.code === "ENOENT" || err2.code === "EISDIR") {
      globalWarn(`Failed to create bin at ${externalBinPath}. ${err2.message}`);
      return;
    }
    if (IS_WINDOWS2 && err2.code === "EPERM") {
      globalWarn(`Failed to create bin at ${externalBinPath}. ${err2.message}`);
      return;
    }
    throw err2;
  }
  if (EXECUTABLE_SHEBANG_SUPPORTED) {
    await ensureExecutable(cmd.path, 493);
  }
}
async function isSameFile(pathA, pathB) {
  const [statA, statB] = await Promise.all([
    fs12.stat(pathA, { bigint: true }).catch(() => null),
    fs12.stat(pathB, { bigint: true }).catch(() => null)
  ]);
  if (statA == null || statB == null)
    return false;
  if (statA.ino && statB.ino && statA.ino === statB.ino && statA.dev === statB.dev) {
    return true;
  }
  if (statA.size !== statB.size)
    return false;
  return haveEqualContents(pathA, pathB);
}
async function haveEqualContents(pathA, pathB) {
  const [fhA, fhB] = await Promise.all([
    fs12.open(pathA, "r").catch(() => null),
    fs12.open(pathB, "r").catch(() => null)
  ]);
  if (fhA == null || fhB == null) {
    await fhA?.close().catch(() => {
    });
    await fhB?.close().catch(() => {
    });
    return false;
  }
  try {
    const bufA = Buffer.alloc(FILE_COMPARE_CHUNK_SIZE);
    const bufB = Buffer.alloc(FILE_COMPARE_CHUNK_SIZE);
    let position3 = 0;
    for (; ; ) {
      const [readA, readB] = await Promise.all([
        fhA.read(bufA, 0, FILE_COMPARE_CHUNK_SIZE, position3),
        fhB.read(bufB, 0, FILE_COMPARE_CHUNK_SIZE, position3)
      ]);
      if (readA.bytesRead !== readB.bytesRead)
        return false;
      if (readA.bytesRead === 0)
        return true;
      if (!bufA.subarray(0, readA.bytesRead).equals(bufB.subarray(0, readB.bytesRead))) {
        return false;
      }
      position3 += readA.bytesRead;
    }
  } catch {
    return false;
  } finally {
    await fhA.close().catch(() => {
    });
    await fhB.close().catch(() => {
    });
  }
}
async function ensureExecutable(file, mode) {
  try {
    await (0, import_fix_bin.default)(file, mode);
  } catch (err2) {
    if (err2.code === "EPERM" || err2.code === "EACCES" || err2.code === "EROFS") {
      const stat2 = await fs12.stat(file).catch(() => void 0);
      if (stat2 != null && (stat2.mode & 73) !== 0 && !await hasWindowsShebang(file))
        return;
    }
    throw err2;
  }
}
async function hasWindowsShebang(file) {
  const fh = await fs12.open(file, "r").catch(() => void 0);
  if (fh == null)
    return false;
  try {
    const buf = Buffer.alloc(2048);
    await fh.read(buf, 0, 2048, 0);
    return buf[0] === 35 && buf[1] === 33 && /^#![^\n]+\r\n/.test(buf.toString());
  } catch {
    return false;
  } finally {
    await fh.close().catch(() => {
    });
  }
}
function getExeExtension2() {
  let cmdExtension2;
  if (process.env.PATHEXT) {
    cmdExtension2 = process.env.PATHEXT.split(path19.delimiter).find((ext) => ext.toUpperCase() === ".EXE");
  }
  return cmdExtension2 ?? ".exe";
}
async function safeReadPkgJson(pkgDir) {
  try {
    return await readPackageJsonFromDir(pkgDir);
  } catch (err2) {
    if (err2.code === "ENOENT") {
      return null;
    }
    throw err2;
  }
}
var import_fix_bin, import_is_windows5, import_normalize_path, import_semver3, binsConflictLogger, IS_WINDOWS2, EXECUTABLE_SHEBANG_SUPPORTED, POWER_SHELL_IS_SUPPORTED, CMD_SHIM_MAX_SIZE, FILE_COMPARE_CHUNK_SIZE;
var init_lib16 = __esm({
  "../bins/linker/lib/index.js"() {
    "use strict";
    init_lib7();
    init_lib2();
    init_lib8();
    init_lib3();
    init_lib5();
    init_lib11();
    init_lib15();
    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_path = __toESM(require_normalize_path(), 1);
    init_es();
    import_semver3 = __toESM(require_semver2(), 1);
    init_dist3();
    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;
    FILE_COMPARE_CHUNK_SIZE = 64 * 1024;
  }
});

// ../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_lib17 = __esm({
  "../building/pkg-requires-build/lib/index.js"() {
    "use strict";
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/balanced-match/4.0.4/20ce58b2b100ca858b16cc41734471d4d3b319709eb185a5c2c65823a18382f2/node_modules/balanced-match/dist/commonjs/index.js
var require_commonjs = __commonJS({
  "../../../../../setup-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 i4 = ai;
      if (ai >= 0 && bi > 0) {
        if (a2 === b) {
          return [ai, bi];
        }
        begs = [];
        left = str2.length;
        while (i4 >= 0 && !result2) {
          if (i4 === ai) {
            begs.push(i4);
            ai = str2.indexOf(a2, i4 + 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, i4 + 1);
          }
          i4 = ai < bi && ai >= 0 ? ai : bi;
        }
        if (begs.length && right !== void 0) {
          result2 = [left, right];
        }
      }
      return result2;
    };
    exports2.range = range;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/brace-expansion/5.0.8/c284dd585267189b4601ff39eb6de58da1a4db2109abf8470b34cd318b3417e3/node_modules/brace-expansion/dist/commonjs/index.js
var require_commonjs2 = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/brace-expansion/5.0.8/c284dd585267189b4601ff39eb6de58da1a4db2109abf8470b34cd318b3417e3/node_modules/brace-expansion/dist/commonjs/index.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.EXPANSION_MAX_LENGTH = exports2.EXPANSION_MAX = void 0;
    exports2.expand = expand;
    var balanced_match_1 = require_commonjs();
    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;
    exports2.EXPANSION_MAX_LENGTH = 4e6;
    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: max4 = exports2.EXPANSION_MAX, maxLength = exports2.EXPANSION_MAX_LENGTH } = options;
      if (str2.slice(0, 2) === "{}") {
        str2 = "\\{\\}" + str2.slice(2);
      }
      return expand_(escapeBraces(str2), max4, maxLength, true).map(unescapeBraces);
    }
    function embrace(str2) {
      return "{" + str2 + "}";
    }
    function isPadded(el) {
      return /^-?0\d/.test(el);
    }
    function lte(i4, y) {
      return i4 <= y;
    }
    function gte(i4, y) {
      return i4 >= y;
    }
    function combine(acc, pre, values, max4, maxLength, dropEmpties) {
      const out = [];
      let length = 0;
      for (let a2 = 0; a2 < acc.length; a2++) {
        for (let v = 0; v < values.length; v++) {
          if (out.length >= max4)
            return out;
          const expansion = acc[a2] + pre + values[v];
          if (dropEmpties && !expansion)
            continue;
          if (length + expansion.length > maxLength)
            return out;
          out.push(expansion);
          length += expansion.length;
        }
      }
      return out;
    }
    function expandSequence(body, isAlphaSequence, max4) {
      const n2 = body.split(/\.\./);
      const N = [];
      if (n2[0] === void 0 || n2[1] === void 0) {
        return N;
      }
      const x3 = 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 < x3;
      if (reverse3) {
        incr *= -1;
        test = gte;
      }
      const pad4 = n2.some(isPadded);
      for (let i4 = x3; test(i4, y) && N.length < max4; i4 += incr) {
        let c3;
        if (isAlphaSequence) {
          c3 = String.fromCharCode(i4);
          if (c3 === "\\") {
            c3 = "";
          }
        } else {
          c3 = String(i4);
          if (pad4) {
            const need = width - c3.length;
            if (need > 0) {
              const z = new Array(need + 1).join("0");
              if (i4 < 0) {
                c3 = "-" + z + c3.slice(1);
              } else {
                c3 = z + c3;
              }
            }
          }
        }
        N.push(c3);
      }
      return N;
    }
    function expand_(str2, max4, maxLength, isTop) {
      let acc = [""];
      let dropEmpties = false;
      let firstGroup = true;
      for (; ; ) {
        const m = (0, balanced_match_1.balanced)("{", "}", str2);
        if (!m) {
          return combine(acc, str2, [""], max4, maxLength, dropEmpties);
        }
        const pre = m.pre;
        if (/\$$/.test(pre)) {
          acc = combine(acc, pre + "{" + m.body + "}", [""], max4, maxLength, dropEmpties && !m.post.length);
          firstGroup = false;
          if (!m.post.length)
            break;
          str2 = m.post;
          continue;
        }
        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;
            isTop = true;
            continue;
          }
          return combine(acc, pre + "{" + m.body + "}" + m.post, [""], max4, maxLength, dropEmpties);
        }
        if (firstGroup) {
          dropEmpties = isTop && !isSequence;
          firstGroup = false;
        }
        let values;
        if (isSequence) {
          values = expandSequence(m.body, isAlphaSequence, max4);
        } else {
          let n2 = parseCommaParts(m.body);
          if (n2.length === 1 && n2[0] !== void 0) {
            n2 = expand_(n2[0], max4, maxLength, false).map(embrace);
            if (n2.length === 1) {
              acc = combine(acc, pre + n2[0], [""], max4, maxLength, dropEmpties && !m.post.length);
              if (!m.post.length)
                break;
              str2 = m.post;
              continue;
            }
          }
          values = [];
          for (let j2 = 0; j2 < n2.length; j2++) {
            values.push.apply(values, expand_(n2[j2], max4, maxLength, false));
          }
        }
        acc = combine(acc, pre, values, max4, maxLength, dropEmpties && !m.post.length);
        if (!m.post.length)
          break;
        str2 = m.post;
      }
      return acc;
    }
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/minimatch/10.2.5/5e71ec54f63fe8a57ad2d1987930cfacdfea5a6399b88f1a3130b390c722637e/node_modules/minimatch/dist/commonjs/assert-valid-pattern.js
var require_assert_valid_pattern = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/minimatch/10.2.5/5e71ec54f63fe8a57ad2d1987930cfacdfea5a6399b88f1a3130b390c722637e/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;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/minimatch/10.2.5/5e71ec54f63fe8a57ad2d1987930cfacdfea5a6399b88f1a3130b390c722637e/node_modules/minimatch/dist/commonjs/brace-expressions.js
var require_brace_expressions = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/minimatch/10.2.5/5e71ec54f63fe8a57ad2d1987930cfacdfea5a6399b88f1a3130b390c722637e/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 i4 = pos + 1;
      let sawStart = false;
      let uflag = false;
      let escaping = false;
      let negate = false;
      let endPos = pos;
      let rangeStart = "";
      WHILE: while (i4 < glob2.length) {
        const c3 = glob2.charAt(i4);
        if ((c3 === "!" || c3 === "^") && i4 === pos + 1) {
          negate = true;
          i4++;
          continue;
        }
        if (c3 === "]" && sawStart && !escaping) {
          endPos = i4 + 1;
          break;
        }
        sawStart = true;
        if (c3 === "\\") {
          if (!escaping) {
            escaping = true;
            i4++;
            continue;
          }
        }
        if (c3 === "[" && !escaping) {
          for (const [cls, [unip, u2, neg]] of Object.entries(posixClasses)) {
            if (glob2.startsWith(cls, i4)) {
              if (rangeStart) {
                return ["$.", false, glob2.length - pos, true];
              }
              i4 += cls.length;
              if (neg)
                negs.push(unip);
              else
                ranges.push(unip);
              uflag = uflag || u2;
              continue WHILE;
            }
          }
        }
        escaping = false;
        if (rangeStart) {
          if (c3 > rangeStart) {
            ranges.push(braceEscape(rangeStart) + "-" + braceEscape(c3));
          } else if (c3 === rangeStart) {
            ranges.push(braceEscape(c3));
          }
          rangeStart = "";
          i4++;
          continue;
        }
        if (glob2.startsWith("-]", i4 + 1)) {
          ranges.push(braceEscape(c3 + "-"));
          i4 += 2;
          continue;
        }
        if (glob2.startsWith("-", i4 + 1)) {
          rangeStart = c3;
          i4 += 2;
          continue;
        }
        ranges.push(braceEscape(c3));
        i4++;
      }
      if (endPos < i4) {
        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;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/minimatch/10.2.5/5e71ec54f63fe8a57ad2d1987930cfacdfea5a6399b88f1a3130b390c722637e/node_modules/minimatch/dist/commonjs/unescape.js
var require_unescape = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/minimatch/10.2.5/5e71ec54f63fe8a57ad2d1987930cfacdfea5a6399b88f1a3130b390c722637e/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;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/minimatch/10.2.5/5e71ec54f63fe8a57ad2d1987930cfacdfea5a6399b88f1a3130b390c722637e/node_modules/minimatch/dist/commonjs/ast.js
var require_ast = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/minimatch/10.2.5/5e71ec54f63fe8a57ad2d1987930cfacdfea5a6399b88f1a3130b390c722637e/node_modules/minimatch/dist/commonjs/ast.js"(exports2) {
    "use strict";
    var _a2;
    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 i4 = p.#parentIndex + 1; !pp.type && i4 < pp.#parts.length; i4++) {
              for (const part of n2.#parts) {
                if (typeof part === "string") {
                  throw new Error("string part in extglob AST??");
                }
                part.copyIn(pp.#parts[i4]);
              }
            }
            p = pp;
            pp = p.#parent;
          }
        }
        return this;
      }
      push(...parts) {
        for (const p of parts) {
          if (p === "")
            continue;
          if (typeof p !== "string" && !(p instanceof _a2 && 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 i4 = 0; i4 < this.#parentIndex; i4++) {
          const pp = p.#parts[i4];
          if (!(pp instanceof _a2 && 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 _a2(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 i5 = pos;
          let acc2 = "";
          while (i5 < str2.length) {
            const c3 = str2.charAt(i5++);
            if (escaping || c3 === "\\") {
              escaping = !escaping;
              acc2 += c3;
              continue;
            }
            if (inBrace) {
              if (i5 === braceStart + 1) {
                if (c3 === "^" || c3 === "!") {
                  braceNeg = true;
                }
              } else if (c3 === "]" && !(i5 === braceStart + 2 && braceNeg)) {
                inBrace = false;
              }
              acc2 += c3;
              continue;
            } else if (c3 === "[") {
              inBrace = true;
              braceStart = i5;
              braceNeg = false;
              acc2 += c3;
              continue;
            }
            const doRecurse = !opt.noext && isExtglobType(c3) && str2.charAt(i5) === "(" && extDepth <= maxDepth;
            if (doRecurse) {
              ast.push(acc2);
              acc2 = "";
              const ext = new _a2(c3, ast);
              i5 = _a2.#parseAST(str2, ext, i5, opt, extDepth + 1);
              ast.push(ext);
              continue;
            }
            acc2 += c3;
          }
          ast.push(acc2);
          return i5;
        }
        let i4 = pos + 1;
        let part = new _a2(null, ast);
        const parts = [];
        let acc = "";
        while (i4 < str2.length) {
          const c3 = str2.charAt(i4++);
          if (escaping || c3 === "\\") {
            escaping = !escaping;
            acc += c3;
            continue;
          }
          if (inBrace) {
            if (i4 === braceStart + 1) {
              if (c3 === "^" || c3 === "!") {
                braceNeg = true;
              }
            } else if (c3 === "]" && !(i4 === braceStart + 2 && braceNeg)) {
              inBrace = false;
            }
            acc += c3;
            continue;
          } else if (c3 === "[") {
            inBrace = true;
            braceStart = i4;
            braceNeg = false;
            acc += c3;
            continue;
          }
          const doRecurse = !opt.noext && isExtglobType(c3) && str2.charAt(i4) === "(" && /* 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 _a2(c3, part);
            part.push(ext);
            i4 = _a2.#parseAST(str2, ext, i4, opt, extDepth + depthAdd);
            continue;
          }
          if (c3 === "|") {
            part.push(acc);
            acc = "";
            parts.push(part);
            part = new _a2(null, ast);
            continue;
          }
          if (c3 === ")") {
            if (acc === "" && ast.#parts.length === 0) {
              ast.#emptyExt = true;
            }
            part.push(acc);
            acc = "";
            ast.push(...parts, part);
            return i4;
          }
          acc += c3;
        }
        ast.type = null;
        ast.#hasMagic = void 0;
        ast.#parts = [str2.substring(pos - 1)];
        return i4;
      }
      #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, index2) {
        const gc = child.#parts[0];
        const blank = new _a2(null, gc, this.options);
        blank.#parts.push("");
        gc.push(blank);
        this.#adopt(child, index2);
      }
      #adopt(child, index2) {
        const gc = child.#parts[0];
        this.#parts.splice(index2, 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 _a2(null, void 0, options);
        _a2.#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" ? _a2.#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 i4 = 0; i4 < this.#parts.length; i4++) {
              const c3 = this.#parts[i4];
              if (typeof c3 === "object") {
                c3.#flatten();
                if (this.#canAdopt(c3)) {
                  done = false;
                  this.#adopt(c3, i4);
                } else if (this.#canAdoptWithSpace(c3)) {
                  done = false;
                  this.#adoptWithSpace(c3, i4);
                } 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 i4 = 0; i4 < glob2.length; i4++) {
          const c3 = glob2.charAt(i4);
          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 (i4 === glob2.length - 1) {
              re += "\\\\";
            } else {
              escaping = true;
            }
            continue;
          }
          if (c3 === "[") {
            const [src2, needUflag, consumed, magic] = (0, brace_expressions_js_1.parseClass)(glob2, i4);
            if (consumed) {
              re += src2;
              uflag = uflag || needUflag;
              i4 += 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;
    _a2 = AST;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/minimatch/10.2.5/5e71ec54f63fe8a57ad2d1987930cfacdfea5a6399b88f1a3130b390c722637e/node_modules/minimatch/dist/commonjs/escape.js
var require_escape2 = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/minimatch/10.2.5/5e71ec54f63fe8a57ad2d1987930cfacdfea5a6399b88f1a3130b390c722637e/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;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/minimatch/10.2.5/5e71ec54f63fe8a57ad2d1987930cfacdfea5a6399b88f1a3130b390c722637e/node_modules/minimatch/dist/commonjs/index.js
var require_commonjs3 = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/minimatch/10.2.5/5e71ec54f63fe8a57ad2d1987930cfacdfea5a6399b88f1a3130b390c722637e/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_commonjs2();
    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 path240 = {
      win32: { sep: "\\" },
      posix: { sep: "/" }
    };
    exports2.sep = defaultPlatform === "win32" ? path240.win32.sep : path240.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 i4 = 0; i4 < this.set.length; i4++) {
            const p = this.set[i4];
            if (p[0] === "" && p[1] === "" && this.globParts[i4][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 i4 = gs;
            while (parts[i4 + 1] === "**") {
              i4++;
            }
            if (i4 !== gs) {
              parts.splice(gs, i4 - 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 i4 = 1; i4 < parts.length - 1; i4++) {
              const p = parts[i4];
              if (i4 === 1 && p === "" && parts[0] === "")
                continue;
              if (p === "." || p === "") {
                didSomething = true;
                parts.splice(i4, 1);
                i4--;
              }
            }
            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 i4 = 1; i4 < parts.length - 1; i4++) {
                const p = parts[i4];
                if (i4 === 1 && p === "" && parts[0] === "")
                  continue;
                if (p === "." || p === "") {
                  didSomething = true;
                  parts.splice(i4, 1);
                  i4--;
                }
              }
              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 i4 = 0; i4 < globParts.length - 1; i4++) {
          for (let j2 = i4 + 1; j2 < globParts.length; j2++) {
            const matched = this.partsMatch(globParts[i4], globParts[j2], !this.preserveMultipleSlashes);
            if (matched) {
              globParts[i4] = [];
              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 i4 = 0; i4 < pattern.length && pattern.charAt(i4) === "!"; i4++) {
          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 [fd2, pd] = [
              file[fdi],
              pattern[pdi]
            ];
            if (fd2.toLowerCase() === pd.toLowerCase()) {
              pattern[pdi] = fd2;
              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 i5 = fileIndex; i5 < file.length - fileTailMatch; i5++) {
            const f = String(file[i5]);
            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 i4 = bodySegments.length - 1;
        const fileLength = file.length - fileTailMatch;
        for (const b of bodySegments) {
          b[1] = fileLength - (nonGsPartsSums[i4--] + 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 i4 = fileIndex; i4 < file.length; i4++) {
            sawTail = true;
            const f = file[i4];
            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 fl2;
        for (fi = fileIndex, pi = patternIndex, fl2 = file.length, pl = pattern.length; fi < fl2 && 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 === fl2 && pi === pl) {
          return true;
        } else if (fi === fl2) {
          return partial;
        } else if (pi === pl) {
          return fi === fl2 - 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, i4) => {
            const next2 = pp[i4 + 1];
            const prev = pp[i4 - 1];
            if (p !== exports2.GLOBSTAR || prev === exports2.GLOBSTAR) {
              return;
            }
            if (prev === void 0) {
              if (next2 !== void 0 && next2 !== exports2.GLOBSTAR) {
                pp[i4 + 1] = "(?:\\/|" + twoStar + "\\/)?" + next2;
              } else {
                pp[i4] = twoStar;
              }
            } else if (next2 === void 0) {
              pp[i4 - 1] = prev + "(?:\\/|\\/" + twoStar + ")?";
            } else if (next2 !== exports2.GLOBSTAR) {
              pp[i4 - 1] = prev + "(?:\\/|\\/" + twoStar + "\\/)" + next2;
              pp[i4 + 1] = exports2.GLOBSTAR;
            }
          });
          const filtered = pp.filter((p) => p !== exports2.GLOBSTAR);
          if (this.partial && filtered.length >= 1) {
            const prefixes = [];
            for (let i4 = 1; i4 <= filtered.length; i4++) {
              prefixes.push(filtered.slice(0, i4).join("/"));
            }
            return "(?:" + prefixes.join("|") + ")";
          }
          return filtered.join("/");
        }).join("|");
        const [open3, close] = set2.length > 1 ? ["(?:", ")"] : ["", ""];
        re = "^" + open3 + re + close + "$";
        if (this.partial) {
          re = "^(?:\\/|" + open3 + 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 i4 = ff.length - 2; !filename && i4 >= 0; i4--) {
            filename = ff[i4];
          }
        }
        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;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/ignore-walk/8.0.0/4c67fde8e2589e7708dc12a44597d75c0260a050d9f6ff19d9a565becfb7a658/node_modules/ignore-walk/lib/index.js
var require_lib14 = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/ignore-walk/8.0.0/4c67fde8e2589e7708dc12a44597d75c0260a050d9f6ff19d9a565becfb7a658/node_modules/ignore-walk/lib/index.js"(exports2, module2) {
    "use strict";
    var fs131 = __require("fs");
    var path240 = __require("path");
    var EE = __require("events").EventEmitter;
    var Minimatch = require_commonjs3().Minimatch;
    var Walker2 = class _Walker extends EE {
      constructor(opts3) {
        opts3 = opts3 || {};
        super(opts3);
        this.isSymbolicLink = opts3.isSymbolicLink;
        this.path = opts3.path || process.cwd();
        this.basename = path240.basename(this.path);
        this.ignoreFiles = opts3.ignoreFiles || [".ignore"];
        this.ignoreRules = {};
        this.parent = opts3.parent || null;
        this.includeEmpty = !!opts3.includeEmpty;
        this.root = this.parent ? this.parent.root : this.path;
        this.follow = !!opts3.follow;
        this.result = this.parent ? this.parent.result : /* @__PURE__ */ new Set();
        this.entries = null;
        this.sawError = false;
        this.exact = opts3.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() {
        fs131.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 = path240.resolve(this.path, file);
        fs131.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 abs2 = this.path + "/" + entry;
        if (!st.isDirectory()) {
          if (file) {
            this.result.add(abs2.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 abs2 = this.path + "/" + entry;
        fs131.lstat(abs2, (lstatErr, lstatResult) => {
          if (lstatErr) {
            this.emit("error", lstatErr);
          } else {
            const isSymbolicLink = lstatResult.isSymbolicLink();
            if (this.follow && isSymbolicLink) {
              fs131.stat(abs2, (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, opts3) {
        return {
          path: this.path + "/" + entry,
          parent: this,
          ignoreFiles: this.ignoreFiles,
          follow: this.follow,
          includeEmpty: this.includeEmpty,
          ...opts3
        };
      }
      walker(entry, opts3, then) {
        new _Walker(this.walkerOpt(entry, opts3)).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(fs131.readdirSync(this.path));
        return this;
      }
      addIgnoreFile(file, then) {
        const ig = path240.resolve(this.path, file);
        this.onReadIgnoreFile(file, fs131.readFileSync(ig, "utf8"), then);
      }
      stat({ entry, file, dir }, then) {
        const abs2 = this.path + "/" + entry;
        let st = fs131.lstatSync(abs2);
        const isSymbolicLink = st.isSymbolicLink();
        if (this.follow && isSymbolicLink) {
          st = fs131.statSync(abs2);
        }
        this.onstat({ st, entry, file, dir, isSymbolicLink }, then);
      }
      walker(entry, opts3, then) {
        new _WalkerSync(this.walkerOpt(entry, opts3)).start();
        then();
      }
    };
    var walk = (opts3, callback2) => {
      const p = new Promise((resolve4, reject3) => {
        new Walker2(opts3).on("done", resolve4).on("error", reject3).start();
      });
      return callback2 ? p.then((res) => callback2(null, res), callback2) : p;
    };
    var walkSync2 = (opts3) => new WalkerSync(opts3).start().result;
    module2.exports = walk;
    walk.sync = walkSync2;
    walk.Walker = Walker2;
    walk.WalkerSync = WalkerSync;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/proc-log/6.1.0/a5811b9c790c15356212fe66986b06edbec5544fea94d867061e6aea968f7549/node_modules/proc-log/lib/index.js
var require_lib15 = __commonJS({
  "../../../../../setup-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 resolve4, reject3;
          const promise2 = new Promise((_resolve, _reject) => {
            resolve4 = _resolve;
            reject3 = _reject;
          });
          process.emit("input", "read", resolve4, reject3, ...args);
          return promise2;
        }
      }
    };
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/npm-packlist/10.0.4/e7096cc1bd0b990aa7e900c9b44110c43bd6fa8d280832dba6eed7a0a35d681c/node_modules/npm-packlist/lib/index.js
var require_lib16 = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/npm-packlist/10.0.4/e7096cc1bd0b990aa7e900c9b44110c43bd6fa8d280832dba6eed7a0a35d681c/node_modules/npm-packlist/lib/index.js"(exports2, module2) {
    "use strict";
    var { Walker: IgnoreWalker } = require_lib14();
    var { lstatSync: lstat2, readFileSync: readFile5 } = __require("fs");
    var { basename: basename2, dirname: dirname3, extname, join: join5, relative: relative2, resolve: resolve4, sep: sep2 } = __require("path");
    var { log: log3 } = require_lib15();
    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 normalizePath14 = (path240) => path240.split("\\").join("/");
    var readOutOfTreeIgnoreFiles = (root, rel, result2 = []) => {
      for (const file of [".npmignore", ".gitignore"]) {
        try {
          const ignoreContent = readFile5(join5(root, file), { encoding: "utf8" });
          result2.push(ignoreContent);
          break;
        } catch (err2) {
          if (err2.code !== "ENOENT") {
            throw err2;
          }
        }
      }
      if (!rel) {
        return result2;
      }
      const firstRel = rel.split(sep2, 1)[0];
      const newRoot = join5(root, firstRel);
      const newRel = relative2(newRoot, join5(root, rel));
      return readOutOfTreeIgnoreFiles(newRoot, newRel, result2);
    };
    var PackWalker = class _PackWalker extends IgnoreWalker {
      constructor(tree, opts3) {
        const options = {
          ...opts3,
          includeEmpty: false,
          follow: false,
          // we path.resolve() here because ignore-walk doesn't do it and we want full paths
          path: resolve4(opts3?.path || tree.path).replace(/\\/g, "/"),
          ignoreFiles: opts3?.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 path240 = normalizePath14(options.path);
          const prefix = normalizePath14(options.prefix);
          const workspaces = options.workspaces.map((ws) => normalizePath14(ws));
          if (path240 !== prefix && workspaces.includes(path240)) {
            const relpath = relative2(options.prefix, dirname3(options.path));
            additionalDefaults.push(...readOutOfTreeIgnoreFiles(options.prefix, relpath));
          } else if (path240 === prefix) {
            additionalDefaults.push(...workspaces.map((w) => normalizePath14(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(opts3, callback2) {
        if (!opts3.st.isFile() && !opts3.st.isDirectory()) {
          return callback2();
        }
        return super.onstat(opts3, 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(opts3, callback2) {
        if (nameIsBadForWindows(opts3.entry)) {
          return callback2();
        }
        return super.stat(opts3, 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, opts3) {
        let ignoreFiles = null;
        if (this.tree.workspaces) {
          const workspaceDirs = [...this.tree.workspaces.values()].map((dir) => dir.replace(/\\/g, "/"));
          const entryPath = join5(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, opts3),
          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, opts3, callback2) {
        new _PackWalker(this.tree, this.walkerOpt(entry, opts3)).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 = lstat2(join5(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 (err2) {
              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 path240 = node.path;
          const tree = node.target;
          const walkerOpts = {
            path: path240,
            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(join5(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 path20 from "node:path";
import util4 from "node:util";
async function packlist(pkgDir, opts3) {
  const resolvedPkgDir = path20.resolve(pkgDir);
  const workspaceDir = opts3?.workspaceDir == null ? void 0 : path20.resolve(opts3.workspaceDir);
  const pkg = opts3?.manifest ?? readPackageJson2(resolvedPkgDir);
  const tree = buildRootTree(resolvedPkgDir, pkg);
  const hasWorkspaceContext = workspaceDir != null && workspaceDir !== resolvedPkgDir && isSubdir(workspaceDir, resolvedPkgDir);
  let hasNpmIgnore = false;
  if (hasWorkspaceContext) {
    try {
      hasNpmIgnore = (await fs13.promises.stat(path20.join(resolvedPkgDir, ".npmignore"))).isFile();
    } catch (err2) {
      if (!util4.types.isNativeError(err2) || !("code" in err2) || err2.code !== "ENOENT")
        throw err2;
    }
  }
  const packlistOpts = hasWorkspaceContext && !hasNpmIgnore ? { prefix: workspaceDir, workspaces: [resolvedPkgDir] } : void 0;
  const files = await (0, import_npm_packlist.default)(tree, packlistOpts);
  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 = readPackageJson2(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 = path20.join(currentDir, "node_modules", depName);
    try {
      const stat2 = fs13.statSync(path20.join(candidate, "package.json"));
      if (stat2.isFile())
        return candidate;
    } catch (err2) {
      if (!util4.types.isNativeError(err2) || !("code" in err2) || err2.code !== "ENOENT") {
        throw err2;
      }
    }
    const parent = path20.dirname(currentDir);
    if (parent === currentDir)
      return void 0;
    currentDir = parent;
  }
}
function readPackageJson2(dir) {
  try {
    return JSON.parse(fs13.readFileSync(path20.join(dir, "package.json"), "utf8"));
  } catch (err2) {
    if (util4.types.isNativeError(err2) && "code" in err2 && err2.code === "ENOENT") {
      return {};
    }
    throw err2;
  }
}
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_lib18 = __esm({
  "../fs/packlist/lib/index.js"() {
    "use strict";
    init_is_subdir();
    import_npm_packlist = __toESM(require_lib16(), 1);
  }
});

// ../fetching/directory-fetcher/lib/index.js
import { promises as fs14 } from "node:fs";
import path21 from "node:path";
import util5 from "node:util";
function createDirectoryFetcher(opts3) {
  const readFileStat = opts3?.resolveSymlinks === true ? realFileStat : fileStat;
  const fetchFromDir2 = opts3?.includeOnlyPackageFiles ? fetchPackageFilesFromDir : fetchAllFilesFromDir.bind(null, readFileStat);
  const directoryFetcher = (cafs, resolution, opts4) => {
    const dir = path21.resolve(opts4.lockfileDir, resolution.directory);
    return fetchFromDir2(dir);
  };
  return {
    directory: directoryFetcher
  };
}
async function fetchFromDir(dir, opts3) {
  if (opts3.includeOnlyPackageFiles) {
    return fetchPackageFilesFromDir(dir);
  }
  const readFileStat = opts3?.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(path21.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 (err2) {
    if (util5.types.isNativeError(err2) && "code" in err2 && err2.code === "ENOENT") {
      directoryFetcherLogger.debug({ brokenSymlink: filePath });
      return null;
    }
    throw err2;
  }
}
async function fileStat(filePath) {
  try {
    return {
      filePath,
      stat: await fs14.stat(filePath)
    };
  } catch (err2) {
    if (util5.types.isNativeError(err2) && "code" in err2 && err2.code === "ENOENT") {
      directoryFetcherLogger.debug({ brokenSymlink: filePath });
      return null;
    }
    throw err2;
  }
}
async function fetchPackageFilesFromDir(dir) {
  const files = await packlist(dir);
  const filesMap = new Map(files.map((file) => [file, path21.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_lib19 = __esm({
  "../fetching/directory-fetcher/lib/index.js"() {
    "use strict";
    init_lib17();
    init_lib18();
    init_lib3();
    init_lib15();
    directoryFetcherLogger = logger("directory-fetcher");
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/run-groups/5.0.0/9ac8fc5279ff636c597d476be5cfed605e7903e3a1e5506e16ce4155e38757ba/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_lib20 = __esm({
  "../../../../../setup-pnpm/store/v11/links/@/run-groups/5.0.0/9ac8fc5279ff636c597d476be5cfed605e7903e3a1e5506e16ce4155e38757ba/node_modules/run-groups/lib/index.js"() {
    init_p_limit();
  }
});

// ../exec/lifecycle/lib/runLifecycleHooksConcurrently.js
import path22 from "node:path";
async function runLifecycleHooksConcurrently(stages, importers, childConcurrency, opts3) {
  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, path22.join(modulesDir, ".bin"), {
        extraNodePaths: opts3.extraNodePaths,
        allowExoticManifests: true,
        preferSymlinkedExecutables: opts3.preferSymlinkedExecutables,
        projectManifest: manifest,
        warn: (message) => {
          logger.warn({ message, prefix: rootDir });
        }
      });
      const runLifecycleHookOpts = {
        ...opts3,
        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: opts3.resolveSymlinksInInjectedDirs });
      await Promise.all(targetDirs.map(async (targetDir) => opts3.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_lib16();
    init_lib19();
    init_lib3();
    init_lib20();
    init_runLifecycleHook();
  }
});

// ../exec/lifecycle/lib/trackChildProcess.js
import { spawn as spawn2 } from "node:child_process";
import path23 from "node:path";
function trackChildProcess(child) {
  const pid = child.pid;
  if (pid == null)
    return;
  trackedChildPids.add(pid);
  const untrack = () => {
    trackedChildPids.delete(pid);
  };
  child.once("close", untrack);
  child.once("error", untrack);
}
async function killTrackedProcessTrees() {
  await Promise.all(Array.from(trackedChildPids, killProcessTree));
}
async function killProcessTree(pid) {
  if (process.platform === "win32") {
    const taskkillPath = path23.join(process.env.SystemRoot ?? process.env.windir ?? "C:\\Windows", "System32", "taskkill.exe");
    await new Promise((resolve4) => {
      const taskkill = spawn2(taskkillPath, ["/pid", pid.toString(), "/T", "/F"], { stdio: "ignore", windowsHide: true });
      const timer = setTimeout(() => {
        taskkill.kill();
        resolve4();
      }, 1e4);
      timer.unref();
      const done = () => {
        clearTimeout(timer);
        resolve4();
      };
      taskkill.once("error", done);
      taskkill.once("exit", done);
    });
  } else {
    try {
      process.kill(pid);
    } catch {
    }
  }
}
var trackedChildPids;
var init_trackChildProcess = __esm({
  "../exec/lifecycle/lib/trackChildProcess.js"() {
    "use strict";
    trackedChildPids = /* @__PURE__ */ new Set();
  }
});

// ../exec/lifecycle/lib/index.js
function makeNodeRequireOption(modulePath, env4) {
  let { NODE_OPTIONS } = env4 ?? process.env;
  NODE_OPTIONS = `${NODE_OPTIONS ?? process.env.NODE_OPTIONS ?? ""} --require=${quotePathIfNeeded(modulePath)}`.trim();
  return { NODE_OPTIONS };
}
function makeNodePackageMapOption(packageMapPath, env4) {
  let { NODE_OPTIONS } = env4 ?? process.env;
  NODE_OPTIONS = `${removeNodePackageMapOption(NODE_OPTIONS ?? process.env.NODE_OPTIONS ?? "")} --experimental-package-map=${quotePathIfNeeded(packageMapPath)}`.trim();
  return { NODE_OPTIONS };
}
function quotePathIfNeeded(path240) {
  if (!/[\s"'\\]/.test(path240))
    return path240;
  return `"${path240.replace(/(["\\])/g, "\\$1")}"`;
}
function removeNodePackageMapOption(nodeOptions) {
  return nodeOptions.replace(/(?:^|\s)--experimental-package-map=(?:"(?:\\.|[^"\\])*"|'(?:\\.|[^'\\])*'|\S+)/g, "").replace(/(?:^|\s)--experimental-package-map\s+(?:"(?:\\.|[^"\\])*"|'(?:\\.|[^'\\])*'|\S+)/g, "").trim();
}
async function runPostinstallHooks(opts3) {
  const pkg = await safeReadPackageJsonFromDir(opts3.pkgRoot);
  if (pkg == null)
    return false;
  if (pkg.scripts == null) {
    pkg.scripts = {};
  }
  if (pkg.scripts.preinstall) {
    await runLifecycleHook("preinstall", pkg, opts3);
  }
  const executedAnInstallScript = await runLifecycleHook("install", pkg, opts3);
  if (pkg.scripts.postinstall) {
    await runLifecycleHook("postinstall", pkg, opts3);
  }
  return pkg.scripts.preinstall != null || executedAnInstallScript || pkg.scripts.postinstall != null;
}
var init_lib21 = __esm({
  "../exec/lifecycle/lib/index.js"() {
    "use strict";
    init_lib5();
    init_runLifecycleHook();
    init_runLifecycleHooksConcurrently();
    init_trackChildProcess();
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/qrcode-terminal/0.12.0/751cbcc5a2d95c53c2d299cfe0a19376d0a41cb6b78bc81a6f4a8946596ea530/node_modules/qrcode-terminal/vendor/QRCode/QRMode.js
var require_QRMode = __commonJS({
  "../../../../../setup-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
    };
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/qrcode-terminal/0.12.0/751cbcc5a2d95c53c2d299cfe0a19376d0a41cb6b78bc81a6f4a8946596ea530/node_modules/qrcode-terminal/vendor/QRCode/QR8bitByte.js
var require_QR8bitByte = __commonJS({
  "../../../../../setup-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 i4 = 0; i4 < this.data.length; i4++) {
          buffer3.put(this.data.charCodeAt(i4), 8);
        }
      }
    };
    module2.exports = QR8bitByte;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/qrcode-terminal/0.12.0/751cbcc5a2d95c53c2d299cfe0a19376d0a41cb6b78bc81a6f4a8946596ea530/node_modules/qrcode-terminal/vendor/QRCode/QRMath.js
var require_QRMath = __commonJS({
  "../../../../../setup-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 (i4 = 0; i4 < 8; i4++) {
      QRMath.EXP_TABLE[i4] = 1 << i4;
    }
    var i4;
    for (i4 = 8; i4 < 256; i4++) {
      QRMath.EXP_TABLE[i4] = QRMath.EXP_TABLE[i4 - 4] ^ QRMath.EXP_TABLE[i4 - 5] ^ QRMath.EXP_TABLE[i4 - 6] ^ QRMath.EXP_TABLE[i4 - 8];
    }
    var i4;
    for (i4 = 0; i4 < 255; i4++) {
      QRMath.LOG_TABLE[QRMath.EXP_TABLE[i4]] = i4;
    }
    var i4;
    module2.exports = QRMath;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/qrcode-terminal/0.12.0/751cbcc5a2d95c53c2d299cfe0a19376d0a41cb6b78bc81a6f4a8946596ea530/node_modules/qrcode-terminal/vendor/QRCode/QRPolynomial.js
var require_QRPolynomial = __commonJS({
  "../../../../../setup-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 i4 = 0; i4 < num.length - offset; i4++) {
        this.num[i4] = num[i4 + offset];
      }
    }
    QRPolynomial.prototype = {
      get: function(index2) {
        return this.num[index2];
      },
      getLength: function() {
        return this.num.length;
      },
      multiply: function(e) {
        var num = new Array(this.getLength() + e.getLength() - 1);
        for (var i4 = 0; i4 < this.getLength(); i4++) {
          for (var j2 = 0; j2 < e.getLength(); j2++) {
            num[i4 + j2] ^= QRMath.gexp(QRMath.glog(this.get(i4)) + 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 i4 = 0; i4 < this.getLength(); i4++) {
          num[i4] = this.get(i4);
        }
        for (var x3 = 0; x3 < e.getLength(); x3++) {
          num[x3] ^= QRMath.gexp(QRMath.glog(e.get(x3)) + ratio);
        }
        return new QRPolynomial(num, 0).mod(e);
      }
    };
    module2.exports = QRPolynomial;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/qrcode-terminal/0.12.0/751cbcc5a2d95c53c2d299cfe0a19376d0a41cb6b78bc81a6f4a8946596ea530/node_modules/qrcode-terminal/vendor/QRCode/QRMaskPattern.js
var require_QRMaskPattern = __commonJS({
  "../../../../../setup-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
    };
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/qrcode-terminal/0.12.0/751cbcc5a2d95c53c2d299cfe0a19376d0a41cb6b78bc81a6f4a8946596ea530/node_modules/qrcode-terminal/vendor/QRCode/QRUtil.js
var require_QRUtil = __commonJS({
  "../../../../../setup-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 d3 = data << 10;
        while (QRUtil.getBCHDigit(d3) - QRUtil.getBCHDigit(QRUtil.G15) >= 0) {
          d3 ^= QRUtil.G15 << QRUtil.getBCHDigit(d3) - QRUtil.getBCHDigit(QRUtil.G15);
        }
        return (data << 10 | d3) ^ QRUtil.G15_MASK;
      },
      getBCHTypeNumber: function(data) {
        var d3 = data << 12;
        while (QRUtil.getBCHDigit(d3) - QRUtil.getBCHDigit(QRUtil.G18) >= 0) {
          d3 ^= QRUtil.G18 << QRUtil.getBCHDigit(d3) - QRUtil.getBCHDigit(QRUtil.G18);
        }
        return data << 12 | d3;
      },
      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, i4, j2) {
        switch (maskPattern) {
          case QRMaskPattern.PATTERN000:
            return (i4 + j2) % 2 === 0;
          case QRMaskPattern.PATTERN001:
            return i4 % 2 === 0;
          case QRMaskPattern.PATTERN010:
            return j2 % 3 === 0;
          case QRMaskPattern.PATTERN011:
            return (i4 + j2) % 3 === 0;
          case QRMaskPattern.PATTERN100:
            return (Math.floor(i4 / 2) + Math.floor(j2 / 3)) % 2 === 0;
          case QRMaskPattern.PATTERN101:
            return i4 * j2 % 2 + i4 * j2 % 3 === 0;
          case QRMaskPattern.PATTERN110:
            return (i4 * j2 % 2 + i4 * j2 % 3) % 2 === 0;
          case QRMaskPattern.PATTERN111:
            return (i4 * j2 % 3 + (i4 + j2) % 2) % 2 === 0;
          default:
            throw new Error("bad maskPattern:" + maskPattern);
        }
      },
      getErrorCorrectPolynomial: function(errorCorrectLength) {
        var a2 = new QRPolynomial([1], 0);
        for (var i4 = 0; i4 < errorCorrectLength; i4++) {
          a2 = a2.multiply(new QRPolynomial([1, QRMath.gexp(i4)], 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;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/qrcode-terminal/0.12.0/751cbcc5a2d95c53c2d299cfe0a19376d0a41cb6b78bc81a6f4a8946596ea530/node_modules/qrcode-terminal/vendor/QRCode/QRErrorCorrectLevel.js
var require_QRErrorCorrectLevel = __commonJS({
  "../../../../../setup-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
    };
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/qrcode-terminal/0.12.0/751cbcc5a2d95c53c2d299cfe0a19376d0a41cb6b78bc81a6f4a8946596ea530/node_modules/qrcode-terminal/vendor/QRCode/QRRSBlock.js
var require_QRRSBlock = __commonJS({
  "../../../../../setup-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 i4 = 0; i4 < length; i4++) {
        var count2 = rsBlock[i4 * 3 + 0];
        var totalCount = rsBlock[i4 * 3 + 1];
        var dataCount = rsBlock[i4 * 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;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/qrcode-terminal/0.12.0/751cbcc5a2d95c53c2d299cfe0a19376d0a41cb6b78bc81a6f4a8946596ea530/node_modules/qrcode-terminal/vendor/QRCode/QRBitBuffer.js
var require_QRBitBuffer = __commonJS({
  "../../../../../setup-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(index2) {
        var bufIndex = Math.floor(index2 / 8);
        return (this.buffer[bufIndex] >>> 7 - index2 % 8 & 1) == 1;
      },
      put: function(num, length) {
        for (var i4 = 0; i4 < length; i4++) {
          this.putBit((num >>> length - i4 - 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;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/qrcode-terminal/0.12.0/751cbcc5a2d95c53c2d299cfe0a19376d0a41cb6b78bc81a6f4a8946596ea530/node_modules/qrcode-terminal/vendor/QRCode/index.js
var require_QRCode = __commonJS({
  "../../../../../setup-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 i4 = 0; i4 < rsBlocks.length; i4++) {
              totalDataCount += rsBlocks[i4].dataCount;
            }
            for (var x3 = 0; x3 < this.dataList.length; x3++) {
              var data = this.dataList[x3];
              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 i4 = 0; i4 < 8; i4++) {
          this.makeImpl(true, i4);
          var lostPoint = QRUtil.getLostPoint(this);
          if (i4 === 0 || minLostPoint > lostPoint) {
            minLostPoint = lostPoint;
            pattern = i4;
          }
        }
        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 x3 = col * cs;
            var dark = this.modules[row][col];
            if (dark) {
              qr_mc.beginFill(0, 100);
              qr_mc.moveTo(x3, y);
              qr_mc.lineTo(x3 + cs, y);
              qr_mc.lineTo(x3 + cs, y + cs);
              qr_mc.lineTo(x3, 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 i4 = 0; i4 < pos.length; i4++) {
          for (var j2 = 0; j2 < pos.length; j2++) {
            var row = pos[i4];
            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 bits2 = QRUtil.getBCHTypeNumber(this.typeNumber);
        var mod2;
        for (var i4 = 0; i4 < 18; i4++) {
          mod2 = !test && (bits2 >> i4 & 1) === 1;
          this.modules[Math.floor(i4 / 3)][i4 % 3 + this.moduleCount - 8 - 3] = mod2;
        }
        for (var x3 = 0; x3 < 18; x3++) {
          mod2 = !test && (bits2 >> x3 & 1) === 1;
          this.modules[x3 % 3 + this.moduleCount - 8 - 3][Math.floor(x3 / 3)] = mod2;
        }
      },
      setupTypeInfo: function(test, maskPattern) {
        var data = this.errorCorrectLevel << 3 | maskPattern;
        var bits2 = QRUtil.getBCHTypeInfo(data);
        var mod2;
        for (var v = 0; v < 15; v++) {
          mod2 = !test && (bits2 >> v & 1) === 1;
          if (v < 6) {
            this.modules[v][8] = mod2;
          } else if (v < 8) {
            this.modules[v + 1][8] = mod2;
          } else {
            this.modules[this.moduleCount - 15 + v][8] = mod2;
          }
        }
        for (var h2 = 0; h2 < 15; h2++) {
          mod2 = !test && (bits2 >> h2 & 1) === 1;
          if (h2 < 8) {
            this.modules[8][this.moduleCount - h2 - 1] = mod2;
          } else if (h2 < 9) {
            this.modules[8][15 - h2 - 1 + 1] = mod2;
          } else {
            this.modules[8][15 - h2 - 1] = mod2;
          }
        }
        this.modules[this.moduleCount - 8][8] = !test;
      },
      mapData: function(data, maskPattern) {
        var inc3 = -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 += inc3;
            if (row < 0 || this.moduleCount <= row) {
              row -= inc3;
              inc3 = -inc3;
              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 i4 = 0; i4 < dataList.length; i4++) {
        var data = dataList[i4];
        buffer3.put(data.mode, 4);
        buffer3.put(data.getLength(), QRUtil.getLengthInBits(data.mode, typeNumber));
        data.write(buffer3);
      }
      var totalDataCount = 0;
      for (var x3 = 0; x3 < rsBlocks.length; x3++) {
        totalDataCount += rsBlocks[x3].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 i4 = 0; i4 < dcdata[r].length; i4++) {
          dcdata[r][i4] = 255 & buffer3.buffer[i4 + 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 x3 = 0; x3 < ecdata[r].length; x3++) {
          var modIndex = x3 + modPoly.getLength() - ecdata[r].length;
          ecdata[r][x3] = 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 index2 = 0;
      for (var z = 0; z < maxDcCount; z++) {
        for (var s = 0; s < rsBlocks.length; s++) {
          if (z < dcdata[s].length) {
            data[index2++] = dcdata[s][z];
          }
        }
      }
      for (var xx = 0; xx < maxEcCount; xx++) {
        for (var t2 = 0; t2 < rsBlocks.length; t2++) {
          if (xx < ecdata[t2].length) {
            data[index2++] = ecdata[t2][xx];
          }
        }
      }
      return data;
    };
    module2.exports = QRCode;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/qrcode-terminal/0.12.0/751cbcc5a2d95c53c2d299cfe0a19376d0a41cb6b78bc81a6f4a8946596ea530/node_modules/qrcode-terminal/lib/main.js
var require_main = __commonJS({
  "../../../../../setup-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 i4 = 0; i4 < length; i4++) {
        arr[i4] = value;
      }
      return arr;
    };
    module2.exports = {
      error: QRErrorCorrectLevel.L,
      generate: function(input, opts3, cb) {
        if (typeof opts3 === "function") {
          cb = opts3;
          opts3 = {};
        }
        var qrcode = new QRCode(-1, this.error);
        qrcode.addData(input);
        qrcode.make();
        var output = "";
        if (opts3 && opts3.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/formatAuthUrlMessage.js
function formatAuthUrlMessage(authUrl, globalWarn3) {
  let qrCode;
  try {
    qrCode = generateQrCode(authUrl);
  } catch (err2) {
    globalWarn3(`Could not generate a QR code: ${String(err2)}`);
    return `Authenticate your account at:
${authUrl}`;
  }
  return `Authenticate your account at:
${authUrl}

${qrCode}`;
}
var init_formatAuthUrlMessage = __esm({
  "../network/web-auth/lib/formatAuthUrlMessage.js"() {
    "use strict";
    init_generateQrCode();
  }
});

// ../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: fetch3, 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((resolve4) => setTimeout4(resolve4, pollIntervalMs));
    let response;
    try {
      response = await fetch3(doneUrl, fetchOptions);
    } catch {
      continue;
    }
    if (!response.ok) {
      discardBody(response);
      continue;
    }
    if (response.status === 202) {
      discardBody(response);
      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((resolve4) => setTimeout4(resolve4, sleepMs));
        }
      }
      continue;
    }
    const body = await readTokenBody(response);
    if (body?.token) {
      return body.token;
    }
  }
}
async function readTokenBody(response) {
  if (response.body === void 0) {
    try {
      return await response.json();
    } catch {
      return void 0;
    }
  }
  const contentLength = Number(response.headers.get("content-length"));
  if (Number.isFinite(contentLength) && contentLength > TOKEN_BODY_LIMIT) {
    discardBody(response);
    return void 0;
  }
  if (response.body === null)
    return void 0;
  let reader;
  try {
    reader = response.body.getReader();
  } catch {
    return void 0;
  }
  const chunks = [];
  let total = 0;
  try {
    while (true) {
      const { done, value } = await reader.read();
      if (done)
        break;
      if (value == null)
        continue;
      total += value.length;
      if (total > TOKEN_BODY_LIMIT) {
        reader.cancel().catch(() => {
        });
        return void 0;
      }
      chunks.push(value);
    }
  } catch {
    return void 0;
  }
  try {
    return JSON.parse(new TextDecoder().decode(Buffer.concat(chunks)));
  } catch {
    return void 0;
  }
}
function discardBody(response) {
  try {
    response.body?.cancel().catch(() => {
    });
  } catch {
  }
}
var TOKEN_BODY_LIMIT;
var init_pollForWebAuthToken = __esm({
  "../network/web-auth/lib/pollForWebAuthToken.js"() {
    "use strict";
    init_WebAuthTimeoutError();
    TOKEN_BODY_LIMIT = 64 * 1024;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/is-docker/3.0.0/d6d14924302e21443505895bc5d2512f16d2cc169115ca658dedea7f402bdda2/node_modules/is-docker/index.js
import fs15 from "node:fs";
function hasDockerEnv() {
  try {
    fs15.statSync("/.dockerenv");
    return true;
  } catch {
    return false;
  }
}
function hasDockerCGroup() {
  try {
    return fs15.readFileSync("/proc/self/cgroup", "utf8").includes("docker");
  } catch {
    return false;
  }
}
function isDocker() {
  if (isDockerCached === void 0) {
    isDockerCached = hasDockerEnv() || hasDockerCGroup();
  }
  return isDockerCached;
}
var isDockerCached;
var init_is_docker = __esm({
  "../../../../../setup-pnpm/store/v11/links/@/is-docker/3.0.0/d6d14924302e21443505895bc5d2512f16d2cc169115ca658dedea7f402bdda2/node_modules/is-docker/index.js"() {
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/is-inside-container/1.0.0/8aa73742d5e40efac8986e75bc613ec6d803ed65dd77844410fdbe0afe54d3f3/node_modules/is-inside-container/index.js
import fs16 from "node:fs";
function isInsideContainer() {
  if (cachedResult === void 0) {
    cachedResult = hasContainerEnv() || isDocker();
  }
  return cachedResult;
}
var cachedResult, hasContainerEnv;
var init_is_inside_container = __esm({
  "../../../../../setup-pnpm/store/v11/links/@/is-inside-container/1.0.0/8aa73742d5e40efac8986e75bc613ec6d803ed65dd77844410fdbe0afe54d3f3/node_modules/is-inside-container/index.js"() {
    init_is_docker();
    hasContainerEnv = () => {
      try {
        fs16.statSync("/run/.containerenv");
        return true;
      } catch {
        return false;
      }
    };
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/is-wsl/3.1.1/57a8b170c9225052f231bcd1e1854a519f886d60267bd4d0f141004e036322f3/node_modules/is-wsl/index.js
import process3 from "node:process";
import os3 from "node:os";
import fs17 from "node:fs";
var isWsl, is_wsl_default;
var init_is_wsl = __esm({
  "../../../../../setup-pnpm/store/v11/links/@/is-wsl/3.1.1/57a8b170c9225052f231bcd1e1854a519f886d60267bd4d0f141004e036322f3/node_modules/is-wsl/index.js"() {
    init_is_inside_container();
    isWsl = () => {
      if (process3.platform !== "linux") {
        return false;
      }
      if (os3.release().toLowerCase().includes("microsoft")) {
        if (isInsideContainer()) {
          return false;
        }
        return true;
      }
      try {
        if (fs17.readFileSync("/proc/version", "utf8").toLowerCase().includes("microsoft")) {
          return !isInsideContainer();
        }
      } catch {
      }
      if (fs17.existsSync("/proc/sys/fs/binfmt_misc/WSLInterop") || fs17.existsSync("/run/WSL")) {
        return !isInsideContainer();
      }
      return false;
    };
    is_wsl_default = process3.env.__IS_WSL_TEST__ ? isWsl : isWsl();
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/powershell-utils/0.1.0/dc949f7f0b47fdaa92902344332c4836acf239ac7bf346cf7071730aedbcc4b8/node_modules/powershell-utils/index.js
import process4 from "node:process";
import { Buffer as Buffer2 } from "node:buffer";
import { promisify as promisify3 } from "node:util";
import childProcess from "node:child_process";
var execFile, powerShellPath, executePowerShell;
var init_powershell_utils = __esm({
  "../../../../../setup-pnpm/store/v11/links/@/powershell-utils/0.1.0/dc949f7f0b47fdaa92902344332c4836acf239ac7bf346cf7071730aedbcc4b8/node_modules/powershell-utils/index.js"() {
    execFile = promisify3(childProcess.execFile);
    powerShellPath = () => `${process4.env.SYSTEMROOT || process4.env.windir || String.raw`C:\Windows`}\\System32\\WindowsPowerShell\\v1.0\\powershell.exe`;
    executePowerShell = async (command, options = {}) => {
      const {
        powerShellPath: psPath,
        ...execFileOptions
      } = options;
      const encodedCommand = executePowerShell.encodeCommand(command);
      return execFile(
        psPath ?? powerShellPath(),
        [
          ...executePowerShell.argumentsPrefix,
          encodedCommand
        ],
        {
          encoding: "utf8",
          ...execFileOptions
        }
      );
    };
    executePowerShell.argumentsPrefix = [
      "-NoProfile",
      "-NonInteractive",
      "-ExecutionPolicy",
      "Bypass",
      "-EncodedCommand"
    ];
    executePowerShell.encodeCommand = (command) => Buffer2.from(command, "utf16le").toString("base64");
    executePowerShell.escapeArgument = (value) => `'${String(value).replaceAll("'", "''")}'`;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/wsl-utils/0.3.1/2151c75b44d6b59cda7a26a65ab35120fdd6d4df926f882511d8d97b7d3a8400/node_modules/wsl-utils/utilities.js
function parseMountPointFromConfig(content) {
  for (const line of content.split("\n")) {
    if (/^\s*#/.test(line)) {
      continue;
    }
    const match = /^\s*root\s*=\s*(?<mountPoint>"[^"]*"|'[^']*'|[^#]*)/.exec(line);
    if (!match) {
      continue;
    }
    return match.groups.mountPoint.trim().replaceAll(/^["']|["']$/g, "");
  }
}
var init_utilities2 = __esm({
  "../../../../../setup-pnpm/store/v11/links/@/wsl-utils/0.3.1/2151c75b44d6b59cda7a26a65ab35120fdd6d4df926f882511d8d97b7d3a8400/node_modules/wsl-utils/utilities.js"() {
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/wsl-utils/0.3.1/2151c75b44d6b59cda7a26a65ab35120fdd6d4df926f882511d8d97b7d3a8400/node_modules/wsl-utils/index.js
import { promisify as promisify4 } from "node:util";
import childProcess2 from "node:child_process";
import fs18, { constants as fsConstants } from "node:fs/promises";
var execFile2, wslDrivesMountPoint, powerShellPathFromWsl, powerShellPath2, canAccessPowerShellPromise, canAccessPowerShell, wslDefaultBrowser, convertWslPathToWindows;
var init_wsl_utils = __esm({
  "../../../../../setup-pnpm/store/v11/links/@/wsl-utils/0.3.1/2151c75b44d6b59cda7a26a65ab35120fdd6d4df926f882511d8d97b7d3a8400/node_modules/wsl-utils/index.js"() {
    init_is_wsl();
    init_powershell_utils();
    init_utilities2();
    init_is_wsl();
    execFile2 = promisify4(childProcess2.execFile);
    wslDrivesMountPoint = /* @__PURE__ */ (() => {
      const defaultMountPoint = "/mnt/";
      let mountPoint;
      return async function() {
        if (mountPoint) {
          return mountPoint;
        }
        const configFilePath = "/etc/wsl.conf";
        let isConfigFileExists = false;
        try {
          await fs18.access(configFilePath, fsConstants.F_OK);
          isConfigFileExists = true;
        } catch {
        }
        if (!isConfigFileExists) {
          return defaultMountPoint;
        }
        const configContent = await fs18.readFile(configFilePath, { encoding: "utf8" });
        const parsedMountPoint = parseMountPointFromConfig(configContent);
        if (parsedMountPoint === void 0) {
          return defaultMountPoint;
        }
        mountPoint = parsedMountPoint;
        mountPoint = mountPoint.endsWith("/") ? mountPoint : `${mountPoint}/`;
        return mountPoint;
      };
    })();
    powerShellPathFromWsl = async () => {
      const mountPoint = await wslDrivesMountPoint();
      return `${mountPoint}c/Windows/System32/WindowsPowerShell/v1.0/powershell.exe`;
    };
    powerShellPath2 = is_wsl_default ? powerShellPathFromWsl : powerShellPath;
    canAccessPowerShell = async () => {
      canAccessPowerShellPromise ??= (async () => {
        try {
          const psPath = await powerShellPath2();
          await fs18.access(psPath, fsConstants.X_OK);
          return true;
        } catch {
          return false;
        }
      })();
      return canAccessPowerShellPromise;
    };
    wslDefaultBrowser = async () => {
      const psPath = await powerShellPath2();
      const command = String.raw`(Get-ItemProperty -Path "HKCU:\Software\Microsoft\Windows\Shell\Associations\UrlAssociations\http\UserChoice").ProgId`;
      const { stdout } = await executePowerShell(command, { powerShellPath: psPath });
      return stdout.trim();
    };
    convertWslPathToWindows = async (path240) => {
      if (/^[a-z]+:\/\//i.test(path240)) {
        return path240;
      }
      try {
        const { stdout } = await execFile2("wslpath", ["-aw", path240], { encoding: "utf8" });
        return stdout.trim();
      } catch {
        return path240;
      }
    };
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/define-lazy-prop/3.0.0/9314b7a6965ab89330b4b125b39609f134c3b4aa0ad5214a0fbd374d5321a3d8/node_modules/define-lazy-prop/index.js
function defineLazyProperty(object, propertyName, valueGetter) {
  const define2 = (value) => Object.defineProperty(object, propertyName, { value, enumerable: true, writable: true });
  Object.defineProperty(object, propertyName, {
    configurable: true,
    enumerable: true,
    get() {
      const result2 = valueGetter();
      define2(result2);
      return result2;
    },
    set(value) {
      define2(value);
    }
  });
  return object;
}
var init_define_lazy_prop = __esm({
  "../../../../../setup-pnpm/store/v11/links/@/define-lazy-prop/3.0.0/9314b7a6965ab89330b4b125b39609f134c3b4aa0ad5214a0fbd374d5321a3d8/node_modules/define-lazy-prop/index.js"() {
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/default-browser-id/5.0.1/c42deb055771f4ad87c91fdc98ad947ab7aaaba4c2be61697586e3c668fcbd60/node_modules/default-browser-id/index.js
import { promisify as promisify5 } from "node:util";
import process5 from "node:process";
import { execFile as execFile3 } from "node:child_process";
async function defaultBrowserId() {
  if (process5.platform !== "darwin") {
    throw new Error("macOS only");
  }
  const { stdout } = await execFileAsync("defaults", ["read", "com.apple.LaunchServices/com.apple.launchservices.secure", "LSHandlers"]);
  const match = /LSHandlerRoleAll = "(?!-)(?<id>[^"]+?)";\s+?LSHandlerURLScheme = (?:http|https);/.exec(stdout);
  const browserId = match?.groups.id ?? "com.apple.Safari";
  if (browserId === "com.apple.safari") {
    return "com.apple.Safari";
  }
  return browserId;
}
var execFileAsync;
var init_default_browser_id = __esm({
  "../../../../../setup-pnpm/store/v11/links/@/default-browser-id/5.0.1/c42deb055771f4ad87c91fdc98ad947ab7aaaba4c2be61697586e3c668fcbd60/node_modules/default-browser-id/index.js"() {
    execFileAsync = promisify5(execFile3);
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/run-applescript/7.1.0/2a39032fc707698e2bf13aed22a1c3653777594cd66d81675531e9a6932e15f2/node_modules/run-applescript/index.js
import process6 from "node:process";
import { promisify as promisify6 } from "node:util";
import { execFile as execFile4, execFileSync } from "node:child_process";
async function runAppleScript(script, { humanReadableOutput = true, signal } = {}) {
  if (process6.platform !== "darwin") {
    throw new Error("macOS only");
  }
  const outputArguments = humanReadableOutput ? [] : ["-ss"];
  const execOptions = {};
  if (signal) {
    execOptions.signal = signal;
  }
  const { stdout } = await execFileAsync2("osascript", ["-e", script, outputArguments], execOptions);
  return stdout.trim();
}
var execFileAsync2;
var init_run_applescript = __esm({
  "../../../../../setup-pnpm/store/v11/links/@/run-applescript/7.1.0/2a39032fc707698e2bf13aed22a1c3653777594cd66d81675531e9a6932e15f2/node_modules/run-applescript/index.js"() {
    execFileAsync2 = promisify6(execFile4);
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/bundle-name/4.1.0/62cc6c96ff6184628354cd76076af10569493729ffaae52ab011710135159918/node_modules/bundle-name/index.js
async function bundleName(bundleId) {
  return runAppleScript(`tell application "Finder" to set app_path to application file id "${bundleId}" as string
tell application "System Events" to get value of property list item "CFBundleName" of property list file (app_path & ":Contents:Info.plist")`);
}
var init_bundle_name = __esm({
  "../../../../../setup-pnpm/store/v11/links/@/bundle-name/4.1.0/62cc6c96ff6184628354cd76076af10569493729ffaae52ab011710135159918/node_modules/bundle-name/index.js"() {
    init_run_applescript();
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/default-browser/5.5.0/e24d216aa36137a57c3d95773f4f13d5aa523e387c7921d4a38f711df7ff706c/node_modules/default-browser/windows.js
import { promisify as promisify7 } from "node:util";
import { execFile as execFile5 } from "node:child_process";
async function defaultBrowser(_execFileAsync = execFileAsync3) {
  const { stdout } = await _execFileAsync("reg", [
    "QUERY",
    " HKEY_CURRENT_USER\\Software\\Microsoft\\Windows\\Shell\\Associations\\UrlAssociations\\http\\UserChoice",
    "/v",
    "ProgId"
  ]);
  const match = /ProgId\s*REG_SZ\s*(?<id>\S+)/.exec(stdout);
  if (!match) {
    throw new UnknownBrowserError(`Cannot find Windows browser in stdout: ${JSON.stringify(stdout)}`);
  }
  const { id } = match.groups;
  const dotIndex = id.lastIndexOf(".");
  const hyphenIndex = id.lastIndexOf("-");
  const baseIdByDot = dotIndex === -1 ? void 0 : id.slice(0, dotIndex);
  const baseIdByHyphen = hyphenIndex === -1 ? void 0 : id.slice(0, hyphenIndex);
  return windowsBrowserProgIds[id] ?? windowsBrowserProgIds[baseIdByDot] ?? windowsBrowserProgIds[baseIdByHyphen] ?? { name: id, id };
}
var execFileAsync3, windowsBrowserProgIds, _windowsBrowserProgIdMap, UnknownBrowserError;
var init_windows = __esm({
  "../../../../../setup-pnpm/store/v11/links/@/default-browser/5.5.0/e24d216aa36137a57c3d95773f4f13d5aa523e387c7921d4a38f711df7ff706c/node_modules/default-browser/windows.js"() {
    execFileAsync3 = promisify7(execFile5);
    windowsBrowserProgIds = {
      MSEdgeHTM: { name: "Edge", id: "com.microsoft.edge" },
      // The missing `L` is correct.
      MSEdgeBHTML: { name: "Edge Beta", id: "com.microsoft.edge.beta" },
      MSEdgeDHTML: { name: "Edge Dev", id: "com.microsoft.edge.dev" },
      AppXq0fevzme2pys62n3e0fbqa7peapykr8v: { name: "Edge", id: "com.microsoft.edge.old" },
      ChromeHTML: { name: "Chrome", id: "com.google.chrome" },
      ChromeBHTML: { name: "Chrome Beta", id: "com.google.chrome.beta" },
      ChromeDHTML: { name: "Chrome Dev", id: "com.google.chrome.dev" },
      ChromiumHTM: { name: "Chromium", id: "org.chromium.Chromium" },
      BraveHTML: { name: "Brave", id: "com.brave.Browser" },
      BraveBHTML: { name: "Brave Beta", id: "com.brave.Browser.beta" },
      BraveDHTML: { name: "Brave Dev", id: "com.brave.Browser.dev" },
      BraveSSHTM: { name: "Brave Nightly", id: "com.brave.Browser.nightly" },
      FirefoxURL: { name: "Firefox", id: "org.mozilla.firefox" },
      OperaStable: { name: "Opera", id: "com.operasoftware.Opera" },
      VivaldiHTM: { name: "Vivaldi", id: "com.vivaldi.Vivaldi" },
      "IE.HTTP": { name: "Internet Explorer", id: "com.microsoft.ie" }
    };
    _windowsBrowserProgIdMap = new Map(Object.entries(windowsBrowserProgIds));
    UnknownBrowserError = class extends Error {
    };
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/default-browser/5.5.0/e24d216aa36137a57c3d95773f4f13d5aa523e387c7921d4a38f711df7ff706c/node_modules/default-browser/index.js
import { promisify as promisify8 } from "node:util";
import process7 from "node:process";
import { execFile as execFile6 } from "node:child_process";
async function defaultBrowser2() {
  if (process7.platform === "darwin") {
    const id = await defaultBrowserId();
    const name = await bundleName(id);
    return { name, id };
  }
  if (process7.platform === "linux") {
    const { stdout } = await execFileAsync4("xdg-mime", ["query", "default", "x-scheme-handler/http"]);
    const id = stdout.trim();
    const name = titleize(id.replace(/.desktop$/, "").replace("-", " "));
    return { name, id };
  }
  if (process7.platform === "win32") {
    return defaultBrowser();
  }
  throw new Error("Only macOS, Linux, and Windows are supported");
}
var execFileAsync4, titleize;
var init_default_browser = __esm({
  "../../../../../setup-pnpm/store/v11/links/@/default-browser/5.5.0/e24d216aa36137a57c3d95773f4f13d5aa523e387c7921d4a38f711df7ff706c/node_modules/default-browser/index.js"() {
    init_default_browser_id();
    init_bundle_name();
    init_windows();
    init_windows();
    execFileAsync4 = promisify8(execFile6);
    titleize = (string) => string.toLowerCase().replaceAll(/(?:^|\s|-)\S/g, (x3) => x3.toUpperCase());
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/is-in-ssh/1.0.0/32111e6f089a677bf661143ae3c2c7b88d172ce00004319f0a2680296ec8960c/node_modules/is-in-ssh/index.js
import process8 from "node:process";
var isInSsh, is_in_ssh_default;
var init_is_in_ssh = __esm({
  "../../../../../setup-pnpm/store/v11/links/@/is-in-ssh/1.0.0/32111e6f089a677bf661143ae3c2c7b88d172ce00004319f0a2680296ec8960c/node_modules/is-in-ssh/index.js"() {
    isInSsh = Boolean(process8.env.SSH_CONNECTION || process8.env.SSH_CLIENT || process8.env.SSH_TTY);
    is_in_ssh_default = isInSsh;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/open/11.0.0/84a8677388d1eccf5149fbf33b044a8b45e60c65099aafe5277d56c9cae9bfaf/node_modules/open/index.js
import process9 from "node:process";
import path24 from "node:path";
import { fileURLToPath as fileURLToPath2 } from "node:url";
import childProcess3 from "node:child_process";
import fs19, { constants as fsConstants2 } from "node:fs/promises";
function detectArchBinary(binary2) {
  if (typeof binary2 === "string" || Array.isArray(binary2)) {
    return binary2;
  }
  const { [arch]: archBinary } = binary2;
  if (!archBinary) {
    throw new Error(`${arch} is not supported`);
  }
  return archBinary;
}
function detectPlatformBinary({ [platform]: platformBinary }, { wsl } = {}) {
  if (wsl && is_wsl_default) {
    return detectArchBinary(wsl);
  }
  if (!platformBinary) {
    throw new Error(`${platform} is not supported`);
  }
  return detectArchBinary(platformBinary);
}
var fallbackAttemptSymbol, __dirname2, localXdgOpenPath, platform, arch, tryEachApp, baseOpen, open, apps, open_default;
var init_open = __esm({
  "../../../../../setup-pnpm/store/v11/links/@/open/11.0.0/84a8677388d1eccf5149fbf33b044a8b45e60c65099aafe5277d56c9cae9bfaf/node_modules/open/index.js"() {
    init_wsl_utils();
    init_powershell_utils();
    init_define_lazy_prop();
    init_default_browser();
    init_is_inside_container();
    init_is_in_ssh();
    fallbackAttemptSymbol = /* @__PURE__ */ Symbol("fallbackAttempt");
    __dirname2 = import.meta.url ? path24.dirname(fileURLToPath2(import.meta.url)) : "";
    localXdgOpenPath = path24.join(__dirname2, "xdg-open");
    ({ platform, arch } = process9);
    tryEachApp = async (apps2, opener) => {
      if (apps2.length === 0) {
        return;
      }
      const errors2 = [];
      for (const app of apps2) {
        try {
          return await opener(app);
        } catch (error) {
          errors2.push(error);
        }
      }
      throw new AggregateError(errors2, "Failed to open in all supported apps");
    };
    baseOpen = async (options) => {
      options = {
        wait: false,
        background: false,
        newInstance: false,
        allowNonzeroExitCode: false,
        ...options
      };
      const isFallbackAttempt = options[fallbackAttemptSymbol] === true;
      delete options[fallbackAttemptSymbol];
      if (Array.isArray(options.app)) {
        return tryEachApp(options.app, (singleApp) => baseOpen({
          ...options,
          app: singleApp,
          [fallbackAttemptSymbol]: true
        }));
      }
      let { name: app, arguments: appArguments = [] } = options.app ?? {};
      appArguments = [...appArguments];
      if (Array.isArray(app)) {
        return tryEachApp(app, (appName) => baseOpen({
          ...options,
          app: {
            name: appName,
            arguments: appArguments
          },
          [fallbackAttemptSymbol]: true
        }));
      }
      if (app === "browser" || app === "browserPrivate") {
        const ids = {
          "com.google.chrome": "chrome",
          "google-chrome.desktop": "chrome",
          "com.brave.browser": "brave",
          "org.mozilla.firefox": "firefox",
          "firefox.desktop": "firefox",
          "com.microsoft.msedge": "edge",
          "com.microsoft.edge": "edge",
          "com.microsoft.edgemac": "edge",
          "microsoft-edge.desktop": "edge",
          "com.apple.safari": "safari"
        };
        const flags = {
          chrome: "--incognito",
          brave: "--incognito",
          firefox: "--private-window",
          edge: "--inPrivate"
          // Safari doesn't support private mode via command line
        };
        let browser;
        if (is_wsl_default) {
          const progId = await wslDefaultBrowser();
          const browserInfo = _windowsBrowserProgIdMap.get(progId);
          browser = browserInfo ?? {};
        } else {
          browser = await defaultBrowser2();
        }
        if (browser.id in ids) {
          const browserName = ids[browser.id.toLowerCase()];
          if (app === "browserPrivate") {
            if (browserName === "safari") {
              throw new Error("Safari doesn't support opening in private mode via command line");
            }
            appArguments.push(flags[browserName]);
          }
          return baseOpen({
            ...options,
            app: {
              name: apps[browserName],
              arguments: appArguments
            }
          });
        }
        throw new Error(`${browser.name} is not supported as a default browser`);
      }
      let command;
      const cliArguments = [];
      const childProcessOptions = {};
      let shouldUseWindowsInWsl = false;
      if (is_wsl_default && !isInsideContainer() && !is_in_ssh_default && !app) {
        shouldUseWindowsInWsl = await canAccessPowerShell();
      }
      if (platform === "darwin") {
        command = "open";
        if (options.wait) {
          cliArguments.push("--wait-apps");
        }
        if (options.background) {
          cliArguments.push("--background");
        }
        if (options.newInstance) {
          cliArguments.push("--new");
        }
        if (app) {
          cliArguments.push("-a", app);
        }
      } else if (platform === "win32" || shouldUseWindowsInWsl) {
        command = await powerShellPath2();
        cliArguments.push(...executePowerShell.argumentsPrefix);
        if (!is_wsl_default) {
          childProcessOptions.windowsVerbatimArguments = true;
        }
        if (is_wsl_default && options.target) {
          options.target = await convertWslPathToWindows(options.target);
        }
        const encodedArguments = ["$ProgressPreference = 'SilentlyContinue';", "Start"];
        if (options.wait) {
          encodedArguments.push("-Wait");
        }
        if (app) {
          encodedArguments.push(executePowerShell.escapeArgument(app));
          if (options.target) {
            appArguments.push(options.target);
          }
        } else if (options.target) {
          encodedArguments.push(executePowerShell.escapeArgument(options.target));
        }
        if (appArguments.length > 0) {
          appArguments = appArguments.map((argument) => executePowerShell.escapeArgument(argument));
          encodedArguments.push("-ArgumentList", appArguments.join(","));
        }
        options.target = executePowerShell.encodeCommand(encodedArguments.join(" "));
        if (!options.wait) {
          childProcessOptions.stdio = "ignore";
        }
      } else {
        if (app) {
          command = app;
        } else {
          const isBundled = !__dirname2 || __dirname2 === "/";
          let exeLocalXdgOpen = false;
          try {
            await fs19.access(localXdgOpenPath, fsConstants2.X_OK);
            exeLocalXdgOpen = true;
          } catch {
          }
          const useSystemXdgOpen = process9.versions.electron ?? (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;
        }
      }
      if (platform === "darwin" && appArguments.length > 0) {
        cliArguments.push("--args", ...appArguments);
      }
      if (options.target) {
        cliArguments.push(options.target);
      }
      const subprocess = childProcess3.spawn(command, cliArguments, childProcessOptions);
      if (options.wait) {
        return new Promise((resolve4, reject3) => {
          subprocess.once("error", reject3);
          subprocess.once("close", (exitCode) => {
            if (!options.allowNonzeroExitCode && exitCode !== 0) {
              reject3(new Error(`Exited with code ${exitCode}`));
              return;
            }
            resolve4(subprocess);
          });
        });
      }
      if (isFallbackAttempt) {
        return new Promise((resolve4, reject3) => {
          subprocess.once("error", reject3);
          subprocess.once("spawn", () => {
            subprocess.once("close", (exitCode) => {
              subprocess.off("error", reject3);
              if (exitCode !== 0) {
                reject3(new Error(`Exited with code ${exitCode}`));
                return;
              }
              subprocess.unref();
              resolve4(subprocess);
            });
          });
        });
      }
      subprocess.unref();
      return new Promise((resolve4, reject3) => {
        subprocess.once("error", reject3);
        subprocess.once("spawn", () => {
          subprocess.off("error", reject3);
          resolve4(subprocess);
        });
      });
    };
    open = (target2, options) => {
      if (typeof target2 !== "string") {
        throw new TypeError("Expected a `target`");
      }
      return baseOpen({
        ...options,
        target: target2
      });
    };
    apps = {
      browser: "browser",
      browserPrivate: "browserPrivate"
    };
    defineLazyProperty(apps, "chrome", () => detectPlatformBinary({
      darwin: "google chrome",
      win32: "chrome",
      // `chromium-browser` is the older deb package name used by Ubuntu/Debian before snap.
      linux: ["google-chrome", "google-chrome-stable", "chromium", "chromium-browser"]
    }, {
      wsl: {
        ia32: "/mnt/c/Program Files (x86)/Google/Chrome/Application/chrome.exe",
        x64: ["/mnt/c/Program Files/Google/Chrome/Application/chrome.exe", "/mnt/c/Program Files (x86)/Google/Chrome/Application/chrome.exe"]
      }
    }));
    defineLazyProperty(apps, "brave", () => detectPlatformBinary({
      darwin: "brave browser",
      win32: "brave",
      linux: ["brave-browser", "brave"]
    }, {
      wsl: {
        ia32: "/mnt/c/Program Files (x86)/BraveSoftware/Brave-Browser/Application/brave.exe",
        x64: ["/mnt/c/Program Files/BraveSoftware/Brave-Browser/Application/brave.exe", "/mnt/c/Program Files (x86)/BraveSoftware/Brave-Browser/Application/brave.exe"]
      }
    }));
    defineLazyProperty(apps, "firefox", () => detectPlatformBinary({
      darwin: "firefox",
      win32: String.raw`C:\Program Files\Mozilla Firefox\firefox.exe`,
      linux: "firefox"
    }, {
      wsl: "/mnt/c/Program Files/Mozilla Firefox/firefox.exe"
    }));
    defineLazyProperty(apps, "edge", () => detectPlatformBinary({
      darwin: "microsoft edge",
      win32: "msedge",
      linux: ["microsoft-edge", "microsoft-edge-dev"]
    }, {
      wsl: "/mnt/c/Program Files (x86)/Microsoft/Edge/Application/msedge.exe"
    }));
    defineLazyProperty(apps, "safari", () => detectPlatformBinary({
      darwin: "Safari"
    }));
    open_default = open;
  }
});

// ../network/web-auth/lib/promptBrowserOpen.js
async function promptBrowserOpen({ authUrl, context, pollPromise }) {
  const { createReadlineInterface, globalInfo: globalInfo3, globalWarn: globalWarn3, process: process25 } = context;
  if (!createReadlineInterface || !process25.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 (err2) {
    globalWarn3(`Could not set up keyboard listener: ${String(err2)}`);
    return pollPromise;
  }
  globalInfo3("Press ENTER to open the URL in your browser.");
  rl.once("line", () => {
    const handleOpenError = (err2) => {
      globalWarn3(`Could not open browser automatically: ${String(err2)}`);
      globalInfo3("Please open the URL shown above manually.");
    };
    try {
      open_default(canonicalUrl).catch(handleOpenError);
    } catch (err2) {
      handleOpenError(err2);
    }
  });
  try {
    return await pollPromise;
  } finally {
    rl.close();
  }
}
var init_promptBrowserOpen = __esm({
  "../network/web-auth/lib/promptBrowserOpen.js"() {
    "use strict";
    init_open();
  }
});

// ../network/web-auth/lib/withOtpHandling.js
async function withOtpHandling({ context, fetchOptions, operation: operation5 }) {
  const { enquirer, globalInfo: globalInfo3, globalWarn: globalWarn3, process: process25 } = context;
  try {
    return await operation5();
  } catch (error) {
    if (!isOtpError(error))
      throw error;
    if (!process25.stdin.isTTY || !process25.stdout.isTTY) {
      throw new OtpNonInteractiveError(error.body);
    }
    let otp;
    const authUrl = canonicalHttpUrl(error.body?.authUrl);
    const doneUrl = canonicalHttpUrl(error.body?.doneUrl);
    if (authUrl != null && doneUrl != null) {
      globalInfo3(formatAuthUrlMessage(authUrl, globalWarn3));
      const pollPromise = pollForWebAuthToken({
        context,
        doneUrl,
        fetchOptions
      });
      otp = await promptBrowserOpen({
        authUrl,
        context,
        pollPromise
      });
    } else {
      let otpValue;
      try {
        otpValue = await enquirer.input({
          message: "This operation requires a one-time password.\nEnter OTP:"
        });
      } catch (err2) {
        if (err2 instanceof Error && err2.name === "ExitPromptError") {
          throw error;
        }
        throw err2;
      }
      otp = otpValue || void 0;
    }
    if (otp != null) {
      try {
        return await operation5(otp);
      } catch (retryError) {
        if (isOtpError(retryError)) {
          throw new OtpSecondChallengeError();
        }
        throw retryError;
      }
    }
    throw error;
  }
}
function canonicalHttpUrl(value) {
  if (typeof value !== "string")
    return void 0;
  try {
    const url7 = new URL(value);
    if (url7.protocol !== "http:" && url7.protocol !== "https:")
      return void 0;
    url7.username = "";
    url7.password = "";
    return url7.href;
  } catch {
    return void 0;
  }
}
var isOtpError, SyntheticOtpError, OtpNonInteractiveError, OtpSecondChallengeError;
var init_withOtpHandling = __esm({
  "../network/web-auth/lib/withOtpHandling.js"() {
    "use strict";
    init_lib2();
    init_formatAuthUrlMessage();
    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(globalWarn3, 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 {
            globalWarn3(`OTP error body: authUrl has type ${typeof body.authUrl}, expected string`);
          }
        }
        if ("doneUrl" in body) {
          if (typeof body.doneUrl === "string") {
            doneUrl = body.doneUrl;
          } else {
            globalWarn3(`OTP error body: doneUrl has type ${typeof body.doneUrl}, expected string`);
          }
        }
        return new _SyntheticOtpError({ authUrl, doneUrl });
      }
    };
    OtpNonInteractiveError = class extends PnpmError {
      authUrl;
      doneUrl;
      constructor(body) {
        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)"
        });
        const authUrl = canonicalHttpUrl(body?.authUrl);
        if (authUrl != null) {
          this.authUrl = authUrl;
        }
        const doneUrl = canonicalHttpUrl(body?.doneUrl);
        if (doneUrl != null) {
          this.doneUrl = doneUrl;
        }
      }
    };
    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_lib22 = __esm({
  "../network/web-auth/lib/index.js"() {
    "use strict";
    init_formatAuthUrlMessage();
    init_generateQrCode();
    init_pollForWebAuthToken();
    init_promptBrowserOpen();
    init_WebAuthTimeoutError();
    init_withOtpHandling();
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/pidtree/1.0.0/da62a4e02821ca314aa1ad477ab5590ed55f39683590cf4e8fed66cb03dda0a0/node_modules/pidtree/lib/bin.js
import { spawn as spawn3 } from "node:child_process";
function stripStderr(stderr) {
  if (!stderr) return;
  stderr = stderr.trim();
  const regex2 = /your \d+x\d+ screen size is bogus\. expect trouble/gi;
  stderr = stderr.replaceAll(regex2, "");
  return stderr.trim();
}
function run(cmd, args, options, done) {
  if (typeof options === "function") {
    done = options;
    options = void 0;
  }
  let executed = false;
  const child = spawn3(cmd, args, options);
  let stdout = "";
  let stderr = "";
  child.stdout.on("data", (data) => {
    stdout += data.toString();
  });
  child.stderr.on("data", (data) => {
    stderr += data.toString();
  });
  child.on("error", (error) => {
    if (executed) return;
    executed = true;
    done(error);
  });
  child.on("close", (code) => {
    if (executed) return;
    executed = true;
    stderr = stripStderr(stderr);
    if (stderr) {
      done(new Error(stderr));
      return;
    }
    done(null, stdout, code);
  });
}
var init_bin = __esm({
  "../../../../../setup-pnpm/store/v11/links/@/pidtree/1.0.0/da62a4e02821ca314aa1ad477ab5590ed55f39683590cf4e8fed66cb03dda0a0/node_modules/pidtree/lib/bin.js"() {
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/pidtree/1.0.0/da62a4e02821ca314aa1ad477ab5590ed55f39683590cf4e8fed66cb03dda0a0/node_modules/pidtree/lib/parse.js
function parse4(stdout) {
  const list2 = [];
  for (const rawLine of stdout.split(/\r*\n/)) {
    const line = rawLine.trim();
    if (!line) continue;
    const [rawPpid, rawPid] = line.split(/\s+/);
    const ppid = Number.parseInt(rawPpid, 10);
    const pid = Number.parseInt(rawPid, 10);
    if (Number.isNaN(ppid) || Number.isNaN(pid)) continue;
    list2.push([ppid, pid]);
  }
  return list2;
}
var init_parse = __esm({
  "../../../../../setup-pnpm/store/v11/links/@/pidtree/1.0.0/da62a4e02821ca314aa1ad477ab5590ed55f39683590cf4e8fed66cb03dda0a0/node_modules/pidtree/lib/parse.js"() {
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/pidtree/1.0.0/da62a4e02821ca314aa1ad477ab5590ed55f39683590cf4e8fed66cb03dda0a0/node_modules/pidtree/lib/ps.js
function ps(callback2, run2 = run) {
  run2("ps", ["-A", "-o", "ppid,pid"], (error, stdout, code) => {
    if (error) {
      callback2(error);
      return;
    }
    if (code !== 0) {
      callback2(new Error("pidtree ps command exited with code " + code));
      return;
    }
    try {
      callback2(null, parse4(stdout));
    } catch (error2) {
      callback2(error2);
    }
  });
}
var init_ps = __esm({
  "../../../../../setup-pnpm/store/v11/links/@/pidtree/1.0.0/da62a4e02821ca314aa1ad477ab5590ed55f39683590cf4e8fed66cb03dda0a0/node_modules/pidtree/lib/ps.js"() {
    init_bin();
    init_parse();
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/pidtree/1.0.0/da62a4e02821ca314aa1ad477ab5590ed55f39683590cf4e8fed66cb03dda0a0/node_modules/pidtree/lib/wmic.js
function wmic(callback2, run2 = run) {
  const args = ["PROCESS", "get", "ParentProcessId,ProcessId"];
  const options = { windowsHide: true, windowsVerbatimArguments: true };
  run2("wmic", args, options, (error, stdout, code) => {
    if (error) {
      callback2(error);
      return;
    }
    if (code !== 0) {
      callback2(new Error("pidtree wmic command exited with code " + code));
      return;
    }
    try {
      callback2(null, parse4(stdout));
    } catch (error2) {
      callback2(error2);
    }
  });
}
var init_wmic = __esm({
  "../../../../../setup-pnpm/store/v11/links/@/pidtree/1.0.0/da62a4e02821ca314aa1ad477ab5590ed55f39683590cf4e8fed66cb03dda0a0/node_modules/pidtree/lib/wmic.js"() {
    init_bin();
    init_parse();
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/pidtree/1.0.0/da62a4e02821ca314aa1ad477ab5590ed55f39683590cf4e8fed66cb03dda0a0/node_modules/pidtree/lib/powershell.js
function powershell(callback2, run2 = run) {
  const args = ["-NoProfile", "-NonInteractive", "-EncodedCommand", ENCODED];
  const options = { windowsHide: true };
  run2("powershell", args, options, (error, stdout, code) => {
    if (error) {
      callback2(error);
      return;
    }
    if (code !== 0) {
      callback2(
        new Error("pidtree powershell command exited with code " + code)
      );
      return;
    }
    try {
      callback2(null, parse4(stdout));
    } catch (error2) {
      callback2(error2);
    }
  });
}
var COMMAND, ENCODED;
var init_powershell = __esm({
  "../../../../../setup-pnpm/store/v11/links/@/pidtree/1.0.0/da62a4e02821ca314aa1ad477ab5590ed55f39683590cf4e8fed66cb03dda0a0/node_modules/pidtree/lib/powershell.js"() {
    init_bin();
    init_parse();
    COMMAND = `$ProgressPreference = 'SilentlyContinue'; Get-CimInstance -ClassName Win32_Process | ForEach-Object { "$($_.ParentProcessId) $($_.ProcessId)" }`;
    ENCODED = Buffer.from(COMMAND, "utf16le").toString("base64");
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/pidtree/1.0.0/da62a4e02821ca314aa1ad477ab5590ed55f39683590cf4e8fed66cb03dda0a0/node_modules/pidtree/lib/get.js
import os4 from "node:os";
function getWindows(callback2, wmicFn = wmic, powershellFn = powershell) {
  wmicFn((error, list2) => {
    if (error && error.code === "ENOENT") {
      powershellFn(callback2);
      return;
    }
    callback2(error, list2);
  });
}
function get(callback2) {
  if (method === void 0) {
    callback2(
      new Error(
        os4.platform() + " is not supported yet, please open an issue (https://github.com/simonepri/pidtree)"
      )
    );
    return;
  }
  if (method === "win") {
    getWindows(callback2);
    return;
  }
  ps(callback2);
}
var platformToMethod, platform2, method;
var init_get = __esm({
  "../../../../../setup-pnpm/store/v11/links/@/pidtree/1.0.0/da62a4e02821ca314aa1ad477ab5590ed55f39683590cf4e8fed66cb03dda0a0/node_modules/pidtree/lib/get.js"() {
    init_ps();
    init_wmic();
    init_powershell();
    platformToMethod = {
      darwin: "ps",
      sunos: "ps",
      freebsd: "ps",
      netbsd: "ps",
      win: "win",
      linux: "ps",
      aix: "ps"
    };
    platform2 = os4.platform();
    if (platform2.startsWith("win")) {
      platform2 = "win";
    }
    method = platformToMethod[platform2];
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/pidtree/1.0.0/da62a4e02821ca314aa1ad477ab5590ed55f39683590cf4e8fed66cb03dda0a0/node_modules/pidtree/lib/pidtree.js
function pidtreeCallback(pid, options, callback2) {
  if (typeof options === "function") {
    callback2 = options;
    options = {};
  }
  if (typeof options !== "object" || options === null) {
    options = {};
  }
  pid = Number.parseInt(pid, 10);
  if (Number.isNaN(pid) || pid < -1) {
    callback2(new TypeError("The pid provided is invalid"));
    return;
  }
  get((error, list2) => {
    if (error) {
      callback2(error);
      return;
    }
    if (pid === -1) {
      const all = list2.map(
        (entry) => options.advanced ? { ppid: entry[0], pid: entry[1] } : entry[1]
      );
      callback2(null, all);
      return;
    }
    let root;
    for (const entry of list2) {
      if (entry[1] === pid) {
        root = options.advanced ? { ppid: entry[0], pid } : pid;
        break;
      }
      if (entry[0] === pid) {
        root = options.advanced ? { pid } : pid;
      }
    }
    if (root === void 0) {
      callback2(new Error("No matching pid found"));
      return;
    }
    const tree = {};
    for (const [parentPid, childPid] of list2) {
      if (tree[parentPid]) {
        tree[parentPid].push(childPid);
      } else {
        tree[parentPid] = [childPid];
      }
    }
    const pids = [root];
    let index2 = 0;
    while (index2 < pids.length) {
      const current = options.advanced ? pids[index2].pid : pids[index2];
      index2++;
      const children = tree[current];
      if (!children) continue;
      for (const childPid of children) {
        pids.push(options.advanced ? { ppid: current, pid: childPid } : childPid);
      }
      delete tree[current];
    }
    if (!options.root) {
      pids.shift();
    }
    callback2(null, pids);
  });
}
var init_pidtree = __esm({
  "../../../../../setup-pnpm/store/v11/links/@/pidtree/1.0.0/da62a4e02821ca314aa1ad477ab5590ed55f39683590cf4e8fed66cb03dda0a0/node_modules/pidtree/lib/pidtree.js"() {
    init_get();
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/pidtree/1.0.0/da62a4e02821ca314aa1ad477ab5590ed55f39683590cf4e8fed66cb03dda0a0/node_modules/pidtree/index.js
import { promisify as promisify9 } from "node:util";
function pidtree(pid, options, callback2) {
  if (typeof options === "function") {
    callback2 = options;
    options = void 0;
  }
  if (typeof callback2 === "function") {
    pidtreeCallback(pid, options, callback2);
    return;
  }
  return pidtreeAsync(pid, options);
}
var pidtreeAsync, pidtree_default;
var init_pidtree2 = __esm({
  "../../../../../setup-pnpm/store/v11/links/@/pidtree/1.0.0/da62a4e02821ca314aa1ad477ab5590ed55f39683590cf4e8fed66cb03dda0a0/node_modules/pidtree/index.js"() {
    init_pidtree();
    pidtreeAsync = promisify9(pidtreeCallback);
    pidtree_default = pidtree;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@pnpm/config.nerf-dart/2.0.1/64879d68d58adff46a47a9f7484ba2b88b89cdc59a4e88c1fdd20eb255b82903/node_modules/@pnpm/config.nerf-dart/dist/nerf-dart.js
var require_nerf_dart = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@pnpm/config.nerf-dart/2.0.1/64879d68d58adff46a47a9f7484ba2b88b89cdc59a4e88c1fdd20eb255b82903/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 nerfDart4(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 = nerfDart4;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@pnpm/config.nerf-dart/2.0.1/64879d68d58adff46a47a9f7484ba2b88b89cdc59a4e88c1fdd20eb255b82903/node_modules/@pnpm/config.nerf-dart/dist/index.js
var require_dist = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@pnpm/config.nerf-dart/2.0.1/64879d68d58adff46a47a9f7484ba2b88b89cdc59a4e88c1fdd20eb255b82903/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;
    } });
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/lru-cache/11.5.2/3c8a5c5c2cceba3fecd9e8d125966b3ed0ce73d9dab68b7445d94e4705306a7a/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, R, U, M, k, H, T, j, O, x, I;
var init_index_min = __esm({
  "../../../../../setup-pnpm/store/v11/links/@/lru-cache/11.5.2/3c8a5c5c2cceba3fecd9e8d125966b3ed0ce73d9dab68b7445d94e4705306a7a/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;
    R = () => S.hasSubscribers || W.hasSubscribers;
    U = /* @__PURE__ */ new Set();
    M = typeof process == "object" && process ? process : {};
    k = (d3, e, t2, i4) => {
      typeof M.emitWarning == "function" ? M.emitWarning(d3, e, t2, i4) : console.error(`[${t2}] ${e}: ${d3}`);
    };
    H = (d3) => !U.has(d3);
    T = (d3) => !!d3 && d3 === Math.floor(d3) && d3 > 0 && isFinite(d3);
    j = (d3) => T(d3) ? d3 <= Math.pow(2, 8) ? Uint8Array : d3 <= Math.pow(2, 16) ? Uint16Array : d3 <= Math.pow(2, 32) ? Uint32Array : d3 <= Number.MAX_SAFE_INTEGER ? O : null : null;
    O = class extends Array {
      constructor(e) {
        super(e), this.fill(0);
      }
    };
    x = class d {
      heap;
      length;
      static #o = false;
      static create(e) {
        let t2 = j(e);
        if (!t2) return [];
        d.#o = true;
        let i4 = new d(e, t2);
        return d.#o = false, i4;
      }
      constructor(e, t2) {
        if (!d.#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 d2 {
      #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;
      #D;
      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, i4, s, n2) => e.#P(t2, i4, 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: i4, ttlResolution: s = 1, ttlAutopurge: n2, updateAgeOnGet: o2, updateAgeOnHas: l, allowStale: h2, dispose: r, onInsert: c3, disposeAfter: m, noDisposeOnSet: _, noUpdateTTL: u2, maxSize: g = 0, maxEntrySize: f = 0, sizeCalculation: y, fetchMethod: a2, memoMethod: w, noDeleteOnFetchRejection: F, noDeleteOnStaleGet: b, allowStaleOnFetchRejection: p, allowStaleOnFetchAbort: A2, 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 = y, 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, a2 !== void 0 && typeof a2 != "function") throw new TypeError("fetchMethod must be a function if specified");
        if (this.#M = a2, this.#U = !!a2, 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 = x.create(t2), this.#n = 0, this.#b = 0, typeof r == "function" && (this.#S = r), typeof c3 == "function" && (this.#O = c3), typeof m == "function" ? (this.#w = m, this.#r = []) : (this.#w = void 0, this.#r = void 0), this.#T = !!this.#S, this.#D = !!this.#O, this.#f = !!this.#w, this.noDisposeOnSet = !!_, this.noUpdateTTL = !!u2, this.noDeleteOnFetchRejection = !!F, this.allowStaleOnFetchRejection = !!p, this.allowStaleOnFetchAbort = !!A2, 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 = !!h2, this.noDeleteOnStaleGet = !!b, this.updateAgeOnGet = !!o2, this.updateAgeOnHas = !!l, this.ttlResolution = T(s) || s === 0 ? s : 1, this.ttlAutopurge = !!n2, this.ttl = i4 || 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 D3 = "LRU_CACHE_UNBOUNDED";
          H(D3) && (U.add(D3), k("TTL caching without ttlAutopurge, max, or maxSize can result in unbounded memory consumption.", "UnboundedCacheWarning", D3, d2));
        }
      }
      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 i4 = this.ttlAutopurge ? Array.from({ length: this.#o }) : void 0;
        this.#g = i4, this.#H = (h2, r, c3 = this.#m.now()) => {
          t2[h2] = r !== 0 ? c3 : 0, e[h2] = r, s(h2, r);
        }, this.#R = (h2) => {
          t2[h2] = e[h2] !== 0 ? this.#m.now() : 0, s(h2, e[h2]);
        };
        let s = this.ttlAutopurge ? (h2, r) => {
          if (i4?.[h2] && (clearTimeout(i4[h2]), i4[h2] = void 0), r && r !== 0 && i4) {
            let c3 = setTimeout(() => {
              this.#p(h2) ? (this.#E(this.#i[h2], "expire"), i4[h2] = void 0) : s(h2, l(h2));
            }, r + 1);
            c3.unref && c3.unref(), i4[h2] = c3;
          }
        } : () => {
        };
        this.#v = (h2, r) => {
          if (e[r]) {
            let c3 = e[r], m = t2[r];
            if (!c3 || !m) return;
            h2.ttl = c3, h2.start = m, h2.now = n2 || o2();
            let _ = h2.now - m;
            h2.remainingTTL = c3 - _;
          }
        };
        let n2 = 0, o2 = () => {
          let h2 = this.#m.now();
          if (this.ttlResolution > 0) {
            n2 = h2;
            let r = setTimeout(() => n2 = 0, this.ttlResolution);
            r.unref && r.unref();
          }
          return h2;
        };
        this.getRemainingTTL = (h2) => {
          let r = this.#s.get(h2);
          return r === void 0 ? 0 : l(r);
        };
        let l = (h2) => {
          let r = e[h2], c3 = t2[h2];
          if (!r || !c3) return 1 / 0;
          let m = (n2 || o2()) - c3;
          return r - m;
        };
        this.#p = (h2) => {
          let r = t2[h2], c3 = e[h2];
          return !!c3 && !!r && (n2 || o2()) - r > c3;
        };
      }
      #R = () => {
      };
      #v = () => {
      };
      #H = () => {
      };
      #p = () => false;
      #X() {
        let e = new O(this.#o);
        this.#b = 0, this.#_ = e, this.#x = (t2) => {
          this.#b -= e[t2], e[t2] = 0;
        }, this.#N = (t2, i4, s, n2) => {
          if (!T(s)) {
            if (this.#e(i4)) return this.backgroundFetchSize;
            if (n2) {
              if (typeof n2 != "function") throw new TypeError("sizeCalculation must be a function");
              if (s = n2(i4, 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, i4, s) => {
          if (e[t2] = i4, this.#c) {
            let n2 = this.#c - e[t2];
            for (; this.#b > n2; ) this.#G(true);
          }
          this.#b += e[t2], s && (s.entrySize = i4, s.totalCalculatedSize = this.#b);
        };
      }
      #x = (e) => {
      };
      #j = (e, t2, i4) => {
      };
      #N = (e, t2, i4, s) => {
        if (i4 || 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 i4 of this.#A()) {
          let s = this.#t[i4], n2 = this.#e(s) ? s.__staleWhileFetching : s;
          if (n2 !== void 0 && e(n2, this.#i[i4], this)) return this.#C(this.#i[i4], t2);
        }
      }
      forEach(e, t2 = this) {
        for (let i4 of this.#A()) {
          let s = this.#t[i4], n2 = this.#e(s) ? s.__staleWhileFetching : s;
          n2 !== void 0 && e.call(t2, n2, this.#i[i4], this);
        }
      }
      rforEach(e, t2 = this) {
        for (let i4 of this.#z()) {
          let s = this.#t[i4], n2 = this.#e(s) ? s.__staleWhileFetching : s;
          n2 !== void 0 && e.call(t2, n2, this.#i[i4], 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 i4 = this.#t[t2], s = this.#e(i4) ? i4.__staleWhileFetching : i4;
        if (s === void 0) return;
        let n2 = { value: s };
        if (this.#d && this.#F) {
          let o2 = this.#d[t2], l = this.#F[t2];
          if (o2 && l) {
            let h2 = o2 - (this.#m.now() - l);
            n2.ttl = h2, n2.start = Date.now();
          }
        }
        return this.#_ && (n2.size = this.#_[t2]), n2;
      }
      dump() {
        let e = [];
        for (let t2 of this.#A({ allowStale: true })) {
          let i4 = this.#i[t2], s = this.#t[t2], n2 = this.#e(s) ? s.__staleWhileFetching : s;
          if (n2 === void 0 || i4 === void 0) continue;
          let o2 = { value: n2 };
          if (this.#d && this.#F) {
            o2.ttl = this.#d[t2];
            let l = this.#m.now() - this.#F[t2];
            o2.start = Math.floor(Date.now() - l);
          }
          this.#_ && (o2.size = this.#_[t2]), e.unshift([i4, o2]);
        }
        return e;
      }
      load(e) {
        this.clear();
        for (let [t2, i4] of e) {
          if (i4.start) {
            let s = Date.now() - i4.start;
            i4.start = this.#m.now() - s;
          }
          this.#W(t2, i4.value, i4);
        }
      }
      set(e, t2, i4 = {}) {
        let { status: s = S.hasSubscribers ? {} : void 0 } = i4;
        i4.status = s, s && (s.op = "set", s.key = e, t2 !== void 0 && (s.value = t2), s.cache = this);
        let n2 = this.#W(e, t2, i4);
        return s && S.hasSubscribers && S.publish(s), n2;
      }
      #W(e, t2, i4, s) {
        let { ttl: n2 = this.ttl, start: o2, noDisposeOnSet: l = this.noDisposeOnSet, sizeCalculation: h2 = this.sizeCalculation, status: r } = i4, c3 = this.#e(t2);
        if (t2 === void 0) return r && (r.set = "deleted"), this.delete(e), this;
        let { noUpdateTTL: m = this.noUpdateTTL } = i4;
        r && !c3 && (r.value = t2);
        let _ = this.#N(e, t2, i4.size || 0, h2, r);
        if (this.maxEntrySize && _ > this.maxEntrySize) return this.#E(e, "set"), r && (r.set = "miss", r.maxEntrySizeExceeded = true), this;
        let u2 = this.#n === 0 ? void 0 : this.#s.get(e);
        if (u2 === void 0) u2 = this.#n === 0 ? this.#h : this.#y.length !== 0 ? this.#y.pop() : this.#n === this.#o ? this.#G(false) : this.#n, this.#i[u2] = e, this.#t[u2] = t2, this.#s.set(e, u2), this.#l[this.#h] = u2, this.#u[u2] = this.#h, this.#h = u2, this.#n++, this.#j(u2, _, r), r && (r.set = "add"), m = false, this.#D && !c3 && this.#O?.(t2, e, "add");
        else {
          this.#L(u2);
          let g = this.#t[u2];
          if (t2 !== g) {
            if (!l) 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.#x(u2), this.#j(u2, _, r), this.#t[u2] = t2, !c3) {
              let f = g && this.#e(g) ? g.__staleWhileFetching : g, y = f === void 0 ? "add" : t2 !== f ? "replace" : "update";
              r && (r.set = y, f !== void 0 && (r.oldValue = f)), this.#D && this.onInsert?.(t2, e, y);
            }
          } else c3 || (r && (r.set = "update"), this.#D && this.onInsert?.(t2, e, "update"));
        }
        if (n2 !== 0 && !this.#d && this.#k(), this.#d && (m || this.#H(u2, n2, o2), r && this.#v(r, u2)), !l && 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, i4 = this.#i[t2], s = this.#t[t2], n2 = this.#e(s);
        n2 && s.__abortController.abort(new Error("evicted"));
        let o2 = n2 ? s.__staleWhileFetching : s;
        return (this.#T || this.#f) && o2 !== void 0 && (this.#T && this.#S?.(o2, i4, "evict"), this.#f && this.#r?.push([o2, i4, "evict"])), this.#x(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(i4), this.#n--, t2;
      }
      has(e, t2 = {}) {
        let { status: i4 = S.hasSubscribers ? {} : void 0 } = t2;
        t2.status = i4, i4 && (i4.op = "has", i4.key = e, i4.cache = this);
        let s = this.#Y(e, t2);
        return S.hasSubscribers && S.publish(i4), s;
      }
      #Y(e, t2 = {}) {
        let { updateAgeOnHas: i4 = this.updateAgeOnHas, status: s } = t2, n2 = this.#s.get(e);
        if (n2 !== void 0) {
          let o2 = this.#t[n2];
          if (this.#e(o2) && o2.__staleWhileFetching === void 0) return false;
          if (this.#p(n2)) s && (s.has = "stale", this.#v(s, n2));
          else return i4 && this.#R(n2), s && (s.has = "hit", this.#v(s, n2)), true;
        } else s && (s.has = "miss");
        return false;
      }
      peek(e, t2 = {}) {
        let { status: i4 = R() ? {} : void 0 } = t2;
        i4 && (i4.op = "peek", i4.key = e, i4.cache = this), t2.status = i4;
        let s = this.#J(e, t2);
        return S.hasSubscribers && S.publish(i4), s;
      }
      #J(e, t2) {
        let { status: i4, allowStale: s = this.allowStale } = t2, n2 = this.#s.get(e);
        if (n2 === void 0 || !s && this.#p(n2)) {
          i4 && (i4.peek = n2 === void 0 ? "miss" : "stale");
          return;
        }
        let o2 = this.#t[n2], l = this.#e(o2) ? o2.__staleWhileFetching : o2;
        return i4 && (l !== void 0 ? (i4.peek = "hit", i4.value = l) : i4.peek = "miss"), l;
      }
      #P(e, t2, i4, s) {
        let n2 = t2 === void 0 ? void 0 : this.#t[t2];
        if (this.#e(n2)) return n2;
        let o2 = new AbortController(), { signal: l } = i4;
        l?.addEventListener("abort", () => o2.abort(l.reason), { signal: o2.signal });
        let h2 = { signal: o2.signal, options: i4, context: s }, r = (f, y = false) => {
          let { aborted: a2 } = o2.signal, w = i4.ignoreFetchAbort && f !== void 0, F = i4.ignoreFetchAbort || !!(i4.allowStaleOnFetchAbort && f !== void 0);
          if (i4.status && (a2 && !y ? (i4.status.fetchAborted = true, i4.status.fetchError = o2.signal.reason, w && (i4.status.fetchAbortIgnored = true)) : i4.status.fetchResolved = true), a2 && !w && !y) return m(o2.signal.reason, F);
          let b = u2, p = this.#t[t2];
          return (p === u2 || p === void 0 && w && y) && (f === void 0 ? b.__staleWhileFetching !== void 0 ? this.#t[t2] = b.__staleWhileFetching : this.#E(e, "fetch") : (i4.status && (i4.status.fetchUpdated = true), this.#W(e, f, h2.options, b))), f;
        }, c3 = (f) => (i4.status && (i4.status.fetchRejected = true, i4.status.fetchError = f), m(f, false)), m = (f, y) => {
          let { aborted: a2 } = o2.signal, w = a2 && i4.allowStaleOnFetchAbort, F = w || i4.allowStaleOnFetchRejection, b = F || i4.noDeleteOnFetchRejection, p = u2;
          if (this.#t[t2] === u2 && (!b || !y && p.__staleWhileFetching === void 0 ? this.#E(e, "fetch") : w || (this.#t[t2] = p.__staleWhileFetching)), F) return i4.status && p.__staleWhileFetching !== void 0 && (i4.status.returnedStale = true), p.__staleWhileFetching;
          if (p.__returned === p) throw f;
        }, _ = (f, y) => {
          let a2 = this.#M?.(e, n2, h2);
          o2.signal.addEventListener("abort", () => {
            (!i4.ignoreFetchAbort || i4.allowStaleOnFetchAbort) && (f(void 0), i4.allowStaleOnFetchAbort && (f = (w) => r(w, true)));
          }), a2 && a2 instanceof Promise ? a2.then((w) => f(w === void 0 ? void 0 : w), y) : a2 !== void 0 && f(a2);
        };
        i4.status && (i4.status.fetchDispatched = true);
        let u2 = new Promise(_).then(r, c3), g = Object.assign(u2, { __abortController: o2, __staleWhileFetching: n2, __returned: void 0 });
        return t2 === void 0 ? (this.#W(e, g, { ...h2.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 i4 = W.hasSubscribers, { status: s = R() ? {} : void 0 } = t2;
        t2.status = s, s && t2.context && (s.context = t2.context);
        let n2 = this.#B(e, t2);
        return s && i4 && (s.trace = true, W.tracePromise(() => n2, s).catch(() => {
        })), n2;
      }
      async #B(e, t2 = {}) {
        let { allowStale: i4 = this.allowStale, updateAgeOnGet: s = this.updateAgeOnGet, noDeleteOnStaleGet: n2 = this.noDeleteOnStaleGet, ttl: o2 = this.ttl, noDisposeOnSet: l = this.noDisposeOnSet, size: h2 = 0, sizeCalculation: r = this.sizeCalculation, noUpdateTTL: c3 = this.noUpdateTTL, noDeleteOnFetchRejection: m = this.noDeleteOnFetchRejection, allowStaleOnFetchRejection: _ = this.allowStaleOnFetchRejection, ignoreFetchAbort: u2 = this.ignoreFetchAbort, allowStaleOnFetchAbort: g = this.allowStaleOnFetchAbort, context: f, forceRefresh: y = false, status: a2, signal: w } = t2;
        if (a2 && (a2.op = "fetch", a2.key = e, y && (a2.forceRefresh = true), a2.cache = this), !this.#U) return a2 && (a2.fetch = "get"), this.#C(e, { allowStale: i4, updateAgeOnGet: s, noDeleteOnStaleGet: n2, status: a2 });
        let F = { allowStale: i4, updateAgeOnGet: s, noDeleteOnStaleGet: n2, ttl: o2, noDisposeOnSet: l, size: h2, sizeCalculation: r, noUpdateTTL: c3, noDeleteOnFetchRejection: m, allowStaleOnFetchRejection: _, allowStaleOnFetchAbort: g, ignoreFetchAbort: u2, status: a2, signal: w }, b = this.#s.get(e);
        if (b === void 0) {
          a2 && (a2.fetch = "miss");
          let p = this.#P(e, b, F, f);
          return p.__returned = p;
        } else {
          let p = this.#t[b];
          if (this.#e(p)) {
            let v = i4 && p.__staleWhileFetching !== void 0;
            return a2 && (a2.fetch = "inflight", v && (a2.returnedStale = true)), v ? p.__staleWhileFetching : p.__returned = p;
          }
          let A2 = this.#p(b);
          if (!y && !A2) return a2 && (a2.fetch = "hit"), this.#L(b), s && this.#R(b), a2 && this.#v(a2, b), p;
          let z = this.#P(e, b, F, f), E = z.__staleWhileFetching !== void 0 && i4;
          return a2 && (a2.fetch = A2 ? "stale" : "refresh", E && A2 && (a2.returnedStale = true)), E ? z.__staleWhileFetching : z.__returned = z;
        }
      }
      forceFetch(e, t2 = {}) {
        let i4 = W.hasSubscribers, { status: s = R() ? {} : void 0 } = t2;
        t2.status = s, s && t2.context && (s.context = t2.context);
        let n2 = this.#K(e, t2);
        return s && i4 && (s.trace = true, W.tracePromise(() => n2, s).catch(() => {
        })), n2;
      }
      async #K(e, t2 = {}) {
        let i4 = await this.#B(e, t2);
        if (i4 === void 0) throw new Error("fetch() returned undefined");
        return i4;
      }
      memo(e, t2 = {}) {
        let { status: i4 = S.hasSubscribers ? {} : void 0 } = t2;
        t2.status = i4, i4 && (i4.op = "memo", i4.key = e, t2.context && (i4.context = t2.context), i4.cache = this);
        let s = this.#Q(e, t2);
        return i4 && (i4.value = s), S.hasSubscribers && S.publish(i4), s;
      }
      #Q(e, t2 = {}) {
        let i4 = this.#I;
        if (!i4) throw new Error("no memoMethod provided to constructor");
        let { context: s, status: n2, forceRefresh: o2, ...l } = t2;
        n2 && o2 && (n2.forceRefresh = true);
        let h2 = this.#C(e, l), r = o2 || h2 === void 0;
        if (n2 && (n2.memo = r ? "miss" : "hit", r || (n2.value = h2)), !r) return h2;
        let c3 = i4(e, h2, { options: l, context: s });
        return n2 && (n2.value = c3), this.#W(e, c3, l), c3;
      }
      get(e, t2 = {}) {
        let { status: i4 = S.hasSubscribers ? {} : void 0 } = t2;
        t2.status = i4, i4 && (i4.op = "get", i4.key = e, i4.cache = this);
        let s = this.#C(e, t2);
        return i4 && (s !== void 0 && (i4.value = s), S.hasSubscribers && S.publish(i4)), s;
      }
      #C(e, t2 = {}) {
        let { allowStale: i4 = this.allowStale, updateAgeOnGet: s = this.updateAgeOnGet, noDeleteOnStaleGet: n2 = this.noDeleteOnStaleGet, status: o2 } = t2, l = this.#s.get(e);
        if (l === void 0) {
          o2 && (o2.get = "miss");
          return;
        }
        let h2 = this.#t[l], r = this.#e(h2);
        return o2 && this.#v(o2, l), this.#p(l) ? r ? (o2 && (o2.get = "stale-fetching"), i4 && h2.__staleWhileFetching !== void 0 ? (o2 && (o2.returnedStale = true), h2.__staleWhileFetching) : void 0) : (n2 || this.#E(e, "expire"), o2 && (o2.get = "stale"), i4 ? (o2 && (o2.returnedStale = true), h2) : void 0) : (o2 && (o2.get = r ? "fetching" : "hit"), this.#L(l), s && this.#R(l), r ? h2.__staleWhileFetching : h2);
      }
      #$(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 i4 = 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), i4 = true, this.#n === 1) this.#q(t2);
          else {
            this.#x(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 o2 = this.#u[s];
              this.#l[o2] = this.#l[s];
              let l = this.#l[s];
              this.#u[l] = 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 i4;
      }
      clear() {
        return this.#q("delete");
      }
      #q(e) {
        for (let t2 of this.#z({ allowStale: true })) {
          let i4 = this.#t[t2];
          if (this.#e(i4)) i4.__abortController.abort(new Error("deleted"));
          else {
            let s = this.#i[t2];
            this.#T && this.#S?.(i4, s, e), this.#f && this.#r?.push([i4, 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, i4;
          for (; i4 = t2?.shift(); ) this.#w?.(...i4);
        }
      }
    };
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/smart-buffer/4.2.0/26acde58cd4ef8a6abbb855cd602f8d5b83a031818c1520d891292aba555689e/node_modules/smart-buffer/build/utils.js
var require_utils9 = __commonJS({
  "../../../../../setup-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;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/smart-buffer/4.2.0/26acde58cd4ef8a6abbb855cd602f8d5b83a031818c1520d891292aba555689e/node_modules/smart-buffer/build/smartbuffer.js
var require_smartbuffer = __commonJS({
  "../../../../../setup-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_utils9();
    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 i4 = this._readOffset; i4 < this.length; i4++) {
          if (this._buff[i4] === 0) {
            nullPos = i4;
            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 i4 = this._readOffset; i4 < this.length; i4++) {
          if (this._buff[i4] === 0) {
            nullPos = i4;
            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 byteLength2 = Buffer.byteLength(value, encodingVal);
        if (isInsert) {
          this.ensureInsertable(byteLength2, offsetVal);
        } else {
          this._ensureWriteable(byteLength2, offsetVal);
        }
        this._buff.write(value, offsetVal, byteLength2, encodingVal);
        if (isInsert) {
          this._writeOffset += byteLength2;
        } else {
          if (typeof arg3 === "number") {
            this._writeOffset = Math.max(this._writeOffset, offsetVal + byteLength2);
          } else {
            this._writeOffset += byteLength2;
          }
        }
        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;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/socks/2.8.9/88335a74e0813db821792f9ed076a29934eb79e82dca678ffc550fd7637a37bf/node_modules/socks/build/common/constants.js
var require_constants8 = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/socks/2.8.9/88335a74e0813db821792f9ed076a29934eb79e82dca678ffc550fd7637a37bf/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 = {}));
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/socks/2.8.9/88335a74e0813db821792f9ed076a29934eb79e82dca678ffc550fd7637a37bf/node_modules/socks/build/common/util.js
var require_util3 = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/socks/2.8.9/88335a74e0813db821792f9ed076a29934eb79e82dca678ffc550fd7637a37bf/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 i4 = array.length - 1; i4 > 0; i4--) {
        const j2 = Math.floor(Math.random() * (i4 + 1));
        [array[i4], array[j2]] = [array[j2], array[i4]];
      }
    }
    exports2.shuffleArray = shuffleArray;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/ip-address/10.3.1/ef29753b9577af63366fe4d22ef0a1d1e2641daa0554fbcbe32285cdaa89f5ae/node_modules/ip-address/dist/address-error.js
var require_address_error = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/ip-address/10.3.1/ef29753b9577af63366fe4d22ef0a1d1e2641daa0554fbcbe32285cdaa89f5ae/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;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/ip-address/10.3.1/ef29753b9577af63366fe4d22ef0a1d1e2641daa0554fbcbe32285cdaa89f5ae/node_modules/ip-address/dist/common.js
var require_common4 = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/ip-address/10.3.1/ef29753b9577af63366fe4d22ef0a1d1e2641daa0554fbcbe32285cdaa89f5ae/node_modules/ip-address/dist/common.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.isInSubnet = isInSubnet;
    exports2.isHostInSubnet = isHostInSubnet;
    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;
      }
      return isHostInSubnet.call(this, address);
    }
    function isHostInSubnet(address) {
      return this.mask(address.subnetMask) === address.mask();
    }
    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";
    }
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/ip-address/10.3.1/ef29753b9577af63366fe4d22ef0a1d1e2641daa0554fbcbe32285cdaa89f5ae/node_modules/ip-address/dist/v4/constants.js
var require_constants9 = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/ip-address/10.3.1/ef29753b9577af63366fe4d22ef0a1d1e2641daa0554fbcbe32285cdaa89f5ae/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]|1[0-9][0-9]|[1-9]?[0-9])\.(25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9]?[0-9])\.(25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9]?[0-9])\.(25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9]?[0-9])$/g;
    exports2.RE_SUBNET_STRING = /\/\d{1,2}$/;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/ip-address/10.3.1/ef29753b9577af63366fe4d22ef0a1d1e2641daa0554fbcbe32285cdaa89f5ae/node_modules/ip-address/dist/ipv4.js
var require_ipv4 = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/ip-address/10.3.1/ef29753b9577af63366fe4d22ef0a1d1e2641daa0554fbcbe32285cdaa89f5ae/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(mod2) {
      if (mod2 && mod2.__esModule) return mod2;
      var result2 = {};
      if (mod2 != null) {
        for (var k2 in mod2) if (k2 !== "default" && Object.prototype.hasOwnProperty.call(mod2, k2)) __createBinding2(result2, mod2, k2);
      }
      __setModuleDefault2(result2, mod2);
      return result2;
    };
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.Address4 = void 0;
    var common4 = __importStar2(require_common4());
    var constants6 = __importStar2(require_constants9());
    var address_error_1 = require_address_error();
    var isCorrect4 = common4.isCorrect(constants6.BITS);
    var Address4 = class _Address4 {
      constructor(address) {
        this.addressMinusSuffix = "";
        this.groups = constants6.GROUPS;
        this.parsedAddress = [];
        this.parsedSubnet = "";
        this.subnet = "/32";
        this.subnetMask = 32;
        this.v4 = true;
        this.isCorrect = isCorrect4;
        this.isInSubnet = common4.isInSubnet;
        this.isHostInSubnet = common4.isHostInSubnet;
        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 (this.subnetMask < 0 || this.subnetMask > constants6.BITS) {
            throw new address_error_1.AddressError("Invalid subnet mask.");
          }
          address = address.replace(constants6.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 (groups.some((group) => /^0\d/.test(group))) {
          throw new address_error_1.AddressError("IPv4 addresses can't have leading zeroes.");
        }
        if (!address.match(constants6.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 bits2 = common4.prefixLengthFromMask(new _Address4(mask).bigInt(), constants6.BITS);
        return new _Address4(`${address}/${bits2}`);
      }
      /**
       * 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(constants6.BITS)) - BigInt(1);
        const mask = wildcard ^ allOnes;
        const bits2 = common4.prefixLengthFromMask(mask, constants6.BITS);
        return new _Address4(`${address}/${bits2}`);
      }
      /**
       * 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 !== constants6.GROUPS) {
          throw new address_error_1.AddressError("Wildcard pattern must have 4 octets");
        }
        let firstWildcard = -1;
        for (let i4 = 0; i4 < groups.length; i4++) {
          if (groups[i4] === "*") {
            if (firstWildcard === -1) {
              firstWildcard = i4;
            }
          } 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 = constants6.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 i4 = 0; i4 < 8; i4 += 2) {
          groups.push(parseInt(stripped.slice(i4, i4 + 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) => common4.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 i4;
        for (i4 = 0; i4 < constants6.GROUPS; i4 += 2) {
          output.push(`${common4.stringToPaddedHex(this.parsedAddress[i4])}${common4.stringToPaddedHex(this.parsedAddress[i4 + 1])}`);
        }
        return output.join(":");
      }
      /**
       * Returns the address as a `bigint`
       * @returns {bigint}
       */
      bigInt() {
        return BigInt(`0x${this.parsedAddress.map((n2) => common4.stringToPaddedHex(n2)).join("")}`);
      }
      /**
       * 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 {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(constants6.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(constants6.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(constants6.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 i4 = 0; i4 < bytes.length; i4++) {
          if (!Number.isInteger(bytes[i4]) || bytes[i4] < 0 || bytes[i4] > 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.isHostInSubnet(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.isHostInSubnet(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.isHostInSubnet(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.isHostInSubnet(LINK_LOCAL_V4);
      }
      /**
       * Returns true if the address is the unspecified address `0.0.0.0`.
       * @returns {boolean}
       */
      isUnspecified() {
        return this.isHostInSubnet(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.isHostInSubnet(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.isHostInSubnet(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(constants6.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.correctForm().replace(constants6.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");
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/ip-address/10.3.1/ef29753b9577af63366fe4d22ef0a1d1e2641daa0554fbcbe32285cdaa89f5ae/node_modules/ip-address/dist/v6/constants.js
var require_constants10 = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/ip-address/10.3.1/ef29753b9577af63366fe4d22ef0a1d1e2641daa0554fbcbe32285cdaa89f5ae/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",
      "::ffff:0:0/96": "IPv4-mapped",
      "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-9a-f:.]+)\]|([0-9a-f:.]+))(?:[/?#].*)?$/i;
    exports2.RE_URL_WITH_PORT = /^\[([0-9a-f:.]+)\]:([0-9]{1,5})(?:[/?#].*)?$/i;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/ip-address/10.3.1/ef29753b9577af63366fe4d22ef0a1d1e2641daa0554fbcbe32285cdaa89f5ae/node_modules/ip-address/dist/v6/helpers.js
var require_helpers = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/ip-address/10.3.1/ef29753b9577af63366fe4d22ef0a1d1e2641daa0554fbcbe32285cdaa89f5ae/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, i4) => `<span class="digit value-${escapeHtml(n2)} position-${i4 + 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, i4) => {
        if (/group-v4/.test(g)) {
          return g;
        }
        return `<span class="hover-group group-${i4 + offset}">${spanLeadingZeroesSimple(g)}</span>`;
      });
    }
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/ip-address/10.3.1/ef29753b9577af63366fe4d22ef0a1d1e2641daa0554fbcbe32285cdaa89f5ae/node_modules/ip-address/dist/v6/regular-expressions.js
var require_regular_expressions = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/ip-address/10.3.1/ef29753b9577af63366fe4d22ef0a1d1e2641daa0554fbcbe32285cdaa89f5ae/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(mod2) {
      if (mod2 && mod2.__esModule) return mod2;
      var result2 = {};
      if (mod2 != null) {
        for (var k2 in mod2) if (k2 !== "default" && Object.prototype.hasOwnProperty.call(mod2, k2)) __createBinding2(result2, mod2, k2);
      }
      __setModuleDefault2(result2, mod2);
      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_constants10());
    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, i4) => {
        const groupInteger = parseInt(group, 16);
        if (groupInteger === 0) {
          zeroIndexes.push(i4);
        }
      });
      const possibilities = zeroIndexes.map((zeroIndex) => groups.map((group, i4) => {
        if (i4 === zeroIndex) {
          const elision = i4 === 0 || i4 === 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);
    }
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/ip-address/10.3.1/ef29753b9577af63366fe4d22ef0a1d1e2641daa0554fbcbe32285cdaa89f5ae/node_modules/ip-address/dist/ipv6.js
var require_ipv6 = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/ip-address/10.3.1/ef29753b9577af63366fe4d22ef0a1d1e2641daa0554fbcbe32285cdaa89f5ae/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(mod2) {
      if (mod2 && mod2.__esModule) return mod2;
      var result2 = {};
      if (mod2 != null) {
        for (var k2 in mod2) if (k2 !== "default" && Object.prototype.hasOwnProperty.call(mod2, k2)) __createBinding2(result2, mod2, k2);
      }
      __setModuleDefault2(result2, mod2);
      return result2;
    };
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.Address6 = void 0;
    var common4 = __importStar2(require_common4());
    var constants42 = __importStar2(require_constants9());
    var constants6 = __importStar2(require_constants10());
    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 = common4.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, slice4) {
      const s1 = [];
      const s2 = [];
      let i4;
      for (i4 = 0; i4 < address.length; i4++) {
        if (i4 < slice4[0]) {
          s1.push(address[i4]);
        } else if (i4 > slice4[1]) {
          s2.push(address[i4]);
        }
      }
      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 = common4.isInSubnet;
        this.isHostInSubnet = common4.isHostInSubnet;
        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, "");
        }
        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 i4 = 0; i4 < constants6.GROUPS; i4++) {
          groups.push(hex.slice(i4 * 4, (i4 + 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;
        const stripped = url7.replace(/^[a-z][a-z0-9+.-]*:\/\//i, "");
        if (stripped.indexOf("[") !== -1 && stripped.indexOf("]:") !== -1) {
          result2 = constants6.RE_URL_WITH_PORT.exec(stripped);
          if (result2 === null) {
            return {
              error: "failed to parse address with port",
              address: null,
              port: null
            };
          }
          host = result2[1];
          port = result2[2];
        } else {
          result2 = constants6.RE_URL.exec(stripped);
          if (result2 === null) {
            return {
              error: "failed to parse address from URL",
              address: null,
              port: null
            };
          }
          host = result2[1] ?? result2[2];
        }
        if (port) {
          port = parseInt(port, 10);
          if (port < 0 || port > 65535) {
            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 bits2 = common4.prefixLengthFromMask(new _Address6(mask).bigInt(), constants6.BITS);
        return new _Address6(`${address}/${bits2}`);
      }
      /**
       * 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 bits2 = common4.prefixLengthFromMask(mask, constants6.BITS);
        return new _Address6(`${address}/${bits2}`);
      }
      /**
       * 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 i4 = 0; i4 < groups.length; i4++) {
          if (groups[i4] === "*") {
            if (firstWildcard === -1) {
              firstWildcard = i4;
            }
          } 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 i4 = semicolonAmount; i4 > 0; i4--) {
          const insertIndex = i4 * 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 i4 = 0; i4 < TYPE_SUBNETS.length; i4++) {
          const entry = TYPE_SUBNETS[i4];
          if (this.isHostInSubnet(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 i4;
        let groups = [];
        let zeroCounter = 0;
        const zeroes = [];
        for (i4 = 0; i4 < this.parsedAddress.length; i4++) {
          const value = parseInt(this.parsedAddress[i4], 16);
          if (value === 0) {
            zeroCounter++;
          }
          if (value !== 0 && zeroCounter > 0) {
            if (zeroCounter > 1) {
              zeroes.push([i4 - zeroCounter, i4 - 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 index2 = zeroLengths.indexOf(Math.max(...zeroLengths));
          groups = compact(this.parsedAddress, zeroes[index2]);
        } else {
          groups = this.parsedAddress;
        }
        for (i4 = 0; i4 < groups.length; i4++) {
          if (groups[i4] !== "compact") {
            groups[i4] = parseInt(groups[i4], 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 v4Octets = lastGroup.split(".");
        if (v4Octets.length === constants42.GROUPS && v4Octets.every((octet) => /^\d{1,3}$/.test(octet))) {
          if (v4Octets.some((octet) => /^0\d/.test(octet))) {
            const highlighted = v4Octets.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}`);
          }
        }
        const address4 = lastGroup.match(constants42.RE_ADDRESS);
        if (address4) {
          this.parsedAddress4 = address4[0];
          const v4Suffix = this.subnetMask >= 96 ? `/${this.subnetMask - 96}` : "";
          this.address4 = new ipv4_1.Address4(`${this.parsedAddress4}${v4Suffix}`);
          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 i4 = 0; i4 < remaining; i4++) {
            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.
       * If this address carries a CIDR prefix that covers the trailing 32 bits
       * (i.e. `subnetMask >= 96`), the resulting `Address4` inherits the
       * corresponding v4 prefix (`subnetMask - 96`); otherwise it defaults to
       * `/32`.
       * @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("");
        const hex = BigInt(`0b${binary2.slice(96, 128).join("")}`).toString(16).padStart(8, "0");
        if (this.subnetMask >= 96) {
          const v4Mask = this.subnetMask - 96;
          const groups = [];
          for (let i4 = 0; i4 < 8; i4 += 2) {
            groups.push(parseInt(hex.slice(i4, i4 + 2), 16));
          }
          return new ipv4_1.Address4(`${groups.join(".")}/${v4Mask}`);
        }
        return ipv4_1.Address4.fromHex(hex);
      }
      /**
       * 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.correctForm();
      }
      /**
       * 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 bits2;
        if (pl === 96) {
          bits2 = prefixBits.slice(0, 96) + v4Bits;
        } else {
          const beforeU = 64 - pl;
          bits2 = prefixBits.slice(0, pl) + v4Bits.slice(0, beforeU) + "00000000" + v4Bits.slice(beforeU) + "0".repeat(128 - 72 - (32 - beforeU));
        }
        const hex = BigInt(`0b${bits2}`).toString(16).padStart(32, "0");
        const groups = [];
        for (let i4 = 0; i4 < 8; i4++) {
          groups.push(hex.slice(i4 * 4, (i4 + 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.isHostInSubnet(prefix6)) {
          return null;
        }
        const bits2 = this.binaryZeroPad();
        let v4Bits;
        if (pl === 96) {
          v4Bits = bits2.slice(96, 128);
        } else {
          const beforeU = 64 - pl;
          v4Bits = bits2.slice(pl, pl + beforeU) + bits2.slice(72, 72 + (32 - beforeU));
        }
        const octets = [];
        for (let i4 = 0; i4 < 4; i4++) {
          octets.push(parseInt(v4Bits.slice(i4 * 8, (i4 + 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 value = this.bigInt().toString(16).padStart(constants6.BITS / 4, "0");
        const bytes = [];
        for (let i4 = 0, length = value.length; i4 < length; i4 += 2) {
          bytes.push(parseInt(value.substring(i4, i4 + 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 i4 = bytes.length - 1; i4 >= 0; i4--) {
          result2 += multiplier * BigInt(bytes[i4].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() {
        const embedded = this.embeddedIPv4();
        if (embedded) {
          return embedded.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 embedded = this.embeddedIPv4();
        if (embedded) {
          return embedded.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.isHostInSubnet(IPV4_MAPPED_SUBNET);
      }
      /**
       * If this address embeds a routable IPv4 address — i.e. it is IPv4-mapped
       * (`::ffff:0:0/96`) or sits in the NAT64 well-known prefix (`64:ff9b::/96`,
       * [RFC 6052](https://datatracker.ietf.org/doc/html/rfc6052)) — return that
       * embedded address as an {@link Address4}; otherwise return null.
       *
       * The special-property checks (`isLoopback`, `isLinkLocal`, `isMulticast`,
       * `isUnspecified`, `isPrivate`, `isCGNAT`, `isBroadcast`) call this first and
       * delegate to the embedded {@link Address4} when present, so a literal such as
       * `::ffff:127.0.0.1` is classified by what it actually reaches (loopback)
       * rather than by its IPv6 wrapper (which `getType()` reports as IPv4-mapped).
       * This matters wherever the checks back a trust-boundary decision (e.g. an
       * SSRF allow/deny filter): without normalization, `::ffff:10.0.0.1`,
       * `::ffff:169.254.169.254`, `64:ff9b::7f00:1`, etc. would all read as
       * non-internal.
       * @returns {Address4 | null}
       */
      embeddedIPv4() {
        if (this.isMapped4() || this.isHostInSubnet(NAT64_WELL_KNOWN_SUBNET)) {
          return this.to4();
        }
        return null;
      }
      /**
       * Returns true if the address is a Teredo address, false otherwise
       * @returns {boolean}
       */
      isTeredo() {
        return this.isHostInSubnet(TEREDO_SUBNET);
      }
      /**
       * Returns true if the address is a 6to4 address, false otherwise
       * @returns {boolean}
       */
      is6to4() {
        return this.isHostInSubnet(SIX_TO_FOUR_SUBNET);
      }
      /**
       * Returns true if the address is a loopback address, false otherwise
       * @returns {boolean}
       */
      isLoopback() {
        const embedded = this.embeddedIPv4();
        if (embedded) {
          return embedded.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.isHostInSubnet(ULA_SUBNET);
      }
      /**
       * Returns true if the address is private, i.e. a Unique Local Address in
       * `fc00::/7` ([RFC 4193](https://datatracker.ietf.org/doc/html/rfc4193)) or an
       * IPv4-mapped / NAT64 address whose embedded IPv4 address is in one of the
       * [RFC 1918](https://datatracker.ietf.org/doc/html/rfc1918) private ranges
       * (e.g. `::ffff:10.0.0.1`). This is the IPv6 counterpart to
       * {@link Address4.isPrivate}; use it instead of {@link isULA} when you need to
       * catch mapped RFC 1918 addresses as well as native ULAs.
       * @returns {boolean}
       */
      isPrivate() {
        const embedded = this.embeddedIPv4();
        if (embedded) {
          return embedded.isPrivate();
        }
        return this.isULA();
      }
      /**
       * Returns true if the address is an IPv4-mapped / NAT64 address whose embedded
       * IPv4 address is in the carrier-grade NAT range `100.64.0.0/10`
       * ([RFC 6598](https://datatracker.ietf.org/doc/html/rfc6598)), false
       * otherwise. There is no native IPv6 CGNAT range, so this only ever returns
       * true for an embedded IPv4 address (e.g. `::ffff:100.64.0.1`).
       * @returns {boolean}
       */
      isCGNAT() {
        const embedded = this.embeddedIPv4();
        if (embedded) {
          return embedded.isCGNAT();
        }
        return false;
      }
      /**
       * Returns true if the address is an IPv4-mapped / NAT64 address whose embedded
       * IPv4 address is the limited broadcast address `255.255.255.255`
       * ([RFC 919](https://datatracker.ietf.org/doc/html/rfc919)), false otherwise.
       * There is no IPv6 broadcast, so this only ever returns true for an embedded
       * IPv4 address (e.g. `::ffff:255.255.255.255`).
       * @returns {boolean}
       */
      isBroadcast() {
        const embedded = this.embeddedIPv4();
        if (embedded) {
          return embedded.isBroadcast();
        }
        return false;
      }
      /**
       * Returns true if the address is the unspecified address `::`.
       * @returns {boolean}
       */
      isUnspecified() {
        const embedded = this.embeddedIPv4();
        if (embedded) {
          return embedded.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.isHostInSubnet(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 i4 = this.elisionBegin; i4 < this.elisionBegin + this.elidedGroups; i4++) {
          classes.push(`group-${i4}`);
        }
        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");
    var NAT64_WELL_KNOWN_SUBNET = new Address6("64:ff9b::/96");
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/ip-address/10.3.1/ef29753b9577af63366fe4d22ef0a1d1e2641daa0554fbcbe32285cdaa89f5ae/node_modules/ip-address/dist/ip-address.js
var require_ip_address = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/ip-address/10.3.1/ef29753b9577af63366fe4d22ef0a1d1e2641daa0554fbcbe32285cdaa89f5ae/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(mod2) {
      if (mod2 && mod2.__esModule) return mod2;
      var result2 = {};
      if (mod2 != null) {
        for (var k2 in mod2) if (k2 !== "default" && Object.prototype.hasOwnProperty.call(mod2, k2)) __createBinding2(result2, mod2, k2);
      }
      __setModuleDefault2(result2, mod2);
      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 };
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/socks/2.8.9/88335a74e0813db821792f9ed076a29934eb79e82dca678ffc550fd7637a37bf/node_modules/socks/build/common/helpers.js
var require_helpers2 = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/socks/2.8.9/88335a74e0813db821792f9ed076a29934eb79e82dca678ffc550fd7637a37bf/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_util3();
    var constants_1 = require_constants8();
    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;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/socks/2.8.9/88335a74e0813db821792f9ed076a29934eb79e82dca678ffc550fd7637a37bf/node_modules/socks/build/common/receivebuffer.js
var require_receivebuffer = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/socks/2.8.9/88335a74e0813db821792f9ed076a29934eb79e82dca678ffc550fd7637a37bf/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;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/socks/2.8.9/88335a74e0813db821792f9ed076a29934eb79e82dca678ffc550fd7637a37bf/node_modules/socks/build/client/socksclient.js
var require_socksclient = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/socks/2.8.9/88335a74e0813db821792f9ed076a29934eb79e82dca678ffc550fd7637a37bf/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(resolve4) {
          resolve4(value);
        });
      }
      return new (P2 || (P2 = Promise))(function(resolve4, 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 ? resolve4(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_constants8();
    var helpers_1 = require_helpers2();
    var receivebuffer_1 = require_receivebuffer();
    var util_1 = require_util3();
    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((resolve4, reject3) => {
          try {
            (0, helpers_1.validateSocksClientOptions)(options, ["connect"]);
          } catch (err2) {
            if (typeof callback2 === "function") {
              callback2(err2);
              return resolve4(err2);
            } else {
              return reject3(err2);
            }
          }
          const client = new _SocksClient(options);
          client.connect(options.existing_socket);
          client.once("established", (info) => {
            client.removeAllListeners();
            if (typeof callback2 === "function") {
              callback2(null, info);
              resolve4(info);
            } else {
              resolve4(info);
            }
          });
          client.once("error", (err2) => {
            client.removeAllListeners();
            if (typeof callback2 === "function") {
              callback2(err2);
              resolve4(err2);
            } else {
              reject3(err2);
            }
          });
        });
      }
      /**
       * 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((resolve4, reject3) => __awaiter2(this, void 0, void 0, function* () {
          try {
            (0, helpers_1.validateSocksClientChainOptions)(options);
          } catch (err2) {
            if (typeof callback2 === "function") {
              callback2(err2);
              return resolve4(err2);
            } else {
              return reject3(err2);
            }
          }
          if (options.randomizeChain) {
            (0, util_1.shuffleArray)(options.proxies);
          }
          try {
            let sock;
            for (let i4 = 0; i4 < options.proxies.length; i4++) {
              const nextProxy = options.proxies[i4];
              const nextDestination = i4 === options.proxies.length - 1 ? options.destination : {
                host: options.proxies[i4 + 1].host || options.proxies[i4 + 1].ipaddress,
                port: options.proxies[i4 + 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 });
              resolve4({ socket: sock });
            } else {
              resolve4({ socket: sock });
            }
          } catch (err2) {
            if (typeof callback2 === "function") {
              callback2(err2);
              resolve4(err2);
            } else {
              reject3(err2);
            }
          }
        }));
      }
      /**
       * 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 = (err2) => this.onErrorHandler(err2);
        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(err2) {
        this.closeSocket(err2.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(err2) {
        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(err2, 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;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/socks/2.8.9/88335a74e0813db821792f9ed076a29934eb79e82dca678ffc550fd7637a37bf/node_modules/socks/build/index.js
var require_build = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/socks/2.8.9/88335a74e0813db821792f9ed076a29934eb79e82dca678ffc550fd7637a37bf/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);
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/undici/7.29.0/82a11f569634ba40cb43639a3bacb079ecc63f257fd03395a1e4e8454d841fb0/node_modules/undici/lib/core/symbols.js
var require_symbols = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/undici/7.29.0/82a11f569634ba40cb43639a3bacb079ecc63f257fd03395a1e4e8454d841fb0/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")
    };
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/undici/7.29.0/82a11f569634ba40cb43639a3bacb079ecc63f257fd03395a1e4e8454d841fb0/node_modules/undici/lib/util/timers.js
var require_timers = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/undici/7.29.0/82a11f569634ba40cb43639a3bacb079ecc63f257fd03395a1e4e8454d841fb0/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
    };
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/undici/7.29.0/82a11f569634ba40cb43639a3bacb079ecc63f257fd03395a1e4e8454d841fb0/node_modules/undici/lib/core/errors.js
var require_errors4 = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/undici/7.29.0/82a11f569634ba40cb43639a3bacb079ecc63f257fd03395a1e4e8454d841fb0/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
    };
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/undici/7.29.0/82a11f569634ba40cb43639a3bacb079ecc63f257fd03395a1e4e8454d841fb0/node_modules/undici/lib/core/constants.js
var require_constants11 = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/undici/7.29.0/82a11f569634ba40cb43639a3bacb079ecc63f257fd03395a1e4e8454d841fb0/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 i4 = 0; i4 < wellknownHeaderNames.length; ++i4) {
      const key = wellknownHeaderNames[i4];
      const lowerCasedKey = key.toLowerCase();
      headerNameLowerCasedRecord[key] = headerNameLowerCasedRecord[lowerCasedKey] = lowerCasedKey;
    }
    module2.exports = {
      wellknownHeaderNames,
      headerNameLowerCasedRecord,
      getHeaderNameAsBuffer
    };
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/undici/7.29.0/82a11f569634ba40cb43639a3bacb079ecc63f257fd03395a1e4e8454d841fb0/node_modules/undici/lib/core/tree.js
var require_tree = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/undici/7.29.0/82a11f569634ba40cb43639a3bacb079ecc63f257fd03395a1e4e8454d841fb0/node_modules/undici/lib/core/tree.js"(exports2, module2) {
    "use strict";
    var {
      wellknownHeaderNames,
      headerNameLowerCasedRecord
    } = require_constants11();
    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, index2) {
        if (index2 === void 0 || index2 >= key.length) {
          throw new TypeError("Unreachable");
        }
        const code = this.code = key.charCodeAt(index2);
        if (code > 127) {
          throw new TypeError("key must be ascii string");
        }
        if (key.length !== ++index2) {
          this.middle = new _TstNode(key, value, index2);
        } 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 index2 = 0;
        let node = this;
        while (true) {
          const code = key.charCodeAt(index2);
          if (code > 127) {
            throw new TypeError("key must be ascii string");
          }
          if (node.code === code) {
            if (length === ++index2) {
              node.value = value;
              break;
            } else if (node.middle !== null) {
              node = node.middle;
            } else {
              node.middle = new _TstNode(key, value, index2);
              break;
            }
          } else if (node.code < code) {
            if (node.left !== null) {
              node = node.left;
            } else {
              node.left = new _TstNode(key, value, index2);
              break;
            }
          } else if (node.right !== null) {
            node = node.right;
          } else {
            node.right = new _TstNode(key, value, index2);
            break;
          }
        }
      }
      /**
       * @param {Uint8Array} key
       * @returns {TstNode | null}
       */
      search(key) {
        const keylength = key.length;
        let index2 = 0;
        let node = this;
        while (node !== null && index2 < keylength) {
          let code = key[index2];
          if (code <= 90 && code >= 65) {
            code |= 32;
          }
          while (node !== null) {
            if (code === node.code) {
              if (keylength === ++index2) {
                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 i4 = 0; i4 < wellknownHeaderNames.length; ++i4) {
      const key = headerNameLowerCasedRecord[wellknownHeaderNames[i4]];
      tree.insert(key, key);
    }
    module2.exports = {
      TernarySearchTree,
      tree
    };
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/undici/7.29.0/82a11f569634ba40cb43639a3bacb079ecc63f257fd03395a1e4e8454d841fb0/node_modules/undici/lib/core/util.js
var require_util4 = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/undici/7.29.0/82a11f569634ba40cb43639a3bacb079ecc63f257fd03395a1e4e8454d841fb0/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: stringify2 } = __require("node:querystring");
    var { EventEmitter: EE } = __require("node:events");
    var timers = require_timers();
    var { InvalidArgumentError, ConnectTimeoutError } = require_errors4();
    var { headerNameLowerCasedRecord } = require_constants11();
    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 (isStream4(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 isStream4(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 = stringify2(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 path240 = url7.path != null ? url7.path : `${url7.pathname || ""}${url7.search || ""}`;
        if (origin[origin.length - 1] === "/") {
          origin = origin.slice(0, origin.length - 1);
        }
        if (path240 && path240[0] !== "/") {
          path240 = `/${path240}`;
        }
        return new URL(`${origin}${path240}`);
      }
      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 (isStream4(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, err2) {
      if (stream3 == null || !isStream4(stream3) || isDestroyed(stream3)) {
        return;
      }
      if (typeof stream3.destroy === "function") {
        if (Object.getPrototypeOf(stream3).constructor === IncomingMessage) {
          stream3.socket = null;
        }
        stream3.destroy(err2);
      } else if (err2) {
        queueMicrotask(() => {
          stream3.emit("error", err2);
        });
      }
      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 i4 = 0; i4 < headers.length; i4 += 2) {
        const key = headerNameToString(headers[i4]);
        let val = obj[key];
        if (val !== void 0) {
          if (!Object.hasOwn(obj, key)) {
            const headersValue = typeof headers[i4 + 1] === "string" ? headers[i4 + 1] : Array.isArray(headers[i4 + 1]) ? headers[i4 + 1].map((x3) => x3.toString("latin1")) : headers[i4 + 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[i4 + 1].toString("latin1"));
          }
        } else {
          const headersValue = typeof headers[i4 + 1] === "string" ? headers[i4 + 1] : Array.isArray(headers[i4 + 1]) ? headers[i4 + 1].map((x3) => x3.toString("latin1")) : headers[i4 + 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((x3) => Buffer.from(x3));
    }
    function isBuffer(buffer3) {
      return buffer3 instanceof Uint8Array || Buffer.isBuffer(buffer3);
    }
    function assertRequestHandler(handler83, method2, upgrade) {
      if (!handler83 || typeof handler83 !== "object") {
        throw new InvalidArgumentError("handler must be an object");
      }
      if (typeof handler83.onRequestStart === "function") {
        return;
      }
      if (typeof handler83.onConnect !== "function") {
        throw new InvalidArgumentError("invalid onConnect method");
      }
      if (typeof handler83.onError !== "function") {
        throw new InvalidArgumentError("invalid onError method");
      }
      if (typeof handler83.onBodySent !== "function" && handler83.onBodySent !== void 0) {
        throw new InvalidArgumentError("invalid onBodySent method");
      }
      if (upgrade || method2 === "CONNECT") {
        if (typeof handler83.onUpgrade !== "function") {
          throw new InvalidArgumentError("invalid onUpgrade method");
        }
      } else {
        if (typeof handler83.onHeaders !== "function") {
          throw new InvalidArgumentError("invalid onHeaders method");
        }
        if (typeof handler83.onData !== "function") {
          throw new InvalidArgumentError("invalid onData method");
        }
        if (typeof handler83.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 i4 = 0; i4 < characters.length; i4++) {
        if (validTokenChars[characters.charCodeAt(i4)] !== 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, err2) {
      try {
        request.onError(err2);
        assert13(request.aborted);
      } catch (err3) {
        client.emit("error", err3);
      }
    }
    var setupConnectTimeout = process.platform === "win32" ? (socketWeakRef, opts3) => {
      if (!opts3.timeout) {
        return noop5;
      }
      let s1 = null;
      let s2 = null;
      const fastTimer = timers.setFastTimeout(() => {
        s1 = setImmediate(() => {
          s2 = setImmediate(() => onConnectTimeout(socketWeakRef.deref(), opts3));
        });
      }, opts3.timeout);
      return () => {
        timers.clearFastTimeout(fastTimer);
        clearImmediate(s1);
        clearImmediate(s2);
      };
    } : (socketWeakRef, opts3) => {
      if (!opts3.timeout) {
        return noop5;
      }
      let s1 = null;
      const fastTimer = timers.setFastTimeout(() => {
        s1 = setImmediate(() => {
          onConnectTimeout(socketWeakRef.deref(), opts3);
        });
      }, opts3.timeout);
      return () => {
        timers.clearFastTimeout(fastTimer);
        clearImmediate(s1);
      };
    };
    function onConnectTimeout(socket, opts3) {
      if (socket == null) {
        return;
      }
      let message = "Connect Timeout Error";
      if (Array.isArray(socket.autoSelectFamilyAttemptedAddresses)) {
        message += ` (attempted addresses: ${socket.autoSelectFamilyAttemptedAddresses.join(", ")},`;
      } else {
        message += ` (attempted address: ${opts3.hostname}:${opts3.port},`;
      }
      message += ` timeout: ${opts3.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: isStream4,
      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
    };
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/undici/7.29.0/82a11f569634ba40cb43639a3bacb079ecc63f257fd03395a1e4e8454d841fb0/node_modules/undici/lib/util/stats.js
var require_stats = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/undici/7.29.0/82a11f569634ba40cb43639a3bacb079ecc63f257fd03395a1e4e8454d841fb0/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 };
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/undici/7.29.0/82a11f569634ba40cb43639a3bacb079ecc63f257fd03395a1e4e8454d841fb0/node_modules/undici/lib/core/diagnostics.js
var require_diagnostics = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/undici/7.29.0/82a11f569634ba40cb43639a3bacb079ecc63f257fd03395a1e4e8454d841fb0/node_modules/undici/lib/core/diagnostics.js"(exports2, module2) {
    "use strict";
    var diagnosticsChannel = __require("node:diagnostics_channel");
    var util70 = __require("node:util");
    var undiciDebugLog = util70.debuglog("undici");
    var fetchDebuglog = util70.debuglog("fetch");
    var websocketDebuglog = util70.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: method2, path: path240, origin }
          } = evt;
          debugLog("sending request to %s %s%s", method2, origin, path240);
        }
      );
    }
    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: method2, path: path240, origin },
            response: { statusCode }
          } = evt;
          debugLog(
            "received response to %s %s%s - HTTP %d",
            method2,
            origin,
            path240,
            statusCode
          );
        }
      );
      diagnosticsChannel.subscribe(
        "undici:request:trailers",
        (evt) => {
          const {
            request: { method: method2, path: path240, origin }
          } = evt;
          debugLog("trailers received from %s %s%s", method2, origin, path240);
        }
      );
      diagnosticsChannel.subscribe(
        "undici:request:error",
        (evt) => {
          const {
            request: { method: method2, path: path240, origin },
            error
          } = evt;
          debugLog(
            "request to %s %s%s errored - %s",
            method2,
            origin,
            path240,
            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",
        (err2) => {
          debugLog("connection errored - %s", err2.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
    };
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/undici/7.29.0/82a11f569634ba40cb43639a3bacb079ecc63f257fd03395a1e4e8454d841fb0/node_modules/undici/lib/core/request.js
var require_request = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/undici/7.29.0/82a11f569634ba40cb43639a3bacb079ecc63f257fd03395a1e4e8454d841fb0/node_modules/undici/lib/core/request.js"(exports2, module2) {
    "use strict";
    var {
      InvalidArgumentError,
      NotSupportedError
    } = require_errors4();
    var assert13 = __require("node:assert");
    var {
      isValidHTTPToken,
      isValidHeaderValue,
      isStream: isStream4,
      destroy,
      isBuffer,
      isFormDataLike,
      isIterable,
      hasSafeIterator,
      isBlobLike,
      serializePathWithQuery,
      assertRequestHandler,
      getServerName,
      normalizedMethodRecords,
      getProtocolFromUrlString
    } = require_util4();
    var { channels } = require_diagnostics();
    var { headerNameLowerCasedRecord } = require_constants11();
    var invalidPathRegex = /[^\u0021-\u00ff]/;
    function isValidContentLengthHeaderValue(val) {
      if (typeof val !== "string" || val.length === 0) {
        return false;
      }
      for (let i4 = 0; i4 < val.length; i4++) {
        const charCode = val.charCodeAt(i4);
        if (charCode < 48 || charCode > 57) {
          return false;
        }
      }
      return true;
    }
    var kHandler = /* @__PURE__ */ Symbol("handler");
    var Request = class {
      constructor(origin, {
        path: path240,
        method: method2,
        body,
        headers,
        query,
        idempotent,
        blocking,
        upgrade,
        headersTimeout,
        bodyTimeout,
        reset: reset2,
        expectContinue,
        servername,
        throwOnError,
        maxRedirections,
        typeOfService
      }, handler83) {
        if (typeof path240 !== "string") {
          throw new InvalidArgumentError("path must be a string");
        } else if (path240[0] !== "/" && !(path240.startsWith("http://") || path240.startsWith("https://")) && method2 !== "CONNECT") {
          throw new InvalidArgumentError("path must be an absolute URL or start with a slash");
        } else if (invalidPathRegex.test(path240)) {
          throw new InvalidArgumentError("invalid request path");
        }
        if (typeof method2 !== "string") {
          throw new InvalidArgumentError("method must be a string");
        } else if (normalizedMethodRecords[method2] === void 0 && !isValidHTTPToken(method2)) {
          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 = method2;
        this.typeOfService = typeOfService ?? 0;
        this.abort = null;
        if (body == null) {
          this.body = null;
        } else if (isStream4(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 = (err2) => {
            if (this.abort) {
              this.abort(err2);
            } else {
              this.error = err2;
            }
          };
          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(path240, query) : path240;
        this.origin = origin;
        this.protocol = getProtocolFromUrlString(origin);
        this.idempotent = idempotent == null ? method2 === "HEAD" || method2 === "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 i4 = 0; i4 < headers.length; i4 += 2) {
            processHeader(this, headers[i4], headers[i4 + 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 i4 = 0; i4 < keys4.length; ++i4) {
              processHeader(this, keys4[i4], headers[keys4[i4]]);
            }
          }
        } else if (headers != null) {
          throw new InvalidArgumentError("headers must be an object or an array");
        }
        assertRequestHandler(handler83, method2, upgrade);
        this.servername = servername || getServerName(this.host) || null;
        this[kHandler] = handler83;
        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 (err2) {
            this.abort(err2);
          }
        }
      }
      onRequestSent() {
        if (channels.bodySent.hasSubscribers) {
          channels.bodySent.publish({ request: this });
        }
        if (this[kHandler].onRequestSent) {
          try {
            return this[kHandler].onRequestSent();
          } catch (err2) {
            this.abort(err2);
          }
        }
      }
      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 (err2) {
          this.abort(err2);
        }
      }
      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 (err2) {
          this.abort(err2);
          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 (err2) {
          this.onError(err2);
        }
      }
      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 i4 = 0; i4 < val.length; i4++) {
          if (typeof val[i4] === "string") {
            if (!isValidHeaderValue(val[i4])) {
              throw new InvalidArgumentError(`invalid ${key} header`);
            }
            arr.push(val[i4]);
          } else if (val[i4] === null) {
            arr.push("");
          } else if (typeof val[i4] === "object") {
            throw new InvalidArgumentError(`invalid ${key} header`);
          } else {
            const str2 = `${val[i4]}`;
            if (!isValidHeaderValue(str2)) {
              throw new InvalidArgumentError(`invalid ${key} header`);
            }
            arr.push(str2);
          }
        }
        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 (!isValidHeaderValue(val)) {
          throw new InvalidArgumentError(`invalid ${key} header`);
        }
      }
      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");
        }
        if (!isValidContentLengthHeaderValue(val)) {
          throw new InvalidArgumentError("invalid content-length header");
        }
        request.contentLength = parseInt(val, 10);
      } 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;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/undici/7.29.0/82a11f569634ba40cb43639a3bacb079ecc63f257fd03395a1e4e8454d841fb0/node_modules/undici/lib/handler/wrap-handler.js
var require_wrap_handler = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/undici/7.29.0/82a11f569634ba40cb43639a3bacb079ecc63f257fd03395a1e4e8454d841fb0/node_modules/undici/lib/handler/wrap-handler.js"(exports2, module2) {
    "use strict";
    var { InvalidArgumentError } = require_errors4();
    module2.exports = class WrapHandler {
      #handler;
      constructor(handler83) {
        this.#handler = handler83;
      }
      static wrap(handler83) {
        return handler83.onRequestStart ? handler83 : new WrapHandler(handler83);
      }
      // 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(err2) {
        if (!this.#handler.onError) {
          throw err2;
        }
        return this.#handler.onError?.(err2);
      }
      // 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, err2) {
        if (!this.#handler.onError) {
          throw new InvalidArgumentError("invalid onError method");
        }
        this.#handler.onError?.(err2);
      }
    };
    function toRawHeaderValue(value) {
      return Array.isArray(value) ? value.map((item) => Buffer.from(item, "latin1")) : Buffer.from(value, "latin1");
    }
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/undici/7.29.0/82a11f569634ba40cb43639a3bacb079ecc63f257fd03395a1e4e8454d841fb0/node_modules/undici/lib/dispatcher/dispatcher.js
var require_dispatcher = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/undici/7.29.0/82a11f569634ba40cb43639a3bacb079ecc63f257fd03395a1e4e8454d841fb0/node_modules/undici/lib/dispatcher/dispatcher.js"(exports2, module2) {
    "use strict";
    var EventEmitter4 = __require("node:events");
    var WrapHandler = require_wrap_handler();
    var wrapInterceptor = (dispatch) => (opts3, handler83) => dispatch(opts3, WrapHandler.wrap(handler83));
    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;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/undici/7.29.0/82a11f569634ba40cb43639a3bacb079ecc63f257fd03395a1e4e8454d841fb0/node_modules/undici/lib/handler/unwrap-handler.js
var require_unwrap_handler = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/undici/7.29.0/82a11f569634ba40cb43639a3bacb079ecc63f257fd03395a1e4e8454d841fb0/node_modules/undici/lib/handler/unwrap-handler.js"(exports2, module2) {
    "use strict";
    var { parseHeaders } = require_util4();
    var { InvalidArgumentError } = require_errors4();
    var kResume = /* @__PURE__ */ Symbol("resume");
    var UnwrapController = class {
      #paused = false;
      #reason = null;
      #aborted = false;
      #abort;
      [kResume] = null;
      rawHeaders = null;
      rawTrailers = 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(handler83) {
        this.#handler = handler83;
      }
      static unwrap(handler83) {
        return !handler83.onRequestStart ? handler83 : new UnwrapHandler(handler83);
      }
      onConnect(abort, context) {
        this.#controller = new UnwrapController(abort);
        this.#handler.onRequestStart?.(this.#controller, context);
      }
      onResponseStarted() {
        return this.#handler.onResponseStarted?.();
      }
      onUpgrade(statusCode, rawHeaders, socket) {
        this.#controller.rawHeaders = rawHeaders;
        this.#handler.onRequestUpgrade?.(this.#controller, statusCode, parseHeaders(rawHeaders), socket);
      }
      onHeaders(statusCode, rawHeaders, resume, statusMessage) {
        this.#controller[kResume] = resume;
        this.#controller.rawHeaders = rawHeaders;
        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.#controller.rawTrailers = rawTrailers;
        this.#handler.onResponseEnd?.(this.#controller, parseHeaders(rawTrailers));
      }
      onError(err2) {
        if (!this.#handler.onResponseError) {
          throw new InvalidArgumentError("invalid onError method");
        }
        this.#handler.onResponseError?.(this.#controller, err2);
      }
    };
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/undici/7.29.0/82a11f569634ba40cb43639a3bacb079ecc63f257fd03395a1e4e8454d841fb0/node_modules/undici/lib/dispatcher/dispatcher-base.js
var require_dispatcher_base = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/undici/7.29.0/82a11f569634ba40cb43639a3bacb079ecc63f257fd03395a1e4e8454d841fb0/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_errors4();
    var { kDestroy, kClose, kClosed, kDestroyed, kDispatch } = require_symbols();
    var kOnDestroyed = /* @__PURE__ */ Symbol("onDestroyed");
    var kOnClosed = /* @__PURE__ */ Symbol("onClosed");
    var kWebSocketOptions = /* @__PURE__ */ Symbol("webSocketOptions");
    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;
      /**
       * @param {import('../../types/dispatcher').DispatcherOptions} [opts]
       */
      constructor(opts3) {
        super();
        this[kWebSocketOptions] = opts3?.webSocket ?? {};
      }
      /**
       * @returns {import('../../types/dispatcher').WebSocketOptions}
       */
      get webSocketOptions() {
        return {
          maxFragments: this[kWebSocketOptions].maxFragments ?? 131072,
          maxPayloadSize: this[kWebSocketOptions].maxPayloadSize ?? 128 * 1024 * 1024
          // 128 MB default
        };
      }
      /** @returns {boolean} */
      get destroyed() {
        return this[kDestroyed];
      }
      /** @returns {boolean} */
      get closed() {
        return this[kClosed];
      }
      close(callback2) {
        if (callback2 === void 0) {
          return new Promise((resolve4, reject3) => {
            this.close((err2, data) => {
              return err2 ? reject3(err2) : resolve4(data);
            });
          });
        }
        if (typeof callback2 !== "function") {
          throw new InvalidArgumentError("invalid callback");
        }
        if (this[kDestroyed]) {
          const err2 = new ClientDestroyedError();
          queueMicrotask(() => callback2(err2, 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 i4 = 0; i4 < callbacks.length; i4++) {
            callbacks[i4](null, null);
          }
        };
        this[kClose]().then(() => this.destroy()).then(() => queueMicrotask(onClosed));
      }
      destroy(err2, callback2) {
        if (typeof err2 === "function") {
          callback2 = err2;
          err2 = null;
        }
        if (callback2 === void 0) {
          return new Promise((resolve4, reject3) => {
            this.destroy(err2, (err3, data) => {
              return err3 ? reject3(err3) : resolve4(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 (!err2) {
          err2 = new ClientDestroyedError();
        }
        this[kDestroyed] = true;
        this[kOnDestroyed] ??= [];
        this[kOnDestroyed].push(callback2);
        const onDestroyed = () => {
          const callbacks = this[kOnDestroyed];
          this[kOnDestroyed] = null;
          for (let i4 = 0; i4 < callbacks.length; i4++) {
            callbacks[i4](null, null);
          }
        };
        this[kDestroy](err2).then(() => queueMicrotask(onDestroyed));
      }
      dispatch(opts3, handler83) {
        if (!handler83 || typeof handler83 !== "object") {
          throw new InvalidArgumentError("handler must be an object");
        }
        handler83 = UnwrapHandler.unwrap(handler83);
        try {
          if (!opts3 || typeof opts3 !== "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](opts3, handler83);
        } catch (err2) {
          if (typeof handler83.onError !== "function") {
            throw err2;
          }
          handler83.onError(err2);
          return false;
        }
      }
    };
    module2.exports = DispatcherBase;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/undici/7.29.0/82a11f569634ba40cb43639a3bacb079ecc63f257fd03395a1e4e8454d841fb0/node_modules/undici/lib/core/connect.js
var require_connect = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/undici/7.29.0/82a11f569634ba40cb43639a3bacb079ecc63f257fd03395a1e4e8454d841fb0/node_modules/undici/lib/core/connect.js"(exports2, module2) {
    "use strict";
    var net = __require("node:net");
    var assert13 = __require("node:assert");
    var util70 = require_util4();
    var { InvalidArgumentError } = require_errors4();
    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;
        }
        if (this._sessionCache.has(sessionKey)) {
          this._sessionCache.delete(sessionKey);
        } else if (this._sessionCache.size >= this._maxCachedSessions) {
          for (const [key, ref] of this._sessionCache) {
            if (ref.deref() === void 0) {
              this._sessionCache.delete(key);
              return;
            }
          }
          const oldest = this._sessionCache.keys().next();
          if (!oldest.done) {
            this._sessionCache.delete(oldest.value);
          }
        }
        this._sessionCache.set(sessionKey, new WeakRef(session));
        this._sessionRegistry.register(session, sessionKey);
      }
    };
    function buildConnector({ allowH2, useH2c, maxCachedSessions, socketPath, timeout, session: customSession, ...opts3 }) {
      if (maxCachedSessions != null && (!Number.isInteger(maxCachedSessions) || maxCachedSessions < 0)) {
        throw new InvalidArgumentError("maxCachedSessions must be a positive integer or zero");
      }
      const options = { path: socketPath, ...opts3 };
      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 || util70.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 = util70.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(err2) {
          queueMicrotask(clearConnectTimeout);
          if (callback2) {
            const cb = callback2;
            callback2 = null;
            cb(err2);
          }
        });
        return socket;
      };
    }
    module2.exports = buildConnector;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/undici/7.29.0/82a11f569634ba40cb43639a3bacb079ecc63f257fd03395a1e4e8454d841fb0/node_modules/undici/lib/llhttp/utils.js
var require_utils10 = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/undici/7.29.0/82a11f569634ba40cb43639a3bacb079ecc63f257fd03395a1e4e8454d841fb0/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));
      }));
    }
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/undici/7.29.0/82a11f569634ba40cb43639a3bacb079ecc63f257fd03395a1e4e8454d841fb0/node_modules/undici/lib/llhttp/constants.js
var require_constants12 = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/undici/7.29.0/82a11f569634ba40cb43639a3bacb079ecc63f257fd03395a1e4e8454d841fb0/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_utils10();
    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 i4 = "A".charCodeAt(0); i4 <= "Z".charCodeAt(0); i4++) {
      exports2.ALPHA.push(String.fromCharCode(i4));
      exports2.ALPHA.push(String.fromCharCode(i4 + 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 i4 = 32; i4 <= 255; i4++) {
      if (i4 !== 127) {
        exports2.HEADER_CHARS.push(i4);
      }
    }
    exports2.CONNECTION_TOKEN_CHARS = exports2.HEADER_CHARS.filter((c3) => c3 !== 44);
    exports2.QUOTED_STRING = ["	", " "];
    for (let i4 = 33; i4 <= 255; i4++) {
      if (i4 !== 34 && i4 !== 92) {
        exports2.QUOTED_STRING.push(i4);
      }
    }
    exports2.HTAB_SP_VCHAR_OBS_TEXT = ["	", " "];
    for (let i4 = 33; i4 <= 126; i4++) {
      exports2.HTAB_SP_VCHAR_OBS_TEXT.push(i4);
    }
    for (let i4 = 128; i4 <= 255; i4++) {
      exports2.HTAB_SP_VCHAR_OBS_TEXT.push(i4);
    }
    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
    };
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/undici/7.29.0/82a11f569634ba40cb43639a3bacb079ecc63f257fd03395a1e4e8454d841fb0/node_modules/undici/lib/llhttp/llhttp-wasm.js
var require_llhttp_wasm = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/undici/7.29.0/82a11f569634ba40cb43639a3bacb079ecc63f257fd03395a1e4e8454d841fb0/node_modules/undici/lib/llhttp/llhttp-wasm.js"(exports2, module2) {
    "use strict";
    var { Buffer: Buffer6 } = __require("node:buffer");
    var wasmBase64 = " ";
    var wasmBuffer;
    Object.defineProperty(module2, "exports", {
      get: () => {
        return wasmBuffer ? wasmBuffer : wasmBuffer = Buffer6.from(wasmBase64, "base64");
      }
    });
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/undici/7.29.0/82a11f569634ba40cb43639a3bacb079ecc63f257fd03395a1e4e8454d841fb0/node_modules/undici/lib/llhttp/llhttp_simd-wasm.js
var require_llhttp_simd_wasm = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/undici/7.29.0/82a11f569634ba40cb43639a3bacb079ecc63f257fd03395a1e4e8454d841fb0/node_modules/undici/lib/llhttp/llhttp_simd-wasm.js"(exports2, module2) {
    "use strict";
    var { Buffer: Buffer6 } = __require("node:buffer");
    var wasmBase64 = " ";
    var wasmBuffer;
    Object.defineProperty(module2, "exports", {
      get: () => {
        return wasmBuffer ? wasmBuffer : wasmBuffer = Buffer6.from(wasmBase64, "base64");
      }
    });
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/undici/7.29.0/82a11f569634ba40cb43639a3bacb079ecc63f257fd03395a1e4e8454d841fb0/node_modules/undici/lib/web/fetch/constants.js
var require_constants13 = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/undici/7.29.0/82a11f569634ba40cb43639a3bacb079ecc63f257fd03395a1e4e8454d841fb0/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
    };
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/undici/7.29.0/82a11f569634ba40cb43639a3bacb079ecc63f257fd03395a1e4e8454d841fb0/node_modules/undici/lib/web/fetch/global.js
var require_global = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/undici/7.29.0/82a11f569634ba40cb43639a3bacb079ecc63f257fd03395a1e4e8454d841fb0/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
    };
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/undici/7.29.0/82a11f569634ba40cb43639a3bacb079ecc63f257fd03395a1e4e8454d841fb0/node_modules/undici/lib/encoding/index.js
var require_encoding = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/undici/7.29.0/82a11f569634ba40cb43639a3bacb079ecc63f257fd03395a1e4e8454d841fb0/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
    };
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/undici/7.29.0/82a11f569634ba40cb43639a3bacb079ecc63f257fd03395a1e4e8454d841fb0/node_modules/undici/lib/web/infra/index.js
var require_infra = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/undici/7.29.0/82a11f569634ba40cb43639a3bacb079ecc63f257fd03395a1e4e8454d841fb0/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 i4 = 0;
      let addition = (2 << 15) - 1;
      while (i4 < length) {
        if (i4 + addition > length) {
          addition = length - i4;
        }
        result2 += String.fromCharCode.apply(null, input.subarray(i4, i4 += 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
    };
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/undici/7.29.0/82a11f569634ba40cb43639a3bacb079ecc63f257fd03395a1e4e8454d841fb0/node_modules/undici/lib/web/fetch/data-url.js
var require_data_url = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/undici/7.29.0/82a11f569634ba40cb43639a3bacb079ecc63f257fd03395a1e4e8454d841fb0/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 i4 = 0;
      while (i4 < length) {
        const byte = input[i4];
        if (byte !== 37) {
          output[j2++] = byte;
        } else if (byte === 37 && !(isHexCharByte(input[i4 + 1]) && isHexCharByte(input[i4 + 2]))) {
          output[j2++] = 37;
        } else {
          output[j2++] = hexByteToNumber(input[i4 + 1]) << 4 | hexByteToNumber(input[i4 + 2]);
          i4 += 2;
        }
        ++i4;
      }
      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
    };
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/undici/7.29.0/82a11f569634ba40cb43639a3bacb079ecc63f257fd03395a1e4e8454d841fb0/node_modules/undici/lib/util/runtime-features.js
var require_runtime_features = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/undici/7.29.0/82a11f569634ba40cb43639a3bacb079ecc63f257fd03395a1e4e8454d841fb0/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 (err2) {
        if (err2.code !== "ERR_UNKNOWN_BUILTIN_MODULE" && err2.code !== "ERR_NO_CRYPTO") {
          throw err2;
        }
        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;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/undici/7.29.0/82a11f569634ba40cb43639a3bacb079ecc63f257fd03395a1e4e8454d841fb0/node_modules/undici/lib/web/webidl/index.js
var require_webidl = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/undici/7.29.0/82a11f569634ba40cb43639a3bacb079ecc63f257fd03395a1e4e8454d841fb0/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 NUMBER = 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(opts3) {
      const plural2 = opts3.types.length === 1 ? "" : " one of";
      const message = `${opts3.argument} could not be converted to${plural2}: ${opts3.types.join(", ")}.`;
      return webidl.errors.exception({
        header: opts3.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, I3) {
      if (!FunctionPrototypeSymbolHasInstance(I3, V)) {
        const err2 = new TypeError("Illegal invocation");
        err2.code = "ERR_INVALID_THIS";
        throw err2;
      }
    };
    webidl.brandCheckMultiple = function(List) {
      const prototypes = List.map((c3) => webidl.util.MakeTypeAssertion(c3));
      return (V) => {
        if (prototypes.every((typeCheck) => !typeCheck(V))) {
          const err2 = new TypeError("Illegal invocation");
          err2.code = "ERR_INVALID_THIS";
          throw err2;
        }
      };
    };
    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(I3) {
      return (O2) => FunctionPrototypeSymbolHasInstance(I3, 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 NUMBER;
        case "bigint":
          return BIGINT;
        case "function":
        case "object": {
          if (V === null) {
            return NULL;
          }
          return OBJECT;
        }
      }
    };
    webidl.util.Types = {
      UNDEFINED,
      BOOLEAN,
      STRING,
      SYMBOL,
      NUMBER,
      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 NUMBER:
          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, bitLength2, signedness, flags) {
      let upperBound;
      let lowerBound2;
      if (bitLength2 === 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, bitLength2) - 1;
      } else {
        lowerBound2 = -Math.pow(2, bitLength2 - 1);
        upperBound = Math.pow(2, bitLength2 - 1) - 1;
      }
      let x3 = Number(V);
      if (x3 === 0) {
        x3 = 0;
      }
      if (webidl.util.HasFlag(flags, webidl.attributes.EnforceRange)) {
        if (Number.isNaN(x3) || x3 === Number.POSITIVE_INFINITY || x3 === Number.NEGATIVE_INFINITY) {
          throw webidl.errors.exception({
            header: "Integer conversion",
            message: `Could not convert ${webidl.util.Stringify(V)} to an integer.`
          });
        }
        x3 = webidl.util.IntegerPart(x3);
        if (x3 < lowerBound2 || x3 > upperBound) {
          throw webidl.errors.exception({
            header: "Integer conversion",
            message: `Value must be between ${lowerBound2}-${upperBound}, got ${x3}.`
          });
        }
        return x3;
      }
      if (!Number.isNaN(x3) && webidl.util.HasFlag(flags, webidl.attributes.Clamp)) {
        x3 = Math.min(Math.max(x3, lowerBound2), upperBound);
        if (Math.floor(x3) % 2 === 0) {
          x3 = Math.floor(x3);
        } else {
          x3 = Math.ceil(x3);
        }
        return x3;
      }
      if (Number.isNaN(x3) || x3 === 0 && Object.is(0, x3) || x3 === Number.POSITIVE_INFINITY || x3 === Number.NEGATIVE_INFINITY) {
        return 0;
      }
      x3 = webidl.util.IntegerPart(x3);
      x3 = x3 % Math.pow(2, bitLength2);
      if (signedness === "signed" && x3 >= Math.pow(2, bitLength2 - 1)) {
        return x3 - Math.pow(2, bitLength2);
      }
      return x3;
    };
    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 method2 = typeof Iterable === "function" ? Iterable() : V?.[Symbol.iterator]?.();
        const seq2 = [];
        let index2 = 0;
        if (method2 === void 0 || typeof method2.next !== "function") {
          throw webidl.errors.exception({
            header: prefix,
            message: `${argument} is not iterable.`
          });
        }
        while (true) {
          const { done, value } = method2.next();
          if (done) {
            break;
          }
          seq2.push(converter(value, prefix, `${argument}[${index2++}]`));
        }
        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 x3 = String(V);
      for (let index2 = 0; index2 < x3.length; index2++) {
        if (x3.charCodeAt(index2) > 255) {
          throw new TypeError(
            `Cannot convert argument to a ByteString because the character at index ${index2} has a value of ${x3.charCodeAt(index2)} which is greater than 255.`
          );
        }
      }
      return x3;
    };
    webidl.converters.USVString = function(value) {
      if (typeof value === "string") {
        return value.toWellFormed();
      }
      return `${value}`.toWellFormed();
    };
    webidl.converters.boolean = function(V) {
      const x3 = Boolean(V);
      return x3;
    };
    webidl.converters.any = function(V) {
      return V;
    };
    webidl.converters["long long"] = function(V, prefix, argument) {
      const x3 = webidl.util.ConvertToInt(V, 64, "signed", 0, prefix, argument);
      return x3;
    };
    webidl.converters["unsigned long long"] = function(V, prefix, argument) {
      const x3 = webidl.util.ConvertToInt(V, 64, "unsigned", 0, prefix, argument);
      return x3;
    };
    webidl.converters["unsigned long"] = function(V, prefix, argument) {
      const x3 = webidl.util.ConvertToInt(V, 32, "unsigned", 0, prefix, argument);
      return x3;
    };
    webidl.converters["unsigned short"] = function(V, prefix, argument, flags) {
      const x3 = webidl.util.ConvertToInt(V, 16, "unsigned", flags, prefix, argument);
      return x3;
    };
    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
    };
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/undici/7.29.0/82a11f569634ba40cb43639a3bacb079ecc63f257fd03395a1e4e8454d841fb0/node_modules/undici/lib/web/fetch/util.js
var require_util5 = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/undici/7.29.0/82a11f569634ba40cb43639a3bacb079ecc63f257fd03395a1e4e8454d841fb0/node_modules/undici/lib/web/fetch/util.js"(exports2, module2) {
    "use strict";
    var { Transform: Transform2 } = __require("node:stream");
    var zlib2 = __require("node:zlib");
    var { redirectStatusSet, referrerPolicyTokens, badPortsSet } = require_constants13();
    var { getGlobalOrigin } = require_global();
    var { collectAnHTTPQuotedString, parseMIMEType } = require_data_url();
    var { performance: performance2 } = __require("node:perf_hooks");
    var { ReadableStreamFrom, isValidHTTPToken, normalizedMethodRecordsBase } = require_util4();
    var assert13 = __require("node:assert");
    var { isUint8Array: isUint8Array3 } = __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 i4 = 0; i4 < url7.length; ++i4) {
        const code = url7.charCodeAt(i4);
        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 i4 = 0; i4 < statusText.length; ++i4) {
        const c3 = statusText.charCodeAt(i4);
        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 i4 = policyHeader.length; i4 !== 0; i4--) {
          const token = policyHeader[i4 - 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(A2, B) {
      if (A2.origin === B.origin && A2.origin === "null") {
        return true;
      }
      if (A2.protocol === B.protocol && A2.hostname === B.hostname && A2.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(method2) {
      return normalizedMethodRecordsBase[method2.toLowerCase()] ?? method2;
    }
    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 index2 = this.#index;
          const values = kInternalIterator(this.#target);
          const len = values.length;
          if (index2 >= len) {
            return {
              value: void 0,
              done: true
            };
          }
          const { [keyIndex]: key, [valueIndex]: value } = values[index2];
          this.#index = index2 + 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 (err2) {
        if (!err2.message.includes("Controller is already closed") && !err2.message.includes("ReadableStream is already closed")) {
          throw err2;
        }
      }
    }
    async function readAllBytes(reader, successSteps, failureSteps) {
      try {
        const bytes = [];
        let byteLength2 = 0;
        do {
          const { done, value: chunk } = await reader.read();
          if (done) {
            successSteps(Buffer.concat(bytes, byteLength2));
            return;
          }
          if (!isUint8Array3(chunk)) {
            failureSteps(new TypeError("Received non-Uint8Array chunk"));
            return;
          }
          bytes.push(chunk);
          byteLength2 += 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 ? zlib2.createInflate(this.#zlibOptions) : zlib2.createInflateRaw(this.#zlibOptions);
          this._inflateStream.on("data", this.push.bind(this));
          this._inflateStream.on("end", () => this.push(null));
          this._inflateStream.on("error", (err2) => this.destroy(err2));
        }
        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
    };
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/undici/7.29.0/82a11f569634ba40cb43639a3bacb079ecc63f257fd03395a1e4e8454d841fb0/node_modules/undici/lib/web/fetch/formdata.js
var require_formdata = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/undici/7.29.0/82a11f569634ba40cb43639a3bacb079ecc63f257fd03395a1e4e8454d841fb0/node_modules/undici/lib/web/fetch/formdata.js"(exports2, module2) {
    "use strict";
    var { iteratorMixin } = require_util5();
    var { kEnumerableProperty } = require_util4();
    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 };
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/undici/7.29.0/82a11f569634ba40cb43639a3bacb079ecc63f257fd03395a1e4e8454d841fb0/node_modules/undici/lib/web/fetch/formdata-parser.js
var require_formdata_parser = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/undici/7.29.0/82a11f569634ba40cb43639a3bacb079ecc63f257fd03395a1e4e8454d841fb0/node_modules/undici/lib/web/fetch/formdata-parser.js"(exports2, module2) {
    "use strict";
    var { bufferToLowerCasedHeaderName } = require_util4();
    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 i4 = 0; i4 < chars.length; ++i4) {
        if ((chars.charCodeAt(i4) & ~127) !== 0) {
          return false;
        }
      }
      return true;
    }
    function validateBoundary(boundary) {
      const length = boundary.length;
      if (length < 27 || length > 70) {
        return false;
      }
      for (let i4 = 0; i4 < length; ++i4) {
        const cp = boundary.charCodeAt(i4);
        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, extended: isExtended };
    }
    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;
            let filenameIsExtended = false;
            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") {
                if (attribute.extended) {
                  filename = attribute.value;
                  filenameIsExtended = true;
                } else if (!filenameIsExtended) {
                  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 i4 = 0; i4 < start.length; i4++) {
        if (start[i4] !== buffer3[position3.position + i4]) {
          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
    };
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/undici/7.29.0/82a11f569634ba40cb43639a3bacb079ecc63f257fd03395a1e4e8454d841fb0/node_modules/undici/lib/util/promise.js
var require_promise = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/undici/7.29.0/82a11f569634ba40cb43639a3bacb079ecc63f257fd03395a1e4e8454d841fb0/node_modules/undici/lib/util/promise.js"(exports2, module2) {
    "use strict";
    function createDeferredPromise() {
      let res;
      let rej;
      const promise2 = new Promise((resolve4, reject3) => {
        res = resolve4;
        rej = reject3;
      });
      return { promise: promise2, resolve: res, reject: rej };
    }
    module2.exports = {
      createDeferredPromise
    };
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/undici/7.29.0/82a11f569634ba40cb43639a3bacb079ecc63f257fd03395a1e4e8454d841fb0/node_modules/undici/lib/web/fetch/body.js
var require_body = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/undici/7.29.0/82a11f569634ba40cb43639a3bacb079ecc63f257fd03395a1e4e8454d841fb0/node_modules/undici/lib/web/fetch/body.js"(exports2, module2) {
    "use strict";
    var util70 = require_util4();
    var {
      ReadableStreamFrom,
      readableStreamClose,
      fullyReadBody,
      extractMimeType
    } = require_util5();
    var { FormData, setFormDataState } = require_formdata();
    var { webidl } = require_webidl();
    var assert13 = __require("node:assert");
    var { isErrored, isDisturbed } = __require("node:stream");
    var { isUint8Array: isUint8Array3 } = __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 random2 = runtimeFeatures.has("crypto") ? __require("node:crypto").randomInt : (max4) => Math.floor(Math.random() * max4);
    var textEncoder4 = 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${`${random2(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 = textEncoder4.encode(prefix + `; name="${formdataEscape(normalizeLinefeeds(name))}"\r
\r
${normalizeLinefeeds(value)}\r
`);
            blobParts.push(chunk2);
            length += chunk2.byteLength;
          } else {
            const chunk2 = textEncoder4.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 = textEncoder4.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 (util70.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" || isUint8Array3(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" ? textEncoder4.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(!util70.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 fd2 = new FormData();
                  setFormDataState(fd2, parsed);
                  return fd2;
                }
                case "application/x-www-form-urlencoded": {
                  const entries = new URLSearchParams(value.toString());
                  const fd2 = new FormData();
                  for (const [name, value2] of entries) {
                    fd2.append(name, value2);
                  }
                  return fd2;
                }
              }
            }
            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 || util70.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
    };
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/undici/7.29.0/82a11f569634ba40cb43639a3bacb079ecc63f257fd03395a1e4e8454d841fb0/node_modules/undici/lib/dispatcher/client-h1.js
var require_client_h1 = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/undici/7.29.0/82a11f569634ba40cb43639a3bacb079ecc63f257fd03395a1e4e8454d841fb0/node_modules/undici/lib/dispatcher/client-h1.js"(exports2, module2) {
    "use strict";
    var assert13 = __require("node:assert");
    var util70 = require_util4();
    var { channels } = require_diagnostics();
    var timers = require_timers();
    var {
      RequestContentLengthMismatchError,
      ResponseContentLengthMismatchError,
      RequestAbortedError,
      InvalidArgumentError,
      HeadersTimeoutError,
      HeadersOverflowError,
      SocketError,
      InformationalError,
      BodyTimeoutError,
      HTTPParserError,
      ResponseExceededMaxSizeError
    } = require_errors4();
    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 constants6 = require_constants12();
    var EMPTY_BUF = Buffer.alloc(0);
    var FastBuffer = Buffer[Symbol.species];
    var removeAllListeners = util70.removeAllListeners;
    var kIdleSocketValidation = /* @__PURE__ */ Symbol("kIdleSocketValidation");
    var kIdleSocketValidationTimeout = /* @__PURE__ */ Symbol("kIdleSocketValidationTimeout");
    var kSocketUsed = /* @__PURE__ */ Symbol("kSocketUsed");
    var extractBody;
    function lazyllhttp() {
      const llhttpWasmData = process.env.JEST_WORKER_ID ? require_llhttp_wasm() : void 0;
      let mod2;
      let useWasmSIMD = process.arch !== "ppc64";
      if (process.env.UNDICI_NO_WASM_SIMD === "1") {
        useWasmSIMD = false;
      } else if (process.env.UNDICI_NO_WASM_SIMD === "0") {
        useWasmSIMD = true;
      }
      if (useWasmSIMD) {
        try {
          mod2 = new WebAssembly.Module(require_llhttp_simd_wasm());
        } catch {
        }
      }
      if (!mod2) {
        mod2 = new WebAssembly.Module(llhttpWasmData || require_llhttp_wasm());
      }
      return new WebAssembly.Instance(mod2, {
        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(constants6.TYPE.RESPONSE);
        this.client = client;
        this.socket = socket;
        this.timeout = null;
        this.timeoutWeakRef = new WeakRef(this);
        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, this.timeoutWeakRef);
            } else {
              this.timeout = setTimeout(onParserTimeout, delay, this.timeoutWeakRef);
              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 !== constants6.ERROR.OK) {
            const data = chunk.subarray(llhttp.llhttp_get_error_pos(this.ptr) - currentBufferPtr);
            if (ret2 === constants6.ERROR.PAUSED_UPGRADE) {
              this.onUpgrade(data);
            } else if (ret2 === constants6.ERROR.PAUSED) {
              this.paused = true;
              socket.unshift(data);
            } else {
              throw this.createError(ret2, data);
            }
          }
        } catch (err2) {
          util70.destroy(socket, err2);
        }
      }
      finish() {
        assert13(currentParser === null);
        assert13(this.ptr != null);
        assert13(!this.paused);
        const { llhttp } = this;
        let ret2;
        try {
          currentParser = this;
          ret2 = llhttp.llhttp_finish(this.ptr);
        } finally {
          currentParser = null;
        }
        if (ret2 === constants6.ERROR.OK) {
          return null;
        }
        if (ret2 === constants6.ERROR.PAUSED || ret2 === constants6.ERROR.PAUSED_UPGRADE) {
          this.paused = true;
          return null;
        }
        return this.createError(ret2, EMPTY_BUF);
      }
      createError(ret2, data) {
        const { llhttp, contentLength, bytesRead } = this;
        if (contentLength && bytesRead !== parseInt(contentLength, 10)) {
          return new ResponseContentLengthMismatchError();
        }
        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() + ")";
        }
        return new HTTPParserError(message, constants6.ERROR[ret2], data);
      }
      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;
        }
        if (client[kRunning] === 0) {
          util70.destroy(socket, new SocketError("bad response", util70.getSocketInfo(socket)));
          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 = util70.bufferToLowerCasedHeaderName(key);
          if (headerName === "keep-alive") {
            this.keepAlive += buf.toString();
          } else if (headerName === "connection") {
            this.connection += buf.toString();
          }
        } else if (key.length === 14 && util70.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) {
          util70.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 (err2) {
          util70.destroy(socket, err2);
        }
        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;
        }
        if (client[kRunning] === 0) {
          util70.destroy(socket, new SocketError("bad response", util70.getSocketInfo(socket)));
          return -1;
        }
        const request = client[kQueue][client[kRunningIdx]];
        if (!request) {
          return -1;
        }
        assert13(!this.upgrade);
        assert13(this.statusCode < 200);
        if (statusCode === 100) {
          util70.destroy(socket, new SocketError("bad response", util70.getSocketInfo(socket)));
          return -1;
        }
        if (upgrade && !request.upgrade) {
          util70.destroy(socket, new SocketError("bad upgrade", util70.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 ? util70.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 ? constants6.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) {
          util70.destroy(socket, new ResponseExceededMaxSizeError());
          return -1;
        }
        this.bytesRead += buf.length;
        if (request.onData(buf) === false) {
          return constants6.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)) {
          util70.destroy(socket, new ResponseContentLengthMismatchError());
          return -1;
        }
        request.onComplete(headers);
        client[kQueue][client[kRunningIdx]++] = null;
        socket[kSocketUsed] = client[kPending] === 0;
        if (socket[kWriting]) {
          assert13(client[kRunning] === 0);
          util70.destroy(socket, new InformationalError("reset"));
          return constants6.ERROR.PAUSED;
        } else if (!shouldKeepAlive) {
          util70.destroy(socket, new InformationalError("reset"));
          return constants6.ERROR.PAUSED;
        } else if (socket[kReset] && client[kRunning] === 0) {
          util70.destroy(socket, new InformationalError("reset"));
          return constants6.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");
          util70.destroy(socket, new HeadersTimeoutError());
        }
      } else if (timeoutType === TIMEOUT_BODY) {
        if (!paused) {
          util70.destroy(socket, new BodyTimeoutError());
        }
      } else if (timeoutType === TIMEOUT_KEEP_ALIVE) {
        assert13(client[kRunning] === 0 && client[kKeepAliveTimeoutValue]);
        util70.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[kIdleSocketValidation] = 0;
      socket[kIdleSocketValidationTimeout] = null;
      socket[kSocketUsed] = false;
      socket[kParser] = new Parser(client, socket, llhttpInstance);
      util70.addListener(socket, "error", onHttpSocketError);
      util70.addListener(socket, "readable", onHttpSocketReadable);
      util70.addListener(socket, "end", onHttpSocketEnd);
      util70.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(err2, callback2) {
          if (socket[kClosed]) {
            queueMicrotask(callback2);
          } else {
            socket.on("close", callback2);
            socket.destroy(err2);
          }
        },
        /**
         * @returns {boolean}
         */
        get destroyed() {
          return socket.destroyed;
        },
        /**
         * @param {import('../core/request.js')} request
         * @returns {boolean}
         */
        busy(request) {
          if (socket[kWriting] || socket[kReset] || socket[kBlocking] || socket[kIdleSocketValidation] === 1) {
            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 && util70.bodyLength(request.body) !== 0 && (util70.isStream(request.body) || util70.isAsyncIterable(request.body) || util70.isFormDataLike(request.body))) {
              return true;
            }
          }
          return false;
        }
      };
    }
    function onHttpSocketError(err2) {
      assert13(err2.code !== "ERR_TLS_CERT_ALTNAME_INVALID");
      const parser = this[kParser];
      if (err2.code === "ECONNRESET" && parser.statusCode && !parser.shouldKeepAlive) {
        const parserErr = parser.finish();
        if (parserErr) {
          this[kError] = parserErr;
          this[kClient][kOnError](parserErr);
        }
        return;
      }
      this[kError] = err2;
      this[kClient][kOnError](err2);
    }
    function onHttpSocketReadable() {
      this[kParser]?.readMore();
    }
    function onHttpSocketEnd() {
      const parser = this[kParser];
      if (parser.statusCode && !parser.shouldKeepAlive) {
        const parserErr = parser.finish();
        if (parserErr) {
          util70.destroy(this, parserErr);
        }
        return;
      }
      util70.destroy(this, new SocketError("other side closed", util70.getSocketInfo(this)));
    }
    function onHttpSocketClose() {
      const parser = this[kParser];
      clearIdleSocketValidation(this);
      if (parser) {
        if (!this[kError] && parser.statusCode && !parser.shouldKeepAlive) {
          this[kError] = parser.finish() || this[kError];
        }
        this[kParser].destroy();
        this[kParser] = null;
      }
      const err2 = this[kError] || new SocketError("closed", util70.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 i4 = 0; i4 < requests.length; i4++) {
          const request = requests[i4];
          util70.errorRequest(client, request, err2);
        }
      } else if (client[kRunning] > 0 && err2.code !== "UND_ERR_INFO") {
        const request = client[kQueue][client[kRunningIdx]];
        client[kQueue][client[kRunningIdx]++] = null;
        util70.errorRequest(client, request, err2);
      }
      client[kPendingIdx] = client[kRunningIdx];
      assert13(client[kRunning] === 0);
      client.emit("disconnect", client[kUrl], [client], err2);
      client[kResume]();
    }
    function onSocketClose() {
      this[kClosed] = true;
    }
    function clearIdleSocketValidation(socket) {
      if (socket[kIdleSocketValidationTimeout]) {
        clearTimeout(socket[kIdleSocketValidationTimeout]);
        socket[kIdleSocketValidationTimeout] = null;
      }
      socket[kIdleSocketValidation] = 0;
    }
    function scheduleIdleSocketValidation(client, socket) {
      socket[kIdleSocketValidation] = 1;
      socket[kIdleSocketValidationTimeout] = setTimeout(() => {
        socket[kIdleSocketValidationTimeout] = null;
        socket[kIdleSocketValidation] = 2;
        if (client[kSocket] === socket && !socket.destroyed) {
          client[kResume]();
        }
      }, 0);
      socket[kIdleSocketValidationTimeout].unref?.();
    }
    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[kRunning] === 0 && client[kPending] > 0 && socket[kSocketUsed]) {
          if (socket[kIdleSocketValidation] === 0) {
            scheduleIdleSocketValidation(client, socket);
            socket[kParser].readMore();
            if (socket.destroyed) {
              return;
            }
            return;
          }
          if (socket[kIdleSocketValidation] === 1) {
            socket[kParser].readMore();
            if (socket.destroyed) {
              return;
            }
            return;
          }
        }
        if (client[kRunning] === 0) {
          socket[kParser].readMore();
          if (socket.destroyed) {
            return;
          }
        }
        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(method2) {
      return method2 !== "GET" && method2 !== "HEAD" && method2 !== "OPTIONS" && method2 !== "TRACE" && method2 !== "CONNECT";
    }
    function writeH1(client, request) {
      const { method: method2, path: path240, host, upgrade, blocking, reset: reset2 } = request;
      let { body, headers, contentLength } = request;
      const expectsPayload = method2 === "PUT" || method2 === "POST" || method2 === "PATCH" || method2 === "QUERY" || method2 === "PROPFIND" || method2 === "PROPPATCH";
      if (util70.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 (util70.isBlobLike(body) && request.contentType == null) {
        const contentType = body.type;
        if (contentType) {
          const contentTypeValue = `${contentType}`;
          if (!util70.isValidHeaderValue(contentTypeValue)) {
            util70.errorRequest(client, request, new InvalidArgumentError("invalid content-type header"));
            return false;
          }
          headers.push("content-type", contentTypeValue);
        }
      }
      if (body && typeof body.read === "function") {
        body.read(0);
      }
      const bodyLength = util70.bodyLength(body);
      contentLength = bodyLength ?? contentLength;
      if (contentLength === null) {
        contentLength = request.contentLength;
      }
      if (contentLength === 0 && !expectsPayload) {
        contentLength = null;
      }
      if (shouldSendContentLength(method2) && contentLength > 0 && request.contentLength !== null && request.contentLength !== contentLength) {
        if (client[kStrictContentLength]) {
          util70.errorRequest(client, request, new RequestContentLengthMismatchError());
          return false;
        }
        process.emitWarning(new RequestContentLengthMismatchError());
      }
      const socket = client[kSocket];
      clearIdleSocketValidation(socket);
      const abort = (err2) => {
        if (request.aborted || request.completed) {
          return;
        }
        util70.errorRequest(client, request, err2 || new RequestAbortedError());
        util70.destroy(body);
        util70.destroy(socket, new InformationalError("aborted"));
      };
      try {
        request.onConnect(abort);
      } catch (err2) {
        util70.errorRequest(client, request, err2);
      }
      if (request.aborted) {
        return false;
      }
      if (method2 === "HEAD") {
        socket[kReset] = true;
      }
      if (upgrade || method2 === "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 = `${method2} ${path240} 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 i4 = 0; i4 < val.length; i4++) {
              header += `${key}: ${val[i4]}\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 (util70.isBuffer(body)) {
        writeBuffer2(abort, body, client, request, socket, contentLength, header, expectsPayload);
      } else if (util70.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 (util70.isStream(body)) {
        writeStream(abort, body, client, request, socket, contentLength, header, expectsPayload);
      } else if (util70.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 (err2) {
          util70.destroy(this, err2);
        }
      };
      const onDrain = function() {
        if (finished7) {
          return;
        }
        if (body.resume) {
          body.resume();
        }
      };
      const onClose = function() {
        queueMicrotask(() => {
          body.removeListener("error", onFinished);
        });
        if (!finished7) {
          const err2 = new RequestAbortedError();
          queueMicrotask(() => onFinished(err2));
        }
      };
      const onFinished = function(err2) {
        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 (!err2) {
          try {
            writer.end();
          } catch (er) {
            err2 = er;
          }
        }
        writer.destroy(err2);
        if (err2 && (err2.code !== "UND_ERR_INFO" || err2.message !== "reset")) {
          util70.destroy(body, err2);
        } else {
          util70.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 (util70.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 (err2) {
        abort(err2);
      }
    }
    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 (err2) {
        abort(err2);
      }
    }
    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((resolve4, reject3) => {
        assert13(callback2 === null);
        if (socket[kError]) {
          reject3(socket[kError]);
        } else {
          callback2 = resolve4;
        }
      });
      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 (err2) {
        writer.destroy(err2);
      } 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(err2) {
        const { socket, client, abort } = this;
        socket[kWriting] = false;
        if (err2) {
          assert13(client[kRunning] <= 1, "pipeline should only contain this request");
          abort(err2);
        }
      }
    };
    module2.exports = connectH1;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/undici/7.29.0/82a11f569634ba40cb43639a3bacb079ecc63f257fd03395a1e4e8454d841fb0/node_modules/undici/lib/dispatcher/client-h2.js
var require_client_h2 = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/undici/7.29.0/82a11f569634ba40cb43639a3bacb079ecc63f257fd03395a1e4e8454d841fb0/node_modules/undici/lib/dispatcher/client-h2.js"(exports2, module2) {
    "use strict";
    var assert13 = __require("node:assert");
    var { pipeline: pipeline2 } = __require("node:stream");
    var util70 = require_util4();
    var {
      RequestContentLengthMismatchError,
      RequestAbortedError,
      SocketError,
      InformationalError,
      InvalidArgumentError
    } = require_errors4();
    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) {
        util70.addListener(session, "connect", applyConnectionWindowSize.bind(session, http2ConnectionWindowSize));
      }
      util70.addListener(session, "error", onHttp2SessionError);
      util70.addListener(session, "frameError", onHttp2FrameError);
      util70.addListener(session, "end", onHttp2SessionEnd);
      util70.addListener(session, "goaway", onHttp2SessionGoAway);
      util70.addListener(session, "close", onHttp2SessionClose);
      util70.addListener(session, "remoteSettings", onHttp2RemoteSettings);
      session.unref();
      client[kHTTP2Session] = session;
      socket[kHTTP2Session] = session;
      util70.addListener(socket, "error", onHttp2SocketError);
      util70.addListener(socket, "end", onHttp2SocketEnd);
      util70.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(err2, callback2) {
          if (socket[kClosed]) {
            queueMicrotask(callback2);
          } else {
            socket.destroy(err2).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 (util70.bodyLength(request.body) !== 0 && (util70.isStream(request.body) || util70.isAsyncIterable(request.body) || util70.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 err2 = new InformationalError("HTTP/2: Server disabled extended CONNECT protocol against RFC-8441");
        this[kSocket][kError] = err2;
        this[kClient][kOnError](err2);
        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(err2, duration) {
        const client = this[kClient];
        const socket = this[kClient];
        if (err2 != null) {
          const error = new InformationalError(`HTTP/2: "PING" errored - type ${err2.message}`);
          socket[kError] = error;
          client[kOnError](error);
        } else {
          client.emit("ping", duration);
        }
      }
    }
    function onHttp2SessionError(err2) {
      assert13(err2.code !== "ERR_TLS_CERT_ALTNAME_INVALID");
      this[kSocket][kError] = err2;
      this[kClient][kOnError](err2);
    }
    function onHttp2FrameError(type4, code, id) {
      if (id === 0) {
        const err2 = new InformationalError(`HTTP/2: "frameError" received - type ${type4}, code ${code}`);
        this[kSocket][kError] = err2;
        this[kClient][kOnError](err2);
      }
    }
    function onHttp2SessionEnd() {
      const err2 = new SocketError("other side closed", util70.getSocketInfo(this[kSocket]));
      this.destroy(err2);
      util70.destroy(this[kSocket], err2);
    }
    function onHttp2SessionGoAway(errorCode) {
      const err2 = this[kError] || new SocketError(`HTTP/2: "GOAWAY" frame received with code ${errorCode}`, util70.getSocketInfo(this[kSocket]));
      const client = this[kClient];
      client[kSocket] = null;
      client[kHTTPContext] = null;
      this.close();
      this[kHTTP2Session] = null;
      util70.destroy(this[kSocket], err2);
      if (client[kRunningIdx] < client[kQueue].length) {
        const request = client[kQueue][client[kRunningIdx]];
        client[kQueue][client[kRunningIdx]++] = null;
        util70.errorRequest(client, request, err2);
        client[kPendingIdx] = client[kRunningIdx];
      }
      assert13(client[kRunning] === 0);
      client.emit("disconnect", client[kUrl], [client], err2);
      client.emit("connectionError", client[kUrl], [client], err2);
      client[kResume]();
    }
    function onHttp2SessionClose() {
      const { [kClient]: client, [kHTTP2SessionState]: state } = this;
      const { [kSocket]: socket } = client;
      const err2 = this[kSocket][kError] || this[kError] || new SocketError("closed", util70.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 i4 = 0; i4 < requests.length; i4++) {
          const request = requests[i4];
          util70.errorRequest(client, request, err2);
        }
      }
    }
    function onHttp2SocketClose() {
      const err2 = this[kError] || new SocketError("closed", util70.getSocketInfo(this));
      const client = this[kHTTP2Session][kClient];
      client[kSocket] = null;
      client[kHTTPContext] = null;
      if (this[kHTTP2Session] !== null) {
        this[kHTTP2Session].destroy(err2);
      }
      client[kPendingIdx] = client[kRunningIdx];
      assert13(client[kRunning] === 0);
      client.emit("disconnect", client[kUrl], [client], err2);
      client[kResume]();
    }
    function onHttp2SocketError(err2) {
      assert13(err2.code !== "ERR_TLS_CERT_ALTNAME_INVALID");
      this[kError] = err2;
      this[kClient][kOnError](err2);
    }
    function onHttp2SocketEnd() {
      util70.destroy(this, new SocketError("other side closed", util70.getSocketInfo(this)));
    }
    function onSocketClose() {
      this[kClosed] = true;
    }
    function shouldSendContentLength(method2) {
      return method2 !== "GET" && method2 !== "HEAD" && method2 !== "OPTIONS" && method2 !== "TRACE" && method2 !== "CONNECT";
    }
    function writeH2(client, request) {
      const requestTimeout = request.bodyTimeout ?? client[kBodyTimeout];
      const session = client[kHTTP2Session];
      const { method: method2, path: path240, host, upgrade, expectContinue, signal, protocol, headers: reqHeaders } = request;
      let { body } = request;
      if (upgrade != null && upgrade !== "websocket") {
        util70.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 i4 = 0; i4 < val.length; i4++) {
            if (headers[key]) {
              headers[key] += `, ${val[i4]}`;
            } else {
              headers[key] = val[i4];
            }
          }
        } 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] = method2;
      const abort = (err2) => {
        if (request.aborted || request.completed) {
          return;
        }
        err2 = err2 || new RequestAbortedError();
        util70.errorRequest(client, request, err2);
        if (stream2 != null) {
          stream2.removeAllListeners("data");
          stream2.close();
          client[kOnError](err2);
          client[kResume]();
        }
        util70.destroy(body, err2);
      };
      try {
        request.onConnect(abort);
      } catch (err2) {
        util70.errorRequest(client, request, err2);
      }
      if (request.aborted) {
        return false;
      }
      if (upgrade || method2 === "CONNECT") {
        session.ref();
        if (upgrade === "websocket") {
          if (session[kEnableConnectProtocol] === false) {
            util70.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] = path240;
          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] = path240;
      headers[HTTP2_HEADER_SCHEME] = protocol === "http:" ? "http" : "https";
      const expectsPayload = method2 === "PUT" || method2 === "POST" || method2 === "PATCH";
      if (body && typeof body.read === "function") {
        body.read(0);
      }
      let contentLength = util70.bodyLength(body);
      if (util70.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(method2) && contentLength > 0 && request.contentLength != null && request.contentLength !== contentLength) {
        if (client[kStrictContentLength]) {
          util70.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 = method2 === "GET" || method2 === "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(err2) {
        stream2.removeAllListeners("data");
        abort(err2);
      });
      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 err2 = new InformationalError(`HTTP/2: "stream timeout after ${requestTimeout}"`);
        stream2.removeAllListeners("data");
        session[kOpenStreams] -= 1;
        if (session[kOpenStreams] === 0) {
          session.unref();
        }
        abort(err2);
      });
      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 (util70.isBuffer(body)) {
          writeBuffer2(
            abort,
            stream2,
            body,
            client,
            request,
            client[kSocket],
            contentLength,
            expectsPayload
          );
        } else if (util70.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 (util70.isStream(body)) {
          writeStream(
            abort,
            client[kSocket],
            expectsPayload,
            stream2,
            body,
            client,
            request,
            contentLength
          );
        } else if (util70.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 && util70.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 pipe3 = pipeline2(
        body,
        h2stream,
        (err2) => {
          if (err2) {
            util70.destroy(pipe3, err2);
            abort(err2);
          } else {
            util70.removeAllListeners(pipe3);
            request.onRequestSent();
            if (!expectsPayload) {
              socket[kReset] = true;
            }
            client[kResume]();
          }
        }
      );
      util70.addListener(pipe3, "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 (err2) {
        abort(err2);
      }
    }
    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((resolve4, reject3) => {
        assert13(callback2 === null);
        if (socket[kError]) {
          reject3(socket[kError]);
        } else {
          callback2 = resolve4;
        }
      });
      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 (err2) {
        abort(err2);
      } finally {
        h2stream.off("close", onDrain).off("drain", onDrain);
      }
    }
    module2.exports = connectH2;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/undici/7.29.0/82a11f569634ba40cb43639a3bacb079ecc63f257fd03395a1e4e8454d841fb0/node_modules/undici/lib/dispatcher/client.js
var require_client = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/undici/7.29.0/82a11f569634ba40cb43639a3bacb079ecc63f257fd03395a1e4e8454d841fb0/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 util70 = require_util4();
    var { ClientStats } = require_stats();
    var { channels } = require_diagnostics();
    var Request = require_request();
    var DispatcherBase = require_dispatcher_base();
    var {
      InvalidArgumentError,
      InformationalError,
      ClientDestroyedError
    } = require_errors4();
    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,
        webSocket
      } = {}) {
        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({ webSocket });
        if (typeof connect2 !== "function") {
          connect2 = buildConnector({
            ...tls2,
            maxCachedSessions,
            allowH2,
            useH2c,
            socketPath,
            timeout: connectTimeout,
            ...typeof autoSelectFamily === "boolean" ? { autoSelectFamily, autoSelectFamilyAttemptTimeout } : void 0,
            ...connect2
          });
        } else {
          const customConnect = connect2;
          connect2 = (opts3, callback2) => customConnect({
            ...opts3,
            ...socketPath != null ? { socketPath } : null,
            ...allowH2 != null ? { allowH2 } : null
          }, callback2);
        }
        this[kUrl] = util70.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] = (err2) => onError(this, err2);
      }
      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](opts3, handler83) {
        const request = new Request(this[kUrl].origin, opts3, handler83);
        this[kQueue].push(request);
        if (this[kResuming]) {
        } else if (util70.bodyLength(request.body) == null && util70.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((resolve4) => {
          if (this[kSize]) {
            this[kClosedResolve] = resolve4;
          } else {
            resolve4(null);
          }
        });
      }
      [kDestroy](err2) {
        return new Promise((resolve4) => {
          const requests = this[kQueue].splice(this[kPendingIdx]);
          for (let i4 = 0; i4 < requests.length; i4++) {
            const request = requests[i4];
            util70.errorRequest(this, request, err2);
          }
          const callback2 = () => {
            if (this[kClosedResolve]) {
              this[kClosedResolve]();
              this[kClosedResolve] = null;
            }
            resolve4(null);
          };
          if (this[kHTTPContext]) {
            this[kHTTPContext].destroy(err2, callback2);
            this[kHTTPContext] = null;
          } else {
            queueMicrotask(callback2);
          }
          this[kResume]();
        });
      }
    };
    function onError(client, err2) {
      if (client[kRunning] === 0 && err2.code !== "UND_ERR_INFO" && err2.code !== "UND_ERR_SOCKET") {
        assert13(client[kPendingIdx] === client[kRunningIdx]);
        const requests = client[kQueue].splice(client[kRunningIdx]);
        for (let i4 = 0; i4 < requests.length; i4++) {
          const request = requests[i4];
          util70.errorRequest(client, request, err2);
        }
        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]
        }, (err2, socket) => {
          if (err2) {
            handleConnectError(client, err2, { host, hostname, protocol, port });
            client[kResume]();
            return;
          }
          if (client.destroyed) {
            util70.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 (err3) {
            socket.destroy().on("error", noop5);
            handleConnectError(client, err3, { 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 (err2) {
        handleConnectError(client, err2, { host, hostname, protocol, port });
        client[kResume]();
      }
    }
    function handleConnectError(client, err2, { 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: err2
        });
      }
      if (err2.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]++];
          util70.errorRequest(client, request, err2);
        }
      } else {
        onError(client, err2);
      }
      client.emit("connectionError", client[kUrl], [client], err2);
    }
    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;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/undici/7.29.0/82a11f569634ba40cb43639a3bacb079ecc63f257fd03395a1e4e8454d841fb0/node_modules/undici/lib/dispatcher/fixed-queue.js
var require_fixed_queue = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/undici/7.29.0/82a11f569634ba40cb43639a3bacb079ecc63f257fd03395a1e4e8454d841fb0/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;
      }
    };
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/undici/7.29.0/82a11f569634ba40cb43639a3bacb079ecc63f257fd03395a1e4e8454d841fb0/node_modules/undici/lib/dispatcher/pool-base.js
var require_pool_base = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/undici/7.29.0/82a11f569634ba40cb43639a3bacb079ecc63f257fd03395a1e4e8454d841fb0/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 i4 = 0; i4 < this[kClients].length; i4++) {
            const client2 = this[kClients][i4];
            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, err2) => {
        this.emit("disconnect", origin, [this, ...targets], err2);
      };
      [kOnConnectionError] = (origin, targets, err2) => {
        this.emit("connectionError", origin, [this, ...targets], err2);
      };
      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 i4 = 0; i4 < this[kClients].length; i4++) {
            const client = this[kClients][i4];
            if (!client.destroyed) {
              closeAll.push(client.close());
            }
          }
          return Promise.all(closeAll);
        } else {
          return new Promise((resolve4) => {
            this[kClosedResolve] = resolve4;
          });
        }
      }
      [kDestroy](err2) {
        while (true) {
          const item = this[kQueue].shift();
          if (!item) {
            break;
          }
          item.handler.onError(err2);
        }
        const destroyAll = new Array(this[kClients].length);
        for (let i4 = 0; i4 < this[kClients].length; i4++) {
          destroyAll[i4] = this[kClients][i4].destroy(err2);
        }
        return Promise.all(destroyAll);
      }
      [kDispatch](opts3, handler83) {
        const dispatcher = this[kGetDispatcher]();
        if (!dispatcher) {
          this[kNeedDrain] = true;
          this[kQueue].push({ opts: opts3, handler: handler83 });
          this[kQueued]++;
        } else if (!dispatcher.dispatch(opts3, handler83)) {
          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
    };
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/undici/7.29.0/82a11f569634ba40cb43639a3bacb079ecc63f257fd03395a1e4e8454d841fb0/node_modules/undici/lib/dispatcher/pool.js
var require_pool = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/undici/7.29.0/82a11f569634ba40cb43639a3bacb079ecc63f257fd03395a1e4e8454d841fb0/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_errors4();
    var util70 = require_util4();
    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, opts3) {
      return new Client(origin, opts3);
    }
    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(options);
        this[kConnections] = connections || null;
        this[kUrl] = util70.parseOrigin(origin);
        this[kOptions] = { ...util70.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;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/undici/7.29.0/82a11f569634ba40cb43639a3bacb079ecc63f257fd03395a1e4e8454d841fb0/node_modules/undici/lib/dispatcher/balanced-pool.js
var require_balanced_pool = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/undici/7.29.0/82a11f569634ba40cb43639a3bacb079ecc63f257fd03395a1e4e8454d841fb0/node_modules/undici/lib/dispatcher/balanced-pool.js"(exports2, module2) {
    "use strict";
    var {
      BalancedPoolMissingUpstreamError,
      InvalidArgumentError
    } = require_errors4();
    var {
      PoolBase,
      kClients,
      kNeedDrain,
      kAddClient,
      kRemoveClient,
      kGetDispatcher
    } = require_pool_base();
    var Pool = require_pool();
    var { kUrl } = require_symbols();
    var util70 = require_util4();
    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, opts3) {
      return new Pool(origin, opts3);
    }
    var BalancedPool = class extends PoolBase {
      constructor(upstreams = [], { factory = defaultFactory, ...opts3 } = {}) {
        if (typeof factory !== "function") {
          throw new InvalidArgumentError("factory must be a function.");
        }
        super(opts3);
        this[kOptions] = { ...util70.deepClone(opts3) };
        this[kOptions].interceptors = opts3.interceptors ? { ...opts3.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 = util70.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 err2 = args[2];
          if (err2 && err2.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 i4 = 0; i4 < this[kClients].length; i4++) {
          result2 = getGreatestCommonDivisor(this[kClients][i4][kWeight], result2);
        }
        this[kGreatestCommonDivisor] = result2;
      }
      removeUpstream(upstream) {
        const upstreamOrigin = util70.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 = util70.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;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/undici/7.29.0/82a11f569634ba40cb43639a3bacb079ecc63f257fd03395a1e4e8454d841fb0/node_modules/undici/lib/dispatcher/round-robin-pool.js
var require_round_robin_pool = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/undici/7.29.0/82a11f569634ba40cb43639a3bacb079ecc63f257fd03395a1e4e8454d841fb0/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_errors4();
    var util70 = require_util4();
    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, opts3) {
      return new Client(origin, opts3);
    }
    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] = util70.parseOrigin(origin);
        this[kOptions] = { ...util70.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;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/undici/7.29.0/82a11f569634ba40cb43639a3bacb079ecc63f257fd03395a1e4e8454d841fb0/node_modules/undici/lib/dispatcher/agent.js
var require_agent = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/undici/7.29.0/82a11f569634ba40cb43639a3bacb079ecc63f257fd03395a1e4e8454d841fb0/node_modules/undici/lib/dispatcher/agent.js"(exports2, module2) {
    "use strict";
    var { InvalidArgumentError, MaxOriginsReachedError } = require_errors4();
    var { kClients, kRunning, kClose, kDestroy, kDispatch, kUrl } = require_symbols();
    var DispatcherBase = require_dispatcher_base();
    var Pool = require_pool();
    var Client = require_client();
    var util70 = require_util4();
    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, opts3) {
      return opts3 && opts3.connections === 1 ? new Client(origin, opts3) : new Pool(origin, opts3);
    }
    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(options);
        if (connect && typeof connect !== "function") {
          connect = { ...connect };
        }
        this[kOptions] = { ...util70.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, err2) => {
          this.emit("disconnect", origin, [this, ...targets], err2);
        };
        this[kOnConnectionError] = (origin, targets, err2) => {
          this.emit("connectionError", origin, [this, ...targets], err2);
        };
      }
      get [kRunning]() {
        let ret2 = 0;
        for (const { dispatcher } of this[kClients].values()) {
          ret2 += dispatcher[kRunning];
        }
        return ret2;
      }
      [kDispatch](opts3, handler83) {
        let key;
        if (opts3.origin && (typeof opts3.origin === "string" || opts3.origin instanceof URL)) {
          key = String(opts3.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](opts3.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, err2) => {
            closeClientIfUnused(true);
            this[kOnDisconnect](origin, targets, err2);
          }).on("connectionError", (origin, targets, err2) => {
            closeClientIfUnused(false);
            this[kOnConnectionError](origin, targets, err2);
          });
          this[kClients].set(key, { count: 0, dispatcher });
          this[kOrigins].add(key);
        }
        return dispatcher.dispatch(opts3, handler83);
      }
      [kClose]() {
        const closePromises = [];
        for (const { dispatcher } of this[kClients].values()) {
          closePromises.push(dispatcher.close());
        }
        this[kClients].clear();
        return Promise.all(closePromises);
      }
      [kDestroy](err2) {
        const destroyPromises = [];
        for (const { dispatcher } of this[kClients].values()) {
          destroyPromises.push(dispatcher.destroy(err2));
        }
        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;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/undici/7.29.0/82a11f569634ba40cb43639a3bacb079ecc63f257fd03395a1e4e8454d841fb0/node_modules/undici/lib/core/socks5-utils.js
var require_socks5_utils = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/undici/7.29.0/82a11f569634ba40cb43639a3bacb079ecc63f257fd03395a1e4e8454d841fb0/node_modules/undici/lib/core/socks5-utils.js"(exports2, module2) {
    "use strict";
    var { Buffer: Buffer6 } = __require("node:buffer");
    var net = __require("node:net");
    var { InvalidArgumentError } = require_errors4();
    function parseAddress(address) {
      if (net.isIPv4(address)) {
        const parts = address.split(".").map(Number);
        return {
          type: 1,
          // IPv4
          buffer: Buffer6.from(parts)
        };
      }
      if (net.isIPv6(address)) {
        return {
          type: 4,
          // IPv6
          buffer: parseIPv6(address)
        };
      }
      const domainBuffer = Buffer6.from(address, "utf8");
      if (domainBuffer.length > 255) {
        throw new InvalidArgumentError("Domain name too long (max 255 bytes)");
      }
      return {
        type: 3,
        // Domain
        buffer: Buffer6.concat([Buffer6.from([domainBuffer.length]), domainBuffer])
      };
    }
    function parseIPv6(address) {
      const buffer3 = Buffer6.alloc(16);
      let normalizedAddress = address;
      if (address.includes(".")) {
        const lastColonIndex = address.lastIndexOf(":");
        const ipv4Part = address.slice(lastColonIndex + 1);
        if (net.isIPv4(ipv4Part)) {
          const octets = ipv4Part.split(".").map(Number);
          const high = (octets[0] << 8 | octets[1]).toString(16);
          const low = (octets[2] << 8 | octets[3]).toString(16);
          normalizedAddress = `${address.slice(0, lastColonIndex)}:${high}:${low}`;
        }
      }
      const doubleColonIndex = normalizedAddress.indexOf("::");
      if (doubleColonIndex !== -1) {
        const before = normalizedAddress.slice(0, doubleColonIndex);
        const after = normalizedAddress.slice(doubleColonIndex + 2);
        const beforeParts = before === "" ? [] : before.split(":");
        const afterParts = after === "" ? [] : after.split(":");
        let bufferIndex = 0;
        for (const part of beforeParts) {
          buffer3.writeUInt16BE(parseInt(part, 16), bufferIndex);
          bufferIndex += 2;
        }
        bufferIndex = 16 - afterParts.length * 2;
        for (const part of afterParts) {
          buffer3.writeUInt16BE(parseInt(part, 16), bufferIndex);
          bufferIndex += 2;
        }
      } else {
        const parts = normalizedAddress.split(":");
        for (let i4 = 0; i4 < parts.length; i4++) {
          buffer3.writeUInt16BE(parseInt(parts[i4], 16), i4 * 2);
        }
      }
      return buffer3;
    }
    function buildAddressBuffer(type4, addressBuffer, port) {
      const portBuffer = Buffer6.allocUnsafe(2);
      portBuffer.writeUInt16BE(port, 0);
      return Buffer6.concat([
        Buffer6.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 i4 = 0; i4 < 8; i4++) {
            const value = buffer3.readUInt16BE(currentOffset + i4 * 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
    };
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/undici/7.29.0/82a11f569634ba40cb43639a3bacb079ecc63f257fd03395a1e4e8454d841fb0/node_modules/undici/lib/core/socks5-client.js
var require_socks5_client = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/undici/7.29.0/82a11f569634ba40cb43639a3bacb079ecc63f257fd03395a1e4e8454d841fb0/node_modules/undici/lib/core/socks5-client.js"(exports2, module2) {
    "use strict";
    var { EventEmitter: EventEmitter4 } = __require("node:events");
    var { Buffer: Buffer6 } = __require("node:buffer");
    var { InvalidArgumentError, Socks5ProxyError } = require_errors4();
    var { debuglog: debuglog2 } = __require("node:util");
    var { parseAddress } = require_socks5_utils();
    var debug = debuglog2("undici:socks5");
    var EMPTY_BUFFER = Buffer6.alloc(0);
    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",
      AUTHENTICATED: "authenticated",
      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 = EMPTY_BUFFER;
        this.onSocketData = this.onData.bind(this);
        this.onSocketError = this.onError.bind(this);
        this.onSocketClose = this.onClose.bind(this);
        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.onSocketData);
        this.socket.on("error", this.onSocketError);
        this.socket.on("close", this.onSocketClose);
      }
      /**
       * Handle incoming data from the socket
       */
      onData(data) {
        debug("received data", data.length, "bytes in state", this.state);
        this.buffer = Buffer6.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 (err2) {
          this.onError(err2);
        }
      }
      /**
       * Handle socket errors
       */
      onError(err2) {
        debug("socket error", err2);
        this.state = STATES.ERROR;
        this.emit("error", err2);
        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();
        }
      }
      markAuthenticated() {
        this.state = STATES.AUTHENTICATED;
        this.emit("authenticated");
      }
      /**
       * 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 = Buffer6.alloc(2 + this.authMethods.length);
        request[0] = SOCKS_VERSION;
        request[1] = this.authMethods.length;
        this.authMethods.forEach((method2, i4) => {
          request[2 + i4] = method2;
        });
        this.socket.write(request);
      }
      /**
       * Handle handshake response from server
       */
      handleHandshakeResponse() {
        if (this.buffer.length < 2) {
          return;
        }
        const version2 = this.buffer[0];
        const method2 = this.buffer[1];
        if (version2 !== SOCKS_VERSION) {
          throw new Socks5ProxyError(`Invalid SOCKS version: ${version2}`, "UND_ERR_SOCKS5_VERSION");
        }
        if (method2 === 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", method2);
        if (method2 === AUTH_METHODS.NO_AUTH) {
          this.markAuthenticated();
        } else if (method2 === AUTH_METHODS.USERNAME_PASSWORD) {
          this.state = STATES.AUTHENTICATING;
          this.sendAuthRequest();
        } else {
          throw new Socks5ProxyError(`Unsupported authentication method: ${method2}`, "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 = Buffer6.from(username);
        const passwordBuffer = Buffer6.from(password);
        if (usernameBuffer.length > 255 || passwordBuffer.length > 255) {
          throw new InvalidArgumentError("Username or password too long");
        }
        const request = Buffer6.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.markAuthenticated();
      }
      /**
       * Send CONNECT command
       * @param {string} address - Target address (IP or domain)
       * @param {number} port - Target port
       */
      connect(address, port) {
        if (this.state === STATES.CONNECTING || this.state === STATES.CONNECTED) {
          throw new InvalidArgumentError("Connection already in progress");
        }
        if (this.state !== STATES.AUTHENTICATED) {
          throw new InvalidArgumentError("Client must be authenticated before CONNECT");
        }
        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 = Buffer6.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 i4 = 0; i4 < 8; i4++) {
            const value = this.buffer.readUInt16BE(offset + i4 * 2);
            parts.push(value.toString(16));
          }
          boundAddress = parts.join(":");
          offset += 16;
        }
        const boundPort = this.buffer.readUInt16BE(offset);
        this.buffer = EMPTY_BUFFER;
        this.state = STATES.CONNECTED;
        this.socket.removeListener("data", this.onSocketData);
        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
    };
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/undici/7.29.0/82a11f569634ba40cb43639a3bacb079ecc63f257fd03395a1e4e8454d841fb0/node_modules/undici/lib/dispatcher/socks5-proxy-agent.js
var require_socks5_proxy_agent = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/undici/7.29.0/82a11f569634ba40cb43639a3bacb079ecc63f257fd03395a1e4e8454d841fb0/node_modules/undici/lib/dispatcher/socks5-proxy-agent.js"(exports2, module2) {
    "use strict";
    var { URL: URL7 } = __require("node:url");
    var tls2;
    var DispatcherBase = require_dispatcher_base();
    var { InvalidArgumentError } = require_errors4();
    var { Socks5Client, STATES } = 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 kProxyProtocol = /* @__PURE__ */ Symbol("proxy protocol");
    var kPools = /* @__PURE__ */ Symbol("pools");
    var kConnector = /* @__PURE__ */ Symbol("connector");
    var kRequestTls = /* @__PURE__ */ Symbol("request tls settings");
    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[kProxyProtocol] = options.proxyTls ? "https:" : "http:";
        this[kRequestTls] = options.requestTls;
        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[kPools] = /* @__PURE__ */ new Map();
      }
      /**
       * 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((resolve4, reject3) => {
          this[kConnector]({
            hostname: proxyHost,
            host: proxyHost,
            port: proxyPort,
            protocol: this[kProxyProtocol]
          }, (err2, socket2) => {
            if (err2) {
              reject3(err2);
            } else {
              resolve4(socket2);
            }
          });
        });
        const socks5Client = new Socks5Client(socket, this[kProxyAuth]);
        socks5Client.on("error", (err2) => {
          debug("SOCKS5 error:", err2);
          socket.destroy();
        });
        await socks5Client.handshake();
        await new Promise((resolve4, reject3) => {
          const timeout = setTimeout(() => {
            reject3(new Error("SOCKS5 authentication timeout"));
          }, 5e3);
          const onAuthenticated = () => {
            clearTimeout(timeout);
            socks5Client.removeListener("error", onError);
            resolve4();
          };
          const onError = (err2) => {
            clearTimeout(timeout);
            socks5Client.removeListener("authenticated", onAuthenticated);
            reject3(err2);
          };
          if (socks5Client.state === STATES.AUTHENTICATED) {
            clearTimeout(timeout);
            resolve4();
          } else {
            socks5Client.once("authenticated", onAuthenticated);
            socks5Client.once("error", onError);
          }
        });
        await socks5Client.connect(targetHost, targetPort);
        await new Promise((resolve4, 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);
            resolve4();
          };
          const onError = (err2) => {
            clearTimeout(timeout);
            socks5Client.removeListener("connected", onConnected);
            reject3(err2);
          };
          socks5Client.once("connected", onConnected);
          socks5Client.once("error", onError);
        });
        return socket;
      }
      /**
       * Dispatch a request through the SOCKS5 proxy
       */
      [kDispatch](opts3, handler83) {
        const { origin } = opts3;
        debug("dispatching request to", origin, "via SOCKS5");
        try {
          const originKey = String(origin);
          let pool = this[kPools].get(originKey);
          if (!pool || pool.destroyed || pool.closed) {
            pool = new Pool(origin, {
              pipelining: opts3.pipelining,
              connections: opts3.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({
                      ...this[kRequestTls],
                      socket,
                      servername: this[kRequestTls]?.servername || targetHost
                    });
                    await new Promise((resolve4, reject3) => {
                      finalSocket.once("secureConnect", resolve4);
                      finalSocket.once("error", reject3);
                    });
                  }
                  callback2(null, finalSocket);
                } catch (err2) {
                  debug("SOCKS5 connection error:", err2);
                  callback2(err2);
                }
              }
            });
            this[kPools].set(originKey, pool);
          }
          return pool[kDispatch](opts3, handler83);
        } catch (err2) {
          debug("dispatch error:", err2);
          if (typeof handler83.onResponseError === "function") {
            handler83.onResponseError(null, err2);
            return false;
          } else if (typeof handler83.onError === "function") {
            handler83.onError(err2);
            return false;
          } else {
            throw err2;
          }
        }
      }
      async [kClose]() {
        const closePromises = [];
        for (const pool of this[kPools].values()) {
          closePromises.push(pool.close());
        }
        this[kPools].clear();
        await Promise.all(closePromises);
      }
      async [kDestroy](err2) {
        const destroyPromises = [];
        for (const pool of this[kPools].values()) {
          destroyPromises.push(pool.destroy(err2));
        }
        this[kPools].clear();
        await Promise.all(destroyPromises);
      }
    };
    module2.exports = Socks5ProxyAgent;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/undici/7.29.0/82a11f569634ba40cb43639a3bacb079ecc63f257fd03395a1e4e8454d841fb0/node_modules/undici/lib/dispatcher/proxy-agent.js
var require_proxy_agent = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/undici/7.29.0/82a11f569634ba40cb43639a3bacb079ecc63f257fd03395a1e4e8454d841fb0/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_errors4();
    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, opts3) {
      return new Pool(origin, opts3);
    }
    var noop5 = () => {
    };
    function defaultAgentFactory(origin, opts3) {
      if (opts3.connections === 1) {
        return new Client(origin, opts3);
      }
      return new Pool(origin, opts3);
    }
    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](opts3, handler83) {
        const onHeaders = handler83.onHeaders;
        handler83.onHeaders = function(statusCode, data, resume) {
          if (statusCode === 407) {
            if (typeof handler83.onError === "function") {
              handler83.onError(new InvalidArgumentError("Proxy Authentication Required (407)"));
            }
            return;
          }
          if (onHeaders) onHeaders.call(this, statusCode, data, resume);
        };
        const {
          origin,
          path: path240 = "/",
          headers = {}
        } = opts3;
        opts3.path = origin + path240;
        if (!("host" in headers) && !("Host" in headers)) {
          const { host } = new URL(origin);
          headers.host = host;
        }
        opts3.headers = { ...this[kProxyHeaders], ...headers };
        return this.#client[kDispatch](opts3, handler83);
      }
      [kClose]() {
        return this.#client.close();
      }
      [kDestroy](err2) {
        return this.#client.destroy(err2);
      }
    };
    var ProxyAgent2 = class extends DispatcherBase {
      constructor(opts3) {
        if (!opts3 || typeof opts3 === "object" && !(opts3 instanceof URL) && !opts3.uri) {
          throw new InvalidArgumentError("Proxy uri is mandatory");
        }
        const { clientFactory = defaultFactory } = opts3;
        if (typeof clientFactory !== "function") {
          throw new InvalidArgumentError("Proxy opts.clientFactory must be a function.");
        }
        const { proxyTunnel = true } = opts3;
        super();
        const url7 = this.#getUrl(opts3);
        const { href, origin, port, protocol, username, password, hostname: proxyHostname } = url7;
        this[kProxy] = { uri: href, protocol };
        this[kRequestTls] = opts3.requestTls;
        this[kProxyTls] = opts3.proxyTls;
        this[kProxyHeaders] = opts3.headers || {};
        this[kTunnelProxy] = proxyTunnel;
        if (opts3.auth && opts3.token) {
          throw new InvalidArgumentError("opts.auth cannot be used in combination with opts.token");
        } else if (opts3.auth) {
          this[kProxyHeaders]["proxy-authorization"] = `Basic ${opts3.auth}`;
        } else if (opts3.token) {
          this[kProxyHeaders]["proxy-authorization"] = opts3.token;
        } else if (username && password) {
          this[kProxyHeaders]["proxy-authorization"] = `Basic ${Buffer.from(`${decodeURIComponent(username)}:${decodeURIComponent(password)}`).toString("base64")}`;
        }
        const connect = buildConnector({ ...opts3.proxyTls });
        this[kConnectEndpoint] = buildConnector({ ...opts3.requestTls });
        const agentFactory = opts3.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: opts3.username || username,
              password: opts3.password || password,
              proxyTls: opts3.proxyTls,
              requestTls: opts3.requestTls
            });
          }
          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({
          ...opts3,
          factory,
          connect: async (opts4, callback2) => {
            if (!this[kClient]) {
              callback2(new InvalidArgumentError("Cannot establish tunnel connection without a proxy client"));
              return;
            }
            let requestedPath = opts4.host;
            if (!opts4.port) {
              requestedPath += `:${defaultProtocolPort(opts4.protocol)}`;
            }
            try {
              const connectParams = {
                origin,
                port,
                path: requestedPath,
                signal: opts4.signal,
                headers: {
                  ...this[kProxyHeaders],
                  host: opts4.host,
                  ...opts4.connections == null || opts4.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 (opts4.protocol !== "https:") {
                callback2(null, socket);
                return;
              }
              let servername;
              if (this[kRequestTls]) {
                servername = this[kRequestTls].servername;
              } else {
                servername = opts4.servername;
              }
              this[kConnectEndpoint]({ ...opts4, servername, httpSocket: socket }, callback2);
            } catch (err2) {
              if (err2.code === "ERR_TLS_CERT_ALTNAME_INVALID") {
                callback2(new SecureProxyConnectionError(err2));
              } else {
                callback2(err2);
              }
            }
          }
        });
      }
      dispatch(opts3, handler83) {
        const headers = buildHeaders(opts3.headers);
        throwIfProxyAuthIsSent(headers);
        if (headers && !("host" in headers) && !("Host" in headers)) {
          const { host } = new URL(opts3.origin);
          headers.host = host;
        }
        return this[kAgent].dispatch(
          {
            ...opts3,
            headers
          },
          handler83
        );
      }
      /**
       * @param {import('../../types/proxy-agent').ProxyAgent.Options | string | URL} opts
       * @returns {URL}
       */
      #getUrl(opts3) {
        if (typeof opts3 === "string") {
          return new URL(opts3);
        } else if (opts3 instanceof URL) {
          return opts3;
        } else {
          return new URL(opts3.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 i4 = 0; i4 < headers.length; i4 += 2) {
          headersPair[headers[i4]] = headers[i4 + 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;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/undici/7.29.0/82a11f569634ba40cb43639a3bacb079ecc63f257fd03395a1e4e8454d841fb0/node_modules/undici/lib/dispatcher/env-http-proxy-agent.js
var require_env_http_proxy_agent = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/undici/7.29.0/82a11f569634ba40cb43639a3bacb079ecc63f257fd03395a1e4e8454d841fb0/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(opts3 = {}) {
        super();
        this.#opts = opts3;
        const { httpProxy, httpsProxy, noProxy, ...agentOpts } = opts3;
        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](opts3, handler83) {
        const url7 = new URL(opts3.origin);
        const agent = this.#getProxyAgentForUrl(url7);
        return agent.dispatch(opts3, handler83);
      }
      [kClose]() {
        return Promise.all([
          this[kNoProxyAgent].close(),
          !this[kHttpProxyAgent][kClosed] && this[kHttpProxyAgent].close(),
          !this[kHttpsProxyAgent][kClosed] && this[kHttpsProxyAgent].close()
        ]);
      }
      [kDestroy](err2) {
        return Promise.all([
          this[kNoProxyAgent].destroy(err2),
          !this[kHttpProxyAgent][kDestroyed] && this[kHttpProxyAgent].destroy(err2),
          !this[kHttpsProxyAgent][kDestroyed] && this[kHttpsProxyAgent].destroy(err2)
        ]);
      }
      #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 i4 = 0; i4 < this.#noProxyEntries.length; i4++) {
          const entry = this.#noProxyEntries[i4];
          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 i4 = 0; i4 < noProxySplit.length; i4++) {
          const entry = noProxySplit[i4];
          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;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/undici/7.29.0/82a11f569634ba40cb43639a3bacb079ecc63f257fd03395a1e4e8454d841fb0/node_modules/undici/lib/handler/retry-handler.js
var require_retry_handler = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/undici/7.29.0/82a11f569634ba40cb43639a3bacb079ecc63f257fd03395a1e4e8454d841fb0/node_modules/undici/lib/handler/retry-handler.js"(exports2, module2) {
    "use strict";
    var assert13 = __require("node:assert");
    var { kRetryHandlerDefaultRetry } = require_symbols();
    var { RequestRetryError } = require_errors4();
    var WrapHandler = require_wrap_handler();
    var {
      isDisturbed,
      parseRangeHeader,
      wrapRequestBody
    } = require_util4();
    function calculateRetryAfterHeader(retryAfter) {
      const retryTime = new Date(retryAfter).getTime();
      return isNaN(retryTime) ? 0 : retryTime - Date.now();
    }
    function validatePartialResponseContentLength(headers, range, statusCode, retryCount) {
      const contentLength = headers["content-length"];
      if (contentLength == null) {
        return;
      }
      if (!Number.isFinite(range.start) || !Number.isFinite(range.end)) {
        return;
      }
      const length = Number(contentLength);
      const expectedLength = range.end - range.start + 1;
      if (!Number.isFinite(length) || length !== expectedLength) {
        throw new RequestRetryError("Content-Length mismatch", statusCode, {
          headers,
          data: { count: retryCount }
        });
      }
    }
    var RetryHandler = class _RetryHandler {
      constructor(opts3, { dispatch, handler: handler83 }) {
        const { retryOptions, ...dispatchOpts } = opts3;
        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(handler83);
        this.opts = { ...dispatchOpts, body: wrapRequestBody(opts3.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, err2) {
        if (this.retryOpts.throwOnError) {
          if (this.retryOpts.statusCodes.includes(statusCode) === false) {
            this.headersSent = true;
            this.handler.onResponseStart?.(controller, statusCode, headers, statusMessage);
          } else {
            this.error = err2;
          }
          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 = err2;
          controller.resume();
        }
        controller.pause();
        this.retryOpts.retry(
          err2,
          {
            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](err2, { state, opts: opts3 }, cb) {
        const { statusCode, code, headers } = err2;
        const { method: method2, retryOptions } = opts3;
        const {
          maxRetries,
          minTimeout,
          maxTimeout,
          timeoutFactor,
          statusCodes,
          errorCodes,
          methods
        } = retryOptions;
        const { counter } = state;
        if (code && code !== "UND_ERR_REQ_RETRY" && !errorCodes.includes(code)) {
          cb(err2);
          return;
        }
        if (Array.isArray(methods) && !methods.includes(method2)) {
          cb(err2);
          return;
        }
        if (statusCode != null && Array.isArray(statusCodes) && !statusCodes.includes(statusCode)) {
          cb(err2);
          return;
        }
        if (counter > maxRetries) {
          cb(err2);
          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 err2 = new RequestRetryError("Request failed", statusCode, {
            headers,
            data: {
              count: this.retryCount
            }
          });
          this.onResponseStartWithRetry(controller, statusCode, headers, statusMessage, err2);
          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 }
            });
          }
          validatePartialResponseContentLength(headers, contentRange, statusCode, 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;
            }
            validatePartialResponseContentLength(headers, range, statusCode, this.retryCount);
            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 (err2) {
          this.handler.onResponseError?.(controller, err2);
        }
      }
      onResponseError(controller, err2) {
        if (controller?.aborted || isDisturbed(this.opts.body)) {
          this.handler.onResponseError?.(controller, err2);
          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(
          err2,
          {
            state: { counter: this.retryCount },
            opts: { retryOptions: this.retryOpts, ...this.opts }
          },
          shouldRetry.bind(this)
        );
      }
    };
    module2.exports = RetryHandler;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/undici/7.29.0/82a11f569634ba40cb43639a3bacb079ecc63f257fd03395a1e4e8454d841fb0/node_modules/undici/lib/dispatcher/retry-agent.js
var require_retry_agent = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/undici/7.29.0/82a11f569634ba40cb43639a3bacb079ecc63f257fd03395a1e4e8454d841fb0/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(opts3, handler83) {
        const retry5 = new RetryHandler({
          ...opts3,
          retryOptions: this.#options
        }, {
          dispatch: this.#agent.dispatch.bind(this.#agent),
          handler: handler83
        });
        return this.#agent.dispatch(opts3, retry5);
      }
      close() {
        return this.#agent.close();
      }
      destroy() {
        return this.#agent.destroy();
      }
    };
    module2.exports = RetryAgent;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/undici/7.29.0/82a11f569634ba40cb43639a3bacb079ecc63f257fd03395a1e4e8454d841fb0/node_modules/undici/lib/dispatcher/h2c-client.js
var require_h2c_client = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/undici/7.29.0/82a11f569634ba40cb43639a3bacb079ecc63f257fd03395a1e4e8454d841fb0/node_modules/undici/lib/dispatcher/h2c-client.js"(exports2, module2) {
    "use strict";
    var { InvalidArgumentError } = require_errors4();
    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 { maxConcurrentStreams, pipelining, ...opts3 } = 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, {
          ...opts3,
          maxConcurrentStreams: defaultMaxConcurrentStreams,
          pipelining: defaultPipelining,
          allowH2: true,
          useH2c: true
        });
      }
    };
    module2.exports = H2CClient;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/undici/7.29.0/82a11f569634ba40cb43639a3bacb079ecc63f257fd03395a1e4e8454d841fb0/node_modules/undici/lib/api/readable.js
var require_readable = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/undici/7.29.0/82a11f569634ba40cb43639a3bacb079ecc63f257fd03395a1e4e8454d841fb0/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_errors4();
    var util70 = require_util4();
    var { ReadableStreamFrom } = require_util4();
    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(err2, callback2) {
        if (!err2 && !this._readableState.endEmitted) {
          err2 = new RequestAbortedError();
        }
        if (err2) {
          this[kAbort]();
        }
        if (!this[kUsed]) {
          setImmediate(callback2, err2);
        } else {
          callback2(err2);
        }
      }
      /**
       * @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 util70.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(opts3) {
        const signal = opts3?.signal;
        if (signal != null && (typeof signal !== "object" || !("aborted" in signal))) {
          return Promise.reject(new InvalidArgumentError("signal must be an AbortSignal"));
        }
        const limit = opts3?.limit && Number.isFinite(opts3.limit) ? opts3.limit : 128 * 1024;
        if (signal?.aborted) {
          return Promise.reject(signal.reason ?? new AbortError());
        }
        if (this._readableState.closeEmitted) {
          return Promise.resolve(null);
        }
        return new Promise((resolve4, 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 {
                resolve4(null);
              }
            });
          } else {
            this.on("close", resolve4);
          }
          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 util70.isDisturbed(bodyReadable) || isLocked(bodyReadable);
    }
    function consume(stream2, type4) {
      assert13(!stream2[kConsume]);
      return new Promise((resolve4, 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: resolve4,
              reject: reject3,
              length: 0,
              body: []
            };
            stream2.on("error", function(err2) {
              consumeFinish(this[kConsume], err2);
            }).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 i4 = 0; i4 < chunks.length; ++i4) {
        const chunk = chunks[i4];
        buffer3.set(chunk, offset);
        offset += chunk.length;
      }
      return buffer3;
    }
    function consumeEnd(consume2, encoding) {
      const { type: type4, body, resolve: resolve4, stream: stream2, length } = consume2;
      try {
        if (type4 === "text") {
          resolve4(chunksDecode(body, length, encoding));
        } else if (type4 === "json") {
          resolve4(JSON.parse(chunksDecode(body, length, encoding)));
        } else if (type4 === "arrayBuffer") {
          resolve4(chunksConcat(body, length).buffer);
        } else if (type4 === "blob") {
          resolve4(new Blob(body, { type: stream2[kContentType] }));
        } else if (type4 === "bytes") {
          resolve4(chunksConcat(body, length));
        }
        consumeFinish(consume2);
      } catch (err2) {
        stream2.destroy(err2);
      }
    }
    function consumePush(consume2, chunk) {
      consume2.length += chunk.length;
      consume2.body.push(chunk);
    }
    function consumeFinish(consume2, err2) {
      if (consume2.body === null) {
        return;
      }
      if (err2) {
        consume2.reject(err2);
      } 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
    };
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/undici/7.29.0/82a11f569634ba40cb43639a3bacb079ecc63f257fd03395a1e4e8454d841fb0/node_modules/undici/lib/api/api-request.js
var require_api_request = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/undici/7.29.0/82a11f569634ba40cb43639a3bacb079ecc63f257fd03395a1e4e8454d841fb0/node_modules/undici/lib/api/api-request.js"(exports2, module2) {
    "use strict";
    var assert13 = __require("node:assert");
    var { AsyncResource: AsyncResource4 } = __require("node:async_hooks");
    var { Readable: Readable4 } = require_readable();
    var { InvalidArgumentError, RequestAbortedError } = require_errors4();
    var util70 = require_util4();
    function noop5() {
    }
    var RequestHandler = class extends AsyncResource4 {
      constructor(opts3, callback2) {
        if (!opts3 || typeof opts3 !== "object") {
          throw new InvalidArgumentError("invalid opts");
        }
        const { signal, method: method2, opaque, body, onInfo, responseHeaders, highWaterMark } = opts3;
        try {
          if (typeof callback2 !== "function") {
            throw new InvalidArgumentError("invalid callback");
          }
          if (highWaterMark != null && (!Number.isFinite(highWaterMark) || 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 (method2 === "CONNECT") {
            throw new InvalidArgumentError("invalid method");
          }
          if (onInfo && typeof onInfo !== "function") {
            throw new InvalidArgumentError("invalid onInfo callback");
          }
          super("UNDICI_REQUEST");
        } catch (err2) {
          if (util70.isStream(body)) {
            util70.destroy(body.on("error", noop5), err2);
          }
          throw err2;
        }
        this.method = method2;
        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 = util70.addAbortListener(signal, () => {
            this.reason = signal.reason ?? new RequestAbortedError();
            if (this.res) {
              util70.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" ? util70.parseRawHeaders(rawHeaders) : util70.parseHeaders(rawHeaders);
        if (statusCode < 200) {
          if (this.onInfo) {
            this.onInfo({ statusCode, headers });
          }
          return;
        }
        const parsedHeaders = responseHeaders === "raw" ? util70.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 (err2) {
            this.res = null;
            util70.destroy(res.on("error", noop5), err2);
            queueMicrotask(() => {
              throw err2;
            });
          }
        }
      }
      onData(chunk) {
        return this.res.push(chunk);
      }
      onComplete(trailers) {
        util70.parseHeaders(trailers, this.trailers);
        this.res.push(null);
      }
      onError(err2) {
        const { res, callback: callback2, body, opaque } = this;
        if (callback2) {
          this.callback = null;
          queueMicrotask(() => {
            this.runInAsyncScope(callback2, null, err2, { opaque });
          });
        }
        if (res) {
          this.res = null;
          queueMicrotask(() => {
            util70.destroy(res.on("error", noop5), err2);
          });
        }
        if (body) {
          this.body = null;
          if (util70.isStream(body)) {
            body.on("error", noop5);
            util70.destroy(body, err2);
          }
        }
        if (this.removeAbortListener) {
          this.removeAbortListener();
          this.removeAbortListener = null;
        }
      }
    };
    function request(opts3, callback2) {
      if (callback2 === void 0) {
        return new Promise((resolve4, reject3) => {
          request.call(this, opts3, (err2, data) => {
            return err2 ? reject3(err2) : resolve4(data);
          });
        });
      }
      try {
        const handler83 = new RequestHandler(opts3, callback2);
        this.dispatch(opts3, handler83);
      } catch (err2) {
        if (typeof callback2 !== "function") {
          throw err2;
        }
        const opaque = opts3?.opaque;
        queueMicrotask(() => callback2(err2, { opaque }));
      }
    }
    module2.exports = request;
    module2.exports.RequestHandler = RequestHandler;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/undici/7.29.0/82a11f569634ba40cb43639a3bacb079ecc63f257fd03395a1e4e8454d841fb0/node_modules/undici/lib/api/abort-signal.js
var require_abort_signal = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/undici/7.29.0/82a11f569634ba40cb43639a3bacb079ecc63f257fd03395a1e4e8454d841fb0/node_modules/undici/lib/api/abort-signal.js"(exports2, module2) {
    "use strict";
    var { addAbortListener: addAbortListener3 } = require_util4();
    var { RequestAbortedError } = require_errors4();
    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
    };
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/undici/7.29.0/82a11f569634ba40cb43639a3bacb079ecc63f257fd03395a1e4e8454d841fb0/node_modules/undici/lib/api/api-stream.js
var require_api_stream = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/undici/7.29.0/82a11f569634ba40cb43639a3bacb079ecc63f257fd03395a1e4e8454d841fb0/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: AsyncResource4 } = __require("node:async_hooks");
    var { InvalidArgumentError, InvalidReturnValueError } = require_errors4();
    var util70 = require_util4();
    var { addSignal, removeSignal } = require_abort_signal();
    function noop5() {
    }
    var StreamHandler = class extends AsyncResource4 {
      constructor(opts3, factory, callback2) {
        if (!opts3 || typeof opts3 !== "object") {
          throw new InvalidArgumentError("invalid opts");
        }
        const { signal, method: method2, opaque, body, onInfo, responseHeaders } = opts3;
        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 (method2 === "CONNECT") {
            throw new InvalidArgumentError("invalid method");
          }
          if (onInfo && typeof onInfo !== "function") {
            throw new InvalidArgumentError("invalid onInfo callback");
          }
          super("UNDICI_STREAM");
        } catch (err2) {
          if (util70.isStream(body)) {
            util70.destroy(body.on("error", noop5), err2);
          }
          throw err2;
        }
        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 (util70.isStream(body)) {
          body.on("error", (err2) => {
            this.onError(err2);
          });
        }
        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" ? util70.parseRawHeaders(rawHeaders) : util70.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 }, (err2) => {
          const { callback: callback2, res: res2, opaque: opaque2, trailers, abort } = this;
          this.res = null;
          if (err2 || !res2?.readable) {
            util70.destroy(res2, err2);
          }
          this.callback = null;
          this.runInAsyncScope(callback2, null, err2 || null, { opaque: opaque2, trailers });
          if (err2) {
            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 = util70.parseHeaders(trailers);
        res.end();
      }
      onError(err2) {
        const { res, callback: callback2, opaque, body } = this;
        removeSignal(this);
        this.factory = null;
        if (res) {
          this.res = null;
          util70.destroy(res, err2);
        } else if (callback2) {
          this.callback = null;
          queueMicrotask(() => {
            this.runInAsyncScope(callback2, null, err2, { opaque });
          });
        }
        if (body) {
          this.body = null;
          util70.destroy(body, err2);
        }
      }
    };
    function stream2(opts3, factory, callback2) {
      if (callback2 === void 0) {
        return new Promise((resolve4, reject3) => {
          stream2.call(this, opts3, factory, (err2, data) => {
            return err2 ? reject3(err2) : resolve4(data);
          });
        });
      }
      try {
        const handler83 = new StreamHandler(opts3, factory, callback2);
        this.dispatch(opts3, handler83);
      } catch (err2) {
        if (typeof callback2 !== "function") {
          throw err2;
        }
        const opaque = opts3?.opaque;
        queueMicrotask(() => callback2(err2, { opaque }));
      }
    }
    module2.exports = stream2;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/undici/7.29.0/82a11f569634ba40cb43639a3bacb079ecc63f257fd03395a1e4e8454d841fb0/node_modules/undici/lib/api/api-pipeline.js
var require_api_pipeline = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/undici/7.29.0/82a11f569634ba40cb43639a3bacb079ecc63f257fd03395a1e4e8454d841fb0/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: AsyncResource4 } = __require("node:async_hooks");
    var {
      InvalidArgumentError,
      InvalidReturnValueError,
      RequestAbortedError
    } = require_errors4();
    var util70 = require_util4();
    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(err2, callback2) {
        this._read();
        callback2(err2);
      }
    };
    var PipelineResponse = class extends Readable4 {
      constructor(resume) {
        super({ autoDestroy: true });
        this[kResume] = resume;
      }
      _read() {
        this[kResume]();
      }
      _destroy(err2, callback2) {
        if (!err2 && !this._readableState.endEmitted) {
          err2 = new RequestAbortedError();
        }
        callback2(err2);
      }
    };
    var PipelineHandler = class extends AsyncResource4 {
      constructor(opts3, handler83) {
        if (!opts3 || typeof opts3 !== "object") {
          throw new InvalidArgumentError("invalid opts");
        }
        if (typeof handler83 !== "function") {
          throw new InvalidArgumentError("invalid handler");
        }
        const { signal, method: method2, opaque, onInfo, responseHeaders } = opts3;
        if (signal && typeof signal.on !== "function" && typeof signal.addEventListener !== "function") {
          throw new InvalidArgumentError("signal must be an EventEmitter or EventTarget");
        }
        if (method2 === "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 = handler83;
        this.abort = null;
        this.context = null;
        this.onInfo = onInfo || null;
        this.req = new PipelineRequest().on("error", noop5);
        this.ret = new Duplex4({
          readableObjectMode: opts3.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: (err2, callback2) => {
            const { body, req: req2, res, ret: ret2, abort } = this;
            if (!err2 && !ret2._readableState.endEmitted) {
              err2 = new RequestAbortedError();
            }
            if (abort && err2) {
              abort();
            }
            util70.destroy(body, err2);
            util70.destroy(req2, err2);
            util70.destroy(res, err2);
            removeSignal(this);
            callback2(err2);
          }
        }).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: handler83, context } = this;
        if (statusCode < 200) {
          if (this.onInfo) {
            const headers = this.responseHeaders === "raw" ? util70.parseRawHeaders(rawHeaders) : util70.parseHeaders(rawHeaders);
            this.onInfo({ statusCode, headers });
          }
          return;
        }
        this.res = new PipelineResponse(resume);
        let body;
        try {
          this.handler = null;
          const headers = this.responseHeaders === "raw" ? util70.parseRawHeaders(rawHeaders) : util70.parseHeaders(rawHeaders);
          body = this.runInAsyncScope(handler83, null, {
            statusCode,
            headers,
            opaque,
            body: this.res,
            context
          });
        } catch (err2) {
          this.res.on("error", noop5);
          throw err2;
        }
        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", (err2) => {
          const { ret: ret2 } = this;
          util70.destroy(ret2, err2);
        }).on("end", () => {
          const { ret: ret2 } = this;
          ret2.push(null);
        }).on("close", () => {
          const { ret: ret2 } = this;
          if (!ret2._readableState.ended) {
            util70.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(err2) {
        const { ret: ret2 } = this;
        this.handler = null;
        util70.destroy(ret2, err2);
      }
    };
    function pipeline2(opts3, handler83) {
      try {
        const pipelineHandler = new PipelineHandler(opts3, handler83);
        this.dispatch({ ...opts3, body: pipelineHandler.req }, pipelineHandler);
        return pipelineHandler.ret;
      } catch (err2) {
        return new PassThrough3().destroy(err2);
      }
    }
    module2.exports = pipeline2;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/undici/7.29.0/82a11f569634ba40cb43639a3bacb079ecc63f257fd03395a1e4e8454d841fb0/node_modules/undici/lib/api/api-upgrade.js
var require_api_upgrade = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/undici/7.29.0/82a11f569634ba40cb43639a3bacb079ecc63f257fd03395a1e4e8454d841fb0/node_modules/undici/lib/api/api-upgrade.js"(exports2, module2) {
    "use strict";
    var { InvalidArgumentError, SocketError } = require_errors4();
    var { AsyncResource: AsyncResource4 } = __require("node:async_hooks");
    var assert13 = __require("node:assert");
    var util70 = require_util4();
    var { kHTTP2Stream } = require_symbols();
    var { addSignal, removeSignal } = require_abort_signal();
    var UpgradeHandler = class extends AsyncResource4 {
      constructor(opts3, callback2) {
        if (!opts3 || typeof opts3 !== "object") {
          throw new InvalidArgumentError("invalid opts");
        }
        if (typeof callback2 !== "function") {
          throw new InvalidArgumentError("invalid callback");
        }
        const { signal, opaque, responseHeaders } = opts3;
        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" ? util70.parseRawHeaders(rawHeaders) : util70.parseHeaders(rawHeaders);
        this.runInAsyncScope(callback2, null, null, {
          headers,
          socket,
          opaque,
          context
        });
      }
      onError(err2) {
        const { callback: callback2, opaque } = this;
        removeSignal(this);
        if (callback2) {
          this.callback = null;
          queueMicrotask(() => {
            this.runInAsyncScope(callback2, null, err2, { opaque });
          });
        }
      }
    };
    function upgrade(opts3, callback2) {
      if (callback2 === void 0) {
        return new Promise((resolve4, reject3) => {
          upgrade.call(this, opts3, (err2, data) => {
            return err2 ? reject3(err2) : resolve4(data);
          });
        });
      }
      try {
        const upgradeHandler = new UpgradeHandler(opts3, callback2);
        const upgradeOpts = {
          ...opts3,
          method: opts3.method || "GET",
          upgrade: opts3.protocol || "Websocket"
        };
        this.dispatch(upgradeOpts, upgradeHandler);
      } catch (err2) {
        if (typeof callback2 !== "function") {
          throw err2;
        }
        const opaque = opts3?.opaque;
        queueMicrotask(() => callback2(err2, { opaque }));
      }
    }
    module2.exports = upgrade;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/undici/7.29.0/82a11f569634ba40cb43639a3bacb079ecc63f257fd03395a1e4e8454d841fb0/node_modules/undici/lib/api/api-connect.js
var require_api_connect = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/undici/7.29.0/82a11f569634ba40cb43639a3bacb079ecc63f257fd03395a1e4e8454d841fb0/node_modules/undici/lib/api/api-connect.js"(exports2, module2) {
    "use strict";
    var assert13 = __require("node:assert");
    var { AsyncResource: AsyncResource4 } = __require("node:async_hooks");
    var { InvalidArgumentError, SocketError } = require_errors4();
    var util70 = require_util4();
    var { addSignal, removeSignal } = require_abort_signal();
    var ConnectHandler = class extends AsyncResource4 {
      constructor(opts3, callback2) {
        if (!opts3 || typeof opts3 !== "object") {
          throw new InvalidArgumentError("invalid opts");
        }
        if (typeof callback2 !== "function") {
          throw new InvalidArgumentError("invalid callback");
        }
        const { signal, opaque, responseHeaders } = opts3;
        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" ? util70.parseRawHeaders(rawHeaders) : util70.parseHeaders(rawHeaders);
        }
        this.runInAsyncScope(callback2, null, null, {
          statusCode,
          headers,
          socket,
          opaque,
          context
        });
      }
      onError(err2) {
        const { callback: callback2, opaque } = this;
        removeSignal(this);
        if (callback2) {
          this.callback = null;
          queueMicrotask(() => {
            this.runInAsyncScope(callback2, null, err2, { opaque });
          });
        }
      }
    };
    function connect(opts3, callback2) {
      if (callback2 === void 0) {
        return new Promise((resolve4, reject3) => {
          connect.call(this, opts3, (err2, data) => {
            return err2 ? reject3(err2) : resolve4(data);
          });
        });
      }
      try {
        const connectHandler = new ConnectHandler(opts3, callback2);
        const connectOptions = { ...opts3, method: "CONNECT" };
        this.dispatch(connectOptions, connectHandler);
      } catch (err2) {
        if (typeof callback2 !== "function") {
          throw err2;
        }
        const opaque = opts3?.opaque;
        queueMicrotask(() => callback2(err2, { opaque }));
      }
    }
    module2.exports = connect;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/undici/7.29.0/82a11f569634ba40cb43639a3bacb079ecc63f257fd03395a1e4e8454d841fb0/node_modules/undici/lib/api/index.js
var require_api = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/undici/7.29.0/82a11f569634ba40cb43639a3bacb079ecc63f257fd03395a1e4e8454d841fb0/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();
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/undici/7.29.0/82a11f569634ba40cb43639a3bacb079ecc63f257fd03395a1e4e8454d841fb0/node_modules/undici/lib/mock/mock-errors.js
var require_mock_errors = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/undici/7.29.0/82a11f569634ba40cb43639a3bacb079ecc63f257fd03395a1e4e8454d841fb0/node_modules/undici/lib/mock/mock-errors.js"(exports2, module2) {
    "use strict";
    var { UndiciError } = require_errors4();
    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
    };
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/undici/7.29.0/82a11f569634ba40cb43639a3bacb079ecc63f257fd03395a1e4e8454d841fb0/node_modules/undici/lib/mock/mock-symbols.js
var require_mock_symbols = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/undici/7.29.0/82a11f569634ba40cb43639a3bacb079ecc63f257fd03395a1e4e8454d841fb0/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")
    };
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/undici/7.29.0/82a11f569634ba40cb43639a3bacb079ecc63f257fd03395a1e4e8454d841fb0/node_modules/undici/lib/mock/mock-utils.js
var require_mock_utils = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/undici/7.29.0/82a11f569634ba40cb43639a3bacb079ecc63f257fd03395a1e4e8454d841fb0/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_util4();
    var { STATUS_CODES } = __require("node:http");
    var {
      types: {
        isPromise
      }
    } = __require("node:util");
    var { InvalidArgumentError } = require_errors4();
    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 i4 = 0; i4 < headers.length; i4 += 2) {
          if (headers[i4].toLocaleLowerCase() === key.toLocaleLowerCase()) {
            return headers[i4 + 1];
          }
        }
        return void 0;
      } else if (typeof headers.get === "function") {
        return headers.get(key);
      } else {
        return lowerCaseEntries(headers)[key.toLocaleLowerCase()];
      }
    }
    function buildHeadersFromArray(headers) {
      const clone4 = headers.slice();
      const entries = [];
      for (let index2 = 0; index2 < clone4.length; index2 += 2) {
        entries.push([clone4[index2], clone4[index2 + 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(path240) {
      if (typeof path240 !== "string") {
        return path240;
      }
      const pathSegments = path240.split("?", 3);
      if (pathSegments.length !== 2) {
        return path240;
      }
      const qp = new URLSearchParams(pathSegments.pop());
      qp.sort();
      return [...pathSegments, qp.toString()].join("?");
    }
    function matchKey(mockDispatch2, { path: path240, method: method2, body, headers }) {
      const pathMatch = matchValue(mockDispatch2.path, path240);
      const methodMatch = matchValue(mockDispatch2.method, method2);
      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: path240, ignoreTrailingSlash }) => {
        return ignoreTrailingSlash ? matchValue(removeTrailingSlash(safeUrl(path240)), resolvedPathWithoutTrailingSlash) : matchValue(safeUrl(path240), resolvedPath);
      });
      if (matchedMockDispatches.length === 0) {
        throw new MockNotMatchedError(`Mock dispatch not matched for path '${resolvedPath}'`);
      }
      matchedMockDispatches = matchedMockDispatches.filter(({ method: method2 }) => matchValue(method2, 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, opts3) {
      const baseData = { timesInvoked: 0, times: 1, persist: false, consumed: false, ...opts3 };
      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 index2 = mockDispatches.findIndex((dispatch) => {
        if (!dispatch.consumed) {
          return false;
        }
        return matchKey(dispatch, key);
      });
      if (index2 !== -1) {
        mockDispatches.splice(index2, 1);
      }
    }
    function removeTrailingSlash(path240) {
      while (path240.endsWith("/")) {
        path240 = path240.slice(0, -1);
      }
      if (path240.length === 0) {
        path240 = "/";
      }
      return path240;
    }
    function buildKey(opts3) {
      const { path: path240, method: method2, body, headers, query } = opts3;
      return {
        path: path240,
        method: method2,
        body,
        headers,
        query
      };
    }
    function generateKeyValues(data) {
      const keys4 = Object.keys(data);
      const result2 = [];
      for (let i4 = 0; i4 < keys4.length; ++i4) {
        const key = keys4[i4];
        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(opts3, handler83) {
      const key = buildKey(opts3);
      const mockDispatch2 = getMockDispatch(this[kDispatches], key);
      mockDispatch2.timesInvoked++;
      if (mockDispatch2.data.callback) {
        mockDispatch2.data = { ...mockDispatch2.data, ...mockDispatch2.data.callback(opts3) };
      }
      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);
        handler83.onError(error);
        return true;
      }
      let aborted2 = false;
      let timer = null;
      function abort(err2) {
        if (aborted2) {
          return;
        }
        aborted2 = true;
        if (timer !== null) {
          clearTimeout(timer);
          timer = null;
        }
        handler83.onError(err2);
      }
      handler83.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(opts3.headers) ? buildHeadersFromArray(opts3.headers) : opts3.headers;
        const body = typeof _data === "function" ? _data({ ...opts3, 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);
        handler83.onHeaders?.(statusCode, responseHeaders, resume, getStatusText(statusCode));
        handler83.onData?.(Buffer.from(responseData));
        handler83.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(opts3, handler83) {
        if (agent.isMockActive) {
          try {
            mockDispatch.call(this, opts3, handler83);
          } 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, opts3, handler83);
              } 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, opts3, handler83);
        }
      };
    }
    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(opts3) {
      const { agent, ...mockOptions } = opts3;
      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
    };
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/undici/7.29.0/82a11f569634ba40cb43639a3bacb079ecc63f257fd03395a1e4e8454d841fb0/node_modules/undici/lib/mock/mock-interceptor.js
var require_mock_interceptor = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/undici/7.29.0/82a11f569634ba40cb43639a3bacb079ecc63f257fd03395a1e4e8454d841fb0/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_errors4();
    var { serializePathWithQuery } = require_util4();
    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(opts3, mockDispatches) {
        if (typeof opts3 !== "object") {
          throw new InvalidArgumentError("opts must be an object");
        }
        if (typeof opts3.path === "undefined") {
          throw new InvalidArgumentError("opts.path must be defined");
        }
        if (typeof opts3.method === "undefined") {
          opts3.method = "GET";
        }
        if (typeof opts3.path === "string") {
          if (opts3.query) {
            opts3.path = serializePathWithQuery(opts3.path, opts3.query);
          } else {
            const parsedURL = new URL(opts3.path, "data://");
            opts3.path = parsedURL.pathname + parsedURL.search;
          }
        }
        if (typeof opts3.method === "string") {
          opts3.method = opts3.method.toUpperCase();
        }
        this[kDispatchKey] = buildKey(opts3);
        this[kDispatches] = mockDispatches;
        this[kIgnoreTrailingSlash] = opts3.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 = (opts3) => {
            const resolvedData = replyOptionsCallbackOrStatusCode(opts3);
            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;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/undici/7.29.0/82a11f569634ba40cb43639a3bacb079ecc63f257fd03395a1e4e8454d841fb0/node_modules/undici/lib/mock/mock-client.js
var require_mock_client = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/undici/7.29.0/82a11f569634ba40cb43639a3bacb079ecc63f257fd03395a1e4e8454d841fb0/node_modules/undici/lib/mock/mock-client.js"(exports2, module2) {
    "use strict";
    var { promisify: promisify15 } = __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_errors4();
    var MockClient = class extends Client {
      constructor(origin, opts3) {
        if (!opts3 || !opts3.agent || typeof opts3.agent.dispatch !== "function") {
          throw new InvalidArgumentError("Argument opts.agent must implement Agent");
        }
        super(origin, opts3);
        this[kMockAgent] = opts3.agent;
        this[kOrigin] = origin;
        this[kIgnoreTrailingSlash] = opts3.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(opts3) {
        return new MockInterceptor(
          opts3 && { ignoreTrailingSlash: this[kIgnoreTrailingSlash], ...opts3 },
          this[kDispatches]
        );
      }
      cleanMocks() {
        this[kDispatches] = [];
      }
      async [kClose]() {
        await promisify15(this[kOriginalClose])();
        this[kConnected] = 0;
        this[kMockAgent][Symbols.kClients].delete(this[kOrigin]);
      }
    };
    module2.exports = MockClient;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/undici/7.29.0/82a11f569634ba40cb43639a3bacb079ecc63f257fd03395a1e4e8454d841fb0/node_modules/undici/lib/mock/mock-call-history.js
var require_mock_call_history = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/undici/7.29.0/82a11f569634ba40cb43639a3bacb079ecc63f257fd03395a1e4e8454d841fb0/node_modules/undici/lib/mock/mock-call-history.js"(exports2, module2) {
    "use strict";
    var { kMockCallHistoryAddLog } = require_mock_symbols();
    var { InvalidArgumentError } = require_errors4();
    function handleFilterCallsWithOptions(criteria, options, handler83, store, allLogs) {
      switch (options.operator) {
        case "OR":
          store.push(...handler83(criteria, allLogs));
          return store;
        case "AND":
          return handler83(criteria, store);
        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, logs) => {
        if (typeof parameterValue === "string" || parameterValue == null) {
          return logs.filter((log3) => {
            return log3[parameterName] === parameterValue;
          });
        }
        if (parameterValue instanceof RegExp) {
          return 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 = finalOptions.operator === "AND" ? this.logs : [];
          if ("protocol" in criteria) {
            maybeDuplicatedLogsFiltered = handleFilterCallsWithOptions(criteria.protocol, finalOptions, this.filterCallsByProtocol, maybeDuplicatedLogsFiltered, this.logs);
          }
          if ("host" in criteria) {
            maybeDuplicatedLogsFiltered = handleFilterCallsWithOptions(criteria.host, finalOptions, this.filterCallsByHost, maybeDuplicatedLogsFiltered, this.logs);
          }
          if ("port" in criteria) {
            maybeDuplicatedLogsFiltered = handleFilterCallsWithOptions(criteria.port, finalOptions, this.filterCallsByPort, maybeDuplicatedLogsFiltered, this.logs);
          }
          if ("origin" in criteria) {
            maybeDuplicatedLogsFiltered = handleFilterCallsWithOptions(criteria.origin, finalOptions, this.filterCallsByOrigin, maybeDuplicatedLogsFiltered, this.logs);
          }
          if ("path" in criteria) {
            maybeDuplicatedLogsFiltered = handleFilterCallsWithOptions(criteria.path, finalOptions, this.filterCallsByPath, maybeDuplicatedLogsFiltered, this.logs);
          }
          if ("hash" in criteria) {
            maybeDuplicatedLogsFiltered = handleFilterCallsWithOptions(criteria.hash, finalOptions, this.filterCallsByHash, maybeDuplicatedLogsFiltered, this.logs);
          }
          if ("fullUrl" in criteria) {
            maybeDuplicatedLogsFiltered = handleFilterCallsWithOptions(criteria.fullUrl, finalOptions, this.filterCallsByFullUrl, maybeDuplicatedLogsFiltered, this.logs);
          }
          if ("method" in criteria) {
            maybeDuplicatedLogsFiltered = handleFilterCallsWithOptions(criteria.method, finalOptions, this.filterCallsByMethod, maybeDuplicatedLogsFiltered, this.logs);
          }
          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;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/undici/7.29.0/82a11f569634ba40cb43639a3bacb079ecc63f257fd03395a1e4e8454d841fb0/node_modules/undici/lib/mock/mock-pool.js
var require_mock_pool = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/undici/7.29.0/82a11f569634ba40cb43639a3bacb079ecc63f257fd03395a1e4e8454d841fb0/node_modules/undici/lib/mock/mock-pool.js"(exports2, module2) {
    "use strict";
    var { promisify: promisify15 } = __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_errors4();
    var MockPool = class extends Pool {
      constructor(origin, opts3) {
        if (!opts3 || !opts3.agent || typeof opts3.agent.dispatch !== "function") {
          throw new InvalidArgumentError("Argument opts.agent must implement Agent");
        }
        super(origin, opts3);
        this[kMockAgent] = opts3.agent;
        this[kOrigin] = origin;
        this[kIgnoreTrailingSlash] = opts3.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(opts3) {
        return new MockInterceptor(
          opts3 && { ignoreTrailingSlash: this[kIgnoreTrailingSlash], ...opts3 },
          this[kDispatches]
        );
      }
      cleanMocks() {
        this[kDispatches] = [];
      }
      async [kClose]() {
        await promisify15(this[kOriginalClose])();
        this[kConnected] = 0;
        this[kMockAgent][Symbols.kClients].delete(this[kOrigin]);
      }
    };
    module2.exports = MockPool;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/undici/7.29.0/82a11f569634ba40cb43639a3bacb079ecc63f257fd03395a1e4e8454d841fb0/node_modules/undici/lib/mock/pending-interceptors-formatter.js
var require_pending_interceptors_formatter = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/undici/7.29.0/82a11f569634ba40cb43639a3bacb079ecc63f257fd03395a1e4e8454d841fb0/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: method2, path: path240, data: { statusCode }, persist, times: times3, timesInvoked, origin }) => ({
            Method: method2,
            Origin: origin,
            Path: path240,
            "Status code": statusCode,
            Persistent: persist ? PERSISTENT : NOT_PERSISTENT,
            Invocations: timesInvoked,
            Remaining: persist ? Infinity : times3 - timesInvoked
          })
        );
        this.logger.table(withPrettyHeaders);
        return this.transform.read().toString();
      }
    };
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/undici/7.29.0/82a11f569634ba40cb43639a3bacb079ecc63f257fd03395a1e4e8454d841fb0/node_modules/undici/lib/mock/mock-agent.js
var require_mock_agent = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/undici/7.29.0/82a11f569634ba40cb43639a3bacb079ecc63f257fd03395a1e4e8454d841fb0/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_errors4();
    var Dispatcher = require_dispatcher();
    var PendingInterceptorsFormatter = require_pending_interceptors_formatter();
    var { MockCallHistory } = require_mock_call_history();
    var MockAgent = class extends Dispatcher {
      constructor(opts3 = {}) {
        super(opts3);
        const mockOptions = buildAndValidateMockOptions(opts3);
        this[kNetConnect] = true;
        this[kIsMockActive] = true;
        this[kMockAgentIsCallHistoryEnabled] = mockOptions.enableCallHistory ?? false;
        this[kMockAgentAcceptsNonStandardSearchParameters] = mockOptions.acceptNonStandardSearchParameters ?? false;
        this[kIgnoreTrailingSlash] = mockOptions.ignoreTrailingSlash ?? false;
        if (opts3?.agent && typeof opts3.agent.dispatch !== "function") {
          throw new InvalidArgumentError("Argument opts.agent must implement Agent");
        }
        const agent = opts3?.agent ? opts3.agent : new Agent2(opts3);
        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(opts3, handler83) {
        opts3.origin = normalizeOrigin(opts3.origin);
        this.get(opts3.origin);
        this[kMockAgentAddCallHistoryLog](opts3);
        const acceptNonStandardSearchParameters = this[kMockAgentAcceptsNonStandardSearchParameters];
        const dispatchOpts = { ...opts3 };
        if (acceptNonStandardSearchParameters && dispatchOpts.path) {
          const [path240, searchParams] = dispatchOpts.path.split("?");
          const normalizedSearchParams = normalizeSearchParams(searchParams, acceptNonStandardSearchParameters);
          dispatchOpts.path = `${path240}?${normalizedSearchParams}`;
        }
        return this[kAgent].dispatch(dispatchOpts, handler83);
      }
      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](opts3) {
        if (this[kMockAgentIsCallHistoryEnabled]) {
          this[kMockAgentRegisterCallHistory]();
          this[kMockAgentMockCallHistoryInstance][kMockCallHistoryAddLog](opts3);
        }
      }
      [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;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/undici/7.29.0/82a11f569634ba40cb43639a3bacb079ecc63f257fd03395a1e4e8454d841fb0/node_modules/undici/lib/mock/snapshot-utils.js
var require_snapshot_utils = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/undici/7.29.0/82a11f569634ba40cb43639a3bacb079ecc63f257fd03395a1e4e8454d841fb0/node_modules/undici/lib/mock/snapshot-utils.js"(exports2, module2) {
    "use strict";
    var { InvalidArgumentError } = require_errors4();
    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 crypto14 = runtimeFeatures.has("crypto") ? __require("node:crypto") : null;
    var hashId = crypto14?.hash ? (value) => crypto14.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 i4 = 0; i4 < headers.length; i4 += 2) {
          const key = headers[i4];
          const value = headers[i4 + 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
    };
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/undici/7.29.0/82a11f569634ba40cb43639a3bacb079ecc63f257fd03395a1e4e8454d841fb0/node_modules/undici/lib/mock/snapshot-recorder.js
var require_snapshot_recorder = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/undici/7.29.0/82a11f569634ba40cb43639a3bacb079ecc63f257fd03395a1e4e8454d841fb0/node_modules/undici/lib/mock/snapshot-recorder.js"(exports2, module2) {
    "use strict";
    var { writeFile: writeFile3, readFile: readFile5, mkdir: mkdir2 } = __require("node:fs/promises");
    var { dirname: dirname3, resolve: resolve4 } = __require("node:path");
    var { setTimeout: setTimeout4, clearTimeout: clearTimeout2 } = __require("node:timers");
    var { InvalidArgumentError, UndiciError } = require_errors4();
    var { hashId, isUrlExcludedFactory, normalizeHeaders, createHeaderFilters } = require_snapshot_utils();
    function formatRequestKey(opts3, headerFilters, matchOptions = {}) {
      const url7 = new URL(opts3.path, opts3.origin);
      const normalized = opts3._normalizedHeaders || normalizeHeaders(opts3.headers);
      if (!opts3._normalizedHeaders) {
        opts3._normalizedHeaders = normalized;
      }
      return {
        method: opts3.method || "GET",
        url: matchOptions.matchQuery !== false ? url7.toString() : `${url7.origin}${url7.pathname}`,
        headers: filterHeadersForMatching(normalized, headerFilters, matchOptions),
        body: matchOptions.matchBody !== false && opts3.body ? String(opts3.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 path240 = filePath || this.#snapshotPath;
        if (!path240) {
          throw new InvalidArgumentError("Snapshot path is required");
        }
        try {
          const data = await readFile5(resolve4(path240), "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 ${path240}`, { 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 path240 = filePath || this.#snapshotPath;
        if (!path240) {
          throw new InvalidArgumentError("Snapshot path is required");
        }
        const resolvedPath = resolve4(path240);
        await mkdir2(dirname3(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 };
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/undici/7.29.0/82a11f569634ba40cb43639a3bacb079ecc63f257fd03395a1e4e8454d841fb0/node_modules/undici/lib/mock/snapshot-agent.js
var require_snapshot_agent = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/undici/7.29.0/82a11f569634ba40cb43639a3bacb079ecc63f257fd03395a1e4e8454d841fb0/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_errors4();
    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(opts3 = {}) {
        if (!warningEmitted) {
          process.emitWarning(
            "SnapshotAgent is experimental and subject to change",
            "ExperimentalWarning"
          );
          warningEmitted = true;
        }
        const {
          mode = "record",
          snapshotPath = null,
          ...mockAgentOpts
        } = opts3;
        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: opts3.maxSnapshots,
          autoFlush: opts3.autoFlush,
          flushInterval: opts3.flushInterval,
          matchHeaders: opts3.matchHeaders,
          ignoreHeaders: opts3.ignoreHeaders,
          excludeHeaders: opts3.excludeHeaders,
          matchBody: opts3.matchBody,
          matchQuery: opts3.matchQuery,
          caseSensitive: opts3.caseSensitive,
          shouldRecord: opts3.shouldRecord,
          shouldPlayback: opts3.shouldPlayback,
          excludeUrls: opts3.excludeUrls
        });
        this[kSnapshotLoaded] = false;
        if (this[kSnapshotMode] === "record" || this[kSnapshotMode] === "update" || this[kSnapshotMode] === "playback" && opts3.excludeUrls && opts3.excludeUrls.length > 0) {
          this[kRealAgent] = new Agent2(opts3);
        }
        if ((this[kSnapshotMode] === "playback" || this[kSnapshotMode] === "update") && this[kSnapshotPath]) {
          this.loadSnapshots().catch(() => {
          });
        }
      }
      dispatch(opts3, handler83) {
        handler83 = WrapHandler.wrap(handler83);
        const mode = this[kSnapshotMode];
        if (this[kSnapshotRecorder].isUrlExcluded(opts3)) {
          return this[kRealAgent].dispatch(opts3, handler83);
        }
        if (mode === "playback" || mode === "update") {
          if (!this[kSnapshotLoaded]) {
            return this.#asyncDispatch(opts3, handler83);
          }
          const snapshot = this[kSnapshotRecorder].findSnapshot(opts3);
          if (snapshot) {
            return this.#replaySnapshot(snapshot, handler83);
          } else if (mode === "update") {
            return this.#recordAndReplay(opts3, handler83);
          } else {
            const error = new UndiciError(`No snapshot found for ${opts3.method || "GET"} ${opts3.path}`);
            if (handler83.onError) {
              handler83.onError(error);
              return;
            }
            throw error;
          }
        } else if (mode === "record") {
          return this.#recordAndReplay(opts3, handler83);
        }
      }
      /**
       * Async version of dispatch for when we need to load snapshots first
       */
      async #asyncDispatch(opts3, handler83) {
        await this.loadSnapshots();
        return this.dispatch(opts3, handler83);
      }
      /**
       * Records a real request and replays the response
       */
      #recordAndReplay(opts3, handler83) {
        const responseData = {
          statusCode: null,
          headers: {},
          trailers: {},
          body: []
        };
        const self2 = this;
        const recordingHandler = {
          onRequestStart(controller, context) {
            return handler83.onRequestStart(controller, { ...context, history: this.history });
          },
          onRequestUpgrade(controller, statusCode, headers, socket) {
            return handler83.onRequestUpgrade(controller, statusCode, headers, socket);
          },
          onResponseStart(controller, statusCode, headers, statusMessage) {
            responseData.statusCode = statusCode;
            responseData.headers = headers;
            return handler83.onResponseStart(controller, statusCode, headers, statusMessage);
          },
          onResponseData(controller, chunk) {
            responseData.body.push(chunk);
            return handler83.onResponseData(controller, chunk);
          },
          onResponseEnd(controller, trailers) {
            responseData.trailers = trailers;
            const responseBody = Buffer.concat(responseData.body);
            self2[kSnapshotRecorder].record(opts3, {
              statusCode: responseData.statusCode,
              headers: responseData.headers,
              body: responseBody,
              trailers: responseData.trailers
            }).then(() => handler83.onResponseEnd(controller, trailers)).catch((error) => handler83.onResponseError(controller, error));
          }
        };
        const agent = this[kRealAgent];
        return agent.dispatch(opts3, 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, handler83) {
        try {
          const { response } = snapshot;
          const controller = {
            pause() {
            },
            resume() {
            },
            abort(reason) {
              this.aborted = true;
              this.reason = reason;
            },
            aborted: false,
            paused: false
          };
          handler83.onRequestStart(controller);
          handler83.onResponseStart(controller, response.statusCode, response.headers);
          const body = Buffer.from(response.body, "base64");
          handler83.onResponseData(controller, body);
          handler83.onResponseEnd(controller, response.trailers);
        } catch (error) {
          handler83.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;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/undici/7.29.0/82a11f569634ba40cb43639a3bacb079ecc63f257fd03395a1e4e8454d841fb0/node_modules/undici/lib/global.js
var require_global2 = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/undici/7.29.0/82a11f569634ba40cb43639a3bacb079ecc63f257fd03395a1e4e8454d841fb0/node_modules/undici/lib/global.js"(exports2, module2) {
    "use strict";
    var globalDispatcher = /* @__PURE__ */ Symbol.for("undici.globalDispatcher.2");
    var legacyGlobalDispatcher = /* @__PURE__ */ Symbol.for("undici.globalDispatcher.1");
    var { InvalidArgumentError } = require_errors4();
    var Agent2 = require_agent();
    if (getGlobalDispatcher2() === 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
      });
      Object.defineProperty(globalThis, legacyGlobalDispatcher, {
        value: agent,
        writable: true,
        enumerable: false,
        configurable: false
      });
    }
    function getGlobalDispatcher2() {
      return globalThis[legacyGlobalDispatcher];
    }
    var installedExports = (
      /** @type {const} */
      [
        "fetch",
        "Headers",
        "Response",
        "Request",
        "FormData",
        "WebSocket",
        "CloseEvent",
        "ErrorEvent",
        "MessageEvent",
        "EventSource"
      ]
    );
    module2.exports = {
      setGlobalDispatcher: setGlobalDispatcher2,
      getGlobalDispatcher: getGlobalDispatcher2,
      installedExports
    };
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/undici/7.29.0/82a11f569634ba40cb43639a3bacb079ecc63f257fd03395a1e4e8454d841fb0/node_modules/undici/lib/handler/decorator-handler.js
var require_decorator_handler = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/undici/7.29.0/82a11f569634ba40cb43639a3bacb079ecc63f257fd03395a1e4e8454d841fb0/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(handler83) {
        if (typeof handler83 !== "object" || handler83 === null) {
          throw new TypeError("handler must be an object");
        }
        this.#handler = WrapHandler.wrap(handler83);
      }
      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() {
      }
    };
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/undici/7.29.0/82a11f569634ba40cb43639a3bacb079ecc63f257fd03395a1e4e8454d841fb0/node_modules/undici/lib/handler/redirect-handler.js
var require_redirect_handler = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/undici/7.29.0/82a11f569634ba40cb43639a3bacb079ecc63f257fd03395a1e4e8454d841fb0/node_modules/undici/lib/handler/redirect-handler.js"(exports2, module2) {
    "use strict";
    var util70 = require_util4();
    var { kBodyUsed } = require_symbols();
    var assert13 = __require("node:assert");
    var { InvalidArgumentError } = require_errors4();
    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 (opts3, originalHandler) => dispatch(opts3, new _RedirectHandler(dispatch, maxRedirections, opts3, originalHandler));
      }
      constructor(dispatch, maxRedirections, opts3, handler83) {
        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 } = opts3;
        this.opts = cleanOpts;
        this.maxRedirections = maxRedirections;
        this.handler = handler83;
        this.history = [];
        if (util70.isStream(this.opts.body)) {
          if (util70.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) && util70.isIterable(this.opts.body) && !util70.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 (util70.isStream(this.opts.body)) {
            util70.destroy(this.opts.body.on("error", noop5));
          }
          this.opts.body = null;
        }
        if (statusCode === 303 && this.opts.method !== "HEAD") {
          this.opts.method = "GET";
          if (util70.isStream(this.opts.body)) {
            util70.destroy(this.opts.body.on("error", noop5));
          }
          this.opts.body = null;
        }
        this.location = this.history.length >= this.maxRedirections || util70.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 } = util70.parseURL(new URL(this.location, this.opts.origin && new URL(this.opts.path, this.opts.origin)));
        const path240 = search2 ? `${pathname}${search2}` : pathname;
        const redirectUrlString = `${origin}${path240}`;
        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 = path240;
        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 util70.headerNameToString(header) === "host";
      }
      if (removeContent && util70.headerNameToString(header).startsWith("content-")) {
        return true;
      }
      if (unknownOrigin && (header.length === 13 || header.length === 6 || header.length === 19)) {
        const name = util70.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 i4 = 0; i4 < headers.length; i4 += 2) {
          if (!shouldRemoveHeader(headers[i4], removeContent, unknownOrigin)) {
            ret2.push(headers[i4], headers[i4 + 1]);
          }
        }
      } else if (headers && typeof headers === "object") {
        const entries = util70.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;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/undici/7.29.0/82a11f569634ba40cb43639a3bacb079ecc63f257fd03395a1e4e8454d841fb0/node_modules/undici/lib/interceptor/redirect.js
var require_redirect = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/undici/7.29.0/82a11f569634ba40cb43639a3bacb079ecc63f257fd03395a1e4e8454d841fb0/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(opts3, handler83) {
          const { maxRedirections = defaultMaxRedirections, ...rest } = opts3;
          if (maxRedirections == null || maxRedirections === 0) {
            return dispatch(opts3, handler83);
          }
          const dispatchOpts = { ...rest };
          const redirectHandler = new RedirectHandler(dispatch, maxRedirections, dispatchOpts, handler83);
          return dispatch(dispatchOpts, redirectHandler);
        };
      };
    }
    module2.exports = createRedirectInterceptor;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/undici/7.29.0/82a11f569634ba40cb43639a3bacb079ecc63f257fd03395a1e4e8454d841fb0/node_modules/undici/lib/interceptor/response-error.js
var require_response_error = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/undici/7.29.0/82a11f569634ba40cb43639a3bacb079ecc63f257fd03395a1e4e8454d841fb0/node_modules/undici/lib/interceptor/response-error.js"(exports2, module2) {
    "use strict";
    var DecoratorHandler = require_decorator_handler();
    var { ResponseError: ResponseError2 } = require_errors4();
    var ResponseErrorHandler = class extends DecoratorHandler {
      #statusCode;
      #contentType;
      #decoder;
      #headers;
      #body;
      constructor(_opts, { handler: handler83 }) {
        super(handler83);
      }
      #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 err2;
          const stackTraceLimit = Error.stackTraceLimit;
          Error.stackTraceLimit = 0;
          try {
            err2 = new ResponseError2("Response Error", this.#statusCode, {
              body: this.#body,
              headers: this.#headers
            });
          } finally {
            Error.stackTraceLimit = stackTraceLimit;
          }
          super.onResponseError(controller, err2);
        } else {
          super.onResponseEnd(controller, trailers);
        }
      }
      onResponseError(controller, err2) {
        super.onResponseError(controller, err2);
      }
    };
    module2.exports = () => {
      return (dispatch) => {
        return function Intercept(opts3, handler83) {
          return dispatch(opts3, new ResponseErrorHandler(opts3, { handler: handler83 }));
        };
      };
    };
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/undici/7.29.0/82a11f569634ba40cb43639a3bacb079ecc63f257fd03395a1e4e8454d841fb0/node_modules/undici/lib/interceptor/retry.js
var require_retry = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/undici/7.29.0/82a11f569634ba40cb43639a3bacb079ecc63f257fd03395a1e4e8454d841fb0/node_modules/undici/lib/interceptor/retry.js"(exports2, module2) {
    "use strict";
    var RetryHandler = require_retry_handler();
    module2.exports = (globalOpts) => {
      return (dispatch) => {
        return function retryInterceptor(opts3, handler83) {
          return dispatch(
            opts3,
            new RetryHandler(
              { ...opts3, retryOptions: { ...globalOpts, ...opts3.retryOptions } },
              {
                handler: handler83,
                dispatch
              }
            )
          );
        };
      };
    };
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/undici/7.29.0/82a11f569634ba40cb43639a3bacb079ecc63f257fd03395a1e4e8454d841fb0/node_modules/undici/lib/interceptor/dump.js
var require_dump = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/undici/7.29.0/82a11f569634ba40cb43639a3bacb079ecc63f257fd03395a1e4e8454d841fb0/node_modules/undici/lib/interceptor/dump.js"(exports2, module2) {
    "use strict";
    var { InvalidArgumentError, RequestAbortedError } = require_errors4();
    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 }, handler83) {
        if (maxSize != null && (!Number.isFinite(maxSize) || maxSize < 1)) {
          throw new InvalidArgumentError("maxSize must be a number greater than 0");
        }
        super(handler83);
        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, err2) {
        if (this.#dumped) {
          return;
        }
        err2 = this.#controller?.reason ?? err2;
        super.onResponseError(controller, err2);
      }
      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(opts3, handler83) {
          const { dumpMaxSize = defaultMaxSize } = opts3;
          const dumpHandler = new DumpHandler({ maxSize: dumpMaxSize, signal: opts3.signal }, handler83);
          return dispatch(opts3, dumpHandler);
        };
      };
    }
    module2.exports = createDumpInterceptor;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/undici/7.29.0/82a11f569634ba40cb43639a3bacb079ecc63f257fd03395a1e4e8454d841fb0/node_modules/undici/lib/interceptor/dns.js
var require_dns = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/undici/7.29.0/82a11f569634ba40cb43639a3bacb079ecc63f257fd03395a1e4e8454d841fb0/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_errors4();
    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 i4 = 0; i4 < headers.length; i4 += 2) {
          if (isHostHeader(headers[i4])) {
            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(opts3) {
        this.#maxItems = opts3.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(opts3) {
        this.#maxTTL = opts3.maxTTL;
        this.#maxItems = opts3.maxItems;
        this.dualStack = opts3.dualStack;
        this.affinity = opts3.affinity;
        this.lookup = opts3.lookup ?? this.#defaultLookup;
        this.pick = opts3.pick ?? this.#defaultPick;
        this.storage = opts3.storage ?? new DNSStorage(opts3);
      }
      runLookup(origin, opts3, 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,
          ...opts3.dns,
          maxTTL: this.#maxTTL,
          maxItems: this.#maxItems
        };
        if (ips == null) {
          this.lookup(origin, newOpts, (err2, addresses) => {
            if (err2 || addresses == null || addresses.length === 0) {
              cb(err2 ?? 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, opts3, 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, opts3, cb) {
        lookup(
          origin.hostname,
          {
            all: true,
            family: this.dualStack === false ? this.affinity : 0,
            order: "ipv4first"
          },
          (err2, addresses) => {
            if (err2) {
              return cb(err2);
            }
            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, opts3) {
        return new DNSDispatchHandler(this, meta, opts3);
      }
    };
    var DNSDispatchHandler = class extends DecoratorHandler {
      #state = null;
      #opts = null;
      #dispatch = null;
      #origin = null;
      #controller = null;
      #newOrigin = null;
      #firstTry = true;
      constructor(state, { origin, handler: handler83, dispatch, newOrigin }, opts3) {
        super(handler83);
        this.#origin = origin;
        this.#newOrigin = newOrigin;
        this.#opts = { ...opts3 };
        this.#state = state;
        this.#dispatch = dispatch;
      }
      onResponseError(controller, err2) {
        switch (err2.code) {
          case "ETIMEDOUT":
          case "ECONNREFUSED": {
            if (this.#state.dualStack) {
              if (!this.#firstTry) {
                super.onResponseError(controller, err2);
                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, err2);
                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, err2);
            break;
          }
          case "ENOTFOUND":
            this.#state.deleteRecords(this.#origin);
            super.onResponseError(controller, err2);
            break;
          default:
            super.onResponseError(controller, err2);
            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 opts3 = {
        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(opts3);
      return (dispatch) => {
        return function dnsInterceptor(origDispatchOpts, handler83) {
          const origin = origDispatchOpts.origin.constructor === URL ? origDispatchOpts.origin : new URL(origDispatchOpts.origin);
          if (isIP(origin.hostname) !== 0) {
            return dispatch(origDispatchOpts, handler83);
          }
          instance.runLookup(origin, origDispatchOpts, (err2, newOrigin) => {
            if (err2) {
              return handler83.onResponseError(null, err2);
            }
            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: handler83, newOrigin },
                origDispatchOpts
              )
            );
          });
          return true;
        };
      };
    };
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/undici/7.29.0/82a11f569634ba40cb43639a3bacb079ecc63f257fd03395a1e4e8454d841fb0/node_modules/undici/lib/util/cache.js
var require_cache = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/undici/7.29.0/82a11f569634ba40cb43639a3bacb079ecc63f257fd03395a1e4e8454d841fb0/node_modules/undici/lib/util/cache.js"(exports2, module2) {
    "use strict";
    var {
      safeHTTPMethods,
      pathHasQueryOrFragment,
      hasSafeIterator,
      isValidHTTPToken
    } = require_util4();
    var { serializePathWithQuery } = require_util4();
    var MAX_DELTA_SECONDS = 2147483647;
    var RESTRICTIVE_DIRECTIVE_NAMES = ["no-store", "private", "no-cache"];
    var kInvalidCacheControlDirectives = /* @__PURE__ */ Symbol("invalid cache-control directives");
    function trimOWS(value) {
      return value.replace(/^[\t ]+|[\t ]+$/g, "");
    }
    function arrayIncludes(array, value) {
      for (let i4 = 0; i4 < array.length; i4++) {
        if (array[i4] === value) {
          return true;
        }
      }
      return false;
    }
    function trimOWSStart(value) {
      return value.replace(/^[\t ]+/, "");
    }
    function trimOWSEnd(value) {
      return value.replace(/[\t ]+$/, "");
    }
    function findUnescapedQuote(value, start) {
      let escaped = false;
      for (let i4 = start; i4 < value.length; i4++) {
        if (escaped) {
          escaped = false;
        } else if (value[i4] === "\\") {
          escaped = true;
        } else if (value[i4] === '"') {
          return i4;
        }
      }
      return -1;
    }
    function splitCacheControlHeaderValue(value) {
      const directives = [];
      let start = 0;
      let quoteStart = -1;
      let inQuote = false;
      let escaped = false;
      for (let i4 = 0; i4 < value.length; i4++) {
        if (inQuote) {
          if (escaped) {
            escaped = false;
          } else if (value[i4] === "\\") {
            escaped = true;
          } else if (value[i4] === '"') {
            inQuote = false;
            quoteStart = -1;
          }
        } else if (value[i4] === '"') {
          inQuote = true;
          quoteStart = i4;
        } else if (value[i4] === ",") {
          directives.push({ value: value.substring(start, i4), fromMalformedQuote: false });
          start = i4 + 1;
        }
      }
      if (!inQuote) {
        directives.push({ value: value.substring(start), fromMalformedQuote: false });
        return directives;
      }
      const tail2 = value.substring(start);
      const quoteOffset = quoteStart - start;
      let tailStart = 0;
      for (let i4 = 0; i4 < tail2.length; i4++) {
        if (tail2[i4] === ",") {
          directives.push({
            value: tail2.substring(tailStart, i4),
            fromMalformedQuote: tailStart > quoteOffset
          });
          tailStart = i4 + 1;
        }
      }
      directives.push({
        value: tail2.substring(tailStart),
        fromMalformedQuote: tailStart > quoteOffset
      });
      return directives;
    }
    function markInvalidCacheControlDirective(directives, key) {
      let invalidDirectives = directives[kInvalidCacheControlDirectives];
      if (invalidDirectives === void 0) {
        invalidDirectives = /* @__PURE__ */ new Set();
        Object.defineProperty(directives, kInvalidCacheControlDirectives, {
          value: invalidDirectives
        });
      }
      invalidDirectives.add(key);
    }
    function hasInvalidCacheControlDirective(directives, key) {
      return directives[kInvalidCacheControlDirectives]?.has(key) === true;
    }
    function getMalformedRestrictiveDirectiveName(key) {
      for (const directiveName of RESTRICTIVE_DIRECTIVE_NAMES) {
        if (key.startsWith(directiveName) && key.length > directiveName.length && !isValidHTTPToken(key[directiveName.length])) {
          return directiveName;
        }
      }
      let tokenOnlyKey = "";
      let hasInvalidTokenChar = false;
      for (let i4 = 0; i4 < key.length; i4++) {
        if (isValidHTTPToken(key[i4])) {
          tokenOnlyKey += key[i4];
        } else {
          hasInvalidTokenChar = true;
        }
      }
      if (hasInvalidTokenChar && arrayIncludes(RESTRICTIVE_DIRECTIVE_NAMES, tokenOnlyKey)) {
        return tokenOnlyKey;
      }
    }
    function makeCacheKey(opts3) {
      if (!opts3.origin) {
        throw new Error("opts.origin is undefined");
      }
      let fullPath = opts3.path || "/";
      if (opts3.query && !pathHasQueryOrFragment(fullPath)) {
        fullPath = serializePathWithQuery(fullPath, opts3.query);
      }
      return {
        origin: opts3.origin.toString(),
        method: opts3.method,
        path: fullPath,
        headers: opts3.headers
      };
    }
    function appendHeader(headers, key, val) {
      const headerName = key.toLowerCase();
      const current = headers[headerName];
      const values = Array.isArray(val) ? val : [val];
      if (current === void 0) {
        headers[headerName] = Array.isArray(val) ? val.slice() : val;
      } else if (Array.isArray(current)) {
        current.push(...values);
      } else {
        headers[headerName] = [current, ...values];
      }
    }
    function normalizeHeaders(opts3) {
      let headers;
      if (opts3.headers == null) {
        headers = {};
      } else if (typeof opts3.headers === "object") {
        headers = {};
        if (hasSafeIterator(opts3.headers)) {
          for (const x3 of opts3.headers) {
            if (!Array.isArray(x3)) {
              throw new Error("opts.headers is not a valid header map");
            }
            const [key, val] = x3;
            if (typeof key !== "string" || typeof val !== "string") {
              throw new Error("opts.headers is not a valid header map");
            }
            appendHeader(headers, key, val);
          }
        } else {
          for (const key of Object.keys(opts3.headers)) {
            appendHeader(headers, key, opts3.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 = {};
      const invalidNumericDirectives = /* @__PURE__ */ new Set();
      const invalidNoArgumentDirectives = /* @__PURE__ */ new Set();
      const directives = splitCacheControlHeaderValue(Array.isArray(header) ? header.join(",") : header);
      for (let i4 = 0; i4 < directives.length; i4++) {
        const directiveRecord = directives[i4];
        const directive = directiveRecord.value.toLowerCase();
        const fromMalformedQuote = directiveRecord.fromMalformedQuote;
        const keyValueDelimiter = directive.indexOf("=");
        let key;
        let value;
        let keyHasTrailingWhitespace = false;
        let valueHasLeadingWhitespace = false;
        if (keyValueDelimiter !== -1) {
          const rawKey = directive.substring(0, keyValueDelimiter);
          const rawValue = directive.substring(keyValueDelimiter + 1);
          keyHasTrailingWhitespace = trimOWSEnd(rawKey) !== rawKey;
          valueHasLeadingWhitespace = trimOWSStart(rawValue) !== rawValue;
          key = trimOWS(rawKey);
          value = trimOWSStart(rawValue);
        } else {
          key = trimOWS(directive);
        }
        const malformedRestrictiveDirectiveName = getMalformedRestrictiveDirectiveName(key);
        if (malformedRestrictiveDirectiveName !== void 0) {
          output[malformedRestrictiveDirectiveName] = true;
          continue;
        }
        switch (key) {
          case "min-fresh":
          case "max-stale":
          case "max-age":
          case "s-maxage":
          case "stale-while-revalidate":
          case "stale-if-error": {
            if (fromMalformedQuote || invalidNumericDirectives.has(key)) {
              continue;
            }
            if (value === void 0 || keyHasTrailingWhitespace || valueHasLeadingWhitespace) {
              delete output[key];
              invalidNumericDirectives.add(key);
              markInvalidCacheControlDirective(output, key);
              continue;
            }
            if (value.length >= 2 && value[0] === '"' && value[value.length - 1] === '"') {
              value = value.substring(1, value.length - 1);
            }
            if (!/^[0-9]+$/.test(value)) {
              delete output[key];
              invalidNumericDirectives.add(key);
              markInvalidCacheControlDirective(output, key);
              continue;
            }
            const parsedValue = Math.min(parseInt(value, 10), MAX_DELTA_SECONDS);
            if (key === "min-fresh") {
              if (!(key in output) || output[key] < parsedValue) {
                output[key] = parsedValue;
              }
            } else if (!(key in output) || output[key] > parsedValue) {
              output[key] = parsedValue;
            }
            break;
          }
          case "private":
          case "no-cache": {
            if (fromMalformedQuote) {
              output[key] = true;
              break;
            }
            if (value !== void 0 && value.length === 0) {
              output[key] = true;
              break;
            }
            if (value) {
              if (value[0] === '"') {
                value = trimOWSEnd(value);
                let fieldList = "";
                let lastQuotedPart = i4;
                let foundEndingQuote = false;
                const closingQuote = findUnescapedQuote(value, 1);
                if (closingQuote !== -1) {
                  fieldList = value.substring(1, closingQuote);
                  foundEndingQuote = true;
                } else {
                  const fieldListParts = [value.substring(1)];
                  for (let j2 = i4 + 1; j2 < directives.length; j2++) {
                    const nextPart = trimOWS(directives[j2].value);
                    const closingQuote2 = findUnescapedQuote(nextPart, 0);
                    lastQuotedPart = j2;
                    if (closingQuote2 !== -1) {
                      fieldListParts.push(nextPart.substring(0, closingQuote2));
                      foundEndingQuote = true;
                      break;
                    }
                    fieldListParts.push(nextPart);
                  }
                  fieldList = fieldListParts.join(",");
                }
                if (!foundEndingQuote) {
                  output[key] = true;
                  break;
                }
                i4 = lastQuotedPart;
                const headers = fieldList.split(",");
                let validFieldNames = true;
                for (let j2 = 0; j2 < headers.length; j2++) {
                  headers[j2] = trimOWS(headers[j2]);
                  if (!isValidHTTPToken(headers[j2])) {
                    validFieldNames = false;
                  }
                }
                if (!validFieldNames) {
                  output[key] = true;
                } else if (output[key] !== true) {
                  if (key in output) {
                    output[key] = output[key].concat(headers);
                  } else {
                    output[key] = headers;
                  }
                }
              } else {
                const fieldName = trimOWS(value);
                if (!isValidHTTPToken(fieldName)) {
                  output[key] = true;
                } else if (output[key] !== true) {
                  if (key in output) {
                    output[key] = output[key].concat(fieldName);
                  } else {
                    output[key] = [fieldName];
                  }
                }
              }
              break;
            }
          }
          // eslint-disable-next-line no-fallthrough
          case "public":
          case "must-revalidate":
          case "proxy-revalidate":
          case "immutable":
          case "no-transform":
          case "must-understand":
          case "only-if-cached":
            if (fromMalformedQuote || invalidNoArgumentDirectives.has(key)) {
              continue;
            }
            if (value !== void 0) {
              delete output[key];
              invalidNoArgumentDirectives.add(key);
              continue;
            }
            output[key] = true;
            break;
          case "no-store":
            output[key] = true;
            break;
          default:
            continue;
        }
      }
      return output;
    }
    function splitVaryHeader(varyHeader) {
      const values = Array.isArray(varyHeader) ? varyHeader : [varyHeader];
      const output = [];
      for (let i4 = 0; i4 < values.length; i4++) {
        const parts = values[i4].split(",");
        for (let j2 = 0; j2 < parts.length; j2++) {
          output.push(parts[j2]);
        }
      }
      return output;
    }
    function hasVaryStar(varyHeader) {
      const values = splitVaryHeader(varyHeader);
      for (let i4 = 0; i4 < values.length; i4++) {
        if (trimOWS(values[i4]).indexOf("*") !== -1) {
          return true;
        }
      }
      return false;
    }
    function parseVaryHeader(varyHeader, headers) {
      if (hasVaryStar(varyHeader)) {
        return headers;
      }
      const output = (
        /** @type {Record<string, string | string[] | null>} */
        {}
      );
      const varyingHeaders = splitVaryHeader(varyHeader);
      for (const header of varyingHeaders) {
        const trimmedHeader = trimOWS(header).toLowerCase();
        if (trimmedHeader.length === 0) {
          continue;
        }
        if (!isValidHTTPToken(trimmedHeader)) {
          return void 0;
        }
        const headerValue = headers[trimmedHeader];
        output[trimmedHeader] = Array.isArray(headerValue) ? headerValue.slice() : headerValue ?? null;
      }
      return output;
    }
    function isInvalidOrWildcardVaryHeader(varyHeader) {
      return hasVaryStar(varyHeader) || parseVaryHeader(varyHeader, {}) === void 0;
    }
    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 method2 of methods) {
        if (!arrayIncludes(safeHTTPMethods, method2)) {
          throw new TypeError(`element of ${name}-array needs to be one of following values: ${safeHTTPMethods.join(", ")}, got ${method2}`);
        }
      }
    }
    function makeDeduplicationKey(cacheKey, excludeHeaders) {
      const headers = {};
      if (cacheKey.headers) {
        const sortedHeaders = Object.keys(cacheKey.headers).sort();
        for (const header of sortedHeaders) {
          if (excludeHeaders?.has(header.toLowerCase())) {
            continue;
          }
          headers[header] = cacheKey.headers[header];
        }
      }
      return JSON.stringify([cacheKey.origin, cacheKey.method, cacheKey.path, headers]);
    }
    module2.exports = {
      makeCacheKey,
      normalizeHeaders,
      assertCacheKey,
      assertCacheValue,
      parseCacheControlHeader,
      hasInvalidCacheControlDirective,
      parseVaryHeader,
      hasVaryStar,
      isInvalidOrWildcardVaryHeader,
      isEtagUsable,
      assertCacheMethods,
      assertCacheStore,
      makeDeduplicationKey
    };
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/undici/7.29.0/82a11f569634ba40cb43639a3bacb079ecc63f257fd03395a1e4e8454d841fb0/node_modules/undici/lib/util/date.js
var require_date = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/undici/7.29.0/82a11f569634ba40cb43639a3bacb079ecc63f257fd03395a1e4e8454d841fb0/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 makeDate(year, monthIdx, day, hour, minute, second, weekday) {
      const result2 = new Date(Date.UTC(year, monthIdx, day, hour, minute, second));
      if (year >= 0 && year <= 99) {
        result2.setUTCFullYear(year);
      }
      return result2.getUTCFullYear() === year && result2.getUTCMonth() === monthIdx && result2.getUTCDate() === day && result2.getUTCHours() === hour && result2.getUTCMinutes() === minute && result2.getUTCSeconds() === second && result2.getUTCDay() === weekday ? result2 : void 0;
    }
    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);
      }
      return makeDate(year, monthIdx, day, hour, minute, second, weekday);
    }
    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);
      return makeDate(year, monthIdx, day, hour, minute, second, weekday);
    }
    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);
      }
      return makeDate(year, monthIdx, day, hour, minute, second, weekday);
    }
    module2.exports = {
      parseHttpDate
    };
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/undici/7.29.0/82a11f569634ba40cb43639a3bacb079ecc63f257fd03395a1e4e8454d841fb0/node_modules/undici/lib/handler/cache-handler.js
var require_cache_handler = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/undici/7.29.0/82a11f569634ba40cb43639a3bacb079ecc63f257fd03395a1e4e8454d841fb0/node_modules/undici/lib/handler/cache-handler.js"(exports2, module2) {
    "use strict";
    var util70 = require_util4();
    var {
      parseCacheControlHeader,
      hasInvalidCacheControlDirective,
      parseVaryHeader,
      hasVaryStar,
      isInvalidOrWildcardVaryHeader,
      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;
    function trimOWS(value) {
      return value.replace(/^[\t ]+|[\t ]+$/g, "");
    }
    function arrayIncludes(array, value) {
      for (let i4 = 0; i4 < array.length; i4++) {
        if (array[i4] === value) {
          return true;
        }
      }
      return false;
    }
    function appendConnectionHeaderTokens(headersToRemove, connectionHeader) {
      const values = Array.isArray(connectionHeader) ? connectionHeader : [connectionHeader];
      for (let i4 = 0; i4 < values.length; i4++) {
        const tokens = values[i4].split(",");
        for (let j2 = 0; j2 < tokens.length; j2++) {
          headersToRemove.push(trimOWS(tokens[j2]).toLowerCase());
        }
      }
    }
    function getSameOriginPath(cacheKey, location) {
      if (typeof location !== "string") {
        return void 0;
      }
      let originUrl;
      let requestUrl;
      let locationUrl;
      try {
        originUrl = new URL(cacheKey.origin);
        requestUrl = new URL(cacheKey.path, originUrl);
        locationUrl = new URL(location, requestUrl);
      } catch {
        return void 0;
      }
      if (locationUrl.origin !== originUrl.origin) {
        return void 0;
      }
      return locationUrl.pathname + locationUrl.search;
    }
    function deleteCachedUri(store, cacheKey, path240) {
      deleteCachedValue(store, {
        ...cacheKey,
        path: path240
      });
      for (let i4 = 0; i4 < util70.safeHTTPMethods.length; i4++) {
        const method2 = util70.safeHTTPMethods[i4];
        if (method2 !== cacheKey.method) {
          deleteCachedValue(store, {
            ...cacheKey,
            method: method2,
            path: path240
          });
        }
      }
    }
    function deleteLocationTargets(store, cacheKey, headerValue) {
      if (headerValue === void 0) {
        return;
      }
      const values = Array.isArray(headerValue) ? headerValue : [headerValue];
      for (let i4 = 0; i4 < values.length; i4++) {
        const path240 = getSameOriginPath(cacheKey, values[i4]);
        if (path240 !== void 0) {
          deleteCachedUri(store, cacheKey, path240);
        }
      }
    }
    function invalidateUnsafeRequest(store, cacheKey, resHeaders) {
      deleteCachedUri(store, cacheKey, cacheKey.path);
      deleteLocationTargets(store, cacheKey, resHeaders.location);
      deleteLocationTargets(store, cacheKey, resHeaders["content-location"]);
    }
    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, handler83) {
        this.#store = store;
        this.#cacheType = type4;
        this.#cacheByDefault = cacheByDefault;
        this.#cacheKey = cacheKey;
        this.#handler = handler83;
      }
      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 handler83 = this;
        if (!arrayIncludes(util70.safeHTTPMethods, this.#cacheKey.method) && statusCode >= 200 && statusCode <= 399) {
          invalidateUnsafeRequest(this.#store, this.#cacheKey, resHeaders);
          return downstreamOnHeaders();
        }
        const cacheControlHeader = resHeaders["cache-control"];
        const heuristicallyCacheable = resHeaders["last-modified"] && arrayIncludes(HEURISTICALLY_CACHEABLE_STATUS_CODES, statusCode);
        if (!cacheControlHeader && !resHeaders["expires"] && !heuristicallyCacheable && !this.#cacheByDefault) {
          if (statusCode === 304 && resHeaders.vary && isInvalidOrWildcardVaryHeader(resHeaders.vary)) {
            deleteCachedValue(this.#store, this.#cacheKey);
          }
          return downstreamOnHeaders();
        }
        const cacheControlDirectives = cacheControlHeader ? parseCacheControlHeader(cacheControlHeader) : {};
        if (!canCacheResponse(this.#cacheType, statusCode, resHeaders, cacheControlDirectives, this.#cacheKey.headers)) {
          if (statusCode === 304 && (cacheControlHeader || revalidationResponseDisallowsCachedReuse(this.#cacheType, resHeaders, cacheControlDirectives))) {
            deleteCachedValue(this.#store, this.#cacheKey);
          }
          return downstreamOnHeaders();
        }
        const now = Date.now();
        const resAge = Object.hasOwn(resHeaders, "age") ? getAge(resHeaders.age) : void 0;
        if (resAge !== void 0 && resAge >= MAX_RESPONSE_AGE) {
          deleteCachedValueIfNotModified(statusCode, this.#store, this.#cacheKey);
          return downstreamOnHeaders();
        }
        const resDate = Object.hasOwn(resHeaders, "date") ? getDate(resHeaders.date) : void 0;
        if (resDate === null) {
          deleteCachedValueIfNotModified(statusCode, this.#store, this.#cacheKey);
          return downstreamOnHeaders();
        }
        const apparentAge = resDate ? Math.max(0, now - resDate.getTime()) : 0;
        const currentAge = Math.max(apparentAge, resAge ?? 0);
        const staleAt = determineStaleAt(this.#cacheType, now, resAge, resHeaders, resDate, cacheControlDirectives) ?? this.#cacheByDefault;
        if (staleAt === void 0 || currentAge >= staleAt) {
          if (cacheControlHeader || staleAt !== void 0) {
            deleteCachedValueIfNotModified(statusCode, this.#store, this.#cacheKey);
          }
          return downstreamOnHeaders();
        }
        const baseTime = now - currentAge;
        const absoluteStaleAt = staleAt + baseTime;
        if (now >= absoluteStaleAt) {
          deleteCachedValueIfNotModified(statusCode, this.#store, this.#cacheKey);
          return downstreamOnHeaders();
        }
        let varyDirectives;
        if (this.#cacheKey.headers && resHeaders.vary) {
          varyDirectives = parseVaryHeader(resHeaders.vary, this.#cacheKey.headers);
          if (!varyDirectives) {
            return downstreamOnHeaders();
          }
        }
        const cachedAt = baseTime;
        const deleteAt = determineDeleteAt(baseTime, now, cacheControlDirectives, absoluteStaleAt);
        const strippedHeaders = stripNecessaryHeaders(resHeaders, cacheControlDirectives);
        const value = {
          statusCode,
          statusMessage,
          headers: strippedHeaders,
          vary: varyDirectives,
          cacheControlDirectives,
          cachedAt,
          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.vary = varyDirectives ?? cachedValue.vary;
            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() {
                handler83.#writeStream = void 0;
                handler83.#store.delete(handler83.#cacheKey);
              }).on("drain", () => {
                streamCachedBody();
              }).on("close", function() {
                if (handler83.#writeStream === this) {
                  handler83.#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() {
                handler83.#writeStream = void 0;
                handler83.#store.delete(handler83.#cacheKey);
              }).on("close", function() {
                if (handler83.#writeStream === this) {
                  handler83.#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() {
            handler83.#writeStream = void 0;
            handler83.#store.delete(handler83.#cacheKey);
          }).on("close", function() {
            if (handler83.#writeStream === this) {
              handler83.#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, err2) {
        this.#writeStream?.destroy(err2);
        this.#writeStream = void 0;
        this.#handler.onResponseError?.(controller, err2);
      }
    };
    function deleteCachedValue(store, cacheKey) {
      try {
        store.delete(cacheKey)?.catch?.(noop5);
      } catch {
      }
    }
    function deleteCachedValueIfNotModified(statusCode, store, cacheKey) {
      if (statusCode === 304) {
        deleteCachedValue(store, cacheKey);
      }
    }
    function revalidationResponseDisallowsCachedReuse(cacheType, resHeaders, cacheControlDirectives) {
      return cacheControlDirectives["no-store"] === true || cacheType === "shared" && cacheControlDirectives.private === true || (resHeaders.vary ? isInvalidOrWildcardVaryHeader(resHeaders.vary) : false);
    }
    function canCacheResponse(cacheType, statusCode, resHeaders, cacheControlDirectives, reqHeaders) {
      if (statusCode < 200 || arrayIncludes(NOT_UNDERSTOOD_STATUS_CODES, statusCode)) {
        return false;
      }
      if (!arrayIncludes(HEURISTICALLY_CACHEABLE_STATUS_CODES, 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 && hasVaryStar(resHeaders.vary)) {
        return false;
      }
      if (reqHeaders != null && Object.hasOwn(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"]) && arrayIncludes(cacheControlDirectives["no-cache"], "authorization")) {
          return false;
        }
        if (Array.isArray(cacheControlDirectives["private"]) && arrayIncludes(cacheControlDirectives["private"], "authorization")) {
          return false;
        }
      }
      return true;
    }
    function getDate(dateHeader) {
      let dateValue = dateHeader;
      if (Array.isArray(dateValue)) {
        if (dateValue.length !== 1) {
          return null;
        }
        dateValue = dateValue[0];
      }
      if (typeof dateValue !== "string") {
        return null;
      }
      return parseHttpDate(dateValue);
    }
    function getAge(ageHeader) {
      let ageValue = ageHeader;
      if (Array.isArray(ageValue)) {
        if (ageValue.length !== 1) {
          return MAX_RESPONSE_AGE;
        }
        ageValue = ageValue[0];
      }
      if (typeof ageValue !== "string" || !/^[\t ]*[0-9]+[\t ]*$/.test(ageValue)) {
        return MAX_RESPONSE_AGE;
      }
      const age = BigInt(ageValue.replace(/^[\t ]+|[\t ]+$/g, ""));
      if (age >= BigInt(MAX_RESPONSE_AGE / 1e3)) {
        return MAX_RESPONSE_AGE;
      }
      return Number(age) * 1e3;
    }
    function determineStaleAt(cacheType, now, age, resHeaders, responseDate, cacheControlDirectives) {
      if (cacheType === "shared") {
        if (hasInvalidCacheControlDirective(cacheControlDirectives, "s-maxage")) {
          return 0;
        }
        const sMaxAge = cacheControlDirectives["s-maxage"];
        if (sMaxAge !== void 0) {
          return sMaxAge * 1e3;
        }
      }
      if (hasInvalidCacheControlDirective(cacheControlDirectives, "max-age")) {
        return 0;
      }
      const maxAge = cacheControlDirectives["max-age"];
      if (maxAge !== void 0) {
        return maxAge * 1e3;
      }
      if (Object.hasOwn(resHeaders, "expires")) {
        if (typeof resHeaders.expires !== "string") {
          return 0;
        }
        const expiresDate = parseHttpDate(resHeaders.expires);
        if (!expiresDate) {
          return 0;
        }
        if (now >= expiresDate.getTime()) {
          return 0;
        }
        if (responseDate) {
          if (responseDate >= expiresDate) {
            return 0;
          }
          const freshnessLifetime = expiresDate.getTime() - responseDate.getTime();
          if (age !== void 0 && age >= freshnessLifetime) {
            return 0;
          }
          return freshnessLifetime;
        }
        return expiresDate.getTime() - now;
      }
      if (typeof resHeaders["last-modified"] === "string") {
        const lastModified = parseHttpDate(resHeaders["last-modified"]);
        if (lastModified) {
          if (lastModified.getTime() >= now) {
            return void 0;
          }
          const responseAge = now - lastModified.getTime();
          return responseAge * 0.1;
        }
      }
      if (cacheControlDirectives.immutable) {
        return 31536e6;
      }
      return void 0;
    }
    function determineDeleteAt(baseTime, cachedAt, 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 = cachedAt + 31536e6;
      }
      if (staleWhileRevalidate === -Infinity && staleIfError === -Infinity && immutable === -Infinity) {
        const freshnessLifetime = staleAt - baseTime;
        const datePrecisionPadding = Math.min(Math.max(cachedAt - baseTime, 0), 1e3);
        return staleAt + freshnessLifetime + datePrecisionPadding;
      }
      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"]) {
        appendConnectionHeaderTokens(headersToRemove, resHeaders["connection"]);
      }
      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 (Object.hasOwn(resHeaders, headerName)) {
          strippedHeaders ??= { ...resHeaders };
          delete strippedHeaders[headerName];
        }
      }
      return strippedHeaders ?? resHeaders;
    }
    module2.exports = CacheHandler;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/undici/7.29.0/82a11f569634ba40cb43639a3bacb079ecc63f257fd03395a1e4e8454d841fb0/node_modules/undici/lib/cache/memory-cache-store.js
var require_memory_cache_store = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/undici/7.29.0/82a11f569634ba40cb43639a3bacb079ecc63f257fd03395a1e4e8454d841fb0/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(opts3) {
        super();
        if (opts3) {
          if (typeof opts3 !== "object") {
            throw new TypeError("MemoryCacheStore options must be an object");
          }
          if (opts3.maxCount !== void 0) {
            if (typeof opts3.maxCount !== "number" || !Number.isInteger(opts3.maxCount) || opts3.maxCount < 0) {
              throw new TypeError("MemoryCacheStore options.maxCount must be a non-negative integer");
            }
            this.#maxCount = opts3.maxCount;
          }
          if (opts3.maxSize !== void 0) {
            if (typeof opts3.maxSize !== "number" || !Number.isInteger(opts3.maxSize) || opts3.maxSize < 0) {
              throw new TypeError("MemoryCacheStore options.maxSize must be a non-negative integer");
            }
            this.#maxSize = opts3.maxSize;
          }
          if (opts3.maxEntrySize !== void 0) {
            if (typeof opts3.maxEntrySize !== "number" || !Number.isInteger(opts3.maxEntrySize) || opts3.maxEntrySize < 0) {
              throw new TypeError("MemoryCacheStore options.maxEntrySize must be a non-negative integer");
            }
            this.#maxEntrySize = opts3.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 index2 = entries.indexOf(previousEntry);
              entries.splice(index2, 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) {
      for (let i4 = 0; i4 < entries.length; i4++) {
        const entry = entries[i4];
        if (entry.deleteAt > now && entry.method === key.method && varyMatches(key, entry)) {
          return entry;
        }
      }
    }
    function varyMatches(key, entry) {
      if (entry.vary == null) {
        return true;
      }
      for (const headerName in entry.vary) {
        if (Object.hasOwn(entry.vary, headerName) && !headerValueEquals(key.headers?.[headerName], entry.vary[headerName])) {
          return false;
        }
      }
      return true;
    }
    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;
        }
        for (let i4 = 0; i4 < lhs.length; i4++) {
          if (lhs[i4] !== rhs[i4]) {
            return false;
          }
        }
        return true;
      }
      return lhs === rhs;
    }
    module2.exports = MemoryCacheStore;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/undici/7.29.0/82a11f569634ba40cb43639a3bacb079ecc63f257fd03395a1e4e8454d841fb0/node_modules/undici/lib/handler/cache-revalidation-handler.js
var require_cache_revalidation_handler = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/undici/7.29.0/82a11f569634ba40cb43639a3bacb079ecc63f257fd03395a1e4e8454d841fb0/node_modules/undici/lib/handler/cache-revalidation-handler.js"(exports2, module2) {
    "use strict";
    var assert13 = __require("node:assert");
    var CacheRevalidationHandler = class {
      #successful = false;
      /**
       * @type {((success: boolean, context?: any, statusCode?: number, headers?: import('../../types/header.d.ts').IncomingHttpHeaders) => void) | null}
       */
      #callback;
      /**
       * @type {(import('../../types/dispatcher.d.ts').default.DispatchHandler)}
       */
      #handler;
      #context;
      /**
       * @type {boolean}
       */
      #allowErrorStatusCodes;
      /**
       * @param {(success: boolean, context?: any, statusCode?: number, headers?: import('../../types/header.d.ts').IncomingHttpHeaders) => 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, handler83, allowErrorStatusCodes) {
        if (typeof callback2 !== "function") {
          throw new TypeError("callback must be a function");
        }
        this.#callback = callback2;
        this.#handler = handler83;
        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, statusCode, headers);
        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, err2) {
        if (this.#successful) {
          return;
        }
        if (this.#callback) {
          this.#callback(false);
          this.#callback = null;
        }
        if (typeof this.#handler.onResponseError === "function") {
          this.#handler.onResponseError(controller, err2);
        } else {
          throw err2;
        }
      }
    };
    module2.exports = CacheRevalidationHandler;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/undici/7.29.0/82a11f569634ba40cb43639a3bacb079ecc63f257fd03395a1e4e8454d841fb0/node_modules/undici/lib/interceptor/cache.js
var require_cache2 = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/undici/7.29.0/82a11f569634ba40cb43639a3bacb079ecc63f257fd03395a1e4e8454d841fb0/node_modules/undici/lib/interceptor/cache.js"(exports2, module2) {
    "use strict";
    var assert13 = __require("node:assert");
    var { Readable: Readable4 } = __require("node:stream");
    var util70 = require_util4();
    var CacheHandler = require_cache_handler();
    var MemoryCacheStore = require_memory_cache_store();
    var CacheRevalidationHandler = require_cache_revalidation_handler();
    var { assertCacheStore, assertCacheMethods, makeCacheKey, normalizeHeaders, parseCacheControlHeader, isInvalidOrWildcardVaryHeader } = require_cache();
    var { AbortError } = require_errors4();
    var { parseHttpDate } = require_date();
    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 i4 = 0; i4 < origins.length; i4++) {
        const origin = origins[i4];
        if (typeof origin !== "string" && !(origin instanceof RegExp)) {
          throw new TypeError(`expected ${name}[${i4}] to be a string or RegExp, got ${typeof origin}`);
        }
      }
    }
    var nop = () => {
    };
    function trimOWS(value) {
      return value.replace(/^[\t ]+|[\t ]+$/g, "");
    }
    function arrayIncludes(array, value) {
      for (let i4 = 0; i4 < array.length; i4++) {
        if (array[i4] === value) {
          return true;
        }
      }
      return false;
    }
    function hasPragmaNoCache(headers) {
      const pragma = headers?.pragma;
      if (!pragma) {
        return false;
      }
      const values = Array.isArray(pragma) ? pragma : [pragma];
      for (let i4 = 0; i4 < values.length; i4++) {
        const value = values[i4];
        if (typeof value !== "string") {
          continue;
        }
        const directives = value.split(",");
        for (let j2 = 0; j2 < directives.length; j2++) {
          if (trimOWS(directives[j2]).toLowerCase() === "no-cache") {
            return true;
          }
        }
      }
      return false;
    }
    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 staleResponseRequiresRevalidation(result2, cacheType) {
      return result2.cacheControlDirectives?.["must-revalidate"] === true || cacheType === "shared" && (result2.cacheControlDirectives?.["proxy-revalidate"] === true || // https://www.rfc-editor.org/rfc/rfc9111.html#section-5.2.2.10
      // s-maxage implies proxy-revalidate for shared caches.
      result2.cacheControlDirectives?.["s-maxage"] !== void 0);
    }
    function revalidationResponseDisallowsCachedReuse(cacheType, headers) {
      if (headers.vary && isInvalidOrWildcardVaryHeader(headers.vary)) {
        return true;
      }
      const cacheControl = headers["cache-control"];
      if (!cacheControl) {
        return false;
      }
      const cacheControlDirectives = parseCacheControlHeader(cacheControl);
      return cacheControlDirectives["no-store"] === true || cacheType === "shared" && cacheControlDirectives.private === true;
    }
    function revalidationResponseUpdatesCacheControl(headers) {
      return headers["cache-control"] !== void 0;
    }
    function deleteCachedValue(store, cacheKey) {
      try {
        store.delete(cacheKey)?.catch?.(nop);
      } catch {
      }
    }
    function getUsableLastModified(headers) {
      const lastModified = headers?.["last-modified"];
      if (typeof lastModified === "string" && parseHttpDate(lastModified)) {
        return lastModified;
      }
    }
    function makeRevalidationHeaders(opts3, result2) {
      const headers = {
        ...opts3.headers,
        "if-modified-since": getUsableLastModified(result2.headers) ?? 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 headers;
    }
    function isStale(result2, cacheControlDirectives, cacheType) {
      const now = Date.now();
      if (now > result2.staleAt) {
        if (!staleResponseRequiresRevalidation(result2, cacheType) && 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, cacheType) {
      const staleWhileRevalidate = result2.cacheControlDirectives?.["stale-while-revalidate"];
      if (!staleWhileRevalidate || staleResponseRequiresRevalidation(result2, cacheType)) {
        return false;
      }
      const now = Date.now();
      const staleWhileRevalidateExpiry = result2.staleAt + staleWhileRevalidate * 1e3;
      return now <= staleWhileRevalidateExpiry;
    }
    function handleUncachedResponse(dispatch, globalOpts, cacheKey, handler83, opts3, reqCacheControl) {
      if (reqCacheControl?.["only-if-cached"]) {
        let aborted2 = false;
        try {
          if (typeof handler83.onConnect === "function") {
            handler83.onConnect(() => {
              aborted2 = true;
            });
            if (aborted2) {
              return;
            }
          }
          if (typeof handler83.onHeaders === "function") {
            handler83.onHeaders(504, [], nop, "Gateway Timeout");
            if (aborted2) {
              return;
            }
          }
          if (typeof handler83.onComplete === "function") {
            handler83.onComplete([]);
          }
        } catch (err2) {
          if (typeof handler83.onError === "function") {
            handler83.onError(err2);
          }
        }
        return true;
      }
      return dispatch(opts3, new CacheHandler(globalOpts, cacheKey, handler83));
    }
    function sendCachedValue(handler83, opts3, result2, age, context, isStale2) {
      const stream2 = util70.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(err2) {
        if (!this.readableEnded) {
          if (typeof handler83.onResponseError === "function") {
            handler83.onResponseError(controller, err2);
          } else {
            throw err2;
          }
        }
      }).on("close", function() {
        if (!this.errored) {
          handler83.onResponseEnd?.(controller, {});
        }
      });
      handler83.onRequestStart?.(controller, context);
      if (stream2.destroyed) {
        return;
      }
      const headers = { ...result2.headers, age: String(age) };
      if (isStale2) {
        headers.warning = '110 - "response is stale"';
      }
      handler83.onResponseStart?.(controller, result2.statusCode, headers, result2.statusMessage);
      if (opts3.method === "HEAD") {
        stream2.destroy();
      } else {
        stream2.on("data", function(chunk) {
          handler83.onResponseData?.(controller, chunk);
        });
      }
    }
    function handleResult2(dispatch, globalOpts, cacheKey, handler83, opts3, reqCacheControl, result2) {
      if (!result2) {
        return handleUncachedResponse(dispatch, globalOpts, cacheKey, handler83, opts3, reqCacheControl);
      }
      const now = Date.now();
      if (now > result2.deleteAt) {
        return dispatch(opts3, new CacheHandler(globalOpts, cacheKey, handler83));
      }
      const age = Math.round((now - result2.cachedAt) / 1e3);
      const requestMaxAgeExpired = reqCacheControl?.["max-age"] !== void 0 && age >= reqCacheControl["max-age"];
      const stale = requestMaxAgeExpired || isStale(result2, reqCacheControl, globalOpts.type);
      const revalidate = requestMaxAgeExpired || needsRevalidation(result2, reqCacheControl, opts3);
      if (stale || revalidate) {
        if (util70.isStream(opts3.body) && util70.bodyLength(opts3.body) !== 0) {
          return dispatch(opts3, new CacheHandler(globalOpts, cacheKey, handler83));
        }
        if (!revalidate && withinStaleWhileRevalidateWindow(result2, globalOpts.type)) {
          sendCachedValue(handler83, opts3, result2, age, null, true);
          queueMicrotask(() => {
            const headers2 = makeRevalidationHeaders(opts3, result2);
            dispatch(
              {
                ...opts3,
                headers: headers2
              },
              new CacheHandler(globalOpts, cacheKey, {
                // Silent handler that just updates the cache
                onRequestStart() {
                },
                onRequestUpgrade() {
                },
                onResponseStart() {
                },
                onResponseData() {
                },
                onResponseEnd() {
                },
                onResponseError() {
                }
              })
            );
          });
          return true;
        }
        let withinStaleIfErrorThreshold = false;
        if (!staleResponseRequiresRevalidation(result2, globalOpts.type)) {
          const staleIfErrorExpiry = result2.cacheControlDirectives["stale-if-error"] ?? reqCacheControl?.["stale-if-error"];
          if (staleIfErrorExpiry) {
            withinStaleIfErrorThreshold = now < result2.staleAt + staleIfErrorExpiry * 1e3;
          }
        }
        const headers = makeRevalidationHeaders(opts3, result2);
        return dispatch(
          {
            ...opts3,
            headers
          },
          new CacheRevalidationHandler(
            (success, context, statusCode, headers2) => {
              if (success) {
                if (statusCode === 304) {
                  if (revalidationResponseDisallowsCachedReuse(globalOpts.type, headers2)) {
                    if (util70.isStream(result2.body)) {
                      result2.body.on("error", nop).destroy();
                    }
                    deleteCachedValue(globalOpts.store, cacheKey);
                    return dispatch(opts3, new CacheHandler(globalOpts, cacheKey, handler83));
                  }
                  if (revalidationResponseUpdatesCacheControl(headers2)) {
                    deleteCachedValue(globalOpts.store, cacheKey);
                  }
                }
                sendCachedValue(handler83, opts3, result2, age, context, stale);
              } else if (util70.isStream(result2.body)) {
                result2.body.on("error", nop).destroy();
              }
            },
            new CacheHandler(globalOpts, cacheKey, handler83),
            withinStaleIfErrorThreshold
          )
        );
      }
      if (util70.isStream(opts3.body)) {
        opts3.body.on("error", nop).destroy();
      }
      sendCachedValue(handler83, opts3, result2, age, null, false);
    }
    module2.exports = (opts3 = {}) => {
      const {
        store = new MemoryCacheStore(),
        methods = ["GET"],
        cacheByDefault = void 0,
        type: type4 = "shared",
        origins = void 0
      } = opts3;
      if (typeof opts3 !== "object" || opts3 === null) {
        throw new TypeError(`expected type of opts to be an Object, got ${opts3 === null ? "null" : typeof opts3}`);
      }
      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 = [];
      for (let i4 = 0; i4 < util70.safeHTTPMethods.length; i4++) {
        const method2 = util70.safeHTTPMethods[i4];
        if (!arrayIncludes(methods, method2)) {
          safeMethodsToNotCache.push(method2);
        }
      }
      return (dispatch) => {
        return (opts4, handler83) => {
          if (!opts4.origin || arrayIncludes(safeMethodsToNotCache, opts4.method)) {
            return dispatch(opts4, handler83);
          }
          if (origins !== void 0) {
            const requestOrigin = opts4.origin.toString().toLowerCase();
            let isAllowed = false;
            for (let i4 = 0; i4 < origins.length; i4++) {
              const allowed = origins[i4];
              if (typeof allowed === "string") {
                if (allowed.toLowerCase() === requestOrigin) {
                  isAllowed = true;
                  break;
                }
              } else if (allowed.test(requestOrigin)) {
                isAllowed = true;
                break;
              }
            }
            if (!isAllowed) {
              return dispatch(opts4, handler83);
            }
          }
          opts4 = {
            ...opts4,
            headers: normalizeHeaders(opts4)
          };
          const reqCacheControl = opts4.headers?.["cache-control"] ? parseCacheControlHeader(opts4.headers["cache-control"]) : hasPragmaNoCache(opts4.headers) ? { "no-cache": true } : void 0;
          if (reqCacheControl?.["no-store"]) {
            return dispatch(opts4, handler83);
          }
          const cacheKey = makeCacheKey(opts4);
          const result2 = store.get(cacheKey);
          if (result2 && typeof result2.then === "function") {
            return result2.then((result3) => handleResult2(
              dispatch,
              globalOpts,
              cacheKey,
              handler83,
              opts4,
              reqCacheControl,
              result3
            ));
          } else {
            return handleResult2(
              dispatch,
              globalOpts,
              cacheKey,
              handler83,
              opts4,
              reqCacheControl,
              result2
            );
          }
        };
      };
    };
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/undici/7.29.0/82a11f569634ba40cb43639a3bacb079ecc63f257fd03395a1e4e8454d841fb0/node_modules/undici/lib/interceptor/decompress.js
var require_decompress = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/undici/7.29.0/82a11f569634ba40cb43639a3bacb079ecc63f257fd03395a1e4e8454d841fb0/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(handler83, { skipStatusCodes = defaultSkipStatusCodes, skipErrorResponses = true } = {}) {
        super(handler83);
        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 i4 = parts.length - 1; i4 >= 0; i4--) {
          const encoding = parts[i4].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, (err2) => {
          if (err2) {
            super.onResponseError(controller, err2);
            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, err2) {
        if (this.#decompressors.length > 0) {
          for (const decompressor of this.#decompressors) {
            decompressor.destroy(err2);
          }
          this.#cleanupDecompressors();
        }
        super.onResponseError(controller, err2);
      }
    };
    function createDecompressInterceptor(options = {}) {
      if (!warningEmitted) {
        process.emitWarning(
          "DecompressInterceptor is experimental and subject to change",
          "ExperimentalWarning"
        );
        warningEmitted = true;
      }
      return (dispatch) => {
        return (opts3, handler83) => {
          const decompressHandler = new DecompressHandler(handler83, options);
          return dispatch(opts3, decompressHandler);
        };
      };
    }
    module2.exports = createDecompressInterceptor;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/undici/7.29.0/82a11f569634ba40cb43639a3bacb079ecc63f257fd03395a1e4e8454d841fb0/node_modules/undici/lib/handler/deduplication-handler.js
var require_deduplication_handler = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/undici/7.29.0/82a11f569634ba40cb43639a3bacb079ecc63f257fd03395a1e4e8454d841fb0/node_modules/undici/lib/handler/deduplication-handler.js"(exports2, module2) {
    "use strict";
    var { RequestAbortedError } = require_errors4();
    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(handler83) {
        if (this.#completed || this.#responseDataStarted) {
          return false;
        }
        const waitingHandler = this.#createWaitingHandler(handler83);
        const waitingController = waitingHandler.controller;
        try {
          handler83.onRequestStart?.(waitingController, null);
          if (waitingController.aborted) {
            waitingHandler.done = true;
            return true;
          }
          if (this.#responseStarted) {
            handler83.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: handler83, controller: waitingController } = waitingHandler;
          if (waitingHandler.done || waitingController.aborted) {
            waitingHandler.done = true;
            continue;
          }
          try {
            handler83.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: handler83, controller: waitingController } = waitingHandler;
          if (waitingHandler.done || waitingController.aborted) {
            waitingHandler.done = true;
            continue;
          }
          if (waitingController.paused) {
            this.#bufferWaitingChunk(waitingHandler, chunk);
            continue;
          }
          try {
            handler83.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, err2) {
        if (this.#completed) {
          return;
        }
        this.#aborted = true;
        this.#completed = true;
        this.#primaryHandler.onResponseError?.(controller, err2);
        for (const waitingHandler of this.#waitingHandlers) {
          this.#errorWaitingHandler(waitingHandler, err2);
        }
        this.#waitingHandlers = [];
        this.#onComplete?.();
      }
      /**
       * @param {DispatchHandler} handler
       * @returns {WaitingHandler}
       */
      #createWaitingHandler(handler83) {
        const waitingHandler = {
          handler: handler83,
          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 err2 = new RequestAbortedError(`Deduplicated waiting handler exceeded maxBufferSize (${this.#maxBufferSize} bytes) while paused`);
          this.#errorWaitingHandler(waitingHandler, err2);
        }
      }
      /**
       * @param {WaitingHandler} waitingHandler
       */
      #flushWaitingHandler(waitingHandler) {
        const { handler: handler83, controller } = waitingHandler;
        while (!waitingHandler.done && !controller.aborted && !controller.paused && waitingHandler.bufferedChunks.length > 0) {
          const bufferedChunk = waitingHandler.bufferedChunks.shift();
          waitingHandler.bufferedBytes -= bufferedChunk.length;
          try {
            handler83.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, err2) {
        if (waitingHandler.done) {
          return;
        }
        waitingHandler.done = true;
        waitingHandler.pendingTrailers = null;
        waitingHandler.bufferedChunks = [];
        waitingHandler.bufferedBytes = 0;
        try {
          waitingHandler.controller.abort(err2);
          waitingHandler.handler.onResponseError?.(waitingHandler.controller, err2);
        } catch {
        }
      }
      #pruneDoneWaitingHandlers() {
        this.#waitingHandlers = this.#waitingHandlers.filter((waitingHandler) => waitingHandler.done === false);
      }
    };
    module2.exports = DeduplicationHandler;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/undici/7.29.0/82a11f569634ba40cb43639a3bacb079ecc63f257fd03395a1e4e8454d841fb0/node_modules/undici/lib/interceptor/deduplicate.js
var require_deduplicate = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/undici/7.29.0/82a11f569634ba40cb43639a3bacb079ecc63f257fd03395a1e4e8454d841fb0/node_modules/undici/lib/interceptor/deduplicate.js"(exports2, module2) {
    "use strict";
    var diagnosticsChannel = __require("node:diagnostics_channel");
    var util70 = require_util4();
    var DeduplicationHandler = require_deduplication_handler();
    var { normalizeHeaders, makeCacheKey, makeDeduplicationKey } = require_cache();
    var pendingRequestsChannel = diagnosticsChannel.channel("undici:request:pending-requests");
    module2.exports = (opts3 = {}) => {
      const {
        methods = ["GET"],
        skipHeaderNames = [],
        excludeHeaderNames = [],
        maxBufferSize = 5 * 1024 * 1024
      } = opts3;
      if (typeof opts3 !== "object" || opts3 === null) {
        throw new TypeError(`expected type of opts to be an Object, got ${opts3 === null ? "null" : typeof opts3}`);
      }
      if (!Array.isArray(methods)) {
        throw new TypeError(`expected opts.methods to be an array, got ${typeof methods}`);
      }
      for (const method2 of methods) {
        if (!util70.safeHTTPMethods.includes(method2)) {
          throw new TypeError(`expected opts.methods to only contain safe HTTP methods, got ${method2}`);
        }
      }
      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 (opts4, handler83) => {
          if (!opts4.origin || methods.includes(opts4.method) === false) {
            return dispatch(opts4, handler83);
          }
          opts4 = {
            ...opts4,
            headers: normalizeHeaders(opts4)
          };
          if (skipHeaderNamesSet.size > 0) {
            for (const headerName of Object.keys(opts4.headers)) {
              if (skipHeaderNamesSet.has(headerName.toLowerCase())) {
                return dispatch(opts4, handler83);
              }
            }
          }
          const cacheKey = makeCacheKey(opts4);
          const dedupeKey = makeDeduplicationKey(cacheKey, excludeHeaderNamesSet);
          const pendingHandler = pendingRequests.get(dedupeKey);
          if (pendingHandler) {
            if (pendingHandler.addWaitingHandler(handler83)) {
              return true;
            }
            return dispatch(opts4, handler83);
          }
          const deduplicationHandler = new DeduplicationHandler(
            handler83,
            () => {
              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(opts4, deduplicationHandler);
        };
      };
    };
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/undici/7.29.0/82a11f569634ba40cb43639a3bacb079ecc63f257fd03395a1e4e8454d841fb0/node_modules/undici/lib/cache/sqlite-cache-store.js
var require_sqlite_cache_store = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/undici/7.29.0/82a11f569634ba40cb43639a3bacb079ecc63f257fd03395a1e4e8454d841fb0/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 VERSION2 = 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(opts3) {
        if (opts3) {
          if (typeof opts3 !== "object") {
            throw new TypeError("SqliteCacheStore options must be an object");
          }
          if (opts3.maxEntrySize !== void 0) {
            if (typeof opts3.maxEntrySize !== "number" || !Number.isInteger(opts3.maxEntrySize) || opts3.maxEntrySize < 0) {
              throw new TypeError("SqliteCacheStore options.maxEntrySize must be a non-negative integer");
            }
            if (opts3.maxEntrySize > MAX_ENTRY_SIZE) {
              throw new TypeError("SqliteCacheStore options.maxEntrySize must be less than 2gb");
            }
            this.#maxEntrySize = opts3.maxEntrySize;
          }
          if (opts3.maxCount !== void 0) {
            if (typeof opts3.maxCount !== "number" || !Number.isInteger(opts3.maxCount) || opts3.maxCount < 0) {
              throw new TypeError("SqliteCacheStore options.maxCount must be a non-negative integer");
            }
            this.#maxCount = opts3.maxCount;
          }
        }
        if (!DatabaseSync2) {
          DatabaseSync2 = __require("node:sqlite").DatabaseSync;
        }
        this.#db = new DatabaseSync2(opts3?.location ?? ":memory:");
        this.#db.exec(`
      PRAGMA journal_mode = WAL;
      PRAGMA synchronous = NORMAL;
      PRAGMA temp_store = memory;
      PRAGMA optimize;

      CREATE TABLE IF NOT EXISTS cacheInterceptorV${VERSION2} (
        -- 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${VERSION2}_getValuesQuery ON cacheInterceptorV${VERSION2}(url, method, deleteAt);
      CREATE INDEX IF NOT EXISTS idx_cacheInterceptorV${VERSION2}_deleteByUrlQuery ON cacheInterceptorV${VERSION2}(deleteAt);
    `);
        this.#getValuesQuery = this.#db.prepare(`
      SELECT
        id,
        body,
        deleteAt,
        statusCode,
        statusMessage,
        headers,
        etag,
        cacheControlDirectives,
        vary,
        cachedAt,
        staleAt
      FROM cacheInterceptorV${VERSION2}
      WHERE
        url = ?
        AND method = ?
      ORDER BY
        deleteAt ASC
    `);
        this.#updateValueQuery = this.#db.prepare(`
      UPDATE cacheInterceptorV${VERSION2} SET
        body = ?,
        deleteAt = ?,
        statusCode = ?,
        statusMessage = ?,
        headers = ?,
        etag = ?,
        cacheControlDirectives = ?,
        cachedAt = ?,
        staleAt = ?
      WHERE
        id = ?
    `);
        this.#insertValueQuery = this.#db.prepare(`
      INSERT INTO cacheInterceptorV${VERSION2} (
        url,
        method,
        body,
        deleteAt,
        statusCode,
        statusMessage,
        headers,
        etag,
        cacheControlDirectives,
        vary,
        cachedAt,
        staleAt
      ) VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?)
    `);
        this.#deleteByUrlQuery = this.#db.prepare(
          `DELETE FROM cacheInterceptorV${VERSION2} WHERE url = ?`
        );
        this.#countEntriesQuery = this.#db.prepare(
          `SELECT COUNT(*) AS total FROM cacheInterceptorV${VERSION2}`
        );
        this.#deleteExpiredValuesQuery = this.#db.prepare(
          `DELETE FROM cacheInterceptorV${VERSION2} WHERE deleteAt <= ?`
        );
        this.#deleteOldValuesQuery = this.#maxCount === Infinity ? null : this.#db.prepare(`
        DELETE FROM cacheInterceptorV${VERSION2}
        WHERE id IN (
          SELECT
            id
          FROM cacheInterceptorV${VERSION2}
          ORDER BY cachedAt ASC
          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.#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
          );
          this.#prune();
        }
      }
      /**
       * @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: method2 } = key;
        const values = this.#getValuesQuery.all(url7, method2);
        if (values.length === 0) {
          return void 0;
        }
        const now = Date.now();
        for (const value of values) {
          if (now >= value.deleteAt && !canBeExpired) {
            continue;
          }
          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;
        }
        for (let i4 = 0; i4 < lhs.length; i4++) {
          if (lhs[i4] !== rhs[i4]) {
            return false;
          }
        }
        return true;
      }
      return lhs === rhs;
    }
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/undici/7.29.0/82a11f569634ba40cb43639a3bacb079ecc63f257fd03395a1e4e8454d841fb0/node_modules/undici/lib/web/fetch/headers.js
var require_headers = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/undici/7.29.0/82a11f569634ba40cb43639a3bacb079ecc63f257fd03395a1e4e8454d841fb0/node_modules/undici/lib/web/fetch/headers.js"(exports2, module2) {
    "use strict";
    var { kConstruct } = require_symbols();
    var { kEnumerableProperty } = require_util4();
    var {
      iteratorMixin,
      isValidHeaderName,
      isValidHeaderValue
    } = require_util5();
    var { webidl } = require_webidl();
    var assert13 = __require("node:assert");
    var util70 = __require("node:util");
    function isHTTPWhiteSpaceCharCode(code) {
      return code === 10 || code === 13 || code === 9 || code === 32;
    }
    function headerValueNormalize(potentialValue) {
      let i4 = 0;
      let j2 = potentialValue.length;
      while (j2 > i4 && isHTTPWhiteSpaceCharCode(potentialValue.charCodeAt(j2 - 1))) --j2;
      while (j2 > i4 && isHTTPWhiteSpaceCharCode(potentialValue.charCodeAt(i4))) ++i4;
      return i4 === 0 && j2 === potentialValue.length ? potentialValue : potentialValue.substring(i4, j2);
    }
    function fill(headers, object) {
      if (Array.isArray(object)) {
        for (let i4 = 0; i4 < object.length; ++i4) {
          const header = object[i4];
          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 i4 = 0; i4 < keys4.length; ++i4) {
          appendHeader(headers, keys4[i4], object[keys4[i4]]);
        }
      } 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 i4 = 0; i4 < names.length; ++i4) {
        const { 0: name, 1: value } = names[i4];
        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 i4 = 1, j2 = 0, right = 0, left = 0, pivot = 0, x3, value; i4 < size; ++i4) {
            value = iterator.next().value;
            x3 = array[i4] = [value[0], value[1].value];
            assert13(x3[1] !== null);
            left = 0;
            right = i4;
            while (left < right) {
              pivot = left + (right - left >> 1);
              if (array[pivot][0] <= x3[0]) {
                left = pivot + 1;
              } else {
                right = pivot;
              }
            }
            if (i4 !== pivot) {
              j2 = i4;
              while (j2 > left) {
                array[j2] = array[--j2];
              }
              array[left] = x3;
            }
          }
          if (!iterator.next().done) {
            throw new TypeError("Unreachable");
          }
          return array;
        } else {
          let i4 = 0;
          for (const { 0: name, 1: { value } } of this.headersMap) {
            array[i4++] = [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 [];
      }
      [util70.inspect.custom](depth, options) {
        options.depth ??= depth;
        return `Headers ${util70.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
      },
      [util70.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 (!util70.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
    };
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/undici/7.29.0/82a11f569634ba40cb43639a3bacb079ecc63f257fd03395a1e4e8454d841fb0/node_modules/undici/lib/web/fetch/response.js
var require_response = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/undici/7.29.0/82a11f569634ba40cb43639a3bacb079ecc63f257fd03395a1e4e8454d841fb0/node_modules/undici/lib/web/fetch/response.js"(exports2, module2) {
    "use strict";
    var { Headers: Headers2, HeadersList, fill, getHeadersGuard, setHeadersGuard, setHeadersList } = require_headers();
    var { extractBody, cloneBody, mixinBody, streamRegistry, bodyUnusable } = require_body();
    var util70 = require_util4();
    var nodeUtil = __require("node:util");
    var { kEnumerableProperty } = util70;
    var {
      isValidReasonPhrase,
      isCancelled,
      isAborted,
      isErrorLike,
      environmentSettingsObject: relevantRealm
    } = require_util5();
    var {
      redirectStatusSet,
      nullBodyStatus
    } = require_constants13();
    var { webidl } = require_webidl();
    var { URLSerializer } = require_data_url();
    var { kConstruct } = require_symbols();
    var assert13 = __require("node:assert");
    var { isomorphicEncode, serializeJavascriptValueToJSONString } = require_infra();
    var textEncoder4 = 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 = textEncoder4.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 (err2) {
          throw new TypeError(`Failed to parse URL from ${url7}`, { cause: err2 });
        }
        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 && util70.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, err2 = null) {
      assert13(isCancelled(fetchParams));
      return isAborted(fetchParams) ? makeNetworkError(Object.assign(new DOMException("The operation was aborted.", "AbortError"), { cause: err2 })) : makeNetworkError(Object.assign(new DOMException("Request was cancelled."), { cause: err2 }));
    }
    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
    };
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/undici/7.29.0/82a11f569634ba40cb43639a3bacb079ecc63f257fd03395a1e4e8454d841fb0/node_modules/undici/lib/web/fetch/request.js
var require_request2 = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/undici/7.29.0/82a11f569634ba40cb43639a3bacb079ecc63f257fd03395a1e4e8454d841fb0/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_headers();
    var util70 = require_util4();
    var nodeUtil = __require("node:util");
    var {
      isValidHTTPToken,
      sameOrigin,
      environmentSettingsObject
    } = require_util5();
    var {
      forbiddenMethodsSet,
      corsSafeListedMethodsSet,
      referrerPolicy,
      requestRedirect,
      requestMode,
      requestCredentials,
      requestCache,
      requestDuplex
    } = require_constants13();
    var { kEnumerableProperty, normalizedMethodRecordsBase, normalizedMethodRecords } = util70;
    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 (err2) {
            throw new TypeError("Failed to parse URL from " + input, { cause: err2 });
          }
          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 (err2) {
              throw new TypeError(`Referrer "${referrer}" is not a valid URL.`, { cause: err2 });
            }
            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 method2 = init2.method;
          const mayBeNormalized = normalizedMethodRecords[method2];
          if (mayBeNormalized !== void 0) {
            request.method = mayBeNormalized;
          } else {
            if (!isValidHTTPToken(method2)) {
              throw new TypeError(`'${method2}' is not a valid HTTP method.`);
            }
            const upperCase = method2.toUpperCase();
            if (forbiddenMethodsSet.has(upperCase)) {
              throw new TypeError(`'${method2}' HTTP method is unsupported.`);
            }
            method2 = normalizedMethodRecordsBase[upperCase] ?? method2;
            request.method = method2;
          }
          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);
            }
            util70.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 && util70.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);
          util70.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
    };
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/undici/7.29.0/82a11f569634ba40cb43639a3bacb079ecc63f257fd03395a1e4e8454d841fb0/node_modules/undici/lib/web/subresource-integrity/subresource-integrity.js
var require_subresource_integrity = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/undici/7.29.0/82a11f569634ba40cb43639a3bacb079ecc63f257fd03395a1e4e8454d841fb0/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 crypto14;
    if (runtimeFeatures.has("crypto")) {
      crypto14 = __require("node:crypto");
      const cryptoHashes = crypto14.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 crypto14.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 i4 = 0; i4 < actualValueLength; ++i4) {
        if (actualValue[i4] === expectedValue[i4] || actualValue[i4] === "+" && expectedValue[i4] === "-" || actualValue[i4] === "/" && expectedValue[i4] === "_") {
          continue;
        }
        return false;
      }
      return true;
    }
    module2.exports = {
      applyAlgorithmToBytes,
      bytesMatch,
      caseSensitiveMatch,
      isValidSRIHashAlgorithm,
      getStrongestMetadata,
      parseMetadata
    };
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/undici/7.29.0/82a11f569634ba40cb43639a3bacb079ecc63f257fd03395a1e4e8454d841fb0/node_modules/undici/lib/web/fetch/index.js
var require_fetch = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/undici/7.29.0/82a11f569634ba40cb43639a3bacb079ecc63f257fd03395a1e4e8454d841fb0/node_modules/undici/lib/web/fetch/index.js"(exports2, module2) {
    "use strict";
    var {
      makeNetworkError,
      makeAppropriateNetworkError,
      filterResponse,
      makeResponse,
      fromInnerResponse,
      getResponseState
    } = require_response();
    var { HeadersList } = require_headers();
    var { Request, cloneRequest, getRequestDispatcher, getRequestState } = require_request2();
    var zlib2 = __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_util5();
    var assert13 = __require("node:assert");
    var { safelyExtractBody, extractBody } = require_body();
    var {
      redirectStatusSet,
      nullBodyStatus,
      safeMethodsSet,
      requestBodyHeader,
      subresourceSet
    } = require_constants13();
    var EE = __require("node:events");
    var { Readable: Readable4, pipeline: pipeline2, finished: finished7, isErrored, isReadable } = __require("node:stream");
    var { addAbortListener: addAbortListener3, bufferToLowerCasedHeaderName } = require_util4();
    var { dataURLProcessor, serializeAMimeType, minimizeSupportedMimeType } = require_data_url();
    var { getGlobalDispatcher: getGlobalDispatcher2 } = 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 fetch3(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((err2) => {
          if (err2.code === "ERR_INVALID_STATE") {
            return;
          }
          throw err2;
        });
      }
      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 = getGlobalDispatcher2(),
      // 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 (err2) {
        fetchParams.controller.terminate(err2);
      }
    }
    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((err2) => makeNetworkError(err2));
        }
        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 !== "navigate" || !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 (err2) {
        return Promise.resolve(makeNetworkError(err2));
      }
      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.contains("content-length", true)) {
        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(err2, abort = true) {
          if (!this.destroyed) {
            this.destroyed = true;
            if (abort) {
              this.abort?.(err2 ?? 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 (err2) {
            processBodyError(err2);
          }
        })();
      }
      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 (err2) {
        if (err2.name === "AbortError") {
          fetchParams.controller.connection.destroy();
          return makeAppropriateNetworkError(fetchParams, err2);
        }
        return makeNetworkError(err2);
      }
      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 (err2) {
            if (fetchParams.controller.ended && !timingInfo.encodedBodySize) {
              bytes = void 0;
            } else {
              bytes = err2;
              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 path240 = url7.pathname + url7.search;
        const hasTrailingQuestionMark = url7.search.length === 0 && url7.href[url7.href.length - url7.hash.length - 1] === "?";
        return new Promise((resolve4, reject3) => agent.dispatch(
          {
            path: hasTrailingQuestionMark ? `${path240}?` : path240,
            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 i4 = 0; i4 < rawHeaders.length; i4 += 2) {
                const nameStr = bufferToLowerCasedHeaderName(rawHeaders[i4]);
                const value = rawHeaders[i4 + 1];
                if (Array.isArray(value) && !Buffer.isBuffer(rawHeaders[i4 + 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 i4 = codings.length - 1; i4 >= 0; --i4) {
                  const coding = codings[i4].trim();
                  if (coding === "x-gzip" || coding === "gzip") {
                    decoders.push(zlib2.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: zlib2.constants.Z_SYNC_FLUSH,
                      finishFlush: zlib2.constants.Z_SYNC_FLUSH
                    }));
                  } else if (coding === "deflate") {
                    decoders.push(createInflate({
                      flush: zlib2.constants.Z_SYNC_FLUSH,
                      finishFlush: zlib2.constants.Z_SYNC_FLUSH
                    }));
                  } else if (coding === "br") {
                    decoders.push(zlib2.createBrotliDecompress({
                      flush: zlib2.constants.BROTLI_OPERATION_FLUSH,
                      finishFlush: zlib2.constants.BROTLI_OPERATION_FLUSH
                    }));
                  } else if (coding === "zstd" && hasZstd) {
                    decoders.push(zlib2.createZstdDecompress({
                      flush: zlib2.constants.ZSTD_e_continue,
                      finishFlush: zlib2.constants.ZSTD_e_end
                    }));
                  } else {
                    decoders.length = 0;
                    break;
                  }
                }
              }
              const onError = this.onError.bind(this);
              resolve4({
                status,
                statusText,
                headersList,
                body: decoders.length ? pipeline2(this.body, ...decoders, (err2) => {
                  if (err2) {
                    this.onError(err2);
                  }
                }).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);
                }
              }
              resolve4({
                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 i4 = 0; i4 < rawHeaders.length; i4 += 2) {
                const nameStr = bufferToLowerCasedHeaderName(rawHeaders[i4]);
                const value = rawHeaders[i4 + 1];
                if (Array.isArray(value) && !Buffer.isBuffer(rawHeaders[i4 + 1])) {
                  for (const val of value) {
                    headersList.append(nameStr, val.toString("latin1"), true);
                  }
                } else {
                  headersList.append(nameStr, value.toString("latin1"), true);
                }
              }
              resolve4({
                status,
                statusText: STATUS_CODES[status],
                headersList,
                socket
              });
              return true;
            }
          }
        ));
      }
    }
    module2.exports = {
      fetch: fetch3,
      Fetch,
      fetching,
      finalizeAndReportTiming
    };
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/undici/7.29.0/82a11f569634ba40cb43639a3bacb079ecc63f257fd03395a1e4e8454d841fb0/node_modules/undici/lib/web/cache/util.js
var require_util6 = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/undici/7.29.0/82a11f569634ba40cb43639a3bacb079ecc63f257fd03395a1e4e8454d841fb0/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_util5();
    function urlEquals(A2, B, excludeFragment = false) {
      const serializedA = URLSerializer(A2, 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
    };
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/undici/7.29.0/82a11f569634ba40cb43639a3bacb079ecc63f257fd03395a1e4e8454d841fb0/node_modules/undici/lib/web/cache/cache.js
var require_cache3 = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/undici/7.29.0/82a11f569634ba40cb43639a3bacb079ecc63f257fd03395a1e4e8454d841fb0/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_util6();
    var { kEnumerableProperty, isDisturbed } = require_util4();
    var { webidl } = require_webidl();
    var { cloneResponse, fromInnerResponse, getResponseState } = require_response();
    var { Request, fromInnerRequest, getRequestState } = require_request2();
    var { fetching } = require_fetch();
    var { urlIsHttpHttpsScheme, readAllBytes } = require_util5();
    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 index2 = 0;
        for (const response of responses) {
          const operation5 = {
            type: "put",
            // 7.3.2
            request: requestList[index2],
            // 7.3.3
            response
            // 7.3.4
          };
          operations.push(operation5);
          index2++;
        }
        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
    };
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/undici/7.29.0/82a11f569634ba40cb43639a3bacb079ecc63f257fd03395a1e4e8454d841fb0/node_modules/undici/lib/web/cache/cachestorage.js
var require_cachestorage = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/undici/7.29.0/82a11f569634ba40cb43639a3bacb079ecc63f257fd03395a1e4e8454d841fb0/node_modules/undici/lib/web/cache/cachestorage.js"(exports2, module2) {
    "use strict";
    var { Cache } = require_cache3();
    var { webidl } = require_webidl();
    var { kEnumerableProperty } = require_util4();
    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
    };
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/undici/7.29.0/82a11f569634ba40cb43639a3bacb079ecc63f257fd03395a1e4e8454d841fb0/node_modules/undici/lib/web/cookies/constants.js
var require_constants14 = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/undici/7.29.0/82a11f569634ba40cb43639a3bacb079ecc63f257fd03395a1e4e8454d841fb0/node_modules/undici/lib/web/cookies/constants.js"(exports2, module2) {
    "use strict";
    var maxAttributeValueSize = 1024;
    var maxNameValuePairSize = 4096;
    module2.exports = {
      maxAttributeValueSize,
      maxNameValuePairSize
    };
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/undici/7.29.0/82a11f569634ba40cb43639a3bacb079ecc63f257fd03395a1e4e8454d841fb0/node_modules/undici/lib/web/cookies/util.js
var require_util7 = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/undici/7.29.0/82a11f569634ba40cb43639a3bacb079ecc63f257fd03395a1e4e8454d841fb0/node_modules/undici/lib/web/cookies/util.js"(exports2, module2) {
    "use strict";
    function isCTLExcludingHtab(value) {
      for (let i4 = 0; i4 < value.length; ++i4) {
        const code = value.charCodeAt(i4);
        if (code >= 0 && code <= 8 || code >= 10 && code <= 31 || code === 127) {
          return true;
        }
      }
      return false;
    }
    function validateCookieName(name) {
      for (let i4 = 0; i4 < name.length; ++i4) {
        const code = name.charCodeAt(i4);
        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 i4 = 0;
      if (value[0] === '"') {
        if (len === 1 || value[len - 1] !== '"') {
          throw new Error("Invalid cookie value");
        }
        --len;
        ++i4;
      }
      while (i4 < len) {
        const code = value.charCodeAt(i4++);
        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(path240) {
      for (let i4 = 0; i4 < path240.length; ++i4) {
        const code = path240.charCodeAt(i4);
        if (code < 32 || // exclude CTLs (0-31)
        code > 126 || // exclude DEL and non-ascii
        code === 59) {
          throw new Error("Invalid cookie path");
        }
      }
    }
    function isLetterOrDigit(code) {
      return code >= 48 && code <= 57 || // 0-9
      code >= 65 && code <= 90 || // A-Z
      code >= 97 && code <= 122;
    }
    function validateCookieDomain(domain) {
      if (domain === " ") {
        return;
      }
      if (domain.length > 255) {
        throw new Error("Invalid cookie domain");
      }
      let labelLength = 0;
      for (let i4 = 0; i4 < domain.length; ++i4) {
        const code = domain.charCodeAt(i4);
        if (code === 46) {
          if (labelLength === 0) {
            throw new Error("Invalid cookie domain");
          }
          if (domain.charCodeAt(i4 - 1) === 45) {
            throw new Error("Invalid cookie domain");
          }
          labelLength = 0;
          continue;
        }
        if (labelLength === 0 && !isLetterOrDigit(code)) {
          throw new Error("Invalid cookie domain");
        }
        if (!isLetterOrDigit(code) && code !== 45) {
          throw new Error("Invalid cookie domain");
        }
        if (++labelLength > 63) {
          throw new Error("Invalid cookie domain");
        }
      }
      if (labelLength === 0 || domain.charCodeAt(domain.length - 1) === 45) {
        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((_, i4) => i4.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 stringify2(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("=");
        const trimmedKey = key.trim();
        const joinedValue = value.join("=");
        validateCookieName(trimmedKey);
        validateCookieValue(joinedValue);
        out.push(`${trimmedKey}=${joinedValue}`);
      }
      return out.join("; ");
    }
    module2.exports = {
      isCTLExcludingHtab,
      validateCookieName,
      validateCookiePath,
      validateCookieValue,
      toIMFDate,
      stringify: stringify2
    };
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/undici/7.29.0/82a11f569634ba40cb43639a3bacb079ecc63f257fd03395a1e4e8454d841fb0/node_modules/undici/lib/web/cookies/parse.js
var require_parse8 = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/undici/7.29.0/82a11f569634ba40cb43639a3bacb079ecc63f257fd03395a1e4e8454d841fb0/node_modules/undici/lib/web/cookies/parse.js"(exports2, module2) {
    "use strict";
    var { collectASequenceOfCodePointsFast } = require_infra();
    var { maxNameValuePairSize, maxAttributeValueSize } = require_constants14();
    var { isCTLExcludingHtab } = require_util7();
    var assert13 = __require("node:assert");
    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,
        ...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") {
        const attributeValueLowercase = attributeValue.toLowerCase();
        if (attributeValueLowercase === "none") {
          cookieAttributeList.sameSite = "None";
        } else if (attributeValueLowercase === "strict") {
          cookieAttributeList.sameSite = "Strict";
        } else if (attributeValueLowercase === "lax") {
          cookieAttributeList.sameSite = "Lax";
        }
      } else {
        cookieAttributeList.unparsed ??= [];
        cookieAttributeList.unparsed.push(`${attributeName}=${attributeValue}`);
      }
      return parseUnparsedAttributes(unparsedAttributes, cookieAttributeList);
    }
    module2.exports = {
      parseSetCookie,
      parseUnparsedAttributes
    };
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/undici/7.29.0/82a11f569634ba40cb43639a3bacb079ecc63f257fd03395a1e4e8454d841fb0/node_modules/undici/lib/web/cookies/index.js
var require_cookies = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/undici/7.29.0/82a11f569634ba40cb43639a3bacb079ecc63f257fd03395a1e4e8454d841fb0/node_modules/undici/lib/web/cookies/index.js"(exports2, module2) {
    "use strict";
    var { parseSetCookie } = require_parse8();
    var { stringify: stringify2 } = require_util7();
    var { webidl } = require_webidl();
    var { Headers: Headers2 } = require_headers();
    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 = stringify2(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
    };
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/undici/7.29.0/82a11f569634ba40cb43639a3bacb079ecc63f257fd03395a1e4e8454d841fb0/node_modules/undici/lib/web/websocket/events.js
var require_events = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/undici/7.29.0/82a11f569634ba40cb43639a3bacb079ecc63f257fd03395a1e4e8454d841fb0/node_modules/undici/lib/web/websocket/events.js"(exports2, module2) {
    "use strict";
    var { webidl } = require_webidl();
    var { kEnumerableProperty } = require_util4();
    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
    };
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/undici/7.29.0/82a11f569634ba40cb43639a3bacb079ecc63f257fd03395a1e4e8454d841fb0/node_modules/undici/lib/web/websocket/constants.js
var require_constants15 = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/undici/7.29.0/82a11f569634ba40cb43639a3bacb079ecc63f257fd03395a1e4e8454d841fb0/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
    };
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/undici/7.29.0/82a11f569634ba40cb43639a3bacb079ecc63f257fd03395a1e4e8454d841fb0/node_modules/undici/lib/web/websocket/util.js
var require_util8 = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/undici/7.29.0/82a11f569634ba40cb43639a3bacb079ecc63f257fd03395a1e4e8454d841fb0/node_modules/undici/lib/web/websocket/util.js"(exports2, module2) {
    "use strict";
    var { states, opcodes } = require_constants15();
    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(handler83, type4, data) {
      handler83.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 i4 = 0; i4 < protocol.length; ++i4) {
        const code = protocol.charCodeAt(i4);
        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 i4 = 0; i4 < value.length; i4++) {
        const byte = value.charCodeAt(i4);
        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
    };
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/undici/7.29.0/82a11f569634ba40cb43639a3bacb079ecc63f257fd03395a1e4e8454d841fb0/node_modules/undici/lib/web/websocket/frame.js
var require_frame = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/undici/7.29.0/82a11f569634ba40cb43639a3bacb079ecc63f257fd03395a1e4e8454d841fb0/node_modules/undici/lib/web/websocket/frame.js"(exports2, module2) {
    "use strict";
    var { runtimeFeatures } = require_runtime_features();
    var { maxUnsigned16Bit, opcodes } = require_constants15();
    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 i4 = 0; i4 < buffer4.length; ++i4) {
        buffer4[i4] = 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 i4 = 0; i4 < bodyLength; ++i4) {
          buffer4[offset + i4] = frameData[i4] ^ maskKey[i4 & 3];
        }
        return buffer4;
      }
      /**
       * @param {Uint8Array} buffer
       */
      static createFastTextFrame(buffer4) {
        const maskKey = generateMask();
        const bodyLength = buffer4.length;
        for (let i4 = 0; i4 < bodyLength; ++i4) {
          buffer4[i4] ^= maskKey[i4 & 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
    };
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/undici/7.29.0/82a11f569634ba40cb43639a3bacb079ecc63f257fd03395a1e4e8454d841fb0/node_modules/undici/lib/web/websocket/connection.js
var require_connection = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/undici/7.29.0/82a11f569634ba40cb43639a3bacb079ecc63f257fd03395a1e4e8454d841fb0/node_modules/undici/lib/web/websocket/connection.js"(exports2, module2) {
    "use strict";
    var { uid, states, sentCloseFrameState, emptyBuffer, opcodes } = require_constants15();
    var { parseExtensions, isClosed, isClosing, isEstablished, isConnecting, validateCloseCodeAndReason } = require_util8();
    var { makeRequest } = require_request2();
    var { fetching } = require_fetch();
    var { Headers: Headers2, getHeadersList } = require_headers();
    var { getDecodeSplit } = require_util5();
    var { WebsocketFrameSend } = require_frame();
    var assert13 = __require("node:assert");
    var { runtimeFeatures } = require_runtime_features();
    var crypto14 = runtimeFeatures.has("crypto") ? __require("node:crypto") : null;
    var warningEmitted = false;
    function establishWebSocketConnection(url7, protocols, client, handler83, 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 = crypto14.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(handler83, 1002, "Received network error or non-101 status code.", response.error);
              return;
            }
            if (response.status !== 200) {
              failWebsocketConnection(handler83, 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(handler83, 1002, "Server did not respond with sent protocols.");
            return;
          }
          if (response.socket.session == null && response.headersList.get("Upgrade")?.toLowerCase() !== "websocket") {
            failWebsocketConnection(handler83, 1002, 'Server did not set Upgrade header to "websocket".');
            return;
          }
          if (response.socket.session == null && response.headersList.get("Connection")?.toLowerCase() !== "upgrade") {
            failWebsocketConnection(handler83, 1002, 'Server did not set Connection header to "upgrade".');
            return;
          }
          const secWSAccept = response.headersList.get("Sec-WebSocket-Accept");
          const digest = crypto14.hash("sha1", keyValue + uid, "base64");
          if (secWSAccept !== digest) {
            failWebsocketConnection(handler83, 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(handler83, 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(handler83, 1002, "Protocol was not set in the opening handshake.");
              return;
            }
          }
          response.socket.on("data", handler83.onSocketData);
          response.socket.on("close", handler83.onSocketClose);
          response.socket.on("error", handler83.onSocketError);
          handler83.wasEverConnected = true;
          handler83.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(handler83, code, reason, cause) {
      if (isEstablished(handler83.readyState)) {
        closeWebSocketConnection(handler83, code, reason, false);
      }
      handler83.controller.abort();
      if (isConnecting(handler83.readyState)) {
        handler83.onSocketClose();
      } else if (handler83.socket?.destroyed === false) {
        handler83.socket.destroy();
      }
    }
    module2.exports = {
      establishWebSocketConnection,
      failWebsocketConnection,
      closeWebSocketConnection
    };
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/undici/7.29.0/82a11f569634ba40cb43639a3bacb079ecc63f257fd03395a1e4e8454d841fb0/node_modules/undici/lib/web/websocket/permessage-deflate.js
var require_permessage_deflate = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/undici/7.29.0/82a11f569634ba40cb43639a3bacb079ecc63f257fd03395a1e4e8454d841fb0/node_modules/undici/lib/web/websocket/permessage-deflate.js"(exports2, module2) {
    "use strict";
    var { createInflateRaw, Z_DEFAULT_WINDOWBITS } = __require("node:zlib");
    var { isValidClientWindowBits } = require_util8();
    var { MessageSizeExceededError } = require_errors4();
    var tail2 = Buffer.from([0, 0, 255, 255]);
    var kBuffer = /* @__PURE__ */ Symbol("kBuffer");
    var kLength = /* @__PURE__ */ Symbol("kLength");
    var PerMessageDeflate = class {
      /** @type {import('node:zlib').InflateRaw} */
      #inflate;
      #options = {};
      #maxPayloadSize = 0;
      /**
       * @param {Map<string, string>} extensions
       */
      constructor(extensions2, options) {
        this.#options.serverNoContextTakeover = extensions2.has("server_no_context_takeover");
        this.#options.serverMaxWindowBits = extensions2.get("server_max_window_bits");
        this.#maxPayloadSize = options.maxPayloadSize;
      }
      /**
       * Decompress a compressed payload.
       * @param {Buffer} chunk Compressed data
       * @param {boolean} fin Final fragment flag
       * @param {Function} callback Callback function
       */
      decompress(chunk, fin, callback2) {
        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 (err2) {
            callback2(err2);
            return;
          }
          this.#inflate[kBuffer] = [];
          this.#inflate[kLength] = 0;
          this.#inflate.on("data", (data) => {
            this.#inflate[kLength] += data.length;
            if (this.#maxPayloadSize > 0 && this.#inflate[kLength] > this.#maxPayloadSize) {
              callback2(new MessageSizeExceededError());
              this.#inflate.removeAllListeners();
              this.#inflate = null;
              return;
            }
            this.#inflate[kBuffer].push(data);
          });
          this.#inflate.on("error", (err2) => {
            this.#inflate = null;
            callback2(err2);
          });
        }
        this.#inflate.write(chunk);
        if (fin) {
          this.#inflate.write(tail2);
        }
        this.#inflate.flush(() => {
          if (!this.#inflate) {
            return;
          }
          const full = Buffer.concat(this.#inflate[kBuffer], this.#inflate[kLength]);
          this.#inflate[kBuffer].length = 0;
          this.#inflate[kLength] = 0;
          callback2(null, full);
        });
      }
    };
    module2.exports = { PerMessageDeflate };
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/undici/7.29.0/82a11f569634ba40cb43639a3bacb079ecc63f257fd03395a1e4e8454d841fb0/node_modules/undici/lib/web/websocket/receiver.js
var require_receiver = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/undici/7.29.0/82a11f569634ba40cb43639a3bacb079ecc63f257fd03395a1e4e8454d841fb0/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_constants15();
    var {
      isValidStatusCode,
      isValidOpcode,
      websocketMessageReceived,
      utf8Decode,
      isControlFrame,
      isTextBinaryFrame,
      isContinuationFrame
    } = require_util8();
    var { failWebsocketConnection } = require_connection();
    var { WebsocketFrameSend } = require_frame();
    var { PerMessageDeflate } = require_permessage_deflate();
    var { MessageSizeExceededError } = require_errors4();
    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;
      /** @type {number} */
      #maxFragments;
      /** @type {number} */
      #maxPayloadSize;
      /**
       * @param {import('./websocket').Handler} handler
       * @param {Map<string, string>|null} extensions
       * @param {{ maxFragments?: number, maxPayloadSize?: number }} [options]
       */
      constructor(handler83, extensions2, options = {}) {
        super();
        this.#handler = handler83;
        this.#extensions = extensions2 == null ? /* @__PURE__ */ new Map() : extensions2;
        this.#maxFragments = options.maxFragments ?? 0;
        this.#maxPayloadSize = options.maxPayloadSize ?? 0;
        if (this.#extensions.has("permessage-deflate")) {
          this.#extensions.set("permessage-deflate", new PerMessageDeflate(extensions2, options));
        }
      }
      /**
       * @param {Buffer} chunk
       * @param {() => void} callback
       */
      _write(chunk, _, callback2) {
        this.#buffers.push(chunk);
        this.#byteOffset += chunk.length;
        this.#loop = true;
        this.run(callback2);
      }
      #validatePayloadLength() {
        if (this.#maxPayloadSize > 0 && !isControlFrame(this.#info.opcode) && this.#info.payloadLength + this.#fragmentsBytes > this.#maxPayloadSize) {
          failWebsocketConnection(this.#handler, 1009, "Payload size exceeds maximum allowed size");
          return false;
        }
        return true;
      }
      /**
       * 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;
              if (!this.#validatePayloadLength()) {
                return;
              }
            } 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;
            if (!this.#validatePayloadLength()) {
              return;
            }
          } 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;
            if (!this.#validatePayloadLength()) {
              return;
            }
          } 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) {
                if (!this.writeFragments(body)) {
                  return;
                }
                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;
                    }
                    if (!this.writeFragments(data)) {
                      return;
                    }
                    if (this.#maxPayloadSize > 0 && this.#fragmentsBytes > this.#maxPayloadSize) {
                      failWebsocketConnection(this.#handler, 1009, new MessageSizeExceededError().message);
                      return;
                    }
                    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.#fragmentsBytes
                );
                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) {
        if (this.#maxFragments > 0 && this.#fragments.length === this.#maxFragments) {
          failWebsocketConnection(this.#handler, 1008, "Too many message fragments");
          return false;
        }
        this.#fragmentsBytes += fragment.length;
        this.#fragments.push(fragment);
        return true;
      }
      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 i4 = 0; i4 < fragments.length; ++i4) {
          const buffer3 = fragments[i4];
          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
    };
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/undici/7.29.0/82a11f569634ba40cb43639a3bacb079ecc63f257fd03395a1e4e8454d841fb0/node_modules/undici/lib/web/websocket/sender.js
var require_sender = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/undici/7.29.0/82a11f569634ba40cb43639a3bacb079ecc63f257fd03395a1e4e8454d841fb0/node_modules/undici/lib/web/websocket/sender.js"(exports2, module2) {
    "use strict";
    var { WebsocketFrameSend } = require_frame();
    var { opcodes, sendHints } = require_constants15();
    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 };
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/undici/7.29.0/82a11f569634ba40cb43639a3bacb079ecc63f257fd03395a1e4e8454d841fb0/node_modules/undici/lib/web/websocket/websocket.js
var require_websocket = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/undici/7.29.0/82a11f569634ba40cb43639a3bacb079ecc63f257fd03395a1e4e8454d841fb0/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_util5();
    var { staticPropertyDescriptors, states, sentCloseFrameState, sendHints, opcodes } = require_constants15();
    var {
      isConnecting,
      isEstablished,
      isClosing,
      isClosed,
      isValidSubprotocol,
      fireEvent,
      utf8Decode,
      toArrayBuffer,
      getURLRecord
    } = require_util8();
    var { establishWebSocketConnection, closeWebSocketConnection, failWebsocketConnection } = require_connection();
    var { ByteParser } = require_receiver();
    var { kEnumerableProperty } = require_util4();
    var { getGlobalDispatcher: getGlobalDispatcher2 } = 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: (err2) => failWebsocketConnection(this.#handler, null, err2.message),
        onParserDrain: () => this.#onParserDrain(),
        onSocketData: (chunk) => {
          if (!this.#parser.write(chunk)) {
            this.#handler.socket.pause();
          }
        },
        onSocketError: (err2) => {
          this.#handler.readyState = states.CLOSING;
          if (channels.socketError.hasSubscribers) {
            channels.socketError.publish(err2);
          }
          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 webSocketOptions = this.#handler.controller.dispatcher?.webSocketOptions;
        const maxFragments = webSocketOptions?.maxFragments;
        const maxPayloadSize = webSocketOptions?.maxPayloadSize;
        const parser = new ByteParser(this.#handler, parsedExtensions, {
          maxFragments,
          maxPayloadSize
        });
        parser.on("drain", () => this.#handler.onParserDrain());
        parser.on("error", (err2) => this.#handler.onParserError(err2));
        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: () => getGlobalDispatcher2()
      },
      {
        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
    };
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/undici/7.29.0/82a11f569634ba40cb43639a3bacb079ecc63f257fd03395a1e4e8454d841fb0/node_modules/undici/lib/web/websocket/stream/websocketerror.js
var require_websocketerror = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/undici/7.29.0/82a11f569634ba40cb43639a3bacb079ecc63f257fd03395a1e4e8454d841fb0/node_modules/undici/lib/web/websocket/stream/websocketerror.js"(exports2, module2) {
    "use strict";
    var { webidl } = require_webidl();
    var { validateCloseCodeAndReason } = require_util8();
    var { kConstruct } = require_symbols();
    var { kEnumerableProperty } = require_util4();
    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 };
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/undici/7.29.0/82a11f569634ba40cb43639a3bacb079ecc63f257fd03395a1e4e8454d841fb0/node_modules/undici/lib/web/websocket/stream/websocketstream.js
var require_websocketstream = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/undici/7.29.0/82a11f569634ba40cb43639a3bacb079ecc63f257fd03395a1e4e8454d841fb0/node_modules/undici/lib/web/websocket/stream/websocketstream.js"(exports2, module2) {
    "use strict";
    var { createDeferredPromise } = require_promise();
    var { environmentSettingsObject } = require_util5();
    var { states, opcodes, sentCloseFrameState } = require_constants15();
    var { webidl } = require_webidl();
    var { getURLRecord, isValidSubprotocol, isEstablished, utf8Decode } = require_util8();
    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_util4();
    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: (err2) => failWebsocketConnection(this.#handler, null, err2.message),
        onParserDrain: () => this.#handler.socket.resume(),
        onSocketData: (chunk) => {
          if (!this.#parser.write(chunk)) {
            this.#handler.socket.pause();
          }
        },
        onSocketError: (err2) => {
          this.#handler.readyState = states.CLOSING;
          if (channels.socketError.hasSubscribers) {
            channels.socketError.publish(err2);
          }
          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 maxFragments = this.#handler.controller.dispatcher?.webSocketOptions?.maxFragments;
        const maxPayloadSize = this.#handler.controller.dispatcher?.webSocketOptions?.maxPayloadSize;
        const parser = new ByteParser(this.#handler, parsedExtensions, {
          maxFragments,
          maxPayloadSize
        });
        parser.on("drain", () => this.#handler.onParserDrain());
        parser.on("error", (err2) => this.#handler.onParserError(err2));
        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;
          },
          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, 1007, "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 };
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/undici/7.29.0/82a11f569634ba40cb43639a3bacb079ecc63f257fd03395a1e4e8454d841fb0/node_modules/undici/lib/web/eventsource/util.js
var require_util9 = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/undici/7.29.0/82a11f569634ba40cb43639a3bacb079ecc63f257fd03395a1e4e8454d841fb0/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 i4 = 0; i4 < value.length; i4++) {
        if (value.charCodeAt(i4) < 48 || value.charCodeAt(i4) > 57) return false;
      }
      return true;
    }
    module2.exports = {
      isValidLastEventId,
      isASCIINumber
    };
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/undici/7.29.0/82a11f569634ba40cb43639a3bacb079ecc63f257fd03395a1e4e8454d841fb0/node_modules/undici/lib/web/eventsource/eventsource-stream.js
var require_eventsource_stream = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/undici/7.29.0/82a11f569634ba40cb43639a3bacb079ecc63f257fd03395a1e4e8454d841fb0/node_modules/undici/lib/web/eventsource/eventsource-stream.js"(exports2, module2) {
    "use strict";
    var { Transform: Transform2 } = __require("node:stream");
    var { isASCIINumber, isValidLastEventId } = require_util9();
    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
    };
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/undici/7.29.0/82a11f569634ba40cb43639a3bacb079ecc63f257fd03395a1e4e8454d841fb0/node_modules/undici/lib/web/eventsource/eventsource.js
var require_eventsource = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/undici/7.29.0/82a11f569634ba40cb43639a3bacb079ecc63f257fd03395a1e4e8454d841fb0/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_util4();
    var { environmentSettingsObject } = require_util5();
    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
    };
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/undici/7.29.0/82a11f569634ba40cb43639a3bacb079ecc63f257fd03395a1e4e8454d841fb0/node_modules/undici/index.js
var require_undici = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/undici/7.29.0/82a11f569634ba40cb43639a3bacb079ecc63f257fd03395a1e4e8454d841fb0/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_errors4();
    var util70 = require_util4();
    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: getGlobalDispatcher2, 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_retry(),
      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: util70.parseHeaders,
      headerNameToString: util70.headerNameToString
    };
    function makeDispatcher(fn) {
      return (url7, opts3, handler83) => {
        if (typeof opts3 === "function") {
          handler83 = opts3;
          opts3 = null;
        }
        if (!url7 || typeof url7 !== "string" && typeof url7 !== "object" && !(url7 instanceof URL)) {
          throw new InvalidArgumentError("invalid url");
        }
        if (opts3 != null && typeof opts3 !== "object") {
          throw new InvalidArgumentError("invalid opts");
        }
        if (opts3 && opts3.path != null) {
          if (typeof opts3.path !== "string") {
            throw new InvalidArgumentError("invalid opts.path");
          }
          let path240 = opts3.path;
          if (!opts3.path.startsWith("/")) {
            path240 = `/${path240}`;
          }
          url7 = new URL(util70.parseOrigin(url7).origin + path240);
        } else {
          if (!opts3) {
            opts3 = typeof url7 === "object" ? url7 : {};
          }
          url7 = util70.parseURL(url7);
        }
        const { agent, dispatcher = getGlobalDispatcher2() } = opts3;
        if (agent) {
          throw new InvalidArgumentError("unsupported opts.agent. Did you mean opts.client?");
        }
        return fn.call(dispatcher, {
          ...opts3,
          origin: url7.origin,
          path: url7.search ? `${url7.pathname}${url7.search}` : url7.pathname,
          method: opts3.method || (opts3.body ? "PUT" : "GET")
        }, handler83);
      };
    }
    module2.exports.setGlobalDispatcher = setGlobalDispatcher2;
    module2.exports.getGlobalDispatcher = getGlobalDispatcher2;
    var fetchImpl = require_fetch().fetch;
    var currentFilename = typeof __filename !== "undefined" ? __filename : void 0;
    function appendFetchStackTrace(err2, filename) {
      if (!err2 || typeof err2 !== "object") {
        return;
      }
      const stack = typeof err2.stack === "string" ? err2.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");
      err2.stack = stack ? `${stack}
${captureLines}` : capture.stack;
    }
    module2.exports.fetch = function fetch3(init2, options = void 0) {
      return fetchImpl(init2, options).catch((err2) => {
        if (currentFilename) {
          appendFetchStackTrace(err2, currentFilename);
        } else if (err2 && typeof err2 === "object") {
          Error.captureStackTrace(err2, module2.exports.fetch);
        }
        throw err2;
      });
    };
    module2.exports.Headers = require_headers().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 URL2 } from "node:url";
function stripSecFetchHeaders(dispatch) {
  return (opts3, handler83) => {
    if (opts3.headers) {
      if (Array.isArray(opts3.headers)) {
        const filtered = [];
        for (let i4 = 0; i4 < opts3.headers.length; i4 += 2) {
          if (!opts3.headers[i4].toLowerCase().startsWith("sec-fetch-")) {
            filtered.push(opts3.headers[i4], opts3.headers[i4 + 1]);
          }
        }
        opts3 = { ...opts3, headers: filtered };
      } else if (typeof opts3.headers === "object") {
        const entries = Symbol.iterator in opts3.headers ? opts3.headers : Object.entries(opts3.headers);
        const headers = {};
        for (const [key, value] of entries) {
          if (!key.toLowerCase().startsWith("sec-fetch-")) {
            headers[key] = value;
          }
        }
        opts3 = { ...opts3, headers };
      }
    }
    return dispatch(opts3, handler83);
  };
}
function clearDispatcherCache() {
  DISPATCHER_CACHE.clear();
}
async function destroyDispatchers() {
  const dispatchers = /* @__PURE__ */ new Set([
    GLOBAL_DISPATCHER,
    (0, import_undici.getGlobalDispatcher)(),
    ...DISPATCHER_CACHE.values()
  ]);
  await Promise.allSettled(Array.from(dispatchers, (dispatcher) => dispatcher.destroy()));
}
function getDispatcher(uri, opts3) {
  if (!needsCustomDispatcher(opts3)) {
    return void 0;
  }
  const parsedUri = new URL2(uri);
  if ((opts3.httpProxy || opts3.httpsProxy) && !checkNoProxy(parsedUri, opts3)) {
    const proxyDispatcher = getProxyDispatcher(parsedUri, opts3);
    if (proxyDispatcher)
      return proxyDispatcher;
  }
  return getNonProxyDispatcher(parsedUri, opts3);
}
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(opts3) {
  return Boolean(opts3.httpProxy || opts3.httpsProxy || opts3.ca || opts3.cert || opts3.key || opts3.localAddress || opts3.strictSsl === false || hasClientCertificates(opts3.clientCertificates) || opts3.maxSockets);
}
function parseProxyUrl(proxy, protocol) {
  let proxyUrl = proxy;
  if (!proxyUrl.includes("://")) {
    proxyUrl = `${protocol}//${proxyUrl}`;
  }
  try {
    return new URL2(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, opts3) {
  const isHttps = parsedUri.protocol === "https:";
  const proxy = isHttps ? opts3.httpsProxy : opts3.httpProxy;
  if (!proxy)
    return null;
  const proxyUrl = parseProxyUrl(proxy, parsedUri.protocol);
  const sslConfig = pickSettingByUrl(opts3.clientCertificates, parsedUri.href);
  const { ca, cert, key: certKey } = { ...opts3, ...sslConfig };
  const key = [
    `proxy:${proxyUrl.protocol}//${proxyUrl.username}:${proxyUrl.password}@${proxyUrl.host}:${proxyUrl.port}`,
    `https:${isHttps.toString()}`,
    `local-address:${opts3.localAddress ?? ">no-local-address<"}`,
    `max-sockets:${(opts3.maxSockets ?? DEFAULT_MAX_SOCKETS).toString()}`,
    `strict-ssl:${isHttps ? Boolean(opts3.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, opts3, { ca, cert, key: certKey });
  } else {
    dispatcher = createHttpProxyDispatcher(proxyUrl, isHttps, opts3, { ca, cert, key: certKey });
  }
  dispatcher = dispatcher.compose(stripSecFetchHeaders);
  DISPATCHER_CACHE.set(key, dispatcher);
  return dispatcher;
}
function createHttpProxyDispatcher(proxyUrl, isHttps, opts3, 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: opts3.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: opts3.strictSsl ?? true,
      localAddress: opts3.localAddress
    } : void 0,
    proxyTls: {
      ca: opts3.ca,
      rejectUnauthorized: opts3.strictSsl ?? true
    }
  });
}
function createSocksDispatcher(proxyUrl, targetUri, opts3, 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: opts3.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: opts3.strictSsl ?? true
          };
          const tlsSocket = tls.connect(tlsOpts);
          tlsSocket.on("secureConnect", () => {
            callback2(null, tlsSocket);
          });
          tlsSocket.on("error", (err2) => {
            callback2(err2, null);
          });
        } else {
          callback2(null, socket);
        }
      } catch (err2) {
        callback2(err2, null);
      }
    }
  });
}
function getNonProxyDispatcher(parsedUri, opts3) {
  const isHttps = parsedUri.protocol === "https:";
  const sslConfig = pickSettingByUrl(opts3.clientCertificates, parsedUri.href);
  const { ca, cert, key: certKey } = { ...opts3, ...sslConfig };
  const key = [
    `https:${isHttps.toString()}`,
    `local-address:${opts3.localAddress ?? ">no-local-address<"}`,
    `max-sockets:${(opts3.maxSockets ?? DEFAULT_MAX_SOCKETS).toString()}`,
    `strict-ssl:${isHttps ? Boolean(opts3.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 opts3.timeout !== "number" || opts3.timeout === 0 ? 0 : opts3.timeout + 1;
  const agent = new import_undici.Agent({
    connections: opts3.maxSockets ?? DEFAULT_MAX_SOCKETS,
    connectTimeout,
    keepAliveTimeout: KEEP_ALIVE_TIMEOUT,
    keepAliveMaxTimeout: KEEP_ALIVE_MAX_TIMEOUT,
    connect: isHttps ? {
      autoSelectFamily: true,
      ca,
      cert,
      key: certKey,
      rejectUnauthorized: opts3.strictSsl ?? true,
      localAddress: opts3.localAddress
    } : {
      autoSelectFamily: true,
      localAddress: opts3.localAddress
    }
  });
  const dispatcher = agent.compose(stripSecFetchHeaders);
  DISPATCHER_CACHE.set(key, dispatcher);
  return dispatcher;
}
function checkNoProxy(parsedUri, opts3) {
  const host = parsedUri.hostname.split(".").filter((x3) => x3).reverse();
  if (typeof opts3.noProxy === "string") {
    const noproxyArr = opts3.noProxy.split(",").map((s) => s.trim());
    return noproxyArr.some((no) => {
      const noParts = no.split(".").filter((x3) => x3).reverse();
      if (noParts.length === 0) {
        return false;
      }
      for (let i4 = 0; i4 < noParts.length; i4++) {
        if (host[i4] !== noParts[i4]) {
          return false;
        }
      }
      return true;
    });
  }
  return opts3.noProxy === true;
}
function pickSettingByUrl(settings, uri) {
  if (!settings)
    return void 0;
  if (settings[uri])
    return settings[uri];
  const nerf = (0, import_config.nerfDart)(uri);
  if (settings[nerf])
    return settings[nerf];
  const parsedUrl = new URL2(uri);
  const withoutPort = removePort(parsedUrl);
  if (settings[withoutPort])
    return settings[withoutPort];
  const maxParts = Object.keys(settings).reduce((max4, key) => {
    const parts2 = key.split("/").length;
    return parts2 > max4 ? parts2 : max4;
  }, 0);
  const parts = nerf.split("/");
  for (let i4 = Math.min(parts.length, maxParts) - 1; i4 >= 3; i4--) {
    const key = `${parts.slice(0, i4).join("/")}/`;
    if (settings[key]) {
      return settings[key];
    }
  }
  if (withoutPort !== uri) {
    return pickSettingByUrl(settings, withoutPort);
  }
  return void 0;
}
function removePort(parsedUrl) {
  if (parsedUrl.port === "")
    return parsedUrl.href;
  const copy2 = new URL2(parsedUrl.href);
  copy2.port = "";
  const res = copy2.toString();
  return res.endsWith("/") ? res : `${res}/`;
}
var import_config, import_socks, import_undici, DEFAULT_MAX_SOCKETS, KEEP_ALIVE_TIMEOUT, KEEP_ALIVE_MAX_TIMEOUT, GLOBAL_DISPATCHER, DISPATCHER_CACHE;
var init_dispatcher = __esm({
  "../network/fetch/lib/dispatcher.js"() {
    "use strict";
    import_config = __toESM(require_dist(), 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;
    GLOBAL_DISPATCHER = new import_undici.Agent({
      connections: DEFAULT_MAX_SOCKETS,
      keepAliveTimeout: KEEP_ALIVE_TIMEOUT,
      keepAliveMaxTimeout: KEEP_ALIVE_MAX_TIMEOUT,
      connect: {
        autoSelectFamily: true
      }
    }).compose(stripSecFetchHeaders);
    (0, import_undici.setGlobalDispatcher)(GLOBAL_DISPATCHER);
    DISPATCHER_CACHE = new I({
      max: 50,
      dispose: (dispatcher) => {
        if (typeof dispatcher.close === "function") {
          void dispatcher.close();
        }
      }
    });
  }
});

// ../../../../../setup-pnpm/store/v11/links/@zkochan/retry/0.2.0/52d770fd211440fd3e163bc4423f782e94fa5da8d9fab0b29e08d5abf0fac0fb/node_modules/@zkochan/retry/lib/retry_operation.js
var require_retry_operation = __commonJS({
  "../../../../../setup-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 _a2;
        this._originalTimeouts = [...timeouts];
        this._timeouts = timeouts;
        this._maxRetryTime = (_a2 = options === null || options === void 0 ? void 0 : options.maxRetryTime) !== null && _a2 !== void 0 ? _a2 : 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(err2) {
        if (!err2) {
          return false;
        }
        var currentTime = (/* @__PURE__ */ new Date()).getTime();
        if (err2 && currentTime - this._operationStart >= this._maxRetryTime) {
          this._errors.unshift(new Error("RetryOperation timeout occurred"));
          return false;
        }
        this._errors.push(err2);
        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 i4 = 0; i4 < this._errors.length; i4++) {
          var error = this._errors[i4];
          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;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@zkochan/retry/0.2.0/52d770fd211440fd3e163bc4423f782e94fa5da8d9fab0b29e08d5abf0fac0fb/node_modules/@zkochan/retry/lib/retry.js
var require_retry2 = __commonJS({
  "../../../../../setup-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 opts3 = {
        retries: 10,
        factor: 2,
        minTimeout: 1 * 1e3,
        maxTimeout: Infinity,
        randomize: false,
        ...options
      };
      if (opts3.minTimeout > opts3.maxTimeout) {
        throw new Error("minTimeout is greater than maxTimeout");
      }
      var timeouts = [];
      for (var i4 = 0; i4 < opts3.retries; i4++) {
        timeouts.push(createTimeout(i4, opts3));
      }
      timeouts.sort(function(a2, b) {
        return a2 - b;
      });
      return timeouts;
    }
    exports2.createTimeouts = createTimeouts;
    function createTimeout(attempt, opts3) {
      var random2 = opts3.randomize ? Math.random() + 1 : 1;
      var timeout = Math.round(random2 * opts3.minTimeout * Math.pow(opts3.factor, attempt));
      timeout = Math.min(timeout, opts3.maxTimeout);
      return timeout;
    }
    exports2.createTimeout = createTimeout;
  }
});

// ../network/fetch/lib/fetch.js
function isRedirect(statusCode) {
  return REDIRECT_CODES.has(statusCode);
}
async function fetch2(url7, opts3 = {}) {
  const retryOpts = opts3.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((resolve4, reject3) => {
      op.attempt(async (attempt) => {
        const urlString = typeof url7 === "string" ? url7 : url7.href ?? url7.toString();
        const { retry: _retry, timeout, dispatcher, ...fetchOpts } = opts3;
        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 {
            resolve4(res);
          }
        } catch (error) {
          const err2 = error;
          const errorCode = err2?.code ?? err2?.cause?.code;
          if (typeof errorCode === "string" && NO_RETRY_ERROR_CODES.has(errorCode)) {
            reject3(error);
            return;
          }
          const retryTimeout = op.retry(err2);
          if (retryTimeout === false) {
            reject3(op.mainError());
            return;
          }
          const errorInfo = {
            name: err2.name,
            message: err2.message,
            code: err2.code,
            errno: err2.errno,
            // For HTTP errors from ResponseError class
            status: err2.status,
            statusCode: err2.statusCode,
            // undici wraps the actual network error in a cause property
            cause: err2.cause ? {
              code: err2.cause.code,
              errno: err2.cause.errno
            } : void 0
          };
          requestRetryLogger.debug({
            attempt,
            error: errorInfo,
            maxRetries,
            method: opts3.method ?? "GET",
            timeout: retryTimeout,
            url: urlString
          });
        }
      });
    });
  } catch (err2) {
    if (err2 instanceof ResponseError) {
      return err2.res;
    }
    throw err2;
  }
}
var import_retry, import_undici2, NO_RETRY_ERROR_CODES, REDIRECT_CODES, ResponseError;
var init_fetch = __esm({
  "../network/fetch/lib/fetch.js"() {
    "use strict";
    init_lib6();
    import_retry = __toESM(require_retry2(), 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 URL3 } from "node:url";
function fetchWithDispatcher(url7, opts3) {
  const dispatcher = getDispatcher(url7.toString(), {
    ...opts3.dispatcherOptions,
    strictSsl: opts3.dispatcherOptions.strictSsl ?? true
  });
  return fetch2(url7, {
    ...opts3,
    dispatcher
  });
}
function createDispatchedFetch(opts3) {
  const dispatcherOptions = {
    ...opts3,
    clientCertificates: opts3.clientCertificates ?? extractTlsConfigs(opts3.configByUri)
  };
  return (url7, fetchOpts) => fetchWithDispatcher(url7, { ...fetchOpts, dispatcherOptions });
}
function createFetchFromRegistry(defaultOpts) {
  const clientCertificates = extractTlsConfigs(defaultOpts.configByUri);
  return async (url7, opts3) => {
    const headers = {
      "user-agent": USER_AGENT,
      ...getHeaders({
        auth: opts3?.authHeaderValue,
        fullMetadata: opts3?.fullMetadata,
        method: opts3?.method,
        userAgent: defaultOpts.userAgent
      })
    };
    if (opts3?.ifNoneMatch) {
      headers["if-none-match"] = opts3.ifNoneMatch;
    }
    if (opts3?.ifModifiedSince) {
      headers["if-modified-since"] = opts3.ifModifiedSince;
    }
    if (opts3?.headers) {
      const optsHeaders = opts3.headers instanceof Headers ? Object.fromEntries(opts3.headers.entries()) : Array.isArray(opts3.headers) ? Object.fromEntries(opts3.headers) : opts3.headers;
      Object.assign(headers, optsHeaders);
    }
    let redirects = 0;
    let urlObject = new URL3(url7);
    const originalHost = urlObject.host;
    while (true) {
      const dispatcherOptions = {
        ...defaultOpts,
        ...opts3,
        strictSsl: defaultOpts.strictSsl ?? true,
        clientCertificates
      };
      const response = await fetchWithDispatcher(urlObject, {
        dispatcherOptions,
        body: opts3?.body,
        // if verifying integrity, native fetch must not decompress
        headers,
        method: opts3?.method,
        redirect: "manual",
        retry: opts3?.retry,
        timeout: opts3?.timeout ?? 6e4
      });
      if (!isRedirect(response.status) || redirects >= MAX_FOLLOWED_REDIRECTS) {
        return response;
      }
      redirects++;
      urlObject = resolveRedirectUrl(response, urlObject);
      if (originalHost === urlObject.host)
        continue;
      if (headers["authorization"]) {
        delete headers.authorization;
      }
      delete headers["npm-otp"];
    }
  };
}
function getHeaders(opts3) {
  const headers = {};
  if (!opts3.method || opts3.method === "GET" || opts3.method === "HEAD") {
    headers.accept = opts3.fullMetadata === true ? ACCEPT_FULL_DOC : ACCEPT_ABBREVIATED_DOC;
  }
  if (opts3.auth) {
    headers["authorization"] = opts3.auth;
  }
  if (opts3.userAgent) {
    headers["user-agent"] = opts3.userAgent;
  }
  return headers;
}
function extractTlsConfigs(configByUri) {
  if (!configByUri)
    return void 0;
  let result2;
  for (const [uri, config2] of Object.entries(configByUri)) {
    if (config2.tls) {
      result2 ??= {};
      result2[uri] = config2.tls;
    }
  }
  return result2;
}
function resolveRedirectUrl(response, currentUrl) {
  const location = response.headers.get("location");
  if (!location) {
    throw new Error(`Redirect location header missing for ${redactUrlCredentials(currentUrl.toString())}`);
  }
  return new URL3(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_lib2();
    init_dispatcher();
    init_fetch();
    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 lib_exports2 = {};
__export(lib_exports2, {
  clearDispatcherCache: () => clearDispatcherCache,
  createDispatchedFetch: () => createDispatchedFetch,
  createFetchFromRegistry: () => createFetchFromRegistry,
  destroyDispatchers: () => destroyDispatchers,
  fetch: () => fetch2,
  fetchWithDispatcher: () => fetchWithDispatcher,
  getDispatcher: () => getDispatcher,
  isRedirect: () => isRedirect
});
var init_lib23 = __esm({
  "../network/fetch/lib/index.js"() {
    "use strict";
    init_dispatcher();
    init_fetch();
    init_fetchFromRegistry();
  }
});

// lib/exit.js
async function exit(status) {
  if (process.platform === "win32") {
    try {
      const { destroyDispatchers: destroyDispatchers2 } = await Promise.resolve().then(() => (init_lib23(), lib_exports2));
      await destroyDispatchers2();
    } catch {
    }
  }
  process.exit(status);
}
var init_exit = __esm({
  "lib/exit.js"() {
    "use strict";
  }
});

// ../cli/meta/lib/index.js
function detectIfCurrentPkgIsExecutable(_proc) {
  try {
    return __require("node:sea").isSea();
  } catch {
    return false;
  }
}
function isExecutedByCorepack(env4 = process.env) {
  return env4.COREPACK_ROOT != null;
}
function getCurrentPackageName() {
  return detectIfCurrentPkgIsExecutable() ? "@pnpm/exe" : "pnpm";
}
var defaultManifest, pkgJson, packageManager;
var init_lib24 = __esm({
  "../cli/meta/lib/index.js"() {
    "use strict";
    defaultManifest = {
      name: true ? "pnpm" : "pnpm",
      version: true ? "11.18.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
    };
  }
});

// ../../../../../setup-pnpm/store/v11/links/@zkochan/which/2.0.3/b3edc9bb2e615e33207d84ba1cf543486578be60c85e0eb74cbce3db918d6865/node_modules/@zkochan/which/which.js
var require_which2 = __commonJS({
  "../../../../../setup-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 path240 = __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 = (i4) => new Promise((resolve4, reject3) => {
        if (i4 === pathEnv.length)
          return opt.all && found.length ? resolve4(found) : reject3(getNotFoundError(cmd));
        const ppRaw = pathEnv[i4];
        const pathPart = /^".*"$/.test(ppRaw) ? ppRaw.slice(1, -1) : ppRaw;
        const pCmd = path240.join(pathPart, cmd);
        const p = !pathPart && /^\.[\\\/]/.test(cmd) ? cmd.slice(0, 2) + pCmd : pCmd;
        resolve4(subStep(p, i4, 0));
      });
      const subStep = (p, i4, ii) => new Promise((resolve4, reject3) => {
        if (ii === pathExt.length)
          return resolve4(step2(i4 + 1));
        const ext = pathExt[ii];
        isexe(p + ext, { pathExt: pathExtExe }, (er, is) => {
          if (!er && is) {
            if (opt.all)
              found.push(p + ext);
            else
              return resolve4(p + ext);
          }
          return resolve4(subStep(p, i4, 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 i4 = 0; i4 < pathEnv.length; i4++) {
        const ppRaw = pathEnv[i4];
        const pathPart = /^".*"$/.test(ppRaw) ? ppRaw.slice(1, -1) : ppRaw;
        const pCmd = path240.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;
  }
});

// ../../../../../setup-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({
  "../../../../../setup-pnpm/store/v11/links/@/is-plain-obj/4.1.0/d7fab263ffdd134b8e9e6130a60458baf7017c81e96947d5a2e6383c3d47b281/node_modules/is-plain-obj/index.js"() {
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/execa/9.6.1/81823ddd5b1874238e0291383831d88650d115554885d6b58836472f7ff5c031/node_modules/execa/lib/arguments/file-url.js
import { fileURLToPath as fileURLToPath3 } from "node:url";
var safeNormalizeFileUrl, normalizeDenoExecPath, isDenoExecPath, normalizeFileUrl;
var init_file_url = __esm({
  "../../../../../setup-pnpm/store/v11/links/@/execa/9.6.1/81823ddd5b1874238e0291383831d88650d115554885d6b58836472f7ff5c031/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 ? fileURLToPath3(file) : file;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/execa/9.6.1/81823ddd5b1874238e0291383831d88650d115554885d6b58836472f7ff5c031/node_modules/execa/lib/methods/parameters.js
var normalizeParameters;
var init_parameters = __esm({
  "../../../../../setup-pnpm/store/v11/links/@/execa/9.6.1/81823ddd5b1874238e0291383831d88650d115554885d6b58836472f7ff5c031/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];
    };
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/execa/9.6.1/81823ddd5b1874238e0291383831d88650d115554885d6b58836472f7ff5c031/node_modules/execa/lib/utils/uint-array.js
import { StringDecoder } from "node:string_decoder";
var objectToString, isArrayBuffer, isUint8Array, bufferToUint8Array, textEncoder, stringToUint8Array, textDecoder, uint8ArrayToString, joinToString, uint8ArraysToStrings, joinToUint8Array, stringsToUint8Arrays, concatUint8Arrays, getJoinLength;
var init_uint_array = __esm({
  "../../../../../setup-pnpm/store/v11/links/@/execa/9.6.1/81823ddd5b1874238e0291383831d88650d115554885d6b58836472f7ff5c031/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);
    textEncoder = new TextEncoder();
    stringToUint8Array = (string) => textEncoder.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 index2 = 0;
      for (const uint8Array of uint8Arrays) {
        result2.set(uint8Array, index2);
        index2 += uint8Array.length;
      }
      return result2;
    };
    getJoinLength = (uint8Arrays) => {
      let joinLength = 0;
      for (const uint8Array of uint8Arrays) {
        joinLength += uint8Array.length;
      }
      return joinLength;
    };
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/execa/9.6.1/81823ddd5b1874238e0291383831d88650d115554885d6b58836472f7ff5c031/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({
  "../../../../../setup-pnpm/store/v11/links/@/execa/9.6.1/81823ddd5b1874238e0291383831d88650d115554885d6b58836472f7ff5c031/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 [index2, template] of templates.entries()) {
        tokens = parseTemplate({
          templates,
          expressions,
          tokens,
          index: index2,
          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: index2, template }) => {
      if (template === void 0) {
        throw new TypeError(`Invalid backslash sequence: ${templates.raw[index2]}`);
      }
      const { nextTokens, leadingWhitespaces, trailingWhitespaces } = splitByWhitespaces(template, templates.raw[index2]);
      const newTokens = concatTokens(tokens, nextTokens, leadingWhitespaces);
      if (index2 === expressions.length) {
        return newTokens;
      }
      const expression = expressions[index2];
      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`);
    };
  }
});

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

// ../../../../../setup-pnpm/store/v11/links/@/execa/9.6.1/81823ddd5b1874238e0291383831d88650d115554885d6b58836472f7ff5c031/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_OPTIONS2, FD_SPECIFIC_OPTIONS, getFdSpecificValue;
var init_specific = __esm({
  "../../../../../setup-pnpm/store/v11/links/@/execa/9.6.1/81823ddd5b1874238e0291383831d88650d115554885d6b58836472f7ff5c031/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_OPTIONS2[optionName] : optionValue);
    verboseDefault = debuglog("execa").enabled ? "full" : "none";
    DEFAULT_OPTIONS2 = {
      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];
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/execa/9.6.1/81823ddd5b1874238e0291383831d88650d115554885d6b58836472f7ff5c031/node_modules/execa/lib/verbose/values.js
var isVerbose, isFullVerbose, getVerboseFunction, getFdVerbose, getFdGenericVerbose, isVerboseFunction, VERBOSE_VALUES;
var init_values2 = __esm({
  "../../../../../setup-pnpm/store/v11/links/@/execa/9.6.1/81823ddd5b1874238e0291383831d88650d115554885d6b58836472f7ff5c031/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"];
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/execa/9.6.1/81823ddd5b1874238e0291383831d88650d115554885d6b58836472f7ff5c031/node_modules/execa/lib/arguments/escape.js
import { platform as platform3 } 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({
  "../../../../../setup-pnpm/store/v11/links/@/execa/9.6.1/81823ddd5b1874238e0291383831d88650d115554885d6b58836472f7ff5c031/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 platform3 === "win32" ? `"${escapedArgument.replaceAll('"', '""')}"` : `'${escapedArgument.replaceAll("'", "'\\''")}'`;
    };
    NO_ESCAPE_REGEXP = /^[\w./-]+$/;
  }
});

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

// ../../../../../setup-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({
  "../../../../../setup-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);
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/yoctocolors/2.2.0/5559ff1b687cffe1c3b9f89a01528989faba71f937cc82eac2b794a5ab181741/node_modules/yoctocolors/base.js
import tty2 from "node:tty";
var hasColors, format, reset, bold, dim, italic, underline, underlineDouble, underlineCurly, underlineDotted, underlineDashed, 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, underlineBlack, underlineRed, underlineGreen, underlineYellow, underlineBlue, underlineMagenta, underlineCyan, underlineWhite, underlineGray, underlineRedBright, underlineGreenBright, underlineYellowBright, underlineBlueBright, underlineMagentaBright, underlineCyanBright, underlineWhiteBright;
var init_base = __esm({
  "../../../../../setup-pnpm/store/v11/links/@/yoctocolors/2.2.0/5559ff1b687cffe1c3b9f89a01528989faba71f937cc82eac2b794a5ab181741/node_modules/yoctocolors/base.js"() {
    hasColors = tty2?.WriteStream?.prototype?.hasColors?.() ?? false;
    format = (open3, close) => {
      if (!hasColors) {
        return (input) => input;
      }
      const openCode = `\x1B[${open3}m`;
      const closeCode = `\x1B[${close}m`;
      return (input) => {
        const string = input + "";
        let index2 = string.indexOf(closeCode);
        if (index2 === -1) {
          return openCode + string + closeCode;
        }
        let result2 = openCode;
        let lastIndex = 0;
        const reopenOnNestedClose = close === 22;
        const replaceCode = (reopenOnNestedClose ? closeCode : "") + openCode;
        while (index2 !== -1) {
          result2 += string.slice(lastIndex, index2) + replaceCode;
          lastIndex = index2 + closeCode.length;
          index2 = 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);
    underlineDouble = format("4:2", 24);
    underlineCurly = format("4:3", 24);
    underlineDotted = format("4:4", 24);
    underlineDashed = format("4:5", 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);
    underlineBlack = format("58;5;0", 59);
    underlineRed = format("58;5;1", 59);
    underlineGreen = format("58;5;2", 59);
    underlineYellow = format("58;5;3", 59);
    underlineBlue = format("58;5;4", 59);
    underlineMagenta = format("58;5;5", 59);
    underlineCyan = format("58;5;6", 59);
    underlineWhite = format("58;5;7", 59);
    underlineGray = format("58;5;8", 59);
    underlineRedBright = format("58;5;9", 59);
    underlineGreenBright = format("58;5;10", 59);
    underlineYellowBright = format("58;5;11", 59);
    underlineBlueBright = format("58;5;12", 59);
    underlineMagentaBright = format("58;5;13", 59);
    underlineCyanBright = format("58;5;14", 59);
    underlineWhiteBright = format("58;5;15", 59);
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/yoctocolors/2.2.0/5559ff1b687cffe1c3b9f89a01528989faba71f937cc82eac2b794a5ab181741/node_modules/yoctocolors/index.js
var init_yoctocolors = __esm({
  "../../../../../setup-pnpm/store/v11/links/@/yoctocolors/2.2.0/5559ff1b687cffe1c3b9f89a01528989faba71f937cc82eac2b794a5ab181741/node_modules/yoctocolors/index.js"() {
    init_base();
    init_base();
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/execa/9.6.1/81823ddd5b1874238e0291383831d88650d115554885d6b58836472f7ff5c031/node_modules/execa/lib/verbose/default.js
var defaultVerboseFunction, serializeTimestamp, padField, getFinalIcon, ICONS, identity2, COLORS;
var init_default2 = __esm({
  "../../../../../setup-pnpm/store/v11/links/@/execa/9.6.1/81823ddd5b1874238e0291383831d88650d115554885d6b58836472f7ff5c031/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
    };
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/execa/9.6.1/81823ddd5b1874238e0291383831d88650d115554885d6b58836472f7ff5c031/node_modules/execa/lib/verbose/custom.js
var applyVerboseOnLines, applyVerboseFunction, appendNewline;
var init_custom = __esm({
  "../../../../../setup-pnpm/store/v11/links/@/execa/9.6.1/81823ddd5b1874238e0291383831d88650d115554885d6b58836472f7ff5c031/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}
`;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/execa/9.6.1/81823ddd5b1874238e0291383831d88650d115554885d6b58836472f7ff5c031/node_modules/execa/lib/verbose/log.js
import { inspect } from "node:util";
var verboseLog, getVerboseObject, getPrintedLines, getPrintedLine, serializeVerboseMessage, TAB_SIZE;
var init_log = __esm({
  "../../../../../setup-pnpm/store/v11/links/@/execa/9.6.1/81823ddd5b1874238e0291383831d88650d115554885d6b58836472f7ff5c031/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;
  }
});

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

// ../../../../../setup-pnpm/store/v11/links/@/execa/9.6.1/81823ddd5b1874238e0291383831d88650d115554885d6b58836472f7ff5c031/node_modules/execa/lib/verbose/info.js
var getVerboseInfo, getCommandId, COMMAND_ID, validateVerbose;
var init_info = __esm({
  "../../../../../setup-pnpm/store/v11/links/@/execa/9.6.1/81823ddd5b1874238e0291383831d88650d115554885d6b58836472f7ff5c031/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.`);
        }
      }
    };
  }
});

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

// ../../../../../setup-pnpm/store/v11/links/@/execa/9.6.1/81823ddd5b1874238e0291383831d88650d115554885d6b58836472f7ff5c031/node_modules/execa/lib/arguments/command.js
var handleCommand;
var init_command = __esm({
  "../../../../../setup-pnpm/store/v11/links/@/execa/9.6.1/81823ddd5b1874238e0291383831d88650d115554885d6b58836472f7ff5c031/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
      };
    };
  }
});

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

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

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

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

// ../../../../../setup-pnpm/store/v11/links/@/execa/9.6.1/81823ddd5b1874238e0291383831d88650d115554885d6b58836472f7ff5c031/node_modules/execa/lib/return/final-error.js
var getFinalError, DiscardedError, setErrorName, isExecaError, execaErrorSymbol, isErrorInstance, ExecaError, ExecaSyncError;
var init_final_error = __esm({
  "../../../../../setup-pnpm/store/v11/links/@/execa/9.6.1/81823ddd5b1874238e0291383831d88650d115554885d6b58836472f7ff5c031/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);
  }
});

// ../../../../../setup-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({
  "../../../../../setup-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, index2) => ({
      name: `SIGRT${index2 + 1}`,
      number: SIGRTMIN + index2,
      action: "terminate",
      description: "Application-specific signal (realtime)",
      standard: "posix"
    });
    SIGRTMIN = 34;
    SIGRTMAX = 64;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/human-signals/8.0.1/8f862e62f3a4ab63fc57d39d6ece7007dbc7f811c35a31e21b62baa706efba89/node_modules/human-signals/build/src/core.js
var SIGNALS;
var init_core = __esm({
  "../../../../../setup-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"
      }
    ];
  }
});

// ../../../../../setup-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({
  "../../../../../setup-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 };
    };
  }
});

// ../../../../../setup-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({
  "../../../../../setup-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();
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/execa/9.6.1/81823ddd5b1874238e0291383831d88650d115554885d6b58836472f7ff5c031/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({
  "../../../../../setup-pnpm/store/v11/links/@/execa/9.6.1/81823ddd5b1874238e0291383831d88650d115554885d6b58836472f7ff5c031/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;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/execa/9.6.1/81823ddd5b1874238e0291383831d88650d115554885d6b58836472f7ff5c031/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({
  "../../../../../setup-pnpm/store/v11/links/@/execa/9.6.1/81823ddd5b1874238e0291383831d88650d115554885d6b58836472f7ff5c031/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 {
      }
    };
  }
});

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

// ../../../../../setup-pnpm/store/v11/links/@/execa/9.6.1/81823ddd5b1874238e0291383831d88650d115554885d6b58836472f7ff5c031/node_modules/execa/lib/terminate/cancel.js
var validateCancelSignal, throwOnCancel, terminateOnCancel;
var init_cancel = __esm({
  "../../../../../setup-pnpm/store/v11/links/@/execa/9.6.1/81823ddd5b1874238e0291383831d88650d115554885d6b58836472f7ff5c031/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;
    };
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/execa/9.6.1/81823ddd5b1874238e0291383831d88650d115554885d6b58836472f7ff5c031/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({
  "../../../../../setup-pnpm/store/v11/links/@/execa/9.6.1/81823ddd5b1874238e0291383831d88650d115554885d6b58836472f7ff5c031/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();
      }
    };
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/execa/9.6.1/81823ddd5b1874238e0291383831d88650d115554885d6b58836472f7ff5c031/node_modules/execa/lib/utils/deferred.js
var createDeferred;
var init_deferred = __esm({
  "../../../../../setup-pnpm/store/v11/links/@/execa/9.6.1/81823ddd5b1874238e0291383831d88650d115554885d6b58836472f7ff5c031/node_modules/execa/lib/utils/deferred.js"() {
    createDeferred = () => {
      const methods = {};
      const promise2 = new Promise((resolve4, reject3) => {
        Object.assign(methods, { resolve: resolve4, reject: reject3 });
      });
      return Object.assign(promise2, methods);
    };
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/execa/9.6.1/81823ddd5b1874238e0291383831d88650d115554885d6b58836472f7ff5c031/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({
  "../../../../../setup-pnpm/store/v11/links/@/execa/9.6.1/81823ddd5b1874238e0291383831d88650d115554885d6b58836472f7ff5c031/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";
    };
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/execa/9.6.1/81823ddd5b1874238e0291383831d88650d115554885d6b58836472f7ff5c031/node_modules/execa/lib/utils/max-listeners.js
import { addAbortListener } from "node:events";
var incrementMaxListeners;
var init_max_listeners = __esm({
  "../../../../../setup-pnpm/store/v11/links/@/execa/9.6.1/81823ddd5b1874238e0291383831d88650d115554885d6b58836472f7ff5c031/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);
      });
    };
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/execa/9.6.1/81823ddd5b1874238e0291383831d88650d115554885d6b58836472f7ff5c031/node_modules/execa/lib/ipc/reference.js
var addReference, addReferenceCount, removeReference, removeReferenceCount, undoAddedReferences, redoAddedReferences;
var init_reference = __esm({
  "../../../../../setup-pnpm/store/v11/links/@/execa/9.6.1/81823ddd5b1874238e0291383831d88650d115554885d6b58836472f7ff5c031/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);
      }
    };
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/execa/9.6.1/81823ddd5b1874238e0291383831d88650d115554885d6b58836472f7ff5c031/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({
  "../../../../../setup-pnpm/store/v11/links/@/execa/9.6.1/81823ddd5b1874238e0291383831d88650d115554885d6b58836472f7ff5c031/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();
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/execa/9.6.1/81823ddd5b1874238e0291383831d88650d115554885d6b58836472f7ff5c031/node_modules/execa/lib/ipc/forward.js
import { EventEmitter as EventEmitter2 } from "node:events";
var getIpcEmitter, IPC_EMITTERS, forwardEvents, isConnected;
var init_forward = __esm({
  "../../../../../setup-pnpm/store/v11/links/@/execa/9.6.1/81823ddd5b1874238e0291383831d88650d115554885d6b58836472f7ff5c031/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 EventEmitter2();
      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;
    };
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/execa/9.6.1/81823ddd5b1874238e0291383831d88650d115554885d6b58836472f7ff5c031/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({
  "../../../../../setup-pnpm/store/v11/links/@/execa/9.6.1/81823ddd5b1874238e0291383831d88650d115554885d6b58836472f7ff5c031/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";
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/execa/9.6.1/81823ddd5b1874238e0291383831d88650d115554885d6b58836472f7ff5c031/node_modules/execa/lib/ipc/outgoing.js
var startSendMessage, endSendMessage, waitForOutgoingMessages, OUTGOING_MESSAGES, hasMessageListeners, getMinListenerCount;
var init_outgoing = __esm({
  "../../../../../setup-pnpm/store/v11/links/@/execa/9.6.1/81823ddd5b1874238e0291383831d88650d115554885d6b58836472f7ff5c031/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;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/execa/9.6.1/81823ddd5b1874238e0291383831d88650d115554885d6b58836472f7ff5c031/node_modules/execa/lib/ipc/send.js
import { promisify as promisify11 } from "node:util";
var sendMessage, sendMessageAsync, sendOneMessage, getSendMethod, PROCESS_SEND_METHODS;
var init_send = __esm({
  "../../../../../setup-pnpm/store/v11/links/@/execa/9.6.1/81823ddd5b1874238e0291383831d88650d115554885d6b58836472f7ff5c031/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 = promisify11(anyProcess.send.bind(anyProcess));
      PROCESS_SEND_METHODS.set(anyProcess, sendMethod);
      return sendMethod;
    };
    PROCESS_SEND_METHODS = /* @__PURE__ */ new WeakMap();
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/execa/9.6.1/81823ddd5b1874238e0291383831d88650d115554885d6b58836472f7ff5c031/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({
  "../../../../../setup-pnpm/store/v11/links/@/execa/9.6.1/81823ddd5b1874238e0291383831d88650d115554885d6b58836472f7ff5c031/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();
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/execa/9.6.1/81823ddd5b1874238e0291383831d88650d115554885d6b58836472f7ff5c031/node_modules/execa/lib/terminate/graceful.js
var validateGracefulCancel, throwOnGracefulCancel, sendOnAbort, getReason;
var init_graceful2 = __esm({
  "../../../../../setup-pnpm/store/v11/links/@/execa/9.6.1/81823ddd5b1874238e0291383831d88650d115554885d6b58836472f7ff5c031/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;
    };
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/execa/9.6.1/81823ddd5b1874238e0291383831d88650d115554885d6b58836472f7ff5c031/node_modules/execa/lib/terminate/timeout.js
import { setTimeout as setTimeout3 } from "node:timers/promises";
var validateTimeout, throwOnTimeout, killAfterTimeout;
var init_timeout = __esm({
  "../../../../../setup-pnpm/store/v11/links/@/execa/9.6.1/81823ddd5b1874238e0291383831d88650d115554885d6b58836472f7ff5c031/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();
    };
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/execa/9.6.1/81823ddd5b1874238e0291383831d88650d115554885d6b58836472f7ff5c031/node_modules/execa/lib/methods/node.js
import { execPath, execArgv } from "node:process";
import path27 from "node:path";
var mapNode, handleNodeOption;
var init_node2 = __esm({
  "../../../../../setup-pnpm/store/v11/links/@/execa/9.6.1/81823ddd5b1874238e0291383831d88650d115554885d6b58836472f7ff5c031/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 = path27.resolve(cwd, normalizedNodePath);
      const newOptions = {
        ...options,
        nodePath: resolvedNodePath,
        node: shouldHandleNode,
        cwd
      };
      if (!shouldHandleNode) {
        return [file, commandArguments, newOptions];
      }
      if (path27.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 }
      ];
    };
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/execa/9.6.1/81823ddd5b1874238e0291383831d88650d115554885d6b58836472f7ff5c031/node_modules/execa/lib/ipc/ipc-input.js
import { serialize } from "node:v8";
var validateIpcInputOption, validateAdvancedInput, validateJsonInput, validateIpcInput, sendIpcInput;
var init_ipc_input = __esm({
  "../../../../../setup-pnpm/store/v11/links/@/execa/9.6.1/81823ddd5b1874238e0291383831d88650d115554885d6b58836472f7ff5c031/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);
    };
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/execa/9.6.1/81823ddd5b1874238e0291383831d88650d115554885d6b58836472f7ff5c031/node_modules/execa/lib/arguments/encoding-option.js
var validateEncoding, TEXT_ENCODINGS, BINARY_ENCODINGS, ENCODINGS, getCorrectEncoding, ENCODING_ALIASES, serializeEncoding;
var init_encoding_option = __esm({
  "../../../../../setup-pnpm/store/v11/links/@/execa/9.6.1/81823ddd5b1874238e0291383831d88650d115554885d6b58836472f7ff5c031/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);
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/execa/9.6.1/81823ddd5b1874238e0291383831d88650d115554885d6b58836472f7ff5c031/node_modules/execa/lib/arguments/cwd.js
import { statSync as statSync2 } from "node:fs";
import path28 from "node:path";
import process13 from "node:process";
var normalizeCwd, getDefaultCwd, fixCwdError;
var init_cwd = __esm({
  "../../../../../setup-pnpm/store/v11/links/@/execa/9.6.1/81823ddd5b1874238e0291383831d88650d115554885d6b58836472f7ff5c031/node_modules/execa/lib/arguments/cwd.js"() {
    init_file_url();
    normalizeCwd = (cwd = getDefaultCwd()) => {
      const cwdString = safeNormalizeFileUrl(cwd, 'The "cwd" option');
      return path28.resolve(cwdString);
    };
    getDefaultCwd = () => {
      try {
        return process13.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 = statSync2(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;
    };
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/execa/9.6.1/81823ddd5b1874238e0291383831d88650d115554885d6b58836472f7ff5c031/node_modules/execa/lib/arguments/options.js
import path29 from "node:path";
import process14 from "node:process";
var import_cross_spawn, normalizeOptions, addDefaultOptions, getEnv;
var init_options2 = __esm({
  "../../../../../setup-pnpm/store/v11/links/@/execa/9.6.1/81823ddd5b1874238e0291383831d88650d115554885d6b58836472f7ff5c031/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 (process14.platform === "win32" && path29.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: cleanup2 = 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: cleanup2,
      all,
      windowsHide,
      killSignal,
      forceKillAfterDelay,
      gracefulCancel,
      ipcInput,
      ipc,
      serialization
    });
    getEnv = ({ env: envOption, extendEnv, preferLocal, node, localDirectory, nodePath }) => {
      const env4 = extendEnv ? { ...process14.env, ...envOption } : envOption;
      if (preferLocal || node) {
        return npmRunPathEnv({
          env: env4,
          cwd: localDirectory,
          execPath: nodePath,
          preferLocal,
          addExecPath: node
        });
      }
      return env4;
    };
  }
});

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

// ../../../../../setup-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({
  "../../../../../setup-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);
  }
});

// ../../../../../setup-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({
  "../../../../../setup-pnpm/store/v11/links/@/is-stream/4.0.1/7b8ad7df4fa9bb1fdc63fbf0f97b595d95c1e6d5b7fad348ce34b901ddb9f824/node_modules/is-stream/index.js"() {
  }
});

// ../../../../../setup-pnpm/store/v11/links/@sec-ant/readable-stream/0.4.1/6a695649d2484089969e48b79be0925ba6e16d4558b47eec06fd91d756c6298a/node_modules/@sec-ant/readable-stream/dist/ponyfill/asyncIterator.js
function i2() {
  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(u);
  return s[n] = t2, s;
}
var a, c, n, u;
var init_asyncIterator = __esm({
  "../../../../../setup-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(i2, "name", { value: "next" });
    Object.defineProperty(o, "name", { value: "return" });
    u = Object.create(a, {
      next: {
        enumerable: true,
        configurable: true,
        writable: true,
        value: i2
      },
      return: {
        enumerable: true,
        configurable: true,
        writable: true,
        value: o
      }
    });
  }
});

// ../../../../../setup-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({
  "../../../../../setup-pnpm/store/v11/links/@sec-ant/readable-stream/0.4.1/6a695649d2484089969e48b79be0925ba6e16d4558b47eec06fd91d756c6298a/node_modules/@sec-ant/readable-stream/dist/ponyfill/fromAnyIterable.js"() {
  }
});

// ../../../../../setup-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({
  "../../../../../setup-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();
  }
});

// ../../../../../setup-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_stream = __esm({
  "../../../../../setup-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 = {};
  }
});

// ../../../../../setup-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({
  "../../../../../setup-pnpm/store/v11/links/@/get-stream/9.0.1/69ae1c618bfef4a14fcafaa4d22c6c0c519e6f1c741c2958f90c677994d53fcf/node_modules/get-stream/source/contents.js"() {
    init_stream();
    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");
      }
    };
  }
});

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

// ../../../../../setup-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({
  "../../../../../setup-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: noop2,
      addChunk: addArrayChunk,
      getFinalChunk: noop2,
      finalize: getContentsProperty
    };
  }
});

// ../../../../../setup-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, textEncoder2, useUint8Array, useUint8ArrayWithOffset, truncateArrayBufferChunk, addArrayBufferChunk, resizeArrayBufferSlow, resizeArrayBuffer, getNewContentsLength, SCALE_FACTOR, finalizeArrayBuffer, hasArrayBufferResize, arrayBufferMethods;
var init_array_buffer = __esm({
  "../../../../../setup-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) => textEncoder2.encode(chunk);
    textEncoder2 = 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: noop2,
      finalize: finalizeArrayBuffer
    };
  }
});

// ../../../../../setup-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({
  "../../../../../setup-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
    };
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/get-stream/9.0.1/69ae1c618bfef4a14fcafaa4d22c6c0c519e6f1c741c2958f90c677994d53fcf/node_modules/get-stream/source/exports.js
var init_exports = __esm({
  "../../../../../setup-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();
  }
});

// ../../../../../setup-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_source2 = __esm({
  "../../../../../setup-pnpm/store/v11/links/@/get-stream/9.0.1/69ae1c618bfef4a14fcafaa4d22c6c0c519e6f1c741c2958f90c677994d53fcf/node_modules/get-stream/source/index.js"() {
    init_stream();
    init_exports();
    Object.assign(nodeImports, { on, finished });
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/execa/9.6.1/81823ddd5b1874238e0291383831d88650d115554885d6b58836472f7ff5c031/node_modules/execa/lib/io/max-buffer.js
var handleMaxBuffer, getMaxBufferUnit, checkIpcMaxBuffer, getMaxBufferMessage, getMaxBufferInfo, isMaxBufferSync, truncateMaxBufferSync, getMaxBufferSync;
var init_max_buffer = __esm({
  "../../../../../setup-pnpm/store/v11/links/@/execa/9.6.1/81823ddd5b1874238e0291383831d88650d115554885d6b58836472f7ff5c031/node_modules/execa/lib/io/max-buffer.js"() {
    init_source2();
    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;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/execa/9.6.1/81823ddd5b1874238e0291383831d88650d115554885d6b58836472f7ff5c031/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({
  "../../../../../setup-pnpm/store/v11/links/@/execa/9.6.1/81823ddd5b1874238e0291383831d88650d115554885d6b58836472f7ff5c031/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 "";
    };
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/execa/9.6.1/81823ddd5b1874238e0291383831d88650d115554885d6b58836472f7ff5c031/node_modules/execa/lib/return/result.js
var makeSuccessResult, makeEarlyError, makeError, getErrorProperties, omitUndefinedProperties, normalizeExitPayload;
var init_result = __esm({
  "../../../../../setup-pnpm/store/v11/links/@/execa/9.6.1/81823ddd5b1874238e0291383831d88650d115554885d6b58836472f7ff5c031/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 };
    };
  }
});

// ../../../../../setup-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({
  "../../../../../setup-pnpm/store/v11/links/@/parse-ms/4.0.0/edcb0dce1fc1cde6b0b4641cc65f88dba04d2ac5013f8df3cf864a18508e9952/node_modules/parse-ms/index.js"() {
    toZeroIfInfinity = (value) => Number.isFinite(value) ? value : 0;
  }
});

// ../../../../../setup-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 add2 = (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) {
    add2(BigInt(days) * 24n + BigInt(parsed.hours), "hour", "h");
  } else {
    if (options.hideYear) {
      add2(days, "day", "d");
    } else {
      add2(days / 365n, "year", "y");
      add2(days % 365n, "day", "d");
    }
    add2(Number(parsed.hours), "hour", "h");
  }
  add2(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);
      add2(seconds, "second", "s");
      if (options.formatSubMilliseconds) {
        add2(milliseconds2, "millisecond", "ms");
        add2(microseconds, "microsecond", "\xB5s");
        add2(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;
        add2(
          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+$/, "");
      add2(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({
  "../../../../../setup-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;
  }
});

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

// ../../../../../setup-pnpm/store/v11/links/@/execa/9.6.1/81823ddd5b1874238e0291383831d88650d115554885d6b58836472f7ff5c031/node_modules/execa/lib/verbose/complete.js
var logResult, logDuration;
var init_complete = __esm({
  "../../../../../setup-pnpm/store/v11/links/@/execa/9.6.1/81823ddd5b1874238e0291383831d88650d115554885d6b58836472f7ff5c031/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
      });
    };
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/execa/9.6.1/81823ddd5b1874238e0291383831d88650d115554885d6b58836472f7ff5c031/node_modules/execa/lib/return/reject.js
var handleResult;
var init_reject2 = __esm({
  "../../../../../setup-pnpm/store/v11/links/@/execa/9.6.1/81823ddd5b1874238e0291383831d88650d115554885d6b58836472f7ff5c031/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;
    };
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/execa/9.6.1/81823ddd5b1874238e0291383831d88650d115554885d6b58836472f7ff5c031/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({
  "../../../../../setup-pnpm/store/v11/links/@/execa/9.6.1/81823ddd5b1874238e0291383831d88650d115554885d6b58836472f7ff5c031/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: transform3, final, binary: binary2, objectMode }, optionName) => {
      if (transform3 !== void 0 && !isGenerator(transform3)) {
        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(transform3) || 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"
    };
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/execa/9.6.1/81823ddd5b1874238e0291383831d88650d115554885d6b58836472f7ff5c031/node_modules/execa/lib/transform/object-mode.js
var getTransformObjectModes, getOutputObjectModes, getInputObjectModes, getFdObjectMode;
var init_object_mode = __esm({
  "../../../../../setup-pnpm/store/v11/links/@/execa/9.6.1/81823ddd5b1874238e0291383831d88650d115554885d6b58836472f7ff5c031/node_modules/execa/lib/transform/object-mode.js"() {
    init_type2();
    getTransformObjectModes = (objectMode, index2, newTransforms, direction) => direction === "output" ? getOutputObjectModes(objectMode, index2, newTransforms) : getInputObjectModes(objectMode, index2, newTransforms);
    getOutputObjectModes = (objectMode, index2, newTransforms) => {
      const writableObjectMode = index2 !== 0 && newTransforms[index2 - 1].value.readableObjectMode;
      const readableObjectMode = objectMode ?? writableObjectMode;
      return { writableObjectMode, readableObjectMode };
    };
    getInputObjectModes = (objectMode, index2, newTransforms) => {
      const writableObjectMode = index2 === 0 ? objectMode === true : newTransforms[index2 - 1].value.readableObjectMode;
      const readableObjectMode = index2 !== 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;
    };
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/execa/9.6.1/81823ddd5b1874238e0291383831d88650d115554885d6b58836472f7ff5c031/node_modules/execa/lib/transform/normalize.js
var normalizeTransforms, getTransforms, normalizeTransform, normalizeDuplex, normalizeTransformStream, normalizeGenerator, sortTransforms;
var init_normalize = __esm({
  "../../../../../setup-pnpm/store/v11/links/@/execa/9.6.1/81823ddd5b1874238e0291383831d88650d115554885d6b58836472f7ff5c031/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 [index2, stdioItem] of Object.entries(transforms)) {
        newTransforms[index2] = normalizeTransform({
          stdioItem,
          index: Number(index2),
          newTransforms,
          optionName,
          direction,
          encoding
        });
      }
      return sortTransforms(newTransforms, direction);
    };
    normalizeTransform = ({ stdioItem, stdioItem: { type: type4 }, index: index2, newTransforms, optionName, direction, encoding }) => {
      if (type4 === "duplex") {
        return normalizeDuplex({ stdioItem, optionName });
      }
      if (type4 === "webTransform") {
        return normalizeTransformStream({
          stdioItem,
          index: index2,
          newTransforms,
          direction
        });
      }
      return normalizeGenerator({
        stdioItem,
        index: index2,
        newTransforms,
        direction,
        encoding
      });
    };
    normalizeDuplex = ({
      stdioItem,
      stdioItem: {
        value: {
          transform: transform3,
          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: transform3, writableObjectMode, readableObjectMode }
      };
    };
    normalizeTransformStream = ({ stdioItem, stdioItem: { value }, index: index2, newTransforms, direction }) => {
      const { transform: transform3, objectMode } = isPlainObject(value) ? value : { transform: value };
      const { writableObjectMode, readableObjectMode } = getTransformObjectModes(objectMode, index2, newTransforms, direction);
      return {
        ...stdioItem,
        value: { transform: transform3, writableObjectMode, readableObjectMode }
      };
    };
    normalizeGenerator = ({ stdioItem, stdioItem: { value }, index: index2, newTransforms, direction, encoding }) => {
      const {
        transform: transform3,
        final,
        binary: binaryOption = false,
        preserveNewlines = false,
        objectMode
      } = isPlainObject(value) ? value : { transform: value };
      const binary2 = binaryOption || BINARY_ENCODINGS.has(encoding);
      const { writableObjectMode, readableObjectMode } = getTransformObjectModes(objectMode, index2, newTransforms, direction);
      return {
        ...stdioItem,
        value: {
          transform: transform3,
          final,
          binary: binary2,
          preserveNewlines,
          writableObjectMode,
          readableObjectMode
        }
      };
    };
    sortTransforms = (newTransforms, direction) => direction === "input" ? newTransforms.reverse() : newTransforms;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/execa/9.6.1/81823ddd5b1874238e0291383831d88650d115554885d6b58836472f7ff5c031/node_modules/execa/lib/stdio/direction.js
import process15 from "node:process";
var getStreamDirection, getStdioItemDirection, KNOWN_DIRECTIONS, anyDirection, alwaysInput, guessStreamDirection, getStandardStreamDirection, DEFAULT_DIRECTION;
var init_direction = __esm({
  "../../../../../setup-pnpm/store/v11/links/@/execa/9.6.1/81823ddd5b1874238e0291383831d88650d115554885d6b58836472f7ff5c031/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, process15.stdin].includes(value)) {
        return "input";
      }
      if ([1, 2, process15.stdout, process15.stderr].includes(value)) {
        return "output";
      }
    };
    DEFAULT_DIRECTION = "output";
  }
});

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

// ../../../../../setup-pnpm/store/v11/links/@/execa/9.6.1/81823ddd5b1874238e0291383831d88650d115554885d6b58836472f7ff5c031/node_modules/execa/lib/stdio/stdio-option.js
var normalizeStdioOption, getStdioArray, hasAlias, addDefaultValue2, normalizeStdioSync, isOutputPipeOnly;
var init_stdio_option = __esm({
  "../../../../../setup-pnpm/store/v11/links/@/execa/9.6.1/81823ddd5b1874238e0291383831d88650d115554885d6b58836472f7ff5c031/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");
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/execa/9.6.1/81823ddd5b1874238e0291383831d88650d115554885d6b58836472f7ff5c031/node_modules/execa/lib/stdio/native.js
import { readFileSync as readFileSync2 } from "node:fs";
import tty3 from "node:tty";
var handleNativeStream, handleNativeStreamSync, getTargetFd, getTargetFdNumber, handleNativeStreamAsync, getStandardStream;
var init_native = __esm({
  "../../../../../setup-pnpm/store/v11/links/@/execa/9.6.1/81823ddd5b1874238e0291383831d88650d115554885d6b58836472f7ff5c031/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 (tty3.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(readFileSync2(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;
    };
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/execa/9.6.1/81823ddd5b1874238e0291383831d88650d115554885d6b58836472f7ff5c031/node_modules/execa/lib/stdio/input-option.js
var handleInputOptions, handleInputOption, getInputType, handleInputFileOption, getInputFileType;
var init_input_option = __esm({
  "../../../../../setup-pnpm/store/v11/links/@/execa/9.6.1/81823ddd5b1874238e0291383831d88650d115554885d6b58836472f7ff5c031/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.");
    };
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/execa/9.6.1/81823ddd5b1874238e0291383831d88650d115554885d6b58836472f7ff5c031/node_modules/execa/lib/stdio/duplicate.js
var filterDuplicates, getDuplicateStream, getOtherStdioItems, validateDuplicateStreamSync, getDuplicateStreamInstance, hasSameValue, validateDuplicateTransform, throwOnDuplicateStream;
var init_duplicate = __esm({
  "../../../../../setup-pnpm/store/v11/links/@/execa/9.6.1/81823ddd5b1874238e0291383831d88650d115554885d6b58836472f7ff5c031/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: transform3 } }) => transform3 === 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.`);
      }
    };
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/execa/9.6.1/81823ddd5b1874238e0291383831d88650d115554885d6b58836472f7ff5c031/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({
  "../../../../../setup-pnpm/store/v11/links/@/execa/9.6.1/81823ddd5b1874238e0291383831d88650d115554885d6b58836472f7ff5c031/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";
    };
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/execa/9.6.1/81823ddd5b1874238e0291383831d88650d115554885d6b58836472f7ff5c031/node_modules/execa/lib/stdio/handle-sync.js
import { readFileSync as readFileSync3 } from "node:fs";
var handleStdioSync, forbiddenIfSync, forbiddenNativeIfSync, throwInvalidSyncValue, addProperties, addPropertiesSync;
var init_handle_sync = __esm({
  "../../../../../setup-pnpm/store/v11/links/@/execa/9.6.1/81823ddd5b1874238e0291383831d88650d115554885d6b58836472f7ff5c031/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(readFileSync3(value))] }),
        filePath: ({ value: { file } }) => ({ contents: [bufferToUint8Array(readFileSync3(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
      }
    };
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/execa/9.6.1/81823ddd5b1874238e0291383831d88650d115554885d6b58836472f7ff5c031/node_modules/execa/lib/io/strip-newline.js
var stripNewline, getStripFinalNewline;
var init_strip_newline = __esm({
  "../../../../../setup-pnpm/store/v11/links/@/execa/9.6.1/81823ddd5b1874238e0291383831d88650d115554885d6b58836472f7ff5c031/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];
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/execa/9.6.1/81823ddd5b1874238e0291383831d88650d115554885d6b58836472f7ff5c031/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({
  "../../../../../setup-pnpm/store/v11/links/@/execa/9.6.1/81823ddd5b1874238e0291383831d88650d115554885d6b58836472f7ff5c031/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: transform3, final } = initializeSplitLines(preserveNewlines, {});
      return [...transform3(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: concatBytes2 } = typeof chunk === "string" ? linesStringInfo : linesUint8ArrayInfo;
      if (chunk.at(-1) === LF2) {
        yield chunk;
        return;
      }
      const newline = isWindowsNewline ? windowsNewline : unixNewline;
      yield concatBytes2(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
    };
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/execa/9.6.1/81823ddd5b1874238e0291383831d88650d115554885d6b58836472f7ff5c031/node_modules/execa/lib/transform/validate.js
import { Buffer as Buffer3 } from "node:buffer";
var getValidateTransformInput, validateStringTransformInput, getValidateTransformReturn, validateObjectTransformReturn, validateStringTransformReturn, validateEmptyReturn;
var init_validate = __esm({
  "../../../../../setup-pnpm/store/v11/links/@/execa/9.6.1/81823ddd5b1874238e0291383831d88650d115554885d6b58836472f7ff5c031/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) && !Buffer3.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; }`);
      }
    };
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/execa/9.6.1/81823ddd5b1874238e0291383831d88650d115554885d6b58836472f7ff5c031/node_modules/execa/lib/transform/encoding-transform.js
import { Buffer as Buffer4 } from "node:buffer";
import { StringDecoder as StringDecoder2 } from "node:string_decoder";
var getEncodingTransformGenerator, encodingUint8ArrayGenerator, encodingStringGenerator, encodingStringFinal;
var init_encoding_transform = __esm({
  "../../../../../setup-pnpm/store/v11/links/@/execa/9.6.1/81823ddd5b1874238e0291383831d88650d115554885d6b58836472f7ff5c031/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* (textEncoder4, chunk) {
      if (Buffer4.isBuffer(chunk)) {
        yield bufferToUint8Array(chunk);
      } else if (typeof chunk === "string") {
        yield textEncoder4.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;
      }
    };
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/execa/9.6.1/81823ddd5b1874238e0291383831d88650d115554885d6b58836472f7ff5c031/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({
  "../../../../../setup-pnpm/store/v11/links/@/execa/9.6.1/81823ddd5b1874238e0291383831d88650d115554885d6b58836472f7ff5c031/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, index2) {
      if (index2 === generators.length) {
        yield chunk;
        return;
      }
      const { transform: transform3 = identityGenerator } = generators[index2];
      for await (const transformedChunk of transform3(chunk)) {
        yield* transformChunk(transformedChunk, generators, index2 + 1);
      }
    };
    finalChunks = async function* (generators) {
      for (const [index2, { final }] of Object.entries(generators)) {
        yield* generatorFinalChunks(final, Number(index2), generators);
      }
    };
    generatorFinalChunks = async function* (final, index2, generators) {
      if (final === void 0) {
        return;
      }
      for await (const finalChunk of final()) {
        yield* transformChunk(finalChunk, generators, index2 + 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;
    };
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/execa/9.6.1/81823ddd5b1874238e0291383831d88650d115554885d6b58836472f7ff5c031/node_modules/execa/lib/transform/run-sync.js
var pushChunksSync, runTransformSync, transformChunkSync, finalChunksSync, generatorFinalChunksSync, identityGenerator2;
var init_run_sync = __esm({
  "../../../../../setup-pnpm/store/v11/links/@/execa/9.6.1/81823ddd5b1874238e0291383831d88650d115554885d6b58836472f7ff5c031/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, index2) {
      if (index2 === generators.length) {
        yield chunk;
        return;
      }
      const { transform: transform3 = identityGenerator2 } = generators[index2];
      for (const transformedChunk of transform3(chunk)) {
        yield* transformChunkSync(transformedChunk, generators, index2 + 1);
      }
    };
    finalChunksSync = function* (generators) {
      for (const [index2, { final }] of Object.entries(generators)) {
        yield* generatorFinalChunksSync(final, Number(index2), generators);
      }
    };
    generatorFinalChunksSync = function* (final, index2, generators) {
      if (final === void 0) {
        return;
      }
      for (const finalChunk of final()) {
        yield* transformChunkSync(finalChunk, generators, index2 + 1);
      }
    };
    identityGenerator2 = function* (chunk) {
      yield chunk;
    };
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/execa/9.6.1/81823ddd5b1874238e0291383831d88650d115554885d6b58836472f7ff5c031/node_modules/execa/lib/transform/generator.js
import { Transform, getDefaultHighWaterMark } from "node:stream";
var generatorToStream, runGeneratorsSync, addInternalGenerators;
var init_generator = __esm({
  "../../../../../setup-pnpm/store/v11/links/@/execa/9.6.1/81823ddd5b1874238e0291383831d88650d115554885d6b58836472f7ff5c031/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: transform3, final, writableObjectMode, readableObjectMode },
      optionName
    }, { encoding }) => {
      const state = {};
      const generators = addInternalGenerators(value, encoding, optionName);
      const transformAsync2 = isAsyncGenerator(transform3);
      const finalAsync = isAsyncGenerator(final);
      const transformMethod = transformAsync2 ? pushChunks.bind(void 0, transformChunk, state) : pushChunksSync.bind(void 0, transformChunkSync);
      const finalMethod = transformAsync2 || finalAsync ? pushChunks.bind(void 0, finalChunks, state) : pushChunksSync.bind(void 0, finalChunksSync);
      const destroyMethod = transformAsync2 || 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: transform3, 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: transform3, final },
        { transform: getValidateTransformReturn(readableObjectMode, optionName) },
        getAppendNewlineGenerator({
          binary: binary2,
          preserveNewlines,
          readableObjectMode,
          state
        })
      ].filter(Boolean);
    };
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/execa/9.6.1/81823ddd5b1874238e0291383831d88650d115554885d6b58836472f7ff5c031/node_modules/execa/lib/io/input-sync.js
var addInputOptionsSync, getInputFdNumbers, addInputOptionSync, applySingleInputGeneratorsSync, validateSerializable;
var init_input_sync = __esm({
  "../../../../../setup-pnpm/store/v11/links/@/execa/9.6.1/81823ddd5b1874238e0291383831d88650d115554885d6b58836472f7ff5c031/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}.`);
      }
    };
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/execa/9.6.1/81823ddd5b1874238e0291383831d88650d115554885d6b58836472f7ff5c031/node_modules/execa/lib/verbose/output.js
var shouldLogOutput, fdUsesVerbose, PIPED_STDIO_VALUES, logLines, logLinesSync, isPipingStream, logLine;
var init_output = __esm({
  "../../../../../setup-pnpm/store/v11/links/@/execa/9.6.1/81823ddd5b1874238e0291383831d88650d115554885d6b58836472f7ff5c031/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
      });
    };
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/execa/9.6.1/81823ddd5b1874238e0291383831d88650d115554885d6b58836472f7ff5c031/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({
  "../../../../../setup-pnpm/store/v11/links/@/execa/9.6.1/81823ddd5b1874238e0291383831d88650d115554885d6b58836472f7ff5c031/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: path240, append } of stdioItems.filter(({ type: type4 }) => FILE_TYPES.has(type4))) {
        const pathString = typeof path240 === "string" ? path240 : path240.toString();
        if (append || outputFiles.has(pathString)) {
          appendFileSync(path240, serializedResult);
        } else {
          outputFiles.add(pathString);
          writeFileSync(path240, serializedResult);
        }
      }
    };
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/execa/9.6.1/81823ddd5b1874238e0291383831d88650d115554885d6b58836472f7ff5c031/node_modules/execa/lib/resolve/all-sync.js
var getAllSync;
var init_all_sync = __esm({
  "../../../../../setup-pnpm/store/v11/links/@/execa/9.6.1/81823ddd5b1874238e0291383831d88650d115554885d6b58836472f7ff5c031/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}`;
    };
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/execa/9.6.1/81823ddd5b1874238e0291383831d88650d115554885d6b58836472f7ff5c031/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({
  "../../../../../setup-pnpm/store/v11/links/@/execa/9.6.1/81823ddd5b1874238e0291383831d88650d115554885d6b58836472f7ff5c031/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;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/execa/9.6.1/81823ddd5b1874238e0291383831d88650d115554885d6b58836472f7ff5c031/node_modules/execa/lib/resolve/exit-sync.js
var getExitResultSync, getResultError;
var init_exit_sync = __esm({
  "../../../../../setup-pnpm/store/v11/links/@/execa/9.6.1/81823ddd5b1874238e0291383831d88650d115554885d6b58836472f7ff5c031/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;
    };
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/execa/9.6.1/81823ddd5b1874238e0291383831d88650d115554885d6b58836472f7ff5c031/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({
  "../../../../../setup-pnpm/store/v11/links/@/execa/9.6.1/81823ddd5b1874238e0291383831d88650d115554885d6b58836472f7ff5c031/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
    });
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/execa/9.6.1/81823ddd5b1874238e0291383831d88650d115554885d6b58836472f7ff5c031/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({
  "../../../../../setup-pnpm/store/v11/links/@/execa/9.6.1/81823ddd5b1874238e0291383831d88650d115554885d6b58836472f7ff5c031/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);
    };
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/execa/9.6.1/81823ddd5b1874238e0291383831d88650d115554885d6b58836472f7ff5c031/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({
  "../../../../../setup-pnpm/store/v11/links/@/execa/9.6.1/81823ddd5b1874238e0291383831d88650d115554885d6b58836472f7ff5c031/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;
      }
    };
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/execa/9.6.1/81823ddd5b1874238e0291383831d88650d115554885d6b58836472f7ff5c031/node_modules/execa/lib/ipc/methods.js
import process16 from "node:process";
var addIpcMethods, getIpcExport, getIpcMethods;
var init_methods = __esm({
  "../../../../../setup-pnpm/store/v11/links/@/execa/9.6.1/81823ddd5b1874238e0291383831d88650d115554885d6b58836472f7ff5c031/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 = process16;
      const isSubprocess = true;
      const ipc = process16.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
      })
    });
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/execa/9.6.1/81823ddd5b1874238e0291383831d88650d115554885d6b58836472f7ff5c031/node_modules/execa/lib/return/early-error.js
import { ChildProcess as ChildProcess2 } from "node:child_process";
import {
  PassThrough as PassThrough2,
  Readable,
  Writable,
  Duplex
} from "node:stream";
var handleEarlyError, createDummyStreams, createDummyStream, readable, writable, duplex, handleDummyPromise;
var init_early_error = __esm({
  "../../../../../setup-pnpm/store/v11/links/@/execa/9.6.1/81823ddd5b1874238e0291383831d88650d115554885d6b58836472f7ff5c031/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 PassThrough2();
      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);
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/execa/9.6.1/81823ddd5b1874238e0291383831d88650d115554885d6b58836472f7ff5c031/node_modules/execa/lib/stdio/handle-async.js
import { createReadStream, createWriteStream } from "node:fs";
import { Buffer as Buffer5 } 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({
  "../../../../../setup-pnpm/store/v11/links/@/execa/9.6.1/81823ddd5b1874238e0291383831d88650d115554885d6b58836472f7ff5c031/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: transform3, writableObjectMode, readableObjectMode } }) {
        const objectMode = writableObjectMode || readableObjectMode;
        const stream2 = Duplex2.fromWeb(transform3, { objectMode });
        return { stream: stream2 };
      },
      duplex: ({ value: { transform: transform3 } }) => ({ stream: transform3 }),
      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(Buffer5.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
      }
    };
  }
});

// ../../../../../setup-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, noop3, updateMaxListeners, PASSTHROUGH_LISTENERS_COUNT, PASSTHROUGH_LISTENERS_PER_STREAM;
var init_merge_streams = __esm({
  "../../../../../setup-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", noop3);
        stream2.destroy(error);
      }
    };
    noop3 = () => {
    };
    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;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/execa/9.6.1/81823ddd5b1874238e0291383831d88650d115554885d6b58836472f7ff5c031/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({
  "../../../../../setup-pnpm/store/v11/links/@/execa/9.6.1/81823ddd5b1874238e0291383831d88650d115554885d6b58836472f7ff5c031/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();
      }
    };
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/execa/9.6.1/81823ddd5b1874238e0291383831d88650d115554885d6b58836472f7ff5c031/node_modules/execa/lib/io/output-async.js
var pipeOutputAsync, pipeTransform, SUBPROCESS_STREAM_PROPERTIES, pipeStdioItem, setStandardStreamMaxListeners, MAX_LISTENERS_INCREMENT;
var init_output_async = __esm({
  "../../../../../setup-pnpm/store/v11/links/@/execa/9.6.1/81823ddd5b1874238e0291383831d88650d115554885d6b58836472f7ff5c031/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;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/signal-exit/4.1.0/03c01b974932dd7697f8480d6655f349321edaf97b16deb799df3fcd267f2475/node_modules/signal-exit/dist/mjs/signals.js
var signals;
var init_signals2 = __esm({
  "../../../../../setup-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");
    }
  }
});

// ../../../../../setup-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, process17, onExit, load2, unload;
var init_mjs = __esm({
  "../../../../../setup-pnpm/store/v11/links/@/signal-exit/4.1.0/03c01b974932dd7697f8480d6655f349321edaf97b16deb799df3fcd267f2475/node_modules/signal-exit/dist/mjs/index.js"() {
    init_signals2();
    processOk = (process25) => !!process25 && typeof process25 === "object" && typeof process25.removeListener === "function" && typeof process25.emit === "function" && typeof process25.reallyExit === "function" && typeof process25.listeners === "function" && typeof process25.kill === "function" && typeof process25.pid === "number" && typeof process25.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 i4 = list2.indexOf(fn);
        if (i4 === -1) {
          return;
        }
        if (i4 === 0 && list2.length === 1) {
          list2.length = 0;
        } else {
          list2.splice(i4, 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 = (handler83) => {
      return {
        onExit(cb, opts3) {
          return handler83.onExit(cb, opts3);
        },
        load() {
          return handler83.load();
        },
        unload() {
          return handler83.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 = process17.platform === "win32" ? "SIGINT" : "SIGHUP";
      /* c8 ignore stop */
      #emitter = new Emitter();
      #process;
      #originalProcessEmit;
      #originalProcessReallyExit;
      #sigListeners = {};
      #loaded = false;
      constructor(process25) {
        super();
        this.#process = process25;
        this.#sigListeners = {};
        for (const sig of signals) {
          this.#sigListeners[sig] = () => {
            const listeners = this.#process.listeners(sig);
            let { count: count2 } = this.#emitter;
            const p = process25;
            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)
                process25.kill(process25.pid, s);
            }
          };
        }
        this.#originalProcessReallyExit = process25.reallyExit;
        this.#originalProcessEmit = process25.emit;
      }
      onExit(cb, opts3) {
        if (!processOk(this.#process)) {
          return () => {
          };
        }
        if (this.#loaded === false) {
          this.load();
        }
        const ev = opts3?.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);
        }
      }
    };
    process17 = 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(process17) ? new SignalExit(process17) : new SignalExitFallback()));
  }
});

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

// ../../../../../setup-pnpm/store/v11/links/@/execa/9.6.1/81823ddd5b1874238e0291383831d88650d115554885d6b58836472f7ff5c031/node_modules/execa/lib/pipe/pipe-arguments.js
var normalizePipeArguments, getDestinationStream, getDestination, mapDestinationArguments, getSourceStream;
var init_pipe_arguments = __esm({
  "../../../../../setup-pnpm/store/v11/links/@/execa/9.6.1/81823ddd5b1874238e0291383831d88650d115554885d6b58836472f7ff5c031/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 };
      }
    };
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/execa/9.6.1/81823ddd5b1874238e0291383831d88650d115554885d6b58836472f7ff5c031/node_modules/execa/lib/pipe/throw.js
var handlePipeArgumentsError, getPipeArgumentsError, createNonCommandError, PIPE_COMMAND_MESSAGE;
var init_throw = __esm({
  "../../../../../setup-pnpm/store/v11/links/@/execa/9.6.1/81823ddd5b1874238e0291383831d88650d115554885d6b58836472f7ff5c031/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)";
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/execa/9.6.1/81823ddd5b1874238e0291383831d88650d115554885d6b58836472f7ff5c031/node_modules/execa/lib/pipe/sequence.js
var waitForBothSubprocesses;
var init_sequence2 = __esm({
  "../../../../../setup-pnpm/store/v11/links/@/execa/9.6.1/81823ddd5b1874238e0291383831d88650d115554885d6b58836472f7ff5c031/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;
    };
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/execa/9.6.1/81823ddd5b1874238e0291383831d88650d115554885d6b58836472f7ff5c031/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({
  "../../../../../setup-pnpm/store/v11/links/@/execa/9.6.1/81823ddd5b1874238e0291383831d88650d115554885d6b58836472f7ff5c031/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;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/execa/9.6.1/81823ddd5b1874238e0291383831d88650d115554885d6b58836472f7ff5c031/node_modules/execa/lib/pipe/abort.js
import { aborted } from "node:util";
var unpipeOnAbort, unpipeOnSignalAbort;
var init_abort = __esm({
  "../../../../../setup-pnpm/store/v11/links/@/execa/9.6.1/81823ddd5b1874238e0291383831d88650d115554885d6b58836472f7ff5c031/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
      });
    };
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/execa/9.6.1/81823ddd5b1874238e0291383831d88650d115554885d6b58836472f7ff5c031/node_modules/execa/lib/pipe/setup.js
var pipeToSubprocess, handlePipePromise, getSubprocessPromises;
var init_setup = __esm({
  "../../../../../setup-pnpm/store/v11/links/@/execa/9.6.1/81823ddd5b1874238e0291383831d88650d115554885d6b58836472f7ff5c031/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]);
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/execa/9.6.1/81823ddd5b1874238e0291383831d88650d115554885d6b58836472f7ff5c031/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({
  "../../../../../setup-pnpm/store/v11/links/@/execa/9.6.1/81823ddd5b1874238e0291383831d88650d115554885d6b58836472f7ff5c031/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);
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/execa/9.6.1/81823ddd5b1874238e0291383831d88650d115554885d6b58836472f7ff5c031/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({
  "../../../../../setup-pnpm/store/v11/links/@/execa/9.6.1/81823ddd5b1874238e0291383831d88650d115554885d6b58836472f7ff5c031/node_modules/execa/lib/io/contents.js"() {
    init_source2();
    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;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/execa/9.6.1/81823ddd5b1874238e0291383831d88650d115554885d6b58836472f7ff5c031/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({
  "../../../../../setup-pnpm/store/v11/links/@/execa/9.6.1/81823ddd5b1874238e0291383831d88650d115554885d6b58836472f7ff5c031/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";
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/execa/9.6.1/81823ddd5b1874238e0291383831d88650d115554885d6b58836472f7ff5c031/node_modules/execa/lib/resolve/stdio.js
var waitForStdioStreams, waitForSubprocessStream;
var init_stdio = __esm({
  "../../../../../setup-pnpm/store/v11/links/@/execa/9.6.1/81823ddd5b1874238e0291383831d88650d115554885d6b58836472f7ff5c031/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;
    };
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/execa/9.6.1/81823ddd5b1874238e0291383831d88650d115554885d6b58836472f7ff5c031/node_modules/execa/lib/resolve/all-async.js
var makeAllStream, waitForAllStream, getAllStream, getAllMixed;
var init_all_async = __esm({
  "../../../../../setup-pnpm/store/v11/links/@/execa/9.6.1/81823ddd5b1874238e0291383831d88650d115554885d6b58836472f7ff5c031/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;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/execa/9.6.1/81823ddd5b1874238e0291383831d88650d115554885d6b58836472f7ff5c031/node_modules/execa/lib/verbose/ipc.js
var shouldLogIpc, logIpcOutput;
var init_ipc = __esm({
  "../../../../../setup-pnpm/store/v11/links/@/execa/9.6.1/81823ddd5b1874238e0291383831d88650d115554885d6b58836472f7ff5c031/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
      });
    };
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/execa/9.6.1/81823ddd5b1874238e0291383831d88650d115554885d6b58836472f7ff5c031/node_modules/execa/lib/ipc/buffer-messages.js
var waitForIpcOutput, getBufferedIpcOutput;
var init_buffer_messages = __esm({
  "../../../../../setup-pnpm/store/v11/links/@/execa/9.6.1/81823ddd5b1874238e0291383831d88650d115554885d6b58836472f7ff5c031/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;
    };
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/execa/9.6.1/81823ddd5b1874238e0291383831d88650d115554885d6b58836472f7ff5c031/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({
  "../../../../../setup-pnpm/store/v11/links/@/execa/9.6.1/81823ddd5b1874238e0291383831d88650d115554885d6b58836472f7ff5c031/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;
    };
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/execa/9.6.1/81823ddd5b1874238e0291383831d88650d115554885d6b58836472f7ff5c031/node_modules/execa/lib/convert/concurrent.js
var initializeConcurrentStreams, addConcurrentStream, waitForConcurrentStreams;
var init_concurrent = __esm({
  "../../../../../setup-pnpm/store/v11/links/@/execa/9.6.1/81823ddd5b1874238e0291383831d88650d115554885d6b58836472f7ff5c031/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 resolve4 = promise2.resolve.bind(promise2);
      return { resolve: resolve4, promises };
    };
    waitForConcurrentStreams = async ({ resolve: resolve4, promises }, subprocess) => {
      resolve4();
      const [isSubprocessExit] = await Promise.race([
        Promise.allSettled([true, subprocess]),
        Promise.all([false, ...promises])
      ]);
      return !isSubprocessExit;
    };
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/execa/9.6.1/81823ddd5b1874238e0291383831d88650d115554885d6b58836472f7ff5c031/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({
  "../../../../../setup-pnpm/store/v11/links/@/execa/9.6.1/81823ddd5b1874238e0291383831d88650d115554885d6b58836472f7ff5c031/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();
      }
    };
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/execa/9.6.1/81823ddd5b1874238e0291383831d88650d115554885d6b58836472f7ff5c031/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({
  "../../../../../setup-pnpm/store/v11/links/@/execa/9.6.1/81823ddd5b1874238e0291383831d88650d115554885d6b58836472f7ff5c031/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);
    };
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/execa/9.6.1/81823ddd5b1874238e0291383831d88650d115554885d6b58836472f7ff5c031/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({
  "../../../../../setup-pnpm/store/v11/links/@/execa/9.6.1/81823ddd5b1874238e0291383831d88650d115554885d6b58836472f7ff5c031/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);
    };
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/execa/9.6.1/81823ddd5b1874238e0291383831d88650d115554885d6b58836472f7ff5c031/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({
  "../../../../../setup-pnpm/store/v11/links/@/execa/9.6.1/81823ddd5b1874238e0291383831d88650d115554885d6b58836472f7ff5c031/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)
      ]);
    };
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/execa/9.6.1/81823ddd5b1874238e0291383831d88650d115554885d6b58836472f7ff5c031/node_modules/execa/lib/convert/iterable.js
var createIterable, iterateOnStdoutData;
var init_iterable = __esm({
  "../../../../../setup-pnpm/store/v11/links/@/execa/9.6.1/81823ddd5b1874238e0291383831d88650d115554885d6b58836472f7ff5c031/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;
      }
    };
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/execa/9.6.1/81823ddd5b1874238e0291383831d88650d115554885d6b58836472f7ff5c031/node_modules/execa/lib/convert/add.js
var addConvertedStreams;
var init_add2 = __esm({
  "../../../../../setup-pnpm/store/v11/links/@/execa/9.6.1/81823ddd5b1874238e0291383831d88650d115554885d6b58836472f7ff5c031/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, {});
    };
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/execa/9.6.1/81823ddd5b1874238e0291383831d88650d115554885d6b58836472f7ff5c031/node_modules/execa/lib/methods/promise.js
var mergePromise, nativePromisePrototype, descriptors;
var init_promise = __esm({
  "../../../../../setup-pnpm/store/v11/links/@/execa/9.6.1/81823ddd5b1874238e0291383831d88650d115554885d6b58836472f7ff5c031/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)
    ]);
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/execa/9.6.1/81823ddd5b1874238e0291383831d88650d115554885d6b58836472f7ff5c031/node_modules/execa/lib/methods/main-async.js
import { setMaxListeners } from "node:events";
import { spawn as spawn4 } from "node:child_process";
var execaCoreAsync, handleAsyncArguments, handleAsyncOptions, spawnSubprocessAsync, handlePromise, getAsyncResult;
var init_main_async = __esm({
  "../../../../../setup-pnpm/store/v11/links/@/execa/9.6.1/81823ddd5b1874238e0291383831d88650d115554885d6b58836472f7ff5c031/node_modules/execa/lib/methods/main-async.js"() {
    init_source2();
    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 = spawn4(...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
    });
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/execa/9.6.1/81823ddd5b1874238e0291383831d88650d115554885d6b58836472f7ff5c031/node_modules/execa/lib/methods/bind.js
var mergeOptions, mergeOption, DEEP_OPTIONS;
var init_bind2 = __esm({
  "../../../../../setup-pnpm/store/v11/links/@/execa/9.6.1/81823ddd5b1874238e0291383831d88650d115554885d6b58836472f7ff5c031/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]);
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/execa/9.6.1/81823ddd5b1874238e0291383831d88650d115554885d6b58836472f7ff5c031/node_modules/execa/lib/methods/create.js
var createExeca, callBoundExeca, parseArguments;
var init_create = __esm({
  "../../../../../setup-pnpm/store/v11/links/@/execa/9.6.1/81823ddd5b1874238e0291383831d88650d115554885d6b58836472f7ff5c031/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
      };
    };
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/execa/9.6.1/81823ddd5b1874238e0291383831d88650d115554885d6b58836472f7ff5c031/node_modules/execa/lib/methods/command.js
var mapCommandAsync, mapCommandSync, parseCommand, parseCommandString, SPACES_REGEXP;
var init_command2 = __esm({
  "../../../../../setup-pnpm/store/v11/links/@/execa/9.6.1/81823ddd5b1874238e0291383831d88650d115554885d6b58836472f7ff5c031/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;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/execa/9.6.1/81823ddd5b1874238e0291383831d88650d115554885d6b58836472f7ff5c031/node_modules/execa/lib/methods/script.js
var setScriptSync, mapScriptAsync, mapScriptSync, getScriptOptions, getScriptStdinOption, deepScriptOptions;
var init_script = __esm({
  "../../../../../setup-pnpm/store/v11/links/@/execa/9.6.1/81823ddd5b1874238e0291383831d88650d115554885d6b58836472f7ff5c031/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 };
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/execa/9.6.1/81823ddd5b1874238e0291383831d88650d115554885d6b58836472f7ff5c031/node_modules/execa/index.js
var execa, execaSync, execaCommand, execaCommandSync, execaNode, $, sendMessage2, getOneMessage2, getEachMessage2, getCancelSignal2;
var init_execa = __esm({
  "../../../../../setup-pnpm/store/v11/links/@/execa/9.6.1/81823ddd5b1874238e0291383831d88650d115554885d6b58836472f7ff5c031/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());
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/path-name/1.0.0/8064eef559e4026b8969ba496c1276b43d2356039af88d81b063131dadece14f/node_modules/path-name/index.js
var require_path_name = __commonJS({
  "../../../../../setup-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;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/safe-execa/0.3.0/6ee6d8551234ee0ef8bb4688a4c2deef4927d454574b6f5a4970a748033aa2f2/node_modules/safe-execa/lib/index.js
import { fileURLToPath as fileURLToPath5 } from "node:url";
function cwdToString(cwd) {
  if (cwd == null)
    return process.cwd();
  if (cwd instanceof URL)
    return fileURLToPath5(cwd);
  return cwd;
}
function sync2(file, args, options) {
  const normalizedArgs = args ? [...args] : [];
  try {
    import_which2.default.sync(file, { path: cwdToString(options?.cwd) });
  } catch (err2) {
    if (err2.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 path240 = options?.env?.[import_path_name.default] ?? process.env[import_path_name.default];
  const key = JSON.stringify([path240, file]);
  let fileAbsolutePath = pathCache.get(key);
  if (fileAbsolutePath == null) {
    fileAbsolutePath = import_which2.default.sync(file, { path: path240 });
    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_which2.default.sync(file, { path: cwdToString(options?.cwd) });
  } catch (err2) {
    if (err2.code === "ENOENT") {
      return execa(file, normalizedArgs, options);
    }
  }
  const fileAbsolutePath = getCommandAbsolutePathSync(file, options);
  return execa(fileAbsolutePath, normalizedArgs, options);
}
var import_which2, import_path_name, pathCache;
var init_lib25 = __esm({
  "../../../../../setup-pnpm/store/v11/links/@/safe-execa/0.3.0/6ee6d8551234ee0ef8bb4688a4c2deef4927d454574b6f5a4970a748033aa2f2/node_modules/safe-execa/lib/index.js"() {
    import_which2 = __toESM(require_which2(), 1);
    init_execa();
    import_path_name = __toESM(require_path_name(), 1);
    pathCache = /* @__PURE__ */ new Map();
  }
});

// ../../../../../setup-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({
  "../../../../../setup-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 });
    };
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/memoize/11.0.0/1da59602ab45e19a3ba2c86ed324b17bdd4d6b8ab4664663e3c8557861e28a28/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 validateMaxAge(value, source) {
  if (value === Number.POSITIVE_INFINITY) {
    return;
  }
  if (!Number.isFinite(value)) {
    if (source === "`maxAge` option") {
      throw new TypeError("The `maxAge` option must be a finite number, `0`, or `Infinity`.");
    }
    throw new TypeError("The `maxAge` function must return a finite number, `0`, or `Infinity`.");
  }
  if (value > maxTimeoutValue) {
    if (source === "`maxAge` option") {
      throw new TypeError(`The \`maxAge\` option cannot exceed ${maxTimeoutValue}.`);
    }
    throw new TypeError(`The \`maxAge\` function result cannot exceed ${maxTimeoutValue}.`);
  }
}
function memoize(function_, { cacheKey, cache = /* @__PURE__ */ new Map(), maxAge } = {}) {
  if (typeof maxAge === "number") {
    validateMaxAge(maxAge, "`maxAge` option");
    if (maxAge <= 0) {
      return function_;
    }
  }
  const memoized2 = 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) {
      validateMaxAge(computedMaxAge, "`maxAge` function result");
      if (computedMaxAge <= 0) {
        return result2;
      }
    }
    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(memoized2)?.delete(timer);
      }, computedMaxAge);
      timer.unref?.();
      const timers = cacheTimerStore.get(memoized2) ?? /* @__PURE__ */ new Set();
      timers.add(timer);
      cacheTimerStore.set(memoized2, timers);
    }
    return result2;
  };
  mimicFunction(memoized2, function_, {
    ignoreNonConfigurable: true
  });
  cacheStore.set(memoized2, cache);
  cacheKeyStore.set(memoized2, cacheKey ?? ((arguments_) => arguments_[0]));
  return memoized2;
}
var maxTimeoutValue, cacheStore, cacheTimerStore, cacheKeyStore;
var init_distribution = __esm({
  "../../../../../setup-pnpm/store/v11/links/@/memoize/11.0.0/1da59602ab45e19a3ba2c86ed324b17bdd4d6b8ab4664663e3c8557861e28a28/node_modules/memoize/distribution/index.js"() {
    init_mimic_function();
    maxTimeoutValue = 2147483647;
    cacheStore = /* @__PURE__ */ new WeakMap();
    cacheTimerStore = /* @__PURE__ */ new WeakMap();
    cacheKeyStore = /* @__PURE__ */ new WeakMap();
  }
});

// ../engine/runtime/system-version/lib/index.js
function getSystemNodeVersionNonCached() {
  if (detectIfCurrentPkgIsExecutable()) {
    try {
      return sync2("node", ["--version"]).stdout?.toString();
    } catch {
      return void 0;
    }
  }
  return process.version;
}
function getSystemDenoVersionNonCached() {
  try {
    const output = sync2("deno", ["--version"]).stdout?.toString() ?? "";
    const match = /^deno\s+(\d+\.\d+\.\d\S*)/m.exec(output);
    return match?.[1] ? `v${match[1]}` : void 0;
  } catch {
    return void 0;
  }
}
function getSystemBunVersionNonCached() {
  try {
    const output = sync2("bun", ["--version"]).stdout?.toString().trim() ?? "";
    return /^\d+\.\d+\.\d+/.test(output) ? `v${output}` : void 0;
  } catch {
    return void 0;
  }
}
function getSystemRuntimeVersion(name) {
  switch (name) {
    case "node":
      return getSystemNodeVersion();
    case "deno":
      return getSystemDenoVersion();
    case "bun":
      return getSystemBunVersion();
  }
}
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, getSystemDenoVersion, getSystemBunVersion;
var init_lib26 = __esm({
  "../engine/runtime/system-version/lib/index.js"() {
    "use strict";
    init_lib24();
    init_lib25();
    init_distribution();
    getSystemNodeVersion = memoize(getSystemNodeVersionNonCached);
    getSystemDenoVersion = memoize(getSystemDenoVersionNonCached);
    getSystemBunVersion = memoize(getSystemBunVersionNonCached);
  }
});

// ../../../../../setup-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({
  "../../../../../setup-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 i4 = 0; i4 < matchArr.length; i4++) {
    if (matchArr[i4].match(input))
      return i4;
  }
  return -1;
}
function matchInputWithoutIgnoreMatchers(matchArr, input) {
  return matchArr.some(({ match }) => match(input)) ? -1 : 0;
}
function matchInputWithMatchersArray(matchArr, input) {
  let matchedPatternIndex = -1;
  for (let i4 = 0; i4 < matchArr.length; i4++) {
    const { ignore: ignore2, match } = matchArr[i4];
    if (ignore2) {
      if (match(input)) {
        matchedPatternIndex = -1;
      }
    } else if (matchedPatternIndex === -1 && match(input)) {
      matchedPatternIndex = i4;
    }
  }
  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_lib27 = __esm({
  "../config/matcher/lib/index.js"() {
    "use strict";
    init_escape_string_regexp();
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/builtins/5.1.0/19698c4999d39315a49e70523c9b25eca2aab51f9a8d69ef31a15b7a1846c0b7/node_modules/builtins/index.js
var require_builtins2 = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/builtins/5.1.0/19698c4999d39315a49e70523c9b25eca2aab51f9a8d69ef31a15b7a1846c0b7/node_modules/builtins/index.js"(exports2, module2) {
    "use strict";
    var satisfies4 = 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 === "*" || satisfies4(version2, semverRange)) {
          builtins.push(name);
        }
      }
      if (experimental) {
        for (const [name, semverRange] of Object.entries(experimentalModules)) {
          if (!builtins.includes(name) && (version2 === "*" || satisfies4(version2, semverRange))) {
            builtins.push(name);
          }
        }
      }
      return builtins;
    };
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/validate-npm-package-name/4.0.0/4a57dcdc5c052e4194d35c9e71846474b4d74f717adf1951007772bf46ec248e/node_modules/validate-npm-package-name/lib/index.js
var require_lib17 = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/validate-npm-package-name/4.0.0/4a57dcdc5c052e4194d35c9e71846474b4d74f717adf1951007772bf46ec248e/node_modules/validate-npm-package-name/lib/index.js"(exports2, module2) {
    "use strict";
    var scopedPackagePattern = new RegExp("^(?:@([^/]+?)[/])?([^/]+?)$");
    var builtins = require_builtins2();
    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;
  }
});

// ../../../../../setup-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({
  "../../../../../setup-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: path240, fragment, hashformat }) => `https://${domain}/${user}/${project}/${treepath}/${maybeEncode(committish || "master")}/${path240}${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: path240 }) => `https://${domain}/${user}/${project}/raw/${maybeEncode(committish) || "master"}/${path240}`,
      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: path240 }) => `https://${maybeJoin(auth, "@")}raw.githubusercontent.com/${user}/${project}/${maybeEncode(committish) || "master"}/${path240}`,
      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 path240 = url7.pathname.slice(1);
        if (path240.includes("/-/") || path240.includes("/archive.tar.gz")) {
          return;
        }
        const segments = path240.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: path240, hashformat }) => `https://${domain}/${project}${maybeJoin("/", maybeEncode(committish))}${maybeJoin("#", hashformat(path240))}`,
      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: path240 }) => `https://gist.githubusercontent.com/${user}/${project}/raw${maybeJoin("/", maybeEncode(committish))}/${path240}`,
      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: path240, fragment, hashformat }) => `https://${domain}/${user}/${project}/${treepath}/${maybeEncode(committish || "main")}/${path240}${maybeJoin("#", hashformat(fragment || ""))}`,
      filetemplate: ({ domain, user, project, committish, path: path240 }) => `https://${domain}/${user}/${project}/blob/${maybeEncode(committish) || "main"}/${path240}`,
      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;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/hosted-git-info/4.1.0/d75ff6f715126d6125e4a0d691d9cf9fe3463d2fcdb09dafe6a9cea50729a022/node_modules/hosted-git-info/git-host.js
var require_git_host = __commonJS({
  "../../../../../setup-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, opts3 = {}) {
        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 = opts3;
      }
      hash() {
        return this.committish ? `#${this.committish}` : "";
      }
      ssh(opts3) {
        return this._fill(this.sshtemplate, opts3);
      }
      _fill(template, opts3) {
        if (typeof template === "function") {
          const options = { ...this, ...this.opts, ...opts3 };
          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(opts3) {
        return this._fill(this.sshurltemplate, opts3);
      }
      browse(path240, fragment, opts3) {
        if (typeof path240 !== "string") {
          return this._fill(this.browsetemplate, path240);
        }
        if (typeof fragment !== "string") {
          opts3 = fragment;
          fragment = null;
        }
        return this._fill(this.browsefiletemplate, { ...opts3, fragment, path: path240 });
      }
      docs(opts3) {
        return this._fill(this.docstemplate, opts3);
      }
      bugs(opts3) {
        return this._fill(this.bugstemplate, opts3);
      }
      https(opts3) {
        return this._fill(this.httpstemplate, opts3);
      }
      git(opts3) {
        return this._fill(this.gittemplate, opts3);
      }
      shortcut(opts3) {
        return this._fill(this.shortcuttemplate, opts3);
      }
      path(opts3) {
        return this._fill(this.pathtemplate, opts3);
      }
      tarball(opts3) {
        return this._fill(this.tarballtemplate, { ...opts3, noCommittish: false });
      }
      file(path240, opts3) {
        return this._fill(this.filetemplate, { ...opts3, path: path240 });
      }
      getDefaultRepresentation() {
        return this.default;
      }
      toString(opts3) {
        if (this.default && typeof this[this.default] === "function") {
          return this[this.default](opts3);
        }
        return this.sshurl(opts3);
      }
    };
    module2.exports = GitHost;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/yallist/4.0.0/2925a1deaaee7314c617d3720c6c4c168635530837cce30cdfbb63c68c9edb56/node_modules/yallist/iterator.js
var require_iterator = __commonJS({
  "../../../../../setup-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;
        }
      };
    };
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/yallist/4.0.0/2925a1deaaee7314c617d3720c6c4c168635530837cce30cdfbb63c68c9edb56/node_modules/yallist/yallist.js
var require_yallist = __commonJS({
  "../../../../../setup-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 i4 = 0, l = arguments.length; i4 < l; i4++) {
          self2.push(arguments[i4]);
        }
      }
      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 i4 = 0, l = arguments.length; i4 < l; i4++) {
        push(this, arguments[i4]);
      }
      return this.length;
    };
    Yallist.prototype.unshift = function() {
      for (var i4 = 0, l = arguments.length; i4 < l; i4++) {
        unshift(this, arguments[i4]);
      }
      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, i4 = 0; walker !== null; i4++) {
        fn.call(thisp, walker.value, i4, this);
        walker = walker.next;
      }
    };
    Yallist.prototype.forEachReverse = function(fn, thisp) {
      thisp = thisp || this;
      for (var walker = this.tail, i4 = this.length - 1; walker !== null; i4--) {
        fn.call(thisp, walker.value, i4, this);
        walker = walker.prev;
      }
    };
    Yallist.prototype.get = function(n2) {
      for (var i4 = 0, walker = this.head; walker !== null && i4 < n2; i4++) {
        walker = walker.next;
      }
      if (i4 === n2 && walker !== null) {
        return walker.value;
      }
    };
    Yallist.prototype.getReverse = function(n2) {
      for (var i4 = 0, walker = this.tail; walker !== null && i4 < n2; i4++) {
        walker = walker.prev;
      }
      if (i4 === 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 i4 = 0; walker !== null; i4++) {
        acc = fn(acc, walker.value, i4);
        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 i4 = this.length - 1; walker !== null; i4--) {
        acc = fn(acc, walker.value, i4);
        walker = walker.prev;
      }
      return acc;
    };
    Yallist.prototype.toArray = function() {
      var arr = new Array(this.length);
      for (var i4 = 0, walker = this.head; walker !== null; i4++) {
        arr[i4] = walker.value;
        walker = walker.next;
      }
      return arr;
    };
    Yallist.prototype.toArrayReverse = function() {
      var arr = new Array(this.length);
      for (var i4 = 0, walker = this.tail; walker !== null; i4++) {
        arr[i4] = 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 i4 = 0, walker = this.head; walker !== null && i4 < from5; i4++) {
        walker = walker.next;
      }
      for (; walker !== null && i4 < to; i4++, 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 i4 = this.length, walker = this.tail; walker !== null && i4 > to; i4--) {
        walker = walker.prev;
      }
      for (; walker !== null && i4 > from5; i4--, 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 i4 = 0, walker = this.head; walker !== null && i4 < start; i4++) {
        walker = walker.next;
      }
      var ret2 = [];
      for (var i4 = 0; walker && i4 < deleteCount; i4++) {
        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 i4 = 0; i4 < nodes.length; i4++) {
        walker = insert(this, walker, nodes[i4]);
      }
      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) {
    }
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/lru-cache/6.0.0/7f013971a30022832f3b45094d44d1b3fc42f43ca4df0af4baba7b9f18378928/node_modules/lru-cache/index.js
var require_lru_cache = __commonJS({
  "../../../../../setup-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 max4 = this[MAX] = options.max || Infinity;
        const lc2 = options.length || naiveLength;
        this[LENGTH_CALCULATOR] = typeof lc2 !== "function" ? naiveLength : lc2;
        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 get2(this, key, true);
      }
      peek(key) {
        return get2(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) => get2(this, key, false));
      }
    };
    var get2 = (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 diff2 = Date.now() - hit.now;
      return hit.maxAge ? diff2 > hit.maxAge : self2[MAX_AGE] && diff2 > 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;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/hosted-git-info/4.1.0/d75ff6f715126d6125e4a0d691d9cf9fe3463d2fcdb09dafe6a9cea50729a022/node_modules/hosted-git-info/index.js
var require_hosted_git_info = __commonJS({
  "../../../../../setup-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, opts3) {
      if (typeof giturl !== "string") {
        return;
      }
      const key = giturl + JSON.stringify(opts3 || {});
      if (!cache.has(key)) {
        cache.set(key, fromUrl(giturl, opts3));
      }
      return cache.get(key);
    };
    function fromUrl(giturl, opts3) {
      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 (err2) {
        if (err2 instanceof URIError) {
          return;
        } else {
          throw err2;
        }
      }
      return new GitHost(gitHostName, user, auth, project, committish, defaultRepresentation, opts3);
    }
    var correctProtocol = (arg) => {
      const firstColon = arg.indexOf(":");
      const proto3 = arg.slice(0, firstColon + 1);
      if (knownProtocols.includes(proto3)) {
        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 (err2) {
      }
      if (result2) {
        return result2;
      }
      const correctedUrl = correctUrl2(giturl);
      try {
        result2 = new url7.URL(correctedUrl);
      } catch (err2) {
      }
      return result2;
    };
  }
});

// ../../../../../setup-pnpm/store/v11/links/@pnpm/npm-package-arg/2.0.0/dc1d38f53cd47e7ae70e3693187c183404edd303c138bcdb72c30ac03a6614f6/node_modules/@pnpm/npm-package-arg/npa.js
var require_npa = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@pnpm/npm-package-arg/2.0.0/dc1d38f53cd47e7ae70e3693187c183404edd303c138bcdb72c30ac03a6614f6/node_modules/@pnpm/npm-package-arg/npa.js"(exports2, module2) {
    "use strict";
    module2.exports = npa14;
    module2.exports.resolve = resolve4;
    module2.exports.Result = Result;
    var HostedGit4;
    var semver64;
    var path240;
    var validatePackageName2;
    var os20;
    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 npa14(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 npa14.resolve(arg.name, arg.rawSpec, where || arg.where);
        } else {
          return npa14(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_lib17();
        const valid6 = validatePackageName2(arg);
        if (valid6.validForOldPackages) {
          name = arg;
        } else {
          spec = arg;
        }
      }
      return resolve4(name, spec, where, arg);
    }
    var isFilespec3 = isWindows15 ? /^(?:[.]|~[/]|[/\\]|[a-zA-Z]:)/ : /^(?:[.]|~[/]|[/]|[a-zA-Z]:)/;
    function resolve4(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(npa14(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, valid6) {
      const err2 = new Error(`Invalid package name "${name}": ${valid6.errors.join("; ")}`);
      err2.code = "EINVALIDPACKAGENAME";
      return err2;
    }
    function invalidTagName(name) {
      const err2 = new Error(`Invalid tag name "${name}": Tags may not have any characters that encodeURIComponent encodes.`);
      err2.code = "EINVALIDTAGNAME";
      return err2;
    }
    function Result(opts3) {
      this.type = opts3.type;
      this.registry = opts3.registry;
      this.where = opts3.where;
      if (opts3.raw == null) {
        this.raw = opts3.name ? opts3.name + "@" + opts3.rawSpec : opts3.rawSpec;
      } else {
        this.raw = opts3.raw;
      }
      this.name = void 0;
      this.escapedName = void 0;
      this.scope = void 0;
      this.rawSpec = opts3.rawSpec == null ? "" : opts3.rawSpec;
      this.saveSpec = opts3.saveSpec;
      this.fetchSpec = opts3.fetchSpec;
      if (opts3.name) this.setName(opts3.name);
      this.gitRange = opts3.gitRange;
      this.gitCommittish = opts3.gitCommittish;
      this.hosted = opts3.hosted;
    }
    Result.prototype = {};
    Result.prototype.setName = function(name) {
      if (!validatePackageName2) validatePackageName2 = require_lib17();
      const valid6 = validatePackageName2(name);
      if (!valid6.validForOldPackages) {
        throw invalidPackageName(name, valid6);
      }
      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 resolvePath5(where, spec) {
      if (isAbsolutePath4.test(spec)) return spec;
      if (!path240) path240 = __require("path");
      return path240.resolve(where, spec);
    }
    function isAbsolute4(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 (!os20) os20 = __require("os");
        res.fetchSpec = resolvePath5(os20.homedir(), spec.slice(2));
        res.saveSpec = "file:" + spec;
      } else {
        res.fetchSpec = resolvePath5(where, spec);
        if (isAbsolute4(spec)) {
          res.saveSpec = "file:" + spec;
        } else {
          if (!path240) path240 = __require("path");
          res.saveSpec = "file:" + path240.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 err2 = new Error(`Unsupported URL Type "${protocol}": ${spec}`);
      err2.code = "EUNSUPPORTEDPROTOCOL";
      return err2;
    }
    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 (!semver64) semver64 = require_semver2();
      const version2 = semver64.valid(spec, true);
      const range = semver64.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_lib28 = __esm({
  "../config/pick-registry-for-package/lib/index.js"() {
    "use strict";
  }
});

// ../resolving/resolver-base/lib/index.js
function isGitHostedTarballUrl(url7) {
  if (typeof url7 !== "string")
    return false;
  let parsedUrl;
  try {
    parsedUrl = new URL(url7);
  } catch {
    return false;
  }
  if (parsedUrl.protocol !== "https:")
    return false;
  switch (parsedUrl.hostname.toLowerCase()) {
    case "codeload.github.com":
      return isGitHubCodeloadArchive(parsedUrl);
    case "bitbucket.org":
      return isBitbucketArchive(parsedUrl);
    case "gitlab.com":
      return isGitLabArchive(parsedUrl);
    default:
      return false;
  }
}
function isGitHubCodeloadArchive(url7) {
  const segments = getPathSegments(url7);
  return segments.length === 4 && segments[2] === "tar.gz" && GIT_COMMIT_SHA.test(segments[3]);
}
function isBitbucketArchive(url7) {
  const segments = getPathSegments(url7);
  if (segments.length !== 4 || segments[2] !== "get" || !segments[3].endsWith(".tar.gz"))
    return false;
  return GIT_COMMIT_SHA.test(segments[3].slice(0, -".tar.gz".length));
}
function isGitLabArchive(url7) {
  const segments = getPathSegments(url7);
  if (segments.length === 6 && segments[0] === "api" && segments[1] === "v4" && segments[2] === "projects" && segments[4] === "repository" && segments[5] === "archive.tar.gz") {
    return GIT_COMMIT_SHA.test(url7.searchParams.get("ref") ?? "");
  }
  const archiveMarkerIndex = segments.findIndex((segment, index2) => segment === "-" && segments[index2 + 1] === "archive");
  if (archiveMarkerIndex < 2)
    return false;
  const ref = segments[archiveMarkerIndex + 2];
  const archiveName = segments[archiveMarkerIndex + 3];
  return segments.length === archiveMarkerIndex + 4 && archiveName?.endsWith(".tar.gz") === true && GIT_COMMIT_SHA.test(ref);
}
function getPathSegments(url7) {
  return url7.pathname.split("/").filter(Boolean);
}
function classifyResolution(resolution) {
  if (resolution.type == null) {
    const tarball = typeof resolution.tarball === "string" ? resolution.tarball : void 0;
    if (tarball?.startsWith("file:"))
      return "localTarball";
    if (tarball != null && isGitHostedTarballUrl(tarball)) {
      return "gitHostedTarball";
    }
    return "remoteTarball";
  }
  switch (resolution.type) {
    case "directory":
    case "git":
    case "binary":
      return resolution.type;
    default:
      return "custom";
  }
}
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 GIT_COMMIT_SHA, DIRECT_DEP_SELECTOR_WEIGHT, EXISTING_VERSION_SELECTOR_WEIGHT;
var init_lib29 = __esm({
  "../resolving/resolver-base/lib/index.js"() {
    "use strict";
    GIT_COMMIT_SHA = /^[0-9a-f]{40}$/i;
    DIRECT_DEP_SELECTOR_WEIGHT = 1e3;
    EXISTING_VERSION_SELECTOR_WEIGHT = 1e6;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/msgpackr/2.0.4/4846a2ae9cbdea249e2eda7b79740c6d2b16af4f09769fa313dd4f4064702820/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._readStruct && src[position] < 64 && src[position] >= 32) {
      result2 = currentUnpackr._readStruct(src, position, srcEnd);
      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 i4 = 0; i4 < token; i4++) {
          let key = readKey();
          if (key === "__proto__")
            key = "__proto_";
          object[key] = read();
        }
        return object;
      } else {
        let map26 = /* @__PURE__ */ new Map();
        for (let i4 = 0; i4 < token; i4++) {
          map26.set(read(), read());
        }
        return map26;
      }
    } else {
      token -= 144;
      let array = new Array(token);
      for (let i4 = 0; i4 < token; i4++) {
        array[i4] = 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 optimizedReadObject;
      try {
        optimizedReadObject = 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);
      } catch (error) {
        inlineObjectReadThreshold = Infinity;
        return readObject();
      }
      structure.read0 = optimizedReadObject;
      if (structure.highByte === 0)
        structure.read = createSecondByteReader(firstId, structure.read);
      return optimizedReadObject();
    }
    let object = {};
    for (let i4 = 0, l = structure.length; i4 < l; i4++) {
      let key = structure[i4];
      if (key === "__proto__")
        key = "__proto_";
      object[key] = read();
    }
    if (currentUnpackr.freezeData)
      return Object.freeze(object);
    return object;
  }
  readObject.count = 0;
  structure.read0 = readObject;
  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 = readString(1);
  readString8 = readString(2);
  readString16 = readString(3);
  readString32 = readString(5);
  function readString(headerLength) {
    return function readString2(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;
      const codePoint = (byte1 & 31) << 6 | byte2;
      if (codePoint < 128) {
        units.push(65533);
      } else {
        units.push(codePoint);
      }
    } else if ((byte1 & 240) === 224) {
      const byte2 = src[position++] & 63;
      const byte3 = src[position++] & 63;
      const codePoint = (byte1 & 31) << 12 | byte2 << 6 | byte3;
      if (codePoint < 2048 || codePoint >= 55296 && codePoint <= 57343) {
        units.push(65533);
      } else {
        units.push(codePoint);
      }
    } 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 < 65536 || unit > 1114111) {
        units.push(65533);
      } else if (unit > 65535) {
        unit -= 65536;
        units.push(unit >>> 10 & 1023 | 55296);
        unit = 56320 | unit & 1023;
        units.push(unit);
      } else {
        units.push(unit);
      }
    } else {
      units.push(65533);
    }
    if (units.length >= 4096) {
      result2 += fromCharCode.apply(String, units);
      units.length = 0;
    }
  }
  if (units.length > 0) {
    result2 += fromCharCode.apply(String, units);
  }
  return result2;
}
function readArray(length) {
  let array = new Array(length);
  for (let i4 = 0; i4 < length; i4++) {
    array[i4] = read();
  }
  if (currentUnpackr.freezeData)
    return Object.freeze(array);
  return array;
}
function readMap(length) {
  if (currentUnpackr.mapsAsObjects) {
    let object = {};
    for (let i4 = 0; i4 < length; i4++) {
      let key = readKey();
      if (key === "__proto__")
        key = "__proto_";
      object[key] = read();
    }
    return object;
  } else {
    let map26 = /* @__PURE__ */ new Map();
    for (let i4 = 0; i4 < length; i4++) {
      map26.set(read(), read());
    }
    return map26;
  }
}
function longStringInJS(length) {
  let start = position;
  let bytes = new Array(length);
  for (let i4 = 0; i4 < length; i4++) {
    const byte = src[position++];
    if ((byte & 128) > 0) {
      position = start;
      return;
    }
    bytes[i4] = 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 d3 = src[position++];
    if ((a2 & 128) > 0 || (b & 128) > 0 || (c3 & 128) > 0 || (d3 & 128) > 0) {
      position -= 4;
      return;
    }
    if (length < 6) {
      if (length === 4)
        return fromCharCode(a2, b, c3, d3);
      else {
        let e = src[position++];
        if ((e & 128) > 0) {
          position -= 5;
          return;
        }
        return fromCharCode(a2, b, c3, d3, 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, d3, e, f);
      let g = src[position++];
      if ((g & 128) > 0) {
        position -= 7;
        return;
      }
      return fromCharCode(a2, b, c3, d3, 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, d3, e, f, g, h2);
        else {
          let i4 = src[position++];
          if ((i4 & 128) > 0) {
            position -= 9;
            return;
          }
          return fromCharCode(a2, b, c3, d3, e, f, g, h2, i4);
        }
      } else if (length < 12) {
        let i4 = src[position++];
        let j2 = src[position++];
        if ((i4 & 128) > 0 || (j2 & 128) > 0) {
          position -= 10;
          return;
        }
        if (length < 11)
          return fromCharCode(a2, b, c3, d3, e, f, g, h2, i4, j2);
        let k2 = src[position++];
        if ((k2 & 128) > 0) {
          position -= 11;
          return;
        }
        return fromCharCode(a2, b, c3, d3, e, f, g, h2, i4, j2, k2);
      } else {
        let i4 = src[position++];
        let j2 = src[position++];
        let k2 = src[position++];
        let l = src[position++];
        if ((i4 & 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, d3, e, f, g, h2, i4, j2, k2, l);
          else {
            let m = src[position++];
            if ((m & 128) > 0) {
              position -= 13;
              return;
            }
            return fromCharCode(a2, b, c3, d3, e, f, g, h2, i4, 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, d3, e, f, g, h2, i4, j2, k2, l, m, n2);
          let o2 = src[position++];
          if ((o2 & 128) > 0) {
            position -= 15;
            return;
          }
          return fromCharCode(a2, b, c3, d3, e, f, g, h2, i4, 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 i4 = 0;
  if (entry && entry.bytes == length) {
    while (checkPosition < end) {
      chunk = dataView.getUint32(checkPosition);
      if (chunk != entry[i4++]) {
        checkPosition = 1879048192;
        break;
      }
      checkPosition += 4;
    }
    end += 3;
    while (checkPosition < end) {
      chunk = src[checkPosition++];
      if (chunk != entry[i4++]) {
        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 (currentUnpackr && currentUnpackr._onSaveState)
    currentUnpackr._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;
}
var decoder, src, srcEnd, position, EMPTY_ARRAY, strings, stringPosition, currentUnpackr, currentStructures, srcString, srcStringStart, srcStringEnd, bundledStrings, referenceMap, currentExtensions, dataView, defaultOptions2, C1Type, C1, sequentialMode, inlineObjectReadThreshold, 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({
  "../../../../../setup-pnpm/store/v11/links/@/msgpackr/2.0.4/4846a2ae9cbdea249e2eda7b79740c6d2b16af4f09769fa313dd4f4064702820/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 = [];
    defaultOptions2 = {
      useRecords: false,
      mapsAsObjects: true
    };
    C1Type = class {
    };
    C1 = new C1Type();
    C1.name = "MessagePack 0xC1";
    sequentialMode = false;
    inlineObjectReadThreshold = 2;
    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(defaultOptions2, 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 = defaultOptions2;
          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 (this._onLoadedStructures)
          loadedStructures = this._onLoadedStructures(loadedStructures);
        loadedStructures = loadedStructures || [];
        if (Object.isFrozen(loadedStructures))
          loadedStructures = loadedStructures.map((structure) => structure.slice(0));
        for (let i4 = 0, l = loadedStructures.length; i4 < l; i4++) {
          let structure = loadedStructures[i4];
          if (structure) {
            structure.isShared = true;
            if (i4 >= 32)
              structure.highByte = i4 - 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.read0 || 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 i4 = 1; i4 < headLength; i4++) {
        head2 <<= BigInt(8);
        head2 += BigInt(data[i4]);
      }
      if (data.byteLength !== headLength) {
        let view = new DataView(data.buffer, data.byteOffset, data.byteLength);
        let decode3 = (start, end) => {
          let length = end - start;
          if (length <= 40) {
            let out = view.getBigUint64(start);
            for (let i4 = start + 8; i4 < end; i4 += 8) {
              out <<= BigInt(64);
              out |= view.getBigUint64(i4);
            }
            return out;
          }
          let middle = start + (length >> 4 << 3);
          let left = decode3(start, middle);
          let right = decode3(middle, end);
          return left << BigInt((end - middle) * 8) | right;
        };
        head2 = head2 << BigInt((view.byteLength - headLength) * 8) | decode3(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 i4 of Array.from(targetProperties)) target2.add(i4);
      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 i4 = 0; i4 < 256; i4++) {
      mult10[i4] = +("1e" + Math.floor(45.15 - i4 * 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);
    Unpackr.SUPPORTS_STRUCT_HOOKS = true;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/msgpackr/2.0.4/4846a2ae9cbdea249e2eda7b79740c6d2b16af4f09769fa313dd4f4064702820/node_modules/msgpackr/pack.js
function writeExtBuffer(typedArray, type4, allocateForWrite, encode3) {
  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, pack3, incrementPosition) {
  if (bundledStrings2.length > 0) {
    targetView.setUint32(bundledStrings2.position + start, position2 + incrementPosition - bundledStrings2.position - start);
    bundledStrings2.stringsPosition = position2 - start;
    let writeStrings = bundledStrings2;
    bundledStrings2 = null;
    pack3(writeStrings[0]);
    pack3(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;
}
var textEncoder3, extensions, extensionClasses, hasNodeBuffer, ByteArrayAllocate, ByteArray, MAX_BUFFER_SIZE, target, keysTarget, targetView, position2, safeEnd, bundledStrings2, 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({
  "../../../../../setup-pnpm/store/v11/links/@/msgpackr/2.0.4/4846a2ae9cbdea249e2eda7b79740c6d2b16af4f09769fa313dd4f4064702820/node_modules/msgpackr/pack.js"() {
    init_unpack();
    init_unpack();
    init_unpack();
    try {
      textEncoder3 = 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 encodeUtf8 = ByteArray.prototype.utf8Write ? function(string, position3) {
          return target.utf8Write(string, position3, target.byteLength - position3);
        } : textEncoder3 && textEncoder3.encodeInto ? function(string, position3) {
          return textEncoder3.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 i4 = 0; i4 < sharedLength; i4++) {
                let keys4 = structures[i4];
                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] = i4 + 64;
              }
              this.lastNamedStructuresLength = sharedLength;
            }
            if (!isSequential) {
              structures.nextId = sharedLength + 64;
            }
          }
          if (hasSharedUpdate)
            hasSharedUpdate = false;
          let encodingError;
          try {
            if (packr2._writeStruct && value && typeof value === "object") {
              if (value.constructor === Object) writeStruct(value);
              else if (value.constructor !== Map && !Array.isArray(value) && !extensionClasses.some((extClass) => value instanceof extClass)) {
                writeStruct(value.toJSON ? value.toJSON() : value);
              } else pack3(value);
            } else
              pack3(value);
            let lastBundle = bundledStrings2;
            if (bundledStrings2)
              writeBundles(start, pack3, 0);
            if (referenceMap2 && referenceMap2.idsToInsert) {
              let idsToInsert = referenceMap2.idsToInsert.sort((a2, b) => a2.offset > b.offset ? 1 : -1);
              let i4 = idsToInsert.length;
              let incrementPosition = -1;
              while (lastBundle && i4 > 0) {
                let insertionPoint = idsToInsert[--i4].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;
                  i4++;
                }
              }
              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 = (packr2._prepareStructures || prepareStructures)(structures, packr2);
                if (!encodingError) {
                  if (packr2.saveStructures(newSharedData, newSharedData.isCompatible) === false) {
                    structures.uninitialized = true;
                    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 i4 = 0, l = recordIdsToRemove.length; i4 < l; i4++) {
              recordIdsToRemove[i4][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 i4 = 0; i4 < length; i4++) {
            pack3(value[i4]);
          }
        };
        const pack3 = (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, pack3, 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;
              pack3(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 || !encodeUtf8) {
              let i4, c1, c22, strPosition = position2 + headerSize;
              for (i4 = 0; i4 < strLength; i4++) {
                c1 = value.charCodeAt(i4);
                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(i4 + 1)) & 64512) === 56320) {
                  c1 = 65536 + ((c1 & 1023) << 10) + (c22 & 1023);
                  i4++;
                  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 = encodeUtf8(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._writeStruct) {
                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) {
                    pack3(key);
                    pack3(entryValue);
                  }
                }
              } else {
                for (let i4 = 0, l = extensions.length; i4 < l; i4++) {
                  let extensionClass = extensionClasses[i4];
                  if (value instanceof extensionClass) {
                    let extension = extensions[i4];
                    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 {
                        pack3(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
                        };
                      }, pack3);
                    } 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 pack3(json2);
                  }
                  if (type4 === "function")
                    return pack3(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 pack3(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 invert2 = value < 0;
                  let string = (invert2 ? ~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 i4 = 0; i4 < array.length; i4++) {
                      array[i4] = parseInt(string.slice(i4 * 2, i4 * 2 + 2), 16);
                    }
                  }
                  if (invert2) {
                    for (let i4 = 0; i4 < array.length; i4++) array[i4] = ~array[i4];
                  }
                }
                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 i4 = 0; i4 < length; i4++) {
              key = keys4[i4];
              let num = Number(key);
              pack3(isNaN(num) ? key : num);
              pack3(object[key]);
            }
          } else {
            for (let i4 = 0; i4 < length; i4++) {
              pack3(key = keys4[i4]);
              pack3(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)) {
              pack3(key);
              pack3(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 i4 = 0, l = keys4.length; i4 < l; i4++) {
                    let key2 = keys4[i4];
                    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];
                }
                pack3(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)) {
              pack3(object[key]);
            }
        };
        const checkUseRecords = typeof this.useRecords == "function" && this.useRecords;
        const writeObject = checkUseRecords ? (object) => {
          checkUseRecords(object) ? writeRecord(object) : writePlainObject(object);
        } : writeRecord;
        const writeStruct = (object) => {
          let newPosition = packr2._writeStruct(object, target, start, position2, structures, makeRoom, (value, newPosition2, notifySharedUpdate) => {
            if (notifySharedUpdate)
              return hasSharedUpdate = true;
            position2 = newPosition2;
            let startTarget = target;
            pack3(value);
            resetStructures();
            if (startTarget !== target) {
              return { position: position2, targetView, target };
            }
            return position2;
          });
          if (newPosition === 0)
            return writeObject(object);
          position2 = newPosition;
        };
        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);
            pack3(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];
          }
        };
      }
      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, pack3) {
        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 pack3(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, pack3) {
        if (this.setAsEmptyObject) {
          allocateForWrite(0);
          return pack3({});
        }
        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;
        }
        pack3(array);
      }
    }, {
      pack(error, allocateForWrite, pack3) {
        let { target: target2, position: position3 } = allocateForWrite(this.moreTypes ? 3 : 0);
        if (this.moreTypes) {
          target2[position3++] = 212;
          target2[position3++] = 101;
          target2[position3++] = 0;
        }
        pack3([error.name, error.message, error.cause]);
      }
    }, {
      pack(regex2, allocateForWrite, pack3) {
        let { target: target2, position: position3 } = allocateForWrite(this.moreTypes ? 3 : 0);
        if (this.moreTypes) {
          target2[position3++] = 212;
          target2[position3++] = 120;
          target2[position3++] = 0;
        }
        pack3([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;
      }
    }];
    Packr.SUPPORTS_STRUCT_HOOKS = true;
    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;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/msgpackr/2.0.4/4846a2ae9cbdea249e2eda7b79740c6d2b16af4f09769fa313dd4f4064702820/node_modules/msgpackr/stream.js
var init_stream2 = __esm({
  "../../../../../setup-pnpm/store/v11/links/@/msgpackr/2.0.4/4846a2ae9cbdea249e2eda7b79740c6d2b16af4f09769fa313dd4f4064702820/node_modules/msgpackr/stream.js"() {
    init_pack();
    init_unpack();
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/msgpackr/2.0.4/4846a2ae9cbdea249e2eda7b79740c6d2b16af4f09769fa313dd4f4064702820/node_modules/msgpackr/iterators.js
var init_iterators = __esm({
  "../../../../../setup-pnpm/store/v11/links/@/msgpackr/2.0.4/4846a2ae9cbdea249e2eda7b79740c6d2b16af4f09769fa313dd4f4064702820/node_modules/msgpackr/iterators.js"() {
    init_pack();
    init_unpack();
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/detect-libc/2.1.2/a1e36129e998f9971b8906296c04a9314f612077e4f1e2a4342793f735c2fb37/node_modules/detect-libc/lib/process.js
var require_process = __commonJS({
  "../../../../../setup-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 };
  }
});

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

// ../../../../../setup-pnpm/store/v11/links/@/detect-libc/2.1.2/a1e36129e998f9971b8906296c04a9314f612077e4f1e2a4342793f735c2fb37/node_modules/detect-libc/lib/elf.js
var require_elf = __commonJS({
  "../../../../../setup-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 i4 = 0; i4 < count2; i4++) {
        const headerOffset = offset + i4 * 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
    };
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/detect-libc/2.1.2/a1e36129e998f9971b8906296c04a9314f612077e4f1e2a4342793f735c2fb37/node_modules/detect-libc/lib/detect-libc.js
var require_detect_libc = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/detect-libc/2.1.2/a1e36129e998f9971b8906296c04a9314f612077e4f1e2a4342793f735c2fb37/node_modules/detect-libc/lib/detect-libc.js"(exports2, module2) {
    "use strict";
    var childProcess4 = __require("child_process");
    var { isLinux: isLinux2, getReport } = require_process();
    var { LDD_PATH, SELF_PATH, readFile: readFile5, 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((resolve4) => {
          childProcess4.exec(command, (err2, out) => {
            commandOut = err2 ? " " : out;
            resolve4(commandOut);
          });
        });
      }
      return commandOut;
    };
    var safeCommandSync = () => {
      if (!commandOut) {
        try {
          commandOut = childProcess4.execSync(command, { encoding: "utf8" });
        } catch (_err) {
          commandOut = " ";
        }
      }
      return commandOut;
    };
    var GLIBC = "glibc";
    var RE_GLIBC_VERSION = /LIBC[a-z0-9 \-).]*?(\d+\.\d+)/i;
    var MUSL2 = "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 MUSL2;
        }
      }
      return null;
    };
    var familyFromCommand = (out) => {
      const [getconf, ldd1] = out.split(/[\r\n]+/);
      if (getconf && getconf.includes(GLIBC)) {
        return GLIBC;
      }
      if (ldd1 && ldd1.includes(MUSL2)) {
        return MUSL2;
      }
      return null;
    };
    var familyFromInterpreterPath = (path240) => {
      if (path240) {
        if (path240.includes("/ld-musl-")) {
          return MUSL2;
        } else if (path240.includes("/ld-linux-")) {
          return GLIBC;
        }
      }
      return null;
    };
    var getFamilyFromLddContent = (content) => {
      content = content.toString();
      if (content.includes("musl")) {
        return MUSL2;
      }
      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 readFile5(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 readFile5(SELF_PATH);
        const path240 = interpreterPath(selfContent);
        cachedFamilyInterpreter = familyFromInterpreterPath(path240);
      } catch (e) {
      }
      return cachedFamilyInterpreter;
    };
    var familyFromInterpreterSync = () => {
      if (cachedFamilyInterpreter !== void 0) {
        return cachedFamilyInterpreter;
      }
      cachedFamilyInterpreter = null;
      try {
        const selfContent = readFileSync4(SELF_PATH);
        const path240 = interpreterPath(selfContent);
        cachedFamilyInterpreter = familyFromInterpreterPath(path240);
      } 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 familySync6 = () => {
      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() && familySync6() !== GLIBC;
    var versionFromFilesystem = async () => {
      if (cachedVersionFilesystem !== void 0) {
        return cachedVersionFilesystem;
      }
      cachedVersionFilesystem = null;
      try {
        const lddContent = await readFile5(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(MUSL2)) {
        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: MUSL2,
      family,
      familySync: familySync6,
      isNonGlibcLinux,
      isNonGlibcLinuxSync,
      version: version2,
      versionSync
    };
  }
});

// ../../../../../setup-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({
  "../../../../../setup-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 fs131 = __require("fs");
    var path240 = __require("path");
    var url7 = __require("url");
    var os20 = __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 arch2 = process.env.npm_config_arch || os20.arch();
    var platform5 = process.env.npm_config_platform || os20.platform();
    var libc = process.env.LIBC || (isMusl(platform5) ? "musl" : "glibc");
    var armv = process.env.ARM_VERSION || (arch2 === "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 = path240.resolve(dir || ".");
      var packageName = "";
      var packageNameError;
      try {
        packageName = runtimeRequire(path240.join(dir, "package.json")).name;
        var varName = packageName.toUpperCase().replace(/-/g, "_");
        if (process.env[varName + "_PREBUILD"]) dir = process.env[varName + "_PREBUILD"];
      } catch (err2) {
        packageNameError = err2;
      }
      if (!prebuildsOnly) {
        var release = getFirst(path240.join(dir, "build/Release"), matchBuild);
        if (release) return release;
        var debug = getFirst(path240.join(dir, "build/Debug"), matchBuild);
        if (debug) return debug;
      }
      var prebuild = resolve4(dir);
      if (prebuild) return prebuild;
      var nearby = resolve4(path240.dirname(process.execPath));
      if (nearby) return nearby;
      var platformPackage = (packageName[0] == "@" ? "" : "@" + packageName + "/") + packageName + "-" + platform5 + "-" + arch2;
      var packageResolutionError;
      try {
        var prebuildPackage = path240.dirname(__require("module").createRequire(url7.pathToFileURL(path240.join(dir, "package.json"))).resolve(platformPackage));
        return resolveFile(prebuildPackage);
      } catch (error) {
        packageResolutionError = error;
      }
      var target2 = [
        "platform=" + platform5,
        "arch=" + arch2,
        "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 resolve4(dir2) {
        var tuples = readdirSync4(path240.join(dir2, "prebuilds")).map(parseTuple);
        var tuple = tuples.filter(matchTuple(platform5, arch2)).sort(compareTuples)[0];
        if (!tuple) return;
        return resolveFile(path240.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 path240.join(prebuilds, winner.file);
      }
    };
    function readdirSync4(dir) {
      try {
        return fs131.readdirSync(dir);
      } catch (err2) {
        return [];
      }
    }
    function getFirst(dir, filter14) {
      var files = readdirSync4(dir).filter(filter14);
      return files[0] && path240.join(dir, files[0]);
    }
    function matchBuild(name) {
      return /\.node$/.test(name);
    }
    function parseTuple(name) {
      var arr = name.split("-");
      if (arr.length !== 2) return;
      var platform6 = arr[0];
      var architectures = arr[1].split("+");
      if (!platform6) return;
      if (!architectures.length) return;
      if (!architectures.every(Boolean)) return;
      return { name, platform: platform6, architectures };
    }
    function matchTuple(platform6, arch3) {
      return function(tuple) {
        if (tuple == null) return false;
        if (tuple.platform !== platform6) return false;
        return tuple.architectures.includes(arch3);
      };
    }
    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 i4 = 0; i4 < arr.length; i4++) {
        var tag = arr[i4];
        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(platform6) {
      if (platform6 !== "linux") return false;
      const { familySync: familySync6, MUSL: MUSL2 } = require_detect_libc();
      return familySync6() === MUSL2;
    }
    load3.parseTags = parseTags;
    load3.matchTags = matchTags;
    load3.compareTags = compareTags;
    load3.parseTuple = parseTuple;
    load3.matchTuple = matchTuple;
    load3.compareTuples = compareTuples;
  }
});

// ../../../../../setup-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({
  "../../../../../setup-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();
    }
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/msgpackr-extract/3.0.4/5f2fa3b3518dffb11d9500f22a2d0750c582db5a973c2486eb1a697b6439d322/node_modules/msgpackr-extract/index.js
var require_msgpackr_extract = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/msgpackr-extract/3.0.4/5f2fa3b3518dffb11d9500f22a2d0750c582db5a973c2486eb1a697b6439d322/node_modules/msgpackr-extract/index.js"(exports2, module2) {
    module2.exports = require_node_gyp_build_optional_packages()(__dirname);
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/msgpackr/2.0.4/4846a2ae9cbdea249e2eda7b79740c6d2b16af4f09769fa313dd4f4064702820/node_modules/msgpackr/node-index.js
import { createRequire as createRequire4 } from "module";
var nativeAccelerationDisabled;
var init_node_index = __esm({
  "../../../../../setup-pnpm/store/v11/links/@/msgpackr/2.0.4/4846a2ae9cbdea249e2eda7b79740c6d2b16af4f09769fa313dd4f4064702820/node_modules/msgpackr/node-index.js"() {
    init_pack();
    init_unpack();
    init_stream2();
    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 = createRequire4(import.meta.url)("msgpackr-extract");
        if (extractor)
          setExtractor(extractor.extractStrings);
      } catch (error) {
      }
    }
  }
});

// ../store/index/lib/index.js
import fs20 from "node:fs";
import { createRequire as createRequire5 } from "node:module";
import { pathToFileURL } from "node:url";
function sqliteRetry(fn) {
  for (let attempt = 0; ; attempt++) {
    try {
      return fn();
    } catch (err2) {
      if (isSqliteBusy(err2) && attempt < MAX_RETRIES) {
        sleepSync(RETRY_DELAY_MS);
        continue;
      }
      throw err2;
    }
  }
}
function isSqliteBusy(err2) {
  return (err2?.errcode & 255) === SQLITE_BUSY;
}
function sleepSync(ms) {
  Atomics.wait(sleepBuffer, 0, 0, ms);
}
function storeIndexKey(integrity, pkgId) {
  return `${integrity}	${pkgId}`;
}
function gitHostedStoreIndexKey(pkgId, opts3) {
  return storeIndexKey(pkgId, opts3.built ? "built" : "not-built");
}
function pickStoreIndexKey(resolution, pkgId, opts3) {
  if (resolution.gitHosted || !resolution.integrity) {
    return gitHostedStoreIndexKey(pkgId, opts3);
  }
  return storeIndexKey(resolution.integrity, pkgId);
}
function immutableSqliteUri(dbPath) {
  const url7 = pathToFileURL(dbPath);
  url7.searchParams.set("immutable", "1");
  return url7.href;
}
function nodeSupportsImmutableSqliteUri() {
  const [major, minor] = process.versions.node.split(".", 2).map(Number);
  if (major < 22)
    return false;
  if (major === 22)
    return minor >= 15;
  if (major === 23)
    return minor >= 11;
  return true;
}
var FROZEN_STORE_WRITE_MESSAGE, req, DatabaseSync, packr, SQLITE_BUSY, RETRY_DELAY_MS, MAX_RETRIES, sleepBuffer, openInstances, StoreIndex, ReadOnlyStoreIndex;
var init_lib30 = __esm({
  "../store/index/lib/index.js"() {
    "use strict";
    init_lib2();
    init_node_index();
    FROZEN_STORE_WRITE_MESSAGE = "Cannot write to the package store because frozenStore is enabled (the store is opened read-only). This indicates the store is missing content the install needs.";
    req = createRequire5(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) {
        this.openDatabase(storeDir);
        this.prepareStatements();
        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);
      }
      /** Open the SQLite connection. Overridden by {@link ReadOnlyStoreIndex}. */
      openDatabase(storeDir) {
        fs20.mkdirSync(storeDir, { recursive: true });
        this.db = new DatabaseSync(`${storeDir}/index.db`);
        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
      `);
        });
      }
      /** Prepare the prepared statements. Overridden by {@link ReadOnlyStoreIndex} to skip the write statements. */
      prepareStatements() {
        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");
      }
      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);
        this.optimizeBeforeClose();
        try {
          this.db.close();
        } catch {
        }
      }
      /** Run `PRAGMA optimize` before closing. Overridden by {@link ReadOnlyStoreIndex} to skip it (the DB is immutable). */
      optimizeBeforeClose() {
        try {
          this.db.exec("PRAGMA optimize");
        } catch {
        }
      }
    };
    ReadOnlyStoreIndex = class extends StoreIndex {
      openDatabase(storeDir) {
        if (!nodeSupportsImmutableSqliteUri()) {
          throw new PnpmError("FROZEN_STORE_UNSUPPORTED_NODE", `frozenStore opens the store index read-only via a SQLite "immutable" URI, which requires Node.js >=22.15.0, >=23.11.0, or >=24.0.0, but the current version is ${process.versions.node}. Upgrade Node.js, or run without frozenStore.`);
        }
        this.db = new DatabaseSync(immutableSqliteUri(`${storeDir}/index.db`));
      }
      prepareStatements() {
        this.stmtGet = this.db.prepare("SELECT data 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");
      }
      optimizeBeforeClose() {
      }
      set(_key, _data) {
        this.throwReadOnly();
      }
      delete(_key) {
        this.throwReadOnly();
      }
      queueWrites(_writes) {
        this.throwReadOnly();
      }
      setRawMany(_entries) {
        this.throwReadOnly();
      }
      deleteMany(_keys) {
        this.throwReadOnly();
      }
      checkpoint() {
        this.throwReadOnly();
      }
      throwReadOnly() {
        throw new PnpmError("FROZEN_STORE_WRITE", FROZEN_STORE_WRITE_MESSAGE);
      }
    };
  }
});

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

// ../../../../../setup-pnpm/store/v11/links/@/minipass/7.1.3/a7614fb87a3c89f60d8477ebaa7ab06ecdd2299e5cf0ba9963f19ef4d1c338ae/node_modules/minipass/dist/commonjs/index.js
var require_commonjs4 = __commonJS({
  "../../../../../setup-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(mod2) {
      return mod2 && mod2.__esModule ? mod2 : { "default": mod2 };
    };
    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 isStream4 = (s) => !!s && typeof s === "object" && (s instanceof Minipass || s instanceof node_stream_1.default || (0, exports2.isReadable)(s) || (0, exports2.isWritable)(s));
    exports2.isStream = isStream4;
    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, opts3) {
        this.src = src2;
        this.dest = dest;
        this.opts = opts3;
        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, opts3) {
        super(src2, dest, opts3);
        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, opts3) {
        if (this[DESTROYED])
          return dest;
        this[DISCARDED] = false;
        const ended = this[EMITTED_END];
        opts3 = opts3 || {};
        if (dest === proc.stdout || dest === proc.stderr)
          opts3.end = false;
        else
          opts3.end = opts3.end !== false;
        opts3.proxyErrors = !!opts3.proxyErrors;
        if (ended) {
          if (opts3.end)
            dest.end();
        } else {
          this[PIPES].push(!opts3.proxyErrors ? new Pipe(this, dest, opts3) : new PipeProxyErrors(this, dest, opts3));
          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, handler83) {
        return this.on(ev, handler83);
      }
      /**
       * 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, handler83) {
        const ret2 = super.on(ev, handler83);
        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 = handler83;
          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, handler83) {
        return this.off(ev, handler83);
      }
      /**
       * 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, handler83) {
        const ret2 = super.off(ev, handler83);
        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((resolve4, reject3) => {
          this.on(DESTROYED, () => reject3(new Error("stream destroyed")));
          this.on("error", (er) => reject3(er));
          this.on("end", () => resolve4());
        });
      }
      /**
       * 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 resolve4;
          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();
            resolve4({ value, done: !!this[EOF] });
          };
          const onend = () => {
            this.off("error", onerr);
            this.off("data", ondata);
            this.off(DESTROYED, ondestroy);
            stop();
            resolve4({ done: true, value: void 0 });
          };
          const ondestroy = () => onerr(new Error("stream destroyed"));
          return new Promise((res2, rej) => {
            reject3 = rej;
            resolve4 = 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;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/ssri/13.0.1/0e3fdd1493e4ec8319aea0525e25c8d014c405d7edc627b0e85e0b7f9ef7edb3/node_modules/ssri/lib/index.js
var require_lib18 = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/ssri/13.0.1/0e3fdd1493e4ec8319aea0525e25c8d014c405d7edc627b0e85e0b7f9ef7edb3/node_modules/ssri/lib/index.js"(exports2, module2) {
    "use strict";
    var crypto14 = __require("crypto");
    var { Minipass } = require_commonjs4();
    var SPEC_ALGORITHMS = ["sha512", "sha384", "sha256"];
    var DEFAULT_ALGORITHMS = ["sha512"];
    var NODE_HASHES = crypto14.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(opts3) {
        super();
        this.size = 0;
        this.opts = opts3;
        this.#getOptions();
        if (opts3?.algorithms) {
          this.algorithms = [...opts3.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(crypto14.createHash);
      }
      #getOptions() {
        this.sri = this.opts?.integrity ? parse12(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, handler83) {
        if (ev === "size" && this.#emittedSize) {
          return handler83(this.#emittedSize);
        }
        if (ev === "integrity" && this.#emittedIntegrity) {
          return handler83(this.#emittedIntegrity);
        }
        if (ev === "verified" && this.#emittedVerified) {
          return handler83(this.#emittedVerified);
        }
        return super.on(ev, handler83);
      }
      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 = parse12(this.hashes.map((h2, i4) => {
          return `${this.algorithms[i4]}-${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 err2 = new Error(`stream size mismatch when checking ${this.sri}.
  Wanted: ${this.expectedSize}
  Found: ${this.size}`);
          err2.code = "EBADSIZE";
          err2.found = this.size;
          err2.expected = this.expectedSize;
          err2.sri = this.sri;
          this.emit("error", err2);
        } else if (this.sri && !match) {
          const err2 = new Error(`${this.sri} integrity checksum failed when using ${this.algorithm}: wanted ${this.digests} but got ${newSri}. (${this.size} bytes)`);
          err2.code = "EINTEGRITY";
          err2.found = newSri;
          err2.expected = this.digests;
          err2.algorithm = this.algorithm;
          err2.sri = this.sri;
          this.emit("error", err2);
        } 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 Hash2 = class {
      get isHash() {
        return true;
      }
      constructor(hash2, opts3) {
        const strict = opts3?.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, opts3) {
        const other = parse12(integrity, opts3);
        if (!other) {
          return false;
        }
        if (other.isIntegrity) {
          const algo = other.pickAlgorithm(opts3, [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(opts3) {
        if (opts3?.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, opts3, hashes) {
      const toStringIsNotEmpty = toString4 !== "";
      let shouldAddFirstSep = false;
      let complement = "";
      const lastIndex = hashes.length - 1;
      for (let i4 = 0; i4 < lastIndex; i4++) {
        const hashString = Hash2.prototype.toString.call(hashes[i4], opts3);
        if (hashString) {
          shouldAddFirstSep = true;
          complement += hashString;
          complement += sep2;
        }
      }
      const finalHashString = Hash2.prototype.toString.call(hashes[lastIndex], opts3);
      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(opts3) {
        let sep2 = opts3?.sep || " ";
        let toString4 = "";
        if (opts3?.strict) {
          sep2 = sep2.replace(/\S+/g, " ");
          for (const hash2 of SPEC_ALGORITHMS) {
            if (this[hash2]) {
              toString4 = integrityHashToString(toString4, sep2, opts3, this[hash2]);
            }
          }
        } else {
          for (const hash2 of Object.keys(this)) {
            toString4 = integrityHashToString(toString4, sep2, opts3, this[hash2]);
          }
        }
        return toString4;
      }
      concat(integrity, opts3) {
        const other = typeof integrity === "string" ? integrity : stringify2(integrity, opts3);
        return parse12(`${this.toString(opts3)} ${other}`, opts3);
      }
      hexDigest() {
        return parse12(this, { single: true }).hexDigest();
      }
      // add additional hashes to an integrity value, but prevent *changing* an existing integrity hash.
      merge(integrity, opts3) {
        const other = parse12(integrity, opts3);
        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, opts3) {
        const other = parse12(integrity, opts3);
        if (!other) {
          return false;
        }
        const algo = other.pickAlgorithm(opts3, 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(opts3, hashes) {
        const pickAlgorithm = opts3?.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 = parse12;
    function parse12(sri, opts3) {
      if (!sri) {
        return null;
      }
      if (typeof sri === "string") {
        return _parse(sri, opts3);
      } else if (sri.algorithm && sri.digest) {
        const fullSri = new Integrity();
        fullSri[sri.algorithm] = [sri];
        return _parse(stringify2(fullSri, opts3), opts3);
      } else {
        return _parse(stringify2(sri, opts3), opts3);
      }
    }
    function _parse(integrity, opts3) {
      if (opts3?.single) {
        return new Hash2(integrity, opts3);
      }
      const hashes = integrity.trim().split(/\s+/).reduce((acc, string) => {
        const hash2 = new Hash2(string, opts3);
        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 = stringify2;
    function stringify2(obj, opts3) {
      if (obj.algorithm && obj.digest) {
        return Hash2.prototype.toString.call(obj, opts3);
      } else if (typeof obj === "string") {
        return stringify2(parse12(obj, opts3), opts3);
      } else {
        return Integrity.prototype.toString.call(obj, opts3);
      }
    }
    module2.exports.fromHex = fromHex;
    function fromHex(hexDigest, algorithm, opts3) {
      const optString = getOptString(opts3?.options);
      return parse12(
        `${algorithm}-${Buffer.from(hexDigest, "hex").toString("base64")}${optString}`,
        opts3
      );
    }
    module2.exports.fromData = fromData;
    function fromData(data, opts3) {
      const algorithms = opts3?.algorithms || [...DEFAULT_ALGORITHMS];
      const optString = getOptString(opts3?.options);
      return algorithms.reduce((acc, algo) => {
        const digest = crypto14.createHash(algo).update(data).digest("base64");
        const hash2 = new Hash2(
          `${algo}-${digest}${optString}`,
          opts3
        );
        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, opts3) {
      const istream = integrityStream(opts3);
      return new Promise((resolve4, reject3) => {
        stream2.pipe(istream);
        stream2.on("error", reject3);
        istream.on("error", reject3);
        let sri;
        istream.on("integrity", (s) => {
          sri = s;
        });
        istream.on("end", () => resolve4(sri));
        istream.resume();
      });
    }
    module2.exports.checkData = checkData;
    function checkData(data, sri, opts3) {
      sri = parse12(sri, opts3);
      if (!sri || !Object.keys(sri).length) {
        if (opts3?.error) {
          throw Object.assign(
            new Error("No valid integrity hashes to check against"),
            {
              code: "EINTEGRITY"
            }
          );
        } else {
          return false;
        }
      }
      const algorithm = sri.pickAlgorithm(opts3);
      const digest = crypto14.createHash(algorithm).update(data).digest("base64");
      const newSri = parse12({ algorithm, digest });
      const match = newSri.match(sri, opts3);
      opts3 = opts3 || {};
      if (match || !opts3.error) {
        return match;
      } else if (typeof opts3.size === "number" && data.length !== opts3.size) {
        const err2 = new Error(`data size mismatch when checking ${sri}.
  Wanted: ${opts3.size}
  Found: ${data.length}`);
        err2.code = "EBADSIZE";
        err2.found = data.length;
        err2.expected = opts3.size;
        err2.sri = sri;
        throw err2;
      } else {
        const err2 = new Error(`Integrity checksum failed when using ${algorithm}: Wanted ${sri}, but got ${newSri}. (${data.length} bytes)`);
        err2.code = "EINTEGRITY";
        err2.found = newSri;
        err2.expected = sri;
        err2.algorithm = algorithm;
        err2.sri = sri;
        throw err2;
      }
    }
    module2.exports.checkStream = checkStream;
    function checkStream(stream2, sri, opts3) {
      opts3 = opts3 || /* @__PURE__ */ Object.create(null);
      opts3.integrity = sri;
      sri = parse12(sri, opts3);
      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(opts3);
      return new Promise((resolve4, reject3) => {
        stream2.pipe(checker);
        stream2.on("error", reject3);
        checker.on("error", reject3);
        let verified2;
        checker.on("verified", (s) => {
          verified2 = s;
        });
        checker.on("end", () => resolve4(verified2));
        checker.resume();
      });
    }
    module2.exports.integrityStream = integrityStream;
    function integrityStream(opts3 = /* @__PURE__ */ Object.create(null)) {
      return new IntegrityStream(opts3);
    }
    module2.exports.create = createIntegrity;
    function createIntegrity(opts3) {
      const algorithms = opts3?.algorithms || [...DEFAULT_ALGORITHMS];
      const optString = getOptString(opts3?.options);
      const hashes = algorithms.map(crypto14.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 Hash2(`${algo}-${digest}${optString}`, opts3);
            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;
    }
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/version-selector-type/3.0.0/540564ceb76433d0c915e26bc76d3f5a15c77edca71ae6466b951c295a91cc3d/node_modules/version-selector-type/index.js
var require_version_selector_type = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/version-selector-type/3.0.0/540564ceb76433d0c915e26bc76d3f5a15c77edca71ae6466b951c295a91cc3d/node_modules/version-selector-type/index.js"(exports2, module2) {
    "use strict";
    var semver64 = 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 = semver64.valid(selector, loose)) {
        return {
          normalized: normalizedSelector,
          type: "version"
        };
      }
      if (normalizedSelector = semver64.validRange(selector, loose)) {
        return {
          normalized: normalizedSelector,
          type: "range"
        };
      }
      if (encodeURIComponent(selector) === selector) {
        return {
          normalized: selector,
          type: "tag"
        };
      }
      return null;
    }
  }
});

// ../resolving/npm-resolver/lib/clearMeta.js
function clearMeta(pkg) {
  const memoized2 = condensedPackuments.get(pkg);
  if (memoized2 != null)
    return memoized2;
  const versions = /* @__PURE__ */ Object.create(null);
  for (const [version2, info] of Object.entries(pkg.versions ?? {})) {
    versions[version2] = pick_default(ABBREVIATED_VERSION_FIELDS, info);
  }
  const condensed = {
    name: pkg.name,
    "dist-tags": pkg["dist-tags"],
    versions,
    time: pkg.time,
    modified: pkg.modified
  };
  if (pkg.etag != null) {
    condensed.etag = pkg.etag;
  }
  condensedPackuments.set(pkg, condensed);
  condensedPackuments.set(condensed, condensed);
  return condensed;
}
function retainsFullMeta(opts3) {
  return opts3.fullMetadata === true && opts3.filterMetadata !== true;
}
var ABBREVIATED_VERSION_FIELDS, condensedPackuments;
var init_clearMeta = __esm({
  "../resolving/npm-resolver/lib/clearMeta.js"() {
    "use strict";
    init_es();
    ABBREVIATED_VERSION_FIELDS = [
      "name",
      "version",
      "bin",
      "directories",
      "devDependencies",
      "optionalDependencies",
      "dependencies",
      "peerDependencies",
      "dist",
      "engines",
      "peerDependenciesMeta",
      "cpu",
      "os",
      "libc",
      "deprecated",
      "bundleDependencies",
      "bundledDependencies",
      "hasInstallScript",
      "_npmUser"
    ];
    condensedPackuments = /* @__PURE__ */ new WeakMap();
  }
});

// ../resolving/npm-resolver/lib/fetch.js
import url from "node:url";
import util6 from "node:util";
function stripTrailingSemverSuffix(pkgName) {
  const atIdx = pkgName.lastIndexOf("@");
  if (atIdx > 0 && import_semver5.default.valid(pkgName.slice(atIdx + 1)) != null) {
    return pkgName.slice(0, atIdx);
  }
  let i4 = pkgName.length;
  i4 = consumeTrailingDigits(pkgName, i4);
  if (i4 === pkgName.length || i4 === 0 || pkgName.charCodeAt(i4 - 1) !== 46)
    return void 0;
  i4--;
  const beforePatch = i4;
  i4 = consumeTrailingDigits(pkgName, i4);
  if (i4 === beforePatch || i4 === 0 || pkgName.charCodeAt(i4 - 1) !== 46)
    return void 0;
  i4--;
  const beforeMinor = i4;
  i4 = consumeTrailingDigits(pkgName, i4);
  if (i4 === beforeMinor || i4 === 0)
    return void 0;
  if (import_semver5.default.valid(pkgName.slice(i4)) == null)
    return void 0;
  let prefix = pkgName.slice(0, i4);
  if (prefix.endsWith("@"))
    prefix = prefix.slice(0, -1);
  return prefix.length > 0 ? prefix : void 0;
}
function consumeTrailingDigits(s, end) {
  let i4 = end;
  while (i4 > 0) {
    const c3 = s.charCodeAt(i4 - 1);
    if (c3 < 48 || c3 > 57)
      break;
    i4--;
  }
  return i4;
}
async function fetchMetadataFromFromRegistry(fetchOpts, pkgName, { authHeaderValue, cacheBypass = false, etag: cachedEtag, fullMetadata, modified: cachedModified, registry }) {
  const uri = toUri(pkgName, registry);
  const op = retry.operation(fetchOpts.retry);
  const ifNoneMatch = cacheBypass ? void 0 : cachedEtag;
  const ifModifiedSince = cacheBypass || !cachedModified ? void 0 : new Date(cachedModified).toUTCString();
  const hasValidator = Boolean(ifNoneMatch || ifModifiedSince);
  return new Promise((resolve4, reject3) => {
    op.attempt(async (attempt) => {
      let response;
      const startTime = Date.now();
      try {
        const requestOptions = {
          authHeaderValue,
          compress: true,
          fullMetadata,
          ifNoneMatch,
          ifModifiedSince,
          retry: fetchOpts.retry,
          timeout: fetchOpts.timeout,
          headers: cacheBypass ? { "cache-control": "no-cache" } : void 0
        };
        response = await fetchOpts.fetch(uri, requestOptions);
        if (response.status === 304 && !hasValidator && !cacheBypass) {
          response = await fetchOpts.fetch(uri, {
            ...requestOptions,
            headers: {
              "cache-control": "no-cache"
            }
          });
        }
      } catch (error) {
        if (util6.types.isNativeError(error)) {
          if (typeof error.message === "string")
            error.message = redactUrlCredentials(error.message);
          if (typeof error.stack === "string")
            error.stack = redactUrlCredentials(error.stack);
        }
        reject3(new PnpmError("META_FETCH_FAIL", redactUrlCredentials(`GET ${uri}: ${error.message}`), { attempts: attempt, cause: error }));
        return;
      }
      if (response.status === 304) {
        if (!hasValidator) {
          reject3(notModifiedWithoutCacheError(pkgName));
          return;
        }
        resolve4({ 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}`);
        }
        resolve4({
          ...normalizeAbbreviatedResponse({ fullMetadata, meta, jsonText, response }),
          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 notModifiedWithoutCacheError(pkgName) {
  return new PnpmError("META_NOT_MODIFIED_WITHOUT_CACHE", `Registry returned 304 for ${pkgName} without an existing cache to refresh.`);
}
function normalizeAbbreviatedResponse({ fullMetadata, meta, jsonText, response }) {
  if (fullMetadata)
    return { meta, jsonText };
  if (parseMediaType(response.headers.get("content-type")) === ABBREVIATED_META_CONTENT_TYPE)
    return { meta, jsonText };
  const normalized = clearMeta(meta);
  return { meta: normalized, jsonText: JSON.stringify(normalized) };
}
function parseMediaType(contentType) {
  if (contentType == null)
    return void 0;
  const semicolonIndex = contentType.indexOf(";");
  const mediaType = semicolonIndex === -1 ? contentType : contentType.slice(0, semicolonIndex);
  return mediaType.trim().toLowerCase();
}
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_semver5, ABBREVIATED_META_CONTENT_TYPE, RegistryResponseError;
var init_fetch2 = __esm({
  "../resolving/npm-resolver/lib/fetch.js"() {
    "use strict";
    init_lib6();
    init_lib2();
    init_lib3();
    retry = __toESM(require_retry2(), 1);
    import_semver5 = __toESM(require_semver2(), 1);
    init_clearMeta();
    ABBREVIATED_META_CONTENT_TYPE = "application/vnd.npm.install-v1+json";
    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/memoizeFetchMetadata.js
function memoizeFetchMetadata(fetch3, memoOpts) {
  const condense = memoOpts?.condenseSettledMeta;
  const cache = /* @__PURE__ */ new Map();
  return {
    fetch: (pkgName, opts3) => {
      const key = JSON.stringify([pkgName, opts3]);
      const cached = cache.get(key);
      if (cached != null)
        return cached;
      const pending = fetch3(pkgName, opts3);
      cache.set(key, pending);
      void pending.then((result2) => {
        if (cache.get(key) !== pending)
          return;
        cache.set(key, Promise.resolve(settledEntry(result2)));
      }, () => {
        if (cache.get(key) === pending)
          cache.delete(key);
      });
      return pending;
    },
    clear: () => {
      cache.clear();
    }
  };
  function settledEntry(result2) {
    if (result2.notModified)
      return result2;
    let meta = result2.meta;
    if (condense != null) {
      try {
        meta = condense(result2.meta);
      } catch {
      }
    }
    return { ...result2, jsonText: void 0, meta };
  }
}
var init_memoizeFetchMetadata = __esm({
  "../resolving/npm-resolver/lib/memoizeFetchMetadata.js"() {
    "use strict";
  }
});

// ../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";
  }
});

// ../../../../../setup-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({
  "../../../../../setup-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"];
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/validate-npm-package-name/7.0.2/814dcb947be9900c7df1d25263921c519f02120f3fc85aa99a69894e271e5507/node_modules/validate-npm-package-name/lib/index.js
var require_lib19 = __commonJS({
  "../../../../../setup-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/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 index2 = rawSpecifier.lastIndexOf("@");
    if (index2 === 0) {
      return {
        jsrPkgName: rawSpecifier,
        npmPkgName: jsrToNpmPackageName(rawSpecifier)
      };
    }
    const jsrPkgName = rawSpecifier.substring(0, index2);
    return {
      jsrPkgName,
      npmPkgName: jsrToNpmPackageName(jsrPkgName),
      versionSelector: rawSpecifier.substring(index2 + "@".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");
  }
  if (!(0, import_validate_npm_package_name.default)(jsrPkgName).validForOldPackages) {
    throw new PnpmError("INVALID_JSR_PACKAGE_NAME", `The package name '${jsrPkgName}' is invalid`);
  }
  const sepIndex = jsrPkgName.indexOf("/");
  const scope = jsrPkgName.substring("@".length, sepIndex);
  const name = jsrPkgName.substring(sepIndex + "/".length);
  return `@jsr/${scope}__${name}`;
}
var import_validate_npm_package_name;
var init_lib32 = __esm({
  "../resolving/jsr-specifier-parser/lib/index.js"() {
    "use strict";
    init_lib2();
    import_validate_npm_package_name = __toESM(require_lib19(), 1);
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/parse-npm-tarball-url/5.0.0/479512fb822f97e9363065094f6c39b7f759ac572c7af354d4d3161618a4e929/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: path240, host } = new URL(url7);
  if (!path240 || !host)
    return null;
  const pkg = parsePath(path240);
  if (!pkg)
    return null;
  return {
    host,
    name: pkg.name,
    version: pkg.version
  };
}
function parsePath(path240) {
  const parts = path240.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_semver6.default.valid(version2, true))
    return null;
  return { name, version: version2 };
}
var import_semver6;
var init_lib33 = __esm({
  "../../../../../setup-pnpm/store/v11/links/@/parse-npm-tarball-url/5.0.0/479512fb822f97e9363065094f6c39b7f759ac572c7af354d4d3161618a4e929/node_modules/parse-npm-tarball-url/lib/index.js"() {
    import_semver6 = __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_semver7.default.validRange(bareSpecifier) != null) {
      name = alias;
    } else {
      const index2 = bareSpecifier.lastIndexOf("@");
      if (index2 < 1) {
        name = bareSpecifier;
        bareSpecifier = defaultTag;
      } else {
        name = bareSpecifier.slice(0, index2);
        bareSpecifier = bareSpecifier.slice(index2 + 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_semver7.default.validRange(body) != null) {
    if (!packageAlias)
      return null;
    pkgName = packageAlias;
    versionSelector = body;
  } else if (body[0] === "@") {
    const index2 = body.lastIndexOf("@");
    if (index2 === 0) {
      pkgName = body;
    } else {
      pkgName = body.substring(0, index2);
      versionSelector = body.substring(index2 + "@".length);
    }
  } else if (packageAlias?.startsWith("@")) {
    pkgName = packageAlias;
    versionSelector = body;
  } else {
    const index2 = body.lastIndexOf("@");
    if (index2 < 1) {
      pkgName = body;
    } else {
      pkgName = body.substring(0, index2);
      versionSelector = body.substring(index2 + "@".length);
    }
    if (!pkgName)
      return null;
  }
  if (!(0, import_validate_npm_package_name2.default)(pkgName).validForOldPackages) {
    throw new PnpmError("INVALID_NAMED_REGISTRY_PACKAGE_NAME", `The package name '${pkgName}' in named registry '${registryName}:' is invalid`);
  }
  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_semver7, import_validate_npm_package_name2, import_version_selector_type, BUILTIN_NAMED_REGISTRIES;
var init_parseBareSpecifier = __esm({
  "../resolving/npm-resolver/lib/parseBareSpecifier.js"() {
    "use strict";
    init_lib2();
    init_lib32();
    init_lib33();
    import_semver7 = __toESM(require_semver2(), 1);
    import_validate_npm_package_name2 = __toESM(require_lib19(), 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 crypto3 from "node:crypto";
import fs21 from "node:fs";
function createShortHash(input) {
  return createHexHash(input).substring(0, 32);
}
function createHexHash(input) {
  return crypto3.hash("sha256", input, "hex");
}
function createHash(input) {
  return `sha256-${crypto3.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 fs21.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_lib34 = __esm({
  "../crypto/hash/lib/index.js"() {
    "use strict";
    init_lib14();
    import_ssri = __toESM(require_lib18(), 1);
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/mimic-fn/3.1.0/67725f89fa5029d31ee290b3c28e8074d91c74c87a50f77c2bee796ea87e1f20/node_modules/mimic-fn/index.js
var require_mimic_fn = __commonJS({
  "../../../../../setup-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;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/p-defer/1.0.0/3e126ce50553d4b3b893fef989fcdbc5709234b11a2da7bc8a096832ba88c29b/node_modules/p-defer/index.js
var require_p_defer = __commonJS({
  "../../../../../setup-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((resolve4, reject3) => {
        ret2.resolve = resolve4;
        ret2.reject = reject3;
      });
      return ret2;
    };
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/map-age-cleaner/0.1.3/be41cd0fbfd96202f4ead722c1ea45ded378677c7695993beee3114ff63ef4c8/node_modules/map-age-cleaner/dist/index.js
var require_dist2 = __commonJS({
  "../../../../../setup-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(resolve4, 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 ? resolve4(result2.value) : new P2(function(resolve5) {
            resolve5(result2.value);
          }).then(fulfilled, rejected);
        }
        step2((generator = generator.apply(thisArg, _arguments || [])).next());
      });
    };
    var __importDefault2 = exports2 && exports2.__importDefault || function(mod2) {
      return mod2 && mod2.__esModule ? mod2 : { "default": mod2 };
    };
    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 cleanup2 = () => __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 (_a2) {
        }
        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();
        }
        cleanup2();
        return result2;
      };
      cleanup2();
      return map26;
    }
    exports2.default = mapAgeCleaner;
    module2.exports = mapAgeCleaner;
    module2.exports.default = mapAgeCleaner;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/mem/8.1.1/bd24b7ae63c9701bbf5937e541379deb0da48fe02c2aae4e703a0fede07fced2/node_modules/mem/dist/index.js
var require_dist3 = __commonJS({
  "../../../../../setup-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_dist2();
    var decoratorInstanceMap = /* @__PURE__ */ new WeakMap();
    var cacheStore2 = /* @__PURE__ */ new WeakMap();
    var mem = (fn, { cacheKey, cache = /* @__PURE__ */ new Map(), maxAge } = {}) => {
      if (typeof maxAge === "number") {
        mapAgeCleaner(cache);
      }
      const memoized2 = 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(memoized2, fn, {
        ignoreNonConfigurable: true
      });
      cacheStore2.set(memoized2, cache);
      return memoized2;
    };
    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 = cacheStore2.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;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/encode-registry/3.0.1/4c541124f325e20283cba585b872be483c1a90e1d0510ab093720a0706066a2a/node_modules/encode-registry/index.js
var require_encode_registry = __commonJS({
  "../../../../../setup-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_dist3();
    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 (err2) {
        throw new Error(`Failed to parse registry URL "${rawUrl}": ${err2.message}`);
      }
      if (!urlObj || !urlObj.host) {
        throw new Error(`Couldn't get host from ${rawUrl}`);
      }
      return urlObj.host;
    }
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/crypto-random-string/4.0.0/62825d7a2c34eedb81d0d583bb2f53f6aba7872f7f7458f24e1bf78c432f86ed/node_modules/crypto-random-string/index.js
import { promisify as promisify12 } from "util";
import crypto4 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({
  "../../../../../setup-pnpm/store/v11/links/@/crypto-random-string/4.0.0/62825d7a2c34eedb81d0d583bb2f53f6aba7872f7f7458f24e1bf78c432f86ed/node_modules/crypto-random-string/index.js"() {
    randomBytesAsync = promisify12(crypto4.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 = crypto4.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 = (byteLength2, type4, length) => crypto4.randomBytes(byteLength2).toString(type4).slice(0, length);
    generateRandomBytesAsync = async (byteLength2, type4, length) => {
      const buffer3 = await randomBytesAsync(byteLength2);
      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;
  }
});

// ../../../../../setup-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({
  "../../../../../setup-pnpm/store/v11/links/@/unique-string/3.0.0/a866cc9b5c54cfdb51fd873a65f819a8cf9cedf7f734bec6917212cc97bd4e56/node_modules/unique-string/index.js"() {
    init_crypto_random_string();
  }
});

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

// ../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_semver8.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_semver8.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_semver8;
var init_lib35 = __esm({
  "../resolving/registry/pkg-metadata-filter/lib/index.js"() {
    "use strict";
    init_lib3();
    import_semver8 = __toESM(require_semver2(), 1);
  }
});

// ../resolving/npm-resolver/lib/pickPackageFromMeta.js
import util7 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 (err2) {
    if (util7.types.isNativeError(err2) && "code" in err2 && typeof err2.code === "string" && err2.code.startsWith("ERR_PNPM_")) {
      throw err2;
    }
    throw new PnpmError("MALFORMED_METADATA", `Received malformed metadata for "${spec.name}"`, { hint: "This might mean that the package was unpublished from the registry", cause: err2 });
  }
}
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_semver9.default.Range(range, true);
    } catch {
      semverRange = null;
    }
    semverRangeCache.set(range, semverRange);
  }
  if (semverRange) {
    try {
      return semverRange.test(new import_semver9.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_semver9.default.minSatisfying(preferredVersions, versionRange, true);
      if (preferredVersion) {
        return preferredVersion;
      }
    }
  }
  if (versionRange === "*") {
    return Object.keys(meta.versions).sort(import_semver9.default.compare)[0];
  }
  return import_semver9.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_semver9.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_semver9.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_semver9.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_semver9, semverRangeCache, PreferredVersionsPrioritizer;
var init_pickPackageFromMeta = __esm({
  "../resolving/npm-resolver/lib/pickPackageFromMeta.js"() {
    "use strict";
    init_lib2();
    init_lib35();
    import_semver9 = __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 fs22 } from "node:fs";
import path31 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_semver10.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 (err2) {
    if (pickerOpts.ignoreMissingTimeField && isMissingTimeError(err2)) {
      warnMissingTimeFieldOnce(meta.name);
      return pickMatchingVersionFast({
        ...pickerOpts,
        publishedBy: void 0,
        publishedByExclude: void 0
      }, spec, meta);
    }
    throw err2;
  }
}
function cacheDiskLoadedMeta(metaCache, cacheKey, meta) {
  unverifiedDiskPackuments.add(meta);
  metaCache.set(cacheKey, meta);
}
function condenseMetaForCache(ctx, meta) {
  return retainsFullMeta(ctx) ? meta : clearMeta(meta);
}
async function pickPackage(ctx, spec, opts3) {
  opts3 = opts3 || {};
  const pickerOpts = {
    preferredVersionSelectors: opts3.preferredVersionSelectors,
    publishedBy: opts3.publishedBy,
    publishedByExclude: opts3.publishedByExclude,
    pickLowestVersion: opts3.pickLowestVersion,
    includeLatestTag: opts3.includeLatestTag,
    ignoreMissingTimeField: ctx.ignoreMissingTimeField
  };
  validatePackageName(spec.name);
  const fullMetadata = opts3.optional === true || ctx.fullMetadata === true;
  const metaDir = fullMetadata ? ctx.filterMetadata ? FULL_FILTERED_META_DIR : FULL_META_DIR : ABBREVIATED_META_DIR;
  const cacheKey = getPkgMetaCacheKey(opts3.registry, spec.name, fullMetadata, ctx.filterMetadata === true);
  const pkgMirror = getPkgMirrorPath(ctx.cacheDir, metaDir, opts3.registry, spec.name);
  const cachedMeta = opts3.updateChecksums ? void 0 : ctx.metaCache.get(cacheKey);
  if (cachedMeta != null) {
    const upgrade = await maybeUpgradeAbbreviatedMetaForReleaseAge(ctx, spec, opts3, cachedMeta);
    const metaForCache = upgradeMetaForCache(ctx, upgrade, { pkgMirror, dryRun: opts3.dryRun });
    if (upgrade.upgradedFrom != null) {
      ctx.metaCache.set(cacheKey, metaForCache);
    }
    const pickedPackage = pickMatchingVersionFinal(pickerOpts, spec, metaForCache);
    if (pickedPackage != null || ctx.offline === true || !unverifiedDiskPackuments.has(metaForCache)) {
      return {
        meta: metaForCache,
        pickedPackage
      };
    }
  }
  return runLimited(pkgMirror, async (limit) => {
    const loadMetaCondensed = async () => {
      const meta = await loadMeta(pkgMirror);
      return meta == null ? null : condenseMetaForCache(ctx, meta);
    };
    let diskMeta;
    if (ctx.offline === true || ctx.preferOffline === true || opts3.pickLowestVersion) {
      diskMeta = await limit(loadMetaCondensed);
      if (ctx.offline) {
        if (diskMeta != null) {
          cacheDiskLoadedMeta(ctx.metaCache, cacheKey, diskMeta);
          return {
            meta: diskMeta,
            pickedPackage: pickMatchingVersionFinal(pickerOpts, spec, diskMeta)
          };
        }
        throw new PnpmError("NO_OFFLINE_META", `Failed to resolve ${toRaw(spec)} in package mirror ${pkgMirror}`);
      }
      if (diskMeta != null) {
        const upgrade = await maybeUpgradeAbbreviatedMetaForReleaseAge(ctx, spec, opts3, diskMeta);
        diskMeta = upgradeMetaForCache(ctx, upgrade, { pkgMirror, dryRun: opts3.dryRun });
        if (upgrade.upgradedFrom != null) {
          ctx.metaCache.set(cacheKey, diskMeta);
        }
        const pickedPackage = pickMatchingVersionFinal(pickerOpts, spec, diskMeta);
        if (pickedPackage) {
          if (upgrade.upgradedFrom == null) {
            cacheDiskLoadedMeta(ctx.metaCache, cacheKey, diskMeta);
          }
          return {
            meta: diskMeta,
            pickedPackage
          };
        }
      }
    }
    if (!opts3.includeLatestTag && !opts3.updateChecksums && spec.type === "version") {
      diskMeta = diskMeta ?? await limit(loadMetaCondensed);
      if (diskMeta?.versions?.[spec.fetchSpec] != null) {
        try {
          const pickedPackage = pickMatchingVersionFast(pickerOpts, spec, diskMeta);
          if (pickedPackage) {
            cacheDiskLoadedMeta(ctx.metaCache, cacheKey, diskMeta);
            return {
              meta: diskMeta,
              pickedPackage
            };
          }
        } catch {
        }
      }
    }
    if (opts3.publishedBy && opts3.publishedByExclude?.(spec.name) !== true) {
      const mtime = await limit(async () => getFileMtime(pkgMirror));
      if (mtime != null && mtime >= opts3.publishedBy) {
        diskMeta = diskMeta ?? await limit(loadMetaCondensed);
        if (diskMeta != null) {
          try {
            const pickedPackage = pickMatchingVersionFast(pickerOpts, spec, diskMeta);
            if (pickedPackage) {
              return {
                meta: diskMeta,
                pickedPackage
              };
            }
          } catch {
          }
        }
      }
    }
    try {
      const cacheHeaders = diskMeta != null ? { etag: diskMeta.etag, modified: diskMeta.modified ?? diskMeta.time?.modified } : await limit(async () => loadMetaHeaders(pkgMirror));
      const conditional = await ctx.fetch(spec.name, {
        authHeaderValue: opts3.authHeaderValue,
        fullMetadata,
        etag: cacheHeaders?.etag,
        modified: cacheHeaders?.modified,
        registry: opts3.registry
      });
      if (!conditional.notModified)
        return await persistFreshMeta(conditional);
      diskMeta = diskMeta ?? await limit(loadMetaCondensed);
      if (diskMeta != null)
        return await serveValidatedMeta(diskMeta);
      const refetched = await ctx.fetch(spec.name, {
        authHeaderValue: opts3.authHeaderValue,
        cacheBypass: true,
        fullMetadata,
        registry: opts3.registry
      });
      if (refetched.notModified)
        throw notModifiedWithoutCacheError(spec.name);
      return await persistFreshMeta(refetched);
    } catch (err2) {
      err2.spec = spec;
      const meta = await loadMetaCondensed();
      if (meta == null)
        throw err2;
      logger.error(err2, err2);
      logger.debug({ message: `Using cached meta from ${pkgMirror}` });
      return {
        meta,
        pickedPackage: pickMatchingVersionFinal(pickerOpts, spec, meta)
      };
    }
    async function serveValidatedMeta(cached) {
      if (!opts3.dryRun) {
        const now = /* @__PURE__ */ new Date();
        fs22.utimes(pkgMirror, now, now).catch(() => {
        });
      }
      const upgrade = await maybeUpgradeAbbreviatedMetaForReleaseAge(ctx, spec, opts3, cached);
      const meta = upgradeMetaForCache(ctx, upgrade, { pkgMirror, dryRun: opts3.dryRun });
      ctx.metaCache.set(cacheKey, meta);
      return {
        meta,
        pickedPackage: pickMatchingVersionFinal(pickerOpts, spec, meta)
      };
    }
    async function persistFreshMeta(fetched) {
      let meta = fetched.meta;
      let resultToSave = fetched;
      if (opts3.publishedBy && !fullMetadata && meta.time == null && opts3.publishedByExclude?.(spec.name) !== true) {
        const modifiedDate = meta.modified ? new Date(meta.modified) : null;
        const isModifiedValid = modifiedDate != null && !Number.isNaN(modifiedDate.getTime());
        if (!isModifiedValid || modifiedDate > opts3.publishedBy) {
          if (!opts3.dryRun) {
            saveMetaBestEffort(pkgMirror, prepareJsonForDisk(resultToSave.meta, resultToSave.etag, resultToSave.jsonText));
          }
          const fullFetchResult = await ctx.fetch(spec.name, {
            authHeaderValue: opts3.authHeaderValue,
            fullMetadata: true,
            registry: opts3.registry
          });
          if (!fullFetchResult.notModified) {
            resultToSave = fullFetchResult;
            meta = fullFetchResult.meta;
          }
        }
      }
      meta = condenseMetaForCache(ctx, meta);
      if (!opts3.dryRun) {
        const writeCondensed = ctx.filterMetadata === true || resultToSave !== fetched && meta !== resultToSave.meta;
        const jsonForDisk = writeCondensed ? prepareJsonForDisk(meta, resultToSave.etag) : prepareJsonForDisk(resultToSave.meta, resultToSave.etag, resultToSave.jsonText);
        saveMetaBestEffort(pkgMirror, jsonForDisk);
      }
      meta.etag = resultToSave.etag;
      ctx.metaCache.set(cacheKey, meta);
      return {
        meta,
        pickedPackage: pickMatchingVersionFinal(pickerOpts, spec, meta)
      };
    }
  });
}
async function maybeUpgradeAbbreviatedMetaForReleaseAge(ctx, spec, opts3, meta) {
  if (ctx.offline === true || !opts3.publishedBy || meta.time != null || opts3.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 <= opts3.publishedBy) {
    return { meta };
  }
  const fullFetchResult = await ctx.fetch(spec.name, {
    authHeaderValue: opts3.authHeaderValue,
    fullMetadata: true,
    etag: meta.etag,
    modified: meta.modified,
    registry: opts3.registry
  });
  if (fullFetchResult.notModified) {
    return { meta };
  }
  return { meta: fullFetchResult.meta, upgradedFrom: fullFetchResult };
}
function upgradeMetaForCache(ctx, upgrade, opts3) {
  if (upgrade.upgradedFrom == null)
    return upgrade.meta;
  if (opts3.dryRun)
    return condenseMetaForCache(ctx, upgrade.meta);
  return persistUpgradedMeta(ctx, opts3.pkgMirror, upgrade.upgradedFrom);
}
function persistUpgradedMeta(ctx, pkgMirror, upgradedFrom) {
  const metaForCache = condenseMetaForCache(ctx, upgradedFrom.meta);
  const jsonForDisk = metaForCache === upgradedFrom.meta ? prepareJsonForDisk(upgradedFrom.meta, upgradedFrom.etag, upgradedFrom.jsonText) : prepareJsonForDisk(metaForCache, upgradedFrom.etag);
  saveMetaBestEffort(pkgMirror, jsonForDisk);
  return metaForCache;
}
function saveMetaBestEffort(pkgMirror, json2) {
  void runLimited(pkgMirror, (limit) => limit(async () => {
    try {
      await saveMeta(pkgMirror, json2);
    } catch (err2) {
      logger.debug({ message: `Failed to write the package metadata mirror at ${pkgMirror}`, err: err2 });
    }
  }));
}
function encodePkgName(pkgName) {
  if (pkgName !== pkgName.toLowerCase()) {
    return `${pkgName}_${createHexHash(pkgName)}`;
  }
  return pkgName;
}
function getPkgMetaCacheKey(registry, pkgName, fullMetadata, filterMetadata) {
  const key = `${canonicalizeRegistry(registry)}\0${pkgName}`;
  if (!fullMetadata)
    return key;
  return filterMetadata ? `${key}:full:filtered` : `${key}:full`;
}
function canonicalizeRegistry(registry) {
  try {
    const parsed = new URL(registry);
    const pathname = parsed.pathname.endsWith("/") ? parsed.pathname : `${parsed.pathname}/`;
    return `${parsed.origin}${pathname}`;
  } catch {
    return registry;
  }
}
function getPkgMirrorPath(cacheDir, metaDir, registry, pkgName) {
  return path31.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.etag == null ? meta : { ...meta, etag: void 0 });
  return `${headers}
${body}`;
}
function isMissingTimeError(err2) {
  return err2 != null && typeof err2 === "object" && "code" in err2 && err2.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 fs22.stat(filePath);
    return stat2.mtime;
  } catch {
    return null;
  }
}
async function loadMetaHeaders(pkgMirror) {
  let fh;
  try {
    fh = await fs22.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 = path31.dirname(pkgMirror);
  if (!createdDirs.has(dir)) {
    await fs22.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_semver10, metafileOperationLimits, pickHighest, pickLowest, unverifiedDiskPackuments, MAX_WARNED_MISSING_TIME, warnedMissingTimeFor, createdDirs;
var init_pickPackage = __esm({
  "../resolving/npm-resolver/lib/pickPackage.js"() {
    "use strict";
    init_lib();
    init_lib34();
    init_lib2();
    init_lib14();
    init_lib3();
    import_encode_registry = __toESM(require_encode_registry(), 1);
    init_p_limit();
    init_path_temp();
    init_rename_overwrite();
    import_semver10 = __toESM(require_semver2(), 1);
    init_clearMeta();
    init_fetch2();
    init_pickPackageFromMeta();
    init_toRaw();
    metafileOperationLimits = {};
    pickHighest = pickPackageFromMeta.bind(null, pickVersionByVersionRange);
    pickLowest = pickPackageFromMeta.bind(null, pickLowestVersionByVersionRange);
    unverifiedDiskPackuments = /* @__PURE__ */ new WeakSet();
    MAX_WARNED_MISSING_TIME = 1024;
    warnedMissingTimeFor = /* @__PURE__ */ new Set();
    createdDirs = /* @__PURE__ */ new Set();
  }
});

// ../resolving/npm-resolver/lib/trustChecks.js
function failIfTrustDowngraded(meta, version2, opts3) {
  if (opts3?.trustPolicyExclude) {
    const excludeResult = opts3.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 (opts3?.trustPolicyIgnoreAfter) {
    const now = /* @__PURE__ */ new Date();
    const minutesSincePublish = (now.getTime() - versionDate.getTime()) / (1e3 * 60);
    if (minutesSincePublish > opts3.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_semver11.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 "stagedPublish":
      return "staged publish";
    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_semver11.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 (best === void 0 || TRUST_RANK[trustEvidence] > TRUST_RANK[best]) {
      best = trustEvidence;
      if (best === "stagedPublish") {
        return best;
      }
    }
  }
  return best;
}
function getTrustEvidence(manifest) {
  if (manifest._npmUser?.approver) {
    return "stagedPublish";
  }
  if (manifest._npmUser?.trustedPublisher && manifest.dist?.attestations?.provenance) {
    return "trustedPublisher";
  }
  if (manifest.dist?.attestations?.provenance) {
    return "provenance";
  }
  return void 0;
}
var import_semver11, TRUST_RANK;
var init_trustChecks = __esm({
  "../resolving/npm-resolver/lib/trustChecks.js"() {
    "use strict";
    init_lib2();
    import_semver11 = __toESM(require_semver2(), 1);
    init_pickPackageFromMeta();
    TRUST_RANK = {
      stagedPublish: 3,
      trustedPublisher: 2,
      provenance: 1
    };
  }
});

// ../resolving/npm-resolver/lib/violationCodes.js
var MINIMUM_RELEASE_AGE_VIOLATION_CODE, TRUST_DOWNGRADE_VIOLATION_CODE, TARBALL_URL_MISMATCH_VIOLATION_CODE, MISSING_TARBALL_INTEGRITY_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";
    TARBALL_URL_MISMATCH_VIOLATION_CODE = "TARBALL_URL_MISMATCH";
    MISSING_TARBALL_INTEGRITY_VIOLATION_CODE = "MISSING_TARBALL_INTEGRITY";
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/semver-utils/1.1.4/bbbf6bcd6e2cad096d8c5e4cd94c8815535d76e88f7c54b6d35929d441dd7625/node_modules/semver-utils/semver-utils.js
var require_semver_utils = __commonJS({
  "../../../../../setup-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 stringify2(ver) {
          if (ver.operator) {
            str2 += ver.operator + " ";
          }
          if (ver.major) {
            str2 += ver.toString() + " ";
          }
        }
        arr.forEach(stringify2);
        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) {
  if (spec.startsWith("catalog:"))
    return void 0;
  const colonIndex = spec.indexOf(":");
  if (colonIndex !== -1) {
    spec = spec.substring(colonIndex + 1);
  }
  const index2 = spec.lastIndexOf("@");
  if (index2 !== -1) {
    spec = spec.slice(index2 + 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";
    // A bare '=' pins the same way the plain version it prefixes does.
    case "=":
    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_lib36 = __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_lib36();
  }
});

// ../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 (err2) {
    if (!err2 || typeof err2 !== "object" || !("message" in err2))
      throw err2;
    throw new PnpmError(`INVALID_${key.replace(/([A-Z])/g, "_$1").toUpperCase()}`, `Invalid value in ${key}: ${err2.message}`);
  }
}
function getPublishedByPolicy(opts3) {
  return {
    publishedBy: opts3.minimumReleaseAge ? new Date(Date.now() - opts3.minimumReleaseAge * 60 * 1e3) : void 0,
    publishedByExclude: opts3.minimumReleaseAgeExclude ? createPackageVersionPolicyOrThrow(opts3.minimumReleaseAgeExclude, "minimumReleaseAgeExclude") : void 0
  };
}
function mergePackageVersionSpecs(specs) {
  const byPackage = /* @__PURE__ */ new Map();
  for (const spec of specs) {
    const { packageName, exactVersions } = parseVersionPolicyRule(spec);
    const existing = byPackage.get(packageName);
    if (existing === void 0) {
      byPackage.set(packageName, exactVersions.length === 0 ? null : new Set(exactVersions));
    } else if (existing === null || exactVersions.length === 0) {
      byPackage.set(packageName, null);
    } else {
      for (const version2 of exactVersions)
        existing.add(version2);
    }
  }
  return Array.from(byPackage.entries()).map(([packageName, versions]) => versions == null ? packageName : `${packageName}@${Array.from(versions).sort(import_semver12.default.compare).join(" || ")}`);
}
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) {
  let matchedVersions;
  let seen;
  for (const { nameMatcher, exactVersions } of rules) {
    if (!nameMatcher(pkgName)) {
      continue;
    }
    if (exactVersions.length === 0) {
      return matchedVersions ?? true;
    }
    if (matchedVersions == null) {
      matchedVersions = [];
      seen = /* @__PURE__ */ new Set();
    }
    for (const version2 of exactVersions) {
      if (!seen.has(version2)) {
        seen.add(version2);
        matchedVersions.push(version2);
      }
    }
  }
  return matchedVersions ?? 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_semver12.default.valid(versionRaw);
    if (version2 == null) {
      return null;
    }
    versions.push(version2);
  }
  return versions;
}
var import_semver12;
var init_lib37 = __esm({
  "../config/version-policy/lib/index.js"() {
    "use strict";
    init_lib27();
    init_lib2();
    import_semver12 = __toESM(require_semver2(), 1);
  }
});

// ../resolving/npm-resolver/lib/fetchAttestationPublishedAt.js
async function fetchAttestationPublishedAt(fetchOpts, pkgName, version2, opts3) {
  const url7 = `${opts3.registry.replace(/\/$/, "")}/-/npm/v1/attestations/${pkgName}@${version2}`;
  const retryOperation = retry2.operation(fetchOpts.retry);
  return new Promise((resolve4) => {
    retryOperation.attempt(async () => {
      let response;
      try {
        response = await fetchOpts.fetch(url7, {
          authHeaderValue: opts3.authHeaderValue,
          retry: fetchOpts.retry,
          timeout: fetchOpts.timeout
        });
      } catch {
        resolve4(void 0);
        return;
      }
      if (response.status >= 400) {
        resolve4(void 0);
        return;
      }
      let body;
      try {
        body = await response.json();
      } catch {
        resolve4(void 0);
        return;
      }
      resolve4(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_retry2(), 1);
  }
});

// ../resolving/npm-resolver/lib/fetchFullMetadataCached.js
async function fetchFullMetadataCached(fetchOpts, pkgName, opts3) {
  return fetchMetadataCached(fetchOpts, pkgName, { ...opts3, fullMetadata: true, metaDir: FULL_META_DIR });
}
async function fetchAbbreviatedMetadataCached(fetchOpts, pkgName, opts3) {
  return fetchMetadataCached(fetchOpts, pkgName, { ...opts3, fullMetadata: false, metaDir: ABBREVIATED_META_DIR });
}
async function fetchMetadataCached(fetchOpts, pkgName, opts3) {
  const pkgMirror = opts3.cacheDir != null ? getPkgMirrorPath(opts3.cacheDir, opts3.metaDir, opts3.registry, pkgName) : null;
  const cacheHeaders = pkgMirror != null ? await loadMetaHeaders(pkgMirror) : null;
  const conditional = await fetchMetadataFromFromRegistry(fetchOpts, pkgName, {
    registry: opts3.registry,
    authHeaderValue: opts3.authHeaderValue,
    fullMetadata: opts3.fullMetadata,
    etag: cacheHeaders?.etag,
    modified: cacheHeaders?.modified
  });
  if (!conditional.notModified)
    return persistAndReturn(conditional);
  if (pkgMirror == null)
    throw new Error(`Unexpected 304 for ${pkgName} without a metadata cache`);
  const cached = await loadMeta(pkgMirror);
  if (cached != null)
    return cached;
  const refetched = await fetchMetadataFromFromRegistry(fetchOpts, pkgName, {
    registry: opts3.registry,
    authHeaderValue: opts3.authHeaderValue,
    cacheBypass: true,
    fullMetadata: opts3.fullMetadata
  });
  if (refetched.notModified)
    throw new Error(`Unexpected 304 for ${pkgName} on a cache-bypassing refetch`);
  return persistAndReturn(refetched);
  function persistAndReturn(fetched) {
    if (pkgMirror != null) {
      saveMeta(pkgMirror, prepareJsonForDisk(fetched.meta, fetched.etag, fetched.jsonText)).catch(() => {
      });
    }
    return fetched.meta;
  }
}
var init_fetchFullMetadataCached = __esm({
  "../resolving/npm-resolver/lib/fetchFullMetadataCached.js"() {
    "use strict";
    init_lib();
    init_fetch2();
    init_pickPackage();
  }
});

// ../resolving/npm-resolver/lib/createNpmResolutionVerifier.js
function createNpmResolutionVerifier(opts3) {
  const ageCheckActive = Boolean(opts3.minimumReleaseAge);
  const trustCheckActive = opts3.trustPolicy === "no-downgrade";
  const cutoff = ageCheckActive ? (opts3.now ?? Date.now()) - opts3.minimumReleaseAge * 60 * 1e3 : 0;
  const excludePolicy = opts3.minimumReleaseAgeExclude?.length ? createExcludePolicy(opts3.minimumReleaseAgeExclude, "minimumReleaseAgeExclude") : void 0;
  const trustExcludePolicy = opts3.trustPolicyExclude?.length ? createExcludePolicy(opts3.trustPolicyExclude, "trustPolicyExclude") : void 0;
  const namedRegistryPrefixes = Object.values({
    ...BUILTIN_NAMED_REGISTRIES,
    ...opts3.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: opts3.fetchOpts,
    getAuthHeaderValueByURI: opts3.getAuthHeaderValueByURI,
    cacheDir: opts3.cacheDir,
    cutoffMs: cutoff,
    sharedMetaCache: opts3.metaCache,
    abbreviatedMetaCache: /* @__PURE__ */ new Map(),
    publishedAtCache: /* @__PURE__ */ new Map(),
    localMetaCache: /* @__PURE__ */ new Map(),
    fullMetaCache: /* @__PURE__ */ new Map(),
    fullMetaForTrustCache: /* @__PURE__ */ new Map()
  };
  const minimumReleaseAge = opts3.minimumReleaseAge ?? 0;
  const trustPolicy = opts3.trustPolicy;
  const trustPolicyIgnoreAfter = opts3.trustPolicyIgnoreAfter;
  const verify = async (resolution, { name, version: version2, nonSemverVersion }) => {
    if (!isRegistryTarballResolution(resolution))
      return { ok: true };
    const integrity = resolution.integrity;
    if (typeof integrity !== "string" || integrity.length === 0) {
      return {
        ok: false,
        code: MISSING_TARBALL_INTEGRITY_VIOLATION_CODE,
        reason: 'has no "integrity" field, so its downloaded tarball cannot be verified'
      };
    }
    if (nonSemverVersion != null)
      return { ok: true };
    if (!import_semver13.default.valid(version2)) {
      return {
        ok: false,
        code: TARBALL_URL_MISMATCH_VIOLATION_CODE,
        reason: `has a non-semver version ("${version2}") and so cannot be verified against the registry's published metadata`
      };
    }
    const rawTarball = resolution.tarball;
    if (rawTarball != null && typeof rawTarball !== "string") {
      return {
        ok: false,
        code: TARBALL_URL_MISMATCH_VIOLATION_CODE,
        reason: 'has a non-string "tarball" field, so its URL cannot be verified'
      };
    }
    const tarballUrl = typeof rawTarball === "string" ? rawTarball : void 0;
    const registry = pickRegistryForVersion(opts3.registries, namedRegistryPrefixes, name, tarballUrl);
    if (typeof tarballUrl === "string") {
      const urlViolation = await runTarballUrlCheck(lookupContext, registry, name, version2, tarballUrl);
      if (urlViolation)
        return urlViolation;
    }
    const ageApplies = ageCheckActive && !isExcluded(excludePolicy, name, version2);
    const trustApplies = trustCheckActive && !isExcluded(trustExcludePolicy, name, version2);
    if (!ageApplies && !trustApplies)
      return { ok: true };
    if (ageApplies) {
      const ageViolation = await runAgeCheck(lookupContext, registry, name, version2, cutoff, opts3.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(opts3.minimumReleaseAgeExclude ?? [])].sort();
  const sortedTrustExcludes = [...new Set(opts3.trustPolicyExclude ?? [])].sort();
  return {
    verify,
    policy: {
      // Marks runs that enforced the tarball-URL binding. A cache record
      // written before this rule existed lacks the flag, so
      // `canTrustPastCheck` rejects it and forces a re-verification that
      // applies the binding — otherwise an upgrade could keep trusting a
      // lockfile that was only ever age/trust-checked.
      tarballUrlBinding: true,
      // Same cache identity rule for the missing-integrity structural check.
      integrityRequired: true,
      minimumReleaseAge,
      minimumReleaseAgeExclude: sortedMinAgeExcludes,
      trustPolicy: trustPolicy ?? null,
      trustPolicyExclude: sortedTrustExcludes,
      trustPolicyIgnoreAfter: trustPolicyIgnoreAfter ?? null
    },
    canTrustPastCheck: (cached) => {
      if (cached.tarballUrlBinding !== true)
        return false;
      if (cached.integrityRequired !== true)
        return false;
      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) {
  const published = await fetchPublishedAt(context, registry, name, version2);
  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 runTarballUrlCheck(context, registry, name, version2, lockfileTarball) {
  const { meta, error } = await fetchAbbreviatedMeta(context, registry, name);
  if (error != null) {
    throw error;
  }
  const registryTarball = meta?.versionTarballs?.get(version2);
  if (registryTarball != null && sameTarballUrl(lockfileTarball, registryTarball)) {
    return void 0;
  }
  return {
    ok: false,
    code: TARBALL_URL_MISMATCH_VIOLATION_CODE,
    reason: registryTarball == null ? "could not be verified against the registry's published metadata" : `has a tarball URL (${lockfileTarball}) that does not match the registry's published metadata (${registryTarball})`
  };
}
function sameTarballUrl(a2, b) {
  return canonicalTarballUrl(a2) === canonicalTarballUrl(b);
}
function canonicalTarballUrl(url7) {
  const normalized = normalizeRegistryUrl(url7).replace(/%2f/gi, "/");
  const schemeEnd = normalized.indexOf("://");
  return schemeEnd === -1 ? normalized : normalized.slice(schemeEnd + 3);
}
async function runTrustCheck(context, registry, name, version2, opts3) {
  const meta = await fetchFullMetaForTrust(context, registry, name);
  try {
    failIfTrustDowngraded(meta, version2, opts3);
  } catch (err2) {
    return {
      ok: false,
      code: TRUST_DOWNGRADE_VIOLATION_CODE,
      reason: err2 instanceof Error ? err2.message : String(err2)
    };
  }
  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, registry, name);
    if (shared != null) {
      cachedPromise = Promise.resolve(projectTrustMeta(shared));
    } else {
      cachedPromise = fetchFullMetadataCached(context.fetchOpts, name, {
        registry,
        authHeaderValue: context.getAuthHeaderValueByURI(registry, { pkgName: name }),
        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 approver = manifest._npmUser?.approver;
  const trustedPublisher = manifest._npmUser?.trustedPublisher;
  const provenance = manifest.dist?.attestations?.provenance;
  let npmUser = void 0;
  if (approver) {
    npmUser ||= {};
    npmUser.approver = {};
  }
  if (trustedPublisher) {
    npmUser ||= {};
    npmUser.trustedPublisher = trustedPublisher;
  }
  return {
    _npmUser: npmUser,
    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, { pkgName: name })
  });
  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?.versionTarballs?.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, registry, name);
    if (shared != null) {
      cachedPromise = Promise.resolve({ meta: projectAbbreviatedMeta(shared) });
    } else {
      cachedPromise = fetchAbbreviatedMetadataCached(context.fetchOpts, name, {
        registry,
        authHeaderValue: context.getAuthHeaderValueByURI(registry, { pkgName: name }),
        cacheDir: context.cacheDir
      }).then((meta) => ({ meta: projectAbbreviatedMeta(meta) }), (error) => ({ error }));
    }
    context.abbreviatedMetaCache.set(cacheKey, cachedPromise);
  }
  return cachedPromise;
}
function readSharedMeta(cache, registry, name) {
  if (cache == null)
    return void 0;
  return readSharedFullMeta(cache, registry, name) ?? validateSharedMeta(cache.get(getPkgMetaCacheKey(registry, name, false, false)), name);
}
function readSharedMetaForTrust(cache, registry, name) {
  if (cache == null)
    return void 0;
  return readSharedFullMeta(cache, registry, name);
}
function readSharedFullMeta(cache, registry, name) {
  return validateSharedMeta(cache.get(getPkgMetaCacheKey(registry, name, true, false)), name) ?? validateSharedMeta(cache.get(getPkgMetaCacheKey(registry, name, true, true)), name);
}
function validateSharedMeta(meta, name) {
  if (meta == null)
    return void 0;
  if (meta.name !== name)
    return void 0;
  return meta;
}
function projectAbbreviatedMeta(meta) {
  let versionTarballs;
  if (meta.versions) {
    versionTarballs = /* @__PURE__ */ new Map();
    for (const [version2, manifest] of Object.entries(meta.versions)) {
      versionTarballs.set(version2, manifest.dist?.tarball);
    }
  }
  return {
    modified: meta.modified,
    versionTarballs
  };
}
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, { pkgName: name }),
      cacheDir: context.cacheDir
    }).then((meta) => meta.time);
    context.fullMetaCache.set(cacheKey, cachedPromise);
  }
  return cachedPromise;
}
function pickRegistryForVersion(registries, namedRegistryPrefixes, name, tarballUrl) {
  if (tarballUrl) {
    const normalized = canonicalTarballUrl(tarballUrl);
    for (const prefix of namedRegistryPrefixes) {
      if (normalized.startsWith(canonicalTarballUrl(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 (err2) {
    if (!err2 || typeof err2 !== "object" || !("message" in err2))
      throw err2;
    throw new PnpmError(`INVALID_${key.replace(/([A-Z])/g, "_$1").toUpperCase()}`, `Invalid value in ${key}: ${err2.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 isRegistryTarballResolution(resolution) {
  if (resolution == null || typeof resolution !== "object")
    return false;
  if ("type" in resolution && resolution.type != null)
    return false;
  const tarball = resolution.tarball;
  if (typeof tarball === "string") {
    if (isGitHostedTarballUrl(tarball))
      return false;
    const protocol = tryParseUrl(tarball)?.protocol;
    if (protocol != null && protocol !== "http:" && protocol !== "https:")
      return false;
  }
  return true;
}
var import_semver13;
var init_createNpmResolutionVerifier = __esm({
  "../resolving/npm-resolver/lib/createNpmResolutionVerifier.js"() {
    "use strict";
    init_lib28();
    init_lib37();
    init_lib();
    init_lib2();
    init_lib29();
    import_semver13 = __toESM(require_semver2(), 1);
    init_fetchAttestationPublishedAt();
    init_fetchFullMetadataCached();
    init_normalizeRegistryUrl();
    init_parseBareSpecifier();
    init_pickPackage();
    init_trustChecks();
    init_violationCodes();
  }
});

// ../resolving/npm-resolver/lib/index.js
import path32 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, opts3) {
  if (typeof opts3.cacheDir !== "string") {
    throw new TypeError("`opts.cacheDir` is required and needs to be a string");
  }
  const fetchOpts = {
    fetch: fetchFromRegistry,
    retry: opts3.retry ?? {},
    timeout: opts3.timeout ?? 6e4,
    fetchWarnTimeoutMs: opts3.fetchWarnTimeoutMs ?? 10 * 1e3
    // 10 sec
  };
  const { fetch: fetch3, clear: clearFetchCache } = memoizeFetchMetadata(fetchMetadataFromFromRegistry.bind(null, fetchOpts), {
    condenseSettledMeta: retainsFullMeta(opts3) ? void 0 : clearMeta
  });
  const ownsMetaCache = opts3.metaCache == null;
  const metaCache = opts3.metaCache ?? createDefaultPackageMetaCache();
  const storeDir = opts3.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,
        frozenStore: opts3.frozenStore
      }, 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(opts3.namedRegistries);
  const namedRegistryNames = new Set(Object.keys(namedRegistries));
  const ctx = {
    getAuthHeaderValueByURI: getAuthHeader,
    pickPackage: pickPackage.bind(null, {
      fetch: fetch3,
      fullMetadata: opts3.fullMetadata,
      filterMetadata: opts3.filterMetadata,
      metaCache,
      offline: opts3.offline,
      preferOffline: opts3.preferOffline,
      cacheDir: opts3.cacheDir,
      ignoreMissingTimeField: opts3.ignoreMissingTimeField
    }),
    registries: opts3.registries,
    namedRegistries,
    namedRegistryNames,
    saveWorkspaceProtocol: opts3.saveWorkspaceProtocol,
    peekManifestFromStore,
    warnedHeldBackUpdates: /* @__PURE__ */ new Set()
  };
  const boundResolveFromNpm = resolveNpm.bind(null, ctx);
  const boundResolveFromJsr = resolveJsr.bind(null, ctx);
  const boundResolveFromNamedRegistry = resolveFromNamedRegistry.bind(null, ctx);
  const defaultRegistry = opts3.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();
      }
      clearFetchCache();
    }
  };
}
function preferredVersionSelectorsFor(opts3, pkgName) {
  const selectors = opts3.preferredVersions?.[pkgName];
  if (!opts3.updateRequested)
    return selectors;
  return stripLockfileVersionPins(selectors);
}
function stripLockfileVersionPins(selectors) {
  if (selectors == null)
    return void 0;
  let kept;
  for (const [selector, value] of Object.entries(selectors)) {
    let keptValue = value;
    if (typeof value !== "string" && value.selectorType === "version" && value.weight >= EXISTING_VERSION_SELECTOR_WEIGHT) {
      const manifestWeight = value.weight - EXISTING_VERSION_SELECTOR_WEIGHT;
      if (manifestWeight <= 0)
        continue;
      keptValue = { selectorType: "version", weight: manifestWeight };
    }
    kept ??= /* @__PURE__ */ Object.create(null);
    kept[selector] = keptValue;
  }
  return kept;
}
function warnOnceOnHeldBackUpdate(ctx, opts3, spec, meta, pickedVersion) {
  if (!opts3.updateRequested || spec.type !== "range")
    return;
  const selectors = preferredVersionSelectorsFor(opts3, spec.name);
  if (selectors == null)
    return;
  let nonPinSelectors;
  for (const [selector, value] of Object.entries(selectors)) {
    if ((typeof value === "string" ? value : value.selectorType) === "version")
      continue;
    nonPinSelectors ??= /* @__PURE__ */ Object.create(null);
    nonPinSelectors[selector] = value;
  }
  const preferred = pickVersionByVersionRange({
    meta,
    versionRange: spec.fetchSpec,
    preferredVersionSelectors: nonPinSelectors
  });
  if (preferred == null || preferred === pickedVersion)
    return;
  const key = `${spec.name}@${spec.fetchSpec}:${pickedVersion}<${preferred}`;
  if (ctx.warnedHeldBackUpdates.has(key))
    return;
  ctx.warnedHeldBackUpdates.add(key);
  globalWarn(`"${spec.name}@${spec.fetchSpec}" was updated to ${pickedVersion}, not ${preferred}, to match the version preferred by your manifests and already installed dependencies. To use ${preferred}, add an override to pnpm-workspace.yaml: overrides: { "${spec.name}@${spec.fetchSpec}": "${preferred}" }`);
}
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(resolve4, matches2) {
  return async (query, opts3) => {
    if (!matches2(query))
      return void 0;
    const bareSpecifier = query.wantedDependency.bareSpecifier ?? "latest";
    const resolveOpts = query.compatible ? opts3 : { ...opts3, update: "latest" };
    try {
      const result2 = await resolve4({ alias: query.wantedDependency.alias, bareSpecifier }, resolveOpts);
      if (result2?.policyViolation?.code === MINIMUM_RELEASE_AGE_VIOLATION_CODE) {
        return {};
      }
      return { latestManifest: result2?.manifest };
    } catch (err2) {
      if (opts3.publishedBy && err2.code === "ERR_PNPM_NO_MATCHING_VERSION") {
        return {};
      }
      throw err2;
    }
  };
}
async function resolveNpm(ctx, wantedDependency, opts3) {
  const defaultTag = opts3.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: opts3.lockfileDir,
      projectDir: opts3.projectDir,
      registry,
      workspacePackages: opts3.workspacePackages,
      injectWorkspacePackages: opts3.injectWorkspacePackages,
      update: Boolean(opts3.update),
      saveWorkspaceProtocol: ctx.saveWorkspaceProtocol !== false ? ctx.saveWorkspaceProtocol : true,
      calcSpecifier: opts3.calcSpecifier,
      pinnedVersion: opts3.pinnedVersion
    });
    if (resolvedFromWorkspace != null) {
      return resolvedFromWorkspace;
    }
  }
  const workspacePackages = opts3.alwaysTryWorkspacePackages !== false ? opts3.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 && opts3.currentPkg?.resolution && !opts3.update && (opts3.publishedBy == null || opts3.currentPkg.publishedAt != null)) {
    const currentResolution = opts3.currentPkg.resolution;
    if ("tarball" in currentResolution && currentResolution.integrity) {
      const manifest = await ctx.peekManifestFromStore({
        id: opts3.currentPkg.id,
        integrity: currentResolution.integrity,
        name: opts3.currentPkg.name,
        version: opts3.currentPkg.version
      });
      if (manifest?.name && manifest?.version) {
        const id2 = `${manifest.name}@${manifest.version}`;
        if (id2 === opts3.currentPkg.id) {
          return {
            id: id2,
            manifest,
            resolution: currentResolution,
            resolvedVia: "npm-registry",
            publishedAt: opts3.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: opts3.currentPkg.publishedAt,
              resolution: currentResolution,
              publishedBy: opts3.publishedBy,
              publishedByExclude: opts3.publishedByExclude
            })
          };
        }
      }
    }
  }
  const authHeaderValue = ctx.getAuthHeaderValueByURI(registry, { pkgName: spec.name });
  let pickResult;
  try {
    pickResult = await ctx.pickPackage(spec, {
      pickLowestVersion: opts3.pickLowestVersion,
      publishedBy: opts3.publishedBy,
      publishedByExclude: opts3.publishedByExclude,
      authHeaderValue,
      dryRun: opts3.dryRun === true,
      preferredVersionSelectors: preferredVersionSelectorsFor(opts3, spec.name),
      registry,
      includeLatestTag: opts3.update === "latest",
      updateChecksums: opts3.updateChecksums,
      optional: wantedDependency.optional
    });
  } catch (err2) {
    if (workspacePackages != null && opts3.projectDir) {
      try {
        return tryResolveFromWorkspacePackages(workspacePackages, spec, {
          wantedDependency,
          projectDir: opts3.projectDir,
          lockfileDir: opts3.lockfileDir,
          hardLinkLocalPackages: opts3.injectWorkspacePackages === true || wantedDependency.injected,
          update: false,
          saveWorkspaceProtocol: ctx.saveWorkspaceProtocol,
          calcSpecifier: opts3.calcSpecifier,
          pinnedVersion: opts3.pinnedVersion
        });
      } catch (workspaceErr) {
        if (err2.code === "ERR_PNPM_FETCH_404" && workspaceErr.code === "ERR_PNPM_NO_MATCHING_VERSION_INSIDE_WORKSPACE") {
          throw workspaceErr;
        }
      }
    }
    throw err2;
  }
  const pickedPackage = pickResult.pickedPackage;
  const meta = pickResult.meta;
  if (pickedPackage == null) {
    if (workspacePackages != null && opts3.projectDir) {
      try {
        return tryResolveFromWorkspacePackages(workspacePackages, spec, {
          wantedDependency,
          projectDir: opts3.projectDir,
          lockfileDir: opts3.lockfileDir,
          hardLinkLocalPackages: opts3.injectWorkspacePackages === true || wantedDependency.injected,
          update: false,
          saveWorkspaceProtocol: ctx.saveWorkspaceProtocol,
          calcSpecifier: opts3.calcSpecifier,
          pinnedVersion: opts3.pinnedVersion
        });
      } catch (workspaceErr) {
        if (workspaceErr.code === "ERR_PNPM_NO_MATCHING_VERSION_INSIDE_WORKSPACE") {
          throw workspaceErr;
        }
      }
    }
    throw new NoMatchingVersionError({ wantedDependency, packageMeta: meta, registry });
  } else if (opts3.trustPolicy === "no-downgrade") {
    failIfTrustDowngraded(meta, pickedPackage.version, opts3);
  }
  const workspacePkgsMatchingName = workspacePackages?.get(pickedPackage.name);
  if (workspacePkgsMatchingName && opts3.projectDir) {
    const matchedPkg = workspacePkgsMatchingName.get(pickedPackage.version);
    if (matchedPkg) {
      return {
        ...resolveFromLocalPackage(matchedPkg, spec, {
          wantedDependency,
          projectDir: opts3.projectDir,
          lockfileDir: opts3.lockfileDir,
          hardLinkLocalPackages: opts3.injectWorkspacePackages === true || wantedDependency.injected,
          saveWorkspaceProtocol: ctx.saveWorkspaceProtocol,
          calcSpecifier: opts3.calcSpecifier,
          pinnedVersion: opts3.pinnedVersion
        }),
        latest: meta["dist-tags"].latest
      };
    }
    const localVersion = pickMatchingLocalVersionOrNull(workspacePkgsMatchingName, spec);
    if (localVersion && (import_semver14.default.gt(localVersion, pickedPackage.version) || opts3.preferWorkspacePackages)) {
      return {
        ...resolveFromLocalPackage(workspacePkgsMatchingName.get(localVersion), spec, {
          wantedDependency,
          projectDir: opts3.projectDir,
          lockfileDir: opts3.lockfileDir,
          hardLinkLocalPackages: opts3.injectWorkspacePackages === true || wantedDependency.injected,
          saveWorkspaceProtocol: ctx.saveWorkspaceProtocol,
          calcSpecifier: opts3.calcSpecifier,
          pinnedVersion: opts3.pinnedVersion
        }),
        latest: meta["dist-tags"].latest
      };
    }
  }
  warnOnceOnHeldBackUpdate(ctx, opts3, spec, meta, pickedPackage.version);
  const id = `${pickedPackage.name}@${pickedPackage.version}`;
  const resolution = {
    integrity: getIntegrity(pickedPackage.dist),
    tarball: normalizeRegistryUrl(pickedPackage.dist.tarball)
  };
  let normalizedBareSpecifier;
  if (opts3.calcSpecifier) {
    normalizedBareSpecifier = spec.normalizedBareSpecifier ?? calcSpecifier({
      wantedDependency,
      spec,
      version: pickedPackage.version,
      defaultPinnedVersion: opts3.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: opts3.publishedBy,
      publishedByExclude: opts3.publishedByExclude
    })
  };
}
async function resolveJsr(ctx, wantedDependency, opts3) {
  if (!wantedDependency.bareSpecifier)
    return null;
  const spec = parseJsrSpecifierToRegistryPackageSpec(wantedDependency.bareSpecifier, wantedDependency.alias, opts3.defaultTag ?? "latest");
  if (spec == null)
    return null;
  const picked = await pickFromSimpleRegistry(ctx, wantedDependency, opts3, spec, ctx.registries["@jsr"]);
  return {
    ...picked,
    normalizedBareSpecifier: opts3.calcSpecifier ? calcPrefixedSpecifier("jsr:", spec.jsrPkgName, wantedDependency, picked.manifest.version, opts3.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, opts3) {
  if (!wantedDependency.bareSpecifier)
    return null;
  const spec = parseNamedRegistrySpecifierToRegistryPackageSpec(wantedDependency.bareSpecifier, ctx.namedRegistryNames, wantedDependency.alias, opts3.defaultTag ?? "latest");
  if (spec == null)
    return null;
  const registry = ctx.namedRegistries[spec.registryName];
  if (!registry)
    return null;
  const picked = await pickFromSimpleRegistry(ctx, wantedDependency, opts3, spec, registry);
  return {
    ...picked,
    normalizedBareSpecifier: opts3.calcSpecifier ? calcPrefixedSpecifier(`${spec.registryName}:`, spec.name, wantedDependency, picked.manifest.version, opts3.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, opts3, spec, registry) {
  const authHeaderValue = ctx.getAuthHeaderValueByURI(registry, { pkgName: spec.name });
  const { meta, pickedPackage } = await ctx.pickPackage(spec, {
    pickLowestVersion: opts3.pickLowestVersion,
    publishedBy: opts3.publishedBy,
    publishedByExclude: opts3.publishedByExclude,
    authHeaderValue,
    dryRun: opts3.dryRun === true,
    preferredVersionSelectors: preferredVersionSelectorsFor(opts3, spec.name),
    registry,
    includeLatestTag: opts3.update === "latest",
    updateChecksums: opts3.updateChecksums,
    optional: wantedDependency.optional
  });
  if (pickedPackage == null) {
    throw new NoMatchingVersionError({ wantedDependency, packageMeta: meta, registry });
  }
  warnOnceOnHeldBackUpdate(ctx, opts3, spec, meta, pickedPackage.version);
  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: opts3.publishedBy,
      publishedByExclude: opts3.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_semver14.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, opts3) {
  if (!wantedDependency.bareSpecifier?.startsWith("workspace:")) {
    return null;
  }
  const bareSpecifier = workspacePrefToNpm(wantedDependency.bareSpecifier);
  const spec = parseBareSpecifier(bareSpecifier, wantedDependency.alias, opts3.defaultTag, opts3.registry);
  if (spec == null)
    throw new Error(`Invalid workspace: spec (${wantedDependency.bareSpecifier})`);
  if (opts3.workspacePackages == null) {
    throw new Error("Cannot resolve package from workspace because opts.workspacePackages is not defined");
  }
  if (!opts3.projectDir) {
    throw new Error("Cannot resolve package from workspace because opts.projectDir is not defined");
  }
  return tryResolveFromWorkspacePackages(opts3.workspacePackages, spec, {
    wantedDependency,
    projectDir: opts3.projectDir,
    hardLinkLocalPackages: opts3.injectWorkspacePackages === true || wantedDependency.injected,
    lockfileDir: opts3.lockfileDir,
    update: opts3.update,
    saveWorkspaceProtocol: opts3.saveWorkspaceProtocol,
    calcSpecifier: opts3.calcSpecifier,
    pinnedVersion: opts3.pinnedVersion
  });
}
function tryResolveFromWorkspacePackages(workspacePackages, spec, opts3) {
  const workspacePkgsMatchingName = workspacePackages.get(spec.name);
  if (!workspacePkgsMatchingName) {
    throw new PnpmError("WORKSPACE_PKG_NOT_FOUND", `In ${path32.relative(process.cwd(), opts3.projectDir)}: "${spec.name}@${opts3.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, opts3.update ? { name: spec.name, fetchSpec: "*", type: "range" } : spec);
  if (!localVersion) {
    const availableVersions = Array.from(workspacePkgsMatchingName.keys()).sort((a2, b) => import_semver14.default.rcompare(a2, b));
    throw new PnpmError("NO_MATCHING_VERSION_INSIDE_WORKSPACE", `In ${path32.relative(process.cwd(), opts3.projectDir)}: No matching version found for ${opts3.wantedDependency.alias ?? ""}@${opts3.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, opts3);
}
function pickMatchingLocalVersionOrNull(versions, spec) {
  switch (spec.type) {
    case "tag":
      return import_semver14.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, opts3) {
  let id;
  let directory;
  const localPackageDir = resolveLocalPackageDir(localPackage);
  if (opts3.hardLinkLocalPackages) {
    directory = (0, import_normalize_path2.default)(path32.relative(opts3.lockfileDir, localPackageDir));
    id = `file:${directory}`;
  } else {
    directory = localPackageDir;
    id = `link:${(0, import_normalize_path2.default)(path32.relative(opts3.projectDir, localPackageDir))}`;
  }
  let normalizedBareSpecifier;
  if (opts3.calcSpecifier) {
    normalizedBareSpecifier = spec.normalizedBareSpecifier ?? calcSpecifierForWorkspaceDep({
      wantedDependency: opts3.wantedDependency,
      spec,
      saveWorkspaceProtocol: opts3.saveWorkspaceProtocol,
      version: localPackage.manifest.version,
      defaultPinnedVersion: opts3.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_semver14.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 path32.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_path2, import_semver14, import_ssri2, import_version_selector_type2, NoMatchingVersionError;
var init_lib38 = __esm({
  "../resolving/npm-resolver/lib/index.js"() {
    "use strict";
    init_lib28();
    init_lib2();
    init_lib3();
    init_lib29();
    init_lib30();
    init_lib4();
    init_lib31();
    init_index_min();
    import_normalize_path2 = __toESM(require_normalize_path(), 1);
    init_es();
    import_semver14 = __toESM(require_semver2(), 1);
    import_ssri2 = __toESM(require_lib18(), 1);
    import_version_selector_type2 = __toESM(require_version_selector_type(), 1);
    init_clearMeta();
    init_fetch2();
    init_memoizeFetchMetadata();
    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(opts3) {
        const dep = opts3.wantedDependency.alias ? `${opts3.wantedDependency.alias}@${opts3.wantedDependency.bareSpecifier ?? ""}` : opts3.wantedDependency.bareSpecifier;
        super("NO_MATCHING_VERSION", `No matching version found for ${dep} while fetching it from ${opts3.registry}`);
        this.packageMeta = opts3.packageMeta;
      }
    };
  }
});

// ../workspace/projects-graph/lib/index.js
import path33 from "node:path";
function createProjectsGraph(projects, opts3) {
  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,
      ...!opts3?.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 = path33.resolve(project.rootDir, spec.fetchSpec);
        const found = projectMapByDir[resolvedPath];
        if (found) {
          return found.rootDir;
        }
        const matchedProject2 = projectMapValues.find((p) => path33.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 = opts3?.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[path33.resolve(project.rootDir)] = project;
  }
  return projectMapByDir;
}
var import_npm_package_arg;
var init_lib39 = __esm({
  "../workspace/projects-graph/lib/index.js"() {
    "use strict";
    import_npm_package_arg = __toESM(require_npa(), 1);
    init_lib38();
    init_lib31();
    init_es();
  }
});

// ../config/package-is-installable/lib/checkEngine.js
function checkEngine(packageId, wantedEngine, currentEngine) {
  if (!wantedEngine)
    return null;
  const unsatisfiedWanted = {};
  if (wantedEngine.node && !import_semver15.default.satisfies(currentEngine.node, wantedEngine.node, { includePrerelease: true })) {
    if (!import_semver15.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_semver15.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_semver15, UnsupportedEngineError;
var init_checkEngine = __esm({
  "../config/package-is-installable/lib/checkEngine.js"() {
    "use strict";
    init_lib2();
    import_semver15 = __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: platform5, arch: arch2 } = 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: platform5, cpu: arch2, 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 i4 = 0; i4 < list2.length; ++i4) {
      tmp = list2[i4];
      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/inferPlatformFromPackageName.js
function inferPlatformFromPackageName(name) {
  const nameWithoutScope = name.includes("/") ? name.slice(name.indexOf("/") + 1) : name;
  const tokens = nameWithoutScope.toLowerCase().split(/[-_.]/);
  const os20 = pickTokenValues(tokens, OS_BY_TOKEN);
  const cpu = pickTokenValues(tokens, CPU_BY_TOKEN);
  const libc = pickTokenValues(tokens, LIBC_BY_TOKEN);
  if (os20 == null && cpu == null && libc == null)
    return null;
  return {
    ...os20 != null ? { os: os20 } : {},
    ...cpu != null ? { cpu } : {},
    ...libc != null ? { libc } : {}
  };
}
function pickTokenValues(tokens, valueByToken) {
  const values = /* @__PURE__ */ new Set();
  for (const token of tokens) {
    const value = valueByToken.get(token);
    if (value != null) {
      values.add(value);
    }
  }
  return values.size > 0 ? Array.from(values) : void 0;
}
var OS_BY_TOKEN, CPU_BY_TOKEN, LIBC_BY_TOKEN;
var init_inferPlatformFromPackageName = __esm({
  "../config/package-is-installable/lib/inferPlatformFromPackageName.js"() {
    "use strict";
    OS_BY_TOKEN = /* @__PURE__ */ new Map([
      ["aix", "aix"],
      ["android", "android"],
      ["darwin", "darwin"],
      ["macos", "darwin"],
      ["osx", "darwin"],
      ["freebsd", "freebsd"],
      ["linux", "linux"],
      ["netbsd", "netbsd"],
      ["openbsd", "openbsd"],
      ["openharmony", "openharmony"],
      ["sunos", "sunos"],
      ["win32", "win32"],
      ["windows", "win32"]
    ]);
    CPU_BY_TOKEN = /* @__PURE__ */ new Map([
      ["arm", "arm"],
      ["armv6", "arm"],
      ["armv7", "arm"],
      ["arm64", "arm64"],
      ["aarch64", "arm64"],
      ["ia32", "ia32"],
      ["loong64", "loong64"],
      ["mips64el", "mips64el"],
      ["ppc64", "ppc64"],
      ["ppc64le", "ppc64"],
      ["riscv64", "riscv64"],
      ["s390x", "s390x"],
      ["x64", "x64"],
      ["amd64", "x64"],
      ["wasm32", "wasm32"]
    ]);
    LIBC_BY_TOKEN = /* @__PURE__ */ new Map([
      ["glibc", "glibc"],
      ["gnu", "glibc"],
      ["gnueabihf", "glibc"],
      ["musl", "musl"],
      ["musleabihf", "musl"]
    ]);
  }
});

// ../config/package-is-installable/lib/index.js
function checkPackageInstallability(pkgId, pkg, options) {
  return checkPackage(pkgId, { engines: pkg.engines, ...effectivePlatform(pkg, options.optional) }, options);
}
function packageIsInstallable(pkgId, pkg, options) {
  const warn = checkPackageInstallability(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 effectivePlatform(pkg, optional) {
  if (!optional || pkg.os != null && pkg.cpu != null && pkg.libc != null)
    return pkg;
  const inferred = inferPlatformFromPackageName(pkg.name);
  if (inferred == null)
    return pkg;
  const pkgDeclaresPlatform = pkg.os != null || pkg.cpu != null || pkg.libc != null;
  if (!pkgDeclaresPlatform && inferred.os == null)
    return pkg;
  return {
    os: pkg.os ?? inferred.os,
    cpu: pkg.cpu ?? inferred.cpu,
    libc: pkg.libc ?? inferred.libc
  };
}
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_lib40 = __esm({
  "../config/package-is-installable/lib/index.js"() {
    "use strict";
    init_lib6();
    init_lib26();
    init_checkEngine();
    init_checkPlatform();
    init_inferPlatformFromPackageName();
    init_inferPlatformFromPackageName();
  }
});

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

// ../cli/utils/lib/promptPageSize.js
function interactivePromptPageSize() {
  const availableRows = process.stdout.rows;
  return availableRows == null ? 7 : Math.max(7, availableRows - 6);
}
var init_promptPageSize = __esm({
  "../cli/utils/lib/promptPageSize.js"() {
    "use strict";
  }
});

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

// ../cli/utils/lib/readProjectManifest.js
async function readProjectManifest2(projectDir, opts3 = {}) {
  const { fileName, manifest, writeProjectManifest: writeProjectManifest2 } = await readProjectManifest(projectDir);
  packageIsInstallable2(projectDir, manifest, opts3);
  return { fileName, manifest, writeProjectManifest: writeProjectManifest2 };
}
async function readProjectManifestOnly2(projectDir, opts3 = {}) {
  const manifest = await readProjectManifestOnly(projectDir);
  packageIsInstallable2(projectDir, manifest, opts3);
  return manifest;
}
async function tryReadProjectManifest2(projectDir, opts3) {
  const { fileName, manifest, writeProjectManifest: writeProjectManifest2 } = await tryReadProjectManifest(projectDir);
  if (manifest == null)
    return { fileName, manifest, writeProjectManifest: writeProjectManifest2 };
  packageIsInstallable2(projectDir, manifest, opts3);
  return { fileName, manifest, writeProjectManifest: writeProjectManifest2 };
}
var init_readProjectManifest = __esm({
  "../cli/utils/lib/readProjectManifest.js"() {
    "use strict";
    init_lib15();
    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;
      }
    };
  }
});

// ../cli/utils/lib/style.js
var TABLE_OPTIONS;
var init_style = __esm({
  "../cli/utils/lib/style.js"() {
    "use strict";
    init_source();
    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_lib41 = __esm({
  "../cli/utils/lib/index.js"() {
    "use strict";
    init_lib24();
    init_packageIsInstallable();
    init_promptPageSize();
    init_readDepNameCompletions();
    init_readProjectManifest();
    init_recursiveSummary();
    init_style();
  }
});

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

// ../../../../../setup-pnpm/store/v11/links/@pnpm/util.lex-comparator/4.0.1/0ae104499689bd688090ffc4ff3941bbca7cd9ee3d45e1f378509b7c83877538/node_modules/@pnpm/util.lex-comparator/dist/index.js
var require_dist4 = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@pnpm/util.lex-comparator/4.0.1/0ae104499689bd688090ffc4ff3941bbca7cd9ee3d45e1f378509b7c83877538/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;
    } });
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/p-map/7.0.6/62d33961703a6a1f5a8afb7be0b7de92b3057197a05078c0958048954b2947a8/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 cleanup2 = () => {
      signal?.removeEventListener("abort", signalListener);
    };
    const resolve4 = (value) => {
      resolve_(value);
      cleanup2();
    };
    const reject3 = (reason) => {
      isRejected = true;
      isResolved = true;
      reject_(reason);
      cleanup2();
    };
    if (signal) {
      if (signal.aborted) {
        reject3(signal.reason);
        return;
      }
      signal.addEventListener("abort", signalListener, { once: true });
    }
    const next2 = async () => {
      if (isResolved) {
        return;
      }
      const nextItem = await iterator.next();
      const index2 = 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) {
            resolve4(result2);
            return;
          }
          const pureResult = [];
          for (const [index3, value] of result2.entries()) {
            if (skippedIndexesMap.get(index3) === pMapSkip) {
              continue;
            }
            pureResult.push(value);
          }
          resolve4(pureResult);
        }
        return;
      }
      resolvingCount++;
      (async () => {
        try {
          const element = await nextItem.value;
          if (isResolved) {
            return;
          }
          const value = await mapper(element, index2);
          if (value === pMapSkip) {
            skippedIndexesMap.set(index2, value);
          }
          result2[index2] = 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 index2 = 0; index2 < concurrency; index2++) {
        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 index2 = 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 currentIndex = index2++;
            const returnValue = await mapper(await value, currentIndex);
            pendingPromisesCount--;
            if (returnValue === pMapSkip) {
              const index3 = promises.indexOf(promise2);
              if (index3 > 0) {
                promises.splice(index3, 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({
  "../../../../../setup-pnpm/store/v11/links/@/p-map/7.0.6/62d33961703a6a1f5a8afb7be0b7de92b3057197a05078c0958048954b2947a8/node_modules/p-map/index.js"() {
    pMapSkip = /* @__PURE__ */ Symbol("skip");
  }
});

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

// ../workspace/projects-reader/lib/findPackages.js
import { promises as fs23 } from "node:fs";
import path34 from "node:path";
import util8 from "node:util";
async function findPackages(root, opts3) {
  opts3 = opts3 ?? {};
  const globOpts = { ...opts3, cwd: root, expandDirectories: false };
  globOpts.ignore = opts3.ignore ?? DEFAULT_IGNORE;
  const patterns = normalizePatterns(opts3.patterns ?? [".", "**"]);
  delete globOpts.patterns;
  const paths3 = await glob(patterns, globOpts);
  if (opts3.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) => path34.join(root, manifestPath)).sort((path1, path240) => (0, import_util3.lexCompare)(path34.dirname(path1), path34.dirname(path240)))),
      async (manifestPath) => {
        try {
          const rootDir = path34.dirname(manifestPath);
          return {
            rootDir,
            rootDirRealPath: await fs23.realpath(rootDir),
            ...await readExactProjectManifest(manifestPath)
          };
        } catch (err2) {
          if (util8.types.isNativeError(err2) && "code" in err2 && err2.code === "ENOENT") {
            return null;
          }
          throw err2;
        }
      }
    ),
    Boolean
  );
}
function normalizePatterns(patterns) {
  const normalizedPatterns = [];
  for (const pattern of patterns) {
    normalizedPatterns.push(pattern.replace(/\/?$/, "/package.{json,yaml,json5}"));
  }
  return normalizedPatterns;
}
var import_util3, DEFAULT_IGNORE;
var init_findPackages = __esm({
  "../workspace/projects-reader/lib/findPackages.js"() {
    "use strict";
    import_util3 = __toESM(require_dist4(), 1);
    init_lib15();
    init_p_filter();
    init_dist2();
    DEFAULT_IGNORE = [
      "**/node_modules/**",
      "**/bower_components/**",
      "**/test/**",
      "**/tests/**"
    ];
  }
});

// ../workspace/projects-reader/lib/index.js
async function findWorkspaceProjects(workspaceRoot, opts3) {
  const projects = await findWorkspaceProjectsNoCheck(workspaceRoot, opts3);
  for (const project of projects) {
    packageIsInstallable2(project.rootDir, project.manifest, {
      ...opts3,
      supportedArchitectures: opts3?.supportedArchitectures ?? {
        os: ["current"],
        cpu: ["current"],
        libc: ["current"]
      }
    });
    if (opts3?.sharedWorkspaceLockfile && project.rootDir !== workspaceRoot) {
      checkNonRootProjectManifest(project);
    }
  }
  return projects;
}
async function findWorkspaceProjectsNoCheck(workspaceRoot, opts3) {
  const projects = await findPackages(workspaceRoot, {
    ignore: [
      "**/node_modules/**",
      "**/bower_components/**"
    ],
    includeRoot: true,
    patterns: opts3?.patterns
  });
  projects.sort((project1, project2) => (0, import_util4.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) {
  const message = propertyPath === "resolutions" ? `The field "${propertyPath}" was found in ${prefix}/package.json. This will not take effect. Configure dependency overrides in pnpm-workspace.yaml using the "overrides" field instead.` : `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.`;
  logger.warn({
    message,
    prefix
  });
}
var import_util4, uselessNonRootManifestFields;
var init_lib42 = __esm({
  "../workspace/projects-reader/lib/index.js"() {
    "use strict";
    init_lib41();
    init_lib3();
    import_util4 = __toESM(require_dist4(), 1);
    init_findPackages();
    init_findPackages();
    uselessNonRootManifestFields = ["resolutions"];
  }
});

// ../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/versioning.js
function assertValidWorkspaceManifestVersioning(manifest) {
  if (manifest.versioning == null) {
    return;
  }
  const versioning = assertPlainObject(manifest.versioning, "versioning");
  if (versioning.fixed != null) {
    if (!Array.isArray(versioning.fixed)) {
      throw new InvalidWorkspaceManifestError(`Expected versioning.fixed to be an array of arrays, but found - ${typeof versioning.fixed}`);
    }
    for (const group of versioning.fixed) {
      if (!Array.isArray(group) || group.some((name) => typeof name !== "string" || name === "")) {
        throw new InvalidWorkspaceManifestError("Expected every versioning.fixed group to be an array of package names");
      }
    }
  }
  if (versioning.epics != null) {
    if (!Array.isArray(versioning.epics)) {
      throw new InvalidWorkspaceManifestError(`Expected versioning.epics to be an array, but found - ${typeof versioning.epics}`);
    }
    for (const epic of versioning.epics) {
      const entry = assertPlainObject(epic, "versioning.epics entry");
      if (typeof entry.lead !== "string" || entry.lead === "") {
        throw new InvalidWorkspaceManifestError('Expected every versioning.epics entry to have a non-empty "lead" package reference');
      }
      if (!Array.isArray(entry.packages) || entry.packages.length === 0 || entry.packages.some((selector) => typeof selector !== "string" || selector === "")) {
        throw new InvalidWorkspaceManifestError(`Expected versioning.epics entry for "${entry.lead}" to have a non-empty "packages" array of selector strings`);
      }
    }
  }
  if (versioning.ignore != null) {
    if (!Array.isArray(versioning.ignore) || versioning.ignore.some((name) => typeof name !== "string" || name === "")) {
      throw new InvalidWorkspaceManifestError("Expected versioning.ignore to be an array of package names");
    }
  }
  if (versioning.maxBump != null) {
    if (!BUMP_TYPES.includes(versioning.maxBump)) {
      throw new InvalidWorkspaceManifestError(`Expected versioning.maxBump to be one of ${BUMP_TYPES.join(", ")}, but found - ${String(versioning.maxBump)}`);
    }
  }
  if (versioning.lanes != null) {
    const lanes = assertPlainObject(versioning.lanes, "versioning.lanes");
    for (const [pkgName, lane2] of Object.entries(lanes)) {
      if (typeof lane2 !== "string" || lane2 === "") {
        throw new InvalidWorkspaceManifestError(`Expected versioning.lanes entry for ${pkgName} to be a non-empty lane name`);
      }
      if (lane2.toLowerCase() === "main") {
        throw new InvalidWorkspaceManifestError(`Invalid versioning.lanes entry for ${pkgName}: "main" is the reserved default lane. Remove the entry instead.`);
      }
    }
  }
  if (versioning.changelog != null) {
    const changelog = assertPlainObject(versioning.changelog, "versioning.changelog");
    if (changelog.format != null && typeof changelog.format !== "string") {
      throw new InvalidWorkspaceManifestError(`Expected versioning.changelog.format to be a string, but found - ${typeof changelog.format}`);
    }
    if (changelog.storage != null && !CHANGELOG_STORAGE_MODES.includes(changelog.storage)) {
      throw new InvalidWorkspaceManifestError(`Expected versioning.changelog.storage to be one of ${CHANGELOG_STORAGE_MODES.join(", ")}, but found - ${String(changelog.storage)}`);
    }
  }
}
function assertPlainObject(value, fieldName) {
  if (Array.isArray(value)) {
    throw new InvalidWorkspaceManifestError(`Expected ${fieldName} field to be an object, but found - array`);
  }
  if (typeof value !== "object" || value === null) {
    throw new InvalidWorkspaceManifestError(`Expected ${fieldName} field to be an object, but found - ${value === null ? "null" : typeof value}`);
  }
  return value;
}
var BUMP_TYPES, CHANGELOG_STORAGE_MODES;
var init_versioning2 = __esm({
  "../workspace/workspace-manifest-reader/lib/versioning.js"() {
    "use strict";
    init_InvalidWorkspaceManifestError();
    BUMP_TYPES = ["patch", "minor", "major"];
    CHANGELOG_STORAGE_MODES = ["registry", "repository"];
  }
});

// ../workspace/workspace-manifest-reader/lib/index.js
import path35 from "node:path";
import util9 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(path35.join(dir, cfgFileName));
  } catch (err2) {
    if (util9.types.isNativeError(err2) && "code" in err2 && err2.code === "ENOENT") {
      return void 0;
    }
    throw err2;
  }
}
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);
  assertValidWorkspaceManifestVersioning(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_lib43 = __esm({
  "../workspace/workspace-manifest-reader/lib/index.js"() {
    "use strict";
    init_lib();
    init_read_yaml_file();
    init_catalogs();
    init_InvalidWorkspaceManifestError();
    init_versioning2();
  }
});

// ../workspace/projects-filter/lib/filterProjectsFromDir.js
var init_filterProjectsFromDir = __esm({
  "../workspace/projects-filter/lib/filterProjectsFromDir.js"() {
    "use strict";
    init_lib42();
    init_lib43();
    init_lib44();
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/empathic/2.0.1/0eab5adb775ddf3abf1e76958444030af2e4374b15405d889ce770fcbb0e93f5/node_modules/empathic/resolve.mjs
import { isAbsolute as isAbsolute2, join as join2, resolve as resolve3 } from "node:path";
function absolute(input, root) {
  return isAbsolute2(input) ? input : resolve3(root || ".", input);
}
var init_resolve = __esm({
  "../../../../../setup-pnpm/store/v11/links/@/empathic/2.0.1/0eab5adb775ddf3abf1e76958444030af2e4374b15405d889ce770fcbb0e93f5/node_modules/empathic/resolve.mjs"() {
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/empathic/2.0.1/0eab5adb775ddf3abf1e76958444030af2e4374b15405d889ce770fcbb0e93f5/node_modules/empathic/walk.mjs
import { dirname as dirname2 } from "node:path";
function up(base, options) {
  let { last, cwd } = options || {};
  let tmp = absolute(base, cwd);
  let root = absolute(last || "/", cwd);
  let prev, arr = [];
  while (prev !== root) {
    arr.push(tmp);
    tmp = dirname2(prev = tmp);
    if (tmp === prev) break;
  }
  return arr;
}
var init_walk = __esm({
  "../../../../../setup-pnpm/store/v11/links/@/empathic/2.0.1/0eab5adb775ddf3abf1e76958444030af2e4374b15405d889ce770fcbb0e93f5/node_modules/empathic/walk.mjs"() {
    init_resolve();
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/empathic/2.0.1/0eab5adb775ddf3abf1e76958444030af2e4374b15405d889ce770fcbb0e93f5/node_modules/empathic/find.mjs
import { join as join3 } from "node:path";
import { existsSync as existsSync3, statSync as statSync3 } from "node:fs";
function up2(name, options) {
  let dir, tmp;
  let start = options && options.cwd || "";
  for (dir of up(start, options)) {
    tmp = join3(dir, name);
    if (existsSync3(tmp)) return tmp;
  }
}
function any(names, options) {
  let dir, start = options && options.cwd || "";
  let j2 = 0, len = names.length, tmp;
  for (dir of up(start, options)) {
    for (j2 = 0; j2 < len; j2++) {
      tmp = join3(dir, names[j2]);
      if (existsSync3(tmp)) return tmp;
    }
  }
}
var init_find2 = __esm({
  "../../../../../setup-pnpm/store/v11/links/@/empathic/2.0.1/0eab5adb775ddf3abf1e76958444030af2e4374b15405d889ce770fcbb0e93f5/node_modules/empathic/find.mjs"() {
    init_walk();
  }
});

// ../workspace/projects-filter/lib/getChangedProjects.js
import assert2 from "node:assert";
import path36 from "node:path";
import util10 from "node:util";
async function getChangedProjects(projectDirs, commit, opts3) {
  const gitPath = up2(".git", { cwd: opts3.workspaceDir });
  const repoRoot = path36.resolve(gitPath ?? opts3.workspaceDir, "..");
  const changedDirs = (await getChangedDirsSinceCommit(commit, opts3.workspaceDir, opts3.testPattern ?? [], opts3.changedFilesIgnorePattern ?? [])).map((changedDir) => ({ ...changedDir, dir: path36.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 = path36.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 diff2;
  try {
    diff2 = (await safeExeca("git", [
      "diff",
      "--name-only",
      // Keeps an option-like `<since>` (`--output=...`) from being
      // parsed as a git option — git rejects it as a bad revision.
      "--end-of-options",
      commit,
      "--",
      workingDir
    ], { cwd: workingDir })).stdout;
  } catch (err2) {
    assert2(util10.types.isNativeError(err2));
    throw new PnpmError("FILTER_CHANGED", `Filtering by changed packages failed. ${"stderr" in err2 ? err2.stderr : ""}`);
  }
  const changedDirs = /* @__PURE__ */ new Map();
  if (!diff2) {
    return [];
  }
  const allChangedFiles = diff2.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 = path36.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_find2();
    init_lib25();
    micromatch = __toESM(require_micromatch(), 1);
  }
});

// ../workspace/projects-filter/lib/parseProjectSelector.js
import path37 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: path37.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] && path37.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, opts3) {
  const allProjects = await findWorkspaceProjects(workspaceDir, {
    engineStrict: opts3?.engineStrict,
    patterns: opts3.patterns,
    sharedWorkspaceLockfile: opts3.sharedWorkspaceLockfile,
    nodeVersion: opts3.nodeVersion,
    supportedArchitectures: opts3.supportedArchitectures
  });
  return {
    allProjects,
    ...await filterProjects(allProjects, filter14, opts3)
  };
}
async function filterProjects(projects, filter14, opts3) {
  const projectSelectors = filter14.map(({ filter: f, followProdDepsOnly }) => ({ ...parseProjectSelector(f, opts3.prefix), followProdDepsOnly }));
  return filterProjectsBySelectorObjects(projects, projectSelectors, opts3);
}
async function filterProjectsBySelectorObjects(projects, projectSelectors, opts3) {
  const [prodProjectSelectors, allProjectSelectors] = partition_default(({ followProdDepsOnly }) => !!followProdDepsOnly, projectSelectors);
  if (allProjectSelectors.length > 0 || prodProjectSelectors.length > 0) {
    let filteredGraph;
    const { graph } = createProjectsGraph(projects, { linkWorkspacePackages: opts3.linkWorkspacePackages });
    if (allProjectSelectors.length > 0) {
      filteredGraph = await filterWorkspaceProjects(graph, allProjectSelectors, {
        workspaceDir: opts3.workspaceDir,
        testPattern: opts3.testPattern,
        changedFilesIgnorePattern: opts3.changedFilesIgnorePattern,
        useGlobDirFiltering: opts3.useGlobDirFiltering
      });
    }
    let prodFilteredGraph;
    let prodGraph;
    if (prodProjectSelectors.length > 0) {
      prodGraph = createProjectsGraph(projects, { ignoreDevDeps: true, linkWorkspacePackages: opts3.linkWorkspacePackages }).graph;
      prodFilteredGraph = await filterWorkspaceProjects(prodGraph, prodProjectSelectors, {
        workspaceDir: opts3.workspaceDir,
        testPattern: opts3.testPattern,
        changedFilesIgnorePattern: opts3.changedFilesIgnorePattern,
        useGlobDirFiltering: opts3.useGlobDirFiltering
      });
    }
    let prodOnlySelectedProjectDirs;
    if (prodFilteredGraph != null) {
      const regularSelectedProjectDirs = new Set(Object.keys(filteredGraph?.selectedProjectsGraph ?? {}));
      prodOnlySelectedProjectDirs = Object.keys(prodFilteredGraph.selectedProjectsGraph).filter((projectDir) => !regularSelectedProjectDirs.has(projectDir));
    }
    return {
      allProjectsGraph: graph,
      selectedProjectsGraph: {
        ...prodFilteredGraph?.selectedProjectsGraph,
        ...filteredGraph?.selectedProjectsGraph
      },
      prodAllProjectsGraph: prodGraph,
      prodOnlySelectedProjectDirs,
      unmatchedFilters: [
        ...prodFilteredGraph !== void 0 ? prodFilteredGraph.unmatchedFilters : [],
        ...filteredGraph !== void 0 ? filteredGraph.unmatchedFilters : []
      ]
    };
  } else {
    const { graph } = createProjectsGraph(projects, { linkWorkspacePackages: opts3.linkWorkspacePackages });
    return { allProjectsGraph: graph, selectedProjectsGraph: graph, unmatchedFilters: [] };
  }
}
async function filterWorkspaceProjects(projectsGraph, projectSelectors, opts3) {
  const [excludeSelectors, includeSelectors] = partition_default((selector) => selector.exclude === true, projectSelectors);
  const fg = _filterGraph.bind(null, projectsGraph, opts3);
  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, opts3, 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 = opts3.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: opts3.changedFilesIgnorePattern,
        testPattern: opts3.testPattern,
        workspaceDir: selector.parentDir ?? opts3.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, opts3) {
  for (const nextNodeId2 of nextNodeIds) {
    if (!walked.has(nextNodeId2)) {
      if (opts3.includeRoot) {
        walked.add(nextNodeId2);
      }
      if (graph[nextNodeId2])
        pickSubgraph(graph, graph[nextNodeId2], walked, { includeRoot: true });
    }
  }
}
var micromatch2;
var init_lib44 = __esm({
  "../workspace/projects-filter/lib/index.js"() {
    "use strict";
    init_lib27();
    init_lib39();
    init_lib42();
    init_is_subdir();
    micromatch2 = __toESM(require_micromatch(), 1);
    init_es();
    init_filterProjectsFromDir();
    init_getChangedProjects();
    init_parseProjectSelector();
    init_getChangedProjects();
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/signal-exit/3.0.7/17684ddc6565dcb0656eebf5baa466fb9508591bfb94e71b7cceef0c0d3afced/node_modules/signal-exit/signals.js
var require_signals2 = __commonJS({
  "../../../../../setup-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"
      );
    }
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/signal-exit/3.0.7/17684ddc6565dcb0656eebf5baa466fb9508591bfb94e71b7cceef0c0d3afced/node_modules/signal-exit/index.js
var require_signal_exit = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/signal-exit/3.0.7/17684ddc6565dcb0656eebf5baa466fb9508591bfb94e71b7cceef0c0d3afced/node_modules/signal-exit/index.js"(exports2, module2) {
    var process25 = global.process;
    var processOk2 = function(process26) {
      return process26 && typeof process26 === "object" && typeof process26.removeListener === "function" && typeof process26.emit === "function" && typeof process26.reallyExit === "function" && typeof process26.listeners === "function" && typeof process26.kill === "function" && typeof process26.pid === "number" && typeof process26.on === "function";
    };
    if (!processOk2(process25)) {
      module2.exports = function() {
        return function() {
        };
      };
    } else {
      assert13 = __require("assert");
      signals2 = require_signals2();
      isWin2 = /^win/i.test(process25.platform);
      EE = __require("events");
      if (typeof EE !== "function") {
        EE = EE.EventEmitter;
      }
      if (process25.__signal_exit_emitter__) {
        emitter = process25.__signal_exit_emitter__;
      } else {
        emitter = process25.__signal_exit_emitter__ = new EE();
        emitter.count = 0;
        emitter.emitted = {};
      }
      if (!emitter.infinite) {
        emitter.setMaxListeners(Infinity);
        emitter.infinite = true;
      }
      module2.exports = function(cb, opts3) {
        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 (opts3 && opts3.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 {
            process25.removeListener(sig, sigListeners[sig]);
          } catch (er) {
          }
        });
        process25.emit = originalProcessEmit;
        process25.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 = process25.listeners(sig);
          if (listeners.length === emitter.count) {
            unload2();
            emit("exit", null, sig);
            emit("afterexit", null, sig);
            if (isWin2 && sig === "SIGHUP") {
              sig = "SIGINT";
            }
            process25.kill(process25.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 {
            process25.on(sig, sigListeners[sig]);
            return true;
          } catch (er) {
            return false;
          }
        });
        process25.emit = processEmit;
        process25.reallyExit = processReallyExit;
      };
      module2.exports.load = load3;
      originalProcessReallyExit = process25.reallyExit;
      processReallyExit = function processReallyExit2(code) {
        if (!processOk2(global.process)) {
          return;
        }
        process25.exitCode = code || /* istanbul ignore next */
        0;
        emit("exit", process25.exitCode, null);
        emit("afterexit", process25.exitCode, null);
        originalProcessReallyExit.call(process25, process25.exitCode);
      };
      originalProcessEmit = process25.emit;
      processEmit = function processEmit2(ev, arg) {
        if (ev === "exit" && processOk2(global.process)) {
          if (arg !== void 0) {
            process25.exitCode = arg;
          }
          var ret2 = originalProcessEmit.apply(this, arguments);
          emit("exit", process25.exitCode, null);
          emit("afterexit", process25.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;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/array-find-index/1.0.2/ba2f8abe802fb0ce7969694cfd5a70dc7c270ff16475db02f462e482b2531e6c/node_modules/array-find-index/index.js
var require_array_find_index = __commonJS({
  "../../../../../setup-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 i4 = 0; i4 < len; i4++) {
        if (predicate.call(ctx, list2[i4], i4, list2)) {
          return i4;
        }
      }
      return -1;
    };
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/currently-unhandled/0.4.1/1b7833252fe91dba33cffce977676c4444bcec386b656990ce03ee7db0173619/node_modules/currently-unhandled/core.js
var require_core3 = __commonJS({
  "../../../../../setup-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 index2 = arrayFindIndex(unhandledRejections, function(x3) {
          return x3.promise === promise2;
        });
        unhandledRejections.splice(index2, 1);
      }
      function currentlyUnhandled() {
        return unhandledRejections.map(function(entry) {
          return {
            reason: entry.reason,
            promise: entry.promise
          };
        });
      }
      return {
        onUnhandledRejection,
        onRejectionHandled,
        currentlyUnhandled
      };
    };
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/currently-unhandled/0.4.1/1b7833252fe91dba33cffce977676c4444bcec386b656990ce03ee7db0173619/node_modules/currently-unhandled/index.js
var require_currently_unhandled = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/currently-unhandled/0.4.1/1b7833252fe91dba33cffce977676c4444bcec386b656990ce03ee7db0173619/node_modules/currently-unhandled/index.js"(exports2, module2) {
    "use strict";
    var core2 = require_core3();
    module2.exports = function(p) {
      p = p || process;
      var c3 = core2();
      p.on("unhandledRejection", c3.onUnhandledRejection);
      p.on("rejectionHandled", c3.onRejectionHandled);
      return c3.currentlyUnhandled;
    };
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/loud-rejection/2.2.0/f71f4e4b9b3de6aef07afb910307b5a0b1f927b32eaa381d5bacd112a7c39bc4/node_modules/loud-rejection/index.js
var require_loud_rejection = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/loud-rejection/2.2.0/f71f4e4b9b3de6aef07afb910307b5a0b1f927b32eaa381d5bacd112a7c39bc4/node_modules/loud-rejection/index.js"(exports2, module2) {
    "use strict";
    var util70 = __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: ${util70.inspect(error)}`);
            }
            log3(error.stack);
          }
          process.exitCode = 1;
        }
      });
    };
    module2.exports = loudRejection2;
    module2.exports.default = loudRejection2;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/openpgp/6.3.1/60c2a31cf6cae63193823abbdc2c24d5dbda8d0fc2a36569febee3624da47bc0/node_modules/openpgp/dist/node/openpgp.mjs
import { createRequire as createRequire6 } from "module";
import * as nc from "node:crypto";
function _mergeNamespaces(n2, m) {
  m.forEach(function(e) {
    e && typeof e !== "string" && !Array.isArray(e) && Object.keys(e).forEach(function(k2) {
      if (k2 !== "default" && !(k2 in n2)) {
        var d3 = Object.getOwnPropertyDescriptor(e, k2);
        Object.defineProperty(n2, k2, d3.get ? d3 : {
          enumerable: true,
          get: function() {
            return e[k2];
          }
        });
      }
    });
  });
  return Object.freeze(n2);
}
function isArrayStream(input) {
  return input && input.getReader && Array.isArray(input);
}
function Writer(input) {
  if (!isArrayStream(input)) {
    const writer = input.getWriter();
    const releaseLock = writer.releaseLock;
    writer.releaseLock = () => {
      writer.closed.catch(function() {
      });
      releaseLock.call(writer);
    };
    return writer;
  }
  this.stream = input;
}
function isStream2(input) {
  if (isArrayStream(input)) {
    return "array";
  }
  if (globalThis2.ReadableStream && globalThis2.ReadableStream.prototype.isPrototypeOf(input)) {
    return "web";
  }
  if (input && !(globalThis2.ReadableStream && input instanceof globalThis2.ReadableStream) && typeof input._read === "function" && typeof input._readableState === "object") {
    throw new Error("Native Node streams are no longer supported: please manually convert the stream to a WebStream, using e.g. `stream.Readable.toWeb`");
  }
  if (input && input.getReader) {
    return "web-like";
  }
  return false;
}
function isUint8Array2(input) {
  return Uint8Array.prototype.isPrototypeOf(input);
}
function concatUint8Array2(arrays) {
  if (arrays.length === 1) return arrays[0];
  let totalLength = 0;
  for (let i4 = 0; i4 < arrays.length; i4++) {
    if (!isUint8Array2(arrays[i4])) {
      throw new Error("concatUint8Array: Data must be in the form of a Uint8Array");
    }
    totalLength += arrays[i4].length;
  }
  const result2 = new Uint8Array(totalLength);
  let pos = 0;
  arrays.forEach(function(element) {
    result2.set(element, pos);
    pos += element.length;
  });
  return result2;
}
function Reader(input) {
  this.stream = input;
  if (input[externalBuffer]) {
    this[externalBuffer] = input[externalBuffer].slice();
  }
  if (isArrayStream(input)) {
    const reader = input.getReader();
    this._read = reader.read.bind(reader);
    this._releaseLock = () => {
    };
    this._cancel = () => {
    };
    return;
  }
  let streamType = isStream2(input);
  if (streamType) {
    const reader = input.getReader();
    this._read = reader.read.bind(reader);
    this._releaseLock = () => {
      reader.closed.catch(function() {
      });
      reader.releaseLock();
    };
    this._cancel = reader.cancel.bind(reader);
    return;
  }
  let doneReading = false;
  this._read = async () => {
    if (doneReading || doneReadingSet.has(input)) {
      return { value: void 0, done: true };
    }
    doneReading = true;
    return { value: input, done: false };
  };
  this._releaseLock = () => {
    if (doneReading) {
      try {
        doneReadingSet.add(input);
      } catch {
      }
    }
  };
}
function toStream(input) {
  if (isStream2(input)) {
    return input;
  }
  return new ReadableStream({
    start(controller) {
      controller.enqueue(input);
      controller.close();
    }
  });
}
function toArrayStream(input) {
  const streamType = isStream2(input);
  if (streamType) {
    if (streamType !== "array") {
      throw new Error("Can't convert Stream to ArrayStream here, call `readToEnd` first");
    }
    return input;
  }
  const stream2 = new ArrayStream();
  (async () => {
    const writer = getWriter(stream2);
    await writer.write(input);
    await writer.close();
  })();
  return stream2;
}
function concat(list2) {
  if (list2.some((stream2) => isStream2(stream2) && !isArrayStream(stream2))) {
    return concatStream(list2);
  }
  if (list2.some((stream2) => isArrayStream(stream2))) {
    return concatArrayStream(list2);
  }
  if (typeof list2[0] === "string") {
    return list2.join("");
  }
  return concatUint8Array2(list2);
}
function concatStream(list2) {
  const streamedList = list2.map(toStream);
  const transform3 = transformWithCancel(async function(reason) {
    await Promise.all(transforms.map((stream2) => cancel(stream2, reason)));
  });
  let prev = Promise.resolve();
  const transforms = streamedList.map((stream2, i4) => transformPair(stream2, (readable2, _writable) => {
    prev = prev.then(() => pipe2(readable2, transform3.writable, {
      preventClose: i4 !== streamedList.length - 1
    }));
    return prev;
  }));
  return transform3.readable;
}
function concatArrayStream(list2) {
  const result2 = new ArrayStream();
  let prev = Promise.resolve();
  list2.forEach((stream2, i4) => {
    prev = prev.then(() => pipe2(stream2, result2, {
      preventClose: i4 !== list2.length - 1
    }));
    return prev;
  });
  return result2;
}
async function pipe2(input, target2, {
  preventClose = false,
  preventAbort = false,
  preventCancel = false
} = {}) {
  if (isStream2(input) && !isArrayStream(input) && !isArrayStream(target2)) {
    input = toStream(input);
    try {
      if (input[externalBuffer]) {
        const writer2 = getWriter(target2);
        for (let i4 = 0; i4 < input[externalBuffer].length; i4++) {
          await writer2.ready;
          await writer2.write(input[externalBuffer][i4]);
        }
        writer2.releaseLock();
      }
      await input.pipeTo(target2, {
        preventClose,
        preventAbort,
        preventCancel
      });
    } catch {
    }
    return;
  }
  if (!isStream2(input)) {
    input = toArrayStream(input);
  }
  const reader = getReader(input);
  const writer = getWriter(target2);
  try {
    while (true) {
      await writer.ready;
      const { done, value } = await reader.read();
      if (done) {
        if (!preventClose) await writer.close();
        break;
      }
      await writer.write(value);
    }
  } catch (e) {
    if (!preventAbort) await writer.abort(e);
  } finally {
    reader.releaseLock();
    writer.releaseLock();
  }
}
function transformWithCancel(customCancel) {
  let pulled = false;
  let cancelled = false;
  let backpressureChangePromiseResolve, backpressureChangePromiseReject;
  let outputController;
  return {
    readable: new ReadableStream({
      start(controller) {
        outputController = controller;
      },
      pull() {
        if (backpressureChangePromiseResolve) {
          backpressureChangePromiseResolve();
        } else {
          pulled = true;
        }
      },
      async cancel(reason) {
        cancelled = true;
        if (customCancel) {
          await customCancel(reason);
        }
        if (backpressureChangePromiseReject) {
          backpressureChangePromiseReject(reason);
        }
      }
    }, { highWaterMark: 0 }),
    writable: new WritableStream({
      write: async function(chunk) {
        if (cancelled) {
          throw new Error("Stream is cancelled");
        }
        outputController.enqueue(chunk);
        if (!pulled) {
          await new Promise((resolve4, reject3) => {
            backpressureChangePromiseResolve = resolve4;
            backpressureChangePromiseReject = reject3;
          });
          backpressureChangePromiseResolve = null;
          backpressureChangePromiseReject = null;
        } else {
          pulled = false;
        }
      },
      close: outputController.close.bind(outputController),
      abort: outputController.error.bind(outputController)
    })
  };
}
function transform(input, process25 = () => void 0, finish = () => void 0, queuingStrategy = { highWaterMark: 0 }) {
  if (isStream2(input)) {
    return _transformStream(input, process25, finish, queuingStrategy);
  }
  const result1 = process25(input);
  const result2 = finish();
  if (result1 !== void 0 && result2 !== void 0) return concat([result1, result2]);
  return result1 !== void 0 ? result1 : result2;
}
async function transformAsync(input, process25 = async () => void 0, finish = async () => void 0, queuingStrategy = { highWaterMark: 1 }) {
  if (isStream2(input)) {
    return _transformStream(input, process25, finish, queuingStrategy);
  }
  const result1 = await process25(input);
  const result2 = await finish();
  if (result1 !== void 0 && result2 !== void 0) return concat([result1, result2]);
  return result1 !== void 0 ? result1 : result2;
}
function _transformStream(input, process25, finish, queuingStrategy) {
  if (isArrayStream(input)) {
    const output = new ArrayStream();
    (async () => {
      const writer = getWriter(output);
      try {
        const data = await readToEnd(input);
        const result1 = await process25(data);
        const result2 = await finish();
        let result3;
        if (result1 !== void 0 && result2 !== void 0) result3 = concat([result1, result2]);
        else result3 = result1 !== void 0 ? result1 : result2;
        await writer.write(result3);
        await writer.close();
      } catch (e) {
        await writer.abort(e);
      }
    })();
    return output;
  }
  if (isStream2(input)) {
    let reader;
    let allDone = false;
    return new ReadableStream({
      start() {
        reader = input.getReader();
      },
      async pull(controller) {
        if (allDone) {
          controller.close();
          input.releaseLock();
          return;
        }
        try {
          while (true) {
            const { value, done } = await reader.read();
            allDone = done;
            const result2 = await (done ? finish : process25)(value);
            if (result2 !== void 0) {
              controller.enqueue(result2);
              return;
            }
            if (done) {
              controller.close();
              input.releaseLock();
              return;
            }
          }
        } catch (e) {
          controller.error(e);
        }
      },
      async cancel(reason) {
        await reader.cancel(reason);
      }
    }, queuingStrategy);
  }
  throw new Error("Unreachable");
}
function transformPair(input, fn) {
  if (isStream2(input) && !isArrayStream(input)) {
    let incomingTransformController;
    const incoming = new TransformStream({
      start(controller) {
        incomingTransformController = controller;
      }
    });
    const pipeDonePromise = pipe2(input, incoming.writable);
    const outgoing = transformWithCancel(async function(reason) {
      incomingTransformController.error(reason);
      await pipeDonePromise;
      await new Promise((resolve4) => setTimeout(resolve4));
    });
    fn(incoming.readable, outgoing.writable);
    return outgoing.readable;
  }
  input = toArrayStream(input);
  const output = new ArrayStream();
  fn(input, output);
  return output;
}
function parse5(input, fn) {
  let returnValue;
  const transformed = transformPair(input, (readable2, writable2) => {
    const reader = getReader(readable2);
    reader.remainder = () => {
      reader.releaseLock();
      pipe2(readable2, writable2);
      return transformed;
    };
    returnValue = fn(reader);
  });
  return returnValue;
}
function tee(input) {
  if (isArrayStream(input)) {
    throw new Error("ArrayStream cannot be tee()d, use clone() instead");
  }
  if (isStream2(input)) {
    const teed = toStream(input).tee();
    teed[0][externalBuffer] = teed[1][externalBuffer] = input[externalBuffer];
    return teed;
  }
  return [slice3(input), slice3(input)];
}
function clone3(input) {
  if (isArrayStream(input)) {
    return input.clone();
  }
  if (isStream2(input)) {
    const teed = tee(input);
    overwrite(input, teed[0]);
    return teed[1];
  }
  return slice3(input);
}
function passiveClone(input) {
  if (isArrayStream(input)) {
    return clone3(input);
  }
  if (isStream2(input)) {
    return new ReadableStream({
      start(controller) {
        const transformed = transformPair(input, async (readable2, writable2) => {
          const reader = getReader(readable2);
          const writer = getWriter(writable2);
          try {
            while (true) {
              await writer.ready;
              const { done, value } = await reader.read();
              if (done) {
                try {
                  controller.close();
                } catch {
                }
                await writer.close();
                return;
              }
              try {
                controller.enqueue(value);
              } catch {
              }
              await writer.write(value);
            }
          } catch (e) {
            controller.error(e);
            await writer.abort(e);
          }
        });
        overwrite(input, transformed);
      }
    });
  }
  return slice3(input);
}
function overwrite(input, clone4) {
  Object.entries(Object.getOwnPropertyDescriptors(input.constructor.prototype)).forEach(([name, descriptor]) => {
    if (name === "constructor") {
      return;
    }
    if (descriptor.value) {
      descriptor.value = descriptor.value.bind(clone4);
    } else {
      descriptor.get = descriptor.get.bind(clone4);
    }
    Object.defineProperty(input, name, descriptor);
  });
}
function slice3(input, begin = 0, end = Infinity) {
  if (isArrayStream(input)) {
    throw new Error("Not implemented");
  }
  if (isStream2(input)) {
    if (begin >= 0 && end >= 0) {
      let reader;
      let bytesRead = 0;
      return new ReadableStream({
        start() {
          reader = input.getReader();
        },
        async pull(controller) {
          try {
            while (true) {
              if (bytesRead < end) {
                const { value, done } = await reader.read();
                if (done) {
                  controller.close();
                  input.releaseLock();
                  return;
                }
                let valueToEnqueue;
                if (bytesRead + value.length >= begin) {
                  valueToEnqueue = slice3(value, Math.max(begin - bytesRead, 0), end - bytesRead);
                }
                bytesRead += value.length;
                if (valueToEnqueue) {
                  controller.enqueue(valueToEnqueue);
                  return;
                }
              } else {
                controller.close();
                input.releaseLock();
                return;
              }
            }
          } catch (e) {
            controller.error(e);
          }
        },
        async cancel(reason) {
          await reader.cancel(reason);
        }
      }, { highWaterMark: 0 });
    }
    if (begin < 0 && (end < 0 || end === Infinity)) {
      let lastBytes = [];
      return transform(input, (value) => {
        if (value.length >= -begin) lastBytes = [value];
        else lastBytes.push(value);
      }, () => slice3(concat(lastBytes), begin, end));
    }
    if (begin === 0 && end < 0) {
      let lastBytes;
      return transform(input, (value) => {
        const returnValue = lastBytes ? concat([lastBytes, value]) : value;
        if (returnValue.length >= -end) {
          lastBytes = slice3(returnValue, end);
          return slice3(returnValue, begin, end);
        }
        lastBytes = returnValue;
      });
    }
    console.warn(`stream.slice(input, ${begin}, ${end}) not implemented efficiently.`);
    return fromAsync(async () => slice3(await readToEnd(input), begin, end));
  }
  if (input[externalBuffer]) {
    input = concat(input[externalBuffer].concat([input]));
  }
  if (isUint8Array2(input)) {
    return input.subarray(begin, end === Infinity ? input.length : end);
  }
  return input.slice(begin, end);
}
async function readToEnd(input, join5 = concat) {
  if (isArrayStream(input)) {
    return input.readToEnd(join5);
  }
  if (isStream2(input)) {
    return getReader(input).readToEnd(join5);
  }
  return input;
}
async function cancel(input, reason) {
  if (isStream2(input)) {
    if (input.cancel) {
      const cancelled = await input.cancel(reason);
      await new Promise((resolve4) => setTimeout(resolve4));
      return cancelled;
    }
    if (input.destroy) {
      input.destroy(reason);
      await new Promise((resolve4) => setTimeout(resolve4));
      return reason;
    }
  }
}
function fromAsync(fn) {
  const arrayStream = new ArrayStream();
  (async () => {
    const writer = getWriter(arrayStream);
    try {
      await writer.write(await fn());
      await writer.close();
    } catch (e) {
      await writer.abort(e);
    }
  })();
  return arrayStream;
}
function getReader(input) {
  return new Reader(input);
}
function getWriter(input) {
  return new Writer(input);
}
function encode$1(data) {
  let buf = new Uint8Array();
  return transform(data, (value) => {
    buf = util11.concatUint8Array([buf, value]);
    const r = [];
    const bytesPerLine = 45;
    const lines = Math.floor(buf.length / bytesPerLine);
    const bytes = lines * bytesPerLine;
    const encoded = encodeChunk(buf.subarray(0, bytes));
    for (let i4 = 0; i4 < lines; i4++) {
      r.push(encoded.substr(i4 * 60, 60));
      r.push("\n");
    }
    buf = buf.subarray(bytes);
    return r.join("");
  }, () => buf.length ? encodeChunk(buf) + "\n" : "");
}
function decode$1(data) {
  let buf = "";
  return transform(data, (value) => {
    buf += value;
    let spaces = 0;
    const spacechars = [" ", "	", "\r", "\n"];
    for (let i4 = 0; i4 < spacechars.length; i4++) {
      const spacechar = spacechars[i4];
      for (let pos = buf.indexOf(spacechar); pos !== -1; pos = buf.indexOf(spacechar, pos + 1)) {
        spaces++;
      }
    }
    let length = buf.length;
    for (; length > 0 && (length - spaces) % 4 !== 0; length--) {
      if (spacechars.includes(buf[length]))
        spaces--;
    }
    const decoded = decodeChunk(buf.substr(0, length));
    buf = buf.substr(length);
    return decoded;
  }, () => decodeChunk(buf));
}
function b64ToUint8Array(base64) {
  return decode$1(base64.replace(/-/g, "+").replace(/_/g, "/"));
}
function uint8ArrayToB64(bytes, url7) {
  let encoded = encode$1(bytes).replace(/[\r\n]/g, "");
  {
    encoded = encoded.replace(/[+]/g, "-").replace(/[/]/g, "_").replace(/[=]/g, "");
  }
  return encoded;
}
function getType(text) {
  const reHeader = /^-----BEGIN PGP (MESSAGE, PART \d+\/\d+|MESSAGE, PART \d+|SIGNED MESSAGE|MESSAGE|PUBLIC KEY BLOCK|PRIVATE KEY BLOCK|SIGNATURE)-----$/m;
  const header = text.match(reHeader);
  if (!header) {
    throw new Error("Unknown ASCII armor type");
  }
  if (/MESSAGE, PART \d+\/\d+/.test(header[1])) {
    return enums.armor.multipartSection;
  }
  if (/MESSAGE, PART \d+/.test(header[1])) {
    return enums.armor.multipartLast;
  }
  if (/SIGNED MESSAGE/.test(header[1])) {
    return enums.armor.signed;
  }
  if (/MESSAGE/.test(header[1])) {
    return enums.armor.message;
  }
  if (/PUBLIC KEY BLOCK/.test(header[1])) {
    return enums.armor.publicKey;
  }
  if (/PRIVATE KEY BLOCK/.test(header[1])) {
    return enums.armor.privateKey;
  }
  if (/SIGNATURE/.test(header[1])) {
    return enums.armor.signature;
  }
}
function addheader(customComment, config2) {
  let result2 = "";
  if (config2.showVersion) {
    result2 += "Version: " + config2.versionString + "\n";
  }
  if (config2.showComment) {
    result2 += "Comment: " + config2.commentString + "\n";
  }
  if (customComment) {
    result2 += "Comment: " + customComment + "\n";
  }
  result2 += "\n";
  return result2;
}
function getCheckSum(data) {
  const crc = createcrc24(data);
  return encode$1(crc);
}
function createcrc24(input) {
  let crc = 13501623;
  return transform(input, (value) => {
    const len32 = isLittleEndian$1 ? Math.floor(value.length / 4) : 0;
    const arr32 = new Uint32Array(value.buffer, value.byteOffset, len32);
    for (let i4 = 0; i4 < len32; i4++) {
      crc ^= arr32[i4];
      crc = crc_table[0][crc >> 24 & 255] ^ crc_table[1][crc >> 16 & 255] ^ crc_table[2][crc >> 8 & 255] ^ crc_table[3][crc >> 0 & 255];
    }
    for (let i4 = len32 * 4; i4 < value.length; i4++) {
      crc = crc >> 8 ^ crc_table[0][crc & 255 ^ value[i4]];
    }
  }, () => new Uint8Array([crc, crc >> 8, crc >> 16]));
}
function verifyHeaders$1(headers) {
  for (let i4 = 0; i4 < headers.length; i4++) {
    if (!/^([^\s:]|[^\s:][^:]*[^\s:]): .+$/.test(headers[i4])) {
      util11.printDebugError(new Error("Improperly formatted armor header: " + headers[i4]));
    }
    if (!/^(Version|Comment|MessageID|Hash|Charset): .+$/.test(headers[i4])) {
      util11.printDebugError(new Error("Unknown header: " + headers[i4]));
    }
  }
}
function removeChecksum(text) {
  let body = text;
  const lastEquals = text.lastIndexOf("=");
  if (lastEquals >= 0 && lastEquals !== text.length - 1) {
    body = text.slice(0, lastEquals);
  }
  return body;
}
function unarmor(input) {
  return new Promise((resolve4, reject3) => {
    try {
      const reSplit = /^-----[^-]+-----$/m;
      const reEmptyLine = /^[ \f\r\t\u00a0\u2000-\u200a\u202f\u205f\u3000]*$/;
      let type4;
      const headers = [];
      let lastHeaders = headers;
      let headersDone;
      let text = [];
      let textDone;
      const data = decode$1(transformPair(input, async (readable2, writable2) => {
        const reader = getReader(readable2);
        try {
          while (true) {
            let line = await reader.readLine();
            if (line === void 0) {
              throw new Error("Misformed armored text");
            }
            line = util11.removeTrailingSpaces(line.replace(/[\r\n]/g, ""));
            if (!type4) {
              if (reSplit.test(line)) {
                type4 = getType(line);
              }
            } else if (!headersDone) {
              if (reSplit.test(line)) {
                reject3(new Error("Mandatory blank line missing between armor headers and armor data"));
              }
              if (!reEmptyLine.test(line)) {
                lastHeaders.push(line);
              } else {
                verifyHeaders$1(lastHeaders);
                headersDone = true;
                if (textDone || type4 !== enums.armor.signed) {
                  resolve4({ text, data, headers, type: type4 });
                  break;
                }
              }
            } else if (!textDone && type4 === enums.armor.signed) {
              if (!reSplit.test(line)) {
                text.push(line.replace(/^- /, ""));
              } else {
                text = text.join("\r\n");
                textDone = true;
                verifyHeaders$1(lastHeaders);
                lastHeaders = [];
                headersDone = false;
              }
            }
          }
        } catch (e) {
          reject3(e);
          return;
        }
        const writer = getWriter(writable2);
        try {
          while (true) {
            await writer.ready;
            const { done, value } = await reader.read();
            if (done) {
              throw new Error("Misformed armored text");
            }
            const line = value + "";
            if (line.indexOf("=") === -1 && line.indexOf("-") === -1) {
              await writer.write(line);
            } else {
              let remainder = await reader.readToEnd();
              if (!remainder.length)
                remainder = "";
              remainder = line + remainder;
              remainder = util11.removeTrailingSpaces(remainder.replace(/\r/g, ""));
              const parts = remainder.split(reSplit);
              if (parts.length === 1) {
                throw new Error("Misformed armored text");
              }
              const body = removeChecksum(parts[0].slice(0, -1));
              await writer.write(body);
              break;
            }
          }
          await writer.ready;
          await writer.close();
        } catch (e) {
          await writer.abort(e);
        }
      }));
    } catch (e) {
      reject3(e);
    }
  }).then(async (result2) => {
    if (isArrayStream(result2.data)) {
      result2.data = await readToEnd(result2.data);
    }
    return result2;
  });
}
function armor(messageType, body, partIndex, partTotal, customComment, emitChecksum = false, config$1 = config) {
  let text;
  let hash2;
  if (messageType === enums.armor.signed) {
    text = body.text;
    hash2 = body.hash;
    body = body.data;
  }
  const maybeBodyClone = emitChecksum && passiveClone(body);
  const result2 = [];
  switch (messageType) {
    case enums.armor.multipartSection:
      result2.push("-----BEGIN PGP MESSAGE, PART " + partIndex + "/" + partTotal + "-----\n");
      result2.push(addheader(customComment, config$1));
      result2.push(encode$1(body));
      maybeBodyClone && result2.push("=", getCheckSum(maybeBodyClone));
      result2.push("-----END PGP MESSAGE, PART " + partIndex + "/" + partTotal + "-----\n");
      break;
    case enums.armor.multipartLast:
      result2.push("-----BEGIN PGP MESSAGE, PART " + partIndex + "-----\n");
      result2.push(addheader(customComment, config$1));
      result2.push(encode$1(body));
      maybeBodyClone && result2.push("=", getCheckSum(maybeBodyClone));
      result2.push("-----END PGP MESSAGE, PART " + partIndex + "-----\n");
      break;
    case enums.armor.signed:
      result2.push("-----BEGIN PGP SIGNED MESSAGE-----\n");
      result2.push(hash2 ? `Hash: ${hash2}

` : "\n");
      result2.push(text.replace(/^-/mg, "- -"));
      result2.push("\n-----BEGIN PGP SIGNATURE-----\n");
      result2.push(addheader(customComment, config$1));
      result2.push(encode$1(body));
      maybeBodyClone && result2.push("=", getCheckSum(maybeBodyClone));
      result2.push("-----END PGP SIGNATURE-----\n");
      break;
    case enums.armor.message:
      result2.push("-----BEGIN PGP MESSAGE-----\n");
      result2.push(addheader(customComment, config$1));
      result2.push(encode$1(body));
      maybeBodyClone && result2.push("=", getCheckSum(maybeBodyClone));
      result2.push("-----END PGP MESSAGE-----\n");
      break;
    case enums.armor.publicKey:
      result2.push("-----BEGIN PGP PUBLIC KEY BLOCK-----\n");
      result2.push(addheader(customComment, config$1));
      result2.push(encode$1(body));
      maybeBodyClone && result2.push("=", getCheckSum(maybeBodyClone));
      result2.push("-----END PGP PUBLIC KEY BLOCK-----\n");
      break;
    case enums.armor.privateKey:
      result2.push("-----BEGIN PGP PRIVATE KEY BLOCK-----\n");
      result2.push(addheader(customComment, config$1));
      result2.push(encode$1(body));
      maybeBodyClone && result2.push("=", getCheckSum(maybeBodyClone));
      result2.push("-----END PGP PRIVATE KEY BLOCK-----\n");
      break;
    case enums.armor.signature:
      result2.push("-----BEGIN PGP SIGNATURE-----\n");
      result2.push(addheader(customComment, config$1));
      result2.push(encode$1(body));
      maybeBodyClone && result2.push("=", getCheckSum(maybeBodyClone));
      result2.push("-----END PGP SIGNATURE-----\n");
      break;
  }
  return util11.concat(result2);
}
function uint8ArrayToBigInt(bytes) {
  const hexAlphabet = "0123456789ABCDEF";
  let s = "";
  bytes.forEach((v) => {
    s += hexAlphabet[v >> 4] + hexAlphabet[v & 15];
  });
  return BigInt("0x0" + s);
}
function mod$1(a2, m) {
  const reduced = a2 % m;
  return reduced < _0n$8 ? reduced + m : reduced;
}
function selectBigInt(cond, a2, b) {
  const mask = -cond;
  return a2 & mask | b & ~mask;
}
function modExp(b, e, n2) {
  if (n2 === _0n$8)
    throw Error("Modulo cannot be zero");
  if (n2 === _1n$c)
    return BigInt(0);
  if (e < _0n$8)
    throw Error("Unsopported negative exponent");
  let exp = e;
  let x3 = b;
  x3 %= n2;
  let r = BigInt(1);
  while (exp > _0n$8) {
    const lsb = exp & _1n$c;
    exp >>= _1n$c;
    const rx = r * x3 % n2;
    r = selectBigInt(lsb, rx, r);
    x3 = x3 * x3 % n2;
  }
  return r;
}
function abs(x3) {
  return x3 >= _0n$8 ? x3 : -x3;
}
function _egcd(aInput, bInput) {
  let x3 = BigInt(0);
  let y = BigInt(1);
  let xPrev = BigInt(1);
  let yPrev = BigInt(0);
  let a2 = abs(aInput);
  let b = abs(bInput);
  const aNegated = aInput < _0n$8;
  const bNegated = bInput < _0n$8;
  while (b !== _0n$8) {
    const q = a2 / b;
    let tmp = x3;
    x3 = xPrev - q * x3;
    xPrev = tmp;
    tmp = y;
    y = yPrev - q * y;
    yPrev = tmp;
    tmp = b;
    b = a2 % b;
    a2 = tmp;
  }
  return {
    x: aNegated ? -xPrev : xPrev,
    y: bNegated ? -yPrev : yPrev,
    gcd: a2
  };
}
function modInv(a2, n2) {
  const { gcd: gcd2, x: x3 } = _egcd(a2, n2);
  if (gcd2 !== _1n$c) {
    throw new Error("Inverse does not exist");
  }
  return mod$1(x3 + n2, n2);
}
function gcd(aInput, bInput) {
  let a2 = aInput;
  let b = bInput;
  while (b !== _0n$8) {
    const tmp = b;
    b = a2 % b;
    a2 = tmp;
  }
  return a2;
}
function bigIntToNumber(x3) {
  const number = Number(x3);
  if (number > Number.MAX_SAFE_INTEGER) {
    throw new Error("Number can only safely store up to 53 bits");
  }
  return number;
}
function getBit(x3, i4) {
  const bit = x3 >> BigInt(i4) & _1n$c;
  return bit === _0n$8 ? 0 : 1;
}
function bitLength(x3) {
  const target2 = x3 < _0n$8 ? BigInt(-1) : _0n$8;
  let bitlen = 1;
  let tmp = x3;
  while ((tmp >>= _1n$c) !== target2) {
    bitlen++;
  }
  return bitlen;
}
function byteLength(x3) {
  const target2 = x3 < _0n$8 ? BigInt(-1) : _0n$8;
  const _8n2 = BigInt(8);
  let len = 1;
  let tmp = x3;
  while ((tmp >>= _8n2) !== target2) {
    len++;
  }
  return len;
}
function bigIntToUint8Array(x3, endian = "be", length) {
  let hex = x3.toString(16);
  if (hex.length % 2 === 1) {
    hex = "0" + hex;
  }
  const rawLength = hex.length / 2;
  const bytes = new Uint8Array(length || rawLength);
  const offset = length ? length - rawLength : 0;
  let i4 = 0;
  while (i4 < rawLength) {
    bytes[i4 + offset] = parseInt(hex.slice(2 * i4, 2 * i4 + 2), 16);
    i4++;
  }
  if (endian !== "be") {
    bytes.reverse();
  }
  return bytes;
}
function getRandomBytes(length) {
  const webcrypto2 = typeof crypto !== "undefined" ? crypto : nodeCrypto$8?.webcrypto;
  if (webcrypto2?.getRandomValues) {
    const buf = new Uint8Array(length);
    return webcrypto2.getRandomValues(buf);
  } else {
    throw new Error("No secure random number generator available.");
  }
}
function getRandomBigInteger(min, max4) {
  if (max4 < min) {
    throw new Error("Illegal parameter value: max <= min");
  }
  const modulus = max4 - min;
  const bytes = byteLength(modulus);
  const r = uint8ArrayToBigInt(getRandomBytes(bytes + 8));
  return mod$1(r, modulus) + min;
}
function randomProbablePrime(bits2, e, k2) {
  const _30n = BigInt(30);
  const min = _1n$b << BigInt(bits2 - 1);
  const adds = [1, 6, 5, 4, 3, 2, 1, 4, 3, 2, 1, 2, 1, 4, 3, 2, 1, 2, 1, 4, 3, 2, 1, 6, 5, 4, 3, 2, 1, 2];
  let n2 = getRandomBigInteger(min, min << _1n$b);
  let i4 = bigIntToNumber(mod$1(n2, _30n));
  do {
    n2 += BigInt(adds[i4]);
    i4 = (i4 + adds[i4]) % adds.length;
    if (bitLength(n2) > bits2) {
      n2 = mod$1(n2, min << _1n$b);
      n2 += min;
      i4 = bigIntToNumber(mod$1(n2, _30n));
    }
  } while (!isProbablePrime(n2, e, k2));
  return n2;
}
function isProbablePrime(n2, e, k2) {
  if (e && gcd(n2 - _1n$b, e) !== _1n$b) {
    return false;
  }
  if (!divisionTest(n2)) {
    return false;
  }
  if (!fermat(n2)) {
    return false;
  }
  if (!millerRabin(n2, k2)) {
    return false;
  }
  return true;
}
function fermat(n2, b = BigInt(2)) {
  return modExp(b, n2 - _1n$b, n2) === _1n$b;
}
function divisionTest(n2) {
  const _0n2 = BigInt(0);
  return smallPrimes.every((m) => mod$1(n2, m) !== _0n2);
}
function millerRabin(n2, k2, rand) {
  const len = bitLength(n2);
  if (!k2) {
    k2 = Math.max(1, len / 48 | 0);
  }
  const n1 = n2 - _1n$b;
  let s = 0;
  while (!getBit(n1, s)) {
    s++;
  }
  const d3 = n2 >> BigInt(s);
  for (; k2 > 0; k2--) {
    const a2 = getRandomBigInteger(BigInt(2), n1);
    let x3 = modExp(a2, d3, n2);
    if (x3 === _1n$b || x3 === n1) {
      continue;
    }
    let i4;
    for (i4 = 1; i4 < s; i4++) {
      x3 = mod$1(x3 * x3, n2);
      if (x3 === _1n$b) {
        return false;
      }
      if (x3 === n1) {
        break;
      }
    }
    if (i4 === s) {
      return false;
    }
  }
  return true;
}
function nodeHash(type4) {
  if (!nodeCrypto$7 || !nodeCryptoHashes.includes(type4)) {
    return;
  }
  return async function(data) {
    const shasum = nodeCrypto$7.createHash(type4);
    return transform(data, (value) => {
      shasum.update(value);
    }, () => new Uint8Array(shasum.digest()));
  };
}
function nobleHash(nobleHashName, webCryptoHashName) {
  const getNobleHash = async () => {
    const { nobleHashes: nobleHashes2 } = await Promise.resolve().then(function() {
      return noble_hashes;
    });
    const hash2 = nobleHashes2.get(nobleHashName);
    if (!hash2)
      throw new Error("Unsupported hash");
    return hash2;
  };
  return async function(data) {
    if (isArrayStream(data)) {
      data = await readToEnd(data);
    }
    if (util11.isStream(data)) {
      const hash2 = await getNobleHash();
      const hashInstance = hash2.create();
      return transform(data, (value) => {
        hashInstance.update(value);
      }, () => hashInstance.digest());
    } else if (webCrypto$8 && webCryptoHashName) {
      return new Uint8Array(await webCrypto$8.digest(webCryptoHashName, data));
    } else {
      const hash2 = await getNobleHash();
      return hash2(data);
    }
  };
}
function computeDigest(algo, data) {
  switch (algo) {
    case enums.hash.md5:
      return md5$1(data);
    case enums.hash.sha1:
      return sha1$2(data);
    case enums.hash.ripemd:
      return ripemd(data);
    case enums.hash.sha256:
      return sha256$2(data);
    case enums.hash.sha384:
      return sha384$2(data);
    case enums.hash.sha512:
      return sha512$2(data);
    case enums.hash.sha224:
      return sha224$2(data);
    case enums.hash.sha3_256:
      return sha3_256$1(data);
    case enums.hash.sha3_512:
      return sha3_512$1(data);
    default:
      throw new Error("Unsupported hash function");
  }
}
function getHashByteLength(algo) {
  switch (algo) {
    case enums.hash.md5:
      return 16;
    case enums.hash.sha1:
    case enums.hash.ripemd:
      return 20;
    case enums.hash.sha256:
      return 32;
    case enums.hash.sha384:
      return 48;
    case enums.hash.sha512:
      return 64;
    case enums.hash.sha224:
      return 28;
    case enums.hash.sha3_256:
      return 32;
    case enums.hash.sha3_512:
      return 64;
    default:
      throw new Error("Invalid hash algorithm.");
  }
}
function getPKCS1Padding(length) {
  const result2 = new Uint8Array(length);
  let count2 = 0;
  while (count2 < length) {
    const randomBytes2 = getRandomBytes(length - count2);
    for (let i4 = 0; i4 < randomBytes2.length; i4++) {
      if (randomBytes2[i4] !== 0) {
        result2[count2++] = randomBytes2[i4];
      }
    }
  }
  return result2;
}
function emeEncode(message, keyLength) {
  const mLength = message.length;
  if (mLength > keyLength - 11) {
    throw new Error("Message too long");
  }
  const PS = getPKCS1Padding(keyLength - mLength - 3);
  const encoded = new Uint8Array(keyLength);
  encoded[1] = 2;
  encoded.set(PS, 2);
  encoded.set(message, keyLength - mLength);
  return encoded;
}
function emeDecode(encoded, randomPayload) {
  let offset = 2;
  let separatorNotFound = 1;
  for (let j2 = offset; j2 < encoded.length; j2++) {
    separatorNotFound &= encoded[j2] !== 0;
    offset += separatorNotFound;
  }
  const psLen = offset - 2;
  const payload = encoded.subarray(offset + 1);
  const isValidPadding = encoded[0] === 0 & encoded[1] === 2 & psLen >= 8 & !separatorNotFound;
  if (randomPayload) {
    return util11.selectUint8Array(isValidPadding, payload, randomPayload);
  }
  if (isValidPadding) {
    return payload;
  }
  throw new Error("Decryption error");
}
function emsaEncode(algo, hashed, emLen) {
  let i4;
  if (hashed.length !== getHashByteLength(algo)) {
    throw new Error("Invalid hash length");
  }
  const hashPrefix = new Uint8Array(hash_headers[algo].length);
  for (i4 = 0; i4 < hash_headers[algo].length; i4++) {
    hashPrefix[i4] = hash_headers[algo][i4];
  }
  const tLen = hashPrefix.length + hashed.length;
  if (emLen < tLen + 11) {
    throw new Error("Intended encoded message length too short");
  }
  const PS = new Uint8Array(emLen - tLen - 3).fill(255);
  const EM = new Uint8Array(emLen);
  EM[1] = 1;
  EM.set(PS, 2);
  EM.set(hashPrefix, emLen - tLen);
  EM.set(hashed, emLen - hashed.length);
  return EM;
}
async function sign$6(hashAlgo, data, n2, e, d3, p, q, u2, hashed) {
  if (getHashByteLength(hashAlgo) >= n2.length) {
    throw new Error("Digest size cannot exceed key modulus size");
  }
  if (data && !util11.isStream(data)) {
    if (util11.getWebCrypto()) {
      try {
        return await webSign$1(enums.read(enums.webHash, hashAlgo), data, n2, e, d3, p, q, u2);
      } catch (err2) {
        util11.printDebugError(err2);
      }
    } else if (util11.getNodeCrypto()) {
      return nodeSign$1(hashAlgo, data, n2, e, d3, p, q, u2);
    }
  }
  return bnSign(hashAlgo, n2, d3, hashed);
}
async function verify$6(hashAlgo, data, s, n2, e, hashed) {
  if (data && !util11.isStream(data)) {
    if (util11.getWebCrypto()) {
      try {
        return await webVerify$1(enums.read(enums.webHash, hashAlgo), data, s, n2, e);
      } catch (err2) {
        util11.printDebugError(err2);
      }
    } else if (util11.getNodeCrypto()) {
      return nodeVerify$1(hashAlgo, data, s, n2, e);
    }
  }
  return bnVerify(hashAlgo, s, n2, e, hashed);
}
async function encrypt$6(data, n2, e) {
  if (util11.getNodeCrypto()) {
    return nodeEncrypt$1(data, n2, e);
  }
  return bnEncrypt(data, n2, e);
}
async function decrypt$6(data, n2, e, d3, p, q, u2, randomPayload) {
  if (util11.getNodeCrypto() && !randomPayload) {
    try {
      return nodeDecrypt$1(data, n2, e, d3, p, q, u2);
    } catch (err2) {
      util11.printDebugError(err2);
    }
  }
  return bnDecrypt(data, n2, e, d3, p, q, u2, randomPayload);
}
async function generate$4(bits2, e) {
  e = BigInt(e);
  if (util11.getWebCrypto()) {
    const keyGenOpt = {
      name: "RSASSA-PKCS1-v1_5",
      modulusLength: bits2,
      // the specified keysize in bits
      publicExponent: bigIntToUint8Array(e),
      // take three bytes (max 65537) for exponent
      hash: {
        name: "SHA-1"
        // not required for actual RSA keys, but for crypto api 'sign' and 'verify'
      }
    };
    const keyPair = await webCrypto$7.generateKey(keyGenOpt, true, ["sign", "verify"]);
    const jwk = await webCrypto$7.exportKey("jwk", keyPair.privateKey);
    return jwkToPrivate(jwk, e);
  } else if (util11.getNodeCrypto()) {
    const opts3 = {
      modulusLength: bits2,
      publicExponent: bigIntToNumber(e),
      publicKeyEncoding: { type: "pkcs1", format: "jwk" },
      privateKeyEncoding: { type: "pkcs1", format: "jwk" }
    };
    const jwk = await new Promise((resolve4, reject3) => {
      nodeCrypto$6.generateKeyPair("rsa", opts3, (err2, _, jwkPrivateKey) => {
        if (err2) {
          reject3(err2);
        } else {
          resolve4(jwkPrivateKey);
        }
      });
    });
    return jwkToPrivate(jwk, e);
  }
  let p;
  let q;
  let n2;
  do {
    q = randomProbablePrime(bits2 - (bits2 >> 1), e, 40);
    p = randomProbablePrime(bits2 >> 1, e, 40);
    n2 = p * q;
  } while (bitLength(n2) !== bits2);
  const phi = (p - _1n$a) * (q - _1n$a);
  if (q < p) {
    [p, q] = [q, p];
  }
  return {
    n: bigIntToUint8Array(n2),
    e: bigIntToUint8Array(e),
    d: bigIntToUint8Array(modInv(e, phi)),
    p: bigIntToUint8Array(p),
    q: bigIntToUint8Array(q),
    // dp: d.mod(p.subn(1)),
    // dq: d.mod(q.subn(1)),
    u: bigIntToUint8Array(modInv(p, q))
  };
}
async function validateParams$9(n2, e, d3, p, q, u2) {
  n2 = uint8ArrayToBigInt(n2);
  p = uint8ArrayToBigInt(p);
  q = uint8ArrayToBigInt(q);
  if (p * q !== n2) {
    return false;
  }
  const _2n2 = BigInt(2);
  u2 = uint8ArrayToBigInt(u2);
  if (mod$1(p * u2, q) !== BigInt(1)) {
    return false;
  }
  e = uint8ArrayToBigInt(e);
  d3 = uint8ArrayToBigInt(d3);
  const nSizeOver3 = BigInt(Math.floor(bitLength(n2) / 3));
  const r = getRandomBigInteger(_2n2, _2n2 << nSizeOver3);
  const rde = r * d3 * e;
  const areInverses = mod$1(rde, p - _1n$a) === r && mod$1(rde, q - _1n$a) === r;
  if (!areInverses) {
    return false;
  }
  return true;
}
function bnSign(hashAlgo, n2, d3, hashed) {
  n2 = uint8ArrayToBigInt(n2);
  const m = uint8ArrayToBigInt(emsaEncode(hashAlgo, hashed, byteLength(n2)));
  d3 = uint8ArrayToBigInt(d3);
  return bigIntToUint8Array(modExp(m, d3, n2), "be", byteLength(n2));
}
async function webSign$1(hashName, data, n2, e, d3, p, q, u2) {
  const jwk = privateToJWK$1(n2, e, d3, p, q, u2);
  const algo = {
    name: "RSASSA-PKCS1-v1_5",
    hash: { name: hashName }
  };
  const key = await webCrypto$7.importKey("jwk", jwk, algo, false, ["sign"]);
  return new Uint8Array(await webCrypto$7.sign("RSASSA-PKCS1-v1_5", key, data));
}
function nodeSign$1(hashAlgo, data, n2, e, d3, p, q, u2) {
  const sign = nodeCrypto$6.createSign(enums.read(enums.hash, hashAlgo));
  sign.write(data);
  sign.end();
  const jwk = privateToJWK$1(n2, e, d3, p, q, u2);
  return new Uint8Array(sign.sign({ key: jwk, format: "jwk", type: "pkcs1" }));
}
function bnVerify(hashAlgo, s, n2, e, hashed) {
  n2 = uint8ArrayToBigInt(n2);
  s = uint8ArrayToBigInt(s);
  e = uint8ArrayToBigInt(e);
  if (s >= n2) {
    throw new Error("Signature size cannot exceed modulus size");
  }
  const EM1 = bigIntToUint8Array(modExp(s, e, n2), "be", byteLength(n2));
  const EM2 = emsaEncode(hashAlgo, hashed, byteLength(n2));
  return util11.equalsUint8Array(EM1, EM2);
}
async function webVerify$1(hashName, data, s, n2, e) {
  const jwk = publicToJWK(n2, e);
  const key = await webCrypto$7.importKey("jwk", jwk, {
    name: "RSASSA-PKCS1-v1_5",
    hash: { name: hashName }
  }, false, ["verify"]);
  return webCrypto$7.verify("RSASSA-PKCS1-v1_5", key, s, data);
}
function nodeVerify$1(hashAlgo, data, s, n2, e) {
  const jwk = publicToJWK(n2, e);
  const key = { key: jwk, format: "jwk", type: "pkcs1" };
  const verify = nodeCrypto$6.createVerify(enums.read(enums.hash, hashAlgo));
  verify.write(data);
  verify.end();
  try {
    return verify.verify(key, s);
  } catch {
    return false;
  }
}
function nodeEncrypt$1(data, n2, e) {
  const jwk = publicToJWK(n2, e);
  const key = { key: jwk, format: "jwk", type: "pkcs1", padding: nodeCrypto$6.constants.RSA_PKCS1_PADDING };
  return new Uint8Array(nodeCrypto$6.publicEncrypt(key, data));
}
function bnEncrypt(data, n2, e) {
  n2 = uint8ArrayToBigInt(n2);
  data = uint8ArrayToBigInt(emeEncode(data, byteLength(n2)));
  e = uint8ArrayToBigInt(e);
  if (data >= n2) {
    throw new Error("Message size cannot exceed modulus size");
  }
  return bigIntToUint8Array(modExp(data, e, n2), "be", byteLength(n2));
}
function nodeDecrypt$1(data, n2, e, d3, p, q, u2) {
  const jwk = privateToJWK$1(n2, e, d3, p, q, u2);
  const key = { key: jwk, format: "jwk", type: "pkcs1", padding: nodeCrypto$6.constants.RSA_PKCS1_PADDING };
  try {
    return new Uint8Array(nodeCrypto$6.privateDecrypt(key, data));
  } catch {
    throw new Error("Decryption error");
  }
}
function bnDecrypt(data, n2, e, d3, p, q, u2, randomPayload) {
  data = uint8ArrayToBigInt(data);
  n2 = uint8ArrayToBigInt(n2);
  e = uint8ArrayToBigInt(e);
  d3 = uint8ArrayToBigInt(d3);
  p = uint8ArrayToBigInt(p);
  q = uint8ArrayToBigInt(q);
  u2 = uint8ArrayToBigInt(u2);
  if (data >= n2) {
    throw new Error("Data too large.");
  }
  const dq = mod$1(d3, q - _1n$a);
  const dp = mod$1(d3, p - _1n$a);
  const unblinder = getRandomBigInteger(BigInt(2), n2);
  const blinder = modExp(modInv(unblinder, n2), e, n2);
  data = mod$1(data * blinder, n2);
  const mp = modExp(data, dp, p);
  const mq = modExp(data, dq, q);
  const h2 = mod$1(u2 * (mq - mp), q);
  let result2 = h2 * p + mp;
  result2 = mod$1(result2 * unblinder, n2);
  return emeDecode(bigIntToUint8Array(result2, "be", byteLength(n2)), randomPayload);
}
function privateToJWK$1(n2, e, d3, p, q, u2) {
  const pNum = uint8ArrayToBigInt(p);
  const qNum = uint8ArrayToBigInt(q);
  const dNum = uint8ArrayToBigInt(d3);
  let dq = mod$1(dNum, qNum - _1n$a);
  let dp = mod$1(dNum, pNum - _1n$a);
  dp = bigIntToUint8Array(dp);
  dq = bigIntToUint8Array(dq);
  return {
    kty: "RSA",
    n: uint8ArrayToB64(n2),
    e: uint8ArrayToB64(e),
    d: uint8ArrayToB64(d3),
    // switch p and q
    p: uint8ArrayToB64(q),
    q: uint8ArrayToB64(p),
    // switch dp and dq
    dp: uint8ArrayToB64(dq),
    dq: uint8ArrayToB64(dp),
    qi: uint8ArrayToB64(u2),
    ext: true
  };
}
function publicToJWK(n2, e) {
  return {
    kty: "RSA",
    n: uint8ArrayToB64(n2),
    e: uint8ArrayToB64(e),
    ext: true
  };
}
function jwkToPrivate(jwk, e) {
  return {
    n: b64ToUint8Array(jwk.n),
    e: bigIntToUint8Array(e),
    d: b64ToUint8Array(jwk.d),
    // switch p and q
    p: b64ToUint8Array(jwk.q),
    q: b64ToUint8Array(jwk.p),
    // Since p and q are switched in places, u is the inverse of jwk.q
    u: b64ToUint8Array(jwk.qi)
  };
}
async function encrypt$5(data, p, g, y) {
  p = uint8ArrayToBigInt(p);
  g = uint8ArrayToBigInt(g);
  y = uint8ArrayToBigInt(y);
  const padded = emeEncode(data, byteLength(p));
  const m = uint8ArrayToBigInt(padded);
  const k2 = getRandomBigInteger(_1n$9, p - _1n$9);
  return {
    c1: bigIntToUint8Array(modExp(g, k2, p)),
    c2: bigIntToUint8Array(mod$1(modExp(y, k2, p) * m, p))
  };
}
async function decrypt$5(c1, c22, p, x3, randomPayload) {
  c1 = uint8ArrayToBigInt(c1);
  c22 = uint8ArrayToBigInt(c22);
  p = uint8ArrayToBigInt(p);
  x3 = uint8ArrayToBigInt(x3);
  const padded = mod$1(modInv(modExp(c1, x3, p), p) * c22, p);
  return emeDecode(bigIntToUint8Array(padded, "be", byteLength(p)), randomPayload);
}
async function validateParams$8(pBytes, gBytes, yBytes, xBytes) {
  const p = uint8ArrayToBigInt(pBytes);
  const g = uint8ArrayToBigInt(gBytes);
  const y = uint8ArrayToBigInt(yBytes);
  if (g <= _1n$9 || g >= p) {
    return false;
  }
  const pSize = BigInt(bitLength(p));
  const _1023n = BigInt(1023);
  if (pSize < _1023n) {
    return false;
  }
  if (modExp(g, p - _1n$9, p) !== _1n$9) {
    return false;
  }
  let res = g;
  let i4 = BigInt(1);
  const _2n2 = BigInt(2);
  const threshold = _2n2 << BigInt(17);
  while (i4 < threshold) {
    res = mod$1(res * g, p);
    if (res === _1n$9) {
      return false;
    }
    i4++;
  }
  const x3 = uint8ArrayToBigInt(xBytes);
  const r = getRandomBigInteger(_2n2 << pSize - _1n$9, _2n2 << pSize);
  const rqx = (p - _1n$9) * r + x3;
  if (y !== modExp(g, rqx, p)) {
    return false;
  }
  return true;
}
function readSimpleLength(bytes) {
  let len = 0;
  let offset;
  const type4 = bytes[0];
  if (type4 < 192) {
    [len] = bytes;
    offset = 1;
  } else if (type4 < 255) {
    len = (bytes[0] - 192 << 8) + bytes[1] + 192;
    offset = 2;
  } else if (type4 === 255) {
    len = util11.readNumber(bytes.subarray(1, 1 + 4));
    offset = 5;
  }
  return {
    len,
    offset
  };
}
function writeSimpleLength(length) {
  if (length < 192) {
    return new Uint8Array([length]);
  } else if (length > 191 && length < 8384) {
    return new Uint8Array([(length - 192 >> 8) + 192, length - 192 & 255]);
  }
  return util11.concatUint8Array([new Uint8Array([255]), util11.writeNumber(length, 4)]);
}
function writePartialLength(power) {
  if (power < 0 || power > 30) {
    throw new Error("Partial Length power must be between 1 and 30");
  }
  return new Uint8Array([224 + power]);
}
function writeTag(tag_type) {
  return new Uint8Array([192 | tag_type]);
}
function writeHeader(tag_type, length) {
  return util11.concatUint8Array([writeTag(tag_type), writeSimpleLength(length)]);
}
function supportsStreaming(tag) {
  return [
    enums.packet.literalData,
    enums.packet.compressedData,
    enums.packet.symmetricallyEncryptedData,
    enums.packet.symEncryptedIntegrityProtectedData,
    enums.packet.aeadEncryptedData
  ].includes(tag);
}
async function readPacket(reader, useStreamType, callback2) {
  let writer;
  let callbackReturned;
  try {
    const peekedBytes = await reader.peekBytes(2);
    if (!peekedBytes || peekedBytes.length < 2 || (peekedBytes[0] & 128) === 0) {
      throw new Error("Error during parsing. This message / key probably does not conform to a valid OpenPGP format.");
    }
    const headerByte = await reader.readByte();
    let tag = -1;
    let format2 = -1;
    let packetLength;
    format2 = 0;
    if ((headerByte & 64) !== 0) {
      format2 = 1;
    }
    let packetLengthType;
    if (format2) {
      tag = headerByte & 63;
    } else {
      tag = (headerByte & 63) >> 2;
      packetLengthType = headerByte & 3;
    }
    const packetSupportsStreaming = supportsStreaming(tag);
    let packet = null;
    if (useStreamType && packetSupportsStreaming) {
      if (useStreamType === "array") {
        const arrayStream = new ArrayStream();
        writer = getWriter(arrayStream);
        packet = arrayStream;
      } else {
        const transform3 = new TransformStream();
        writer = getWriter(transform3.writable);
        packet = transform3.readable;
      }
      callbackReturned = callback2({ tag, packet });
    } else {
      packet = [];
    }
    let wasPartialLength;
    do {
      if (!format2) {
        switch (packetLengthType) {
          case 0:
            packetLength = await reader.readByte();
            break;
          case 1:
            packetLength = await reader.readByte() << 8 | await reader.readByte();
            break;
          case 2:
            packetLength = await reader.readByte() << 24 | await reader.readByte() << 16 | await reader.readByte() << 8 | await reader.readByte();
            break;
          default:
            packetLength = Infinity;
            break;
        }
      } else {
        const lengthByte = await reader.readByte();
        wasPartialLength = false;
        if (lengthByte < 192) {
          packetLength = lengthByte;
        } else if (lengthByte >= 192 && lengthByte < 224) {
          packetLength = (lengthByte - 192 << 8) + await reader.readByte() + 192;
        } else if (lengthByte > 223 && lengthByte < 255) {
          packetLength = 1 << (lengthByte & 31);
          wasPartialLength = true;
          if (!packetSupportsStreaming) {
            throw new TypeError("This packet type does not support partial lengths.");
          }
        } else {
          packetLength = await reader.readByte() << 24 | await reader.readByte() << 16 | await reader.readByte() << 8 | await reader.readByte();
        }
      }
      if (packetLength > 0) {
        let bytesRead = 0;
        while (true) {
          if (writer)
            await writer.ready;
          const { done, value } = await reader.read();
          if (done) {
            if (packetLength === Infinity)
              break;
            throw new Error("Unexpected end of packet");
          }
          const chunk = packetLength === Infinity ? value : value.subarray(0, packetLength - bytesRead);
          if (writer)
            await writer.write(chunk);
          else
            packet.push(chunk);
          bytesRead += value.length;
          if (bytesRead >= packetLength) {
            reader.unshift(value.subarray(packetLength - bytesRead + value.length));
            break;
          }
        }
      }
    } while (wasPartialLength);
    if (writer) {
      await writer.ready;
      await writer.close();
    } else {
      packet = util11.concatUint8Array(packet);
      await callback2({ tag, packet });
    }
  } catch (e) {
    if (writer) {
      await writer.abort(e);
      return true;
    } else {
      throw e;
    }
  } finally {
    if (writer) {
      await callbackReturned;
    }
  }
}
async function generate$3(algo) {
  switch (algo) {
    case enums.publicKey.ed25519:
      try {
        const webCrypto2 = util11.getWebCrypto();
        const webCryptoKey = await webCrypto2.generateKey("Ed25519", true, ["sign", "verify"]).catch((err2) => {
          if (err2.name === "OperationError") {
            const newErr = new Error("Unexpected key generation issue");
            newErr.name = "NotSupportedError";
            throw newErr;
          }
          throw err2;
        });
        const privateKey = await webCrypto2.exportKey("jwk", webCryptoKey.privateKey);
        const publicKey = await webCrypto2.exportKey("jwk", webCryptoKey.publicKey);
        return {
          A: new Uint8Array(b64ToUint8Array(publicKey.x)),
          seed: b64ToUint8Array(privateKey.d, true)
        };
      } catch (err2) {
        if (err2.name !== "NotSupportedError") {
          throw err2;
        }
        const { default: ed25519 } = await Promise.resolve().then(function() {
          return naclFast;
        });
        const seed = getRandomBytes(getPayloadSize$1(algo));
        const { publicKey: A2 } = ed25519.sign.keyPair.fromSeed(seed);
        return { A: A2, seed };
      }
    case enums.publicKey.ed448: {
      const ed4482 = await util11.getNobleCurve(enums.publicKey.ed448);
      const { secretKey: seed, publicKey: A2 } = ed4482.keygen();
      return { A: A2, seed };
    }
    default:
      throw new Error("Unsupported EdDSA algorithm");
  }
}
async function sign$5(algo, hashAlgo, message, publicKey, privateKey, hashed) {
  if (getHashByteLength(hashAlgo) < getHashByteLength(getPreferredHashAlgo$2(algo))) {
    throw new Error("Hash algorithm too weak for EdDSA.");
  }
  switch (algo) {
    case enums.publicKey.ed25519:
      try {
        const webCrypto2 = util11.getWebCrypto();
        const jwk = privateKeyToJWK$1(algo, publicKey, privateKey);
        const key = await webCrypto2.importKey("jwk", jwk, "Ed25519", false, ["sign"]);
        const signature = new Uint8Array(await webCrypto2.sign("Ed25519", key, hashed));
        return { RS: signature };
      } catch (err2) {
        if (err2.name !== "NotSupportedError") {
          throw err2;
        }
        const { default: ed25519 } = await Promise.resolve().then(function() {
          return naclFast;
        });
        const secretKey = util11.concatUint8Array([privateKey, publicKey]);
        const signature = ed25519.sign.detached(hashed, secretKey);
        return { RS: signature };
      }
    case enums.publicKey.ed448: {
      const ed4482 = await util11.getNobleCurve(enums.publicKey.ed448);
      const signature = ed4482.sign(hashed, privateKey);
      return { RS: signature };
    }
    default:
      throw new Error("Unsupported EdDSA algorithm");
  }
}
async function verify$5(algo, hashAlgo, { RS }, m, publicKey, hashed) {
  if (getHashByteLength(hashAlgo) < getHashByteLength(getPreferredHashAlgo$2(algo))) {
    throw new Error("Hash algorithm too weak for EdDSA.");
  }
  switch (algo) {
    case enums.publicKey.ed25519:
      try {
        const webCrypto2 = util11.getWebCrypto();
        const jwk = publicKeyToJWK$1(algo, publicKey);
        const key = await webCrypto2.importKey("jwk", jwk, "Ed25519", false, ["verify"]);
        const verified2 = await webCrypto2.verify("Ed25519", key, RS, hashed);
        return verified2;
      } catch (err2) {
        if (err2.name !== "NotSupportedError") {
          throw err2;
        }
        const { default: ed25519 } = await Promise.resolve().then(function() {
          return naclFast;
        });
        return ed25519.sign.detached.verify(hashed, RS, publicKey);
      }
    case enums.publicKey.ed448: {
      const ed4482 = await util11.getNobleCurve(enums.publicKey.ed448);
      return ed4482.verify(RS, hashed, publicKey);
    }
    default:
      throw new Error("Unsupported EdDSA algorithm");
  }
}
async function validateParams$7(algo, A2, seed) {
  switch (algo) {
    case enums.publicKey.ed25519:
      try {
        const webCrypto2 = util11.getWebCrypto();
        const jwkPrivate = privateKeyToJWK$1(algo, A2, seed);
        const jwkPublic = publicKeyToJWK$1(algo, A2);
        const privateCryptoKey = await webCrypto2.importKey("jwk", jwkPrivate, "Ed25519", false, ["sign"]);
        const publicCryptoKey = await webCrypto2.importKey("jwk", jwkPublic, "Ed25519", false, ["verify"]);
        const randomData = getRandomBytes(8);
        const signature = new Uint8Array(await webCrypto2.sign("Ed25519", privateCryptoKey, randomData));
        const verified2 = await webCrypto2.verify("Ed25519", publicCryptoKey, signature, randomData);
        return verified2;
      } catch (err2) {
        if (err2.name !== "NotSupportedError") {
          return false;
        }
        const { default: ed25519 } = await Promise.resolve().then(function() {
          return naclFast;
        });
        const { publicKey } = ed25519.sign.keyPair.fromSeed(seed);
        return util11.equalsUint8Array(A2, publicKey);
      }
    case enums.publicKey.ed448: {
      const ed4482 = await util11.getNobleCurve(enums.publicKey.ed448);
      const publicKey = ed4482.getPublicKey(seed);
      return util11.equalsUint8Array(A2, publicKey);
    }
    default:
      return false;
  }
}
function getPayloadSize$1(algo) {
  switch (algo) {
    case enums.publicKey.ed25519:
      return 32;
    case enums.publicKey.ed448:
      return 57;
    default:
      throw new Error("Unsupported EdDSA algorithm");
  }
}
function getPreferredHashAlgo$2(algo) {
  switch (algo) {
    case enums.publicKey.ed25519:
      return enums.hash.sha256;
    case enums.publicKey.ed448:
      return enums.hash.sha512;
    default:
      throw new Error("Unknown EdDSA algo");
  }
}
function isBytes$1(a2) {
  return a2 instanceof Uint8Array || ArrayBuffer.isView(a2) && a2.constructor.name === "Uint8Array";
}
function abytes$1(b, ...lengths) {
  if (!isBytes$1(b))
    throw new Error("Uint8Array expected");
  if (lengths.length > 0 && !lengths.includes(b.length))
    throw new Error("Uint8Array expected of length " + lengths + ", got length=" + b.length);
}
function aexists$1(instance, checkFinished = true) {
  if (instance.destroyed)
    throw new Error("Hash instance has been destroyed");
  if (checkFinished && instance.finished)
    throw new Error("Hash#digest() has already been called");
}
function aoutput$1(out, instance) {
  abytes$1(out);
  const min = instance.outputLen;
  if (out.length < min) {
    throw new Error("digestInto() expects output buffer of length at least " + min);
  }
}
function u8$1(arr) {
  return new Uint8Array(arr.buffer, arr.byteOffset, arr.byteLength);
}
function u32$1(arr) {
  return new Uint32Array(arr.buffer, arr.byteOffset, Math.floor(arr.byteLength / 4));
}
function clean$1(...arrays) {
  for (let i4 = 0; i4 < arrays.length; i4++) {
    arrays[i4].fill(0);
  }
}
function createView$1(arr) {
  return new DataView(arr.buffer, arr.byteOffset, arr.byteLength);
}
function utf8ToBytes$1(str2) {
  if (typeof str2 !== "string")
    throw new Error("string expected");
  return new Uint8Array(new TextEncoder().encode(str2));
}
function toBytes$1(data) {
  if (typeof data === "string")
    data = utf8ToBytes$1(data);
  else if (isBytes$1(data))
    data = copyBytes$1(data);
  else
    throw new Error("Uint8Array expected, got " + typeof data);
  return data;
}
function overlapBytes(a2, b) {
  return a2.buffer === b.buffer && // best we can do, may fail with an obscure Proxy
  a2.byteOffset < b.byteOffset + b.byteLength && // a starts before b end
  b.byteOffset < a2.byteOffset + a2.byteLength;
}
function complexOverlapBytes(input, output) {
  if (overlapBytes(input, output) && input.byteOffset < output.byteOffset)
    throw new Error("complex overlap of input and output is not supported");
}
function concatBytes$1(...arrays) {
  let sum = 0;
  for (let i4 = 0; i4 < arrays.length; i4++) {
    const a2 = arrays[i4];
    abytes$1(a2);
    sum += a2.length;
  }
  const res = new Uint8Array(sum);
  for (let i4 = 0, pad4 = 0; i4 < arrays.length; i4++) {
    const a2 = arrays[i4];
    res.set(a2, pad4);
    pad4 += a2.length;
  }
  return res;
}
function equalBytes(a2, b) {
  if (a2.length !== b.length)
    return false;
  let diff2 = 0;
  for (let i4 = 0; i4 < a2.length; i4++)
    diff2 |= a2[i4] ^ b[i4];
  return diff2 === 0;
}
function getOutput(expectedLength, out, onlyAligned = true) {
  if (out === void 0)
    return new Uint8Array(expectedLength);
  if (out.length !== expectedLength)
    throw new Error("invalid output length, expected " + expectedLength + ", got: " + out.length);
  if (onlyAligned && !isAligned32(out))
    throw new Error("invalid output, must be aligned");
  return out;
}
function setBigUint64$1(view, byteOffset, value, isLE2) {
  if (typeof view.setBigUint64 === "function")
    return view.setBigUint64(byteOffset, value, isLE2);
  const _32n2 = BigInt(32);
  const _u32_max = BigInt(4294967295);
  const wh = Number(value >> _32n2 & _u32_max);
  const wl = Number(value & _u32_max);
  const h2 = 0;
  const l = 4;
  view.setUint32(byteOffset + h2, wh, isLE2);
  view.setUint32(byteOffset + l, wl, isLE2);
}
function u64Lengths(dataLength, aadLength, isLE2) {
  const num = new Uint8Array(16);
  const view = createView$1(num);
  setBigUint64$1(view, 0, BigInt(aadLength), isLE2);
  setBigUint64$1(view, 8, BigInt(dataLength), isLE2);
  return num;
}
function isAligned32(bytes) {
  return bytes.byteOffset % 4 === 0;
}
function copyBytes$1(bytes) {
  return Uint8Array.from(bytes);
}
function _toGHASHKey(k2) {
  k2.reverse();
  const hiBit = k2[15] & 1;
  let carry = 0;
  for (let i4 = 0; i4 < k2.length; i4++) {
    const t2 = k2[i4];
    k2[i4] = t2 >>> 1 | carry;
    carry = (t2 & 1) << 7;
  }
  k2[0] ^= -hiBit & 225;
  return k2;
}
function wrapConstructorWithKey(hashCons) {
  const hashC = (msg, key) => hashCons(key, msg.length).update(toBytes$1(msg)).digest();
  const tmp = hashCons(new Uint8Array(16), 0);
  hashC.outputLen = tmp.outputLen;
  hashC.blockLen = tmp.blockLen;
  hashC.create = (key, expectedLength) => hashCons(key, expectedLength);
  return hashC;
}
function mul2(n2) {
  return n2 << 1 ^ POLY & -(n2 >> 7);
}
function mul(a2, b) {
  let res = 0;
  for (; b > 0; b >>= 1) {
    res ^= a2 & -(b & 1);
    a2 = mul2(a2);
  }
  return res;
}
function genTtable(sbox2, fn) {
  if (sbox2.length !== 256)
    throw new Error("Wrong sbox length");
  const T0 = new Uint32Array(256).map((_, j2) => fn(sbox2[j2]));
  const T1 = T0.map(rotl32_8);
  const T2 = T1.map(rotl32_8);
  const T3 = T2.map(rotl32_8);
  const T01 = new Uint32Array(256 * 256);
  const T23 = new Uint32Array(256 * 256);
  const sbox22 = new Uint16Array(256 * 256);
  for (let i4 = 0; i4 < 256; i4++) {
    for (let j2 = 0; j2 < 256; j2++) {
      const idx = i4 * 256 + j2;
      T01[idx] = T0[i4] ^ T1[j2];
      T23[idx] = T2[i4] ^ T3[j2];
      sbox22[idx] = sbox2[i4] << 8 | sbox2[j2];
    }
  }
  return { sbox: sbox2, sbox2: sbox22, T0, T1, T2, T3, T01, T23 };
}
function expandKeyLE(key) {
  abytes$1(key);
  const len = key.length;
  if (![16, 24, 32].includes(len))
    throw new Error("aes: invalid key size, should be 16, 24 or 32, got " + len);
  const { sbox2 } = tableEncoding;
  const toClean = [];
  if (!isAligned32(key))
    toClean.push(key = copyBytes$1(key));
  const k32 = u32$1(key);
  const Nk = k32.length;
  const subByte = (n2) => applySbox(sbox2, n2, n2, n2, n2);
  const xk = new Uint32Array(len + 28);
  xk.set(k32);
  for (let i4 = Nk; i4 < xk.length; i4++) {
    let t2 = xk[i4 - 1];
    if (i4 % Nk === 0)
      t2 = subByte(rotr32_8(t2)) ^ xPowers[i4 / Nk - 1];
    else if (Nk > 6 && i4 % Nk === 4)
      t2 = subByte(t2);
    xk[i4] = xk[i4 - Nk] ^ t2;
  }
  clean$1(...toClean);
  return xk;
}
function expandKeyDecLE(key) {
  const encKey = expandKeyLE(key);
  const xk = encKey.slice();
  const Nk = encKey.length;
  const { sbox2 } = tableEncoding;
  const { T0, T1, T2, T3 } = tableDecoding;
  for (let i4 = 0; i4 < Nk; i4 += 4) {
    for (let j2 = 0; j2 < 4; j2++)
      xk[i4 + j2] = encKey[Nk - i4 - 4 + j2];
  }
  clean$1(encKey);
  for (let i4 = 4; i4 < Nk - 4; i4++) {
    const x3 = xk[i4];
    const w = applySbox(sbox2, x3, x3, x3, x3);
    xk[i4] = T0[w & 255] ^ T1[w >>> 8 & 255] ^ T2[w >>> 16 & 255] ^ T3[w >>> 24];
  }
  return xk;
}
function apply0123(T01, T23, s0, s1, s2, s3) {
  return T01[s0 << 8 & 65280 | s1 >>> 8 & 255] ^ T23[s2 >>> 8 & 65280 | s3 >>> 24 & 255];
}
function applySbox(sbox2, s0, s1, s2, s3) {
  return sbox2[s0 & 255 | s1 & 65280] | sbox2[s2 >>> 16 & 255 | s3 >>> 16 & 65280] << 16;
}
function encrypt$4(xk, s0, s1, s2, s3) {
  const { sbox2, T01, T23 } = tableEncoding;
  let k2 = 0;
  s0 ^= xk[k2++], s1 ^= xk[k2++], s2 ^= xk[k2++], s3 ^= xk[k2++];
  const rounds = xk.length / 4 - 2;
  for (let i4 = 0; i4 < rounds; i4++) {
    const t02 = xk[k2++] ^ apply0123(T01, T23, s0, s1, s2, s3);
    const t12 = xk[k2++] ^ apply0123(T01, T23, s1, s2, s3, s0);
    const t22 = xk[k2++] ^ apply0123(T01, T23, s2, s3, s0, s1);
    const t32 = xk[k2++] ^ apply0123(T01, T23, s3, s0, s1, s2);
    s0 = t02, s1 = t12, s2 = t22, s3 = t32;
  }
  const t0 = xk[k2++] ^ applySbox(sbox2, s0, s1, s2, s3);
  const t1 = xk[k2++] ^ applySbox(sbox2, s1, s2, s3, s0);
  const t2 = xk[k2++] ^ applySbox(sbox2, s2, s3, s0, s1);
  const t3 = xk[k2++] ^ applySbox(sbox2, s3, s0, s1, s2);
  return { s0: t0, s1: t1, s2: t2, s3: t3 };
}
function decrypt$4(xk, s0, s1, s2, s3) {
  const { sbox2, T01, T23 } = tableDecoding;
  let k2 = 0;
  s0 ^= xk[k2++], s1 ^= xk[k2++], s2 ^= xk[k2++], s3 ^= xk[k2++];
  const rounds = xk.length / 4 - 2;
  for (let i4 = 0; i4 < rounds; i4++) {
    const t02 = xk[k2++] ^ apply0123(T01, T23, s0, s3, s2, s1);
    const t12 = xk[k2++] ^ apply0123(T01, T23, s1, s0, s3, s2);
    const t22 = xk[k2++] ^ apply0123(T01, T23, s2, s1, s0, s3);
    const t32 = xk[k2++] ^ apply0123(T01, T23, s3, s2, s1, s0);
    s0 = t02, s1 = t12, s2 = t22, s3 = t32;
  }
  const t0 = xk[k2++] ^ applySbox(sbox2, s0, s3, s2, s1);
  const t1 = xk[k2++] ^ applySbox(sbox2, s1, s0, s3, s2);
  const t2 = xk[k2++] ^ applySbox(sbox2, s2, s1, s0, s3);
  const t3 = xk[k2++] ^ applySbox(sbox2, s3, s2, s1, s0);
  return { s0: t0, s1: t1, s2: t2, s3: t3 };
}
function ctrCounter(xk, nonce, src2, dst) {
  abytes$1(nonce, BLOCK_SIZE);
  abytes$1(src2);
  const srcLen = src2.length;
  dst = getOutput(srcLen, dst);
  complexOverlapBytes(src2, dst);
  const ctr2 = nonce;
  const c32 = u32$1(ctr2);
  let { s0, s1, s2, s3 } = encrypt$4(xk, c32[0], c32[1], c32[2], c32[3]);
  const src32 = u32$1(src2);
  const dst32 = u32$1(dst);
  for (let i4 = 0; i4 + 4 <= src32.length; i4 += 4) {
    dst32[i4 + 0] = src32[i4 + 0] ^ s0;
    dst32[i4 + 1] = src32[i4 + 1] ^ s1;
    dst32[i4 + 2] = src32[i4 + 2] ^ s2;
    dst32[i4 + 3] = src32[i4 + 3] ^ s3;
    let carry = 1;
    for (let i5 = ctr2.length - 1; i5 >= 0; i5--) {
      carry = carry + (ctr2[i5] & 255) | 0;
      ctr2[i5] = carry & 255;
      carry >>>= 8;
    }
    ({ s0, s1, s2, s3 } = encrypt$4(xk, c32[0], c32[1], c32[2], c32[3]));
  }
  const start = BLOCK_SIZE * Math.floor(src32.length / BLOCK_SIZE32);
  if (start < srcLen) {
    const b32 = new Uint32Array([s0, s1, s2, s3]);
    const buf = u8$1(b32);
    for (let i4 = start, pos = 0; i4 < srcLen; i4++, pos++)
      dst[i4] = src2[i4] ^ buf[pos];
    clean$1(b32);
  }
  return dst;
}
function ctr32(xk, isLE2, nonce, src2, dst) {
  abytes$1(nonce, BLOCK_SIZE);
  abytes$1(src2);
  dst = getOutput(src2.length, dst);
  const ctr2 = nonce;
  const c32 = u32$1(ctr2);
  const view = createView$1(ctr2);
  const src32 = u32$1(src2);
  const dst32 = u32$1(dst);
  const ctrPos = isLE2 ? 0 : 12;
  const srcLen = src2.length;
  let ctrNum = view.getUint32(ctrPos, isLE2);
  let { s0, s1, s2, s3 } = encrypt$4(xk, c32[0], c32[1], c32[2], c32[3]);
  for (let i4 = 0; i4 + 4 <= src32.length; i4 += 4) {
    dst32[i4 + 0] = src32[i4 + 0] ^ s0;
    dst32[i4 + 1] = src32[i4 + 1] ^ s1;
    dst32[i4 + 2] = src32[i4 + 2] ^ s2;
    dst32[i4 + 3] = src32[i4 + 3] ^ s3;
    ctrNum = ctrNum + 1 >>> 0;
    view.setUint32(ctrPos, ctrNum, isLE2);
    ({ s0, s1, s2, s3 } = encrypt$4(xk, c32[0], c32[1], c32[2], c32[3]));
  }
  const start = BLOCK_SIZE * Math.floor(src32.length / BLOCK_SIZE32);
  if (start < srcLen) {
    const b32 = new Uint32Array([s0, s1, s2, s3]);
    const buf = u8$1(b32);
    for (let i4 = start, pos = 0; i4 < srcLen; i4++, pos++)
      dst[i4] = src2[i4] ^ buf[pos];
    clean$1(b32);
  }
  return dst;
}
function validateBlockDecrypt(data) {
  abytes$1(data);
  if (data.length % BLOCK_SIZE !== 0) {
    throw new Error("aes-(cbc/ecb).decrypt ciphertext should consist of blocks with size " + BLOCK_SIZE);
  }
}
function validateBlockEncrypt(plaintext, pcks5, dst) {
  abytes$1(plaintext);
  let outLen = plaintext.length;
  const remaining = outLen % BLOCK_SIZE;
  if (!pcks5 && remaining !== 0)
    throw new Error("aec/(cbc-ecb): unpadded plaintext with disabled padding");
  if (!isAligned32(plaintext))
    plaintext = copyBytes$1(plaintext);
  const b = u32$1(plaintext);
  if (pcks5) {
    let left = BLOCK_SIZE - remaining;
    if (!left)
      left = BLOCK_SIZE;
    outLen = outLen + left;
  }
  dst = getOutput(outLen, dst);
  complexOverlapBytes(plaintext, dst);
  const o2 = u32$1(dst);
  return { b, o: o2, out: dst };
}
function validatePCKS(data, pcks5) {
  if (!pcks5)
    return data;
  const len = data.length;
  if (!len)
    throw new Error("aes/pcks5: empty ciphertext not allowed");
  const lastByte = data[len - 1];
  if (lastByte <= 0 || lastByte > 16)
    throw new Error("aes/pcks5: wrong padding");
  const out = data.subarray(0, -lastByte);
  for (let i4 = 0; i4 < lastByte; i4++)
    if (data[len - i4 - 1] !== lastByte)
      throw new Error("aes/pcks5: wrong padding");
  return out;
}
function padPCKS(left) {
  const tmp = new Uint8Array(16);
  const tmp32 = u32$1(tmp);
  tmp.set(left);
  const paddingByte = BLOCK_SIZE - left.length;
  for (let i4 = BLOCK_SIZE - paddingByte; i4 < BLOCK_SIZE; i4++)
    tmp[i4] = paddingByte;
  return tmp32;
}
function computeTag(fn, isLE2, key, data, AAD) {
  const aadLength = AAD ? AAD.length : 0;
  const h2 = fn.create(key, data.length + aadLength);
  if (AAD)
    h2.update(AAD);
  const num = u64Lengths(8 * data.length, 8 * aadLength, isLE2);
  h2.update(data);
  h2.update(num);
  const res = h2.digest();
  clean$1(num);
  return res;
}
function isBytes32(a2) {
  return a2 instanceof Uint32Array || ArrayBuffer.isView(a2) && a2.constructor.name === "Uint32Array";
}
function encryptBlock(xk, block) {
  abytes$1(block, 16);
  if (!isBytes32(xk))
    throw new Error("_encryptBlock accepts result of expandKeyLE");
  const b32 = u32$1(block);
  let { s0, s1, s2, s3 } = encrypt$4(xk, b32[0], b32[1], b32[2], b32[3]);
  b32[0] = s0, b32[1] = s1, b32[2] = s2, b32[3] = s3;
  return block;
}
function decryptBlock(xk, block) {
  abytes$1(block, 16);
  if (!isBytes32(xk))
    throw new Error("_decryptBlock accepts result of expandKeyLE");
  const b32 = u32$1(block);
  let { s0, s1, s2, s3 } = decrypt$4(xk, b32[0], b32[1], b32[2], b32[3]);
  b32[0] = s0, b32[1] = s1, b32[2] = s2, b32[3] = s3;
  return block;
}
async function getLegacyCipher(algo) {
  switch (algo) {
    case enums.symmetric.aes128:
    case enums.symmetric.aes192:
    case enums.symmetric.aes256:
      throw new Error("Not a legacy cipher");
    case enums.symmetric.cast5:
    case enums.symmetric.blowfish:
    case enums.symmetric.twofish:
    case enums.symmetric.tripledes: {
      const { legacyCiphers: legacyCiphers2 } = await Promise.resolve().then(function() {
        return legacy_ciphers;
      });
      const algoName = enums.read(enums.symmetric, algo);
      const cipher = legacyCiphers2.get(algoName);
      if (!cipher) {
        throw new Error("Unsupported cipher algorithm");
      }
      return cipher;
    }
    default:
      throw new Error("Unsupported cipher algorithm");
  }
}
function getCipherBlockSize(algo) {
  switch (algo) {
    case enums.symmetric.aes128:
    case enums.symmetric.aes192:
    case enums.symmetric.aes256:
    case enums.symmetric.twofish:
      return 16;
    case enums.symmetric.blowfish:
    case enums.symmetric.cast5:
    case enums.symmetric.tripledes:
      return 8;
    default:
      throw new Error("Unsupported cipher");
  }
}
function getCipherKeySize(algo) {
  switch (algo) {
    case enums.symmetric.aes128:
    case enums.symmetric.blowfish:
    case enums.symmetric.cast5:
      return 16;
    case enums.symmetric.aes192:
    case enums.symmetric.tripledes:
      return 24;
    case enums.symmetric.aes256:
    case enums.symmetric.twofish:
      return 32;
    default:
      throw new Error("Unsupported cipher");
  }
}
function getCipherParams(algo) {
  return { keySize: getCipherKeySize(algo), blockSize: getCipherBlockSize(algo) };
}
async function wrap(algo, key, dataToWrap) {
  const { keySize } = getCipherParams(algo);
  if (!util11.isAES(algo) || key.length !== keySize) {
    throw new Error("Unexpected algorithm or key size");
  }
  try {
    const wrappingKey = await webCrypto$6.importKey("raw", key, { name: "AES-KW" }, false, ["wrapKey"]);
    const keyToWrap = await webCrypto$6.importKey("raw", dataToWrap, { name: "HMAC", hash: "SHA-256" }, true, ["sign"]);
    const wrapped = await webCrypto$6.wrapKey("raw", keyToWrap, wrappingKey, { name: "AES-KW" });
    return new Uint8Array(wrapped);
  } catch (err2) {
    if (err2.name !== "NotSupportedError" && !(key.length === 24 && err2.name === "OperationError")) {
      throw err2;
    }
    util11.printDebugError("Browser did not support operation: " + err2.message);
  }
  return aeskw(key).encrypt(dataToWrap);
}
async function unwrap(algo, key, wrappedData) {
  const { keySize } = getCipherParams(algo);
  if (!util11.isAES(algo) || key.length !== keySize) {
    throw new Error("Unexpected algorithm or key size");
  }
  let wrappingKey;
  try {
    wrappingKey = await webCrypto$6.importKey("raw", key, { name: "AES-KW" }, false, ["unwrapKey"]);
  } catch (err2) {
    if (err2.name !== "NotSupportedError" && !(key.length === 24 && err2.name === "OperationError")) {
      throw err2;
    }
    util11.printDebugError("Browser did not support operation: " + err2.message);
    return aeskw(key).decrypt(wrappedData);
  }
  try {
    const unwrapped = await webCrypto$6.unwrapKey("raw", wrappedData, wrappingKey, { name: "AES-KW" }, { name: "HMAC", hash: "SHA-256" }, true, ["sign"]);
    return new Uint8Array(await webCrypto$6.exportKey("raw", unwrapped));
  } catch (err2) {
    if (err2.name === "OperationError") {
      throw new Error("Key Data Integrity failed");
    }
    throw err2;
  }
}
async function computeHKDF(hashAlgo, inputKey, salt, info, outLen) {
  const webCrypto2 = util11.getWebCrypto();
  const hash2 = enums.read(enums.webHash, hashAlgo);
  if (!hash2)
    throw new Error("Hash algo not supported with HKDF");
  const importedKey = await webCrypto2.importKey("raw", inputKey, "HKDF", false, ["deriveBits"]);
  const bits2 = await webCrypto2.deriveBits({ name: "HKDF", hash: hash2, salt, info }, importedKey, outLen * 8);
  return new Uint8Array(bits2);
}
async function generate$2(algo) {
  switch (algo) {
    case enums.publicKey.x25519:
      try {
        const webCrypto2 = util11.getWebCrypto();
        const webCryptoKey = await webCrypto2.generateKey("X25519", true, ["deriveKey", "deriveBits"]).catch((err2) => {
          if (err2.name === "OperationError") {
            const newErr = new Error("Unexpected key generation issue");
            newErr.name = "NotSupportedError";
            throw newErr;
          }
          throw err2;
        });
        const privateKey = await webCrypto2.exportKey("jwk", webCryptoKey.privateKey);
        const publicKey = await webCrypto2.exportKey("jwk", webCryptoKey.publicKey);
        if (privateKey.x !== publicKey.x) {
          const err2 = new Error("Unexpected mismatching public point");
          err2.name = "NotSupportedError";
          throw err2;
        }
        return {
          A: new Uint8Array(b64ToUint8Array(publicKey.x)),
          k: b64ToUint8Array(privateKey.d)
        };
      } catch (err2) {
        if (err2.name !== "NotSupportedError") {
          throw err2;
        }
        const { default: x25519 } = await Promise.resolve().then(function() {
          return naclFast;
        });
        const { secretKey: k2, publicKey: A2 } = x25519.box.keyPair();
        return { A: A2, k: k2 };
      }
    case enums.publicKey.x448: {
      const x4482 = await util11.getNobleCurve(enums.publicKey.x448);
      const { secretKey: k2, publicKey: A2 } = x4482.keygen();
      return { A: A2, k: k2 };
    }
    default:
      throw new Error("Unsupported ECDH algorithm");
  }
}
async function validateParams$6(algo, A2, k2) {
  switch (algo) {
    case enums.publicKey.x25519:
      try {
        const { ephemeralPublicKey, sharedSecret } = await generateEphemeralEncryptionMaterial(algo, A2);
        const recomputedSharedSecret = await recomputeSharedSecret(algo, ephemeralPublicKey, A2, k2);
        return util11.equalsUint8Array(sharedSecret, recomputedSharedSecret);
      } catch {
        return false;
      }
    case enums.publicKey.x448: {
      const x4482 = await util11.getNobleCurve(enums.publicKey.x448);
      const publicKey = x4482.getPublicKey(k2);
      return util11.equalsUint8Array(A2, publicKey);
    }
    default:
      return false;
  }
}
async function encrypt$3(algo, data, recipientA) {
  const { ephemeralPublicKey, sharedSecret } = await generateEphemeralEncryptionMaterial(algo, recipientA);
  const hkdfInput = util11.concatUint8Array([
    ephemeralPublicKey,
    recipientA,
    sharedSecret
  ]);
  switch (algo) {
    case enums.publicKey.x25519: {
      const cipherAlgo = enums.symmetric.aes128;
      const { keySize } = getCipherParams(cipherAlgo);
      const encryptionKey = await computeHKDF(enums.hash.sha256, hkdfInput, new Uint8Array(), HKDF_INFO.x25519, keySize);
      const wrappedKey = await wrap(cipherAlgo, encryptionKey, data);
      return { ephemeralPublicKey, wrappedKey };
    }
    case enums.publicKey.x448: {
      const cipherAlgo = enums.symmetric.aes256;
      const { keySize } = getCipherParams(enums.symmetric.aes256);
      const encryptionKey = await computeHKDF(enums.hash.sha512, hkdfInput, new Uint8Array(), HKDF_INFO.x448, keySize);
      const wrappedKey = await wrap(cipherAlgo, encryptionKey, data);
      return { ephemeralPublicKey, wrappedKey };
    }
    default:
      throw new Error("Unsupported ECDH algorithm");
  }
}
async function decrypt$3(algo, ephemeralPublicKey, wrappedKey, A2, k2) {
  const sharedSecret = await recomputeSharedSecret(algo, ephemeralPublicKey, A2, k2);
  const hkdfInput = util11.concatUint8Array([
    ephemeralPublicKey,
    A2,
    sharedSecret
  ]);
  switch (algo) {
    case enums.publicKey.x25519: {
      const cipherAlgo = enums.symmetric.aes128;
      const { keySize } = getCipherParams(cipherAlgo);
      const encryptionKey = await computeHKDF(enums.hash.sha256, hkdfInput, new Uint8Array(), HKDF_INFO.x25519, keySize);
      return unwrap(cipherAlgo, encryptionKey, wrappedKey);
    }
    case enums.publicKey.x448: {
      const cipherAlgo = enums.symmetric.aes256;
      const { keySize } = getCipherParams(enums.symmetric.aes256);
      const encryptionKey = await computeHKDF(enums.hash.sha512, hkdfInput, new Uint8Array(), HKDF_INFO.x448, keySize);
      return unwrap(cipherAlgo, encryptionKey, wrappedKey);
    }
    default:
      throw new Error("Unsupported ECDH algorithm");
  }
}
function getPayloadSize(algo) {
  switch (algo) {
    case enums.publicKey.x25519:
      return 32;
    case enums.publicKey.x448:
      return 56;
    default:
      throw new Error("Unsupported ECDH algorithm");
  }
}
async function generateEphemeralEncryptionMaterial(algo, recipientA) {
  switch (algo) {
    case enums.publicKey.x25519:
      try {
        const webCrypto2 = util11.getWebCrypto();
        const ephemeralKeyPair = await webCrypto2.generateKey("X25519", true, ["deriveKey", "deriveBits"]).catch((err2) => {
          if (err2.name === "OperationError") {
            const newErr = new Error("Unexpected key generation issue");
            newErr.name = "NotSupportedError";
            throw newErr;
          }
          throw err2;
        });
        const ephemeralPublicKeyJwt = await webCrypto2.exportKey("jwk", ephemeralKeyPair.publicKey);
        const ephemeralPrivateKeyJwt = await webCrypto2.exportKey("jwk", ephemeralKeyPair.privateKey);
        if (ephemeralPrivateKeyJwt.x !== ephemeralPublicKeyJwt.x) {
          const err2 = new Error("Unexpected mismatching public point");
          err2.name = "NotSupportedError";
          throw err2;
        }
        const jwk = publicKeyToJWK(algo, recipientA);
        const recipientPublicKey = await webCrypto2.importKey("jwk", jwk, "X25519", false, []);
        const sharedSecretBuffer = await webCrypto2.deriveBits(
          { name: "X25519", public: recipientPublicKey },
          ephemeralKeyPair.privateKey,
          getPayloadSize(algo) * 8
          // in bits
        );
        return {
          sharedSecret: new Uint8Array(sharedSecretBuffer),
          ephemeralPublicKey: new Uint8Array(b64ToUint8Array(ephemeralPublicKeyJwt.x))
        };
      } catch (err2) {
        if (err2.name !== "NotSupportedError") {
          throw err2;
        }
        const { default: x25519 } = await Promise.resolve().then(function() {
          return naclFast;
        });
        const { secretKey: ephemeralSecretKey, publicKey: ephemeralPublicKey } = x25519.box.keyPair();
        const sharedSecret = x25519.scalarMult(ephemeralSecretKey, recipientA);
        assertNonZeroArray(sharedSecret);
        return { ephemeralPublicKey, sharedSecret };
      }
    case enums.publicKey.x448: {
      const x4482 = await util11.getNobleCurve(enums.publicKey.x448);
      const { secretKey: ephemeralSecretKey, publicKey: ephemeralPublicKey } = x4482.keygen();
      const sharedSecret = x4482.getSharedSecret(ephemeralSecretKey, recipientA);
      assertNonZeroArray(sharedSecret);
      return { ephemeralPublicKey, sharedSecret };
    }
    default:
      throw new Error("Unsupported ECDH algorithm");
  }
}
async function recomputeSharedSecret(algo, ephemeralPublicKey, A2, k2) {
  switch (algo) {
    case enums.publicKey.x25519:
      try {
        const webCrypto2 = util11.getWebCrypto();
        const privateKeyJWK = privateKeyToJWK(algo, A2, k2);
        const ephemeralPublicKeyJWK = publicKeyToJWK(algo, ephemeralPublicKey);
        const privateKey = await webCrypto2.importKey("jwk", privateKeyJWK, "X25519", false, ["deriveKey", "deriveBits"]);
        const ephemeralPublicKeyReference = await webCrypto2.importKey("jwk", ephemeralPublicKeyJWK, "X25519", false, []);
        const sharedSecretBuffer = await webCrypto2.deriveBits(
          { name: "X25519", public: ephemeralPublicKeyReference },
          privateKey,
          getPayloadSize(algo) * 8
          // in bits
        );
        return new Uint8Array(sharedSecretBuffer);
      } catch (err2) {
        if (err2.name !== "NotSupportedError") {
          throw err2;
        }
        const { default: x25519 } = await Promise.resolve().then(function() {
          return naclFast;
        });
        const sharedSecret = x25519.scalarMult(k2, ephemeralPublicKey);
        assertNonZeroArray(sharedSecret);
        return sharedSecret;
      }
    case enums.publicKey.x448: {
      const x4482 = await util11.getNobleCurve(enums.publicKey.x448);
      const sharedSecret = x4482.getSharedSecret(k2, ephemeralPublicKey);
      assertNonZeroArray(sharedSecret);
      return sharedSecret;
    }
    default:
      throw new Error("Unsupported ECDH algorithm");
  }
}
function assertNonZeroArray(sharedSecret) {
  let acc = 0;
  for (let i4 = 0; i4 < sharedSecret.length; i4++) {
    acc |= sharedSecret[i4];
  }
  if (acc === 0) {
    throw new Error("Unexpected low order point");
  }
}
function publicKeyToJWK(algo, publicKey) {
  switch (algo) {
    case enums.publicKey.x25519: {
      const jwk = {
        kty: "OKP",
        crv: "X25519",
        x: uint8ArrayToB64(publicKey),
        ext: true
      };
      return jwk;
    }
    default:
      throw new Error("Unsupported ECDH algorithm");
  }
}
function privateKeyToJWK(algo, publicKey, privateKey) {
  switch (algo) {
    case enums.publicKey.x25519: {
      const jwk = publicKeyToJWK(algo, publicKey);
      jwk.d = uint8ArrayToB64(privateKey);
      return jwk;
    }
    default:
      throw new Error("Unsupported ECDH algorithm");
  }
}
async function generate$1(curveName) {
  const curve = new CurveWithOID(curveName);
  const { oid, hash: hash2, cipher } = curve;
  const keyPair = await curve.genKeyPair();
  return {
    oid,
    Q: keyPair.publicKey,
    secret: util11.leftPad(keyPair.privateKey, curve.payloadSize),
    hash: hash2,
    cipher
  };
}
function getPreferredHashAlgo$1(oid) {
  return curves[oid.getName()].hash;
}
async function validateStandardParams(algo, oid, Q, d3) {
  const supportedCurves = {
    [enums.curve.nistP256]: true,
    [enums.curve.nistP384]: true,
    [enums.curve.nistP521]: true,
    [enums.curve.secp256k1]: true,
    [enums.curve.curve25519Legacy]: algo === enums.publicKey.ecdh,
    [enums.curve.brainpoolP256r1]: true,
    [enums.curve.brainpoolP384r1]: true,
    [enums.curve.brainpoolP512r1]: true
  };
  const curveName = oid.getName();
  if (!supportedCurves[curveName]) {
    return false;
  }
  if (curveName === enums.curve.curve25519Legacy) {
    const dLittleEndian = d3.slice().reverse();
    if (Q.length < 1 || Q[0] !== 64) {
      return false;
    }
    return validateParams$6(enums.publicKey.x25519, Q.subarray(1), dLittleEndian);
  }
  const nobleCurve = await util11.getNobleCurve(enums.publicKey.ecdsa, curveName);
  const dG = nobleCurve.getPublicKey(d3, false);
  if (!util11.equalsUint8Array(dG, Q)) {
    return false;
  }
  return true;
}
function checkPublicPointEnconding(curve, V) {
  const { payloadSize, wireFormatLeadingByte, name: curveName } = curve;
  const pointSize = curveName === enums.curve.curve25519Legacy || curveName === enums.curve.ed25519Legacy ? payloadSize : payloadSize * 2;
  if (V[0] !== wireFormatLeadingByte || V.length !== pointSize + 1) {
    throw new Error("Invalid point encoding");
  }
}
async function jsGenKeyPair(name) {
  const nobleCurve = await util11.getNobleCurve(enums.publicKey.ecdsa, name);
  const { secretKey: privateKey } = nobleCurve.keygen();
  const publicKey = nobleCurve.getPublicKey(privateKey, false);
  return { publicKey, privateKey };
}
async function webGenKeyPair(name, wireFormatLeadingByte) {
  const webCryptoKey = await webCrypto$5.generateKey({ name: "ECDSA", namedCurve: webCurves[name] }, true, ["sign", "verify"]);
  const privateKey = await webCrypto$5.exportKey("jwk", webCryptoKey.privateKey);
  const publicKey = await webCrypto$5.exportKey("jwk", webCryptoKey.publicKey);
  return {
    publicKey: jwkToRawPublic(publicKey, wireFormatLeadingByte),
    privateKey: b64ToUint8Array(privateKey.d)
  };
}
function nodeGenKeyPair(name) {
  const ecdh2 = nodeCrypto$5.createECDH(nodeCurves[name]);
  ecdh2.generateKeys();
  return {
    publicKey: new Uint8Array(ecdh2.getPublicKey()),
    privateKey: new Uint8Array(ecdh2.getPrivateKey())
  };
}
function jwkToRawPublic(jwk, wireFormatLeadingByte) {
  const bufX = b64ToUint8Array(jwk.x);
  const bufY = b64ToUint8Array(jwk.y);
  const publicKey = new Uint8Array(bufX.length + bufY.length + 1);
  publicKey[0] = wireFormatLeadingByte;
  publicKey.set(bufX, 1);
  publicKey.set(bufY, bufX.length + 1);
  return publicKey;
}
function rawPublicToJWK(payloadSize, name, publicKey) {
  const len = payloadSize;
  const bufX = publicKey.slice(1, len + 1);
  const bufY = publicKey.slice(len + 1, len * 2 + 1);
  const jwk = {
    kty: "EC",
    crv: name,
    x: uint8ArrayToB64(bufX),
    y: uint8ArrayToB64(bufY),
    ext: true
  };
  return jwk;
}
function privateToJWK(payloadSize, name, publicKey, privateKey) {
  const jwk = rawPublicToJWK(payloadSize, name, publicKey);
  jwk.d = uint8ArrayToB64(privateKey);
  return jwk;
}
async function sign$4(oid, hashAlgo, message, publicKey, privateKey, hashed) {
  const curve = new CurveWithOID(oid);
  checkPublicPointEnconding(curve, publicKey);
  if (message && !util11.isStream(message)) {
    const keyPair = { publicKey, privateKey };
    switch (curve.type) {
      case "web":
        try {
          return await webSign(curve, hashAlgo, message, keyPair);
        } catch (err2) {
          if (curve.name !== "nistP521" && (err2.name === "DataError" || err2.name === "OperationError")) {
            throw err2;
          }
          util11.printDebugError("Browser did not support signing: " + err2.message);
        }
        break;
      case "node":
        return nodeSign(curve, hashAlgo, message, privateKey);
    }
  }
  const nobleCurve = await util11.getNobleCurve(enums.publicKey.ecdsa, curve.name);
  const signature = nobleCurve.sign(hashed, privateKey, { lowS: false });
  return {
    r: bigIntToUint8Array(signature.r, "be", curve.payloadSize),
    s: bigIntToUint8Array(signature.s, "be", curve.payloadSize)
  };
}
async function verify$4(oid, hashAlgo, signature, message, publicKey, hashed) {
  const curve = new CurveWithOID(oid);
  checkPublicPointEnconding(curve, publicKey);
  const tryFallbackVerificationForOldBug = async () => hashed[0] === 0 ? jsVerify(curve, signature, hashed.subarray(1), publicKey) : false;
  if (message && !util11.isStream(message)) {
    switch (curve.type) {
      case "web":
        try {
          const verified3 = await webVerify(curve, hashAlgo, signature, message, publicKey);
          return verified3 || tryFallbackVerificationForOldBug();
        } catch (err2) {
          if (curve.name !== "nistP521" && (err2.name === "DataError" || err2.name === "OperationError")) {
            throw err2;
          }
          util11.printDebugError("Browser did not support verifying: " + err2.message);
        }
        break;
      case "node": {
        const verified3 = nodeVerify(curve, hashAlgo, signature, message, publicKey);
        return verified3 || tryFallbackVerificationForOldBug();
      }
    }
  }
  const verified2 = await jsVerify(curve, signature, hashed, publicKey);
  return verified2 || tryFallbackVerificationForOldBug();
}
async function validateParams$5(oid, Q, d3) {
  const curve = new CurveWithOID(oid);
  if (curve.keyType !== enums.publicKey.ecdsa) {
    return false;
  }
  switch (curve.type) {
    case "web":
    case "node": {
      const message = getRandomBytes(8);
      const hashAlgo = enums.hash.sha256;
      const hashed = await computeDigest(hashAlgo, message);
      try {
        const signature = await sign$4(oid, hashAlgo, message, Q, d3, hashed);
        return await verify$4(oid, hashAlgo, signature, message, Q, hashed);
      } catch {
        return false;
      }
    }
    default:
      return validateStandardParams(enums.publicKey.ecdsa, oid, Q, d3);
  }
}
async function jsVerify(curve, signature, hashed, publicKey) {
  const nobleCurve = await util11.getNobleCurve(enums.publicKey.ecdsa, curve.name);
  return nobleCurve.verify(util11.concatUint8Array([signature.r, signature.s]), hashed, publicKey, { lowS: false });
}
async function webSign(curve, hashAlgo, message, keyPair) {
  const len = curve.payloadSize;
  const jwk = privateToJWK(curve.payloadSize, webCurves[curve.name], keyPair.publicKey, keyPair.privateKey);
  const key = await webCrypto$4.importKey("jwk", jwk, {
    "name": "ECDSA",
    "namedCurve": webCurves[curve.name],
    "hash": { name: enums.read(enums.webHash, curve.hash) }
  }, false, ["sign"]);
  const signature = new Uint8Array(await webCrypto$4.sign({
    "name": "ECDSA",
    "namedCurve": webCurves[curve.name],
    "hash": { name: enums.read(enums.webHash, hashAlgo) }
  }, key, message));
  return {
    r: signature.slice(0, len),
    s: signature.slice(len, len << 1)
  };
}
async function webVerify(curve, hashAlgo, { r, s }, message, publicKey) {
  const jwk = rawPublicToJWK(curve.payloadSize, webCurves[curve.name], publicKey);
  const key = await webCrypto$4.importKey("jwk", jwk, {
    "name": "ECDSA",
    "namedCurve": webCurves[curve.name],
    "hash": { name: enums.read(enums.webHash, curve.hash) }
  }, false, ["verify"]);
  const signature = util11.concatUint8Array([r, s]).buffer;
  return webCrypto$4.verify({
    "name": "ECDSA",
    "namedCurve": webCurves[curve.name],
    "hash": { name: enums.read(enums.webHash, hashAlgo) }
  }, key, signature, message);
}
function nodeSign(curve, hashAlgo, message, privateKey) {
  const ecKeyUtils = util11.nodeRequire("eckey-utils");
  const nodeBuffer = util11.getNodeBuffer();
  const { privateKey: derPrivateKey } = ecKeyUtils.generateDer({
    curveName: nodeCurves[curve.name],
    privateKey: nodeBuffer.from(privateKey)
  });
  const sign = nodeCrypto$4.createSign(enums.read(enums.hash, hashAlgo));
  sign.write(message);
  sign.end();
  const signature = new Uint8Array(sign.sign({ key: derPrivateKey, format: "der", type: "sec1", dsaEncoding: "ieee-p1363" }));
  const len = curve.payloadSize;
  return {
    r: signature.subarray(0, len),
    s: signature.subarray(len, len << 1)
  };
}
function nodeVerify(curve, hashAlgo, { r, s }, message, publicKey) {
  const ecKeyUtils = util11.nodeRequire("eckey-utils");
  const nodeBuffer = util11.getNodeBuffer();
  const { publicKey: derPublicKey } = ecKeyUtils.generateDer({
    curveName: nodeCurves[curve.name],
    publicKey: nodeBuffer.from(publicKey)
  });
  const verify = nodeCrypto$4.createVerify(enums.read(enums.hash, hashAlgo));
  verify.write(message);
  verify.end();
  const signature = util11.concatUint8Array([r, s]);
  try {
    return verify.verify({ key: derPublicKey, format: "der", type: "spki", dsaEncoding: "ieee-p1363" }, signature);
  } catch {
    return false;
  }
}
async function sign$3(oid, hashAlgo, message, publicKey, privateKey, hashed) {
  const curve = new CurveWithOID(oid);
  checkPublicPointEnconding(curve, publicKey);
  if (getHashByteLength(hashAlgo) < getHashByteLength(enums.hash.sha256)) {
    throw new Error("Hash algorithm too weak for EdDSA.");
  }
  const { RS: signature } = await sign$5(enums.publicKey.ed25519, hashAlgo, message, publicKey.subarray(1), privateKey, hashed);
  return {
    r: signature.subarray(0, 32),
    s: signature.subarray(32)
  };
}
async function verify$3(oid, hashAlgo, { r, s }, m, publicKey, hashed) {
  const curve = new CurveWithOID(oid);
  checkPublicPointEnconding(curve, publicKey);
  if (getHashByteLength(hashAlgo) < getHashByteLength(enums.hash.sha256)) {
    throw new Error("Hash algorithm too weak for EdDSA.");
  }
  const RS = util11.concatUint8Array([r, s]);
  return verify$5(enums.publicKey.ed25519, hashAlgo, { RS }, m, publicKey.subarray(1), hashed);
}
async function validateParams$4(oid, Q, k2) {
  if (oid.getName() !== enums.curve.ed25519Legacy) {
    return false;
  }
  if (Q.length < 1 || Q[0] !== 64) {
    return false;
  }
  return validateParams$7(enums.publicKey.ed25519, Q.subarray(1), k2);
}
function encode2(message) {
  const c3 = 8 - message.length % 8;
  const padded = new Uint8Array(message.length + c3).fill(c3);
  padded.set(message);
  return padded;
}
function decode2(message) {
  const len = message.length;
  if (len > 0) {
    const c3 = message[len - 1];
    if (c3 >= 1) {
      const provided = message.subarray(len - c3);
      const computed = new Uint8Array(c3).fill(c3);
      if (util11.equalsUint8Array(provided, computed)) {
        return message.subarray(0, len - c3);
      }
    }
  }
  throw new Error("Invalid padding");
}
async function validateParams$3(oid, Q, d3) {
  return validateStandardParams(enums.publicKey.ecdh, oid, Q, d3);
}
function buildEcdhParam(public_algo, oid, kdfParams, fingerprint) {
  return util11.concatUint8Array([
    oid.write(),
    new Uint8Array([public_algo]),
    kdfParams.write(),
    util11.stringToUint8Array("Anonymous Sender    "),
    fingerprint
  ]);
}
async function kdf(hashAlgo, X2, length, param, stripLeading = false, stripTrailing = false) {
  let i4;
  if (stripLeading) {
    for (i4 = 0; i4 < X2.length && X2[i4] === 0; i4++)
      ;
    X2 = X2.subarray(i4);
  }
  if (stripTrailing) {
    for (i4 = X2.length - 1; i4 >= 0 && X2[i4] === 0; i4--)
      ;
    X2 = X2.subarray(0, i4 + 1);
  }
  const digest = await computeDigest(hashAlgo, util11.concatUint8Array([
    new Uint8Array([0, 0, 0, 1]),
    X2,
    param
  ]));
  return digest.subarray(0, length);
}
async function genPublicEphemeralKey(curve, Q) {
  switch (curve.type) {
    case "curve25519Legacy": {
      const { sharedSecret: sharedKey, ephemeralPublicKey } = await generateEphemeralEncryptionMaterial(enums.publicKey.x25519, Q.subarray(1));
      const publicKey = util11.concatUint8Array([new Uint8Array([curve.wireFormatLeadingByte]), ephemeralPublicKey]);
      return { publicKey, sharedKey };
    }
    case "web":
      if (curve.web && util11.getWebCrypto()) {
        try {
          return await webPublicEphemeralKey(curve, Q);
        } catch (err2) {
          util11.printDebugError(err2);
          return jsPublicEphemeralKey(curve, Q);
        }
      }
      break;
    case "node":
      return nodePublicEphemeralKey(curve, Q);
    default:
      return jsPublicEphemeralKey(curve, Q);
  }
}
async function encrypt$2(oid, kdfParams, data, Q, fingerprint) {
  const m = encode2(data);
  const curve = new CurveWithOID(oid);
  checkPublicPointEnconding(curve, Q);
  const { publicKey, sharedKey } = await genPublicEphemeralKey(curve, Q);
  const param = buildEcdhParam(enums.publicKey.ecdh, oid, kdfParams, fingerprint);
  const { keySize } = getCipherParams(kdfParams.cipher);
  const Z2 = await kdf(kdfParams.hash, sharedKey, keySize, param);
  const wrappedKey = await wrap(kdfParams.cipher, Z2, m);
  return { publicKey, wrappedKey };
}
async function genPrivateEphemeralKey(curve, V, Q, d3) {
  if (d3.length !== curve.payloadSize) {
    const privateKey = new Uint8Array(curve.payloadSize);
    privateKey.set(d3, curve.payloadSize - d3.length);
    d3 = privateKey;
  }
  switch (curve.type) {
    case "curve25519Legacy": {
      const secretKey = d3.slice().reverse();
      const sharedKey = await recomputeSharedSecret(enums.publicKey.x25519, V.subarray(1), Q.subarray(1), secretKey);
      return { secretKey, sharedKey };
    }
    case "web":
      if (curve.web && util11.getWebCrypto()) {
        try {
          return await webPrivateEphemeralKey(curve, V, Q, d3);
        } catch (err2) {
          util11.printDebugError(err2);
          return jsPrivateEphemeralKey(curve, V, d3);
        }
      }
      break;
    case "node":
      return nodePrivateEphemeralKey(curve, V, d3);
    default:
      return jsPrivateEphemeralKey(curve, V, d3);
  }
}
async function decrypt$2(oid, kdfParams, V, C, Q, d3, fingerprint) {
  const curve = new CurveWithOID(oid);
  checkPublicPointEnconding(curve, Q);
  checkPublicPointEnconding(curve, V);
  const { sharedKey } = await genPrivateEphemeralKey(curve, V, Q, d3);
  const param = buildEcdhParam(enums.publicKey.ecdh, oid, kdfParams, fingerprint);
  const { keySize } = getCipherParams(kdfParams.cipher);
  let err2;
  for (let i4 = 0; i4 < 3; i4++) {
    try {
      const Z2 = await kdf(kdfParams.hash, sharedKey, keySize, param, i4 === 1, i4 === 2);
      return decode2(await unwrap(kdfParams.cipher, Z2, C));
    } catch (e) {
      err2 = e;
    }
  }
  throw err2;
}
async function jsPrivateEphemeralKey(curve, V, d3) {
  const nobleCurve = await util11.getNobleCurve(enums.publicKey.ecdh, curve.name);
  const sharedSecretWithParity = nobleCurve.getSharedSecret(d3, V);
  const sharedKey = sharedSecretWithParity.subarray(1);
  return { secretKey: d3, sharedKey };
}
async function jsPublicEphemeralKey(curve, Q) {
  const nobleCurve = await util11.getNobleCurve(enums.publicKey.ecdh, curve.name);
  const { publicKey: V, privateKey: v } = await curve.genKeyPair();
  const sharedSecretWithParity = nobleCurve.getSharedSecret(v, Q);
  const sharedKey = sharedSecretWithParity.subarray(1);
  return { publicKey: V, sharedKey };
}
async function webPrivateEphemeralKey(curve, V, Q, d3) {
  const webCrypto2 = util11.getWebCrypto();
  const recipient = privateToJWK(curve.payloadSize, curve.web, Q, d3);
  let privateKey = webCrypto2.importKey("jwk", recipient, {
    name: "ECDH",
    namedCurve: curve.web
  }, true, ["deriveKey", "deriveBits"]);
  const jwk = rawPublicToJWK(curve.payloadSize, curve.web, V);
  let sender = webCrypto2.importKey("jwk", jwk, {
    name: "ECDH",
    namedCurve: curve.web
  }, true, []);
  [privateKey, sender] = await Promise.all([privateKey, sender]);
  let S3 = webCrypto2.deriveBits({
    name: "ECDH",
    namedCurve: curve.web,
    public: sender
  }, privateKey, curve.sharedSize);
  let secret = webCrypto2.exportKey("jwk", privateKey);
  [S3, secret] = await Promise.all([S3, secret]);
  const sharedKey = new Uint8Array(S3);
  const secretKey = b64ToUint8Array(secret.d);
  return { secretKey, sharedKey };
}
async function webPublicEphemeralKey(curve, Q) {
  const webCrypto2 = util11.getWebCrypto();
  const jwk = rawPublicToJWK(curve.payloadSize, curve.web, Q);
  let keyPair = webCrypto2.generateKey({
    name: "ECDH",
    namedCurve: curve.web
  }, true, ["deriveKey", "deriveBits"]);
  let recipient = webCrypto2.importKey("jwk", jwk, {
    name: "ECDH",
    namedCurve: curve.web
  }, false, []);
  [keyPair, recipient] = await Promise.all([keyPair, recipient]);
  let s = webCrypto2.deriveBits({
    name: "ECDH",
    namedCurve: curve.web,
    public: recipient
  }, keyPair.privateKey, curve.sharedSize);
  let p = webCrypto2.exportKey("jwk", keyPair.publicKey);
  [s, p] = await Promise.all([s, p]);
  const sharedKey = new Uint8Array(s);
  const publicKey = new Uint8Array(jwkToRawPublic(p, curve.wireFormatLeadingByte));
  return { publicKey, sharedKey };
}
function nodePrivateEphemeralKey(curve, V, d3) {
  const nodeCrypto2 = util11.getNodeCrypto();
  const recipient = nodeCrypto2.createECDH(curve.node);
  recipient.setPrivateKey(d3);
  const sharedKey = new Uint8Array(recipient.computeSecret(V));
  const secretKey = new Uint8Array(recipient.getPrivateKey());
  return { secretKey, sharedKey };
}
function nodePublicEphemeralKey(curve, Q) {
  const nodeCrypto2 = util11.getNodeCrypto();
  const sender = nodeCrypto2.createECDH(curve.node);
  sender.generateKeys();
  const sharedKey = new Uint8Array(sender.computeSecret(Q));
  const publicKey = new Uint8Array(sender.getPublicKey());
  return { publicKey, sharedKey };
}
async function sign$2(hashAlgo, hashed, g, p, q, x3) {
  const _0n2 = BigInt(0);
  p = uint8ArrayToBigInt(p);
  q = uint8ArrayToBigInt(q);
  g = uint8ArrayToBigInt(g);
  x3 = uint8ArrayToBigInt(x3);
  let k2;
  let r;
  let s;
  let t2;
  g = mod$1(g, p);
  x3 = mod$1(x3, q);
  const h2 = mod$1(uint8ArrayToBigInt(hashed.subarray(0, byteLength(q))), q);
  while (true) {
    k2 = getRandomBigInteger(_1n$8, q);
    r = mod$1(modExp(g, k2, p), q);
    if (r === _0n2) {
      continue;
    }
    const xr = mod$1(x3 * r, q);
    t2 = mod$1(h2 + xr, q);
    s = mod$1(modInv(k2, q) * t2, q);
    if (s === _0n2) {
      continue;
    }
    break;
  }
  return {
    r: bigIntToUint8Array(r, "be", byteLength(p)),
    s: bigIntToUint8Array(s, "be", byteLength(p))
  };
}
async function verify$2(hashAlgo, r, s, hashed, g, p, q, y) {
  r = uint8ArrayToBigInt(r);
  s = uint8ArrayToBigInt(s);
  p = uint8ArrayToBigInt(p);
  q = uint8ArrayToBigInt(q);
  g = uint8ArrayToBigInt(g);
  y = uint8ArrayToBigInt(y);
  if (r <= _0n$7 || r >= q || s <= _0n$7 || s >= q) {
    util11.printDebug("invalid DSA Signature");
    return false;
  }
  const h2 = mod$1(uint8ArrayToBigInt(hashed.subarray(0, byteLength(q))), q);
  const w = modInv(s, q);
  if (w === _0n$7) {
    util11.printDebug("invalid DSA Signature");
    return false;
  }
  g = mod$1(g, p);
  y = mod$1(y, p);
  const u1 = mod$1(h2 * w, q);
  const u2 = mod$1(r * w, q);
  const t1 = modExp(g, u1, p);
  const t2 = modExp(y, u2, p);
  const v = mod$1(mod$1(t1 * t2, p), q);
  return v === r;
}
async function validateParams$2(pBytes, qBytes, gBytes, yBytes, xBytes) {
  const p = uint8ArrayToBigInt(pBytes);
  const q = uint8ArrayToBigInt(qBytes);
  const g = uint8ArrayToBigInt(gBytes);
  const y = uint8ArrayToBigInt(yBytes);
  if (g <= _1n$8 || g >= p) {
    return false;
  }
  if (mod$1(p - _1n$8, q) !== _0n$7) {
    return false;
  }
  if (modExp(g, q, p) !== _1n$8) {
    return false;
  }
  const qSize = BigInt(bitLength(q));
  const _150n = BigInt(150);
  if (qSize < _150n || !isProbablePrime(q, null, 32)) {
    return false;
  }
  const x3 = uint8ArrayToBigInt(xBytes);
  const _2n2 = BigInt(2);
  const r = getRandomBigInteger(_2n2 << qSize - _1n$8, _2n2 << qSize);
  const rqx = q * r + x3;
  if (y !== modExp(g, rqx, p)) {
    return false;
  }
  return true;
}
async function publicKeyEncrypt(keyAlgo, symmetricAlgo, publicParams, data, fingerprint) {
  switch (keyAlgo) {
    case enums.publicKey.rsaEncrypt:
    case enums.publicKey.rsaEncryptSign: {
      const { n: n2, e } = publicParams;
      const c3 = await encrypt$6(data, n2, e);
      return { c: c3 };
    }
    case enums.publicKey.elgamal: {
      const { p, g, y } = publicParams;
      return encrypt$5(data, p, g, y);
    }
    case enums.publicKey.ecdh: {
      const { oid, Q, kdfParams } = publicParams;
      const { publicKey: V, wrappedKey: C } = await encrypt$2(oid, kdfParams, data, Q, fingerprint);
      return { V, C: new ECDHSymmetricKey(C) };
    }
    case enums.publicKey.x25519:
    case enums.publicKey.x448: {
      if (symmetricAlgo && !util11.isAES(symmetricAlgo)) {
        throw new Error("X25519 and X448 keys can only encrypt AES session keys");
      }
      const { A: A2 } = publicParams;
      const { ephemeralPublicKey, wrappedKey } = await encrypt$3(keyAlgo, data, A2);
      const C = ECDHXSymmetricKey.fromObject({ algorithm: symmetricAlgo, wrappedKey });
      return { ephemeralPublicKey, C };
    }
    default:
      return [];
  }
}
async function publicKeyDecrypt(algo, publicKeyParams, privateKeyParams, sessionKeyParams, fingerprint, randomPayload) {
  switch (algo) {
    case enums.publicKey.rsaEncryptSign:
    case enums.publicKey.rsaEncrypt: {
      const { c: c3 } = sessionKeyParams;
      const { n: n2, e } = publicKeyParams;
      const { d: d3, p, q, u: u2 } = privateKeyParams;
      return decrypt$6(c3, n2, e, d3, p, q, u2, randomPayload);
    }
    case enums.publicKey.elgamal: {
      const { c1, c2: c22 } = sessionKeyParams;
      const p = publicKeyParams.p;
      const x3 = privateKeyParams.x;
      return decrypt$5(c1, c22, p, x3, randomPayload);
    }
    case enums.publicKey.ecdh: {
      const { oid, Q, kdfParams } = publicKeyParams;
      const { d: d3 } = privateKeyParams;
      const { V, C } = sessionKeyParams;
      return decrypt$2(oid, kdfParams, V, C.data, Q, d3, fingerprint);
    }
    case enums.publicKey.x25519:
    case enums.publicKey.x448: {
      const { A: A2 } = publicKeyParams;
      const { k: k2 } = privateKeyParams;
      const { ephemeralPublicKey, C } = sessionKeyParams;
      if (C.algorithm !== null && !util11.isAES(C.algorithm)) {
        throw new Error("AES session key expected");
      }
      return decrypt$3(algo, ephemeralPublicKey, C.wrappedKey, A2, k2);
    }
    default:
      throw new Error("Unknown public key encryption algorithm.");
  }
}
function parsePublicKeyParams(algo, bytes) {
  let read2 = 0;
  switch (algo) {
    case enums.publicKey.rsaEncrypt:
    case enums.publicKey.rsaEncryptSign:
    case enums.publicKey.rsaSign: {
      const n2 = util11.readMPI(bytes.subarray(read2));
      read2 += n2.length + 2;
      const e = util11.readMPI(bytes.subarray(read2));
      read2 += e.length + 2;
      return { read: read2, publicParams: { n: n2, e } };
    }
    case enums.publicKey.dsa: {
      const p = util11.readMPI(bytes.subarray(read2));
      read2 += p.length + 2;
      const q = util11.readMPI(bytes.subarray(read2));
      read2 += q.length + 2;
      const g = util11.readMPI(bytes.subarray(read2));
      read2 += g.length + 2;
      const y = util11.readMPI(bytes.subarray(read2));
      read2 += y.length + 2;
      return { read: read2, publicParams: { p, q, g, y } };
    }
    case enums.publicKey.elgamal: {
      const p = util11.readMPI(bytes.subarray(read2));
      read2 += p.length + 2;
      const g = util11.readMPI(bytes.subarray(read2));
      read2 += g.length + 2;
      const y = util11.readMPI(bytes.subarray(read2));
      read2 += y.length + 2;
      return { read: read2, publicParams: { p, g, y } };
    }
    case enums.publicKey.ecdsa: {
      const oid = new OID();
      read2 += oid.read(bytes);
      checkSupportedCurve(oid);
      const Q = util11.readMPI(bytes.subarray(read2));
      read2 += Q.length + 2;
      return { read: read2, publicParams: { oid, Q } };
    }
    case enums.publicKey.eddsaLegacy: {
      const oid = new OID();
      read2 += oid.read(bytes);
      checkSupportedCurve(oid);
      if (oid.getName() !== enums.curve.ed25519Legacy) {
        throw new Error("Unexpected OID for eddsaLegacy");
      }
      let Q = util11.readMPI(bytes.subarray(read2));
      read2 += Q.length + 2;
      Q = util11.leftPad(Q, 33);
      return { read: read2, publicParams: { oid, Q } };
    }
    case enums.publicKey.ecdh: {
      const oid = new OID();
      read2 += oid.read(bytes);
      checkSupportedCurve(oid);
      const Q = util11.readMPI(bytes.subarray(read2));
      read2 += Q.length + 2;
      const kdfParams = new KDFParams();
      read2 += kdfParams.read(bytes.subarray(read2));
      return { read: read2, publicParams: { oid, Q, kdfParams } };
    }
    case enums.publicKey.ed25519:
    case enums.publicKey.ed448:
    case enums.publicKey.x25519:
    case enums.publicKey.x448: {
      const A2 = util11.readExactSubarray(bytes, read2, read2 + getCurvePayloadSize(algo));
      read2 += A2.length;
      return { read: read2, publicParams: { A: A2 } };
    }
    default:
      throw new UnsupportedError("Unknown public key encryption algorithm.");
  }
}
function parsePrivateKeyParams(algo, bytes, publicParams) {
  let read2 = 0;
  switch (algo) {
    case enums.publicKey.rsaEncrypt:
    case enums.publicKey.rsaEncryptSign:
    case enums.publicKey.rsaSign: {
      const d3 = util11.readMPI(bytes.subarray(read2));
      read2 += d3.length + 2;
      const p = util11.readMPI(bytes.subarray(read2));
      read2 += p.length + 2;
      const q = util11.readMPI(bytes.subarray(read2));
      read2 += q.length + 2;
      const u2 = util11.readMPI(bytes.subarray(read2));
      read2 += u2.length + 2;
      return { read: read2, privateParams: { d: d3, p, q, u: u2 } };
    }
    case enums.publicKey.dsa:
    case enums.publicKey.elgamal: {
      const x3 = util11.readMPI(bytes.subarray(read2));
      read2 += x3.length + 2;
      return { read: read2, privateParams: { x: x3 } };
    }
    case enums.publicKey.ecdsa:
    case enums.publicKey.ecdh: {
      const payloadSize = getCurvePayloadSize(algo, publicParams.oid);
      let d3 = util11.readMPI(bytes.subarray(read2));
      read2 += d3.length + 2;
      d3 = util11.leftPad(d3, payloadSize);
      return { read: read2, privateParams: { d: d3 } };
    }
    case enums.publicKey.eddsaLegacy: {
      const payloadSize = getCurvePayloadSize(algo, publicParams.oid);
      if (publicParams.oid.getName() !== enums.curve.ed25519Legacy) {
        throw new Error("Unexpected OID for eddsaLegacy");
      }
      let seed = util11.readMPI(bytes.subarray(read2));
      read2 += seed.length + 2;
      seed = util11.leftPad(seed, payloadSize);
      return { read: read2, privateParams: { seed } };
    }
    case enums.publicKey.ed25519:
    case enums.publicKey.ed448: {
      const payloadSize = getCurvePayloadSize(algo);
      const seed = util11.readExactSubarray(bytes, read2, read2 + payloadSize);
      read2 += seed.length;
      return { read: read2, privateParams: { seed } };
    }
    case enums.publicKey.x25519:
    case enums.publicKey.x448: {
      const payloadSize = getCurvePayloadSize(algo);
      const k2 = util11.readExactSubarray(bytes, read2, read2 + payloadSize);
      read2 += k2.length;
      return { read: read2, privateParams: { k: k2 } };
    }
    default:
      throw new UnsupportedError("Unknown public key encryption algorithm.");
  }
}
function parseEncSessionKeyParams(algo, bytes) {
  let read2 = 0;
  switch (algo) {
    //   Algorithm-Specific Fields for RSA encrypted session keys:
    //       - MPI of RSA encrypted value m**e mod n.
    case enums.publicKey.rsaEncrypt:
    case enums.publicKey.rsaEncryptSign: {
      const c3 = util11.readMPI(bytes.subarray(read2));
      return { c: c3 };
    }
    //   Algorithm-Specific Fields for Elgamal encrypted session keys:
    //       - MPI of Elgamal value g**k mod p
    //       - MPI of Elgamal value m * y**k mod p
    case enums.publicKey.elgamal: {
      const c1 = util11.readMPI(bytes.subarray(read2));
      read2 += c1.length + 2;
      const c22 = util11.readMPI(bytes.subarray(read2));
      return { c1, c2: c22 };
    }
    //   Algorithm-Specific Fields for ECDH encrypted session keys:
    //       - MPI containing the ephemeral key used to establish the shared secret
    //       - ECDH Symmetric Key
    case enums.publicKey.ecdh: {
      const V = util11.readMPI(bytes.subarray(read2));
      read2 += V.length + 2;
      const C = new ECDHSymmetricKey();
      C.read(bytes.subarray(read2));
      return { V, C };
    }
    //   Algorithm-Specific Fields for X25519 or X448 encrypted session keys:
    //       - 32 octets representing an ephemeral X25519 public key (or 57 octets for X448).
    //       - A one-octet size of the following fields.
    //       - The one-octet algorithm identifier, if it was passed (in the case of a v3 PKESK packet).
    //       - The encrypted session key.
    case enums.publicKey.x25519:
    case enums.publicKey.x448: {
      const pointSize = getCurvePayloadSize(algo);
      const ephemeralPublicKey = util11.readExactSubarray(bytes, read2, read2 + pointSize);
      read2 += ephemeralPublicKey.length;
      const C = new ECDHXSymmetricKey();
      C.read(bytes.subarray(read2));
      return { ephemeralPublicKey, C };
    }
    default:
      throw new UnsupportedError("Unknown public key encryption algorithm.");
  }
}
function serializeParams(algo, params) {
  const algosWithNativeRepresentation = /* @__PURE__ */ new Set([
    enums.publicKey.ed25519,
    enums.publicKey.x25519,
    enums.publicKey.ed448,
    enums.publicKey.x448
  ]);
  const orderedParams = Object.keys(params).map((name) => {
    const param = params[name];
    if (!util11.isUint8Array(param))
      return param.write();
    return algosWithNativeRepresentation.has(algo) ? param : util11.uint8ArrayToMPI(param);
  });
  return util11.concatUint8Array(orderedParams);
}
function generateParams(algo, bits2, oid) {
  switch (algo) {
    case enums.publicKey.rsaEncrypt:
    case enums.publicKey.rsaEncryptSign:
    case enums.publicKey.rsaSign:
      return generate$4(bits2, 65537).then(({ n: n2, e, d: d3, p, q, u: u2 }) => ({
        privateParams: { d: d3, p, q, u: u2 },
        publicParams: { n: n2, e }
      }));
    case enums.publicKey.ecdsa:
      return generate$1(oid).then(({ oid: oid2, Q, secret }) => ({
        privateParams: { d: secret },
        publicParams: { oid: new OID(oid2), Q }
      }));
    case enums.publicKey.eddsaLegacy:
      return generate$1(oid).then(({ oid: oid2, Q, secret }) => ({
        privateParams: { seed: secret },
        publicParams: { oid: new OID(oid2), Q }
      }));
    case enums.publicKey.ecdh:
      return generate$1(oid).then(({ oid: oid2, Q, secret, hash: hash2, cipher }) => ({
        privateParams: { d: secret },
        publicParams: {
          oid: new OID(oid2),
          Q,
          kdfParams: new KDFParams({ hash: hash2, cipher })
        }
      }));
    case enums.publicKey.ed25519:
    case enums.publicKey.ed448:
      return generate$3(algo).then(({ A: A2, seed }) => ({
        privateParams: { seed },
        publicParams: { A: A2 }
      }));
    case enums.publicKey.x25519:
    case enums.publicKey.x448:
      return generate$2(algo).then(({ A: A2, k: k2 }) => ({
        privateParams: { k: k2 },
        publicParams: { A: A2 }
      }));
    case enums.publicKey.dsa:
    case enums.publicKey.elgamal:
      throw new Error("Unsupported algorithm for key generation.");
    default:
      throw new Error("Unknown public key algorithm.");
  }
}
async function validateParams$1(algo, publicParams, privateParams) {
  if (!publicParams || !privateParams) {
    throw new Error("Missing key parameters");
  }
  switch (algo) {
    case enums.publicKey.rsaEncrypt:
    case enums.publicKey.rsaEncryptSign:
    case enums.publicKey.rsaSign: {
      const { n: n2, e } = publicParams;
      const { d: d3, p, q, u: u2 } = privateParams;
      return validateParams$9(n2, e, d3, p, q, u2);
    }
    case enums.publicKey.dsa: {
      const { p, q, g, y } = publicParams;
      const { x: x3 } = privateParams;
      return validateParams$2(p, q, g, y, x3);
    }
    case enums.publicKey.elgamal: {
      const { p, g, y } = publicParams;
      const { x: x3 } = privateParams;
      return validateParams$8(p, g, y, x3);
    }
    case enums.publicKey.ecdsa:
    case enums.publicKey.ecdh: {
      const algoModule = elliptic[enums.read(enums.publicKey, algo)];
      const { oid, Q } = publicParams;
      const { d: d3 } = privateParams;
      return algoModule.validateParams(oid, Q, d3);
    }
    case enums.publicKey.eddsaLegacy: {
      const { Q, oid } = publicParams;
      const { seed } = privateParams;
      return validateParams$4(oid, Q, seed);
    }
    case enums.publicKey.ed25519:
    case enums.publicKey.ed448: {
      const { A: A2 } = publicParams;
      const { seed } = privateParams;
      return validateParams$7(algo, A2, seed);
    }
    case enums.publicKey.x25519:
    case enums.publicKey.x448: {
      const { A: A2 } = publicParams;
      const { k: k2 } = privateParams;
      return validateParams$6(algo, A2, k2);
    }
    default:
      throw new Error("Unknown public key algorithm.");
  }
}
function generateSessionKey$1(algo) {
  const { keySize } = getCipherParams(algo);
  return getRandomBytes(keySize);
}
function checkSupportedCurve(oid) {
  try {
    oid.getName();
  } catch {
    throw new UnsupportedError("Unknown curve OID");
  }
}
function getCurvePayloadSize(algo, oid) {
  switch (algo) {
    case enums.publicKey.ecdsa:
    case enums.publicKey.ecdh:
    case enums.publicKey.eddsaLegacy:
      return new CurveWithOID(oid).payloadSize;
    case enums.publicKey.ed25519:
    case enums.publicKey.ed448:
      return getPayloadSize$1(algo);
    case enums.publicKey.x25519:
    case enums.publicKey.x448:
      return getPayloadSize(algo);
    default:
      throw new Error("Unknown elliptic algo");
  }
}
function getPreferredCurveHashAlgo(algo, oid) {
  switch (algo) {
    case enums.publicKey.ecdsa:
    case enums.publicKey.eddsaLegacy:
      return getPreferredHashAlgo$1(oid);
    case enums.publicKey.ed25519:
    case enums.publicKey.ed448:
      return getPreferredHashAlgo$2(algo);
    default:
      throw new Error("Unknown elliptic signing algo");
  }
}
function getPrefixRandom(algo) {
  const { blockSize } = getCipherParams(algo);
  const prefixrandom = getRandomBytes(blockSize);
  const repeat4 = new Uint8Array([prefixrandom[prefixrandom.length - 2], prefixrandom[prefixrandom.length - 1]]);
  return util11.concat([prefixrandom, repeat4]);
}
async function encrypt$1(algo, key, plaintext, iv, config2) {
  const algoName = enums.read(enums.symmetric, algo);
  if (util11.getNodeCrypto() && nodeAlgos[algoName]) {
    return nodeEncrypt(algo, key, plaintext, iv);
  }
  if (util11.isAES(algo)) {
    return aesEncrypt(algo, key, plaintext, iv);
  }
  const LegacyCipher = await getLegacyCipher(algo);
  const cipherfn = new LegacyCipher(key);
  const block_size = cipherfn.blockSize;
  const blockc = iv.slice();
  let pt = new Uint8Array();
  const process25 = (chunk) => {
    if (chunk) {
      pt = util11.concatUint8Array([pt, chunk]);
    }
    const ciphertext = new Uint8Array(pt.length);
    let i4;
    let j2 = 0;
    while (chunk ? pt.length >= block_size : pt.length) {
      const encblock = cipherfn.encrypt(blockc);
      for (i4 = 0; i4 < block_size; i4++) {
        blockc[i4] = pt[i4] ^ encblock[i4];
        ciphertext[j2++] = blockc[i4];
      }
      pt = pt.subarray(block_size);
    }
    return ciphertext.subarray(0, j2);
  };
  return transform(plaintext, process25, process25);
}
async function decrypt$1(algo, key, ciphertext, iv) {
  const algoName = enums.read(enums.symmetric, algo);
  if (nodeCrypto$3 && nodeAlgos[algoName]) {
    return nodeDecrypt(algo, key, ciphertext, iv);
  }
  if (util11.isAES(algo)) {
    return aesDecrypt(algo, key, ciphertext, iv);
  }
  const LegacyCipher = await getLegacyCipher(algo);
  const cipherfn = new LegacyCipher(key);
  const block_size = cipherfn.blockSize;
  let blockp = iv;
  let ct = new Uint8Array();
  const process25 = (chunk) => {
    if (chunk) {
      ct = util11.concatUint8Array([ct, chunk]);
    }
    const plaintext = new Uint8Array(ct.length);
    let i4;
    let j2 = 0;
    while (chunk ? ct.length >= block_size : ct.length) {
      const decblock = cipherfn.encrypt(blockp);
      blockp = ct.subarray(0, block_size);
      for (i4 = 0; i4 < block_size; i4++) {
        plaintext[j2++] = blockp[i4] ^ decblock[i4];
      }
      ct = ct.subarray(block_size);
    }
    return plaintext.subarray(0, j2);
  };
  return transform(ciphertext, process25, process25);
}
async function aesEncrypt(algo, key, pt, iv) {
  if (webCrypto$3 && await WebCryptoEncryptor.isSupported(algo)) {
    const cfb2 = new WebCryptoEncryptor(algo, key, iv);
    return util11.isStream(pt) ? transformAsync(pt, (value) => cfb2.encryptChunk(value), () => cfb2.finish()) : cfb2.encrypt(pt);
  } else if (util11.isStream(pt)) {
    const cfb2 = new NobleStreamProcessor(true, algo, key, iv);
    return transformAsync(pt, (value) => cfb2.processChunk(value), () => cfb2.finish());
  }
  return cfb(key, iv).encrypt(pt);
}
function aesDecrypt(algo, key, ct, iv) {
  if (util11.isStream(ct)) {
    const cfb2 = new NobleStreamProcessor(false, algo, key, iv);
    return transformAsync(ct, (value) => cfb2.processChunk(value), () => cfb2.finish());
  }
  return cfb(key, iv).decrypt(ct);
}
function xorMut$1(a2, b) {
  const aLength = Math.min(a2.length, b.length);
  for (let i4 = 0; i4 < aLength; i4++) {
    a2[i4] = a2[i4] ^ b[i4];
  }
}
function nodeEncrypt(algo, key, pt, iv) {
  const algoName = enums.read(enums.symmetric, algo);
  const cipherObj = new nodeCrypto$3.createCipheriv(nodeAlgos[algoName], key, iv);
  return transform(pt, (value) => new Uint8Array(cipherObj.update(value)));
}
function nodeDecrypt(algo, key, ct, iv) {
  const algoName = enums.read(enums.symmetric, algo);
  const decipherObj = new nodeCrypto$3.createDecipheriv(nodeAlgos[algoName], key, iv);
  return transform(ct, (value) => new Uint8Array(decipherObj.update(value)));
}
function rightXORMut(data, padding) {
  const offset = data.length - blockLength$3;
  for (let i4 = 0; i4 < blockLength$3; i4++) {
    data[i4 + offset] ^= padding[i4];
  }
  return data;
}
function pad3(data, padding, padding2) {
  if (data.length && data.length % blockLength$3 === 0) {
    return rightXORMut(data, padding);
  }
  const padded = new Uint8Array(data.length + (blockLength$3 - data.length % blockLength$3));
  padded.set(data);
  padded[data.length] = 128;
  return rightXORMut(padded, padding2);
}
async function CMAC(key) {
  const cbc2 = await CBC(key);
  const padding = util11.double(await cbc2(zeroBlock$1));
  const padding2 = util11.double(padding);
  return async function(data) {
    return (await cbc2(pad3(data, padding, padding2))).subarray(-blockLength$3);
  };
}
async function CBC(key) {
  if (util11.getNodeCrypto()) {
    return async function(pt) {
      const en = new nodeCrypto$2.createCipheriv("aes-" + key.length * 8 + "-cbc", key, zeroBlock$1);
      const ct = en.update(pt);
      return new Uint8Array(ct);
    };
  }
  if (util11.getWebCrypto()) {
    try {
      key = await webCrypto$2.importKey("raw", key, { name: "AES-CBC", length: key.length * 8 }, false, ["encrypt"]);
      return async function(pt) {
        const ct = await webCrypto$2.encrypt({ name: "AES-CBC", iv: zeroBlock$1, length: blockLength$3 * 8 }, key, pt);
        return new Uint8Array(ct).subarray(0, ct.byteLength - blockLength$3);
      };
    } catch (err2) {
      if (err2.name !== "NotSupportedError" && !(key.length === 24 && err2.name === "OperationError")) {
        throw err2;
      }
      util11.printDebugError("Browser did not support operation: " + err2.message);
    }
  }
  return async function(pt) {
    return cbc(key, zeroBlock$1, { disablePadding: true }).encrypt(pt);
  };
}
async function OMAC(key) {
  const cmac = await CMAC(key);
  return function(t2, message) {
    return cmac(util11.concatUint8Array([t2, message]));
  };
}
async function CTR(key) {
  if (util11.getNodeCrypto()) {
    return async function(pt, iv) {
      const en = new nodeCrypto$1.createCipheriv("aes-" + key.length * 8 + "-ctr", key, iv);
      const ct = Buffer$2.concat([en.update(pt), en.final()]);
      return new Uint8Array(ct);
    };
  }
  if (util11.getWebCrypto()) {
    try {
      const keyRef = await webCrypto$1.importKey("raw", key, { name: "AES-CTR", length: key.length * 8 }, false, ["encrypt"]);
      return async function(pt, iv) {
        const ct = await webCrypto$1.encrypt({ name: "AES-CTR", counter: iv, length: blockLength$2 * 8 }, keyRef, pt);
        return new Uint8Array(ct);
      };
    } catch (err2) {
      if (err2.name !== "NotSupportedError" && !(key.length === 24 && err2.name === "OperationError")) {
        throw err2;
      }
      util11.printDebugError("Browser did not support operation: " + err2.message);
    }
  }
  return async function(pt, iv) {
    return ctr(key, iv).encrypt(pt);
  };
}
async function EAX(cipher, key) {
  if (cipher !== enums.symmetric.aes128 && cipher !== enums.symmetric.aes192 && cipher !== enums.symmetric.aes256) {
    throw new Error("EAX mode supports only AES cipher");
  }
  const [omac, ctr2] = await Promise.all([
    OMAC(key),
    CTR(key)
  ]);
  return {
    /**
     * Encrypt plaintext input.
     * @param {Uint8Array} plaintext - The cleartext input to be encrypted
     * @param {Uint8Array} nonce - The nonce (16 bytes)
     * @param {Uint8Array} adata - Associated data to sign
     * @returns {Promise<Uint8Array>} The ciphertext output.
     */
    encrypt: async function(plaintext, nonce, adata) {
      const [omacNonce, omacAdata] = await Promise.all([
        omac(zero, nonce),
        omac(one$1, adata)
      ]);
      const ciphered = await ctr2(plaintext, omacNonce);
      const omacCiphered = await omac(two, ciphered);
      const tag = omacCiphered;
      for (let i4 = 0; i4 < tagLength$2; i4++) {
        tag[i4] ^= omacAdata[i4] ^ omacNonce[i4];
      }
      return util11.concatUint8Array([ciphered, tag]);
    },
    /**
     * Decrypt ciphertext input.
     * @param {Uint8Array} ciphertext - The ciphertext input to be decrypted
     * @param {Uint8Array} nonce - The nonce (16 bytes)
     * @param {Uint8Array} adata - Associated data to verify
     * @returns {Promise<Uint8Array>} The plaintext output.
     */
    decrypt: async function(ciphertext, nonce, adata) {
      if (ciphertext.length < tagLength$2)
        throw new Error("Invalid EAX ciphertext");
      const ciphered = ciphertext.subarray(0, -tagLength$2);
      const ctTag = ciphertext.subarray(-tagLength$2);
      const [omacNonce, omacAdata, omacCiphered] = await Promise.all([
        omac(zero, nonce),
        omac(one$1, adata),
        omac(two, ciphered)
      ]);
      const tag = omacCiphered;
      for (let i4 = 0; i4 < tagLength$2; i4++) {
        tag[i4] ^= omacAdata[i4] ^ omacNonce[i4];
      }
      if (!util11.equalsUint8Array(ctTag, tag))
        throw new Error("Authentication tag mismatch");
      const plaintext = await ctr2(ciphered, omacNonce);
      return plaintext;
    }
  };
}
function ntz(n2) {
  let ntz2 = 0;
  for (let i4 = 1; (n2 & i4) === 0; i4 <<= 1) {
    ntz2++;
  }
  return ntz2;
}
function xorMut(S3, T2) {
  for (let i4 = 0; i4 < S3.length; i4++) {
    S3[i4] ^= T2[i4];
  }
  return S3;
}
function xor(S3, T2) {
  return xorMut(S3.slice(), T2);
}
async function OCB(cipher, key) {
  const { keySize } = getCipherParams(cipher);
  if (!util11.isAES(cipher) || key.length !== keySize) {
    throw new Error("Unexpected algorithm or key size");
  }
  let maxNtz = 0;
  const encipher = (block) => cbc(key, zeroBlock, { disablePadding: true }).encrypt(block);
  const decipher = (block) => cbc(key, zeroBlock, { disablePadding: true }).decrypt(block);
  let mask;
  constructKeyVariables();
  function constructKeyVariables() {
    const mask_x = encipher(zeroBlock);
    const mask_$ = util11.double(mask_x);
    mask = [];
    mask[0] = util11.double(mask_$);
    mask.x = mask_x;
    mask.$ = mask_$;
  }
  function extendKeyVariables(text, adata) {
    const newMaxNtz = util11.nbits(Math.max(text.length, adata.length) / blockLength$1 | 0) - 1;
    for (let i4 = maxNtz + 1; i4 <= newMaxNtz; i4++) {
      mask[i4] = util11.double(mask[i4 - 1]);
    }
    maxNtz = newMaxNtz;
  }
  function hash2(adata) {
    if (!adata.length) {
      return zeroBlock;
    }
    const m = adata.length / blockLength$1 | 0;
    const offset = new Uint8Array(blockLength$1);
    const sum = new Uint8Array(blockLength$1);
    for (let i4 = 0; i4 < m; i4++) {
      xorMut(offset, mask[ntz(i4 + 1)]);
      xorMut(sum, encipher(xor(offset, adata)));
      adata = adata.subarray(blockLength$1);
    }
    if (adata.length) {
      xorMut(offset, mask.x);
      const cipherInput = new Uint8Array(blockLength$1);
      cipherInput.set(adata, 0);
      cipherInput[adata.length] = 128;
      xorMut(cipherInput, offset);
      xorMut(sum, encipher(cipherInput));
    }
    return sum;
  }
  function crypt(fn, text, nonce, adata) {
    const m = text.length / blockLength$1 | 0;
    extendKeyVariables(text, adata);
    const paddedNonce = util11.concatUint8Array([zeroBlock.subarray(0, ivLength$1 - nonce.length), one, nonce]);
    const bottom = paddedNonce[blockLength$1 - 1] & 63;
    paddedNonce[blockLength$1 - 1] &= 192;
    const kTop = encipher(paddedNonce);
    const stretched = util11.concatUint8Array([kTop, xor(kTop.subarray(0, 8), kTop.subarray(1, 9))]);
    const offset = util11.shiftRight(stretched.subarray(0 + (bottom >> 3), 17 + (bottom >> 3)), 8 - (bottom & 7)).subarray(1);
    const checksum = new Uint8Array(blockLength$1);
    const ct = new Uint8Array(text.length + tagLength$1);
    let i4;
    let pos = 0;
    for (i4 = 0; i4 < m; i4++) {
      xorMut(offset, mask[ntz(i4 + 1)]);
      ct.set(xorMut(fn(xor(offset, text)), offset), pos);
      xorMut(checksum, fn === encipher ? text : ct.subarray(pos));
      text = text.subarray(blockLength$1);
      pos += blockLength$1;
    }
    if (text.length) {
      xorMut(offset, mask.x);
      const padding = encipher(offset);
      ct.set(xor(text, padding), pos);
      const xorInput = new Uint8Array(blockLength$1);
      xorInput.set(fn === encipher ? text : ct.subarray(pos, -tagLength$1), 0);
      xorInput[text.length] = 128;
      xorMut(checksum, xorInput);
      pos += text.length;
    }
    const tag = xorMut(encipher(xorMut(xorMut(checksum, offset), mask.$)), hash2(adata));
    ct.set(tag, pos);
    return ct;
  }
  return {
    /**
     * Encrypt plaintext input.
     * @param {Uint8Array} plaintext - The cleartext input to be encrypted
     * @param {Uint8Array} nonce - The nonce (15 bytes)
     * @param {Uint8Array} adata - Associated data to sign
     * @returns {Promise<Uint8Array>} The ciphertext output.
     */
    encrypt: async function(plaintext, nonce, adata) {
      return crypt(encipher, plaintext, nonce, adata);
    },
    /**
     * Decrypt ciphertext input.
     * @param {Uint8Array} ciphertext - The ciphertext input to be decrypted
     * @param {Uint8Array} nonce - The nonce (15 bytes)
     * @param {Uint8Array} adata - Associated data to sign
     * @returns {Promise<Uint8Array>} The ciphertext output.
     */
    // eslint-disable-next-line @typescript-eslint/require-await
    decrypt: async function(ciphertext, nonce, adata) {
      if (ciphertext.length < tagLength$1)
        throw new Error("Invalid OCB ciphertext");
      const tag = ciphertext.subarray(-tagLength$1);
      ciphertext = ciphertext.subarray(0, -tagLength$1);
      const crypted = crypt(decipher, ciphertext, nonce, adata);
      if (util11.equalsUint8Array(tag, crypted.subarray(-tagLength$1))) {
        return crypted.subarray(0, -tagLength$1);
      }
      throw new Error("Authentication tag mismatch");
    }
  };
}
async function GCM(cipher, key) {
  if (cipher !== enums.symmetric.aes128 && cipher !== enums.symmetric.aes192 && cipher !== enums.symmetric.aes256) {
    throw new Error("GCM mode supports only AES cipher");
  }
  if (util11.getNodeCrypto()) {
    return {
      // eslint-disable-next-line @typescript-eslint/require-await
      encrypt: async function(pt, iv, adata = new Uint8Array()) {
        const en = new nodeCrypto.createCipheriv("aes-" + key.length * 8 + "-gcm", key, iv);
        en.setAAD(adata);
        const ct = Buffer$1.concat([en.update(pt), en.final(), en.getAuthTag()]);
        return new Uint8Array(ct);
      },
      // eslint-disable-next-line @typescript-eslint/require-await
      decrypt: async function(ct, iv, adata = new Uint8Array()) {
        const de = new nodeCrypto.createDecipheriv("aes-" + key.length * 8 + "-gcm", key, iv);
        de.setAAD(adata);
        de.setAuthTag(ct.slice(ct.length - tagLength, ct.length));
        const pt = Buffer$1.concat([de.update(ct.slice(0, ct.length - tagLength)), de.final()]);
        return new Uint8Array(pt);
      }
    };
  }
  if (util11.getWebCrypto()) {
    try {
      const _key = await webCrypto.importKey("raw", key, { name: ALGO }, false, ["encrypt", "decrypt"]);
      const webcryptoEmptyMessagesUnsupported = navigator.userAgent.match(/Version\/13\.\d(\.\d)* Safari/) || navigator.userAgent.match(/Version\/(13|14)\.\d(\.\d)* Mobile\/\S* Safari/);
      return {
        encrypt: async function(pt, iv, adata = new Uint8Array()) {
          if (webcryptoEmptyMessagesUnsupported && !pt.length) {
            return gcm(key, iv, adata).encrypt(pt);
          }
          const ct = await webCrypto.encrypt({ name: ALGO, iv, additionalData: adata, tagLength: tagLength * 8 }, _key, pt);
          return new Uint8Array(ct);
        },
        decrypt: async function(ct, iv, adata = new Uint8Array()) {
          if (webcryptoEmptyMessagesUnsupported && ct.length === tagLength) {
            return gcm(key, iv, adata).decrypt(ct);
          }
          try {
            const pt = await webCrypto.decrypt({ name: ALGO, iv, additionalData: adata, tagLength: tagLength * 8 }, _key, ct);
            return new Uint8Array(pt);
          } catch (e) {
            if (e.name === "OperationError") {
              throw new Error("Authentication tag mismatch");
            }
          }
        }
      };
    } catch (err2) {
      if (err2.name !== "NotSupportedError" && !(key.length === 24 && err2.name === "OperationError")) {
        throw err2;
      }
      util11.printDebugError("Browser did not support operation: " + err2.message);
    }
  }
  return {
    // eslint-disable-next-line @typescript-eslint/require-await
    encrypt: async function(pt, iv, adata) {
      return gcm(key, iv, adata).encrypt(pt);
    },
    // eslint-disable-next-line @typescript-eslint/require-await
    decrypt: async function(ct, iv, adata) {
      return gcm(key, iv, adata).decrypt(ct);
    }
  };
}
function getAEADMode(algo, acceptExperimentalGCM = false) {
  switch (algo) {
    case enums.aead.eax:
      return EAX;
    case enums.aead.ocb:
      return OCB;
    case enums.aead.gcm:
      return GCM;
    case enums.aead.experimentalGCM:
      if (!acceptExperimentalGCM) {
        throw new Error("Unexpected non-standard `experimentalGCM` AEAD algorithm provided in `config.preferredAEADAlgorithm`: use `gcm` instead");
      }
      return GCM;
    default:
      throw new Error("Unsupported AEAD mode");
  }
}
function parseSignatureParams(algo, signature) {
  let read2 = 0;
  switch (algo) {
    // Algorithm-Specific Fields for RSA signatures:
    // -  MPI of RSA signature value m**d mod n.
    case enums.publicKey.rsaEncryptSign:
    case enums.publicKey.rsaEncrypt:
    case enums.publicKey.rsaSign: {
      const s = util11.readMPI(signature.subarray(read2));
      read2 += s.length + 2;
      return { read: read2, signatureParams: { s } };
    }
    // Algorithm-Specific Fields for DSA or ECDSA signatures:
    // -  MPI of DSA or ECDSA value r.
    // -  MPI of DSA or ECDSA value s.
    case enums.publicKey.dsa:
    case enums.publicKey.ecdsa: {
      const r = util11.readMPI(signature.subarray(read2));
      read2 += r.length + 2;
      const s = util11.readMPI(signature.subarray(read2));
      read2 += s.length + 2;
      return { read: read2, signatureParams: { r, s } };
    }
    // Algorithm-Specific Fields for legacy EdDSA signatures:
    // -  MPI of an EC point r.
    // -  EdDSA value s, in MPI, in the little endian representation
    case enums.publicKey.eddsaLegacy: {
      const r = util11.readMPI(signature.subarray(read2));
      read2 += r.length + 2;
      const s = util11.readMPI(signature.subarray(read2));
      read2 += s.length + 2;
      return { read: read2, signatureParams: { r, s } };
    }
    // Algorithm-Specific Fields for Ed25519 signatures:
    // - 64 octets of the native signature
    // Algorithm-Specific Fields for Ed448 signatures:
    // - 114 octets of the native signature
    case enums.publicKey.ed25519:
    case enums.publicKey.ed448: {
      const rsSize = 2 * getPayloadSize$1(algo);
      const RS = util11.readExactSubarray(signature, read2, read2 + rsSize);
      read2 += RS.length;
      return { read: read2, signatureParams: { RS } };
    }
    default:
      throw new UnsupportedError("Unknown signature algorithm.");
  }
}
async function verify$1(algo, hashAlgo, signature, publicParams, data, hashed) {
  switch (algo) {
    case enums.publicKey.rsaEncryptSign:
    case enums.publicKey.rsaEncrypt:
    case enums.publicKey.rsaSign: {
      const { n: n2, e } = publicParams;
      const s = util11.leftPad(signature.s, n2.length);
      return verify$6(hashAlgo, data, s, n2, e, hashed);
    }
    case enums.publicKey.dsa: {
      const { g, p, q, y } = publicParams;
      const { r, s } = signature;
      return verify$2(hashAlgo, r, s, hashed, g, p, q, y);
    }
    case enums.publicKey.ecdsa: {
      const { oid, Q } = publicParams;
      const curveSize = new CurveWithOID(oid).payloadSize;
      const r = util11.leftPad(signature.r, curveSize);
      const s = util11.leftPad(signature.s, curveSize);
      return verify$4(oid, hashAlgo, { r, s }, data, Q, hashed);
    }
    case enums.publicKey.eddsaLegacy: {
      const { oid, Q } = publicParams;
      const curveSize = new CurveWithOID(oid).payloadSize;
      const r = util11.leftPad(signature.r, curveSize);
      const s = util11.leftPad(signature.s, curveSize);
      return verify$3(oid, hashAlgo, { r, s }, data, Q, hashed);
    }
    case enums.publicKey.ed25519:
    case enums.publicKey.ed448: {
      const { A: A2 } = publicParams;
      return verify$5(algo, hashAlgo, signature, data, A2, hashed);
    }
    default:
      throw new Error("Unknown signature algorithm.");
  }
}
async function sign$1(algo, hashAlgo, publicKeyParams, privateKeyParams, data, hashed) {
  if (!publicKeyParams || !privateKeyParams) {
    throw new Error("Missing key parameters");
  }
  switch (algo) {
    case enums.publicKey.rsaEncryptSign:
    case enums.publicKey.rsaEncrypt:
    case enums.publicKey.rsaSign: {
      const { n: n2, e } = publicKeyParams;
      const { d: d3, p, q, u: u2 } = privateKeyParams;
      const s = await sign$6(hashAlgo, data, n2, e, d3, p, q, u2, hashed);
      return { s };
    }
    case enums.publicKey.dsa: {
      const { g, p, q } = publicKeyParams;
      const { x: x3 } = privateKeyParams;
      return sign$2(hashAlgo, hashed, g, p, q, x3);
    }
    case enums.publicKey.elgamal:
      throw new Error("Signing with Elgamal is not defined in the OpenPGP standard.");
    case enums.publicKey.ecdsa: {
      const { oid, Q } = publicKeyParams;
      const { d: d3 } = privateKeyParams;
      return sign$4(oid, hashAlgo, data, Q, d3, hashed);
    }
    case enums.publicKey.eddsaLegacy: {
      const { oid, Q } = publicKeyParams;
      const { seed } = privateKeyParams;
      return sign$3(oid, hashAlgo, data, Q, seed, hashed);
    }
    case enums.publicKey.ed25519:
    case enums.publicKey.ed448: {
      const { A: A2 } = publicKeyParams;
      const { seed } = privateKeyParams;
      return sign$5(algo, hashAlgo, data, A2, seed, hashed);
    }
    default:
      throw new Error("Unknown signature algorithm.");
  }
}
function newS2KFromType(type4, config$1 = config) {
  switch (type4) {
    case enums.s2k.argon2:
      return new Argon2S2K(config$1);
    case enums.s2k.iterated:
    case enums.s2k.gnu:
    case enums.s2k.salted:
    case enums.s2k.simple:
      return new GenericS2K(type4, config$1);
    default:
      throw new UnsupportedError("Unsupported S2K type");
  }
}
function newS2KFromConfig(config2) {
  const { s2kType } = config2;
  if (!allowedS2KTypesForEncryption.has(s2kType)) {
    throw new Error("The provided `config.s2kType` value is not allowed");
  }
  return newS2KFromType(s2kType, config2);
}
function writeSubPacket(type4, critical, data) {
  const arr = [];
  arr.push(writeSimpleLength(data.length + 1));
  arr.push(new Uint8Array([(critical ? 128 : 0) | type4]));
  arr.push(data);
  return util11.concat(arr);
}
function saltLengthForHash(hashAlgorithm) {
  switch (hashAlgorithm) {
    case enums.hash.sha256:
      return 16;
    case enums.hash.sha384:
      return 24;
    case enums.hash.sha512:
      return 32;
    case enums.hash.sha224:
      return 16;
    case enums.hash.sha3_256:
      return 16;
    case enums.hash.sha3_512:
      return 32;
    default:
      throw new Error("Unsupported hash function");
  }
}
function newPacketFromTag(tag, allowedPackets) {
  if (!allowedPackets[tag]) {
    let packetType;
    try {
      packetType = enums.read(enums.packet, tag);
    } catch {
      throw new UnknownPacketError(`Unknown packet type with tag: ${tag}`);
    }
    throw new Error(`Packet not allowed in this context: ${packetType}`);
  }
  return new allowedPackets[tag]();
}
function splitStream(data) {
  const chunkSize = 65536;
  const reader = getReader(data);
  return new ReadableStream({
    async pull(controller) {
      try {
        const { value, done } = await reader.read();
        if (done) {
          controller.close();
          return;
        }
        for (let i4 = 0; i4 <= value.length; i4 += chunkSize) {
          if (!i4 || i4 < value.length) {
            controller.enqueue(value.subarray(i4, i4 + chunkSize));
          }
        }
      } catch (e) {
        controller.error(e);
      }
    }
  }, { highWaterMark: 0 });
}
function zlib(compressionStreamInstantiator, ZlibStreamedConstructor) {
  return (data) => {
    let stream2;
    if (isArrayStream(data)) {
      stream2 = new ReadableStream({
        async start(controller) {
          try {
            controller.enqueue(await readToEnd(data));
            controller.close();
          } catch (e) {
            controller.error(e);
          }
        }
      });
    } else if (isStream2(data)) {
      stream2 = data;
    } else {
      stream2 = toStream(data);
    }
    stream2 = splitStream(stream2);
    if (compressionStreamInstantiator) {
      try {
        const compressorOrDecompressor = compressionStreamInstantiator();
        return stream2.pipeThrough(compressorOrDecompressor);
      } catch (err2) {
        if (err2.name !== "TypeError") {
          throw err2;
        }
      }
    }
    const inputReader = getReader(stream2);
    const zlibStream = new ZlibStreamedConstructor();
    let providedData = false;
    let allDone = false;
    return new ReadableStream({
      start(controller) {
        zlibStream.ondata = (value, isLast) => {
          controller.enqueue(value);
          providedData = true;
          if (isLast) {
            controller.close();
            allDone = true;
          }
        };
      },
      async pull() {
        providedData = false;
        while (!providedData && !allDone) {
          const { done, value } = await inputReader.read();
          if (done) {
            zlibStream.push(new Uint8Array(), true);
            return;
          } else if (value.length) {
            zlibStream.push(value);
          }
        }
      }
    }, { highWaterMark: 0 });
  };
}
function bzip2Decompress() {
  return async function(data) {
    const { default: unbzip2Stream } = await Promise.resolve().then(function() {
      return index$1;
    });
    return unbzip2Stream(toStream(data));
  };
}
async function runAEAD(packet, fn, key, data) {
  const isSEIPDv2 = packet instanceof SymEncryptedIntegrityProtectedDataPacket && packet.version === 2;
  const isAEADP = !isSEIPDv2 && packet.constructor.tag === enums.packet.aeadEncryptedData;
  if (!isSEIPDv2 && !isAEADP)
    throw new Error("Unexpected packet type");
  const mode = getAEADMode(packet.aeadAlgorithm, isAEADP);
  const tagLengthIfDecrypting = fn === "decrypt" ? mode.tagLength : 0;
  const tagLengthIfEncrypting = fn === "encrypt" ? mode.tagLength : 0;
  const chunkSize = 2 ** (packet.chunkSizeByte + 6) + tagLengthIfDecrypting;
  const chunkIndexSizeIfAEADEP = isAEADP ? 8 : 0;
  const adataBuffer = new ArrayBuffer(13 + chunkIndexSizeIfAEADEP);
  const adataArray = new Uint8Array(adataBuffer, 0, 5 + chunkIndexSizeIfAEADEP);
  const adataTagArray = new Uint8Array(adataBuffer);
  const adataView = new DataView(adataBuffer);
  const chunkIndexArray = new Uint8Array(adataBuffer, 5, 8);
  adataArray.set([192 | packet.constructor.tag, packet.version, packet.cipherAlgorithm, packet.aeadAlgorithm, packet.chunkSizeByte], 0);
  let chunkIndex = 0;
  let latestPromise = Promise.resolve();
  let cryptedBytes = 0;
  let queuedBytes = 0;
  let iv;
  let ivView;
  if (isSEIPDv2) {
    const { keySize } = getCipherParams(packet.cipherAlgorithm);
    const { ivLength: ivLength2 } = mode;
    const info = new Uint8Array(adataBuffer, 0, 5);
    const derived = await computeHKDF(enums.hash.sha256, key, packet.salt, info, keySize + ivLength2);
    key = derived.subarray(0, keySize);
    iv = derived.subarray(keySize);
    iv.fill(0, iv.length - 8);
    ivView = new DataView(iv.buffer, iv.byteOffset, iv.byteLength);
  } else {
    iv = packet.iv;
  }
  const modeInstance = await mode(packet.cipherAlgorithm, key);
  return transformPair(data, async (readable2, writable2) => {
    if (util11.isStream(readable2) !== "array") {
      const buffer3 = new TransformStream({}, {
        highWaterMark: util11.getHardwareConcurrency() * 2 ** (packet.chunkSizeByte + 6),
        size: (array) => array.length
      });
      pipe2(buffer3.readable, writable2);
      writable2 = buffer3.writable;
    }
    const reader = getReader(readable2);
    const writer = getWriter(writable2);
    try {
      while (true) {
        let chunk = await reader.readBytes(chunkSize + tagLengthIfDecrypting) || new Uint8Array();
        const finalChunk = chunk.subarray(chunk.length - tagLengthIfDecrypting);
        chunk = chunk.subarray(0, chunk.length - tagLengthIfDecrypting);
        let cryptedPromise;
        let done;
        let nonce;
        if (isSEIPDv2) {
          nonce = iv;
        } else {
          nonce = iv.slice();
          for (let i4 = 0; i4 < 8; i4++) {
            nonce[iv.length - 8 + i4] ^= chunkIndexArray[i4];
          }
        }
        if (!chunkIndex || chunk.length) {
          reader.unshift(finalChunk);
          cryptedPromise = modeInstance[fn](chunk, nonce, adataArray);
          cryptedPromise.catch(() => {
          });
          queuedBytes += chunk.length - tagLengthIfDecrypting + tagLengthIfEncrypting;
        } else {
          adataView.setInt32(5 + chunkIndexSizeIfAEADEP + 4, cryptedBytes);
          cryptedPromise = modeInstance[fn](finalChunk, nonce, adataTagArray);
          cryptedPromise.catch(() => {
          });
          queuedBytes += tagLengthIfEncrypting;
          done = true;
        }
        cryptedBytes += chunk.length - tagLengthIfDecrypting;
        latestPromise = latestPromise.then(() => cryptedPromise).then(async (crypted) => {
          await writer.ready;
          await writer.write(crypted);
          queuedBytes -= crypted.length;
        }).catch((err2) => writer.abort(err2));
        if (done || queuedBytes > writer.desiredSize) {
          await latestPromise;
        }
        if (!done) {
          if (isSEIPDv2) {
            ivView.setInt32(iv.length - 4, ++chunkIndex);
          } else {
            adataView.setInt32(5 + 4, ++chunkIndex);
          }
        } else {
          await writer.close();
          break;
        }
      }
    } catch (e) {
      await writer.ready.catch(() => {
      });
      await writer.abort(e);
    }
  });
}
function encodeSessionKey(version2, keyAlgo, cipherAlgo, sessionKeyData) {
  switch (keyAlgo) {
    case enums.publicKey.rsaEncrypt:
    case enums.publicKey.rsaEncryptSign:
    case enums.publicKey.elgamal:
    case enums.publicKey.ecdh:
      return util11.concatUint8Array([
        new Uint8Array(version2 === 6 ? [] : [cipherAlgo]),
        sessionKeyData,
        util11.writeChecksum(sessionKeyData.subarray(sessionKeyData.length % 8))
      ]);
    case enums.publicKey.x25519:
    case enums.publicKey.x448:
      return sessionKeyData;
    default:
      throw new Error("Unsupported public key algorithm");
  }
}
function decodeSessionKey(version2, keyAlgo, decryptedData, randomSessionKey) {
  switch (keyAlgo) {
    case enums.publicKey.rsaEncrypt:
    case enums.publicKey.rsaEncryptSign:
    case enums.publicKey.elgamal:
    case enums.publicKey.ecdh: {
      const result2 = decryptedData.subarray(0, decryptedData.length - 2);
      const checksum = decryptedData.subarray(decryptedData.length - 2);
      const computedChecksum = util11.writeChecksum(result2.subarray(result2.length % 8));
      const isValidChecksum = computedChecksum[0] === checksum[0] & computedChecksum[1] === checksum[1];
      const decryptedSessionKey = version2 === 6 ? { sessionKeyAlgorithm: null, sessionKey: result2 } : { sessionKeyAlgorithm: result2[0], sessionKey: result2.subarray(1) };
      if (randomSessionKey) {
        const isValidPayload = isValidChecksum & decryptedSessionKey.sessionKeyAlgorithm === randomSessionKey.sessionKeyAlgorithm & decryptedSessionKey.sessionKey.length === randomSessionKey.sessionKey.length;
        return {
          sessionKey: util11.selectUint8Array(isValidPayload, decryptedSessionKey.sessionKey, randomSessionKey.sessionKey),
          sessionKeyAlgorithm: version2 === 6 ? null : util11.selectUint8(isValidPayload, decryptedSessionKey.sessionKeyAlgorithm, randomSessionKey.sessionKeyAlgorithm)
        };
      } else {
        const isValidPayload = isValidChecksum && (version2 === 6 || enums.read(enums.symmetric, decryptedSessionKey.sessionKeyAlgorithm));
        if (isValidPayload) {
          return decryptedSessionKey;
        } else {
          throw new Error("Decryption error");
        }
      }
    }
    case enums.publicKey.x25519:
    case enums.publicKey.x448:
      return {
        sessionKeyAlgorithm: null,
        sessionKey: decryptedData
      };
    default:
      throw new Error("Unsupported public key algorithm");
  }
}
async function produceEncryptionKey(keyVersion, s2k, passphrase, cipherAlgo, aeadMode, serializedPacketTag, isLegacyAEAD, config2) {
  if (s2k.type === "argon2" && !aeadMode) {
    throw new Error("Using Argon2 S2K without AEAD is not allowed");
  }
  if (s2k.type === "simple" && keyVersion === 6) {
    throw new Error("Using Simple S2K with version 6 keys is not allowed");
  }
  const { keySize } = getCipherParams(cipherAlgo);
  const derivedKey = await s2k.produceKey(passphrase, keySize, config2);
  if (!aeadMode || keyVersion === 5 || isLegacyAEAD) {
    return derivedKey;
  }
  const info = util11.concatUint8Array([
    serializedPacketTag,
    new Uint8Array([keyVersion, cipherAlgo, aeadMode])
  ]);
  return computeHKDF(enums.hash.sha256, derivedKey, new Uint8Array(), info, keySize);
}
async function readSignature({ armoredSignature, binarySignature, config: config$1, ...rest }) {
  config$1 = { ...config, ...config$1 };
  let input = armoredSignature || binarySignature;
  if (!input) {
    throw new Error("readSignature: must pass options object containing `armoredSignature` or `binarySignature`");
  }
  if (armoredSignature && !util11.isString(armoredSignature)) {
    throw new Error("readSignature: options.armoredSignature must be a string");
  }
  if (binarySignature && !util11.isUint8Array(binarySignature)) {
    throw new Error("readSignature: options.binarySignature must be a Uint8Array");
  }
  const unknownOptions = Object.keys(rest);
  if (unknownOptions.length > 0)
    throw new Error(`Unknown option: ${unknownOptions.join(", ")}`);
  if (armoredSignature) {
    const { type: type4, data } = await unarmor(input);
    if (type4 !== enums.armor.signature) {
      throw new Error("Armored text not of type signature");
    }
    input = data;
  }
  const packetlist = await PacketList.fromBinary(input, allowedPackets$1, config$1);
  return new Signature(packetlist);
}
async function generateSecretSubkey(options, config2) {
  const secretSubkeyPacket = new SecretSubkeyPacket(options.date, config2);
  secretSubkeyPacket.packets = null;
  secretSubkeyPacket.algorithm = enums.write(enums.publicKey, options.algorithm);
  await secretSubkeyPacket.generate(options.rsaBits, options.curve);
  await secretSubkeyPacket.computeFingerprintAndKeyID();
  return secretSubkeyPacket;
}
async function getLatestValidSignature(signatures, publicKey, signatureType, dataToVerify, date = /* @__PURE__ */ new Date(), config2) {
  let latestValid;
  let exception2;
  for (let i4 = signatures.length - 1; i4 >= 0; i4--) {
    try {
      if (!latestValid || signatures[i4].created >= latestValid.created) {
        await signatures[i4].verify(publicKey, signatureType, dataToVerify, date, void 0, config2);
        latestValid = signatures[i4];
      }
    } catch (e) {
      exception2 = e;
    }
  }
  if (!latestValid) {
    throw util11.wrapError(`Could not find valid ${enums.read(enums.signature, signatureType)} signature in key ${publicKey.getKeyID().toHex()}`.replace("certGeneric ", "self-").replace(/([a-z])([A-Z])/g, (_, $1, $2) => $1 + " " + $2.toLowerCase()), exception2);
  }
  return latestValid;
}
function isDataExpired(keyPacket, signature, date = /* @__PURE__ */ new Date()) {
  const normDate = util11.normalizeDate(date);
  if (normDate !== null) {
    const expirationTime = getKeyExpirationTime(keyPacket, signature);
    return !(keyPacket.created <= normDate && normDate < expirationTime);
  }
  return false;
}
async function createBindingSignature(subkey, primaryKey, options, config2) {
  const dataToSign = {};
  dataToSign.key = primaryKey;
  dataToSign.bind = subkey;
  const signatureProperties = { signatureType: enums.signature.subkeyBinding };
  if (options.sign) {
    signatureProperties.keyFlags = [enums.keyFlags.signData];
    signatureProperties.embeddedSignature = await createSignaturePacket(dataToSign, [], subkey, {
      signatureType: enums.signature.keyBinding
    }, options.date, void 0, void 0, void 0, config2);
  } else {
    signatureProperties.keyFlags = [enums.keyFlags.encryptCommunication | enums.keyFlags.encryptStorage];
  }
  if (options.keyExpirationTime > 0) {
    signatureProperties.keyExpirationTime = options.keyExpirationTime;
    signatureProperties.keyNeverExpires = false;
  }
  const subkeySignaturePacket = await createSignaturePacket(dataToSign, [], primaryKey, signatureProperties, options.date, void 0, void 0, void 0, config2);
  return subkeySignaturePacket;
}
async function getPreferredHashAlgo(targetKeys, signingKeyPacket, date = /* @__PURE__ */ new Date(), targetUserIDs = [], config2) {
  const defaultAlgo = enums.hash.sha256;
  const preferredSenderAlgo = config2.preferredHashAlgorithm;
  const supportedAlgosPerTarget = await Promise.all(targetKeys.map(async (key, i4) => {
    const selfCertification = await key.getPrimarySelfSignature(date, targetUserIDs[i4], config2);
    const targetPrefs = selfCertification.preferredHashAlgorithms;
    return targetPrefs || [];
  }));
  const supportedAlgosMap = /* @__PURE__ */ new Map();
  for (const supportedAlgos of supportedAlgosPerTarget) {
    for (const hashAlgo of supportedAlgos) {
      try {
        const supportedAlgo = enums.write(enums.hash, hashAlgo);
        supportedAlgosMap.set(supportedAlgo, supportedAlgosMap.has(supportedAlgo) ? supportedAlgosMap.get(supportedAlgo) + 1 : 1);
      } catch {
      }
    }
  }
  const isSupportedHashAlgo = (hashAlgo) => targetKeys.length === 0 || supportedAlgosMap.get(hashAlgo) === targetKeys.length || hashAlgo === defaultAlgo;
  const getStrongestSupportedHashAlgo = () => {
    if (supportedAlgosMap.size === 0) {
      return defaultAlgo;
    }
    const sortedHashAlgos = Array.from(supportedAlgosMap.keys()).filter((hashAlgo) => isSupportedHashAlgo(hashAlgo)).sort((algoA, algoB) => getHashByteLength(algoA) - getHashByteLength(algoB));
    const strongestHashAlgo = sortedHashAlgos[0];
    return getHashByteLength(strongestHashAlgo) >= getHashByteLength(defaultAlgo) ? strongestHashAlgo : defaultAlgo;
  };
  const eccAlgos = /* @__PURE__ */ new Set([
    enums.publicKey.ecdsa,
    enums.publicKey.eddsaLegacy,
    enums.publicKey.ed25519,
    enums.publicKey.ed448
  ]);
  if (eccAlgos.has(signingKeyPacket.algorithm)) {
    const preferredCurveAlgo = getPreferredCurveHashAlgo(signingKeyPacket.algorithm, signingKeyPacket.publicParams.oid);
    const preferredSenderAlgoIsSupported = isSupportedHashAlgo(preferredSenderAlgo);
    const preferredSenderAlgoStrongerThanCurveAlgo = getHashByteLength(preferredSenderAlgo) >= getHashByteLength(preferredCurveAlgo);
    if (preferredSenderAlgoIsSupported && preferredSenderAlgoStrongerThanCurveAlgo) {
      return preferredSenderAlgo;
    } else {
      const strongestSupportedAlgo = getStrongestSupportedHashAlgo();
      return getHashByteLength(strongestSupportedAlgo) >= getHashByteLength(preferredCurveAlgo) ? strongestSupportedAlgo : preferredCurveAlgo;
    }
  }
  return isSupportedHashAlgo(preferredSenderAlgo) ? preferredSenderAlgo : getStrongestSupportedHashAlgo();
}
async function getPreferredCipherSuite(keys4 = [], date = /* @__PURE__ */ new Date(), userIDs = [], config$1 = config) {
  const selfSigs = await Promise.all(keys4.map((key, i4) => key.getPrimarySelfSignature(date, userIDs[i4], config$1)));
  const withAEAD = keys4.length ? selfSigs.every((selfSig) => selfSig.features && selfSig.features[0] & enums.features.seipdv2) : config$1.aeadProtect;
  if (withAEAD) {
    const defaultCipherSuite = { symmetricAlgo: enums.symmetric.aes128, aeadAlgo: enums.aead.ocb };
    const desiredCipherSuites = [
      { symmetricAlgo: config$1.preferredSymmetricAlgorithm, aeadAlgo: config$1.preferredAEADAlgorithm },
      { symmetricAlgo: config$1.preferredSymmetricAlgorithm, aeadAlgo: enums.aead.ocb },
      { symmetricAlgo: enums.symmetric.aes128, aeadAlgo: config$1.preferredAEADAlgorithm }
    ];
    for (const desiredCipherSuite of desiredCipherSuites) {
      if (selfSigs.every((selfSig) => selfSig.preferredCipherSuites && selfSig.preferredCipherSuites.some((cipherSuite) => cipherSuite[0] === desiredCipherSuite.symmetricAlgo && cipherSuite[1] === desiredCipherSuite.aeadAlgo))) {
        return desiredCipherSuite;
      }
    }
    return defaultCipherSuite;
  }
  const defaultSymAlgo = enums.symmetric.aes128;
  const desiredSymAlgo = config$1.preferredSymmetricAlgorithm;
  return {
    symmetricAlgo: selfSigs.every((selfSig) => selfSig.preferredSymmetricAlgorithms && selfSig.preferredSymmetricAlgorithms.includes(desiredSymAlgo)) ? desiredSymAlgo : defaultSymAlgo,
    aeadAlgo: void 0
  };
}
async function createSignaturePacket(dataToSign, recipientKeys, signingKeyPacket, signatureProperties, date, recipientUserIDs, notations = [], detached = false, config2) {
  if (signingKeyPacket.isDummy()) {
    throw new Error("Cannot sign with a gnu-dummy key.");
  }
  if (!signingKeyPacket.isDecrypted()) {
    throw new Error("Signing key is not decrypted.");
  }
  const signaturePacket = new SignaturePacket();
  Object.assign(signaturePacket, signatureProperties);
  signaturePacket.publicKeyAlgorithm = signingKeyPacket.algorithm;
  signaturePacket.hashAlgorithm = await getPreferredHashAlgo(recipientKeys, signingKeyPacket, date, recipientUserIDs, config2);
  signaturePacket.rawNotations = [...notations];
  await signaturePacket.sign(signingKeyPacket, dataToSign, date, detached, config2);
  return signaturePacket;
}
async function mergeSignatures(source, dest, attr, date = /* @__PURE__ */ new Date(), checkFn) {
  source = source[attr];
  if (source) {
    if (!dest[attr].length) {
      dest[attr] = source;
    } else {
      await Promise.all(source.map(async function(sourceSig) {
        if (!sourceSig.isExpired(date) && (!checkFn || await checkFn(sourceSig)) && !dest[attr].some(function(destSig) {
          return util11.equalsUint8Array(destSig.writeParams(), sourceSig.writeParams());
        })) {
          dest[attr].push(sourceSig);
        }
      }));
    }
  }
}
async function isDataRevoked(primaryKey, signatureType, dataToVerify, revocations, signature, key, date = /* @__PURE__ */ new Date(), config2) {
  key = key || primaryKey;
  const revocationKeyIDs = [];
  await Promise.all(revocations.map(async function(revocationSignature) {
    try {
      if (
        // Note: a third-party revocation signature could legitimately revoke a
        // self-signature if the signature has an authorized revocation key.
        // However, we don't support passing authorized revocation keys, nor
        // verifying such revocation signatures. Instead, we indicate an error
        // when parsing a key with an authorized revocation key, and ignore
        // third-party revocation signatures here. (It could also be revoking a
        // third-party key certification, which should only affect
        // `verifyAllCertifications`.)
        !signature || revocationSignature.issuerKeyID.equals(signature.issuerKeyID)
      ) {
        const isHardRevocation = ![
          enums.reasonForRevocation.keyRetired,
          enums.reasonForRevocation.keySuperseded,
          enums.reasonForRevocation.userIDInvalid
        ].includes(revocationSignature.reasonForRevocationFlag);
        await revocationSignature.verify(key, signatureType, dataToVerify, isHardRevocation ? null : date, false, config2);
        revocationKeyIDs.push(revocationSignature.issuerKeyID);
      }
    } catch {
    }
  }));
  if (signature) {
    signature.revoked = revocationKeyIDs.some((keyID) => keyID.equals(signature.issuerKeyID)) ? true : signature.revoked || false;
    return signature.revoked;
  }
  return revocationKeyIDs.length > 0;
}
function getKeyExpirationTime(keyPacket, signature) {
  let expirationTime;
  if (signature.keyNeverExpires === false) {
    expirationTime = keyPacket.created.getTime() + signature.keyExpirationTime * 1e3;
  }
  return expirationTime ? new Date(expirationTime) : Infinity;
}
function sanitizeKeyOptions(options, subkeyDefaults = {}) {
  options.type = options.type || subkeyDefaults.type;
  options.curve = options.curve || subkeyDefaults.curve;
  options.rsaBits = options.rsaBits || subkeyDefaults.rsaBits;
  options.keyExpirationTime = options.keyExpirationTime !== void 0 ? options.keyExpirationTime : subkeyDefaults.keyExpirationTime;
  options.passphrase = util11.isString(options.passphrase) ? options.passphrase : subkeyDefaults.passphrase;
  options.date = options.date || subkeyDefaults.date;
  options.sign = options.sign || false;
  switch (options.type) {
    case "ecc":
      try {
        options.curve = enums.write(enums.curve, options.curve);
      } catch {
        throw new Error("Unknown curve");
      }
      if (options.curve === enums.curve.ed25519Legacy || options.curve === enums.curve.curve25519Legacy || options.curve === "ed25519" || options.curve === "curve25519") {
        options.curve = options.sign ? enums.curve.ed25519Legacy : enums.curve.curve25519Legacy;
      }
      if (options.sign) {
        options.algorithm = options.curve === enums.curve.ed25519Legacy ? enums.publicKey.eddsaLegacy : enums.publicKey.ecdsa;
      } else {
        options.algorithm = enums.publicKey.ecdh;
      }
      break;
    case "curve25519":
      options.algorithm = options.sign ? enums.publicKey.ed25519 : enums.publicKey.x25519;
      break;
    case "curve448":
      options.algorithm = options.sign ? enums.publicKey.ed448 : enums.publicKey.x448;
      break;
    case "rsa":
      options.algorithm = enums.publicKey.rsaEncryptSign;
      break;
    default:
      throw new Error(`Unsupported key type ${options.type}`);
  }
  return options;
}
function validateSigningKeyPacket(keyPacket, signature, config2) {
  switch (keyPacket.algorithm) {
    case enums.publicKey.rsaEncryptSign:
    case enums.publicKey.rsaSign:
    case enums.publicKey.dsa:
    case enums.publicKey.ecdsa:
    case enums.publicKey.eddsaLegacy:
    case enums.publicKey.ed25519:
    case enums.publicKey.ed448:
      if (!signature.keyFlags && !config2.allowMissingKeyFlags) {
        throw new Error("None of the key flags is set: consider passing `config.allowMissingKeyFlags`");
      }
      return !signature.keyFlags || (signature.keyFlags[0] & enums.keyFlags.signData) !== 0;
    default:
      return false;
  }
}
function validateEncryptionKeyPacket(keyPacket, signature, config2) {
  switch (keyPacket.algorithm) {
    case enums.publicKey.rsaEncryptSign:
    case enums.publicKey.rsaEncrypt:
    case enums.publicKey.elgamal:
    case enums.publicKey.ecdh:
    case enums.publicKey.x25519:
    case enums.publicKey.x448:
      if (!signature.keyFlags && !config2.allowMissingKeyFlags) {
        throw new Error("None of the key flags is set: consider passing `config.allowMissingKeyFlags`");
      }
      return !signature.keyFlags || (signature.keyFlags[0] & enums.keyFlags.encryptCommunication) !== 0 || (signature.keyFlags[0] & enums.keyFlags.encryptStorage) !== 0;
    default:
      return false;
  }
}
function validateDecryptionKeyPacket(keyPacket, signature, config2) {
  if (!signature.keyFlags && !config2.allowMissingKeyFlags) {
    throw new Error("None of the key flags is set: consider passing `config.allowMissingKeyFlags`");
  }
  switch (keyPacket.algorithm) {
    case enums.publicKey.rsaEncryptSign:
    case enums.publicKey.rsaEncrypt:
    case enums.publicKey.elgamal:
    case enums.publicKey.ecdh:
    case enums.publicKey.x25519:
    case enums.publicKey.x448: {
      const isValidSigningKeyPacket = !signature.keyFlags || (signature.keyFlags[0] & enums.keyFlags.signData) !== 0;
      if (isValidSigningKeyPacket && config2.allowInsecureDecryptionWithSigningKeys) {
        return true;
      }
      return !signature.keyFlags || (signature.keyFlags[0] & enums.keyFlags.encryptCommunication) !== 0 || (signature.keyFlags[0] & enums.keyFlags.encryptStorage) !== 0;
    }
    default:
      return false;
  }
}
function checkKeyRequirements(keyPacket, config2) {
  const keyAlgo = enums.write(enums.publicKey, keyPacket.algorithm);
  const algoInfo = keyPacket.getAlgorithmInfo();
  if (config2.rejectPublicKeyAlgorithms.has(keyAlgo)) {
    throw new Error(`${algoInfo.algorithm} keys are considered too weak.`);
  }
  switch (keyAlgo) {
    case enums.publicKey.rsaEncryptSign:
    case enums.publicKey.rsaSign:
    case enums.publicKey.rsaEncrypt:
      if (algoInfo.bits < config2.minRSABits) {
        throw new Error(`RSA keys shorter than ${config2.minRSABits} bits are considered too weak.`);
      }
      break;
    case enums.publicKey.ecdsa:
    case enums.publicKey.eddsaLegacy:
    case enums.publicKey.ecdh:
      if (config2.rejectCurves.has(algoInfo.curve)) {
        throw new Error(`Support for ${algoInfo.algorithm} keys using curve ${algoInfo.curve} is disabled.`);
      }
      break;
  }
}
function getDefaultSubkeyType(algoName) {
  const algo = enums.write(enums.publicKey, algoName);
  switch (algo) {
    case enums.publicKey.rsaEncrypt:
    case enums.publicKey.rsaEncryptSign:
    case enums.publicKey.rsaSign:
    case enums.publicKey.dsa:
      return "rsa";
    case enums.publicKey.ecdsa:
    case enums.publicKey.eddsaLegacy:
      return "ecc";
    case enums.publicKey.ed25519:
      return "curve25519";
    case enums.publicKey.ed448:
      return "curve448";
    default:
      throw new Error("Unsupported algorithm");
  }
}
function createKey(packetlist) {
  for (const packet of packetlist) {
    switch (packet.constructor.tag) {
      case enums.packet.secretKey:
        return new PrivateKey(packetlist);
      case enums.packet.publicKey:
        return new PublicKey(packetlist);
    }
  }
  throw new Error("No key packet found");
}
async function readKey2({ armoredKey, binaryKey, config: config$1, ...rest }) {
  config$1 = { ...config, ...config$1 };
  if (!armoredKey && !binaryKey) {
    throw new Error("readKey: must pass options object containing `armoredKey` or `binaryKey`");
  }
  if (armoredKey && !util11.isString(armoredKey)) {
    throw new Error("readKey: options.armoredKey must be a string");
  }
  if (binaryKey && !util11.isUint8Array(binaryKey)) {
    throw new Error("readKey: options.binaryKey must be a Uint8Array");
  }
  const unknownOptions = Object.keys(rest);
  if (unknownOptions.length > 0)
    throw new Error(`Unknown option: ${unknownOptions.join(", ")}`);
  let input;
  if (armoredKey) {
    const { type: type4, data } = await unarmor(armoredKey);
    if (!(type4 === enums.armor.publicKey || type4 === enums.armor.privateKey)) {
      throw new Error("Armored text not of type key");
    }
    input = data;
  } else {
    input = binaryKey;
  }
  const packetlist = await PacketList.fromBinary(input, allowedKeyPackets, config$1);
  const keyIndex = packetlist.indexOfTag(enums.packet.publicKey, enums.packet.secretKey);
  if (keyIndex.length === 0) {
    throw new Error("No key packet found");
  }
  const firstKeyPacketList = packetlist.slice(keyIndex[0], keyIndex[1]);
  return createKey(firstKeyPacketList);
}
async function createSignaturePackets(literalDataPacket, signingKeys, recipientKeys = [], signature = null, signingKeyIDs = [], date = /* @__PURE__ */ new Date(), signingUserIDs = [], recipientUserIDs = [], notations = [], detached = false, config$1 = config) {
  const packetlist = new PacketList();
  const signatureType = literalDataPacket.text === null ? enums.signature.binary : enums.signature.text;
  await Promise.all(signingKeys.map(async (primaryKey, i4) => {
    const signingUserID = signingUserIDs[i4];
    if (!primaryKey.isPrivate()) {
      throw new Error("Need private key for signing");
    }
    const signingKey = await primaryKey.getSigningKey(signingKeyIDs[i4], date, signingUserID, config$1);
    return createSignaturePacket(literalDataPacket, recipientKeys.length ? recipientKeys : [primaryKey], signingKey.keyPacket, { signatureType }, date, recipientUserIDs, notations, detached, config$1);
  })).then((signatureList) => {
    packetlist.push(...signatureList);
  });
  if (signature) {
    const existingSigPacketlist = signature.packets.filterByTag(enums.packet.signature);
    packetlist.push(...existingSigPacketlist);
  }
  return packetlist;
}
function createVerificationObject(signature, literalDataList, verificationKeys, date = /* @__PURE__ */ new Date(), detached = false, config$1 = config) {
  let primaryKey;
  let unverifiedSigningKey;
  for (const key of verificationKeys) {
    const issuerKeys = key.getKeys(signature.issuerKeyID);
    if (issuerKeys.length > 0) {
      primaryKey = key;
      unverifiedSigningKey = issuerKeys[0];
      break;
    }
  }
  const isOnePassSignature = signature instanceof OnePassSignaturePacket;
  const signaturePacketPromise = isOnePassSignature ? signature.correspondingSig : signature;
  const verifiedSig = {
    keyID: signature.issuerKeyID,
    verified: (async () => {
      if (!unverifiedSigningKey) {
        throw new Error(`Could not find signing key with key ID ${signature.issuerKeyID.toHex()}`);
      }
      await signature.verify(unverifiedSigningKey.keyPacket, signature.signatureType, literalDataList[0], date, detached, config$1);
      const signaturePacket = await signaturePacketPromise;
      if (unverifiedSigningKey.getCreationTime() > signaturePacket.created) {
        throw new Error("Key is newer than the signature");
      }
      try {
        await primaryKey.getSigningKey(unverifiedSigningKey.getKeyID(), signaturePacket.created, void 0, config$1);
      } catch (e) {
        if (config$1.allowInsecureVerificationWithReformattedKeys && e.message.match(/Signature creation time is in the future/)) {
          await primaryKey.getSigningKey(unverifiedSigningKey.getKeyID(), date, void 0, config$1);
        } else {
          throw e;
        }
      }
      return true;
    })(),
    signature: (async () => {
      const signaturePacket = await signaturePacketPromise;
      const packetlist = new PacketList();
      signaturePacket && packetlist.push(signaturePacket);
      return new Signature(packetlist);
    })()
  };
  verifiedSig.signature.catch(() => {
  });
  verifiedSig.verified.catch(() => {
  });
  return verifiedSig;
}
function createVerificationObjects(signatureList, literalDataList, verificationKeys, date = /* @__PURE__ */ new Date(), detached = false, config$1 = config) {
  return signatureList.filter((signature) => ["text", "binary"].includes(enums.read(enums.signature, signature.signatureType))).map((signature) => createVerificationObject(signature, literalDataList, verificationKeys, date, detached, config$1));
}
async function createMessage({ text, binary: binary2, filename, date = /* @__PURE__ */ new Date(), format: format2 = text !== void 0 ? "utf8" : "binary", ...rest }) {
  const input = text !== void 0 ? text : binary2;
  if (input === void 0) {
    throw new Error("createMessage: must pass options object containing `text` or `binary`");
  }
  if (text && !util11.isString(text) && !util11.isStream(text)) {
    throw new Error("createMessage: options.text must be a string or stream");
  }
  if (binary2 && !util11.isUint8Array(binary2) && !util11.isStream(binary2)) {
    throw new Error("createMessage: options.binary must be a Uint8Array or stream");
  }
  const unknownOptions = Object.keys(rest);
  if (unknownOptions.length > 0)
    throw new Error(`Unknown option: ${unknownOptions.join(", ")}`);
  const streamType = util11.isStream(input);
  const literalDataPacket = new LiteralDataPacket(date);
  if (text !== void 0) {
    literalDataPacket.setText(input, enums.write(enums.literal, format2));
  } else {
    literalDataPacket.setBytes(input, enums.write(enums.literal, format2));
  }
  if (filename !== void 0) {
    literalDataPacket.setFilename(filename);
  }
  const literalDataPacketlist = new PacketList();
  literalDataPacketlist.push(literalDataPacket);
  const message = new Message(literalDataPacketlist);
  message.fromStream = streamType;
  return message;
}
function isBytes(a2) {
  return a2 instanceof Uint8Array || ArrayBuffer.isView(a2) && a2.constructor.name === "Uint8Array";
}
function anumber(n2) {
  if (!Number.isSafeInteger(n2) || n2 < 0)
    throw new Error("positive integer expected, got " + n2);
}
function abytes(b, ...lengths) {
  if (!isBytes(b))
    throw new Error("Uint8Array expected");
  if (lengths.length > 0 && !lengths.includes(b.length))
    throw new Error("Uint8Array expected of length " + lengths + ", got length=" + b.length);
}
function ahash(h2) {
  if (typeof h2 !== "function" || typeof h2.create !== "function")
    throw new Error("Hash should be wrapped by utils.createHasher");
  anumber(h2.outputLen);
  anumber(h2.blockLen);
}
function aexists(instance, checkFinished = true) {
  if (instance.destroyed)
    throw new Error("Hash instance has been destroyed");
  if (checkFinished && instance.finished)
    throw new Error("Hash#digest() has already been called");
}
function aoutput(out, instance) {
  abytes(out);
  const min = instance.outputLen;
  if (out.length < min) {
    throw new Error("digestInto() expects output buffer of length at least " + min);
  }
}
function u32(arr) {
  return new Uint32Array(arr.buffer, arr.byteOffset, Math.floor(arr.byteLength / 4));
}
function clean(...arrays) {
  for (let i4 = 0; i4 < arrays.length; i4++) {
    arrays[i4].fill(0);
  }
}
function createView(arr) {
  return new DataView(arr.buffer, arr.byteOffset, arr.byteLength);
}
function rotr(word, shift) {
  return word << 32 - shift | word >>> shift;
}
function rotl(word, shift) {
  return word << shift | word >>> 32 - shift >>> 0;
}
function byteSwap(word) {
  return word << 24 & 4278190080 | word << 8 & 16711680 | word >>> 8 & 65280 | word >>> 24 & 255;
}
function byteSwap32(arr) {
  for (let i4 = 0; i4 < arr.length; i4++) {
    arr[i4] = byteSwap(arr[i4]);
  }
  return arr;
}
function bytesToHex(bytes) {
  abytes(bytes);
  if (hasHexBuiltin)
    return bytes.toHex();
  let hex = "";
  for (let i4 = 0; i4 < bytes.length; i4++) {
    hex += hexes[bytes[i4]];
  }
  return hex;
}
function asciiToBase16(ch) {
  if (ch >= asciis._0 && ch <= asciis._9)
    return ch - asciis._0;
  if (ch >= asciis.A && ch <= asciis.F)
    return ch - (asciis.A - 10);
  if (ch >= asciis.a && ch <= asciis.f)
    return ch - (asciis.a - 10);
  return;
}
function hexToBytes(hex) {
  if (typeof hex !== "string")
    throw new Error("hex string expected, got " + typeof hex);
  if (hasHexBuiltin)
    return Uint8Array.fromHex(hex);
  const hl = hex.length;
  const al = hl / 2;
  if (hl % 2)
    throw new Error("hex string expected, got unpadded hex of length " + hl);
  const array = new Uint8Array(al);
  for (let ai = 0, hi = 0; ai < al; ai++, hi += 2) {
    const n1 = asciiToBase16(hex.charCodeAt(hi));
    const n2 = asciiToBase16(hex.charCodeAt(hi + 1));
    if (n1 === void 0 || n2 === void 0) {
      const char = hex[hi] + hex[hi + 1];
      throw new Error('hex string expected, got non-hex character "' + char + '" at index ' + hi);
    }
    array[ai] = n1 * 16 + n2;
  }
  return array;
}
function utf8ToBytes(str2) {
  if (typeof str2 !== "string")
    throw new Error("string expected");
  return new Uint8Array(new TextEncoder().encode(str2));
}
function toBytes(data) {
  if (typeof data === "string")
    data = utf8ToBytes(data);
  abytes(data);
  return data;
}
function concatBytes(...arrays) {
  let sum = 0;
  for (let i4 = 0; i4 < arrays.length; i4++) {
    const a2 = arrays[i4];
    abytes(a2);
    sum += a2.length;
  }
  const res = new Uint8Array(sum);
  for (let i4 = 0, pad4 = 0; i4 < arrays.length; i4++) {
    const a2 = arrays[i4];
    res.set(a2, pad4);
    pad4 += a2.length;
  }
  return res;
}
function createHasher(hashCons) {
  const hashC = (msg) => hashCons().update(toBytes(msg)).digest();
  const tmp = hashCons();
  hashC.outputLen = tmp.outputLen;
  hashC.blockLen = tmp.blockLen;
  hashC.create = () => hashCons();
  return hashC;
}
function createXOFer(hashCons) {
  const hashC = (msg, opts3) => hashCons(opts3).update(toBytes(msg)).digest();
  const tmp = hashCons({});
  hashC.outputLen = tmp.outputLen;
  hashC.blockLen = tmp.blockLen;
  hashC.create = (opts3) => hashCons(opts3);
  return hashC;
}
function randomBytes(bytesLength = 32) {
  if (crypto$2 && typeof crypto$2.getRandomValues === "function") {
    return crypto$2.getRandomValues(new Uint8Array(bytesLength));
  }
  if (crypto$2 && typeof crypto$2.randomBytes === "function") {
    return Uint8Array.from(crypto$2.randomBytes(bytesLength));
  }
  throw new Error("crypto.getRandomValues must be defined");
}
function _abool2(value, title = "") {
  if (typeof value !== "boolean") {
    const prefix = title && `"${title}"`;
    throw new Error(prefix + "expected boolean, got type=" + typeof value);
  }
  return value;
}
function _abytes2(value, length, title = "") {
  const bytes = isBytes(value);
  const len = value?.length;
  const needsLen = length !== void 0;
  if (!bytes || needsLen && len !== length) {
    const prefix = title && `"${title}" `;
    const ofLen = needsLen ? ` of length ${length}` : "";
    const got = bytes ? `length=${len}` : `type=${typeof value}`;
    throw new Error(prefix + "expected Uint8Array" + ofLen + ", got " + got);
  }
  return value;
}
function numberToHexUnpadded(num) {
  const hex = num.toString(16);
  return hex.length & 1 ? "0" + hex : hex;
}
function hexToNumber(hex) {
  if (typeof hex !== "string")
    throw new Error("hex string expected, got " + typeof hex);
  return hex === "" ? _0n$6 : BigInt("0x" + hex);
}
function bytesToNumberBE(bytes) {
  return hexToNumber(bytesToHex(bytes));
}
function bytesToNumberLE(bytes) {
  abytes(bytes);
  return hexToNumber(bytesToHex(Uint8Array.from(bytes).reverse()));
}
function numberToBytesBE(n2, len) {
  return hexToBytes(n2.toString(16).padStart(len * 2, "0"));
}
function numberToBytesLE(n2, len) {
  return numberToBytesBE(n2, len).reverse();
}
function ensureBytes(title, hex, expectedLength) {
  let res;
  if (typeof hex === "string") {
    try {
      res = hexToBytes(hex);
    } catch (e) {
      throw new Error(title + " must be hex string or Uint8Array, cause: " + e);
    }
  } else if (isBytes(hex)) {
    res = Uint8Array.from(hex);
  } else {
    throw new Error(title + " must be hex string or Uint8Array");
  }
  const len = res.length;
  if (typeof expectedLength === "number" && len !== expectedLength)
    throw new Error(title + " of length " + expectedLength + " expected, got " + len);
  return res;
}
function copyBytes(bytes) {
  return Uint8Array.from(bytes);
}
function asciiToBytes(ascii) {
  return Uint8Array.from(ascii, (c3, i4) => {
    const charCode = c3.charCodeAt(0);
    if (c3.length !== 1 || charCode > 127) {
      throw new Error(`string contains non-ASCII character "${ascii[i4]}" with code ${charCode} at position ${i4}`);
    }
    return charCode;
  });
}
function inRange(n2, min, max4) {
  return isPosBig(n2) && isPosBig(min) && isPosBig(max4) && min <= n2 && n2 < max4;
}
function aInRange(title, n2, min, max4) {
  if (!inRange(n2, min, max4))
    throw new Error("expected valid " + title + ": " + min + " <= n < " + max4 + ", got " + n2);
}
function bitLen(n2) {
  let len;
  for (len = 0; n2 > _0n$6; n2 >>= _1n$7, len += 1)
    ;
  return len;
}
function createHmacDrbg(hashLen, qByteLen, hmacFn) {
  if (typeof hashLen !== "number" || hashLen < 2)
    throw new Error("hashLen must be a number");
  if (typeof qByteLen !== "number" || qByteLen < 2)
    throw new Error("qByteLen must be a number");
  if (typeof hmacFn !== "function")
    throw new Error("hmacFn must be a function");
  const u8n = (len) => new Uint8Array(len);
  const u8of = (byte) => Uint8Array.of(byte);
  let v = u8n(hashLen);
  let k2 = u8n(hashLen);
  let i4 = 0;
  const reset2 = () => {
    v.fill(1);
    k2.fill(0);
    i4 = 0;
  };
  const h2 = (...b) => hmacFn(k2, v, ...b);
  const reseed = (seed = u8n(0)) => {
    k2 = h2(u8of(0), seed);
    v = h2();
    if (seed.length === 0)
      return;
    k2 = h2(u8of(1), seed);
    v = h2();
  };
  const gen2 = () => {
    if (i4++ >= 1e3)
      throw new Error("drbg: tried 1000 values");
    let len = 0;
    const out = [];
    while (len < qByteLen) {
      v = h2();
      const sl = v.slice();
      out.push(sl);
      len += v.length;
    }
    return concatBytes(...out);
  };
  const genUntil = (seed, pred) => {
    reset2();
    reseed(seed);
    let res = void 0;
    while (!(res = pred(gen2())))
      reseed();
    reset2();
    return res;
  };
  return genUntil;
}
function _validateObject(object, fields, optFields = {}) {
  if (!object || typeof object !== "object")
    throw new Error("expected valid options object");
  function checkField(fieldName, expectedType, isOpt) {
    const val = object[fieldName];
    if (isOpt && val === void 0)
      return;
    const current = typeof val;
    if (current !== expectedType || val === null)
      throw new Error(`param "${fieldName}" is invalid: expected ${expectedType}, got ${current}`);
  }
  Object.entries(fields).forEach(([k2, v]) => checkField(k2, v, false));
  Object.entries(optFields).forEach(([k2, v]) => checkField(k2, v, true));
}
function memoized(fn) {
  const map26 = /* @__PURE__ */ new WeakMap();
  return (arg, ...args) => {
    const val = map26.get(arg);
    if (val !== void 0)
      return val;
    const computed = fn(arg, ...args);
    map26.set(arg, computed);
    return computed;
  };
}
function mod(a2, b) {
  const result2 = a2 % b;
  return result2 >= _0n$5 ? result2 : b + result2;
}
function pow2(x3, power, modulo) {
  let res = x3;
  while (power-- > _0n$5) {
    res *= res;
    res %= modulo;
  }
  return res;
}
function invert(number, modulo) {
  if (number === _0n$5)
    throw new Error("invert: expected non-zero number");
  if (modulo <= _0n$5)
    throw new Error("invert: expected positive modulus, got " + modulo);
  let a2 = mod(number, modulo);
  let b = modulo;
  let x3 = _0n$5, u2 = _1n$6;
  while (a2 !== _0n$5) {
    const q = b / a2;
    const r = b % a2;
    const m = x3 - u2 * q;
    b = a2, a2 = r, x3 = u2, u2 = m;
  }
  const gcd2 = b;
  if (gcd2 !== _1n$6)
    throw new Error("invert: does not exist");
  return mod(x3, modulo);
}
function assertIsSquare(Fp2, root, n2) {
  if (!Fp2.eql(Fp2.sqr(root), n2))
    throw new Error("Cannot find square root");
}
function sqrt3mod4(Fp2, n2) {
  const p1div4 = (Fp2.ORDER + _1n$6) / _4n$1;
  const root = Fp2.pow(n2, p1div4);
  assertIsSquare(Fp2, root, n2);
  return root;
}
function sqrt5mod8(Fp2, n2) {
  const p5div8 = (Fp2.ORDER - _5n) / _8n$1;
  const n22 = Fp2.mul(n2, _2n$6);
  const v = Fp2.pow(n22, p5div8);
  const nv = Fp2.mul(n2, v);
  const i4 = Fp2.mul(Fp2.mul(nv, _2n$6), v);
  const root = Fp2.mul(nv, Fp2.sub(i4, Fp2.ONE));
  assertIsSquare(Fp2, root, n2);
  return root;
}
function sqrt9mod16(P2) {
  const Fp_ = Field(P2);
  const tn = tonelliShanks(P2);
  const c1 = tn(Fp_, Fp_.neg(Fp_.ONE));
  const c22 = tn(Fp_, c1);
  const c3 = tn(Fp_, Fp_.neg(c1));
  const c4 = (P2 + _7n$1) / _16n;
  return (Fp2, n2) => {
    let tv1 = Fp2.pow(n2, c4);
    let tv2 = Fp2.mul(tv1, c1);
    const tv3 = Fp2.mul(tv1, c22);
    const tv4 = Fp2.mul(tv1, c3);
    const e1 = Fp2.eql(Fp2.sqr(tv2), n2);
    const e2 = Fp2.eql(Fp2.sqr(tv3), n2);
    tv1 = Fp2.cmov(tv1, tv2, e1);
    tv2 = Fp2.cmov(tv4, tv3, e2);
    const e3 = Fp2.eql(Fp2.sqr(tv2), n2);
    const root = Fp2.cmov(tv1, tv2, e3);
    assertIsSquare(Fp2, root, n2);
    return root;
  };
}
function tonelliShanks(P2) {
  if (P2 < _3n$2)
    throw new Error("sqrt is not defined for small field");
  let Q = P2 - _1n$6;
  let S3 = 0;
  while (Q % _2n$6 === _0n$5) {
    Q /= _2n$6;
    S3++;
  }
  let Z2 = _2n$6;
  const _Fp = Field(P2);
  while (FpLegendre(_Fp, Z2) === 1) {
    if (Z2++ > 1e3)
      throw new Error("Cannot find square root: probably non-prime P");
  }
  if (S3 === 1)
    return sqrt3mod4;
  let cc = _Fp.pow(Z2, Q);
  const Q1div2 = (Q + _1n$6) / _2n$6;
  return function tonelliSlow(Fp2, n2) {
    if (Fp2.is0(n2))
      return n2;
    if (FpLegendre(Fp2, n2) !== 1)
      throw new Error("Cannot find square root");
    let M3 = S3;
    let c3 = Fp2.mul(Fp2.ONE, cc);
    let t2 = Fp2.pow(n2, Q);
    let R2 = Fp2.pow(n2, Q1div2);
    while (!Fp2.eql(t2, Fp2.ONE)) {
      if (Fp2.is0(t2))
        return Fp2.ZERO;
      let i4 = 1;
      let t_tmp = Fp2.sqr(t2);
      while (!Fp2.eql(t_tmp, Fp2.ONE)) {
        i4++;
        t_tmp = Fp2.sqr(t_tmp);
        if (i4 === M3)
          throw new Error("Cannot find square root");
      }
      const exponent = _1n$6 << BigInt(M3 - i4 - 1);
      const b = Fp2.pow(c3, exponent);
      M3 = i4;
      c3 = Fp2.sqr(b);
      t2 = Fp2.mul(t2, c3);
      R2 = Fp2.mul(R2, b);
    }
    return R2;
  };
}
function FpSqrt(P2) {
  if (P2 % _4n$1 === _3n$2)
    return sqrt3mod4;
  if (P2 % _8n$1 === _5n)
    return sqrt5mod8;
  if (P2 % _16n === _9n)
    return sqrt9mod16(P2);
  return tonelliShanks(P2);
}
function validateField(field) {
  const initial = {
    ORDER: "bigint",
    MASK: "bigint",
    BYTES: "number",
    BITS: "number"
  };
  const opts3 = FIELD_FIELDS.reduce((map26, val) => {
    map26[val] = "function";
    return map26;
  }, initial);
  _validateObject(field, opts3);
  return field;
}
function FpPow(Fp2, num, power) {
  if (power < _0n$5)
    throw new Error("invalid exponent, negatives unsupported");
  if (power === _0n$5)
    return Fp2.ONE;
  if (power === _1n$6)
    return num;
  let p = Fp2.ONE;
  let d3 = num;
  while (power > _0n$5) {
    if (power & _1n$6)
      p = Fp2.mul(p, d3);
    d3 = Fp2.sqr(d3);
    power >>= _1n$6;
  }
  return p;
}
function FpInvertBatch(Fp2, nums, passZero = false) {
  const inverted = new Array(nums.length).fill(passZero ? Fp2.ZERO : void 0);
  const multipliedAcc = nums.reduce((acc, num, i4) => {
    if (Fp2.is0(num))
      return acc;
    inverted[i4] = acc;
    return Fp2.mul(acc, num);
  }, Fp2.ONE);
  const invertedAcc = Fp2.inv(multipliedAcc);
  nums.reduceRight((acc, num, i4) => {
    if (Fp2.is0(num))
      return acc;
    inverted[i4] = Fp2.mul(acc, inverted[i4]);
    return Fp2.mul(acc, num);
  }, invertedAcc);
  return inverted;
}
function FpLegendre(Fp2, n2) {
  const p1mod2 = (Fp2.ORDER - _1n$6) / _2n$6;
  const powered = Fp2.pow(n2, p1mod2);
  const yes = Fp2.eql(powered, Fp2.ONE);
  const zero2 = Fp2.eql(powered, Fp2.ZERO);
  const no = Fp2.eql(powered, Fp2.neg(Fp2.ONE));
  if (!yes && !zero2 && !no)
    throw new Error("invalid Legendre symbol result");
  return yes ? 1 : zero2 ? 0 : -1;
}
function nLength(n2, nBitLength) {
  if (nBitLength !== void 0)
    anumber(nBitLength);
  const _nBitLength = nBitLength !== void 0 ? nBitLength : n2.toString(2).length;
  const nByteLength = Math.ceil(_nBitLength / 8);
  return { nBitLength: _nBitLength, nByteLength };
}
function Field(ORDER, bitLenOrOpts, isLE2 = false, opts3 = {}) {
  if (ORDER <= _0n$5)
    throw new Error("invalid field: expected ORDER > 0, got " + ORDER);
  let _nbitLength = void 0;
  let _sqrt = void 0;
  let modFromBytes = false;
  let allowedLengths = void 0;
  if (typeof bitLenOrOpts === "object" && bitLenOrOpts != null) {
    if (opts3.sqrt || isLE2)
      throw new Error("cannot specify opts in two arguments");
    const _opts = bitLenOrOpts;
    if (_opts.BITS)
      _nbitLength = _opts.BITS;
    if (_opts.sqrt)
      _sqrt = _opts.sqrt;
    if (typeof _opts.isLE === "boolean")
      isLE2 = _opts.isLE;
    if (typeof _opts.modFromBytes === "boolean")
      modFromBytes = _opts.modFromBytes;
    allowedLengths = _opts.allowedLengths;
  } else {
    if (typeof bitLenOrOpts === "number")
      _nbitLength = bitLenOrOpts;
    if (opts3.sqrt)
      _sqrt = opts3.sqrt;
  }
  const { nBitLength: BITS, nByteLength: BYTES } = nLength(ORDER, _nbitLength);
  if (BYTES > 2048)
    throw new Error("invalid field: expected ORDER of <= 2048 bytes");
  let sqrtP;
  const f = Object.freeze({
    ORDER,
    isLE: isLE2,
    BITS,
    BYTES,
    MASK: bitMask(BITS),
    ZERO: _0n$5,
    ONE: _1n$6,
    allowedLengths,
    create: (num) => mod(num, ORDER),
    isValid: (num) => {
      if (typeof num !== "bigint")
        throw new Error("invalid field element: expected bigint, got " + typeof num);
      return _0n$5 <= num && num < ORDER;
    },
    is0: (num) => num === _0n$5,
    // is valid and invertible
    isValidNot0: (num) => !f.is0(num) && f.isValid(num),
    isOdd: (num) => (num & _1n$6) === _1n$6,
    neg: (num) => mod(-num, ORDER),
    eql: (lhs, rhs) => lhs === rhs,
    sqr: (num) => mod(num * num, ORDER),
    add: (lhs, rhs) => mod(lhs + rhs, ORDER),
    sub: (lhs, rhs) => mod(lhs - rhs, ORDER),
    mul: (lhs, rhs) => mod(lhs * rhs, ORDER),
    pow: (num, power) => FpPow(f, num, power),
    div: (lhs, rhs) => mod(lhs * invert(rhs, ORDER), ORDER),
    // Same as above, but doesn't normalize
    sqrN: (num) => num * num,
    addN: (lhs, rhs) => lhs + rhs,
    subN: (lhs, rhs) => lhs - rhs,
    mulN: (lhs, rhs) => lhs * rhs,
    inv: (num) => invert(num, ORDER),
    sqrt: _sqrt || ((n2) => {
      if (!sqrtP)
        sqrtP = FpSqrt(ORDER);
      return sqrtP(f, n2);
    }),
    toBytes: (num) => isLE2 ? numberToBytesLE(num, BYTES) : numberToBytesBE(num, BYTES),
    fromBytes: (bytes, skipValidation = true) => {
      if (allowedLengths) {
        if (!allowedLengths.includes(bytes.length) || bytes.length > BYTES) {
          throw new Error("Field.fromBytes: expected " + allowedLengths + " bytes, got " + bytes.length);
        }
        const padded = new Uint8Array(BYTES);
        padded.set(bytes, isLE2 ? 0 : padded.length - bytes.length);
        bytes = padded;
      }
      if (bytes.length !== BYTES)
        throw new Error("Field.fromBytes: expected " + BYTES + " bytes, got " + bytes.length);
      let scalar = isLE2 ? bytesToNumberLE(bytes) : bytesToNumberBE(bytes);
      if (modFromBytes)
        scalar = mod(scalar, ORDER);
      if (!skipValidation) {
        if (!f.isValid(scalar))
          throw new Error("invalid field element: outside of range 0..ORDER");
      }
      return scalar;
    },
    // TODO: we don't need it here, move out to separate fn
    invertBatch: (lst) => FpInvertBatch(f, lst),
    // We can't move this out because Fp6, Fp12 implement it
    // and it's unclear what to return in there.
    cmov: (a2, b, c3) => c3 ? b : a2
  });
  return Object.freeze(f);
}
function getFieldBytesLength(fieldOrder) {
  if (typeof fieldOrder !== "bigint")
    throw new Error("field order must be bigint");
  const bitLength2 = fieldOrder.toString(2).length;
  return Math.ceil(bitLength2 / 8);
}
function getMinHashLength(fieldOrder) {
  const length = getFieldBytesLength(fieldOrder);
  return length + Math.ceil(length / 2);
}
function mapHashToField(key, fieldOrder, isLE2 = false) {
  const len = key.length;
  const fieldLen = getFieldBytesLength(fieldOrder);
  const minLen = getMinHashLength(fieldOrder);
  if (len < 16 || len < minLen || len > 1024)
    throw new Error("expected " + minLen + "-1024 bytes of input, got " + len);
  const num = isLE2 ? bytesToNumberLE(key) : bytesToNumberBE(key);
  const reduced = mod(num, fieldOrder - _1n$6) + _1n$6;
  return isLE2 ? numberToBytesLE(reduced, fieldLen) : numberToBytesBE(reduced, fieldLen);
}
function setBigUint64(view, byteOffset, value, isLE2) {
  if (typeof view.setBigUint64 === "function")
    return view.setBigUint64(byteOffset, value, isLE2);
  const _32n2 = BigInt(32);
  const _u32_max = BigInt(4294967295);
  const wh = Number(value >> _32n2 & _u32_max);
  const wl = Number(value & _u32_max);
  const h2 = isLE2 ? 4 : 0;
  const l = isLE2 ? 0 : 4;
  view.setUint32(byteOffset + h2, wh, isLE2);
  view.setUint32(byteOffset + l, wl, isLE2);
}
function Chi$1(a2, b, c3) {
  return a2 & b ^ ~a2 & c3;
}
function Maj(a2, b, c3) {
  return a2 & b ^ a2 & c3 ^ b & c3;
}
function fromBig(n2, le = false) {
  if (le)
    return { h: Number(n2 & U32_MASK64), l: Number(n2 >> _32n & U32_MASK64) };
  return { h: Number(n2 >> _32n & U32_MASK64) | 0, l: Number(n2 & U32_MASK64) | 0 };
}
function split2(lst, le = false) {
  const len = lst.length;
  let Ah = new Uint32Array(len);
  let Al = new Uint32Array(len);
  for (let i4 = 0; i4 < len; i4++) {
    const { h: h2, l } = fromBig(lst[i4], le);
    [Ah[i4], Al[i4]] = [h2, l];
  }
  return [Ah, Al];
}
function add$1(Ah, Al, Bh, Bl) {
  const l = (Al >>> 0) + (Bl >>> 0);
  return { h: Ah + Bh + (l / 2 ** 32 | 0) | 0, l: l | 0 };
}
function negateCt(condition, item) {
  const neg = item.negate();
  return condition ? neg : item;
}
function normalizeZ(c3, points) {
  const invertedZs = FpInvertBatch(c3.Fp, points.map((p) => p.Z));
  return points.map((p, i4) => c3.fromAffine(p.toAffine(invertedZs[i4])));
}
function validateW(W2, bits2) {
  if (!Number.isSafeInteger(W2) || W2 <= 0 || W2 > bits2)
    throw new Error("invalid window size, expected [1.." + bits2 + "], got W=" + W2);
}
function calcWOpts(W2, scalarBits) {
  validateW(W2, scalarBits);
  const windows = Math.ceil(scalarBits / W2) + 1;
  const windowSize = 2 ** (W2 - 1);
  const maxNumber = 2 ** W2;
  const mask = bitMask(W2);
  const shiftBy = BigInt(W2);
  return { windows, windowSize, mask, maxNumber, shiftBy };
}
function calcOffsets(n2, window2, wOpts) {
  const { windowSize, mask, maxNumber, shiftBy } = wOpts;
  let wbits2 = Number(n2 & mask);
  let nextN = n2 >> shiftBy;
  if (wbits2 > windowSize) {
    wbits2 -= maxNumber;
    nextN += _1n$5;
  }
  const offsetStart = window2 * windowSize;
  const offset = offsetStart + Math.abs(wbits2) - 1;
  const isZero2 = wbits2 === 0;
  const isNeg = wbits2 < 0;
  const isNegF = window2 % 2 !== 0;
  const offsetF = offsetStart;
  return { nextN, offset, isZero: isZero2, isNeg, isNegF, offsetF };
}
function validateMSMPoints(points, c3) {
  if (!Array.isArray(points))
    throw new Error("array expected");
  points.forEach((p, i4) => {
    if (!(p instanceof c3))
      throw new Error("invalid point at index " + i4);
  });
}
function validateMSMScalars(scalars, field) {
  if (!Array.isArray(scalars))
    throw new Error("array of scalars expected");
  scalars.forEach((s, i4) => {
    if (!field.isValid(s))
      throw new Error("invalid scalar at index " + i4);
  });
}
function getW$1(P2) {
  return pointWindowSizes.get(P2) || 1;
}
function assert0(n2) {
  if (n2 !== _0n$4)
    throw new Error("invalid wNAF");
}
function mulEndoUnsafe(Point, point, k1, k2) {
  let acc = point;
  let p1 = Point.ZERO;
  let p2 = Point.ZERO;
  while (k1 > _0n$4 || k2 > _0n$4) {
    if (k1 & _1n$5)
      p1 = p1.add(acc);
    if (k2 & _1n$5)
      p2 = p2.add(acc);
    acc = acc.double();
    k1 >>= _1n$5;
    k2 >>= _1n$5;
  }
  return { p1, p2 };
}
function pippenger(c3, fieldN, points, scalars) {
  validateMSMPoints(points, c3);
  validateMSMScalars(scalars, fieldN);
  const plength = points.length;
  const slength = scalars.length;
  if (plength !== slength)
    throw new Error("arrays of points and scalars must have equal length");
  const zero2 = c3.ZERO;
  const wbits2 = bitLen(BigInt(plength));
  let windowSize = 1;
  if (wbits2 > 12)
    windowSize = wbits2 - 3;
  else if (wbits2 > 4)
    windowSize = wbits2 - 2;
  else if (wbits2 > 0)
    windowSize = 2;
  const MASK = bitMask(windowSize);
  const buckets = new Array(Number(MASK) + 1).fill(zero2);
  const lastBits = Math.floor((fieldN.BITS - 1) / windowSize) * windowSize;
  let sum = zero2;
  for (let i4 = lastBits; i4 >= 0; i4 -= windowSize) {
    buckets.fill(zero2);
    for (let j2 = 0; j2 < slength; j2++) {
      const scalar = scalars[j2];
      const wbits3 = Number(scalar >> BigInt(i4) & MASK);
      buckets[wbits3] = buckets[wbits3].add(points[j2]);
    }
    let resI = zero2;
    for (let j2 = buckets.length - 1, sumI = zero2; j2 > 0; j2--) {
      sumI = sumI.add(buckets[j2]);
      resI = resI.add(sumI);
    }
    sum = sum.add(resI);
    if (i4 !== 0)
      for (let j2 = 0; j2 < windowSize; j2++)
        sum = sum.double();
  }
  return sum;
}
function createField(order, field, isLE2) {
  if (field) {
    if (field.ORDER !== order)
      throw new Error("Field.ORDER must match order: Fp == p, Fn == n");
    validateField(field);
    return field;
  } else {
    return Field(order, { isLE: isLE2 });
  }
}
function _createCurveFields(type4, CURVE, curveOpts = {}, FpFnLE) {
  if (FpFnLE === void 0)
    FpFnLE = type4 === "edwards";
  if (!CURVE || typeof CURVE !== "object")
    throw new Error(`expected valid ${type4} CURVE object`);
  for (const p of ["p", "n", "h"]) {
    const val = CURVE[p];
    if (!(typeof val === "bigint" && val > _0n$4))
      throw new Error(`CURVE.${p} must be positive bigint`);
  }
  const Fp2 = createField(CURVE.p, curveOpts.Fp, FpFnLE);
  const Fn2 = createField(CURVE.n, curveOpts.Fn, FpFnLE);
  const _b2 = type4 === "weierstrass" ? "b" : "d";
  const params = ["Gx", "Gy", "a", _b2];
  for (const p of params) {
    if (!Fp2.isValid(CURVE[p]))
      throw new Error(`CURVE.${p} must be valid field element of CURVE.Fp`);
  }
  CURVE = Object.freeze(Object.assign({}, CURVE));
  return { CURVE, Fp: Fp2, Fn: Fn2 };
}
function _splitEndoScalar(k2, basis, n2) {
  const [[a1, b1], [a2, b2]] = basis;
  const c1 = divNearest(b2 * k2, n2);
  const c22 = divNearest(-b1 * k2, n2);
  let k1 = k2 - c1 * a1 - c22 * a2;
  let k22 = -c1 * b1 - c22 * b2;
  const k1neg = k1 < _0n$3;
  const k2neg = k22 < _0n$3;
  if (k1neg)
    k1 = -k1;
  if (k2neg)
    k22 = -k22;
  const MAX_NUM = bitMask(Math.ceil(bitLen(n2) / 2)) + _1n$4;
  if (k1 < _0n$3 || k1 >= MAX_NUM || k22 < _0n$3 || k22 >= MAX_NUM) {
    throw new Error("splitScalar (endomorphism): failed, k=" + k2);
  }
  return { k1neg, k1, k2neg, k2: k22 };
}
function validateSigFormat(format2) {
  if (!["compact", "recovered", "der"].includes(format2))
    throw new Error('Signature format must be "compact", "recovered", or "der"');
  return format2;
}
function validateSigOpts(opts3, def) {
  const optsn = {};
  for (let optName of Object.keys(def)) {
    optsn[optName] = opts3[optName] === void 0 ? def[optName] : opts3[optName];
  }
  _abool2(optsn.lowS, "lowS");
  _abool2(optsn.prehash, "prehash");
  if (optsn.format !== void 0)
    validateSigFormat(optsn.format);
  return optsn;
}
function _normFnElement(Fn2, key) {
  const { BYTES: expected } = Fn2;
  let num;
  if (typeof key === "bigint") {
    num = key;
  } else {
    let bytes = ensureBytes("private key", key);
    try {
      num = Fn2.fromBytes(bytes);
    } catch (error) {
      throw new Error(`invalid private key: expected ui8a of size ${expected}, got ${typeof key}`);
    }
  }
  if (!Fn2.isValidNot0(num))
    throw new Error("invalid private key: out of range [1..N-1]");
  return num;
}
function weierstrassN(params, extraOpts = {}) {
  const validated = _createCurveFields("weierstrass", params, extraOpts);
  const { Fp: Fp2, Fn: Fn2 } = validated;
  let CURVE = validated.CURVE;
  const { h: cofactor, n: CURVE_ORDER } = CURVE;
  _validateObject(extraOpts, {}, {
    allowInfinityPoint: "boolean",
    clearCofactor: "function",
    isTorsionFree: "function",
    fromBytes: "function",
    toBytes: "function",
    endo: "object",
    wrapPrivateKey: "boolean"
  });
  const { endo } = extraOpts;
  if (endo) {
    if (!Fp2.is0(CURVE.a) || typeof endo.beta !== "bigint" || !Array.isArray(endo.basises)) {
      throw new Error('invalid endo: expected "beta": bigint and "basises": array');
    }
  }
  const lengths = getWLengths(Fp2, Fn2);
  function assertCompressionIsSupported() {
    if (!Fp2.isOdd)
      throw new Error("compression is not supported: Field does not have .isOdd()");
  }
  function pointToBytes(_c, point, isCompressed) {
    const { x: x3, y } = point.toAffine();
    const bx = Fp2.toBytes(x3);
    _abool2(isCompressed, "isCompressed");
    if (isCompressed) {
      assertCompressionIsSupported();
      const hasEvenY = !Fp2.isOdd(y);
      return concatBytes(pprefix(hasEvenY), bx);
    } else {
      return concatBytes(Uint8Array.of(4), bx, Fp2.toBytes(y));
    }
  }
  function pointFromBytes(bytes) {
    _abytes2(bytes, void 0, "Point");
    const { publicKey: comp, publicKeyUncompressed: uncomp } = lengths;
    const length = bytes.length;
    const head2 = bytes[0];
    const tail2 = bytes.subarray(1);
    if (length === comp && (head2 === 2 || head2 === 3)) {
      const x3 = Fp2.fromBytes(tail2);
      if (!Fp2.isValid(x3))
        throw new Error("bad point: is not on curve, wrong x");
      const y2 = weierstrassEquation(x3);
      let y;
      try {
        y = Fp2.sqrt(y2);
      } catch (sqrtError) {
        const err2 = sqrtError instanceof Error ? ": " + sqrtError.message : "";
        throw new Error("bad point: is not on curve, sqrt error" + err2);
      }
      assertCompressionIsSupported();
      const isYOdd = Fp2.isOdd(y);
      const isHeadOdd = (head2 & 1) === 1;
      if (isHeadOdd !== isYOdd)
        y = Fp2.neg(y);
      return { x: x3, y };
    } else if (length === uncomp && head2 === 4) {
      const L3 = Fp2.BYTES;
      const x3 = Fp2.fromBytes(tail2.subarray(0, L3));
      const y = Fp2.fromBytes(tail2.subarray(L3, L3 * 2));
      if (!isValidXY(x3, y))
        throw new Error("bad point: is not on curve");
      return { x: x3, y };
    } else {
      throw new Error(`bad point: got length ${length}, expected compressed=${comp} or uncompressed=${uncomp}`);
    }
  }
  const encodePoint = extraOpts.toBytes || pointToBytes;
  const decodePoint = extraOpts.fromBytes || pointFromBytes;
  function weierstrassEquation(x3) {
    const x22 = Fp2.sqr(x3);
    const x32 = Fp2.mul(x22, x3);
    return Fp2.add(Fp2.add(x32, Fp2.mul(x3, CURVE.a)), CURVE.b);
  }
  function isValidXY(x3, y) {
    const left = Fp2.sqr(y);
    const right = weierstrassEquation(x3);
    return Fp2.eql(left, right);
  }
  if (!isValidXY(CURVE.Gx, CURVE.Gy))
    throw new Error("bad curve params: generator point");
  const _4a3 = Fp2.mul(Fp2.pow(CURVE.a, _3n$1), _4n);
  const _27b2 = Fp2.mul(Fp2.sqr(CURVE.b), BigInt(27));
  if (Fp2.is0(Fp2.add(_4a3, _27b2)))
    throw new Error("bad curve params: a or b");
  function acoord(title, n2, banZero = false) {
    if (!Fp2.isValid(n2) || banZero && Fp2.is0(n2))
      throw new Error(`bad point coordinate ${title}`);
    return n2;
  }
  function aprjpoint(other) {
    if (!(other instanceof Point))
      throw new Error("ProjectivePoint expected");
  }
  function splitEndoScalarN(k2) {
    if (!endo || !endo.basises)
      throw new Error("no endo");
    return _splitEndoScalar(k2, endo.basises, Fn2.ORDER);
  }
  const toAffineMemo = memoized((p, iz) => {
    const { X: X2, Y: Y2, Z: Z2 } = p;
    if (Fp2.eql(Z2, Fp2.ONE))
      return { x: X2, y: Y2 };
    const is0 = p.is0();
    if (iz == null)
      iz = is0 ? Fp2.ONE : Fp2.inv(Z2);
    const x3 = Fp2.mul(X2, iz);
    const y = Fp2.mul(Y2, iz);
    const zz = Fp2.mul(Z2, iz);
    if (is0)
      return { x: Fp2.ZERO, y: Fp2.ZERO };
    if (!Fp2.eql(zz, Fp2.ONE))
      throw new Error("invZ was invalid");
    return { x: x3, y };
  });
  const assertValidMemo = memoized((p) => {
    if (p.is0()) {
      if (extraOpts.allowInfinityPoint && !Fp2.is0(p.Y))
        return;
      throw new Error("bad point: ZERO");
    }
    const { x: x3, y } = p.toAffine();
    if (!Fp2.isValid(x3) || !Fp2.isValid(y))
      throw new Error("bad point: x or y not field elements");
    if (!isValidXY(x3, y))
      throw new Error("bad point: equation left != right");
    if (!p.isTorsionFree())
      throw new Error("bad point: not in prime-order subgroup");
    return true;
  });
  function finishEndo(endoBeta, k1p, k2p, k1neg, k2neg) {
    k2p = new Point(Fp2.mul(k2p.X, endoBeta), k2p.Y, k2p.Z);
    k1p = negateCt(k1neg, k1p);
    k2p = negateCt(k2neg, k2p);
    return k1p.add(k2p);
  }
  class Point {
    /** Does NOT validate if the point is valid. Use `.assertValidity()`. */
    constructor(X2, Y2, Z2) {
      this.X = acoord("x", X2);
      this.Y = acoord("y", Y2, true);
      this.Z = acoord("z", Z2);
      Object.freeze(this);
    }
    static CURVE() {
      return CURVE;
    }
    /** Does NOT validate if the point is valid. Use `.assertValidity()`. */
    static fromAffine(p) {
      const { x: x3, y } = p || {};
      if (!p || !Fp2.isValid(x3) || !Fp2.isValid(y))
        throw new Error("invalid affine point");
      if (p instanceof Point)
        throw new Error("projective point not allowed");
      if (Fp2.is0(x3) && Fp2.is0(y))
        return Point.ZERO;
      return new Point(x3, y, Fp2.ONE);
    }
    static fromBytes(bytes) {
      const P2 = Point.fromAffine(decodePoint(_abytes2(bytes, void 0, "point")));
      P2.assertValidity();
      return P2;
    }
    static fromHex(hex) {
      return Point.fromBytes(ensureBytes("pointHex", hex));
    }
    get x() {
      return this.toAffine().x;
    }
    get y() {
      return this.toAffine().y;
    }
    /**
     *
     * @param windowSize
     * @param isLazy true will defer table computation until the first multiplication
     * @returns
     */
    precompute(windowSize = 8, isLazy = true) {
      wnaf.createCache(this, windowSize);
      if (!isLazy)
        this.multiply(_3n$1);
      return this;
    }
    // TODO: return `this`
    /** A point on curve is valid if it conforms to equation. */
    assertValidity() {
      assertValidMemo(this);
    }
    hasEvenY() {
      const { y } = this.toAffine();
      if (!Fp2.isOdd)
        throw new Error("Field doesn't support isOdd");
      return !Fp2.isOdd(y);
    }
    /** Compare one point to another. */
    equals(other) {
      aprjpoint(other);
      const { X: X1, Y: Y1, Z: Z1 } = this;
      const { X: X2, Y: Y2, Z: Z2 } = other;
      const U1 = Fp2.eql(Fp2.mul(X1, Z2), Fp2.mul(X2, Z1));
      const U2 = Fp2.eql(Fp2.mul(Y1, Z2), Fp2.mul(Y2, Z1));
      return U1 && U2;
    }
    /** Flips point to one corresponding to (x, -y) in Affine coordinates. */
    negate() {
      return new Point(this.X, Fp2.neg(this.Y), this.Z);
    }
    // Renes-Costello-Batina exception-free doubling formula.
    // There is 30% faster Jacobian formula, but it is not complete.
    // https://eprint.iacr.org/2015/1060, algorithm 3
    // Cost: 8M + 3S + 3*a + 2*b3 + 15add.
    double() {
      const { a: a2, b } = CURVE;
      const b3 = Fp2.mul(b, _3n$1);
      const { X: X1, Y: Y1, Z: Z1 } = this;
      let X3 = Fp2.ZERO, Y3 = Fp2.ZERO, Z3 = Fp2.ZERO;
      let t0 = Fp2.mul(X1, X1);
      let t1 = Fp2.mul(Y1, Y1);
      let t2 = Fp2.mul(Z1, Z1);
      let t3 = Fp2.mul(X1, Y1);
      t3 = Fp2.add(t3, t3);
      Z3 = Fp2.mul(X1, Z1);
      Z3 = Fp2.add(Z3, Z3);
      X3 = Fp2.mul(a2, Z3);
      Y3 = Fp2.mul(b3, t2);
      Y3 = Fp2.add(X3, Y3);
      X3 = Fp2.sub(t1, Y3);
      Y3 = Fp2.add(t1, Y3);
      Y3 = Fp2.mul(X3, Y3);
      X3 = Fp2.mul(t3, X3);
      Z3 = Fp2.mul(b3, Z3);
      t2 = Fp2.mul(a2, t2);
      t3 = Fp2.sub(t0, t2);
      t3 = Fp2.mul(a2, t3);
      t3 = Fp2.add(t3, Z3);
      Z3 = Fp2.add(t0, t0);
      t0 = Fp2.add(Z3, t0);
      t0 = Fp2.add(t0, t2);
      t0 = Fp2.mul(t0, t3);
      Y3 = Fp2.add(Y3, t0);
      t2 = Fp2.mul(Y1, Z1);
      t2 = Fp2.add(t2, t2);
      t0 = Fp2.mul(t2, t3);
      X3 = Fp2.sub(X3, t0);
      Z3 = Fp2.mul(t2, t1);
      Z3 = Fp2.add(Z3, Z3);
      Z3 = Fp2.add(Z3, Z3);
      return new Point(X3, Y3, Z3);
    }
    // Renes-Costello-Batina exception-free addition formula.
    // There is 30% faster Jacobian formula, but it is not complete.
    // https://eprint.iacr.org/2015/1060, algorithm 1
    // Cost: 12M + 0S + 3*a + 3*b3 + 23add.
    add(other) {
      aprjpoint(other);
      const { X: X1, Y: Y1, Z: Z1 } = this;
      const { X: X2, Y: Y2, Z: Z2 } = other;
      let X3 = Fp2.ZERO, Y3 = Fp2.ZERO, Z3 = Fp2.ZERO;
      const a2 = CURVE.a;
      const b3 = Fp2.mul(CURVE.b, _3n$1);
      let t0 = Fp2.mul(X1, X2);
      let t1 = Fp2.mul(Y1, Y2);
      let t2 = Fp2.mul(Z1, Z2);
      let t3 = Fp2.add(X1, Y1);
      let t4 = Fp2.add(X2, Y2);
      t3 = Fp2.mul(t3, t4);
      t4 = Fp2.add(t0, t1);
      t3 = Fp2.sub(t3, t4);
      t4 = Fp2.add(X1, Z1);
      let t5 = Fp2.add(X2, Z2);
      t4 = Fp2.mul(t4, t5);
      t5 = Fp2.add(t0, t2);
      t4 = Fp2.sub(t4, t5);
      t5 = Fp2.add(Y1, Z1);
      X3 = Fp2.add(Y2, Z2);
      t5 = Fp2.mul(t5, X3);
      X3 = Fp2.add(t1, t2);
      t5 = Fp2.sub(t5, X3);
      Z3 = Fp2.mul(a2, t4);
      X3 = Fp2.mul(b3, t2);
      Z3 = Fp2.add(X3, Z3);
      X3 = Fp2.sub(t1, Z3);
      Z3 = Fp2.add(t1, Z3);
      Y3 = Fp2.mul(X3, Z3);
      t1 = Fp2.add(t0, t0);
      t1 = Fp2.add(t1, t0);
      t2 = Fp2.mul(a2, t2);
      t4 = Fp2.mul(b3, t4);
      t1 = Fp2.add(t1, t2);
      t2 = Fp2.sub(t0, t2);
      t2 = Fp2.mul(a2, t2);
      t4 = Fp2.add(t4, t2);
      t0 = Fp2.mul(t1, t4);
      Y3 = Fp2.add(Y3, t0);
      t0 = Fp2.mul(t5, t4);
      X3 = Fp2.mul(t3, X3);
      X3 = Fp2.sub(X3, t0);
      t0 = Fp2.mul(t3, t1);
      Z3 = Fp2.mul(t5, Z3);
      Z3 = Fp2.add(Z3, t0);
      return new Point(X3, Y3, Z3);
    }
    subtract(other) {
      return this.add(other.negate());
    }
    is0() {
      return this.equals(Point.ZERO);
    }
    /**
     * Constant time multiplication.
     * Uses wNAF method. Windowed method may be 10% faster,
     * but takes 2x longer to generate and consumes 2x memory.
     * Uses precomputes when available.
     * Uses endomorphism for Koblitz curves.
     * @param scalar by which the point would be multiplied
     * @returns New point
     */
    multiply(scalar) {
      const { endo: endo2 } = extraOpts;
      if (!Fn2.isValidNot0(scalar))
        throw new Error("invalid scalar: out of range");
      let point, fake;
      const mul3 = (n2) => wnaf.cached(this, n2, (p) => normalizeZ(Point, p));
      if (endo2) {
        const { k1neg, k1, k2neg, k2 } = splitEndoScalarN(scalar);
        const { p: k1p, f: k1f } = mul3(k1);
        const { p: k2p, f: k2f } = mul3(k2);
        fake = k1f.add(k2f);
        point = finishEndo(endo2.beta, k1p, k2p, k1neg, k2neg);
      } else {
        const { p, f } = mul3(scalar);
        point = p;
        fake = f;
      }
      return normalizeZ(Point, [point, fake])[0];
    }
    /**
     * Non-constant-time multiplication. Uses double-and-add algorithm.
     * It's faster, but should only be used when you don't care about
     * an exposed secret key e.g. sig verification, which works over *public* keys.
     */
    multiplyUnsafe(sc) {
      const { endo: endo2 } = extraOpts;
      const p = this;
      if (!Fn2.isValid(sc))
        throw new Error("invalid scalar: out of range");
      if (sc === _0n$3 || p.is0())
        return Point.ZERO;
      if (sc === _1n$4)
        return p;
      if (wnaf.hasCache(this))
        return this.multiply(sc);
      if (endo2) {
        const { k1neg, k1, k2neg, k2 } = splitEndoScalarN(sc);
        const { p1, p2 } = mulEndoUnsafe(Point, p, k1, k2);
        return finishEndo(endo2.beta, p1, p2, k1neg, k2neg);
      } else {
        return wnaf.unsafe(p, sc);
      }
    }
    multiplyAndAddUnsafe(Q, a2, b) {
      const sum = this.multiplyUnsafe(a2).add(Q.multiplyUnsafe(b));
      return sum.is0() ? void 0 : sum;
    }
    /**
     * Converts Projective point to affine (x, y) coordinates.
     * @param invertedZ Z^-1 (inverted zero) - optional, precomputation is useful for invertBatch
     */
    toAffine(invertedZ) {
      return toAffineMemo(this, invertedZ);
    }
    /**
     * Checks whether Point is free of torsion elements (is in prime subgroup).
     * Always torsion-free for cofactor=1 curves.
     */
    isTorsionFree() {
      const { isTorsionFree } = extraOpts;
      if (cofactor === _1n$4)
        return true;
      if (isTorsionFree)
        return isTorsionFree(Point, this);
      return wnaf.unsafe(this, CURVE_ORDER).is0();
    }
    clearCofactor() {
      const { clearCofactor } = extraOpts;
      if (cofactor === _1n$4)
        return this;
      if (clearCofactor)
        return clearCofactor(Point, this);
      return this.multiplyUnsafe(cofactor);
    }
    isSmallOrder() {
      return this.multiplyUnsafe(cofactor).is0();
    }
    toBytes(isCompressed = true) {
      _abool2(isCompressed, "isCompressed");
      this.assertValidity();
      return encodePoint(Point, this, isCompressed);
    }
    toHex(isCompressed = true) {
      return bytesToHex(this.toBytes(isCompressed));
    }
    toString() {
      return `<Point ${this.is0() ? "ZERO" : this.toHex()}>`;
    }
    // TODO: remove
    get px() {
      return this.X;
    }
    get py() {
      return this.X;
    }
    get pz() {
      return this.Z;
    }
    toRawBytes(isCompressed = true) {
      return this.toBytes(isCompressed);
    }
    _setWindowSize(windowSize) {
      this.precompute(windowSize);
    }
    static normalizeZ(points) {
      return normalizeZ(Point, points);
    }
    static msm(points, scalars) {
      return pippenger(Point, Fn2, points, scalars);
    }
    static fromPrivateKey(privateKey) {
      return Point.BASE.multiply(_normFnElement(Fn2, privateKey));
    }
  }
  Point.BASE = new Point(CURVE.Gx, CURVE.Gy, Fp2.ONE);
  Point.ZERO = new Point(Fp2.ZERO, Fp2.ONE, Fp2.ZERO);
  Point.Fp = Fp2;
  Point.Fn = Fn2;
  const bits2 = Fn2.BITS;
  const wnaf = new wNAF(Point, extraOpts.endo ? Math.ceil(bits2 / 2) : bits2);
  Point.BASE.precompute(8);
  return Point;
}
function pprefix(hasEvenY) {
  return Uint8Array.of(hasEvenY ? 2 : 3);
}
function getWLengths(Fp2, Fn2) {
  return {
    secretKey: Fn2.BYTES,
    publicKey: 1 + Fp2.BYTES,
    publicKeyUncompressed: 1 + 2 * Fp2.BYTES,
    publicKeyHasPrefix: true,
    signature: 2 * Fn2.BYTES
  };
}
function ecdh(Point, ecdhOpts = {}) {
  const { Fn: Fn2 } = Point;
  const randomBytes_ = ecdhOpts.randomBytes || randomBytes;
  const lengths = Object.assign(getWLengths(Point.Fp, Fn2), { seed: getMinHashLength(Fn2.ORDER) });
  function isValidSecretKey(secretKey) {
    try {
      return !!_normFnElement(Fn2, secretKey);
    } catch (error) {
      return false;
    }
  }
  function isValidPublicKey(publicKey, isCompressed) {
    const { publicKey: comp, publicKeyUncompressed } = lengths;
    try {
      const l = publicKey.length;
      if (isCompressed === true && l !== comp)
        return false;
      if (isCompressed === false && l !== publicKeyUncompressed)
        return false;
      return !!Point.fromBytes(publicKey);
    } catch (error) {
      return false;
    }
  }
  function randomSecretKey(seed = randomBytes_(lengths.seed)) {
    return mapHashToField(_abytes2(seed, lengths.seed, "seed"), Fn2.ORDER);
  }
  function getPublicKey(secretKey, isCompressed = true) {
    return Point.BASE.multiply(_normFnElement(Fn2, secretKey)).toBytes(isCompressed);
  }
  function keygen(seed) {
    const secretKey = randomSecretKey(seed);
    return { secretKey, publicKey: getPublicKey(secretKey) };
  }
  function isProbPub(item) {
    if (typeof item === "bigint")
      return false;
    if (item instanceof Point)
      return true;
    const { secretKey, publicKey, publicKeyUncompressed } = lengths;
    if (Fn2.allowedLengths || secretKey === publicKey)
      return void 0;
    const l = ensureBytes("key", item).length;
    return l === publicKey || l === publicKeyUncompressed;
  }
  function getSharedSecret(secretKeyA, publicKeyB, isCompressed = true) {
    if (isProbPub(secretKeyA) === true)
      throw new Error("first arg must be private key");
    if (isProbPub(publicKeyB) === false)
      throw new Error("second arg must be public key");
    const s = _normFnElement(Fn2, secretKeyA);
    const b = Point.fromHex(publicKeyB);
    return b.multiply(s).toBytes(isCompressed);
  }
  const utils = {
    isValidSecretKey,
    isValidPublicKey,
    randomSecretKey,
    // TODO: remove
    isValidPrivateKey: isValidSecretKey,
    randomPrivateKey: randomSecretKey,
    normPrivateKeyToScalar: (key) => _normFnElement(Fn2, key),
    precompute(windowSize = 8, point = Point.BASE) {
      return point.precompute(windowSize, false);
    }
  };
  return Object.freeze({ getPublicKey, getSharedSecret, keygen, Point, utils, lengths });
}
function ecdsa(Point, hash2, ecdsaOpts = {}) {
  ahash(hash2);
  _validateObject(ecdsaOpts, {}, {
    hmac: "function",
    lowS: "boolean",
    randomBytes: "function",
    bits2int: "function",
    bits2int_modN: "function"
  });
  const randomBytes$1 = ecdsaOpts.randomBytes || randomBytes;
  const hmac$1 = ecdsaOpts.hmac || ((key, ...msgs) => hmac(hash2, key, concatBytes(...msgs)));
  const { Fp: Fp2, Fn: Fn2 } = Point;
  const { ORDER: CURVE_ORDER, BITS: fnBits } = Fn2;
  const { keygen, getPublicKey, getSharedSecret, utils, lengths } = ecdh(Point, ecdsaOpts);
  const defaultSigOpts = {
    prehash: false,
    lowS: typeof ecdsaOpts.lowS === "boolean" ? ecdsaOpts.lowS : false,
    format: void 0,
    //'compact' as ECDSASigFormat,
    extraEntropy: false
  };
  const defaultSigOpts_format = "compact";
  function isBiggerThanHalfOrder(number) {
    const HALF = CURVE_ORDER >> _1n$4;
    return number > HALF;
  }
  function validateRS(title, num) {
    if (!Fn2.isValidNot0(num))
      throw new Error(`invalid signature ${title}: out of range 1..Point.Fn.ORDER`);
    return num;
  }
  function validateSigLength(bytes, format2) {
    validateSigFormat(format2);
    const size = lengths.signature;
    const sizer = format2 === "compact" ? size : format2 === "recovered" ? size + 1 : void 0;
    return _abytes2(bytes, sizer, `${format2} signature`);
  }
  class Signature2 {
    constructor(r, s, recovery) {
      this.r = validateRS("r", r);
      this.s = validateRS("s", s);
      if (recovery != null)
        this.recovery = recovery;
      Object.freeze(this);
    }
    static fromBytes(bytes, format2 = defaultSigOpts_format) {
      validateSigLength(bytes, format2);
      let recid;
      if (format2 === "der") {
        const { r: r2, s: s2 } = DER.toSig(_abytes2(bytes));
        return new Signature2(r2, s2);
      }
      if (format2 === "recovered") {
        recid = bytes[0];
        format2 = "compact";
        bytes = bytes.subarray(1);
      }
      const L3 = Fn2.BYTES;
      const r = bytes.subarray(0, L3);
      const s = bytes.subarray(L3, L3 * 2);
      return new Signature2(Fn2.fromBytes(r), Fn2.fromBytes(s), recid);
    }
    static fromHex(hex, format2) {
      return this.fromBytes(hexToBytes(hex), format2);
    }
    addRecoveryBit(recovery) {
      return new Signature2(this.r, this.s, recovery);
    }
    recoverPublicKey(messageHash) {
      const FIELD_ORDER = Fp2.ORDER;
      const { r, s, recovery: rec } = this;
      if (rec == null || ![0, 1, 2, 3].includes(rec))
        throw new Error("recovery id invalid");
      const hasCofactor = CURVE_ORDER * _2n$5 < FIELD_ORDER;
      if (hasCofactor && rec > 1)
        throw new Error("recovery id is ambiguous for h>1 curve");
      const radj = rec === 2 || rec === 3 ? r + CURVE_ORDER : r;
      if (!Fp2.isValid(radj))
        throw new Error("recovery id 2 or 3 invalid");
      const x3 = Fp2.toBytes(radj);
      const R2 = Point.fromBytes(concatBytes(pprefix((rec & 1) === 0), x3));
      const ir = Fn2.inv(radj);
      const h2 = bits2int_modN(ensureBytes("msgHash", messageHash));
      const u1 = Fn2.create(-h2 * ir);
      const u2 = Fn2.create(s * ir);
      const Q = Point.BASE.multiplyUnsafe(u1).add(R2.multiplyUnsafe(u2));
      if (Q.is0())
        throw new Error("point at infinify");
      Q.assertValidity();
      return Q;
    }
    // Signatures should be low-s, to prevent malleability.
    hasHighS() {
      return isBiggerThanHalfOrder(this.s);
    }
    toBytes(format2 = defaultSigOpts_format) {
      validateSigFormat(format2);
      if (format2 === "der")
        return hexToBytes(DER.hexFromSig(this));
      const r = Fn2.toBytes(this.r);
      const s = Fn2.toBytes(this.s);
      if (format2 === "recovered") {
        if (this.recovery == null)
          throw new Error("recovery bit must be present");
        return concatBytes(Uint8Array.of(this.recovery), r, s);
      }
      return concatBytes(r, s);
    }
    toHex(format2) {
      return bytesToHex(this.toBytes(format2));
    }
    // TODO: remove
    assertValidity() {
    }
    static fromCompact(hex) {
      return Signature2.fromBytes(ensureBytes("sig", hex), "compact");
    }
    static fromDER(hex) {
      return Signature2.fromBytes(ensureBytes("sig", hex), "der");
    }
    normalizeS() {
      return this.hasHighS() ? new Signature2(this.r, Fn2.neg(this.s), this.recovery) : this;
    }
    toDERRawBytes() {
      return this.toBytes("der");
    }
    toDERHex() {
      return bytesToHex(this.toBytes("der"));
    }
    toCompactRawBytes() {
      return this.toBytes("compact");
    }
    toCompactHex() {
      return bytesToHex(this.toBytes("compact"));
    }
  }
  const bits2int = ecdsaOpts.bits2int || function bits2int_def(bytes) {
    if (bytes.length > 8192)
      throw new Error("input is too large");
    const num = bytesToNumberBE(bytes);
    const delta = bytes.length * 8 - fnBits;
    return delta > 0 ? num >> BigInt(delta) : num;
  };
  const bits2int_modN = ecdsaOpts.bits2int_modN || function bits2int_modN_def(bytes) {
    return Fn2.create(bits2int(bytes));
  };
  const ORDER_MASK = bitMask(fnBits);
  function int2octets(num) {
    aInRange("num < 2^" + fnBits, num, _0n$3, ORDER_MASK);
    return Fn2.toBytes(num);
  }
  function validateMsgAndHash(message, prehash) {
    _abytes2(message, void 0, "message");
    return prehash ? _abytes2(hash2(message), void 0, "prehashed message") : message;
  }
  function prepSig(message, privateKey, opts3) {
    if (["recovered", "canonical"].some((k2) => k2 in opts3))
      throw new Error("sign() legacy options not supported");
    const { lowS, prehash, extraEntropy } = validateSigOpts(opts3, defaultSigOpts);
    message = validateMsgAndHash(message, prehash);
    const h1int = bits2int_modN(message);
    const d3 = _normFnElement(Fn2, privateKey);
    const seedArgs = [int2octets(d3), int2octets(h1int)];
    if (extraEntropy != null && extraEntropy !== false) {
      const e = extraEntropy === true ? randomBytes$1(lengths.secretKey) : extraEntropy;
      seedArgs.push(ensureBytes("extraEntropy", e));
    }
    const seed = concatBytes(...seedArgs);
    const m = h1int;
    function k2sig(kBytes) {
      const k2 = bits2int(kBytes);
      if (!Fn2.isValidNot0(k2))
        return;
      const ik = Fn2.inv(k2);
      const q = Point.BASE.multiply(k2).toAffine();
      const r = Fn2.create(q.x);
      if (r === _0n$3)
        return;
      const s = Fn2.create(ik * Fn2.create(m + r * d3));
      if (s === _0n$3)
        return;
      let recovery = (q.x === r ? 0 : 2) | Number(q.y & _1n$4);
      let normS = s;
      if (lowS && isBiggerThanHalfOrder(s)) {
        normS = Fn2.neg(s);
        recovery ^= 1;
      }
      return new Signature2(r, normS, recovery);
    }
    return { seed, k2sig };
  }
  function sign(message, secretKey, opts3 = {}) {
    message = ensureBytes("message", message);
    const { seed, k2sig } = prepSig(message, secretKey, opts3);
    const drbg = createHmacDrbg(hash2.outputLen, Fn2.BYTES, hmac$1);
    const sig = drbg(seed, k2sig);
    return sig;
  }
  function tryParsingSig(sg) {
    let sig = void 0;
    const isHex = typeof sg === "string" || isBytes(sg);
    const isObj = !isHex && sg !== null && typeof sg === "object" && typeof sg.r === "bigint" && typeof sg.s === "bigint";
    if (!isHex && !isObj)
      throw new Error("invalid signature, expected Uint8Array, hex string or Signature instance");
    if (isObj) {
      sig = new Signature2(sg.r, sg.s);
    } else if (isHex) {
      try {
        sig = Signature2.fromBytes(ensureBytes("sig", sg), "der");
      } catch (derError) {
        if (!(derError instanceof DER.Err))
          throw derError;
      }
      if (!sig) {
        try {
          sig = Signature2.fromBytes(ensureBytes("sig", sg), "compact");
        } catch (error) {
          return false;
        }
      }
    }
    if (!sig)
      return false;
    return sig;
  }
  function verify(signature, message, publicKey, opts3 = {}) {
    const { lowS, prehash, format: format2 } = validateSigOpts(opts3, defaultSigOpts);
    publicKey = ensureBytes("publicKey", publicKey);
    message = validateMsgAndHash(ensureBytes("message", message), prehash);
    if ("strict" in opts3)
      throw new Error("options.strict was renamed to lowS");
    const sig = format2 === void 0 ? tryParsingSig(signature) : Signature2.fromBytes(ensureBytes("sig", signature), format2);
    if (sig === false)
      return false;
    try {
      const P2 = Point.fromBytes(publicKey);
      if (lowS && sig.hasHighS())
        return false;
      const { r, s } = sig;
      const h2 = bits2int_modN(message);
      const is = Fn2.inv(s);
      const u1 = Fn2.create(h2 * is);
      const u2 = Fn2.create(r * is);
      const R2 = Point.BASE.multiplyUnsafe(u1).add(P2.multiplyUnsafe(u2));
      if (R2.is0())
        return false;
      const v = Fn2.create(R2.x);
      return v === r;
    } catch (e) {
      return false;
    }
  }
  function recoverPublicKey(signature, message, opts3 = {}) {
    const { prehash } = validateSigOpts(opts3, defaultSigOpts);
    message = validateMsgAndHash(message, prehash);
    return Signature2.fromBytes(signature, "recovered").recoverPublicKey(message).toBytes();
  }
  return Object.freeze({
    keygen,
    getPublicKey,
    getSharedSecret,
    utils,
    lengths,
    Point,
    sign,
    verify,
    recoverPublicKey,
    Signature: Signature2,
    hash: hash2
  });
}
function _weierstrass_legacy_opts_to_new(c3) {
  const CURVE = {
    a: c3.a,
    b: c3.b,
    p: c3.Fp.ORDER,
    n: c3.n,
    h: c3.h,
    Gx: c3.Gx,
    Gy: c3.Gy
  };
  const Fp2 = c3.Fp;
  let allowedLengths = c3.allowedPrivateKeyLengths ? Array.from(new Set(c3.allowedPrivateKeyLengths.map((l) => Math.ceil(l / 2)))) : void 0;
  const Fn2 = Field(CURVE.n, {
    BITS: c3.nBitLength,
    allowedLengths,
    modFromBytes: c3.wrapPrivateKey
  });
  const curveOpts = {
    Fp: Fp2,
    Fn: Fn2,
    allowInfinityPoint: c3.allowInfinityPoint,
    endo: c3.endo,
    isTorsionFree: c3.isTorsionFree,
    clearCofactor: c3.clearCofactor,
    fromBytes: c3.fromBytes,
    toBytes: c3.toBytes
  };
  return { CURVE, curveOpts };
}
function _ecdsa_legacy_opts_to_new(c3) {
  const { CURVE, curveOpts } = _weierstrass_legacy_opts_to_new(c3);
  const ecdsaOpts = {
    hmac: c3.hmac,
    randomBytes: c3.randomBytes,
    lowS: c3.lowS,
    bits2int: c3.bits2int,
    bits2int_modN: c3.bits2int_modN
  };
  return { CURVE, curveOpts, hash: c3.hash, ecdsaOpts };
}
function _ecdsa_new_output_to_legacy(c3, _ecdsa) {
  const Point = _ecdsa.Point;
  return Object.assign({}, _ecdsa, {
    ProjectivePoint: Point,
    CURVE: Object.assign({}, c3, nLength(Point.Fn.ORDER, Point.Fn.BITS))
  });
}
function weierstrass(c3) {
  const { CURVE, curveOpts, hash: hash2, ecdsaOpts } = _ecdsa_legacy_opts_to_new(c3);
  const Point = weierstrassN(CURVE, curveOpts);
  const signs = ecdsa(Point, hash2, ecdsaOpts);
  return _ecdsa_new_output_to_legacy(c3, signs);
}
function createCurve(curveDef, defHash) {
  const create = (hash2) => weierstrass({ ...curveDef, hash: hash2 });
  return { ...create(defHash), create };
}
function keccakP(s, rounds = 24) {
  const B = new Uint32Array(5 * 2);
  for (let round = 24 - rounds; round < 24; round++) {
    for (let x3 = 0; x3 < 10; x3++)
      B[x3] = s[x3] ^ s[x3 + 10] ^ s[x3 + 20] ^ s[x3 + 30] ^ s[x3 + 40];
    for (let x3 = 0; x3 < 10; x3 += 2) {
      const idx1 = (x3 + 8) % 10;
      const idx0 = (x3 + 2) % 10;
      const B0 = B[idx0];
      const B1 = B[idx0 + 1];
      const Th = rotlH(B0, B1, 1) ^ B[idx1];
      const Tl = rotlL(B0, B1, 1) ^ B[idx1 + 1];
      for (let y = 0; y < 50; y += 10) {
        s[x3 + y] ^= Th;
        s[x3 + y + 1] ^= Tl;
      }
    }
    let curH = s[2];
    let curL = s[3];
    for (let t2 = 0; t2 < 24; t2++) {
      const shift = SHA3_ROTL[t2];
      const Th = rotlH(curH, curL, shift);
      const Tl = rotlL(curH, curL, shift);
      const PI = SHA3_PI[t2];
      curH = s[PI];
      curL = s[PI + 1];
      s[PI] = Th;
      s[PI + 1] = Tl;
    }
    for (let y = 0; y < 50; y += 10) {
      for (let x3 = 0; x3 < 10; x3++)
        B[x3] = s[y + x3];
      for (let x3 = 0; x3 < 10; x3++)
        s[y + x3] ^= ~B[(x3 + 2) % 10] & B[(x3 + 4) % 10];
    }
    s[0] ^= SHA3_IOTA_H[round];
    s[1] ^= SHA3_IOTA_L[round];
  }
  clean(B);
}
function isEdValidXY(Fp2, CURVE, x3, y) {
  const x22 = Fp2.sqr(x3);
  const y2 = Fp2.sqr(y);
  const left = Fp2.add(Fp2.mul(CURVE.a, x22), y2);
  const right = Fp2.add(Fp2.ONE, Fp2.mul(CURVE.d, Fp2.mul(x22, y2)));
  return Fp2.eql(left, right);
}
function edwards(params, extraOpts = {}) {
  const validated = _createCurveFields("edwards", params, extraOpts, extraOpts.FpFnLE);
  const { Fp: Fp2, Fn: Fn2 } = validated;
  let CURVE = validated.CURVE;
  const { h: cofactor } = CURVE;
  _validateObject(extraOpts, {}, { uvRatio: "function" });
  const MASK = _2n$3 << BigInt(Fn2.BYTES * 8) - _1n$2;
  const modP = (n2) => Fp2.create(n2);
  const uvRatio2 = extraOpts.uvRatio || ((u2, v) => {
    try {
      return { isValid: true, value: Fp2.sqrt(Fp2.div(u2, v)) };
    } catch (e) {
      return { isValid: false, value: _0n$1 };
    }
  });
  if (!isEdValidXY(Fp2, CURVE, CURVE.Gx, CURVE.Gy))
    throw new Error("bad curve params: generator point");
  function acoord(title, n2, banZero = false) {
    const min = banZero ? _1n$2 : _0n$1;
    aInRange("coordinate " + title, n2, min, MASK);
    return n2;
  }
  function aextpoint(other) {
    if (!(other instanceof Point))
      throw new Error("ExtendedPoint expected");
  }
  const toAffineMemo = memoized((p, iz) => {
    const { X: X2, Y: Y2, Z: Z2 } = p;
    const is0 = p.is0();
    if (iz == null)
      iz = is0 ? _8n : Fp2.inv(Z2);
    const x3 = modP(X2 * iz);
    const y = modP(Y2 * iz);
    const zz = Fp2.mul(Z2, iz);
    if (is0)
      return { x: _0n$1, y: _1n$2 };
    if (zz !== _1n$2)
      throw new Error("invZ was invalid");
    return { x: x3, y };
  });
  const assertValidMemo = memoized((p) => {
    const { a: a2, d: d3 } = CURVE;
    if (p.is0())
      throw new Error("bad point: ZERO");
    const { X: X2, Y: Y2, Z: Z2, T: T2 } = p;
    const X22 = modP(X2 * X2);
    const Y22 = modP(Y2 * Y2);
    const Z22 = modP(Z2 * Z2);
    const Z4 = modP(Z22 * Z22);
    const aX2 = modP(X22 * a2);
    const left = modP(Z22 * modP(aX2 + Y22));
    const right = modP(Z4 + modP(d3 * modP(X22 * Y22)));
    if (left !== right)
      throw new Error("bad point: equation left != right (1)");
    const XY = modP(X2 * Y2);
    const ZT = modP(Z2 * T2);
    if (XY !== ZT)
      throw new Error("bad point: equation left != right (2)");
    return true;
  });
  class Point {
    constructor(X2, Y2, Z2, T2) {
      this.X = acoord("x", X2);
      this.Y = acoord("y", Y2);
      this.Z = acoord("z", Z2, true);
      this.T = acoord("t", T2);
      Object.freeze(this);
    }
    static CURVE() {
      return CURVE;
    }
    static fromAffine(p) {
      if (p instanceof Point)
        throw new Error("extended point not allowed");
      const { x: x3, y } = p || {};
      acoord("x", x3);
      acoord("y", y);
      return new Point(x3, y, _1n$2, modP(x3 * y));
    }
    // Uses algo from RFC8032 5.1.3.
    static fromBytes(bytes, zip215 = false) {
      const len = Fp2.BYTES;
      const { a: a2, d: d3 } = CURVE;
      bytes = copyBytes(_abytes2(bytes, len, "point"));
      _abool2(zip215, "zip215");
      const normed = copyBytes(bytes);
      const lastByte = bytes[len - 1];
      normed[len - 1] = lastByte & -129;
      const y = bytesToNumberLE(normed);
      const max4 = zip215 ? MASK : Fp2.ORDER;
      aInRange("point.y", y, _0n$1, max4);
      const y2 = modP(y * y);
      const u2 = modP(y2 - _1n$2);
      const v = modP(d3 * y2 - a2);
      let { isValid, value: x3 } = uvRatio2(u2, v);
      if (!isValid)
        throw new Error("bad point: invalid y coordinate");
      const isXOdd = (x3 & _1n$2) === _1n$2;
      const isLastByteOdd = (lastByte & 128) !== 0;
      if (!zip215 && x3 === _0n$1 && isLastByteOdd)
        throw new Error("bad point: x=0 and x_0=1");
      if (isLastByteOdd !== isXOdd)
        x3 = modP(-x3);
      return Point.fromAffine({ x: x3, y });
    }
    static fromHex(bytes, zip215 = false) {
      return Point.fromBytes(ensureBytes("point", bytes), zip215);
    }
    get x() {
      return this.toAffine().x;
    }
    get y() {
      return this.toAffine().y;
    }
    precompute(windowSize = 8, isLazy = true) {
      wnaf.createCache(this, windowSize);
      if (!isLazy)
        this.multiply(_2n$3);
      return this;
    }
    // Useful in fromAffine() - not for fromBytes(), which always created valid points.
    assertValidity() {
      assertValidMemo(this);
    }
    // Compare one point to another.
    equals(other) {
      aextpoint(other);
      const { X: X1, Y: Y1, Z: Z1 } = this;
      const { X: X2, Y: Y2, Z: Z2 } = other;
      const X1Z2 = modP(X1 * Z2);
      const X2Z1 = modP(X2 * Z1);
      const Y1Z2 = modP(Y1 * Z2);
      const Y2Z1 = modP(Y2 * Z1);
      return X1Z2 === X2Z1 && Y1Z2 === Y2Z1;
    }
    is0() {
      return this.equals(Point.ZERO);
    }
    negate() {
      return new Point(modP(-this.X), this.Y, this.Z, modP(-this.T));
    }
    // Fast algo for doubling Extended Point.
    // https://hyperelliptic.org/EFD/g1p/auto-twisted-extended.html#doubling-dbl-2008-hwcd
    // Cost: 4M + 4S + 1*a + 6add + 1*2.
    double() {
      const { a: a2 } = CURVE;
      const { X: X1, Y: Y1, Z: Z1 } = this;
      const A2 = modP(X1 * X1);
      const B = modP(Y1 * Y1);
      const C = modP(_2n$3 * modP(Z1 * Z1));
      const D3 = modP(a2 * A2);
      const x1y1 = X1 + Y1;
      const E = modP(modP(x1y1 * x1y1) - A2 - B);
      const G3 = D3 + B;
      const F = G3 - C;
      const H2 = D3 - B;
      const X3 = modP(E * F);
      const Y3 = modP(G3 * H2);
      const T3 = modP(E * H2);
      const Z3 = modP(F * G3);
      return new Point(X3, Y3, Z3, T3);
    }
    // Fast algo for adding 2 Extended Points.
    // https://hyperelliptic.org/EFD/g1p/auto-twisted-extended.html#addition-add-2008-hwcd
    // Cost: 9M + 1*a + 1*d + 7add.
    add(other) {
      aextpoint(other);
      const { a: a2, d: d3 } = CURVE;
      const { X: X1, Y: Y1, Z: Z1, T: T1 } = this;
      const { X: X2, Y: Y2, Z: Z2, T: T2 } = other;
      const A2 = modP(X1 * X2);
      const B = modP(Y1 * Y2);
      const C = modP(T1 * d3 * T2);
      const D3 = modP(Z1 * Z2);
      const E = modP((X1 + Y1) * (X2 + Y2) - A2 - B);
      const F = D3 - C;
      const G3 = D3 + C;
      const H2 = modP(B - a2 * A2);
      const X3 = modP(E * F);
      const Y3 = modP(G3 * H2);
      const T3 = modP(E * H2);
      const Z3 = modP(F * G3);
      return new Point(X3, Y3, Z3, T3);
    }
    subtract(other) {
      return this.add(other.negate());
    }
    // Constant-time multiplication.
    multiply(scalar) {
      if (!Fn2.isValidNot0(scalar))
        throw new Error("invalid scalar: expected 1 <= sc < curve.n");
      const { p, f } = wnaf.cached(this, scalar, (p2) => normalizeZ(Point, p2));
      return normalizeZ(Point, [p, f])[0];
    }
    // Non-constant-time multiplication. Uses double-and-add algorithm.
    // It's faster, but should only be used when you don't care about
    // an exposed private key e.g. sig verification.
    // Does NOT allow scalars higher than CURVE.n.
    // Accepts optional accumulator to merge with multiply (important for sparse scalars)
    multiplyUnsafe(scalar, acc = Point.ZERO) {
      if (!Fn2.isValid(scalar))
        throw new Error("invalid scalar: expected 0 <= sc < curve.n");
      if (scalar === _0n$1)
        return Point.ZERO;
      if (this.is0() || scalar === _1n$2)
        return this;
      return wnaf.unsafe(this, scalar, (p) => normalizeZ(Point, p), acc);
    }
    // Checks if point is of small order.
    // If you add something to small order point, you will have "dirty"
    // point with torsion component.
    // Multiplies point by cofactor and checks if the result is 0.
    isSmallOrder() {
      return this.multiplyUnsafe(cofactor).is0();
    }
    // Multiplies point by curve order and checks if the result is 0.
    // Returns `false` is the point is dirty.
    isTorsionFree() {
      return wnaf.unsafe(this, CURVE.n).is0();
    }
    // Converts Extended point to default (x, y) coordinates.
    // Can accept precomputed Z^-1 - for example, from invertBatch.
    toAffine(invertedZ) {
      return toAffineMemo(this, invertedZ);
    }
    clearCofactor() {
      if (cofactor === _1n$2)
        return this;
      return this.multiplyUnsafe(cofactor);
    }
    toBytes() {
      const { x: x3, y } = this.toAffine();
      const bytes = Fp2.toBytes(y);
      bytes[bytes.length - 1] |= x3 & _1n$2 ? 128 : 0;
      return bytes;
    }
    toHex() {
      return bytesToHex(this.toBytes());
    }
    toString() {
      return `<Point ${this.is0() ? "ZERO" : this.toHex()}>`;
    }
    // TODO: remove
    get ex() {
      return this.X;
    }
    get ey() {
      return this.Y;
    }
    get ez() {
      return this.Z;
    }
    get et() {
      return this.T;
    }
    static normalizeZ(points) {
      return normalizeZ(Point, points);
    }
    static msm(points, scalars) {
      return pippenger(Point, Fn2, points, scalars);
    }
    _setWindowSize(windowSize) {
      this.precompute(windowSize);
    }
    toRawBytes() {
      return this.toBytes();
    }
  }
  Point.BASE = new Point(CURVE.Gx, CURVE.Gy, _1n$2, modP(CURVE.Gx * CURVE.Gy));
  Point.ZERO = new Point(_0n$1, _1n$2, _1n$2, _0n$1);
  Point.Fp = Fp2;
  Point.Fn = Fn2;
  const wnaf = new wNAF(Point, Fn2.BITS);
  Point.BASE.precompute(8);
  return Point;
}
function eddsa(Point, cHash, eddsaOpts = {}) {
  if (typeof cHash !== "function")
    throw new Error('"hash" function param is required');
  _validateObject(eddsaOpts, {}, {
    adjustScalarBytes: "function",
    randomBytes: "function",
    domain: "function",
    prehash: "function",
    mapToCurve: "function"
  });
  const { prehash } = eddsaOpts;
  const { BASE, Fp: Fp2, Fn: Fn2 } = Point;
  const randomBytes$1 = eddsaOpts.randomBytes || randomBytes;
  const adjustScalarBytes2 = eddsaOpts.adjustScalarBytes || ((bytes) => bytes);
  const domain = eddsaOpts.domain || ((data, ctx, phflag) => {
    _abool2(phflag, "phflag");
    if (ctx.length || phflag)
      throw new Error("Contexts/pre-hash are not supported");
    return data;
  });
  function modN_LE(hash2) {
    return Fn2.create(bytesToNumberLE(hash2));
  }
  function getPrivateScalar(key) {
    const len = lengths.secretKey;
    key = ensureBytes("private key", key, len);
    const hashed = ensureBytes("hashed private key", cHash(key), 2 * len);
    const head2 = adjustScalarBytes2(hashed.slice(0, len));
    const prefix = hashed.slice(len, 2 * len);
    const scalar = modN_LE(head2);
    return { head: head2, prefix, scalar };
  }
  function getExtendedPublicKey(secretKey) {
    const { head: head2, prefix, scalar } = getPrivateScalar(secretKey);
    const point = BASE.multiply(scalar);
    const pointBytes = point.toBytes();
    return { head: head2, prefix, scalar, point, pointBytes };
  }
  function getPublicKey(secretKey) {
    return getExtendedPublicKey(secretKey).pointBytes;
  }
  function hashDomainToScalar(context = Uint8Array.of(), ...msgs) {
    const msg = concatBytes(...msgs);
    return modN_LE(cHash(domain(msg, ensureBytes("context", context), !!prehash)));
  }
  function sign(msg, secretKey, options = {}) {
    msg = ensureBytes("message", msg);
    if (prehash)
      msg = prehash(msg);
    const { prefix, scalar, pointBytes } = getExtendedPublicKey(secretKey);
    const r = hashDomainToScalar(options.context, prefix, msg);
    const R2 = BASE.multiply(r).toBytes();
    const k2 = hashDomainToScalar(options.context, R2, pointBytes, msg);
    const s = Fn2.create(r + k2 * scalar);
    if (!Fn2.isValid(s))
      throw new Error("sign failed: invalid s");
    const rs = concatBytes(R2, Fn2.toBytes(s));
    return _abytes2(rs, lengths.signature, "result");
  }
  const verifyOpts = { zip215: true };
  function verify(sig, msg, publicKey, options = verifyOpts) {
    const { context, zip215 } = options;
    const len = lengths.signature;
    sig = ensureBytes("signature", sig, len);
    msg = ensureBytes("message", msg);
    publicKey = ensureBytes("publicKey", publicKey, lengths.publicKey);
    if (zip215 !== void 0)
      _abool2(zip215, "zip215");
    if (prehash)
      msg = prehash(msg);
    const mid = len / 2;
    const r = sig.subarray(0, mid);
    const s = bytesToNumberLE(sig.subarray(mid, len));
    let A2, R2, SB;
    try {
      A2 = Point.fromBytes(publicKey, zip215);
      R2 = Point.fromBytes(r, zip215);
      SB = BASE.multiplyUnsafe(s);
    } catch (error) {
      return false;
    }
    if (!zip215 && A2.isSmallOrder())
      return false;
    const k2 = hashDomainToScalar(context, R2.toBytes(), A2.toBytes(), msg);
    const RkA = R2.add(A2.multiplyUnsafe(k2));
    return RkA.subtract(SB).clearCofactor().is0();
  }
  const _size = Fp2.BYTES;
  const lengths = {
    secretKey: _size,
    publicKey: _size,
    signature: 2 * _size,
    seed: _size
  };
  function randomSecretKey(seed = randomBytes$1(lengths.seed)) {
    return _abytes2(seed, lengths.seed, "seed");
  }
  function keygen(seed) {
    const secretKey = utils.randomSecretKey(seed);
    return { secretKey, publicKey: getPublicKey(secretKey) };
  }
  function isValidSecretKey(key) {
    return isBytes(key) && key.length === Fn2.BYTES;
  }
  function isValidPublicKey(key, zip215) {
    try {
      return !!Point.fromBytes(key, zip215);
    } catch (error) {
      return false;
    }
  }
  const utils = {
    getExtendedPublicKey,
    randomSecretKey,
    isValidSecretKey,
    isValidPublicKey,
    /**
     * Converts ed public key to x public key. Uses formula:
     * - ed25519:
     *   - `(u, v) = ((1+y)/(1-y), sqrt(-486664)*u/x)`
     *   - `(x, y) = (sqrt(-486664)*u/v, (u-1)/(u+1))`
     * - ed448:
     *   - `(u, v) = ((y-1)/(y+1), sqrt(156324)*u/x)`
     *   - `(x, y) = (sqrt(156324)*u/v, (1+u)/(1-u))`
     */
    toMontgomery(publicKey) {
      const { y } = Point.fromBytes(publicKey);
      const size = lengths.publicKey;
      const is25519 = size === 32;
      if (!is25519 && size !== 57)
        throw new Error("only defined for 25519 and 448");
      const u2 = is25519 ? Fp2.div(_1n$2 + y, _1n$2 - y) : Fp2.div(y - _1n$2, y + _1n$2);
      return Fp2.toBytes(u2);
    },
    toMontgomerySecret(secretKey) {
      const size = lengths.secretKey;
      _abytes2(secretKey, size);
      const hashed = cHash(secretKey.subarray(0, size));
      return adjustScalarBytes2(hashed).subarray(0, size);
    },
    /** @deprecated */
    randomPrivateKey: randomSecretKey,
    /** @deprecated */
    precompute(windowSize = 8, point = Point.BASE) {
      return point.precompute(windowSize, false);
    }
  };
  return Object.freeze({
    keygen,
    getPublicKey,
    sign,
    verify,
    utils,
    Point,
    lengths
  });
}
function _eddsa_legacy_opts_to_new(c3) {
  const CURVE = {
    a: c3.a,
    d: c3.d,
    p: c3.Fp.ORDER,
    n: c3.n,
    h: c3.h,
    Gx: c3.Gx,
    Gy: c3.Gy
  };
  const Fp2 = c3.Fp;
  const Fn2 = Field(CURVE.n, c3.nBitLength, true);
  const curveOpts = { Fp: Fp2, Fn: Fn2, uvRatio: c3.uvRatio };
  const eddsaOpts = {
    randomBytes: c3.randomBytes,
    adjustScalarBytes: c3.adjustScalarBytes,
    domain: c3.domain,
    prehash: c3.prehash,
    mapToCurve: c3.mapToCurve
  };
  return { CURVE, curveOpts, hash: c3.hash, eddsaOpts };
}
function _eddsa_new_output_to_legacy(c3, eddsa2) {
  const Point = eddsa2.Point;
  const legacy = Object.assign({}, eddsa2, {
    ExtendedPoint: Point,
    CURVE: c3,
    nBitLength: Point.Fn.BITS,
    nByteLength: Point.Fn.BYTES
  });
  return legacy;
}
function twistedEdwards(c3) {
  const { CURVE, curveOpts, hash: hash2, eddsaOpts } = _eddsa_legacy_opts_to_new(c3);
  const Point = edwards(CURVE, curveOpts);
  const EDDSA = eddsa(Point, hash2, eddsaOpts);
  return _eddsa_new_output_to_legacy(c3, EDDSA);
}
function validateOpts(curve) {
  _validateObject(curve, {
    adjustScalarBytes: "function",
    powPminus2: "function"
  });
  return Object.freeze({ ...curve });
}
function montgomery(curveDef) {
  const CURVE = validateOpts(curveDef);
  const { P: P2, type: type4, adjustScalarBytes: adjustScalarBytes2, powPminus2, randomBytes: rand } = CURVE;
  const is25519 = type4 === "x25519";
  if (!is25519 && type4 !== "x448")
    throw new Error("invalid type");
  const randomBytes_ = rand || randomBytes;
  const montgomeryBits = is25519 ? 255 : 448;
  const fieldLen = is25519 ? 32 : 56;
  const Gu = is25519 ? BigInt(9) : BigInt(5);
  const a24 = is25519 ? BigInt(121665) : BigInt(39081);
  const minScalar = is25519 ? _2n$2 ** BigInt(254) : _2n$2 ** BigInt(447);
  const maxAdded = is25519 ? BigInt(8) * _2n$2 ** BigInt(251) - _1n$1 : BigInt(4) * _2n$2 ** BigInt(445) - _1n$1;
  const maxScalar = minScalar + maxAdded + _1n$1;
  const modP = (n2) => mod(n2, P2);
  const GuBytes = encodeU(Gu);
  function encodeU(u2) {
    return numberToBytesLE(modP(u2), fieldLen);
  }
  function decodeU(u2) {
    const _u = ensureBytes("u coordinate", u2, fieldLen);
    if (is25519)
      _u[31] &= 127;
    return modP(bytesToNumberLE(_u));
  }
  function decodeScalar(scalar) {
    return bytesToNumberLE(adjustScalarBytes2(ensureBytes("scalar", scalar, fieldLen)));
  }
  function scalarMult(scalar, u2) {
    const pu = montgomeryLadder(decodeU(u2), decodeScalar(scalar));
    if (pu === _0n)
      throw new Error("invalid private or public key received");
    return encodeU(pu);
  }
  function scalarMultBase(scalar) {
    return scalarMult(scalar, GuBytes);
  }
  function cswap2(swap, x_2, x_3) {
    const dummy = modP(swap * (x_2 - x_3));
    x_2 = modP(x_2 - dummy);
    x_3 = modP(x_3 + dummy);
    return { x_2, x_3 };
  }
  function montgomeryLadder(u2, scalar) {
    aInRange("u", u2, _0n, P2);
    aInRange("scalar", scalar, minScalar, maxScalar);
    const k2 = scalar;
    const x_1 = u2;
    let x_2 = _1n$1;
    let z_2 = _0n;
    let x_3 = u2;
    let z_3 = _1n$1;
    let swap = _0n;
    for (let t2 = BigInt(montgomeryBits - 1); t2 >= _0n; t2--) {
      const k_t = k2 >> t2 & _1n$1;
      swap ^= k_t;
      ({ x_2, x_3 } = cswap2(swap, x_2, x_3));
      ({ x_2: z_2, x_3: z_3 } = cswap2(swap, z_2, z_3));
      swap = k_t;
      const A2 = x_2 + z_2;
      const AA = modP(A2 * A2);
      const B = x_2 - z_2;
      const BB = modP(B * B);
      const E = AA - BB;
      const C = x_3 + z_3;
      const D3 = x_3 - z_3;
      const DA = modP(D3 * A2);
      const CB = modP(C * B);
      const dacb = DA + CB;
      const da_cb = DA - CB;
      x_3 = modP(dacb * dacb);
      z_3 = modP(x_1 * modP(da_cb * da_cb));
      x_2 = modP(AA * BB);
      z_2 = modP(E * (AA + modP(a24 * E)));
    }
    ({ x_2, x_3 } = cswap2(swap, x_2, x_3));
    ({ x_2: z_2, x_3: z_3 } = cswap2(swap, z_2, z_3));
    const z2 = powPminus2(z_2);
    return modP(x_2 * z2);
  }
  const lengths = {
    secretKey: fieldLen,
    publicKey: fieldLen,
    seed: fieldLen
  };
  const randomSecretKey = (seed = randomBytes_(fieldLen)) => {
    abytes(seed, lengths.seed);
    return seed;
  };
  function keygen(seed) {
    const secretKey = randomSecretKey(seed);
    return { secretKey, publicKey: scalarMultBase(secretKey) };
  }
  const utils = {
    randomSecretKey,
    randomPrivateKey: randomSecretKey
  };
  return {
    keygen,
    getSharedSecret: (secretKey, publicKey) => scalarMult(secretKey, publicKey),
    getPublicKey: (secretKey) => scalarMultBase(secretKey),
    scalarMult,
    scalarMultBase,
    utils,
    GuBytes: GuBytes.slice(),
    lengths
  };
}
function ed448_pow_Pminus3div4(x3) {
  const P2 = ed448_CURVE.p;
  const b2 = x3 * x3 * x3 % P2;
  const b3 = b2 * b2 * x3 % P2;
  const b6 = pow2(b3, _3n, P2) * b3 % P2;
  const b9 = pow2(b6, _3n, P2) * b3 % P2;
  const b11 = pow2(b9, _2n$1, P2) * b2 % P2;
  const b22 = pow2(b11, _11n, P2) * b11 % P2;
  const b44 = pow2(b22, _22n, P2) * b22 % P2;
  const b88 = pow2(b44, _44n, P2) * b44 % P2;
  const b176 = pow2(b88, _88n, P2) * b88 % P2;
  const b220 = pow2(b176, _44n, P2) * b44 % P2;
  const b222 = pow2(b220, _2n$1, P2) * b2 % P2;
  const b223 = pow2(b222, _1n, P2) * x3 % P2;
  return pow2(b223, _223n, P2) * b222 % P2;
}
function adjustScalarBytes(bytes) {
  bytes[0] &= 252;
  bytes[55] |= 128;
  bytes[56] = 0;
  return bytes;
}
function uvRatio(u2, v) {
  const P2 = ed448_CURVE.p;
  const u2v = mod(u2 * u2 * v, P2);
  const u3v = mod(u2v * u2, P2);
  const u5v3 = mod(u3v * u2v * v, P2);
  const root = ed448_pow_Pminus3div4(u5v3);
  const x3 = mod(u3v * root, P2);
  const x22 = mod(x3 * x3, P2);
  return { isValid: mod(x22 * v, P2) === u2, value: x3 };
}
function dom4(data, ctx, phflag) {
  if (ctx.length > 255)
    throw new Error("context must be smaller than 255, got: " + ctx.length);
  return concatBytes(asciiToBytes("SigEd448"), new Uint8Array([phflag ? 1 : 0, ctx.length]), ctx, data);
}
function sqrtMod(y) {
  const P2 = secp256k1_CURVE.p;
  const _3n2 = BigInt(3), _6n = BigInt(6), _11n2 = BigInt(11), _22n2 = BigInt(22);
  const _23n = BigInt(23), _44n2 = BigInt(44), _88n2 = BigInt(88);
  const b2 = y * y * y % P2;
  const b3 = b2 * b2 * y % P2;
  const b6 = pow2(b3, _3n2, P2) * b3 % P2;
  const b9 = pow2(b6, _3n2, P2) * b3 % P2;
  const b11 = pow2(b9, _2n, P2) * b2 % P2;
  const b22 = pow2(b11, _11n2, P2) * b11 % P2;
  const b44 = pow2(b22, _22n2, P2) * b22 % P2;
  const b88 = pow2(b44, _44n2, P2) * b44 % P2;
  const b176 = pow2(b88, _88n2, P2) * b88 % P2;
  const b220 = pow2(b176, _44n2, P2) * b44 % P2;
  const b223 = pow2(b220, _3n2, P2) * b3 % P2;
  const t1 = pow2(b223, _23n, P2) * b22 % P2;
  const t2 = pow2(t1, _6n, P2) * b2 % P2;
  const root = pow2(t2, _2n, P2);
  if (!Fpk1.eql(Fpk1.sqr(root), y))
    throw new Error("Cannot find square root");
  return root;
}
function ripemd_f(group, x3, y, z) {
  if (group === 0)
    return x3 ^ y ^ z;
  if (group === 1)
    return x3 & y | ~x3 & z;
  if (group === 2)
    return (x3 | ~y) ^ z;
  if (group === 3)
    return x3 & z | y & ~z;
  return x3 ^ (y | ~z);
}
function ts64(x3, i4, h2, l) {
  x3[i4] = h2 >> 24 & 255;
  x3[i4 + 1] = h2 >> 16 & 255;
  x3[i4 + 2] = h2 >> 8 & 255;
  x3[i4 + 3] = h2 & 255;
  x3[i4 + 4] = l >> 24 & 255;
  x3[i4 + 5] = l >> 16 & 255;
  x3[i4 + 6] = l >> 8 & 255;
  x3[i4 + 7] = l & 255;
}
function vn(x3, xi, y, yi, n2) {
  var i4, d3 = 0;
  for (i4 = 0; i4 < n2; i4++) d3 |= x3[xi + i4] ^ y[yi + i4];
  return (1 & d3 - 1 >>> 8) - 1;
}
function crypto_verify_32(x3, xi, y, yi) {
  return vn(x3, xi, y, yi, 32);
}
function set25519(r, a2) {
  var i4;
  for (i4 = 0; i4 < 16; i4++) r[i4] = a2[i4] | 0;
}
function car25519(o2) {
  var i4, v, c3 = 1;
  for (i4 = 0; i4 < 16; i4++) {
    v = o2[i4] + c3 + 65535;
    c3 = Math.floor(v / 65536);
    o2[i4] = v - c3 * 65536;
  }
  o2[0] += c3 - 1 + 37 * (c3 - 1);
}
function sel25519(p, q, b) {
  var t2, c3 = ~(b - 1);
  for (var i4 = 0; i4 < 16; i4++) {
    t2 = c3 & (p[i4] ^ q[i4]);
    p[i4] ^= t2;
    q[i4] ^= t2;
  }
}
function pack25519(o2, n2) {
  var i4, j2, b;
  var m = gf(), t2 = gf();
  for (i4 = 0; i4 < 16; i4++) t2[i4] = n2[i4];
  car25519(t2);
  car25519(t2);
  car25519(t2);
  for (j2 = 0; j2 < 2; j2++) {
    m[0] = t2[0] - 65517;
    for (i4 = 1; i4 < 15; i4++) {
      m[i4] = t2[i4] - 65535 - (m[i4 - 1] >> 16 & 1);
      m[i4 - 1] &= 65535;
    }
    m[15] = t2[15] - 32767 - (m[14] >> 16 & 1);
    b = m[15] >> 16 & 1;
    m[14] &= 65535;
    sel25519(t2, m, 1 - b);
  }
  for (i4 = 0; i4 < 16; i4++) {
    o2[2 * i4] = t2[i4] & 255;
    o2[2 * i4 + 1] = t2[i4] >> 8;
  }
}
function neq25519(a2, b) {
  var c3 = new Uint8Array(32), d3 = new Uint8Array(32);
  pack25519(c3, a2);
  pack25519(d3, b);
  return crypto_verify_32(c3, 0, d3, 0);
}
function par25519(a2) {
  var d3 = new Uint8Array(32);
  pack25519(d3, a2);
  return d3[0] & 1;
}
function unpack25519(o2, n2) {
  var i4;
  for (i4 = 0; i4 < 16; i4++) o2[i4] = n2[2 * i4] + (n2[2 * i4 + 1] << 8);
  o2[15] &= 32767;
}
function A(o2, a2, b) {
  for (var i4 = 0; i4 < 16; i4++) o2[i4] = a2[i4] + b[i4];
}
function Z(o2, a2, b) {
  for (var i4 = 0; i4 < 16; i4++) o2[i4] = a2[i4] - b[i4];
}
function M2(o2, a2, b) {
  var v, c3, t0 = 0, t1 = 0, t2 = 0, t3 = 0, t4 = 0, t5 = 0, t6 = 0, t7 = 0, t8 = 0, t9 = 0, t10 = 0, t11 = 0, t12 = 0, t13 = 0, t14 = 0, t15 = 0, t16 = 0, t17 = 0, t18 = 0, t19 = 0, t20 = 0, t21 = 0, t22 = 0, t23 = 0, t24 = 0, t25 = 0, t26 = 0, t27 = 0, t28 = 0, t29 = 0, t30 = 0, b0 = b[0], b1 = b[1], b2 = b[2], b3 = b[3], b4 = b[4], b5 = b[5], b6 = b[6], b7 = b[7], b8 = b[8], b9 = b[9], b10 = b[10], b11 = b[11], b12 = b[12], b13 = b[13], b14 = b[14], b15 = b[15];
  v = a2[0];
  t0 += v * b0;
  t1 += v * b1;
  t2 += v * b2;
  t3 += v * b3;
  t4 += v * b4;
  t5 += v * b5;
  t6 += v * b6;
  t7 += v * b7;
  t8 += v * b8;
  t9 += v * b9;
  t10 += v * b10;
  t11 += v * b11;
  t12 += v * b12;
  t13 += v * b13;
  t14 += v * b14;
  t15 += v * b15;
  v = a2[1];
  t1 += v * b0;
  t2 += v * b1;
  t3 += v * b2;
  t4 += v * b3;
  t5 += v * b4;
  t6 += v * b5;
  t7 += v * b6;
  t8 += v * b7;
  t9 += v * b8;
  t10 += v * b9;
  t11 += v * b10;
  t12 += v * b11;
  t13 += v * b12;
  t14 += v * b13;
  t15 += v * b14;
  t16 += v * b15;
  v = a2[2];
  t2 += v * b0;
  t3 += v * b1;
  t4 += v * b2;
  t5 += v * b3;
  t6 += v * b4;
  t7 += v * b5;
  t8 += v * b6;
  t9 += v * b7;
  t10 += v * b8;
  t11 += v * b9;
  t12 += v * b10;
  t13 += v * b11;
  t14 += v * b12;
  t15 += v * b13;
  t16 += v * b14;
  t17 += v * b15;
  v = a2[3];
  t3 += v * b0;
  t4 += v * b1;
  t5 += v * b2;
  t6 += v * b3;
  t7 += v * b4;
  t8 += v * b5;
  t9 += v * b6;
  t10 += v * b7;
  t11 += v * b8;
  t12 += v * b9;
  t13 += v * b10;
  t14 += v * b11;
  t15 += v * b12;
  t16 += v * b13;
  t17 += v * b14;
  t18 += v * b15;
  v = a2[4];
  t4 += v * b0;
  t5 += v * b1;
  t6 += v * b2;
  t7 += v * b3;
  t8 += v * b4;
  t9 += v * b5;
  t10 += v * b6;
  t11 += v * b7;
  t12 += v * b8;
  t13 += v * b9;
  t14 += v * b10;
  t15 += v * b11;
  t16 += v * b12;
  t17 += v * b13;
  t18 += v * b14;
  t19 += v * b15;
  v = a2[5];
  t5 += v * b0;
  t6 += v * b1;
  t7 += v * b2;
  t8 += v * b3;
  t9 += v * b4;
  t10 += v * b5;
  t11 += v * b6;
  t12 += v * b7;
  t13 += v * b8;
  t14 += v * b9;
  t15 += v * b10;
  t16 += v * b11;
  t17 += v * b12;
  t18 += v * b13;
  t19 += v * b14;
  t20 += v * b15;
  v = a2[6];
  t6 += v * b0;
  t7 += v * b1;
  t8 += v * b2;
  t9 += v * b3;
  t10 += v * b4;
  t11 += v * b5;
  t12 += v * b6;
  t13 += v * b7;
  t14 += v * b8;
  t15 += v * b9;
  t16 += v * b10;
  t17 += v * b11;
  t18 += v * b12;
  t19 += v * b13;
  t20 += v * b14;
  t21 += v * b15;
  v = a2[7];
  t7 += v * b0;
  t8 += v * b1;
  t9 += v * b2;
  t10 += v * b3;
  t11 += v * b4;
  t12 += v * b5;
  t13 += v * b6;
  t14 += v * b7;
  t15 += v * b8;
  t16 += v * b9;
  t17 += v * b10;
  t18 += v * b11;
  t19 += v * b12;
  t20 += v * b13;
  t21 += v * b14;
  t22 += v * b15;
  v = a2[8];
  t8 += v * b0;
  t9 += v * b1;
  t10 += v * b2;
  t11 += v * b3;
  t12 += v * b4;
  t13 += v * b5;
  t14 += v * b6;
  t15 += v * b7;
  t16 += v * b8;
  t17 += v * b9;
  t18 += v * b10;
  t19 += v * b11;
  t20 += v * b12;
  t21 += v * b13;
  t22 += v * b14;
  t23 += v * b15;
  v = a2[9];
  t9 += v * b0;
  t10 += v * b1;
  t11 += v * b2;
  t12 += v * b3;
  t13 += v * b4;
  t14 += v * b5;
  t15 += v * b6;
  t16 += v * b7;
  t17 += v * b8;
  t18 += v * b9;
  t19 += v * b10;
  t20 += v * b11;
  t21 += v * b12;
  t22 += v * b13;
  t23 += v * b14;
  t24 += v * b15;
  v = a2[10];
  t10 += v * b0;
  t11 += v * b1;
  t12 += v * b2;
  t13 += v * b3;
  t14 += v * b4;
  t15 += v * b5;
  t16 += v * b6;
  t17 += v * b7;
  t18 += v * b8;
  t19 += v * b9;
  t20 += v * b10;
  t21 += v * b11;
  t22 += v * b12;
  t23 += v * b13;
  t24 += v * b14;
  t25 += v * b15;
  v = a2[11];
  t11 += v * b0;
  t12 += v * b1;
  t13 += v * b2;
  t14 += v * b3;
  t15 += v * b4;
  t16 += v * b5;
  t17 += v * b6;
  t18 += v * b7;
  t19 += v * b8;
  t20 += v * b9;
  t21 += v * b10;
  t22 += v * b11;
  t23 += v * b12;
  t24 += v * b13;
  t25 += v * b14;
  t26 += v * b15;
  v = a2[12];
  t12 += v * b0;
  t13 += v * b1;
  t14 += v * b2;
  t15 += v * b3;
  t16 += v * b4;
  t17 += v * b5;
  t18 += v * b6;
  t19 += v * b7;
  t20 += v * b8;
  t21 += v * b9;
  t22 += v * b10;
  t23 += v * b11;
  t24 += v * b12;
  t25 += v * b13;
  t26 += v * b14;
  t27 += v * b15;
  v = a2[13];
  t13 += v * b0;
  t14 += v * b1;
  t15 += v * b2;
  t16 += v * b3;
  t17 += v * b4;
  t18 += v * b5;
  t19 += v * b6;
  t20 += v * b7;
  t21 += v * b8;
  t22 += v * b9;
  t23 += v * b10;
  t24 += v * b11;
  t25 += v * b12;
  t26 += v * b13;
  t27 += v * b14;
  t28 += v * b15;
  v = a2[14];
  t14 += v * b0;
  t15 += v * b1;
  t16 += v * b2;
  t17 += v * b3;
  t18 += v * b4;
  t19 += v * b5;
  t20 += v * b6;
  t21 += v * b7;
  t22 += v * b8;
  t23 += v * b9;
  t24 += v * b10;
  t25 += v * b11;
  t26 += v * b12;
  t27 += v * b13;
  t28 += v * b14;
  t29 += v * b15;
  v = a2[15];
  t15 += v * b0;
  t16 += v * b1;
  t17 += v * b2;
  t18 += v * b3;
  t19 += v * b4;
  t20 += v * b5;
  t21 += v * b6;
  t22 += v * b7;
  t23 += v * b8;
  t24 += v * b9;
  t25 += v * b10;
  t26 += v * b11;
  t27 += v * b12;
  t28 += v * b13;
  t29 += v * b14;
  t30 += v * b15;
  t0 += 38 * t16;
  t1 += 38 * t17;
  t2 += 38 * t18;
  t3 += 38 * t19;
  t4 += 38 * t20;
  t5 += 38 * t21;
  t6 += 38 * t22;
  t7 += 38 * t23;
  t8 += 38 * t24;
  t9 += 38 * t25;
  t10 += 38 * t26;
  t11 += 38 * t27;
  t12 += 38 * t28;
  t13 += 38 * t29;
  t14 += 38 * t30;
  c3 = 1;
  v = t0 + c3 + 65535;
  c3 = Math.floor(v / 65536);
  t0 = v - c3 * 65536;
  v = t1 + c3 + 65535;
  c3 = Math.floor(v / 65536);
  t1 = v - c3 * 65536;
  v = t2 + c3 + 65535;
  c3 = Math.floor(v / 65536);
  t2 = v - c3 * 65536;
  v = t3 + c3 + 65535;
  c3 = Math.floor(v / 65536);
  t3 = v - c3 * 65536;
  v = t4 + c3 + 65535;
  c3 = Math.floor(v / 65536);
  t4 = v - c3 * 65536;
  v = t5 + c3 + 65535;
  c3 = Math.floor(v / 65536);
  t5 = v - c3 * 65536;
  v = t6 + c3 + 65535;
  c3 = Math.floor(v / 65536);
  t6 = v - c3 * 65536;
  v = t7 + c3 + 65535;
  c3 = Math.floor(v / 65536);
  t7 = v - c3 * 65536;
  v = t8 + c3 + 65535;
  c3 = Math.floor(v / 65536);
  t8 = v - c3 * 65536;
  v = t9 + c3 + 65535;
  c3 = Math.floor(v / 65536);
  t9 = v - c3 * 65536;
  v = t10 + c3 + 65535;
  c3 = Math.floor(v / 65536);
  t10 = v - c3 * 65536;
  v = t11 + c3 + 65535;
  c3 = Math.floor(v / 65536);
  t11 = v - c3 * 65536;
  v = t12 + c3 + 65535;
  c3 = Math.floor(v / 65536);
  t12 = v - c3 * 65536;
  v = t13 + c3 + 65535;
  c3 = Math.floor(v / 65536);
  t13 = v - c3 * 65536;
  v = t14 + c3 + 65535;
  c3 = Math.floor(v / 65536);
  t14 = v - c3 * 65536;
  v = t15 + c3 + 65535;
  c3 = Math.floor(v / 65536);
  t15 = v - c3 * 65536;
  t0 += c3 - 1 + 37 * (c3 - 1);
  c3 = 1;
  v = t0 + c3 + 65535;
  c3 = Math.floor(v / 65536);
  t0 = v - c3 * 65536;
  v = t1 + c3 + 65535;
  c3 = Math.floor(v / 65536);
  t1 = v - c3 * 65536;
  v = t2 + c3 + 65535;
  c3 = Math.floor(v / 65536);
  t2 = v - c3 * 65536;
  v = t3 + c3 + 65535;
  c3 = Math.floor(v / 65536);
  t3 = v - c3 * 65536;
  v = t4 + c3 + 65535;
  c3 = Math.floor(v / 65536);
  t4 = v - c3 * 65536;
  v = t5 + c3 + 65535;
  c3 = Math.floor(v / 65536);
  t5 = v - c3 * 65536;
  v = t6 + c3 + 65535;
  c3 = Math.floor(v / 65536);
  t6 = v - c3 * 65536;
  v = t7 + c3 + 65535;
  c3 = Math.floor(v / 65536);
  t7 = v - c3 * 65536;
  v = t8 + c3 + 65535;
  c3 = Math.floor(v / 65536);
  t8 = v - c3 * 65536;
  v = t9 + c3 + 65535;
  c3 = Math.floor(v / 65536);
  t9 = v - c3 * 65536;
  v = t10 + c3 + 65535;
  c3 = Math.floor(v / 65536);
  t10 = v - c3 * 65536;
  v = t11 + c3 + 65535;
  c3 = Math.floor(v / 65536);
  t11 = v - c3 * 65536;
  v = t12 + c3 + 65535;
  c3 = Math.floor(v / 65536);
  t12 = v - c3 * 65536;
  v = t13 + c3 + 65535;
  c3 = Math.floor(v / 65536);
  t13 = v - c3 * 65536;
  v = t14 + c3 + 65535;
  c3 = Math.floor(v / 65536);
  t14 = v - c3 * 65536;
  v = t15 + c3 + 65535;
  c3 = Math.floor(v / 65536);
  t15 = v - c3 * 65536;
  t0 += c3 - 1 + 37 * (c3 - 1);
  o2[0] = t0;
  o2[1] = t1;
  o2[2] = t2;
  o2[3] = t3;
  o2[4] = t4;
  o2[5] = t5;
  o2[6] = t6;
  o2[7] = t7;
  o2[8] = t8;
  o2[9] = t9;
  o2[10] = t10;
  o2[11] = t11;
  o2[12] = t12;
  o2[13] = t13;
  o2[14] = t14;
  o2[15] = t15;
}
function S2(o2, a2) {
  M2(o2, a2, a2);
}
function inv25519(o2, i4) {
  var c3 = gf();
  var a2;
  for (a2 = 0; a2 < 16; a2++) c3[a2] = i4[a2];
  for (a2 = 253; a2 >= 0; a2--) {
    S2(c3, c3);
    if (a2 !== 2 && a2 !== 4) M2(c3, c3, i4);
  }
  for (a2 = 0; a2 < 16; a2++) o2[a2] = c3[a2];
}
function pow2523(o2, i4) {
  var c3 = gf();
  var a2;
  for (a2 = 0; a2 < 16; a2++) c3[a2] = i4[a2];
  for (a2 = 250; a2 >= 0; a2--) {
    S2(c3, c3);
    if (a2 !== 1) M2(c3, c3, i4);
  }
  for (a2 = 0; a2 < 16; a2++) o2[a2] = c3[a2];
}
function crypto_scalarmult(q, n2, p) {
  var z = new Uint8Array(32);
  var x3 = new Float64Array(80), r, i4;
  var a2 = gf(), b = gf(), c3 = gf(), d3 = gf(), e = gf(), f = gf();
  for (i4 = 0; i4 < 31; i4++) z[i4] = n2[i4];
  z[31] = n2[31] & 127 | 64;
  z[0] &= 248;
  unpack25519(x3, p);
  for (i4 = 0; i4 < 16; i4++) {
    b[i4] = x3[i4];
    d3[i4] = a2[i4] = c3[i4] = 0;
  }
  a2[0] = d3[0] = 1;
  for (i4 = 254; i4 >= 0; --i4) {
    r = z[i4 >>> 3] >>> (i4 & 7) & 1;
    sel25519(a2, b, r);
    sel25519(c3, d3, r);
    A(e, a2, c3);
    Z(a2, a2, c3);
    A(c3, b, d3);
    Z(b, b, d3);
    S2(d3, e);
    S2(f, a2);
    M2(a2, c3, a2);
    M2(c3, b, e);
    A(e, a2, c3);
    Z(a2, a2, c3);
    S2(b, a2);
    Z(c3, d3, f);
    M2(a2, c3, _121665);
    A(a2, a2, d3);
    M2(c3, c3, a2);
    M2(a2, d3, f);
    M2(d3, b, x3);
    S2(b, e);
    sel25519(a2, b, r);
    sel25519(c3, d3, r);
  }
  for (i4 = 0; i4 < 16; i4++) {
    x3[i4 + 16] = a2[i4];
    x3[i4 + 32] = c3[i4];
    x3[i4 + 48] = b[i4];
    x3[i4 + 64] = d3[i4];
  }
  var x32 = x3.subarray(32);
  var x16 = x3.subarray(16);
  inv25519(x32, x32);
  M2(x16, x16, x32);
  pack25519(q, x16);
  return 0;
}
function crypto_scalarmult_base(q, n2) {
  return crypto_scalarmult(q, n2, _9);
}
function crypto_box_keypair(y, x3) {
  randombytes(x3, 32);
  return crypto_scalarmult_base(y, x3);
}
function crypto_hashblocks_hl(hh, hl, m, n2) {
  var wh = new Int32Array(16), wl = new Int32Array(16), bh0, bh1, bh2, bh3, bh4, bh5, bh6, bh7, bl0, bl1, bl2, bl3, bl4, bl5, bl6, bl7, th, tl, i4, j2, h2, l, a2, b, c3, d3;
  var ah0 = hh[0], ah1 = hh[1], ah2 = hh[2], ah3 = hh[3], ah4 = hh[4], ah5 = hh[5], ah6 = hh[6], ah7 = hh[7], al0 = hl[0], al1 = hl[1], al2 = hl[2], al3 = hl[3], al4 = hl[4], al5 = hl[5], al6 = hl[6], al7 = hl[7];
  var pos = 0;
  while (n2 >= 128) {
    for (i4 = 0; i4 < 16; i4++) {
      j2 = 8 * i4 + pos;
      wh[i4] = m[j2 + 0] << 24 | m[j2 + 1] << 16 | m[j2 + 2] << 8 | m[j2 + 3];
      wl[i4] = m[j2 + 4] << 24 | m[j2 + 5] << 16 | m[j2 + 6] << 8 | m[j2 + 7];
    }
    for (i4 = 0; i4 < 80; i4++) {
      bh0 = ah0;
      bh1 = ah1;
      bh2 = ah2;
      bh3 = ah3;
      bh4 = ah4;
      bh5 = ah5;
      bh6 = ah6;
      bh7 = ah7;
      bl0 = al0;
      bl1 = al1;
      bl2 = al2;
      bl3 = al3;
      bl4 = al4;
      bl5 = al5;
      bl6 = al6;
      bl7 = al7;
      h2 = ah7;
      l = al7;
      a2 = l & 65535;
      b = l >>> 16;
      c3 = h2 & 65535;
      d3 = h2 >>> 16;
      h2 = (ah4 >>> 14 | al4 << 32 - 14) ^ (ah4 >>> 18 | al4 << 32 - 18) ^ (al4 >>> 41 - 32 | ah4 << 32 - (41 - 32));
      l = (al4 >>> 14 | ah4 << 32 - 14) ^ (al4 >>> 18 | ah4 << 32 - 18) ^ (ah4 >>> 41 - 32 | al4 << 32 - (41 - 32));
      a2 += l & 65535;
      b += l >>> 16;
      c3 += h2 & 65535;
      d3 += h2 >>> 16;
      h2 = ah4 & ah5 ^ ~ah4 & ah6;
      l = al4 & al5 ^ ~al4 & al6;
      a2 += l & 65535;
      b += l >>> 16;
      c3 += h2 & 65535;
      d3 += h2 >>> 16;
      h2 = K[i4 * 2];
      l = K[i4 * 2 + 1];
      a2 += l & 65535;
      b += l >>> 16;
      c3 += h2 & 65535;
      d3 += h2 >>> 16;
      h2 = wh[i4 % 16];
      l = wl[i4 % 16];
      a2 += l & 65535;
      b += l >>> 16;
      c3 += h2 & 65535;
      d3 += h2 >>> 16;
      b += a2 >>> 16;
      c3 += b >>> 16;
      d3 += c3 >>> 16;
      th = c3 & 65535 | d3 << 16;
      tl = a2 & 65535 | b << 16;
      h2 = th;
      l = tl;
      a2 = l & 65535;
      b = l >>> 16;
      c3 = h2 & 65535;
      d3 = h2 >>> 16;
      h2 = (ah0 >>> 28 | al0 << 32 - 28) ^ (al0 >>> 34 - 32 | ah0 << 32 - (34 - 32)) ^ (al0 >>> 39 - 32 | ah0 << 32 - (39 - 32));
      l = (al0 >>> 28 | ah0 << 32 - 28) ^ (ah0 >>> 34 - 32 | al0 << 32 - (34 - 32)) ^ (ah0 >>> 39 - 32 | al0 << 32 - (39 - 32));
      a2 += l & 65535;
      b += l >>> 16;
      c3 += h2 & 65535;
      d3 += h2 >>> 16;
      h2 = ah0 & ah1 ^ ah0 & ah2 ^ ah1 & ah2;
      l = al0 & al1 ^ al0 & al2 ^ al1 & al2;
      a2 += l & 65535;
      b += l >>> 16;
      c3 += h2 & 65535;
      d3 += h2 >>> 16;
      b += a2 >>> 16;
      c3 += b >>> 16;
      d3 += c3 >>> 16;
      bh7 = c3 & 65535 | d3 << 16;
      bl7 = a2 & 65535 | b << 16;
      h2 = bh3;
      l = bl3;
      a2 = l & 65535;
      b = l >>> 16;
      c3 = h2 & 65535;
      d3 = h2 >>> 16;
      h2 = th;
      l = tl;
      a2 += l & 65535;
      b += l >>> 16;
      c3 += h2 & 65535;
      d3 += h2 >>> 16;
      b += a2 >>> 16;
      c3 += b >>> 16;
      d3 += c3 >>> 16;
      bh3 = c3 & 65535 | d3 << 16;
      bl3 = a2 & 65535 | b << 16;
      ah1 = bh0;
      ah2 = bh1;
      ah3 = bh2;
      ah4 = bh3;
      ah5 = bh4;
      ah6 = bh5;
      ah7 = bh6;
      ah0 = bh7;
      al1 = bl0;
      al2 = bl1;
      al3 = bl2;
      al4 = bl3;
      al5 = bl4;
      al6 = bl5;
      al7 = bl6;
      al0 = bl7;
      if (i4 % 16 === 15) {
        for (j2 = 0; j2 < 16; j2++) {
          h2 = wh[j2];
          l = wl[j2];
          a2 = l & 65535;
          b = l >>> 16;
          c3 = h2 & 65535;
          d3 = h2 >>> 16;
          h2 = wh[(j2 + 9) % 16];
          l = wl[(j2 + 9) % 16];
          a2 += l & 65535;
          b += l >>> 16;
          c3 += h2 & 65535;
          d3 += h2 >>> 16;
          th = wh[(j2 + 1) % 16];
          tl = wl[(j2 + 1) % 16];
          h2 = (th >>> 1 | tl << 32 - 1) ^ (th >>> 8 | tl << 32 - 8) ^ th >>> 7;
          l = (tl >>> 1 | th << 32 - 1) ^ (tl >>> 8 | th << 32 - 8) ^ (tl >>> 7 | th << 32 - 7);
          a2 += l & 65535;
          b += l >>> 16;
          c3 += h2 & 65535;
          d3 += h2 >>> 16;
          th = wh[(j2 + 14) % 16];
          tl = wl[(j2 + 14) % 16];
          h2 = (th >>> 19 | tl << 32 - 19) ^ (tl >>> 61 - 32 | th << 32 - (61 - 32)) ^ th >>> 6;
          l = (tl >>> 19 | th << 32 - 19) ^ (th >>> 61 - 32 | tl << 32 - (61 - 32)) ^ (tl >>> 6 | th << 32 - 6);
          a2 += l & 65535;
          b += l >>> 16;
          c3 += h2 & 65535;
          d3 += h2 >>> 16;
          b += a2 >>> 16;
          c3 += b >>> 16;
          d3 += c3 >>> 16;
          wh[j2] = c3 & 65535 | d3 << 16;
          wl[j2] = a2 & 65535 | b << 16;
        }
      }
    }
    h2 = ah0;
    l = al0;
    a2 = l & 65535;
    b = l >>> 16;
    c3 = h2 & 65535;
    d3 = h2 >>> 16;
    h2 = hh[0];
    l = hl[0];
    a2 += l & 65535;
    b += l >>> 16;
    c3 += h2 & 65535;
    d3 += h2 >>> 16;
    b += a2 >>> 16;
    c3 += b >>> 16;
    d3 += c3 >>> 16;
    hh[0] = ah0 = c3 & 65535 | d3 << 16;
    hl[0] = al0 = a2 & 65535 | b << 16;
    h2 = ah1;
    l = al1;
    a2 = l & 65535;
    b = l >>> 16;
    c3 = h2 & 65535;
    d3 = h2 >>> 16;
    h2 = hh[1];
    l = hl[1];
    a2 += l & 65535;
    b += l >>> 16;
    c3 += h2 & 65535;
    d3 += h2 >>> 16;
    b += a2 >>> 16;
    c3 += b >>> 16;
    d3 += c3 >>> 16;
    hh[1] = ah1 = c3 & 65535 | d3 << 16;
    hl[1] = al1 = a2 & 65535 | b << 16;
    h2 = ah2;
    l = al2;
    a2 = l & 65535;
    b = l >>> 16;
    c3 = h2 & 65535;
    d3 = h2 >>> 16;
    h2 = hh[2];
    l = hl[2];
    a2 += l & 65535;
    b += l >>> 16;
    c3 += h2 & 65535;
    d3 += h2 >>> 16;
    b += a2 >>> 16;
    c3 += b >>> 16;
    d3 += c3 >>> 16;
    hh[2] = ah2 = c3 & 65535 | d3 << 16;
    hl[2] = al2 = a2 & 65535 | b << 16;
    h2 = ah3;
    l = al3;
    a2 = l & 65535;
    b = l >>> 16;
    c3 = h2 & 65535;
    d3 = h2 >>> 16;
    h2 = hh[3];
    l = hl[3];
    a2 += l & 65535;
    b += l >>> 16;
    c3 += h2 & 65535;
    d3 += h2 >>> 16;
    b += a2 >>> 16;
    c3 += b >>> 16;
    d3 += c3 >>> 16;
    hh[3] = ah3 = c3 & 65535 | d3 << 16;
    hl[3] = al3 = a2 & 65535 | b << 16;
    h2 = ah4;
    l = al4;
    a2 = l & 65535;
    b = l >>> 16;
    c3 = h2 & 65535;
    d3 = h2 >>> 16;
    h2 = hh[4];
    l = hl[4];
    a2 += l & 65535;
    b += l >>> 16;
    c3 += h2 & 65535;
    d3 += h2 >>> 16;
    b += a2 >>> 16;
    c3 += b >>> 16;
    d3 += c3 >>> 16;
    hh[4] = ah4 = c3 & 65535 | d3 << 16;
    hl[4] = al4 = a2 & 65535 | b << 16;
    h2 = ah5;
    l = al5;
    a2 = l & 65535;
    b = l >>> 16;
    c3 = h2 & 65535;
    d3 = h2 >>> 16;
    h2 = hh[5];
    l = hl[5];
    a2 += l & 65535;
    b += l >>> 16;
    c3 += h2 & 65535;
    d3 += h2 >>> 16;
    b += a2 >>> 16;
    c3 += b >>> 16;
    d3 += c3 >>> 16;
    hh[5] = ah5 = c3 & 65535 | d3 << 16;
    hl[5] = al5 = a2 & 65535 | b << 16;
    h2 = ah6;
    l = al6;
    a2 = l & 65535;
    b = l >>> 16;
    c3 = h2 & 65535;
    d3 = h2 >>> 16;
    h2 = hh[6];
    l = hl[6];
    a2 += l & 65535;
    b += l >>> 16;
    c3 += h2 & 65535;
    d3 += h2 >>> 16;
    b += a2 >>> 16;
    c3 += b >>> 16;
    d3 += c3 >>> 16;
    hh[6] = ah6 = c3 & 65535 | d3 << 16;
    hl[6] = al6 = a2 & 65535 | b << 16;
    h2 = ah7;
    l = al7;
    a2 = l & 65535;
    b = l >>> 16;
    c3 = h2 & 65535;
    d3 = h2 >>> 16;
    h2 = hh[7];
    l = hl[7];
    a2 += l & 65535;
    b += l >>> 16;
    c3 += h2 & 65535;
    d3 += h2 >>> 16;
    b += a2 >>> 16;
    c3 += b >>> 16;
    d3 += c3 >>> 16;
    hh[7] = ah7 = c3 & 65535 | d3 << 16;
    hl[7] = al7 = a2 & 65535 | b << 16;
    pos += 128;
    n2 -= 128;
  }
  return n2;
}
function crypto_hash(out, m, n2) {
  var hh = new Int32Array(8), hl = new Int32Array(8), x3 = new Uint8Array(256), i4, b = n2;
  hh[0] = 1779033703;
  hh[1] = 3144134277;
  hh[2] = 1013904242;
  hh[3] = 2773480762;
  hh[4] = 1359893119;
  hh[5] = 2600822924;
  hh[6] = 528734635;
  hh[7] = 1541459225;
  hl[0] = 4089235720;
  hl[1] = 2227873595;
  hl[2] = 4271175723;
  hl[3] = 1595750129;
  hl[4] = 2917565137;
  hl[5] = 725511199;
  hl[6] = 4215389547;
  hl[7] = 327033209;
  crypto_hashblocks_hl(hh, hl, m, n2);
  n2 %= 128;
  for (i4 = 0; i4 < n2; i4++) x3[i4] = m[b - n2 + i4];
  x3[n2] = 128;
  n2 = 256 - 128 * (n2 < 112 ? 1 : 0);
  x3[n2 - 9] = 0;
  ts64(x3, n2 - 8, b / 536870912 | 0, b << 3);
  crypto_hashblocks_hl(hh, hl, x3, n2);
  for (i4 = 0; i4 < 8; i4++) ts64(out, 8 * i4, hh[i4], hl[i4]);
  return 0;
}
function add(p, q) {
  var a2 = gf(), b = gf(), c3 = gf(), d3 = gf(), e = gf(), f = gf(), g = gf(), h2 = gf(), t2 = gf();
  Z(a2, p[1], p[0]);
  Z(t2, q[1], q[0]);
  M2(a2, a2, t2);
  A(b, p[0], p[1]);
  A(t2, q[0], q[1]);
  M2(b, b, t2);
  M2(c3, p[3], q[3]);
  M2(c3, c3, D2);
  M2(d3, p[2], q[2]);
  A(d3, d3, d3);
  Z(e, b, a2);
  Z(f, d3, c3);
  A(g, d3, c3);
  A(h2, b, a2);
  M2(p[0], e, f);
  M2(p[1], h2, g);
  M2(p[2], g, f);
  M2(p[3], e, h2);
}
function cswap(p, q, b) {
  var i4;
  for (i4 = 0; i4 < 4; i4++) {
    sel25519(p[i4], q[i4], b);
  }
}
function pack2(r, p) {
  var tx = gf(), ty = gf(), zi = gf();
  inv25519(zi, p[2]);
  M2(tx, p[0], zi);
  M2(ty, p[1], zi);
  pack25519(r, ty);
  r[31] ^= par25519(tx) << 7;
}
function scalarmult(p, q, s) {
  var b, i4;
  set25519(p[0], gf0);
  set25519(p[1], gf1);
  set25519(p[2], gf1);
  set25519(p[3], gf0);
  for (i4 = 255; i4 >= 0; --i4) {
    b = s[i4 / 8 | 0] >> (i4 & 7) & 1;
    cswap(p, q, b);
    add(q, p);
    add(p, p);
    cswap(p, q, b);
  }
}
function scalarbase(p, s) {
  var q = [gf(), gf(), gf(), gf()];
  set25519(q[0], X);
  set25519(q[1], Y);
  set25519(q[2], gf1);
  M2(q[3], X, Y);
  scalarmult(p, q, s);
}
function crypto_sign_keypair(pk, sk, seeded) {
  var d3 = new Uint8Array(64);
  var p = [gf(), gf(), gf(), gf()];
  var i4;
  if (!seeded) randombytes(sk, 32);
  crypto_hash(d3, sk, 32);
  d3[0] &= 248;
  d3[31] &= 127;
  d3[31] |= 64;
  scalarbase(p, d3);
  pack2(pk, p);
  for (i4 = 0; i4 < 32; i4++) sk[i4 + 32] = pk[i4];
  return 0;
}
function modL(r, x3) {
  var carry, i4, j2, k2;
  for (i4 = 63; i4 >= 32; --i4) {
    carry = 0;
    for (j2 = i4 - 32, k2 = i4 - 12; j2 < k2; ++j2) {
      x3[j2] += carry - 16 * x3[i4] * L2[j2 - (i4 - 32)];
      carry = Math.floor((x3[j2] + 128) / 256);
      x3[j2] -= carry * 256;
    }
    x3[j2] += carry;
    x3[i4] = 0;
  }
  carry = 0;
  for (j2 = 0; j2 < 32; j2++) {
    x3[j2] += carry - (x3[31] >> 4) * L2[j2];
    carry = x3[j2] >> 8;
    x3[j2] &= 255;
  }
  for (j2 = 0; j2 < 32; j2++) x3[j2] -= carry * L2[j2];
  for (i4 = 0; i4 < 32; i4++) {
    x3[i4 + 1] += x3[i4] >> 8;
    r[i4] = x3[i4] & 255;
  }
}
function reduce2(r) {
  var x3 = new Float64Array(64), i4;
  for (i4 = 0; i4 < 64; i4++) x3[i4] = r[i4];
  for (i4 = 0; i4 < 64; i4++) r[i4] = 0;
  modL(r, x3);
}
function crypto_sign(sm, m, n2, sk) {
  var d3 = new Uint8Array(64), h2 = new Uint8Array(64), r = new Uint8Array(64);
  var i4, j2, x3 = new Float64Array(64);
  var p = [gf(), gf(), gf(), gf()];
  crypto_hash(d3, sk, 32);
  d3[0] &= 248;
  d3[31] &= 127;
  d3[31] |= 64;
  var smlen = n2 + 64;
  for (i4 = 0; i4 < n2; i4++) sm[64 + i4] = m[i4];
  for (i4 = 0; i4 < 32; i4++) sm[32 + i4] = d3[32 + i4];
  crypto_hash(r, sm.subarray(32), n2 + 32);
  reduce2(r);
  scalarbase(p, r);
  pack2(sm, p);
  for (i4 = 32; i4 < 64; i4++) sm[i4] = sk[i4];
  crypto_hash(h2, sm, n2 + 64);
  reduce2(h2);
  for (i4 = 0; i4 < 64; i4++) x3[i4] = 0;
  for (i4 = 0; i4 < 32; i4++) x3[i4] = r[i4];
  for (i4 = 0; i4 < 32; i4++) {
    for (j2 = 0; j2 < 32; j2++) {
      x3[i4 + j2] += h2[i4] * d3[j2];
    }
  }
  modL(sm.subarray(32), x3);
  return smlen;
}
function unpackneg(r, p) {
  var t2 = gf(), chk = gf(), num = gf(), den = gf(), den2 = gf(), den4 = gf(), den6 = gf();
  set25519(r[2], gf1);
  unpack25519(r[1], p);
  S2(num, r[1]);
  M2(den, num, D);
  Z(num, num, r[2]);
  A(den, r[2], den);
  S2(den2, den);
  S2(den4, den2);
  M2(den6, den4, den2);
  M2(t2, den6, num);
  M2(t2, t2, den);
  pow2523(t2, t2);
  M2(t2, t2, num);
  M2(t2, t2, den);
  M2(t2, t2, den);
  M2(r[0], t2, den);
  S2(chk, r[0]);
  M2(chk, chk, den);
  if (neq25519(chk, num)) M2(r[0], r[0], I2);
  S2(chk, r[0]);
  M2(chk, chk, den);
  if (neq25519(chk, num)) return -1;
  if (par25519(r[0]) === p[31] >> 7) Z(r[0], gf0, r[0]);
  M2(r[3], r[0], r[1]);
  return 0;
}
function crypto_sign_open(m, sm, n2, pk) {
  var i4;
  var t2 = new Uint8Array(32), h2 = new Uint8Array(64);
  var p = [gf(), gf(), gf(), gf()], q = [gf(), gf(), gf(), gf()];
  if (n2 < 64) return -1;
  if (unpackneg(q, pk)) return -1;
  for (i4 = 0; i4 < n2; i4++) m[i4] = sm[i4];
  for (i4 = 0; i4 < 32; i4++) m[i4 + 32] = pk[i4];
  crypto_hash(h2, m, n2);
  reduce2(h2);
  scalarmult(p, q, h2);
  scalarbase(q, sm.subarray(32));
  add(p, q);
  pack2(t2, p);
  n2 -= 64;
  if (crypto_verify_32(sm, 0, t2, 0)) {
    for (i4 = 0; i4 < n2; i4++) m[i4] = 0;
    return -1;
  }
  for (i4 = 0; i4 < n2; i4++) m[i4] = sm[i4 + 64];
  return n2;
}
function checkArrayTypes() {
  for (var i4 = 0; i4 < arguments.length; i4++) {
    if (!(arguments[i4] instanceof Uint8Array))
      throw new TypeError("unexpected type, use Uint8Array");
  }
}
function cleanup(arr) {
  for (var i4 = 0; i4 < arr.length; i4++) arr[i4] = 0;
}
function des(keys4, message, encrypt, mode, iv, padding) {
  const spfunction1 = [
    16843776,
    0,
    65536,
    16843780,
    16842756,
    66564,
    4,
    65536,
    1024,
    16843776,
    16843780,
    1024,
    16778244,
    16842756,
    16777216,
    4,
    1028,
    16778240,
    16778240,
    66560,
    66560,
    16842752,
    16842752,
    16778244,
    65540,
    16777220,
    16777220,
    65540,
    0,
    1028,
    66564,
    16777216,
    65536,
    16843780,
    4,
    16842752,
    16843776,
    16777216,
    16777216,
    1024,
    16842756,
    65536,
    66560,
    16777220,
    1024,
    4,
    16778244,
    66564,
    16843780,
    65540,
    16842752,
    16778244,
    16777220,
    1028,
    66564,
    16843776,
    1028,
    16778240,
    16778240,
    0,
    65540,
    66560,
    0,
    16842756
  ];
  const spfunction2 = [
    -2146402272,
    -2147450880,
    32768,
    1081376,
    1048576,
    32,
    -2146435040,
    -2147450848,
    -2147483616,
    -2146402272,
    -2146402304,
    -2147483648,
    -2147450880,
    1048576,
    32,
    -2146435040,
    1081344,
    1048608,
    -2147450848,
    0,
    -2147483648,
    32768,
    1081376,
    -2146435072,
    1048608,
    -2147483616,
    0,
    1081344,
    32800,
    -2146402304,
    -2146435072,
    32800,
    0,
    1081376,
    -2146435040,
    1048576,
    -2147450848,
    -2146435072,
    -2146402304,
    32768,
    -2146435072,
    -2147450880,
    32,
    -2146402272,
    1081376,
    32,
    32768,
    -2147483648,
    32800,
    -2146402304,
    1048576,
    -2147483616,
    1048608,
    -2147450848,
    -2147483616,
    1048608,
    1081344,
    0,
    -2147450880,
    32800,
    -2147483648,
    -2146435040,
    -2146402272,
    1081344
  ];
  const spfunction3 = [
    520,
    134349312,
    0,
    134348808,
    134218240,
    0,
    131592,
    134218240,
    131080,
    134217736,
    134217736,
    131072,
    134349320,
    131080,
    134348800,
    520,
    134217728,
    8,
    134349312,
    512,
    131584,
    134348800,
    134348808,
    131592,
    134218248,
    131584,
    131072,
    134218248,
    8,
    134349320,
    512,
    134217728,
    134349312,
    134217728,
    131080,
    520,
    131072,
    134349312,
    134218240,
    0,
    512,
    131080,
    134349320,
    134218240,
    134217736,
    512,
    0,
    134348808,
    134218248,
    131072,
    134217728,
    134349320,
    8,
    131592,
    131584,
    134217736,
    134348800,
    134218248,
    520,
    134348800,
    131592,
    8,
    134348808,
    131584
  ];
  const spfunction4 = [
    8396801,
    8321,
    8321,
    128,
    8396928,
    8388737,
    8388609,
    8193,
    0,
    8396800,
    8396800,
    8396929,
    129,
    0,
    8388736,
    8388609,
    1,
    8192,
    8388608,
    8396801,
    128,
    8388608,
    8193,
    8320,
    8388737,
    1,
    8320,
    8388736,
    8192,
    8396928,
    8396929,
    129,
    8388736,
    8388609,
    8396800,
    8396929,
    129,
    0,
    0,
    8396800,
    8320,
    8388736,
    8388737,
    1,
    8396801,
    8321,
    8321,
    128,
    8396929,
    129,
    1,
    8192,
    8388609,
    8193,
    8396928,
    8388737,
    8193,
    8320,
    8388608,
    8396801,
    128,
    8388608,
    8192,
    8396928
  ];
  const spfunction5 = [
    256,
    34078976,
    34078720,
    1107296512,
    524288,
    256,
    1073741824,
    34078720,
    1074266368,
    524288,
    33554688,
    1074266368,
    1107296512,
    1107820544,
    524544,
    1073741824,
    33554432,
    1074266112,
    1074266112,
    0,
    1073742080,
    1107820800,
    1107820800,
    33554688,
    1107820544,
    1073742080,
    0,
    1107296256,
    34078976,
    33554432,
    1107296256,
    524544,
    524288,
    1107296512,
    256,
    33554432,
    1073741824,
    34078720,
    1107296512,
    1074266368,
    33554688,
    1073741824,
    1107820544,
    34078976,
    1074266368,
    256,
    33554432,
    1107820544,
    1107820800,
    524544,
    1107296256,
    1107820800,
    34078720,
    0,
    1074266112,
    1107296256,
    524544,
    33554688,
    1073742080,
    524288,
    0,
    1074266112,
    34078976,
    1073742080
  ];
  const spfunction6 = [
    536870928,
    541065216,
    16384,
    541081616,
    541065216,
    16,
    541081616,
    4194304,
    536887296,
    4210704,
    4194304,
    536870928,
    4194320,
    536887296,
    536870912,
    16400,
    0,
    4194320,
    536887312,
    16384,
    4210688,
    536887312,
    16,
    541065232,
    541065232,
    0,
    4210704,
    541081600,
    16400,
    4210688,
    541081600,
    536870912,
    536887296,
    16,
    541065232,
    4210688,
    541081616,
    4194304,
    16400,
    536870928,
    4194304,
    536887296,
    536870912,
    16400,
    536870928,
    541081616,
    4210688,
    541065216,
    4210704,
    541081600,
    0,
    541065232,
    16,
    16384,
    541065216,
    4210704,
    16384,
    4194320,
    536887312,
    0,
    541081600,
    536870912,
    4194320,
    536887312
  ];
  const spfunction7 = [
    2097152,
    69206018,
    67110914,
    0,
    2048,
    67110914,
    2099202,
    69208064,
    69208066,
    2097152,
    0,
    67108866,
    2,
    67108864,
    69206018,
    2050,
    67110912,
    2099202,
    2097154,
    67110912,
    67108866,
    69206016,
    69208064,
    2097154,
    69206016,
    2048,
    2050,
    69208066,
    2099200,
    2,
    67108864,
    2099200,
    67108864,
    2099200,
    2097152,
    67110914,
    67110914,
    69206018,
    69206018,
    2,
    2097154,
    67108864,
    67110912,
    2097152,
    69208064,
    2050,
    2099202,
    69208064,
    2050,
    67108866,
    69208066,
    69206016,
    2099200,
    0,
    2,
    69208066,
    0,
    2099202,
    69206016,
    2048,
    67108866,
    67110912,
    2048,
    2097154
  ];
  const spfunction8 = [
    268439616,
    4096,
    262144,
    268701760,
    268435456,
    268439616,
    64,
    268435456,
    262208,
    268697600,
    268701760,
    266240,
    268701696,
    266304,
    4096,
    64,
    268697600,
    268435520,
    268439552,
    4160,
    266240,
    262208,
    268697664,
    268701696,
    4160,
    0,
    0,
    268697664,
    268435520,
    268439552,
    266304,
    262144,
    266304,
    262144,
    268701696,
    4096,
    64,
    268697664,
    4096,
    266304,
    268439552,
    64,
    268435520,
    268697600,
    268697664,
    268435456,
    262144,
    268439616,
    0,
    268701760,
    262208,
    268435520,
    268697600,
    268439552,
    268439616,
    0,
    268701760,
    266240,
    266240,
    4160,
    4160,
    262208,
    268435456,
    268701696
  ];
  let m = 0;
  let i4;
  let j2;
  let temp;
  let right1;
  let right2;
  let left;
  let right;
  let looping;
  let endloop;
  let loopinc;
  let len = message.length;
  const iterations = keys4.length === 32 ? 3 : 9;
  if (iterations === 3) {
    looping = encrypt ? [0, 32, 2] : [30, -2, -2];
  } else {
    looping = encrypt ? [0, 32, 2, 62, 30, -2, 64, 96, 2] : [94, 62, -2, 32, 64, 2, 30, -2, -2];
  }
  if (encrypt) {
    message = desAddPadding(message);
    len = message.length;
  }
  let result2 = new Uint8Array(len);
  let k2 = 0;
  while (m < len) {
    left = message[m++] << 24 | message[m++] << 16 | message[m++] << 8 | message[m++];
    right = message[m++] << 24 | message[m++] << 16 | message[m++] << 8 | message[m++];
    temp = (left >>> 4 ^ right) & 252645135;
    right ^= temp;
    left ^= temp << 4;
    temp = (left >>> 16 ^ right) & 65535;
    right ^= temp;
    left ^= temp << 16;
    temp = (right >>> 2 ^ left) & 858993459;
    left ^= temp;
    right ^= temp << 2;
    temp = (right >>> 8 ^ left) & 16711935;
    left ^= temp;
    right ^= temp << 8;
    temp = (left >>> 1 ^ right) & 1431655765;
    right ^= temp;
    left ^= temp << 1;
    left = left << 1 | left >>> 31;
    right = right << 1 | right >>> 31;
    for (j2 = 0; j2 < iterations; j2 += 3) {
      endloop = looping[j2 + 1];
      loopinc = looping[j2 + 2];
      for (i4 = looping[j2]; i4 !== endloop; i4 += loopinc) {
        right1 = right ^ keys4[i4];
        right2 = (right >>> 4 | right << 28) ^ keys4[i4 + 1];
        temp = left;
        left = right;
        right = temp ^ (spfunction2[right1 >>> 24 & 63] | spfunction4[right1 >>> 16 & 63] | spfunction6[right1 >>> 8 & 63] | spfunction8[right1 & 63] | spfunction1[right2 >>> 24 & 63] | spfunction3[right2 >>> 16 & 63] | spfunction5[right2 >>> 8 & 63] | spfunction7[right2 & 63]);
      }
      temp = left;
      left = right;
      right = temp;
    }
    left = left >>> 1 | left << 31;
    right = right >>> 1 | right << 31;
    temp = (left >>> 1 ^ right) & 1431655765;
    right ^= temp;
    left ^= temp << 1;
    temp = (right >>> 8 ^ left) & 16711935;
    left ^= temp;
    right ^= temp << 8;
    temp = (right >>> 2 ^ left) & 858993459;
    left ^= temp;
    right ^= temp << 2;
    temp = (left >>> 16 ^ right) & 65535;
    right ^= temp;
    left ^= temp << 16;
    temp = (left >>> 4 ^ right) & 252645135;
    right ^= temp;
    left ^= temp << 4;
    result2[k2++] = left >>> 24;
    result2[k2++] = left >>> 16 & 255;
    result2[k2++] = left >>> 8 & 255;
    result2[k2++] = left & 255;
    result2[k2++] = right >>> 24;
    result2[k2++] = right >>> 16 & 255;
    result2[k2++] = right >>> 8 & 255;
    result2[k2++] = right & 255;
  }
  if (!encrypt) {
    result2 = desRemovePadding(result2);
  }
  return result2;
}
function desCreateKeys(key) {
  const pc2bytes0 = [
    0,
    4,
    536870912,
    536870916,
    65536,
    65540,
    536936448,
    536936452,
    512,
    516,
    536871424,
    536871428,
    66048,
    66052,
    536936960,
    536936964
  ];
  const pc2bytes1 = [
    0,
    1,
    1048576,
    1048577,
    67108864,
    67108865,
    68157440,
    68157441,
    256,
    257,
    1048832,
    1048833,
    67109120,
    67109121,
    68157696,
    68157697
  ];
  const pc2bytes2 = [
    0,
    8,
    2048,
    2056,
    16777216,
    16777224,
    16779264,
    16779272,
    0,
    8,
    2048,
    2056,
    16777216,
    16777224,
    16779264,
    16779272
  ];
  const pc2bytes3 = [
    0,
    2097152,
    134217728,
    136314880,
    8192,
    2105344,
    134225920,
    136323072,
    131072,
    2228224,
    134348800,
    136445952,
    139264,
    2236416,
    134356992,
    136454144
  ];
  const pc2bytes4 = [
    0,
    262144,
    16,
    262160,
    0,
    262144,
    16,
    262160,
    4096,
    266240,
    4112,
    266256,
    4096,
    266240,
    4112,
    266256
  ];
  const pc2bytes5 = [
    0,
    1024,
    32,
    1056,
    0,
    1024,
    32,
    1056,
    33554432,
    33555456,
    33554464,
    33555488,
    33554432,
    33555456,
    33554464,
    33555488
  ];
  const pc2bytes6 = [
    0,
    268435456,
    524288,
    268959744,
    2,
    268435458,
    524290,
    268959746,
    0,
    268435456,
    524288,
    268959744,
    2,
    268435458,
    524290,
    268959746
  ];
  const pc2bytes7 = [
    0,
    65536,
    2048,
    67584,
    536870912,
    536936448,
    536872960,
    536938496,
    131072,
    196608,
    133120,
    198656,
    537001984,
    537067520,
    537004032,
    537069568
  ];
  const pc2bytes8 = [
    0,
    262144,
    0,
    262144,
    2,
    262146,
    2,
    262146,
    33554432,
    33816576,
    33554432,
    33816576,
    33554434,
    33816578,
    33554434,
    33816578
  ];
  const pc2bytes9 = [
    0,
    268435456,
    8,
    268435464,
    0,
    268435456,
    8,
    268435464,
    1024,
    268436480,
    1032,
    268436488,
    1024,
    268436480,
    1032,
    268436488
  ];
  const pc2bytes10 = [
    0,
    32,
    0,
    32,
    1048576,
    1048608,
    1048576,
    1048608,
    8192,
    8224,
    8192,
    8224,
    1056768,
    1056800,
    1056768,
    1056800
  ];
  const pc2bytes11 = [
    0,
    16777216,
    512,
    16777728,
    2097152,
    18874368,
    2097664,
    18874880,
    67108864,
    83886080,
    67109376,
    83886592,
    69206016,
    85983232,
    69206528,
    85983744
  ];
  const pc2bytes12 = [
    0,
    4096,
    134217728,
    134221824,
    524288,
    528384,
    134742016,
    134746112,
    16,
    4112,
    134217744,
    134221840,
    524304,
    528400,
    134742032,
    134746128
  ];
  const pc2bytes13 = [0, 4, 256, 260, 0, 4, 256, 260, 1, 5, 257, 261, 1, 5, 257, 261];
  const iterations = key.length > 8 ? 3 : 1;
  const keys4 = new Array(32 * iterations);
  const shifts = [0, 0, 1, 1, 1, 1, 1, 1, 0, 1, 1, 1, 1, 1, 1, 0];
  let lefttemp;
  let righttemp;
  let m = 0;
  let n2 = 0;
  let temp;
  for (let j2 = 0; j2 < iterations; j2++) {
    let left = key[m++] << 24 | key[m++] << 16 | key[m++] << 8 | key[m++];
    let right = key[m++] << 24 | key[m++] << 16 | key[m++] << 8 | key[m++];
    temp = (left >>> 4 ^ right) & 252645135;
    right ^= temp;
    left ^= temp << 4;
    temp = (right >>> -16 ^ left) & 65535;
    left ^= temp;
    right ^= temp << -16;
    temp = (left >>> 2 ^ right) & 858993459;
    right ^= temp;
    left ^= temp << 2;
    temp = (right >>> -16 ^ left) & 65535;
    left ^= temp;
    right ^= temp << -16;
    temp = (left >>> 1 ^ right) & 1431655765;
    right ^= temp;
    left ^= temp << 1;
    temp = (right >>> 8 ^ left) & 16711935;
    left ^= temp;
    right ^= temp << 8;
    temp = (left >>> 1 ^ right) & 1431655765;
    right ^= temp;
    left ^= temp << 1;
    temp = left << 8 | right >>> 20 & 240;
    left = right << 24 | right << 8 & 16711680 | right >>> 8 & 65280 | right >>> 24 & 240;
    right = temp;
    for (let i4 = 0; i4 < shifts.length; i4++) {
      if (shifts[i4]) {
        left = left << 2 | left >>> 26;
        right = right << 2 | right >>> 26;
      } else {
        left = left << 1 | left >>> 27;
        right = right << 1 | right >>> 27;
      }
      left &= -15;
      right &= -15;
      lefttemp = pc2bytes0[left >>> 28] | pc2bytes1[left >>> 24 & 15] | pc2bytes2[left >>> 20 & 15] | pc2bytes3[left >>> 16 & 15] | pc2bytes4[left >>> 12 & 15] | pc2bytes5[left >>> 8 & 15] | pc2bytes6[left >>> 4 & 15];
      righttemp = pc2bytes7[right >>> 28] | pc2bytes8[right >>> 24 & 15] | pc2bytes9[right >>> 20 & 15] | pc2bytes10[right >>> 16 & 15] | pc2bytes11[right >>> 12 & 15] | pc2bytes12[right >>> 8 & 15] | pc2bytes13[right >>> 4 & 15];
      temp = (righttemp >>> 16 ^ lefttemp) & 65535;
      keys4[n2++] = lefttemp ^ temp;
      keys4[n2++] = righttemp ^ temp << 16;
    }
  }
  return keys4;
}
function desAddPadding(message, padding) {
  const padLength = 8 - message.length % 8;
  let pad4;
  if (padLength < 8) {
    pad4 = 0;
  } else if (padLength === 8) {
    return message;
  } else {
    throw new Error("des: invalid padding");
  }
  const paddedMessage = new Uint8Array(message.length + padLength);
  for (let i4 = 0; i4 < message.length; i4++) {
    paddedMessage[i4] = message[i4];
  }
  for (let j2 = 0; j2 < padLength; j2++) {
    paddedMessage[message.length + j2] = pad4;
  }
  return paddedMessage;
}
function desRemovePadding(message, padding) {
  let padLength = null;
  let pad4;
  {
    pad4 = 0;
  }
  if (!padLength) {
    padLength = 1;
    while (message[message.length - padLength] === pad4) {
      padLength++;
    }
    padLength--;
  }
  return message.subarray(0, message.length - padLength);
}
function TripleDES(key) {
  this.key = [];
  for (let i4 = 0; i4 < 3; i4++) {
    this.key.push(new Uint8Array(key.subarray(i4 * 8, i4 * 8 + 8)));
  }
  this.encrypt = function(block) {
    return des(desCreateKeys(this.key[2]), des(desCreateKeys(this.key[1]), des(desCreateKeys(this.key[0]), block, true, 0, null, null), false, 0, null, null), true);
  };
}
function OpenPGPSymEncCAST5() {
  this.BlockSize = 8;
  this.KeySize = 16;
  this.setKey = function(key) {
    this.masking = new Array(16);
    this.rotate = new Array(16);
    this.reset();
    if (key.length === this.KeySize) {
      this.keySchedule(key);
    } else {
      throw new Error("CAST-128: keys must be 16 bytes");
    }
    return true;
  };
  this.reset = function() {
    for (let i4 = 0; i4 < 16; i4++) {
      this.masking[i4] = 0;
      this.rotate[i4] = 0;
    }
  };
  this.getBlockSize = function() {
    return this.BlockSize;
  };
  this.encrypt = function(src2) {
    const dst = new Array(src2.length);
    for (let i4 = 0; i4 < src2.length; i4 += 8) {
      let l = src2[i4] << 24 | src2[i4 + 1] << 16 | src2[i4 + 2] << 8 | src2[i4 + 3];
      let r = src2[i4 + 4] << 24 | src2[i4 + 5] << 16 | src2[i4 + 6] << 8 | src2[i4 + 7];
      let t2;
      t2 = r;
      r = l ^ f1(r, this.masking[0], this.rotate[0]);
      l = t2;
      t2 = r;
      r = l ^ f2(r, this.masking[1], this.rotate[1]);
      l = t2;
      t2 = r;
      r = l ^ f3(r, this.masking[2], this.rotate[2]);
      l = t2;
      t2 = r;
      r = l ^ f1(r, this.masking[3], this.rotate[3]);
      l = t2;
      t2 = r;
      r = l ^ f2(r, this.masking[4], this.rotate[4]);
      l = t2;
      t2 = r;
      r = l ^ f3(r, this.masking[5], this.rotate[5]);
      l = t2;
      t2 = r;
      r = l ^ f1(r, this.masking[6], this.rotate[6]);
      l = t2;
      t2 = r;
      r = l ^ f2(r, this.masking[7], this.rotate[7]);
      l = t2;
      t2 = r;
      r = l ^ f3(r, this.masking[8], this.rotate[8]);
      l = t2;
      t2 = r;
      r = l ^ f1(r, this.masking[9], this.rotate[9]);
      l = t2;
      t2 = r;
      r = l ^ f2(r, this.masking[10], this.rotate[10]);
      l = t2;
      t2 = r;
      r = l ^ f3(r, this.masking[11], this.rotate[11]);
      l = t2;
      t2 = r;
      r = l ^ f1(r, this.masking[12], this.rotate[12]);
      l = t2;
      t2 = r;
      r = l ^ f2(r, this.masking[13], this.rotate[13]);
      l = t2;
      t2 = r;
      r = l ^ f3(r, this.masking[14], this.rotate[14]);
      l = t2;
      t2 = r;
      r = l ^ f1(r, this.masking[15], this.rotate[15]);
      l = t2;
      dst[i4] = r >>> 24 & 255;
      dst[i4 + 1] = r >>> 16 & 255;
      dst[i4 + 2] = r >>> 8 & 255;
      dst[i4 + 3] = r & 255;
      dst[i4 + 4] = l >>> 24 & 255;
      dst[i4 + 5] = l >>> 16 & 255;
      dst[i4 + 6] = l >>> 8 & 255;
      dst[i4 + 7] = l & 255;
    }
    return dst;
  };
  this.decrypt = function(src2) {
    const dst = new Array(src2.length);
    for (let i4 = 0; i4 < src2.length; i4 += 8) {
      let l = src2[i4] << 24 | src2[i4 + 1] << 16 | src2[i4 + 2] << 8 | src2[i4 + 3];
      let r = src2[i4 + 4] << 24 | src2[i4 + 5] << 16 | src2[i4 + 6] << 8 | src2[i4 + 7];
      let t2;
      t2 = r;
      r = l ^ f1(r, this.masking[15], this.rotate[15]);
      l = t2;
      t2 = r;
      r = l ^ f3(r, this.masking[14], this.rotate[14]);
      l = t2;
      t2 = r;
      r = l ^ f2(r, this.masking[13], this.rotate[13]);
      l = t2;
      t2 = r;
      r = l ^ f1(r, this.masking[12], this.rotate[12]);
      l = t2;
      t2 = r;
      r = l ^ f3(r, this.masking[11], this.rotate[11]);
      l = t2;
      t2 = r;
      r = l ^ f2(r, this.masking[10], this.rotate[10]);
      l = t2;
      t2 = r;
      r = l ^ f1(r, this.masking[9], this.rotate[9]);
      l = t2;
      t2 = r;
      r = l ^ f3(r, this.masking[8], this.rotate[8]);
      l = t2;
      t2 = r;
      r = l ^ f2(r, this.masking[7], this.rotate[7]);
      l = t2;
      t2 = r;
      r = l ^ f1(r, this.masking[6], this.rotate[6]);
      l = t2;
      t2 = r;
      r = l ^ f3(r, this.masking[5], this.rotate[5]);
      l = t2;
      t2 = r;
      r = l ^ f2(r, this.masking[4], this.rotate[4]);
      l = t2;
      t2 = r;
      r = l ^ f1(r, this.masking[3], this.rotate[3]);
      l = t2;
      t2 = r;
      r = l ^ f3(r, this.masking[2], this.rotate[2]);
      l = t2;
      t2 = r;
      r = l ^ f2(r, this.masking[1], this.rotate[1]);
      l = t2;
      t2 = r;
      r = l ^ f1(r, this.masking[0], this.rotate[0]);
      l = t2;
      dst[i4] = r >>> 24 & 255;
      dst[i4 + 1] = r >>> 16 & 255;
      dst[i4 + 2] = r >>> 8 & 255;
      dst[i4 + 3] = r & 255;
      dst[i4 + 4] = l >>> 24 & 255;
      dst[i4 + 5] = l >> 16 & 255;
      dst[i4 + 6] = l >> 8 & 255;
      dst[i4 + 7] = l & 255;
    }
    return dst;
  };
  const scheduleA = new Array(4);
  scheduleA[0] = new Array(4);
  scheduleA[0][0] = [4, 0, 13, 15, 12, 14, 8];
  scheduleA[0][1] = [5, 2, 16 + 0, 16 + 2, 16 + 1, 16 + 3, 10];
  scheduleA[0][2] = [6, 3, 16 + 7, 16 + 6, 16 + 5, 16 + 4, 9];
  scheduleA[0][3] = [7, 1, 16 + 10, 16 + 9, 16 + 11, 16 + 8, 11];
  scheduleA[1] = new Array(4);
  scheduleA[1][0] = [0, 6, 16 + 5, 16 + 7, 16 + 4, 16 + 6, 16 + 0];
  scheduleA[1][1] = [1, 4, 0, 2, 1, 3, 16 + 2];
  scheduleA[1][2] = [2, 5, 7, 6, 5, 4, 16 + 1];
  scheduleA[1][3] = [3, 7, 10, 9, 11, 8, 16 + 3];
  scheduleA[2] = new Array(4);
  scheduleA[2][0] = [4, 0, 13, 15, 12, 14, 8];
  scheduleA[2][1] = [5, 2, 16 + 0, 16 + 2, 16 + 1, 16 + 3, 10];
  scheduleA[2][2] = [6, 3, 16 + 7, 16 + 6, 16 + 5, 16 + 4, 9];
  scheduleA[2][3] = [7, 1, 16 + 10, 16 + 9, 16 + 11, 16 + 8, 11];
  scheduleA[3] = new Array(4);
  scheduleA[3][0] = [0, 6, 16 + 5, 16 + 7, 16 + 4, 16 + 6, 16 + 0];
  scheduleA[3][1] = [1, 4, 0, 2, 1, 3, 16 + 2];
  scheduleA[3][2] = [2, 5, 7, 6, 5, 4, 16 + 1];
  scheduleA[3][3] = [3, 7, 10, 9, 11, 8, 16 + 3];
  const scheduleB = new Array(4);
  scheduleB[0] = new Array(4);
  scheduleB[0][0] = [16 + 8, 16 + 9, 16 + 7, 16 + 6, 16 + 2];
  scheduleB[0][1] = [16 + 10, 16 + 11, 16 + 5, 16 + 4, 16 + 6];
  scheduleB[0][2] = [16 + 12, 16 + 13, 16 + 3, 16 + 2, 16 + 9];
  scheduleB[0][3] = [16 + 14, 16 + 15, 16 + 1, 16 + 0, 16 + 12];
  scheduleB[1] = new Array(4);
  scheduleB[1][0] = [3, 2, 12, 13, 8];
  scheduleB[1][1] = [1, 0, 14, 15, 13];
  scheduleB[1][2] = [7, 6, 8, 9, 3];
  scheduleB[1][3] = [5, 4, 10, 11, 7];
  scheduleB[2] = new Array(4);
  scheduleB[2][0] = [16 + 3, 16 + 2, 16 + 12, 16 + 13, 16 + 9];
  scheduleB[2][1] = [16 + 1, 16 + 0, 16 + 14, 16 + 15, 16 + 12];
  scheduleB[2][2] = [16 + 7, 16 + 6, 16 + 8, 16 + 9, 16 + 2];
  scheduleB[2][3] = [16 + 5, 16 + 4, 16 + 10, 16 + 11, 16 + 6];
  scheduleB[3] = new Array(4);
  scheduleB[3][0] = [8, 9, 7, 6, 3];
  scheduleB[3][1] = [10, 11, 5, 4, 7];
  scheduleB[3][2] = [12, 13, 3, 2, 8];
  scheduleB[3][3] = [14, 15, 1, 0, 13];
  this.keySchedule = function(inn) {
    const t2 = new Array(8);
    const k2 = new Array(32);
    let j2;
    for (let i4 = 0; i4 < 4; i4++) {
      j2 = i4 * 4;
      t2[i4] = inn[j2] << 24 | inn[j2 + 1] << 16 | inn[j2 + 2] << 8 | inn[j2 + 3];
    }
    const x3 = [6, 7, 4, 5];
    let ki = 0;
    let w;
    for (let half = 0; half < 2; half++) {
      for (let round = 0; round < 4; round++) {
        for (j2 = 0; j2 < 4; j2++) {
          const a2 = scheduleA[round][j2];
          w = t2[a2[1]];
          w ^= sBox[4][t2[a2[2] >>> 2] >>> 24 - 8 * (a2[2] & 3) & 255];
          w ^= sBox[5][t2[a2[3] >>> 2] >>> 24 - 8 * (a2[3] & 3) & 255];
          w ^= sBox[6][t2[a2[4] >>> 2] >>> 24 - 8 * (a2[4] & 3) & 255];
          w ^= sBox[7][t2[a2[5] >>> 2] >>> 24 - 8 * (a2[5] & 3) & 255];
          w ^= sBox[x3[j2]][t2[a2[6] >>> 2] >>> 24 - 8 * (a2[6] & 3) & 255];
          t2[a2[0]] = w;
        }
        for (j2 = 0; j2 < 4; j2++) {
          const b = scheduleB[round][j2];
          w = sBox[4][t2[b[0] >>> 2] >>> 24 - 8 * (b[0] & 3) & 255];
          w ^= sBox[5][t2[b[1] >>> 2] >>> 24 - 8 * (b[1] & 3) & 255];
          w ^= sBox[6][t2[b[2] >>> 2] >>> 24 - 8 * (b[2] & 3) & 255];
          w ^= sBox[7][t2[b[3] >>> 2] >>> 24 - 8 * (b[3] & 3) & 255];
          w ^= sBox[4 + j2][t2[b[4] >>> 2] >>> 24 - 8 * (b[4] & 3) & 255];
          k2[ki] = w;
          ki++;
        }
      }
    }
    for (let i4 = 0; i4 < 16; i4++) {
      this.masking[i4] = k2[i4];
      this.rotate[i4] = k2[16 + i4] & 31;
    }
  };
  function f1(d3, m, r) {
    const t2 = m + d3;
    const I3 = t2 << r | t2 >>> 32 - r;
    return (sBox[0][I3 >>> 24] ^ sBox[1][I3 >>> 16 & 255]) - sBox[2][I3 >>> 8 & 255] + sBox[3][I3 & 255];
  }
  function f2(d3, m, r) {
    const t2 = m ^ d3;
    const I3 = t2 << r | t2 >>> 32 - r;
    return sBox[0][I3 >>> 24] - sBox[1][I3 >>> 16 & 255] + sBox[2][I3 >>> 8 & 255] ^ sBox[3][I3 & 255];
  }
  function f3(d3, m, r) {
    const t2 = m - d3;
    const I3 = t2 << r | t2 >>> 32 - r;
    return (sBox[0][I3 >>> 24] + sBox[1][I3 >>> 16 & 255] ^ sBox[2][I3 >>> 8 & 255]) - sBox[3][I3 & 255];
  }
  const sBox = new Array(8);
  sBox[0] = [
    821772500,
    2678128395,
    1810681135,
    1059425402,
    505495343,
    2617265619,
    1610868032,
    3483355465,
    3218386727,
    2294005173,
    3791863952,
    2563806837,
    1852023008,
    365126098,
    3269944861,
    584384398,
    677919599,
    3229601881,
    4280515016,
    2002735330,
    1136869587,
    3744433750,
    2289869850,
    2731719981,
    2714362070,
    879511577,
    1639411079,
    575934255,
    717107937,
    2857637483,
    576097850,
    2731753936,
    1725645e3,
    2810460463,
    5111599,
    767152862,
    2543075244,
    1251459544,
    1383482551,
    3052681127,
    3089939183,
    3612463449,
    1878520045,
    1510570527,
    2189125840,
    2431448366,
    582008916,
    3163445557,
    1265446783,
    1354458274,
    3529918736,
    3202711853,
    3073581712,
    3912963487,
    3029263377,
    1275016285,
    4249207360,
    2905708351,
    3304509486,
    1442611557,
    3585198765,
    2712415662,
    2731849581,
    3248163920,
    2283946226,
    208555832,
    2766454743,
    1331405426,
    1447828783,
    3315356441,
    3108627284,
    2957404670,
    2981538698,
    3339933917,
    1669711173,
    286233437,
    1465092821,
    1782121619,
    3862771680,
    710211251,
    980974943,
    1651941557,
    430374111,
    2051154026,
    704238805,
    4128970897,
    3144820574,
    2857402727,
    948965521,
    3333752299,
    2227686284,
    718756367,
    2269778983,
    2731643755,
    718440111,
    2857816721,
    3616097120,
    1113355533,
    2478022182,
    410092745,
    1811985197,
    1944238868,
    2696854588,
    1415722873,
    1682284203,
    1060277122,
    1998114690,
    1503841958,
    82706478,
    2315155686,
    1068173648,
    845149890,
    2167947013,
    1768146376,
    1993038550,
    3566826697,
    3390574031,
    940016341,
    3355073782,
    2328040721,
    904371731,
    1205506512,
    4094660742,
    2816623006,
    825647681,
    85914773,
    2857843460,
    1249926541,
    1417871568,
    3287612,
    3211054559,
    3126306446,
    1975924523,
    1353700161,
    2814456437,
    2438597621,
    1800716203,
    722146342,
    2873936343,
    1151126914,
    4160483941,
    2877670899,
    458611604,
    2866078500,
    3483680063,
    770352098,
    2652916994,
    3367839148,
    3940505011,
    3585973912,
    3809620402,
    718646636,
    2504206814,
    2914927912,
    3631288169,
    2857486607,
    2860018678,
    575749918,
    2857478043,
    718488780,
    2069512688,
    3548183469,
    453416197,
    1106044049,
    3032691430,
    52586708,
    3378514636,
    3459808877,
    3211506028,
    1785789304,
    218356169,
    3571399134,
    3759170522,
    1194783844,
    1523787992,
    3007827094,
    1975193539,
    2555452411,
    1341901877,
    3045838698,
    3776907964,
    3217423946,
    2802510864,
    2889438986,
    1057244207,
    1636348243,
    3761863214,
    1462225785,
    2632663439,
    481089165,
    718503062,
    24497053,
    3332243209,
    3344655856,
    3655024856,
    3960371065,
    1195698900,
    2971415156,
    3710176158,
    2115785917,
    4027663609,
    3525578417,
    2524296189,
    2745972565,
    3564906415,
    1372086093,
    1452307862,
    2780501478,
    1476592880,
    3389271281,
    18495466,
    2378148571,
    901398090,
    891748256,
    3279637769,
    3157290713,
    2560960102,
    1447622437,
    4284372637,
    216884176,
    2086908623,
    1879786977,
    3588903153,
    2242455666,
    2938092967,
    3559082096,
    2810645491,
    758861177,
    1121993112,
    215018983,
    642190776,
    4169236812,
    1196255959,
    2081185372,
    3508738393,
    941322904,
    4124243163,
    2877523539,
    1848581667,
    2205260958,
    3180453958,
    2589345134,
    3694731276,
    550028657,
    2519456284,
    3789985535,
    2973870856,
    2093648313,
    443148163,
    46942275,
    2734146937,
    1117713533,
    1115362972,
    1523183689,
    3717140224,
    1551984063
  ];
  sBox[1] = [
    522195092,
    4010518363,
    1776537470,
    960447360,
    4267822970,
    4005896314,
    1435016340,
    1929119313,
    2913464185,
    1310552629,
    3579470798,
    3724818106,
    2579771631,
    1594623892,
    417127293,
    2715217907,
    2696228731,
    1508390405,
    3994398868,
    3925858569,
    3695444102,
    4019471449,
    3129199795,
    3770928635,
    3520741761,
    990456497,
    4187484609,
    2783367035,
    21106139,
    3840405339,
    631373633,
    3783325702,
    532942976,
    396095098,
    3548038825,
    4267192484,
    2564721535,
    2011709262,
    2039648873,
    620404603,
    3776170075,
    2898526339,
    3612357925,
    4159332703,
    1645490516,
    223693667,
    1567101217,
    3362177881,
    1029951347,
    3470931136,
    3570957959,
    1550265121,
    119497089,
    972513919,
    907948164,
    3840628539,
    1613718692,
    3594177948,
    465323573,
    2659255085,
    654439692,
    2575596212,
    2699288441,
    3127702412,
    277098644,
    624404830,
    4100943870,
    2717858591,
    546110314,
    2403699828,
    3655377447,
    1321679412,
    4236791657,
    1045293279,
    4010672264,
    895050893,
    2319792268,
    494945126,
    1914543101,
    2777056443,
    3894764339,
    2219737618,
    311263384,
    4275257268,
    3458730721,
    669096869,
    3584475730,
    3835122877,
    3319158237,
    3949359204,
    2005142349,
    2713102337,
    2228954793,
    3769984788,
    569394103,
    3855636576,
    1425027204,
    108000370,
    2736431443,
    3671869269,
    3043122623,
    1750473702,
    2211081108,
    762237499,
    3972989403,
    2798899386,
    3061857628,
    2943854345,
    867476300,
    964413654,
    1591880597,
    1594774276,
    2179821409,
    552026980,
    3026064248,
    3726140315,
    2283577634,
    3110545105,
    2152310760,
    582474363,
    1582640421,
    1383256631,
    2043843868,
    3322775884,
    1217180674,
    463797851,
    2763038571,
    480777679,
    2718707717,
    2289164131,
    3118346187,
    214354409,
    200212307,
    3810608407,
    3025414197,
    2674075964,
    3997296425,
    1847405948,
    1342460550,
    510035443,
    4080271814,
    815934613,
    833030224,
    1620250387,
    1945732119,
    2703661145,
    3966000196,
    1388869545,
    3456054182,
    2687178561,
    2092620194,
    562037615,
    1356438536,
    3409922145,
    3261847397,
    1688467115,
    2150901366,
    631725691,
    3840332284,
    549916902,
    3455104640,
    394546491,
    837744717,
    2114462948,
    751520235,
    2221554606,
    2415360136,
    3999097078,
    2063029875,
    803036379,
    2702586305,
    821456707,
    3019566164,
    360699898,
    4018502092,
    3511869016,
    3677355358,
    2402471449,
    812317050,
    49299192,
    2570164949,
    3259169295,
    2816732080,
    3331213574,
    3101303564,
    2156015656,
    3705598920,
    3546263921,
    143268808,
    3200304480,
    1638124008,
    3165189453,
    3341807610,
    578956953,
    2193977524,
    3638120073,
    2333881532,
    807278310,
    658237817,
    2969561766,
    1641658566,
    11683945,
    3086995007,
    148645947,
    1138423386,
    4158756760,
    1981396783,
    2401016740,
    3699783584,
    380097457,
    2680394679,
    2803068651,
    3334260286,
    441530178,
    4016580796,
    1375954390,
    761952171,
    891809099,
    2183123478,
    157052462,
    3683840763,
    1592404427,
    341349109,
    2438483839,
    1417898363,
    644327628,
    2233032776,
    2353769706,
    2201510100,
    220455161,
    1815641738,
    182899273,
    2995019788,
    3627381533,
    3702638151,
    2890684138,
    1052606899,
    588164016,
    1681439879,
    4038439418,
    2405343923,
    4229449282,
    167996282,
    1336969661,
    1688053129,
    2739224926,
    1543734051,
    1046297529,
    1138201970,
    2121126012,
    115334942,
    1819067631,
    1902159161,
    1941945968,
    2206692869,
    1159982321
  ];
  sBox[2] = [
    2381300288,
    637164959,
    3952098751,
    3893414151,
    1197506559,
    916448331,
    2350892612,
    2932787856,
    3199334847,
    4009478890,
    3905886544,
    1373570990,
    2450425862,
    4037870920,
    3778841987,
    2456817877,
    286293407,
    124026297,
    3001279700,
    1028597854,
    3115296800,
    4208886496,
    2691114635,
    2188540206,
    1430237888,
    1218109995,
    3572471700,
    308166588,
    570424558,
    2187009021,
    2455094765,
    307733056,
    1310360322,
    3135275007,
    1384269543,
    2388071438,
    863238079,
    2359263624,
    2801553128,
    3380786597,
    2831162807,
    1470087780,
    1728663345,
    4072488799,
    1090516929,
    532123132,
    2389430977,
    1132193179,
    2578464191,
    3051079243,
    1670234342,
    1434557849,
    2711078940,
    1241591150,
    3314043432,
    3435360113,
    3091448339,
    1812415473,
    2198440252,
    267246943,
    796911696,
    3619716990,
    38830015,
    1526438404,
    2806502096,
    374413614,
    2943401790,
    1489179520,
    1603809326,
    1920779204,
    168801282,
    260042626,
    2358705581,
    1563175598,
    2397674057,
    1356499128,
    2217211040,
    514611088,
    2037363785,
    2186468373,
    4022173083,
    2792511869,
    2913485016,
    1173701892,
    4200428547,
    3896427269,
    1334932762,
    2455136706,
    602925377,
    2835607854,
    1613172210,
    41346230,
    2499634548,
    2457437618,
    2188827595,
    41386358,
    4172255629,
    1313404830,
    2405527007,
    3801973774,
    2217704835,
    873260488,
    2528884354,
    2478092616,
    4012915883,
    2555359016,
    2006953883,
    2463913485,
    575479328,
    2218240648,
    2099895446,
    660001756,
    2341502190,
    3038761536,
    3888151779,
    3848713377,
    3286851934,
    1022894237,
    1620365795,
    3449594689,
    1551255054,
    15374395,
    3570825345,
    4249311020,
    4151111129,
    3181912732,
    310226346,
    1133119310,
    530038928,
    136043402,
    2476768958,
    3107506709,
    2544909567,
    1036173560,
    2367337196,
    1681395281,
    1758231547,
    3641649032,
    306774401,
    1575354324,
    3716085866,
    1990386196,
    3114533736,
    2455606671,
    1262092282,
    3124342505,
    2768229131,
    4210529083,
    1833535011,
    423410938,
    660763973,
    2187129978,
    1639812e3,
    3508421329,
    3467445492,
    310289298,
    272797111,
    2188552562,
    2456863912,
    310240523,
    677093832,
    1013118031,
    901835429,
    3892695601,
    1116285435,
    3036471170,
    1337354835,
    243122523,
    520626091,
    277223598,
    4244441197,
    4194248841,
    1766575121,
    594173102,
    316590669,
    742362309,
    3536858622,
    4176435350,
    3838792410,
    2501204839,
    1229605004,
    3115755532,
    1552908988,
    2312334149,
    979407927,
    3959474601,
    1148277331,
    176638793,
    3614686272,
    2083809052,
    40992502,
    1340822838,
    2731552767,
    3535757508,
    3560899520,
    1354035053,
    122129617,
    7215240,
    2732932949,
    3118912700,
    2718203926,
    2539075635,
    3609230695,
    3725561661,
    1928887091,
    2882293555,
    1988674909,
    2063640240,
    2491088897,
    1459647954,
    4189817080,
    2302804382,
    1113892351,
    2237858528,
    1927010603,
    4002880361,
    1856122846,
    1594404395,
    2944033133,
    3855189863,
    3474975698,
    1643104450,
    4054590833,
    3431086530,
    1730235576,
    2984608721,
    3084664418,
    2131803598,
    4178205752,
    267404349,
    1617849798,
    1616132681,
    1462223176,
    736725533,
    2327058232,
    551665188,
    2945899023,
    1749386277,
    2575514597,
    1611482493,
    674206544,
    2201269090,
    3642560800,
    728599968,
    1680547377,
    2620414464,
    1388111496,
    453204106,
    4156223445,
    1094905244,
    2754698257,
    2201108165,
    3757000246,
    2704524545,
    3922940700,
    3996465027
  ];
  sBox[3] = [
    2645754912,
    532081118,
    2814278639,
    3530793624,
    1246723035,
    1689095255,
    2236679235,
    4194438865,
    2116582143,
    3859789411,
    157234593,
    2045505824,
    4245003587,
    1687664561,
    4083425123,
    605965023,
    672431967,
    1336064205,
    3376611392,
    214114848,
    4258466608,
    3232053071,
    489488601,
    605322005,
    3998028058,
    264917351,
    1912574028,
    756637694,
    436560991,
    202637054,
    135989450,
    85393697,
    2152923392,
    3896401662,
    2895836408,
    2145855233,
    3535335007,
    115294817,
    3147733898,
    1922296357,
    3464822751,
    4117858305,
    1037454084,
    2725193275,
    2127856640,
    1417604070,
    1148013728,
    1827919605,
    642362335,
    2929772533,
    909348033,
    1346338451,
    3547799649,
    297154785,
    1917849091,
    4161712827,
    2883604526,
    3968694238,
    1469521537,
    3780077382,
    3375584256,
    1763717519,
    136166297,
    4290970789,
    1295325189,
    2134727907,
    2798151366,
    1566297257,
    3672928234,
    2677174161,
    2672173615,
    965822077,
    2780786062,
    289653839,
    1133871874,
    3491843819,
    35685304,
    1068898316,
    418943774,
    672553190,
    642281022,
    2346158704,
    1954014401,
    3037126780,
    4079815205,
    2030668546,
    3840588673,
    672283427,
    1776201016,
    359975446,
    3750173538,
    555499703,
    2769985273,
    1324923,
    69110472,
    152125443,
    3176785106,
    3822147285,
    1340634837,
    798073664,
    1434183902,
    15393959,
    216384236,
    1303690150,
    3881221631,
    3711134124,
    3960975413,
    106373927,
    2578434224,
    1455997841,
    1801814300,
    1578393881,
    1854262133,
    3188178946,
    3258078583,
    2302670060,
    1539295533,
    3505142565,
    3078625975,
    2372746020,
    549938159,
    3278284284,
    2620926080,
    181285381,
    2865321098,
    3970029511,
    68876850,
    488006234,
    1728155692,
    2608167508,
    836007927,
    2435231793,
    919367643,
    3339422534,
    3655756360,
    1457871481,
    40520939,
    1380155135,
    797931188,
    234455205,
    2255801827,
    3990488299,
    397000196,
    739833055,
    3077865373,
    2871719860,
    4022553888,
    772369276,
    390177364,
    3853951029,
    557662966,
    740064294,
    1640166671,
    1699928825,
    3535942136,
    622006121,
    3625353122,
    68743880,
    1742502,
    219489963,
    1664179233,
    1577743084,
    1236991741,
    410585305,
    2366487942,
    823226535,
    1050371084,
    3426619607,
    3586839478,
    212779912,
    4147118561,
    1819446015,
    1911218849,
    530248558,
    3486241071,
    3252585495,
    2886188651,
    3410272728,
    2342195030,
    20547779,
    2982490058,
    3032363469,
    3631753222,
    312714466,
    1870521650,
    1493008054,
    3491686656,
    615382978,
    4103671749,
    2534517445,
    1932181,
    2196105170,
    278426614,
    6369430,
    3274544417,
    2913018367,
    697336853,
    2143000447,
    2946413531,
    701099306,
    1558357093,
    2805003052,
    3500818408,
    2321334417,
    3567135975,
    216290473,
    3591032198,
    23009561,
    1996984579,
    3735042806,
    2024298078,
    3739440863,
    569400510,
    2339758983,
    3016033873,
    3097871343,
    3639523026,
    3844324983,
    3256173865,
    795471839,
    2951117563,
    4101031090,
    4091603803,
    3603732598,
    971261452,
    534414648,
    428311343,
    3389027175,
    2844869880,
    694888862,
    1227866773,
    2456207019,
    3043454569,
    2614353370,
    3749578031,
    3676663836,
    459166190,
    4132644070,
    1794958188,
    51825668,
    2252611902,
    3084671440,
    2036672799,
    3436641603,
    1099053433,
    2469121526,
    3059204941,
    1323291266,
    2061838604,
    1018778475,
    2233344254,
    2553501054,
    334295216,
    3556750194,
    1065731521,
    183467730
  ];
  sBox[4] = [
    2127105028,
    745436345,
    2601412319,
    2788391185,
    3093987327,
    500390133,
    1155374404,
    389092991,
    150729210,
    3891597772,
    3523549952,
    1935325696,
    716645080,
    946045387,
    2901812282,
    1774124410,
    3869435775,
    4039581901,
    3293136918,
    3438657920,
    948246080,
    363898952,
    3867875531,
    1286266623,
    1598556673,
    68334250,
    630723836,
    1104211938,
    1312863373,
    613332731,
    2377784574,
    1101634306,
    441780740,
    3129959883,
    1917973735,
    2510624549,
    3238456535,
    2544211978,
    3308894634,
    1299840618,
    4076074851,
    1756332096,
    3977027158,
    297047435,
    3790297736,
    2265573040,
    3621810518,
    1311375015,
    1667687725,
    47300608,
    3299642885,
    2474112369,
    201668394,
    1468347890,
    576830978,
    3594690761,
    3742605952,
    1958042578,
    1747032512,
    3558991340,
    1408974056,
    3366841779,
    682131401,
    1033214337,
    1545599232,
    4265137049,
    206503691,
    103024618,
    2855227313,
    1337551222,
    2428998917,
    2963842932,
    4015366655,
    3852247746,
    2796956967,
    3865723491,
    3747938335,
    247794022,
    3755824572,
    702416469,
    2434691994,
    397379957,
    851939612,
    2314769512,
    218229120,
    1380406772,
    62274761,
    214451378,
    3170103466,
    2276210409,
    3845813286,
    28563499,
    446592073,
    1693330814,
    3453727194,
    29968656,
    3093872512,
    220656637,
    2470637031,
    77972100,
    1667708854,
    1358280214,
    4064765667,
    2395616961,
    325977563,
    4277240721,
    4220025399,
    3605526484,
    3355147721,
    811859167,
    3069544926,
    3962126810,
    652502677,
    3075892249,
    4132761541,
    3498924215,
    1217549313,
    3250244479,
    3858715919,
    3053989961,
    1538642152,
    2279026266,
    2875879137,
    574252750,
    3324769229,
    2651358713,
    1758150215,
    141295887,
    2719868960,
    3515574750,
    4093007735,
    4194485238,
    1082055363,
    3417560400,
    395511885,
    2966884026,
    179534037,
    3646028556,
    3738688086,
    1092926436,
    2496269142,
    257381841,
    3772900718,
    1636087230,
    1477059743,
    2499234752,
    3811018894,
    2675660129,
    3285975680,
    90732309,
    1684827095,
    1150307763,
    1723134115,
    3237045386,
    1769919919,
    1240018934,
    815675215,
    750138730,
    2239792499,
    1234303040,
    1995484674,
    138143821,
    675421338,
    1145607174,
    1936608440,
    3238603024,
    2345230278,
    2105974004,
    323969391,
    779555213,
    3004902369,
    2861610098,
    1017501463,
    2098600890,
    2628620304,
    2940611490,
    2682542546,
    1171473753,
    3656571411,
    3687208071,
    4091869518,
    393037935,
    159126506,
    1662887367,
    1147106178,
    391545844,
    3452332695,
    1891500680,
    3016609650,
    1851642611,
    546529401,
    1167818917,
    3194020571,
    2848076033,
    3953471836,
    575554290,
    475796850,
    4134673196,
    450035699,
    2351251534,
    844027695,
    1080539133,
    86184846,
    1554234488,
    3692025454,
    1972511363,
    2018339607,
    1491841390,
    1141460869,
    1061690759,
    4244549243,
    2008416118,
    2351104703,
    2868147542,
    1598468138,
    722020353,
    1027143159,
    212344630,
    1387219594,
    1725294528,
    3745187956,
    2500153616,
    458938280,
    4129215917,
    1828119673,
    544571780,
    3503225445,
    2297937496,
    1241802790,
    267843827,
    2694610800,
    1397140384,
    1558801448,
    3782667683,
    1806446719,
    929573330,
    2234912681,
    400817706,
    616011623,
    4121520928,
    3603768725,
    1761550015,
    1968522284,
    4053731006,
    4192232858,
    4005120285,
    872482584,
    3140537016,
    3894607381,
    2287405443,
    1963876937,
    3663887957,
    1584857e3,
    2975024454,
    1833426440,
    4025083860
  ];
  sBox[5] = [
    4143615901,
    749497569,
    1285769319,
    3795025788,
    2514159847,
    23610292,
    3974978748,
    844452780,
    3214870880,
    3751928557,
    2213566365,
    1676510905,
    448177848,
    3730751033,
    4086298418,
    2307502392,
    871450977,
    3222878141,
    4110862042,
    3831651966,
    2735270553,
    1310974780,
    2043402188,
    1218528103,
    2736035353,
    4274605013,
    2702448458,
    3936360550,
    2693061421,
    162023535,
    2827510090,
    687910808,
    23484817,
    3784910947,
    3371371616,
    779677500,
    3503626546,
    3473927188,
    4157212626,
    3500679282,
    4248902014,
    2466621104,
    3899384794,
    1958663117,
    925738300,
    1283408968,
    3669349440,
    1840910019,
    137959847,
    2679828185,
    1239142320,
    1315376211,
    1547541505,
    1690155329,
    739140458,
    3128809933,
    3933172616,
    3876308834,
    905091803,
    1548541325,
    4040461708,
    3095483362,
    144808038,
    451078856,
    676114313,
    2861728291,
    2469707347,
    993665471,
    373509091,
    2599041286,
    4025009006,
    4170239449,
    2149739950,
    3275793571,
    3749616649,
    2794760199,
    1534877388,
    572371878,
    2590613551,
    1753320020,
    3467782511,
    1405125690,
    4270405205,
    633333386,
    3026356924,
    3475123903,
    632057672,
    2846462855,
    1404951397,
    3882875879,
    3915906424,
    195638627,
    2385783745,
    3902872553,
    1233155085,
    3355999740,
    2380578713,
    2702246304,
    2144565621,
    3663341248,
    3894384975,
    2502479241,
    4248018925,
    3094885567,
    1594115437,
    572884632,
    3385116731,
    767645374,
    1331858858,
    1475698373,
    3793881790,
    3532746431,
    1321687957,
    619889600,
    1121017241,
    3440213920,
    2070816767,
    2833025776,
    1933951238,
    4095615791,
    890643334,
    3874130214,
    859025556,
    360630002,
    925594799,
    1764062180,
    3920222280,
    4078305929,
    979562269,
    2810700344,
    4087740022,
    1949714515,
    546639971,
    1165388173,
    3069891591,
    1495988560,
    922170659,
    1291546247,
    2107952832,
    1813327274,
    3406010024,
    3306028637,
    4241950635,
    153207855,
    2313154747,
    1608695416,
    1150242611,
    1967526857,
    721801357,
    1220138373,
    3691287617,
    3356069787,
    2112743302,
    3281662835,
    1111556101,
    1778980689,
    250857638,
    2298507990,
    673216130,
    2846488510,
    3207751581,
    3562756981,
    3008625920,
    3417367384,
    2198807050,
    529510932,
    3547516680,
    3426503187,
    2364944742,
    102533054,
    2294910856,
    1617093527,
    1204784762,
    3066581635,
    1019391227,
    1069574518,
    1317995090,
    1691889997,
    3661132003,
    510022745,
    3238594800,
    1362108837,
    1817929911,
    2184153760,
    805817662,
    1953603311,
    3699844737,
    120799444,
    2118332377,
    207536705,
    2282301548,
    4120041617,
    145305846,
    2508124933,
    3086745533,
    3261524335,
    1877257368,
    2977164480,
    3160454186,
    2503252186,
    4221677074,
    759945014,
    254147243,
    2767453419,
    3801518371,
    629083197,
    2471014217,
    907280572,
    3900796746,
    940896768,
    2751021123,
    2625262786,
    3161476951,
    3661752313,
    3260732218,
    1425318020,
    2977912069,
    1496677566,
    3988592072,
    2140652971,
    3126511541,
    3069632175,
    977771578,
    1392695845,
    1698528874,
    1411812681,
    1369733098,
    1343739227,
    3620887944,
    1142123638,
    67414216,
    3102056737,
    3088749194,
    1626167401,
    2546293654,
    3941374235,
    697522451,
    33404913,
    143560186,
    2595682037,
    994885535,
    1247667115,
    3859094837,
    2699155541,
    3547024625,
    4114935275,
    2968073508,
    3199963069,
    2732024527,
    1237921620,
    951448369,
    1898488916,
    1211705605,
    2790989240,
    2233243581,
    3598044975
  ];
  sBox[6] = [
    2246066201,
    858518887,
    1714274303,
    3485882003,
    713916271,
    2879113490,
    3730835617,
    539548191,
    36158695,
    1298409750,
    419087104,
    1358007170,
    749914897,
    2989680476,
    1261868530,
    2995193822,
    2690628854,
    3443622377,
    3780124940,
    3796824509,
    2976433025,
    4259637129,
    1551479e3,
    512490819,
    1296650241,
    951993153,
    2436689437,
    2460458047,
    144139966,
    3136204276,
    310820559,
    3068840729,
    643875328,
    1969602020,
    1680088954,
    2185813161,
    3283332454,
    672358534,
    198762408,
    896343282,
    276269502,
    3014846926,
    84060815,
    197145886,
    376173866,
    3943890818,
    3813173521,
    3545068822,
    1316698879,
    1598252827,
    2633424951,
    1233235075,
    859989710,
    2358460855,
    3503838400,
    3409603720,
    1203513385,
    1193654839,
    2792018475,
    2060853022,
    207403770,
    1144516871,
    3068631394,
    1121114134,
    177607304,
    3785736302,
    326409831,
    1929119770,
    2983279095,
    4183308101,
    3474579288,
    3200513878,
    3228482096,
    119610148,
    1170376745,
    3378393471,
    3163473169,
    951863017,
    3337026068,
    3135789130,
    2907618374,
    1183797387,
    2015970143,
    4045674555,
    2182986399,
    2952138740,
    3928772205,
    384012900,
    2454997643,
    10178499,
    2879818989,
    2596892536,
    111523738,
    2995089006,
    451689641,
    3196290696,
    235406569,
    1441906262,
    3890558523,
    3013735005,
    4158569349,
    1644036924,
    376726067,
    1006849064,
    3664579700,
    2041234796,
    1021632941,
    1374734338,
    2566452058,
    371631263,
    4007144233,
    490221539,
    206551450,
    3140638584,
    1053219195,
    1853335209,
    3412429660,
    3562156231,
    735133835,
    1623211703,
    3104214392,
    2738312436,
    4096837757,
    3366392578,
    3110964274,
    3956598718,
    3196820781,
    2038037254,
    3877786376,
    2339753847,
    300912036,
    3766732888,
    2372630639,
    1516443558,
    4200396704,
    1574567987,
    4069441456,
    4122592016,
    2699739776,
    146372218,
    2748961456,
    2043888151,
    35287437,
    2596680554,
    655490400,
    1132482787,
    110692520,
    1031794116,
    2188192751,
    1324057718,
    1217253157,
    919197030,
    686247489,
    3261139658,
    1028237775,
    3135486431,
    3059715558,
    2460921700,
    986174950,
    2661811465,
    4062904701,
    2752986992,
    3709736643,
    367056889,
    1353824391,
    731860949,
    1650113154,
    1778481506,
    784341916,
    357075625,
    3608602432,
    1074092588,
    2480052770,
    3811426202,
    92751289,
    877911070,
    3600361838,
    1231880047,
    480201094,
    3756190983,
    3094495953,
    434011822,
    87971354,
    363687820,
    1717726236,
    1901380172,
    3926403882,
    2481662265,
    400339184,
    1490350766,
    2661455099,
    1389319756,
    2558787174,
    784598401,
    1983468483,
    30828846,
    3550527752,
    2716276238,
    3841122214,
    1765724805,
    1955612312,
    1277890269,
    1333098070,
    1564029816,
    2704417615,
    1026694237,
    3287671188,
    1260819201,
    3349086767,
    1016692350,
    1582273796,
    1073413053,
    1995943182,
    694588404,
    1025494639,
    3323872702,
    3551898420,
    4146854327,
    453260480,
    1316140391,
    1435673405,
    3038941953,
    3486689407,
    1622062951,
    403978347,
    817677117,
    950059133,
    4246079218,
    3278066075,
    1486738320,
    1417279718,
    481875527,
    2549965225,
    3933690356,
    760697757,
    1452955855,
    3897451437,
    1177426808,
    1702951038,
    4085348628,
    2447005172,
    1084371187,
    3516436277,
    3068336338,
    1073369276,
    1027665953,
    3284188590,
    1230553676,
    1368340146,
    2226246512,
    267243139,
    2274220762,
    4070734279,
    2497715176,
    2423353163,
    2504755875
  ];
  sBox[7] = [
    3793104909,
    3151888380,
    2817252029,
    895778965,
    2005530807,
    3871412763,
    237245952,
    86829237,
    296341424,
    3851759377,
    3974600970,
    2475086196,
    709006108,
    1994621201,
    2972577594,
    937287164,
    3734691505,
    168608556,
    3189338153,
    2225080640,
    3139713551,
    3033610191,
    3025041904,
    77524477,
    185966941,
    1208824168,
    2344345178,
    1721625922,
    3354191921,
    1066374631,
    1927223579,
    1971335949,
    2483503697,
    1551748602,
    2881383779,
    2856329572,
    3003241482,
    48746954,
    1398218158,
    2050065058,
    313056748,
    4255789917,
    393167848,
    1912293076,
    940740642,
    3465845460,
    3091687853,
    2522601570,
    2197016661,
    1727764327,
    364383054,
    492521376,
    1291706479,
    3264136376,
    1474851438,
    1685747964,
    2575719748,
    1619776915,
    1814040067,
    970743798,
    1561002147,
    2925768690,
    2123093554,
    1880132620,
    3151188041,
    697884420,
    2550985770,
    2607674513,
    2659114323,
    110200136,
    1489731079,
    997519150,
    1378877361,
    3527870668,
    478029773,
    2766872923,
    1022481122,
    431258168,
    1112503832,
    897933369,
    2635587303,
    669726182,
    3383752315,
    918222264,
    163866573,
    3246985393,
    3776823163,
    114105080,
    1903216136,
    761148244,
    3571337562,
    1690750982,
    3166750252,
    1037045171,
    1888456500,
    2010454850,
    642736655,
    616092351,
    365016990,
    1185228132,
    4174898510,
    1043824992,
    2023083429,
    2241598885,
    3863320456,
    3279669087,
    3674716684,
    108438443,
    2132974366,
    830746235,
    606445527,
    4173263986,
    2204105912,
    1844756978,
    2532684181,
    4245352700,
    2969441100,
    3796921661,
    1335562986,
    4061524517,
    2720232303,
    2679424040,
    634407289,
    885462008,
    3294724487,
    3933892248,
    2094100220,
    339117932,
    4048830727,
    3202280980,
    1458155303,
    2689246273,
    1022871705,
    2464987878,
    3714515309,
    353796843,
    2822958815,
    4256850100,
    4052777845,
    551748367,
    618185374,
    3778635579,
    4020649912,
    1904685140,
    3069366075,
    2670879810,
    3407193292,
    2954511620,
    4058283405,
    2219449317,
    3135758300,
    1120655984,
    3447565834,
    1474845562,
    3577699062,
    550456716,
    3466908712,
    2043752612,
    881257467,
    869518812,
    2005220179,
    938474677,
    3305539448,
    3850417126,
    1315485940,
    3318264702,
    226533026,
    965733244,
    321539988,
    1136104718,
    804158748,
    573969341,
    3708209826,
    937399083,
    3290727049,
    2901666755,
    1461057207,
    4013193437,
    4066861423,
    3242773476,
    2421326174,
    1581322155,
    3028952165,
    786071460,
    3900391652,
    3918438532,
    1485433313,
    4023619836,
    3708277595,
    3678951060,
    953673138,
    1467089153,
    1930354364,
    1533292819,
    2492563023,
    1346121658,
    1685000834,
    1965281866,
    3765933717,
    4190206607,
    2052792609,
    3515332758,
    690371149,
    3125873887,
    2180283551,
    2903598061,
    3933952357,
    436236910,
    289419410,
    14314871,
    1242357089,
    2904507907,
    1616633776,
    2666382180,
    585885352,
    3471299210,
    2699507360,
    1432659641,
    277164553,
    3354103607,
    770115018,
    2303809295,
    3741942315,
    3177781868,
    2853364978,
    2269453327,
    3774259834,
    987383833,
    1290892879,
    225909803,
    1741533526,
    890078084,
    1496906255,
    1111072499,
    916028167,
    243534141,
    1252605537,
    2204162171,
    531204876,
    290011180,
    3916834213,
    102027703,
    237315147,
    209093447,
    1486785922,
    220223953,
    2758195998,
    4175039106,
    82940208,
    3127791296,
    2569425252,
    518464269,
    1353887104,
    3941492737,
    2377294467,
    3935040926
  ];
}
function CAST5(key) {
  this.cast5 = new OpenPGPSymEncCAST5();
  this.cast5.setKey(key);
  this.encrypt = function(block) {
    return this.cast5.encrypt(block);
  };
}
function rotw(w, n2) {
  return (w << n2 | w >>> 32 - n2) & MAXINT;
}
function getW(a2, i4) {
  return a2[i4] | a2[i4 + 1] << 8 | a2[i4 + 2] << 16 | a2[i4 + 3] << 24;
}
function setW(a2, i4, w) {
  a2.splice(i4, 4, w & 255, w >>> 8 & 255, w >>> 16 & 255, w >>> 24 & 255);
}
function getB(x3, n2) {
  return x3 >>> n2 * 8 & 255;
}
function createTwofish() {
  let keyBytes = null;
  let dataBytes = null;
  let dataOffset = -1;
  let tfsKey = [];
  let tfsM = [
    [],
    [],
    [],
    []
  ];
  function tfsInit(key) {
    keyBytes = key;
    let i4;
    let a2;
    let b;
    let c3;
    let d3;
    const meKey = [];
    const moKey = [];
    const inKey = [];
    let kLen;
    const sKey = [];
    let f01;
    let f5b;
    let fef;
    const q0 = [
      [8, 1, 7, 13, 6, 15, 3, 2, 0, 11, 5, 9, 14, 12, 10, 4],
      [2, 8, 11, 13, 15, 7, 6, 14, 3, 1, 9, 4, 0, 10, 12, 5]
    ];
    const q1 = [
      [14, 12, 11, 8, 1, 2, 3, 5, 15, 4, 10, 6, 7, 0, 9, 13],
      [1, 14, 2, 11, 4, 12, 3, 7, 6, 13, 10, 5, 15, 9, 0, 8]
    ];
    const q2 = [
      [11, 10, 5, 14, 6, 13, 9, 0, 12, 8, 15, 3, 2, 4, 7, 1],
      [4, 12, 7, 5, 1, 6, 9, 10, 0, 14, 13, 8, 2, 11, 3, 15]
    ];
    const q3 = [
      [13, 7, 15, 4, 1, 2, 6, 14, 9, 11, 3, 0, 8, 5, 12, 10],
      [11, 9, 5, 1, 12, 3, 13, 14, 6, 4, 7, 15, 2, 0, 8, 10]
    ];
    const ror4 = [0, 8, 1, 9, 2, 10, 3, 11, 4, 12, 5, 13, 6, 14, 7, 15];
    const ashx = [0, 9, 2, 11, 4, 13, 6, 15, 8, 1, 10, 3, 12, 5, 14, 7];
    const q = [
      [],
      []
    ];
    const m = [
      [],
      [],
      [],
      []
    ];
    function ffm5b(x3) {
      return x3 ^ x3 >> 2 ^ [0, 90, 180, 238][x3 & 3];
    }
    function ffmEf(x3) {
      return x3 ^ x3 >> 1 ^ x3 >> 2 ^ [0, 238, 180, 90][x3 & 3];
    }
    function mdsRem(p, q4) {
      let i5;
      let t2;
      let u2;
      for (i5 = 0; i5 < 8; i5++) {
        t2 = q4 >>> 24;
        q4 = q4 << 8 & MAXINT | p >>> 24;
        p = p << 8 & MAXINT;
        u2 = t2 << 1;
        if (t2 & 128) {
          u2 ^= 333;
        }
        q4 ^= t2 ^ u2 << 16;
        u2 ^= t2 >>> 1;
        if (t2 & 1) {
          u2 ^= 166;
        }
        q4 ^= u2 << 24 | u2 << 8;
      }
      return q4;
    }
    function qp(n2, x3) {
      const a3 = x3 >> 4;
      const b2 = x3 & 15;
      const c4 = q0[n2][a3 ^ b2];
      const d4 = q1[n2][ror4[b2] ^ ashx[a3]];
      return q3[n2][ror4[d4] ^ ashx[c4]] << 4 | q2[n2][c4 ^ d4];
    }
    function hFun(x3, key2) {
      let a3 = getB(x3, 0);
      let b2 = getB(x3, 1);
      let c4 = getB(x3, 2);
      let d4 = getB(x3, 3);
      switch (kLen) {
        case 4:
          a3 = q[1][a3] ^ getB(key2[3], 0);
          b2 = q[0][b2] ^ getB(key2[3], 1);
          c4 = q[0][c4] ^ getB(key2[3], 2);
          d4 = q[1][d4] ^ getB(key2[3], 3);
        // eslint-disable-next-line no-fallthrough
        case 3:
          a3 = q[1][a3] ^ getB(key2[2], 0);
          b2 = q[1][b2] ^ getB(key2[2], 1);
          c4 = q[0][c4] ^ getB(key2[2], 2);
          d4 = q[0][d4] ^ getB(key2[2], 3);
        // eslint-disable-next-line no-fallthrough
        case 2:
          a3 = q[0][q[0][a3] ^ getB(key2[1], 0)] ^ getB(key2[0], 0);
          b2 = q[0][q[1][b2] ^ getB(key2[1], 1)] ^ getB(key2[0], 1);
          c4 = q[1][q[0][c4] ^ getB(key2[1], 2)] ^ getB(key2[0], 2);
          d4 = q[1][q[1][d4] ^ getB(key2[1], 3)] ^ getB(key2[0], 3);
      }
      return m[0][a3] ^ m[1][b2] ^ m[2][c4] ^ m[3][d4];
    }
    keyBytes = keyBytes.slice(0, 32);
    i4 = keyBytes.length;
    while (i4 !== 16 && i4 !== 24 && i4 !== 32) {
      keyBytes[i4++] = 0;
    }
    for (i4 = 0; i4 < keyBytes.length; i4 += 4) {
      inKey[i4 >> 2] = getW(keyBytes, i4);
    }
    for (i4 = 0; i4 < 256; i4++) {
      q[0][i4] = qp(0, i4);
      q[1][i4] = qp(1, i4);
    }
    for (i4 = 0; i4 < 256; i4++) {
      f01 = q[1][i4];
      f5b = ffm5b(f01);
      fef = ffmEf(f01);
      m[0][i4] = f01 + (f5b << 8) + (fef << 16) + (fef << 24);
      m[2][i4] = f5b + (fef << 8) + (f01 << 16) + (fef << 24);
      f01 = q[0][i4];
      f5b = ffm5b(f01);
      fef = ffmEf(f01);
      m[1][i4] = fef + (fef << 8) + (f5b << 16) + (f01 << 24);
      m[3][i4] = f5b + (f01 << 8) + (fef << 16) + (f5b << 24);
    }
    kLen = inKey.length / 2;
    for (i4 = 0; i4 < kLen; i4++) {
      a2 = inKey[i4 + i4];
      meKey[i4] = a2;
      b = inKey[i4 + i4 + 1];
      moKey[i4] = b;
      sKey[kLen - i4 - 1] = mdsRem(a2, b);
    }
    for (i4 = 0; i4 < 40; i4 += 2) {
      a2 = 16843009 * i4;
      b = a2 + 16843009;
      a2 = hFun(a2, meKey);
      b = rotw(hFun(b, moKey), 8);
      tfsKey[i4] = a2 + b & MAXINT;
      tfsKey[i4 + 1] = rotw(a2 + 2 * b, 9);
    }
    for (i4 = 0; i4 < 256; i4++) {
      a2 = b = c3 = d3 = i4;
      switch (kLen) {
        case 4:
          a2 = q[1][a2] ^ getB(sKey[3], 0);
          b = q[0][b] ^ getB(sKey[3], 1);
          c3 = q[0][c3] ^ getB(sKey[3], 2);
          d3 = q[1][d3] ^ getB(sKey[3], 3);
        // eslint-disable-next-line no-fallthrough
        case 3:
          a2 = q[1][a2] ^ getB(sKey[2], 0);
          b = q[1][b] ^ getB(sKey[2], 1);
          c3 = q[0][c3] ^ getB(sKey[2], 2);
          d3 = q[0][d3] ^ getB(sKey[2], 3);
        // eslint-disable-next-line no-fallthrough
        case 2:
          tfsM[0][i4] = m[0][q[0][q[0][a2] ^ getB(sKey[1], 0)] ^ getB(sKey[0], 0)];
          tfsM[1][i4] = m[1][q[0][q[1][b] ^ getB(sKey[1], 1)] ^ getB(sKey[0], 1)];
          tfsM[2][i4] = m[2][q[1][q[0][c3] ^ getB(sKey[1], 2)] ^ getB(sKey[0], 2)];
          tfsM[3][i4] = m[3][q[1][q[1][d3] ^ getB(sKey[1], 3)] ^ getB(sKey[0], 3)];
      }
    }
  }
  function tfsG0(x3) {
    return tfsM[0][getB(x3, 0)] ^ tfsM[1][getB(x3, 1)] ^ tfsM[2][getB(x3, 2)] ^ tfsM[3][getB(x3, 3)];
  }
  function tfsG1(x3) {
    return tfsM[0][getB(x3, 3)] ^ tfsM[1][getB(x3, 0)] ^ tfsM[2][getB(x3, 1)] ^ tfsM[3][getB(x3, 2)];
  }
  function tfsFrnd(r, blk) {
    let a2 = tfsG0(blk[0]);
    let b = tfsG1(blk[1]);
    blk[2] = rotw(blk[2] ^ a2 + b + tfsKey[4 * r + 8] & MAXINT, 31);
    blk[3] = rotw(blk[3], 1) ^ a2 + 2 * b + tfsKey[4 * r + 9] & MAXINT;
    a2 = tfsG0(blk[2]);
    b = tfsG1(blk[3]);
    blk[0] = rotw(blk[0] ^ a2 + b + tfsKey[4 * r + 10] & MAXINT, 31);
    blk[1] = rotw(blk[1], 1) ^ a2 + 2 * b + tfsKey[4 * r + 11] & MAXINT;
  }
  function tfsIrnd(i4, blk) {
    let a2 = tfsG0(blk[0]);
    let b = tfsG1(blk[1]);
    blk[2] = rotw(blk[2], 1) ^ a2 + b + tfsKey[4 * i4 + 10] & MAXINT;
    blk[3] = rotw(blk[3] ^ a2 + 2 * b + tfsKey[4 * i4 + 11] & MAXINT, 31);
    a2 = tfsG0(blk[2]);
    b = tfsG1(blk[3]);
    blk[0] = rotw(blk[0], 1) ^ a2 + b + tfsKey[4 * i4 + 8] & MAXINT;
    blk[1] = rotw(blk[1] ^ a2 + 2 * b + tfsKey[4 * i4 + 9] & MAXINT, 31);
  }
  function tfsClose() {
    tfsKey = [];
    tfsM = [
      [],
      [],
      [],
      []
    ];
  }
  function tfsEncrypt(data, offset) {
    dataBytes = data;
    dataOffset = offset;
    const blk = [
      getW(dataBytes, dataOffset) ^ tfsKey[0],
      getW(dataBytes, dataOffset + 4) ^ tfsKey[1],
      getW(dataBytes, dataOffset + 8) ^ tfsKey[2],
      getW(dataBytes, dataOffset + 12) ^ tfsKey[3]
    ];
    for (let j2 = 0; j2 < 8; j2++) {
      tfsFrnd(j2, blk);
    }
    setW(dataBytes, dataOffset, blk[2] ^ tfsKey[4]);
    setW(dataBytes, dataOffset + 4, blk[3] ^ tfsKey[5]);
    setW(dataBytes, dataOffset + 8, blk[0] ^ tfsKey[6]);
    setW(dataBytes, dataOffset + 12, blk[1] ^ tfsKey[7]);
    dataOffset += 16;
    return dataBytes;
  }
  function tfsDecrypt(data, offset) {
    dataBytes = data;
    dataOffset = offset;
    const blk = [
      getW(dataBytes, dataOffset) ^ tfsKey[4],
      getW(dataBytes, dataOffset + 4) ^ tfsKey[5],
      getW(dataBytes, dataOffset + 8) ^ tfsKey[6],
      getW(dataBytes, dataOffset + 12) ^ tfsKey[7]
    ];
    for (let j2 = 7; j2 >= 0; j2--) {
      tfsIrnd(j2, blk);
    }
    setW(dataBytes, dataOffset, blk[2] ^ tfsKey[0]);
    setW(dataBytes, dataOffset + 4, blk[3] ^ tfsKey[1]);
    setW(dataBytes, dataOffset + 8, blk[0] ^ tfsKey[2]);
    setW(dataBytes, dataOffset + 12, blk[1] ^ tfsKey[3]);
    dataOffset += 16;
  }
  function tfsFinal() {
    return dataBytes;
  }
  return {
    name: "twofish",
    blocksize: 128 / 8,
    open: tfsInit,
    close: tfsClose,
    encrypt: tfsEncrypt,
    decrypt: tfsDecrypt,
    // added by Recurity Labs
    finalize: tfsFinal
  };
}
function TF(key) {
  this.tf = createTwofish();
  this.tf.open(Array.from(key), 0);
  this.encrypt = function(block) {
    return this.tf.encrypt(Array.from(block), 0);
  };
}
function Blowfish() {
}
function BF(key) {
  this.bf = new Blowfish();
  this.bf.init(key);
  this.encrypt = function(block) {
    return this.bf.encryptBlock(block);
  };
}
function ADD64(a2, i4, b, j2) {
  a2[i4] += b[j2];
  a2[i4 + 1] += b[j2 + 1] + (a2[i4] < b[j2]);
}
function INC64(a2, c3) {
  a2[0] += c3;
  a2[1] += a2[0] < c3;
}
function G$1(v, m, a2, b, c3, d3, ix, iy) {
  ADD64(v, a2, v, b);
  ADD64(v, a2, m, ix);
  let xor0 = v[d3] ^ v[a2];
  let xor1 = v[d3 + 1] ^ v[a2 + 1];
  v[d3] = xor1;
  v[d3 + 1] = xor0;
  ADD64(v, c3, v, d3);
  xor0 = v[b] ^ v[c3];
  xor1 = v[b + 1] ^ v[c3 + 1];
  v[b] = xor0 >>> 24 ^ xor1 << 8;
  v[b + 1] = xor1 >>> 24 ^ xor0 << 8;
  ADD64(v, a2, v, b);
  ADD64(v, a2, m, iy);
  xor0 = v[d3] ^ v[a2];
  xor1 = v[d3 + 1] ^ v[a2 + 1];
  v[d3] = xor0 >>> 16 ^ xor1 << 16;
  v[d3 + 1] = xor1 >>> 16 ^ xor0 << 16;
  ADD64(v, c3, v, d3);
  xor0 = v[b] ^ v[c3];
  xor1 = v[b + 1] ^ v[c3 + 1];
  v[b] = xor1 >>> 31 ^ xor0 << 1;
  v[b + 1] = xor0 >>> 31 ^ xor1 << 1;
}
function compress(S3, last) {
  const v = new Uint32Array(32);
  const m = new Uint32Array(S3.b.buffer, S3.b.byteOffset, 32);
  for (let i4 = 0; i4 < 16; i4++) {
    v[i4] = S3.h[i4];
    v[i4 + 16] = BLAKE2B_IV32[i4];
  }
  v[24] ^= S3.t0[0];
  v[25] ^= S3.t0[1];
  const f0 = last ? 4294967295 : 0;
  v[28] ^= f0;
  v[29] ^= f0;
  for (let i4 = 0; i4 < 12; i4++) {
    const i16 = i4 << 4;
    G$1(v, m, 0, 8, 16, 24, SIGMA[i16 + 0], SIGMA[i16 + 1]);
    G$1(v, m, 2, 10, 18, 26, SIGMA[i16 + 2], SIGMA[i16 + 3]);
    G$1(v, m, 4, 12, 20, 28, SIGMA[i16 + 4], SIGMA[i16 + 5]);
    G$1(v, m, 6, 14, 22, 30, SIGMA[i16 + 6], SIGMA[i16 + 7]);
    G$1(v, m, 0, 10, 20, 30, SIGMA[i16 + 8], SIGMA[i16 + 9]);
    G$1(v, m, 2, 12, 22, 24, SIGMA[i16 + 10], SIGMA[i16 + 11]);
    G$1(v, m, 4, 14, 16, 26, SIGMA[i16 + 12], SIGMA[i16 + 13]);
    G$1(v, m, 6, 8, 18, 28, SIGMA[i16 + 14], SIGMA[i16 + 15]);
  }
  for (let i4 = 0; i4 < 16; i4++) {
    S3.h[i4] ^= v[i4] ^ v[i4 + 16];
  }
}
function createHash2(outlen, key, salt, personal) {
  if (outlen > OUTBYTES_MAX) throw new Error(`outlen must be at most ${OUTBYTES_MAX} (given: ${outlen})`);
  return new Blake2b(outlen, key, salt, personal);
}
function LE32(buf, n2, i4) {
  buf[i4 + 0] = n2;
  buf[i4 + 1] = n2 >> 8;
  buf[i4 + 2] = n2 >> 16;
  buf[i4 + 3] = n2 >> 24;
  return buf;
}
function LE64(buf, n2, i4) {
  if (n2 > Number.MAX_SAFE_INTEGER) throw new Error("LE64: large numbers unsupported");
  let remainder = n2;
  for (let offset = i4; offset < i4 + 7; offset++) {
    buf[offset] = remainder;
    remainder = (remainder - buf[offset]) / 256;
  }
  return buf;
}
function H_(outlen, X2, res) {
  const V = new Uint8Array(64);
  const V1_in = new Uint8Array(4 + X2.length);
  LE32(V1_in, outlen, 0);
  V1_in.set(X2, 4);
  if (outlen <= 64) {
    createHash2(outlen).update(V1_in).digest(res);
    return res;
  }
  const r = Math.ceil(outlen / 32) - 2;
  for (let i4 = 0; i4 < r; i4++) {
    createHash2(64).update(i4 === 0 ? V1_in : V).digest(V);
    res.set(V.subarray(0, 32), i4 * 32);
  }
  const V_r1 = new Uint8Array(createHash2(outlen - 32 * r).update(V).digest());
  res.set(V_r1, r * 32);
  return res;
}
function XOR(wasmContext, buf, xs, ys) {
  wasmContext.fn.XOR(
    buf.byteOffset,
    xs.byteOffset,
    ys.byteOffset
  );
  return buf;
}
function G2(wasmContext, X2, Y2, R2) {
  wasmContext.fn.G(
    X2.byteOffset,
    Y2.byteOffset,
    R2.byteOffset,
    wasmContext.refs.gZ.byteOffset
  );
  return R2;
}
function G22(wasmContext, X2, Y2, R2) {
  wasmContext.fn.G2(
    X2.byteOffset,
    Y2.byteOffset,
    R2.byteOffset,
    wasmContext.refs.gZ.byteOffset
  );
  return R2;
}
function* makePRNG(wasmContext, pass, lane2, slice4, m_, totalPasses, segmentLength, segmentOffset) {
  wasmContext.refs.prngTmp.fill(0);
  const Z2 = wasmContext.refs.prngTmp.subarray(0, 6 * 8);
  LE64(Z2, pass, 0);
  LE64(Z2, lane2, 8);
  LE64(Z2, slice4, 16);
  LE64(Z2, m_, 24);
  LE64(Z2, totalPasses, 32);
  LE64(Z2, TYPE, 40);
  for (let i4 = 1; i4 <= segmentLength; i4++) {
    LE64(wasmContext.refs.prngTmp, i4, Z2.length);
    const g2 = G22(wasmContext, wasmContext.refs.ZERO1024, wasmContext.refs.prngTmp, wasmContext.refs.prngR);
    for (let k2 = i4 === 1 ? segmentOffset * 8 : 0; k2 < g2.length; k2 += 8) {
      yield g2.subarray(k2, k2 + 8);
    }
  }
  return [];
}
function validateParams({ type: type4, version: version2, tagLength: tagLength2, password, salt, ad, secret, parallelism, memorySize, passes }) {
  const assertLength = (name, value, min, max4) => {
    if (value < min || value > max4) {
      throw new Error(`${name} size should be between ${min} and ${max4} bytes`);
    }
  };
  if (type4 !== TYPE || version2 !== VERSION) throw new Error("Unsupported type or version");
  assertLength("password", password, passwordBYTES_MIN, passwordBYTES_MAX);
  assertLength("salt", salt, SALTBYTES_MIN, SALTBYTES_MAX);
  assertLength("tag", tagLength2, TAGBYTES_MIN, TAGBYTES_MAX);
  assertLength("memory", memorySize, 8 * parallelism, MEMBYTES_MAX);
  ad && assertLength("associated data", ad, 0, ADBYTES_MAX);
  secret && assertLength("secret", secret, 0, SECRETBYTES_MAX);
  return { type: type4, version: version2, tagLength: tagLength2, password, salt, ad, secret, lanes: parallelism, memorySize, passes };
}
function argon2id(params, { memory, instance: wasmInstance }) {
  if (!isLittleEndian) throw new Error("BigEndian system not supported");
  const ctx = validateParams({ type: TYPE, version: VERSION, ...params });
  const { G: wasmG, G2: wasmG2, xor: wasmXOR, getLZ: wasmLZ } = wasmInstance.exports;
  const wasmRefs = {};
  const wasmFn = {};
  wasmFn.G = wasmG;
  wasmFn.G2 = wasmG2;
  wasmFn.XOR = wasmXOR;
  const m_ = 4 * ctx.lanes * Math.floor(ctx.memorySize / (4 * ctx.lanes));
  const requiredMemory = m_ * ARGON2_BLOCK_SIZE + 10 * KB;
  if (memory.buffer.byteLength < requiredMemory) {
    const missing = Math.ceil((requiredMemory - memory.buffer.byteLength) / WASM_PAGE_SIZE);
    memory.grow(missing);
  }
  let offset = 0;
  wasmRefs.gZ = new Uint8Array(memory.buffer, offset, ARGON2_BLOCK_SIZE);
  offset += wasmRefs.gZ.length;
  wasmRefs.prngR = new Uint8Array(memory.buffer, offset, ARGON2_BLOCK_SIZE);
  offset += wasmRefs.prngR.length;
  wasmRefs.prngTmp = new Uint8Array(memory.buffer, offset, ARGON2_BLOCK_SIZE);
  offset += wasmRefs.prngTmp.length;
  wasmRefs.ZERO1024 = new Uint8Array(memory.buffer, offset, 1024);
  offset += wasmRefs.ZERO1024.length;
  const lz = new Uint32Array(memory.buffer, offset, 2);
  offset += lz.length * Uint32Array.BYTES_PER_ELEMENT;
  const wasmContext = { fn: wasmFn, refs: wasmRefs };
  const newBlock = new Uint8Array(memory.buffer, offset, ARGON2_BLOCK_SIZE);
  offset += newBlock.length;
  const blockMemory = new Uint8Array(memory.buffer, offset, ctx.memorySize * ARGON2_BLOCK_SIZE);
  const allocatedMemory = new Uint8Array(memory.buffer, 0, offset);
  const H0 = getH0(ctx);
  const q = m_ / ctx.lanes;
  const B = new Array(ctx.lanes).fill(null).map(() => new Array(q));
  const initBlock = (i4, j2) => {
    B[i4][j2] = blockMemory.subarray(i4 * q * 1024 + j2 * 1024, i4 * q * 1024 + j2 * 1024 + ARGON2_BLOCK_SIZE);
    return B[i4][j2];
  };
  for (let i4 = 0; i4 < ctx.lanes; i4++) {
    const tmp = new Uint8Array(H0.length + 8);
    tmp.set(H0);
    LE32(tmp, 0, H0.length);
    LE32(tmp, i4, H0.length + 4);
    H_(ARGON2_BLOCK_SIZE, tmp, initBlock(i4, 0));
    LE32(tmp, 1, H0.length);
    H_(ARGON2_BLOCK_SIZE, tmp, initBlock(i4, 1));
  }
  const SL = 4;
  const segmentLength = q / SL;
  for (let pass = 0; pass < ctx.passes; pass++) {
    for (let sl = 0; sl < SL; sl++) {
      const isDataIndependent = pass === 0 && sl <= 1;
      for (let i4 = 0; i4 < ctx.lanes; i4++) {
        let segmentOffset = sl === 0 && pass === 0 ? 2 : 0;
        const PRNG = isDataIndependent ? makePRNG(wasmContext, pass, i4, sl, m_, ctx.passes, segmentLength, segmentOffset) : null;
        for (segmentOffset; segmentOffset < segmentLength; segmentOffset++) {
          const j2 = sl * segmentLength + segmentOffset;
          const prevBlock = j2 > 0 ? B[i4][j2 - 1] : B[i4][q - 1];
          const J1J2 = isDataIndependent ? PRNG.next().value : prevBlock;
          wasmLZ(lz.byteOffset, J1J2.byteOffset, i4, ctx.lanes, pass, sl, segmentOffset, SL, segmentLength);
          const l = lz[0];
          const z = lz[1];
          if (pass === 0) initBlock(i4, j2);
          G2(wasmContext, prevBlock, B[l][z], pass > 0 ? newBlock : B[i4][j2]);
          if (pass > 0) XOR(wasmContext, B[i4][j2], newBlock, B[i4][j2]);
        }
      }
    }
  }
  const C = B[0][q - 1];
  for (let i4 = 1; i4 < ctx.lanes; i4++) {
    XOR(wasmContext, C, C, B[i4][q - 1]);
  }
  const tag = H_(ctx.tagLength, C, new Uint8Array(ctx.tagLength));
  allocatedMemory.fill(0);
  memory.grow(0);
  return tag;
}
function getH0(ctx) {
  const H2 = createHash2(ARGON2_PREHASH_DIGEST_LENGTH);
  const ZERO32 = new Uint8Array(4);
  const params = new Uint8Array(24);
  LE32(params, ctx.lanes, 0);
  LE32(params, ctx.tagLength, 4);
  LE32(params, ctx.memorySize, 8);
  LE32(params, ctx.passes, 12);
  LE32(params, ctx.version, 16);
  LE32(params, ctx.type, 20);
  const toHash = [params];
  if (ctx.password) {
    toHash.push(LE32(new Uint8Array(4), ctx.password.length, 0));
    toHash.push(ctx.password);
  } else {
    toHash.push(ZERO32);
  }
  if (ctx.salt) {
    toHash.push(LE32(new Uint8Array(4), ctx.salt.length, 0));
    toHash.push(ctx.salt);
  } else {
    toHash.push(ZERO32);
  }
  if (ctx.secret) {
    toHash.push(LE32(new Uint8Array(4), ctx.secret.length, 0));
    toHash.push(ctx.secret);
  } else {
    toHash.push(ZERO32);
  }
  if (ctx.ad) {
    toHash.push(LE32(new Uint8Array(4), ctx.ad.length, 0));
    toHash.push(ctx.ad);
  } else {
    toHash.push(ZERO32);
  }
  H2.update(concatArrays(toHash));
  const outputBuffer = H2.digest();
  return new Uint8Array(outputBuffer);
}
function concatArrays(arrays) {
  if (arrays.length === 1) return arrays[0];
  let totalLength = 0;
  for (let i4 = 0; i4 < arrays.length; i4++) {
    if (!(arrays[i4] instanceof Uint8Array)) {
      throw new Error("concatArrays: Data must be in the form of a Uint8Array");
    }
    totalLength += arrays[i4].length;
  }
  const result2 = new Uint8Array(totalLength);
  let pos = 0;
  arrays.forEach((element) => {
    result2.set(element, pos);
    pos += element.length;
  });
  return result2;
}
async function wasmLoader(memory, getSIMD, getNonSIMD) {
  const importObject = { env: { memory } };
  if (isSIMDSupported === void 0) {
    try {
      const loaded = await getSIMD(importObject);
      isSIMDSupported = true;
      return loaded;
    } catch (e) {
      isSIMDSupported = false;
    }
  }
  const loader2 = isSIMDSupported ? getSIMD : getNonSIMD;
  return loader2(importObject);
}
async function setupWasm(getSIMD, getNonSIMD) {
  const memory = new WebAssembly.Memory({
    // in pages of 64KiB each
    // these values need to be compatible with those declared when building in `build-wasm`
    initial: 1040,
    // 65MB
    maximum: 65536
    // 4GB
  });
  const wasmModule = await wasmLoader(memory, getSIMD, getNonSIMD);
  const computeHash = (params) => argon2id(params, { instance: wasmModule.instance, memory });
  return computeHash;
}
function _loadWasmModule(sync3, filepath, src2, imports) {
  function _instantiateOrCompile(source, imports2, stream2) {
    var instantiateFunc = stream2 ? WebAssembly.instantiateStreaming : WebAssembly.instantiate;
    var compileFunc = stream2 ? WebAssembly.compileStreaming : WebAssembly.compile;
    if (imports2) {
      return instantiateFunc(source, imports2);
    } else {
      return compileFunc(source);
    }
  }
  var buf = null;
  buf = Buffer.from(src2, "base64");
  {
    return _instantiateOrCompile(buf, imports, false);
  }
}
function wasmSIMD(imports) {
  return _loadWasmModule(0, null, " ", imports);
}
function wasmNonSIMD(imports) {
  return _loadWasmModule(0, null, " ", imports);
}
function getDefaultExportFromCjs(x3) {
  return x3 && x3.__esModule && Object.prototype.hasOwnProperty.call(x3, "default") ? x3["default"] : x3;
}
function requireBzip2() {
  if (hasRequiredBzip2) return bzip2_1;
  hasRequiredBzip2 = 1;
  function Bzip2Error(message2) {
    this.name = "Bzip2Error";
    this.message = message2;
    this.stack = new Error().stack;
  }
  Bzip2Error.prototype = new Error();
  var message = {
    Error: function(message2) {
      throw new Bzip2Error(message2);
    }
  };
  var bzip2 = {};
  bzip2.Bzip2Error = Bzip2Error;
  bzip2.crcTable = [
    0,
    79764919,
    159529838,
    222504665,
    319059676,
    398814059,
    445009330,
    507990021,
    638119352,
    583659535,
    797628118,
    726387553,
    890018660,
    835552979,
    1015980042,
    944750013,
    1276238704,
    1221641927,
    1167319070,
    1095957929,
    1595256236,
    1540665371,
    1452775106,
    1381403509,
    1780037320,
    1859660671,
    1671105958,
    1733955601,
    2031960084,
    2111593891,
    1889500026,
    1952343757,
    2552477408,
    2632100695,
    2443283854,
    2506133561,
    2334638140,
    2414271883,
    2191915858,
    2254759653,
    3190512472,
    3135915759,
    3081330742,
    3009969537,
    2905550212,
    2850959411,
    2762807018,
    2691435357,
    3560074640,
    3505614887,
    3719321342,
    3648080713,
    3342211916,
    3287746299,
    3467911202,
    3396681109,
    4063920168,
    4143685023,
    4223187782,
    4286162673,
    3779000052,
    3858754371,
    3904687514,
    3967668269,
    881225847,
    809987520,
    1023691545,
    969234094,
    662832811,
    591600412,
    771767749,
    717299826,
    311336399,
    374308984,
    453813921,
    533576470,
    25881363,
    88864420,
    134795389,
    214552010,
    2023205639,
    2086057648,
    1897238633,
    1976864222,
    1804852699,
    1867694188,
    1645340341,
    1724971778,
    1587496639,
    1516133128,
    1461550545,
    1406951526,
    1302016099,
    1230646740,
    1142491917,
    1087903418,
    2896545431,
    2825181984,
    2770861561,
    2716262478,
    3215044683,
    3143675388,
    3055782693,
    3001194130,
    2326604591,
    2389456536,
    2200899649,
    2280525302,
    2578013683,
    2640855108,
    2418763421,
    2498394922,
    3769900519,
    3832873040,
    3912640137,
    3992402750,
    4088425275,
    4151408268,
    4197601365,
    4277358050,
    3334271071,
    3263032808,
    3476998961,
    3422541446,
    3585640067,
    3514407732,
    3694837229,
    3640369242,
    1762451694,
    1842216281,
    1619975040,
    1682949687,
    2047383090,
    2127137669,
    1938468188,
    2001449195,
    1325665622,
    1271206113,
    1183200824,
    1111960463,
    1543535498,
    1489069629,
    1434599652,
    1363369299,
    622672798,
    568075817,
    748617968,
    677256519,
    907627842,
    853037301,
    1067152940,
    995781531,
    51762726,
    131386257,
    177728840,
    240578815,
    269590778,
    349224269,
    429104020,
    491947555,
    4046411278,
    4126034873,
    4172115296,
    4234965207,
    3794477266,
    3874110821,
    3953728444,
    4016571915,
    3609705398,
    3555108353,
    3735388376,
    3664026991,
    3290680682,
    3236090077,
    3449943556,
    3378572211,
    3174993278,
    3120533705,
    3032266256,
    2961025959,
    2923101090,
    2868635157,
    2813903052,
    2742672763,
    2604032198,
    2683796849,
    2461293480,
    2524268063,
    2284983834,
    2364738477,
    2175806836,
    2238787779,
    1569362073,
    1498123566,
    1409854455,
    1355396672,
    1317987909,
    1246755826,
    1192025387,
    1137557660,
    2072149281,
    2135122070,
    1912620623,
    1992383480,
    1753615357,
    1816598090,
    1627664531,
    1707420964,
    295390185,
    358241886,
    404320391,
    483945776,
    43990325,
    106832002,
    186451547,
    266083308,
    932423249,
    861060070,
    1041341759,
    986742920,
    613929101,
    542559546,
    756411363,
    701822548,
    3316196985,
    3244833742,
    3425377559,
    3370778784,
    3601682597,
    3530312978,
    3744426955,
    3689838204,
    3819031489,
    3881883254,
    3928223919,
    4007849240,
    4037393693,
    4100235434,
    4180117107,
    4259748804,
    2310601993,
    2373574846,
    2151335527,
    2231098320,
    2596047829,
    2659030626,
    2470359227,
    2550115596,
    2947551409,
    2876312838,
    2788305887,
    2733848168,
    3165939309,
    3094707162,
    3040238851,
    2985771188
  ];
  bzip2.array = function(bytes) {
    var bit = 0, byte = 0;
    var BITMASK = [0, 1, 3, 7, 15, 31, 63, 127, 255];
    return function(n2) {
      var result2 = 0;
      while (n2 > 0) {
        var left = 8 - bit;
        if (n2 >= left) {
          result2 <<= left;
          result2 |= BITMASK[left] & bytes[byte++];
          bit = 0;
          n2 -= left;
        } else {
          result2 <<= n2;
          result2 |= (bytes[byte] & BITMASK[n2] << 8 - n2 - bit) >> 8 - n2 - bit;
          bit += n2;
          n2 = 0;
        }
      }
      return result2;
    };
  };
  bzip2.simple = function(srcbuffer, stream2) {
    var bits2 = bzip2.array(srcbuffer);
    var size = bzip2.header(bits2);
    var ret2 = false;
    var bufsize = 1e5 * size;
    var buf = new Int32Array(bufsize);
    do {
      ret2 = bzip2.decompress(bits2, stream2, buf, bufsize);
    } while (!ret2);
  };
  bzip2.header = function(bits2) {
    this.byteCount = new Int32Array(256);
    this.symToByte = new Uint8Array(256);
    this.mtfSymbol = new Int32Array(256);
    this.selectors = new Uint8Array(32768);
    if (bits2(8 * 3) != 4348520) message.Error("No magic number found");
    var i4 = bits2(8) - 48;
    if (i4 < 1 || i4 > 9) message.Error("Not a BZIP archive");
    return i4;
  };
  bzip2.decompress = function(bits2, stream2, buf, bufsize, streamCRC) {
    var MAX_HUFCODE_BITS = 20;
    var MAX_SYMBOLS = 258;
    var SYMBOL_RUNA = 0;
    var SYMBOL_RUNB = 1;
    var GROUP_SIZE = 50;
    var crc = 0 ^ -1;
    for (var h2 = "", i4 = 0; i4 < 6; i4++) h2 += bits2(8).toString(16);
    if (h2 == "177245385090") {
      var finalCRC = bits2(32) | 0;
      if (finalCRC !== streamCRC) message.Error("Error in bzip2: crc32 do not match");
      bits2(null);
      return null;
    }
    if (h2 != "314159265359") message.Error("Invalid bzip data");
    var crcblock = bits2(32) | 0;
    if (bits2(1)) message.Error("unsupported obsolete version");
    var origPtr = bits2(24);
    if (origPtr > bufsize) message.Error("Initial position larger than buffer size");
    var t2 = bits2(16);
    var symTotal = 0;
    for (i4 = 0; i4 < 16; i4++) {
      if (t2 & 1 << 15 - i4) {
        var k2 = bits2(16);
        for (j2 = 0; j2 < 16; j2++) {
          if (k2 & 1 << 15 - j2) {
            this.symToByte[symTotal++] = 16 * i4 + j2;
          }
        }
      }
    }
    var groupCount = bits2(3);
    if (groupCount < 2 || groupCount > 6) message.Error("Invalid bzip data");
    var nSelectors = bits2(15);
    if (nSelectors == 0) message.Error("Invalid bzip data");
    for (var i4 = 0; i4 < groupCount; i4++) this.mtfSymbol[i4] = i4;
    for (var i4 = 0; i4 < nSelectors; i4++) {
      for (var j2 = 0; bits2(1); j2++) if (j2 >= groupCount) message.Error("Invalid bzip data");
      var uc = this.mtfSymbol[j2];
      for (var k2 = j2 - 1; k2 >= 0; k2--) {
        this.mtfSymbol[k2 + 1] = this.mtfSymbol[k2];
      }
      this.mtfSymbol[0] = uc;
      this.selectors[i4] = uc;
    }
    var symCount = symTotal + 2;
    var groups = [];
    var length = new Uint8Array(MAX_SYMBOLS), temp = new Uint16Array(MAX_HUFCODE_BITS + 1);
    var hufGroup;
    for (var j2 = 0; j2 < groupCount; j2++) {
      t2 = bits2(5);
      for (var i4 = 0; i4 < symCount; i4++) {
        while (true) {
          if (t2 < 1 || t2 > MAX_HUFCODE_BITS) message.Error("Invalid bzip data");
          if (!bits2(1)) break;
          if (!bits2(1)) t2++;
          else t2--;
        }
        length[i4] = t2;
      }
      var minLen, maxLen;
      minLen = maxLen = length[0];
      for (var i4 = 1; i4 < symCount; i4++) {
        if (length[i4] > maxLen) maxLen = length[i4];
        else if (length[i4] < minLen) minLen = length[i4];
      }
      hufGroup = groups[j2] = {};
      hufGroup.permute = new Int32Array(MAX_SYMBOLS);
      hufGroup.limit = new Int32Array(MAX_HUFCODE_BITS + 1);
      hufGroup.base = new Int32Array(MAX_HUFCODE_BITS + 1);
      hufGroup.minLen = minLen;
      hufGroup.maxLen = maxLen;
      var base = hufGroup.base;
      var limit = hufGroup.limit;
      var pp = 0;
      for (var i4 = minLen; i4 <= maxLen; i4++)
        for (var t2 = 0; t2 < symCount; t2++)
          if (length[t2] == i4) hufGroup.permute[pp++] = t2;
      for (i4 = minLen; i4 <= maxLen; i4++) temp[i4] = limit[i4] = 0;
      for (i4 = 0; i4 < symCount; i4++) temp[length[i4]]++;
      pp = t2 = 0;
      for (i4 = minLen; i4 < maxLen; i4++) {
        pp += temp[i4];
        limit[i4] = pp - 1;
        pp <<= 1;
        base[i4 + 1] = pp - (t2 += temp[i4]);
      }
      limit[maxLen] = pp + temp[maxLen] - 1;
      base[minLen] = 0;
    }
    for (var i4 = 0; i4 < 256; i4++) {
      this.mtfSymbol[i4] = i4;
      this.byteCount[i4] = 0;
    }
    var runPos, count2, symCount, selector;
    runPos = count2 = symCount = selector = 0;
    while (true) {
      if (!symCount--) {
        symCount = GROUP_SIZE - 1;
        if (selector >= nSelectors) message.Error("Invalid bzip data");
        hufGroup = groups[this.selectors[selector++]];
        base = hufGroup.base;
        limit = hufGroup.limit;
      }
      i4 = hufGroup.minLen;
      j2 = bits2(i4);
      while (true) {
        if (i4 > hufGroup.maxLen) message.Error("Invalid bzip data");
        if (j2 <= limit[i4]) break;
        i4++;
        j2 = j2 << 1 | bits2(1);
      }
      j2 -= base[i4];
      if (j2 < 0 || j2 >= MAX_SYMBOLS) message.Error("Invalid bzip data");
      var nextSym = hufGroup.permute[j2];
      if (nextSym == SYMBOL_RUNA || nextSym == SYMBOL_RUNB) {
        if (!runPos) {
          runPos = 1;
          t2 = 0;
        }
        if (nextSym == SYMBOL_RUNA) t2 += runPos;
        else t2 += 2 * runPos;
        runPos <<= 1;
        continue;
      }
      if (runPos) {
        runPos = 0;
        if (count2 + t2 > bufsize) message.Error("Invalid bzip data");
        uc = this.symToByte[this.mtfSymbol[0]];
        this.byteCount[uc] += t2;
        while (t2--) buf[count2++] = uc;
      }
      if (nextSym > symTotal) break;
      if (count2 >= bufsize) message.Error("Invalid bzip data");
      i4 = nextSym - 1;
      uc = this.mtfSymbol[i4];
      for (var k2 = i4 - 1; k2 >= 0; k2--) {
        this.mtfSymbol[k2 + 1] = this.mtfSymbol[k2];
      }
      this.mtfSymbol[0] = uc;
      uc = this.symToByte[uc];
      this.byteCount[uc]++;
      buf[count2++] = uc;
    }
    if (origPtr < 0 || origPtr >= count2) message.Error("Invalid bzip data");
    var j2 = 0;
    for (var i4 = 0; i4 < 256; i4++) {
      k2 = j2 + this.byteCount[i4];
      this.byteCount[i4] = j2;
      j2 = k2;
    }
    for (var i4 = 0; i4 < count2; i4++) {
      uc = buf[i4] & 255;
      buf[this.byteCount[uc]] |= i4 << 8;
      this.byteCount[uc]++;
    }
    var pos = 0, current = 0, run2 = 0;
    if (count2) {
      pos = buf[origPtr];
      current = pos & 255;
      pos >>= 8;
      run2 = -1;
    }
    count2 = count2;
    var copies, previous, outbyte;
    while (count2) {
      count2--;
      previous = current;
      pos = buf[pos];
      current = pos & 255;
      pos >>= 8;
      if (run2++ == 3) {
        copies = current;
        outbyte = previous;
        current = -1;
      } else {
        copies = 1;
        outbyte = current;
      }
      while (copies--) {
        crc = (crc << 8 ^ this.crcTable[(crc >> 24 ^ outbyte) & 255]) & 4294967295;
        stream2(outbyte);
      }
      if (current != previous) run2 = 0;
    }
    crc = (crc ^ -1) >>> 0;
    if ((crc | 0) != (crcblock | 0)) message.Error("Error in bzip2: crc32 do not match");
    streamCRC = (crc ^ (streamCRC << 1 | streamCRC >>> 31)) & 4294967295;
    return streamCRC;
  };
  bzip2_1 = bzip2;
  return bzip2_1;
}
function requireBit_iterator() {
  if (hasRequiredBit_iterator) return bit_iterator;
  hasRequiredBit_iterator = 1;
  var BITMASK = [0, 1, 3, 7, 15, 31, 63, 127, 255];
  bit_iterator = function bitIterator(nextBuffer) {
    var bit = 0, byte = 0;
    var bytes = nextBuffer();
    var f = function(n2) {
      if (n2 === null && bit != 0) {
        bit = 0;
        byte++;
        return;
      }
      var result2 = 0;
      while (n2 > 0) {
        if (byte >= bytes.length) {
          byte = 0;
          bytes = nextBuffer();
        }
        var left = 8 - bit;
        if (bit === 0 && n2 > 0)
          f.bytesRead++;
        if (n2 >= left) {
          result2 <<= left;
          result2 |= BITMASK[left] & bytes[byte++];
          bit = 0;
          n2 -= left;
        } else {
          result2 <<= n2;
          result2 |= (bytes[byte] & BITMASK[n2] << 8 - n2 - bit) >> 8 - n2 - bit;
          bit += n2;
          n2 = 0;
        }
      }
      return result2;
    };
    f.bytesRead = 0;
    return f;
  };
  return bit_iterator;
}
function requireUnbzip2Stream() {
  if (hasRequiredUnbzip2Stream) return unbzip2Stream_1;
  hasRequiredUnbzip2Stream = 1;
  const bz2 = requireBzip2();
  const bitIterator = requireBit_iterator();
  unbzip2Stream_1 = unbzip2Stream;
  function unbzip2Stream(input) {
    const bufferQueue = [];
    let hasBytes = 0;
    let blockSize = 0;
    let broken = false;
    let hasAllData = false;
    let bitReader = null;
    let streamCRC = null;
    function decompressBlock(push) {
      if (!blockSize) {
        blockSize = bz2.header(bitReader);
        streamCRC = 0;
        return false;
      } else {
        const bufsize = 1e5 * blockSize;
        const buf = new Int32Array(bufsize);
        const chunk = [];
        const f = function(b) {
          chunk.push(b);
        };
        streamCRC = bz2.decompress(bitReader, f, buf, bufsize, streamCRC);
        if (streamCRC === null) {
          blockSize = 0;
          return false;
        } else {
          push(new Uint8Array(chunk));
          return true;
        }
      }
    }
    let outlength = 0;
    function decompressAndQueue(controller) {
      if (broken) return;
      try {
        return decompressBlock(function(d3) {
          controller.enqueue(d3);
          if (d3 !== null) {
            outlength += d3.length;
          } else {
          }
        });
      } catch (e) {
        controller.error(e);
        broken = true;
        return true;
      }
    }
    let inputReader;
    return new ReadableStream({
      start() {
        inputReader = input.getReader();
      },
      async pull(controller) {
        try {
          while (true) {
            while (!(hasAllData || bitReader && hasBytes - bitReader.bytesRead + 1 >= 25e3 + 1e5 * (blockSize || 4))) {
              const { value, done } = await inputReader.read();
              if (!done) {
                bufferQueue.push(value);
                hasBytes += value.length;
                if (bitReader === null) {
                  bitReader = bitIterator(function() {
                    return bufferQueue.shift();
                  });
                }
              } else {
                hasAllData = true;
              }
            }
            while (hasAllData ? bitReader && hasBytes > bitReader.bytesRead : bitReader && hasBytes - bitReader.bytesRead + 1 >= 25e3 + 1e5 * (blockSize || 4)) {
              if (decompressAndQueue(controller)) {
                return;
              }
            }
            if (hasAllData && !broken && (!bitReader || hasBytes <= bitReader.bytesRead)) {
              if (streamCRC === null) {
                controller.close();
              } else {
                controller.error(new Error("input stream ended prematurely"));
              }
              return;
            }
          }
        } catch (e) {
          controller.error(e);
        }
      },
      async cancel(reason) {
        await inputReader.abort(reason);
      }
    }, { highWaterMark: 0 });
  }
  return unbzip2Stream_1;
}
var globalThis2, doneWritingPromise, doneWritingResolve, doneWritingReject, readingIndex, ArrayStream, doneReadingSet, externalBuffer, byValue, enums, config, debugMode, util11, Buffer$3, encodeChunk, decodeChunk, crc_table, isLittleEndian$1, _0n$8, _1n$c, nodeCrypto$8, _1n$b, smallPrimes, webCrypto$8, nodeCrypto$7, nodeCryptoHashes, md5$1, sha1$2, sha224$2, sha256$2, sha384$2, sha512$2, ripemd, sha3_256$1, sha3_512$1, hash_headers, webCrypto$7, nodeCrypto$6, _1n$a, _1n$9, knownOIDs, OID, UnsupportedError, UnknownPacketError, MalformedPacketError, UnparseablePacket, publicKeyToJWK$1, privateKeyToJWK$1, eddsa$1, isLE$1, wrapCipher, BLOCK_SIZE$1, ZEROS16, ZEROS32, POLY$1, mul2$1, swapLE, estimateWindow, GHASH, Polyval, ghash, BLOCK_SIZE, BLOCK_SIZE32, EMPTY_BLOCK, POLY, sbox, invSbox, rotr32_8, rotl32_8, byteSwap$1, tableEncoding, tableDecoding, xPowers, ctr, cbc, cfb, gcm, AESW, AESKW_IV, aeskw, unsafe, webCrypto$6, HKDF_INFO, ecdh_x, webCrypto$5, nodeCrypto$5, webCurves, knownCurves, nodeCurves, curves, CurveWithOID, webCrypto$4, nodeCrypto$4, ecdsa$1, eddsa_legacy, ecdh$1, elliptic, _0n$7, _1n$8, ECDHSymmetricKey, KDFParams, ECDHXSymmetricKey, webCrypto$3, nodeCrypto$3, knownAlgos, nodeAlgos, WebCryptoEncryptor, NobleStreamProcessor, getUint32Array, webCrypto$2, nodeCrypto$2, blockLength$3, zeroBlock$1, webCrypto$1, nodeCrypto$1, Buffer$2, blockLength$2, ivLength$2, tagLength$2, zero, one$1, two, blockLength$1, ivLength$1, tagLength$1, zeroBlock, one, webCrypto, nodeCrypto, Buffer$1, blockLength, ivLength, tagLength, ALGO, ARGON2_TYPE, ARGON2_VERSION, ARGON2_SALT_SIZE, ARGON2_MAX_ENCODEDM, Argon2OutOfMemoryError, loadArgonWasmModule, argon2Promise, ARGON2_WASM_MEMORY_THRESHOLD_RELOAD, Argon2S2K, GenericS2K, allowedS2KTypesForEncryption, require$1, _a, Worker, isMarkedAsUntransferable, u8, u16, i32, fleb, fdeb, clim, freb, _a, fl, revfl, _b, fd, revfd, rev, x2, i3, hMap, flt, i3, i3, i3, i3, fdt, i3, flm, flrm, fdm, fdrm, max3, bits, bits16, shft, slc, ec, err, inflt, wbits, wbits16, hTree, ln, lc, clen, wfblk, wblk, deo, et, dflt, adler, dopt, wbytes, zlh, zls, Deflate, Inflate, Zlib, Unzlib, td, tds, LiteralDataPacket, KeyID, verified, SALT_NOTATION_NAME, allowedUnhashedSubpackets, SignaturePacket, OnePassSignaturePacket, PacketList, GrammarError, MessageType, MessageGrammarValidator, allowedPackets$5, CompressedDataPacket, getCompressionStreamInstantiators, compress_fns, decompress_fns, allowedPackets$4, SymEncryptedIntegrityProtectedDataPacket, PublicKeyEncryptedSessionKeyPacket, SymEncryptedSessionKeyPacket, PublicKeyPacket, PublicSubkeyPacket, UserAttributePacket, SecretKeyPacket, UserIDPacket, SecretSubkeyPacket, allowedPackets$1, Signature, User, Subkey, allowedRevocationPackets, mainKeyPacketTags, keyPacketTags, Key, PublicKey, PrivateKey, allowedKeyPackets, allowedSymSessionKeyPackets, allowedDetachedSignaturePackets, Message, defaultConfigPropsCount, crypto$2, isLE, swap32IfBE, hasHexBuiltin, hexes, asciis, Hash, wrapConstructor, _0n$6, _1n$7, isPosBig, bitMask, _0n$5, _1n$6, _2n$6, _3n$2, _4n$1, _5n, _7n$1, _8n$1, _9n, _16n, FIELD_FIELDS, HashMD, SHA256_IV, SHA224_IV, SHA384_IV, SHA512_IV, U32_MASK64, _32n, shrSH, shrSL, rotrSH, rotrSL, rotrBH, rotrBL, rotlSH, rotlSL, rotlBH, rotlBL, add3L, add3H, add4L, add4H, add5L, add5H, SHA256_K, SHA256_W, SHA256, SHA224, K512, SHA512_Kh, SHA512_Kl, SHA512_W_H, SHA512_W_L, SHA512, SHA384, sha256$1, sha224$1, sha512$1, sha384$1, HMAC, hmac, _0n$4, _1n$5, pointPrecomputes, pointWindowSizes, wNAF, divNearest, DERErr, DER, _0n$3, _1n$4, _2n$5, _3n$1, _4n, p256_CURVE, p384_CURVE, p521_CURVE, Fp256, Fp384, Fp521, p256$1, p384$1, p521$1, p256, p384, p521, _0n$2, _1n$3, _2n$4, _7n, _256n, _0x71n, SHA3_PI, SHA3_ROTL, _SHA3_IOTA, IOTAS, SHA3_IOTA_H, SHA3_IOTA_L, rotlH, rotlL, Keccak, gen, sha3_256, sha3_512, genShake, shake256, _0n$1, _1n$2, _2n$3, _8n, _0n, _1n$1, _2n$2, ed448_CURVE, E448_CURVE, shake256_114, _1n, _2n$1, _3n, _11n, _22n, _44n, _88n, _223n, Fp$3, Fn, ED448_DEF, ed448, x448, secp256k1_CURVE, secp256k1_ENDO, _2n, Fpk1, secp256k1, sha256, sha224, Fp$2, CURVE_A$2, CURVE_B$2, brainpoolP256r1, sha512, sha384, Fp$1, CURVE_A$1, CURVE_B$1, brainpoolP384r1, Fp, CURVE_A, CURVE_B, brainpoolP512r1, nobleCurves, noble_curves, SHA1_IV, SHA1_W, SHA1, sha1$1, Rho160, Id160, Pi160, idxLR, idxL, idxR, shifts160, shiftsL160, shiftsR160, Kl160, Kr160, BUF_160, RIPEMD160, ripemd160$1, sha1, ripemd160, K$1, Chi, IV, MD5_W, MD5, md5, nobleHashes, noble_hashes, crypto$1, nacl, gf, randombytes, _9, gf0, gf1, _121665, D, D2, X, Y, I2, K, L2, crypto_scalarmult_BYTES, crypto_scalarmult_SCALARBYTES, crypto_box_PUBLICKEYBYTES, crypto_box_SECRETKEYBYTES, crypto_sign_BYTES, crypto_sign_PUBLICKEYBYTES, crypto_sign_SECRETKEYBYTES, crypto_sign_SEEDBYTES, naclFast, MAXINT, legacyCiphers, legacy_ciphers, BLAKE2B_IV32, SIGMA, Blake2b, OUTBYTES_MAX, BLOCKBYTES, TYPE, VERSION, TAGBYTES_MAX, TAGBYTES_MIN, SALTBYTES_MAX, SALTBYTES_MIN, passwordBYTES_MAX, passwordBYTES_MIN, MEMBYTES_MAX, ADBYTES_MAX, SECRETBYTES_MAX, ARGON2_BLOCK_SIZE, ARGON2_PREHASH_DIGEST_LENGTH, isLittleEndian, KB, WASM_PAGE_SIZE, isSIMDSupported, loadWasm, index$2, bzip2_1, hasRequiredBzip2, bit_iterator, hasRequiredBit_iterator, unbzip2Stream_1, hasRequiredUnbzip2Stream, unbzip2StreamExports, index, index$1;
var init_openpgp = __esm({
  "../../../../../setup-pnpm/store/v11/links/@/openpgp/6.3.1/60c2a31cf6cae63193823abbdc2c24d5dbda8d0fc2a36569febee3624da47bc0/node_modules/openpgp/dist/node/openpgp.mjs"() {
    globalThis2 = typeof window !== "undefined" ? window : typeof global !== "undefined" ? global : typeof self !== "undefined" ? self : {};
    doneWritingPromise = /* @__PURE__ */ Symbol("doneWritingPromise");
    doneWritingResolve = /* @__PURE__ */ Symbol("doneWritingResolve");
    doneWritingReject = /* @__PURE__ */ Symbol("doneWritingReject");
    readingIndex = /* @__PURE__ */ Symbol("readingIndex");
    ArrayStream = class _ArrayStream extends Array {
      constructor() {
        super();
        Object.setPrototypeOf(this, _ArrayStream.prototype);
        this[doneWritingPromise] = new Promise((resolve4, reject3) => {
          this[doneWritingResolve] = resolve4;
          this[doneWritingReject] = reject3;
        });
        this[doneWritingPromise].catch(() => {
        });
      }
    };
    ArrayStream.prototype.getReader = function() {
      if (this[readingIndex] === void 0) {
        this[readingIndex] = 0;
      }
      return {
        read: async () => {
          await this[doneWritingPromise];
          if (this[readingIndex] === this.length) {
            return { value: void 0, done: true };
          }
          return { value: this[this[readingIndex]++], done: false };
        }
      };
    };
    ArrayStream.prototype.readToEnd = async function(join5) {
      await this[doneWritingPromise];
      const result2 = join5(this.slice(this[readingIndex]));
      this.length = 0;
      return result2;
    };
    ArrayStream.prototype.clone = function() {
      const clone4 = new ArrayStream();
      clone4[doneWritingPromise] = this[doneWritingPromise].then(() => {
        clone4.push(...this);
      });
      return clone4;
    };
    Writer.prototype.write = async function(chunk) {
      this.stream.push(chunk);
    };
    Writer.prototype.close = async function() {
      this.stream[doneWritingResolve]();
    };
    Writer.prototype.abort = async function(reason) {
      this.stream[doneWritingReject](reason);
      return reason;
    };
    Writer.prototype.releaseLock = function() {
    };
    typeof globalThis2.process === "object" && typeof globalThis2.process.versions === "object";
    doneReadingSet = /* @__PURE__ */ new WeakSet();
    externalBuffer = /* @__PURE__ */ Symbol("externalBuffer");
    Reader.prototype.read = async function() {
      if (this[externalBuffer] && this[externalBuffer].length) {
        const value = this[externalBuffer].shift();
        return { done: false, value };
      }
      return this._read();
    };
    Reader.prototype.releaseLock = function() {
      if (this[externalBuffer]) {
        this.stream[externalBuffer] = this[externalBuffer];
      }
      this._releaseLock();
    };
    Reader.prototype.cancel = function(reason) {
      return this._cancel(reason);
    };
    Reader.prototype.readLine = async function() {
      let buffer3 = [];
      let returnVal;
      while (!returnVal) {
        let { done, value } = await this.read();
        value += "";
        if (done) {
          if (buffer3.length) return concat(buffer3);
          return;
        }
        const lineEndIndex = value.indexOf("\n") + 1;
        if (lineEndIndex) {
          returnVal = concat(buffer3.concat(value.substr(0, lineEndIndex)));
          buffer3 = [];
        }
        if (lineEndIndex !== value.length) {
          buffer3.push(value.substr(lineEndIndex));
        }
      }
      this.unshift(...buffer3);
      return returnVal;
    };
    Reader.prototype.readByte = async function() {
      const { done, value } = await this.read();
      if (done) return;
      const byte = value[0];
      this.unshift(slice3(value, 1));
      return byte;
    };
    Reader.prototype.readBytes = async function(length) {
      const buffer3 = [];
      let bufferLength = 0;
      while (true) {
        const { done, value } = await this.read();
        if (done) {
          if (buffer3.length) return concat(buffer3);
          return;
        }
        buffer3.push(value);
        bufferLength += value.length;
        if (bufferLength >= length) {
          const bufferConcat = concat(buffer3);
          this.unshift(slice3(bufferConcat, length));
          return slice3(bufferConcat, 0, length);
        }
      }
    };
    Reader.prototype.peekBytes = async function(length) {
      const bytes = await this.readBytes(length);
      this.unshift(bytes);
      return bytes;
    };
    Reader.prototype.unshift = function(...values) {
      if (!this[externalBuffer]) {
        this[externalBuffer] = [];
      }
      if (values.length === 1 && isUint8Array2(values[0]) && this[externalBuffer].length && values[0].length && this[externalBuffer][0].byteOffset >= values[0].length) {
        this[externalBuffer][0] = new Uint8Array(
          this[externalBuffer][0].buffer,
          this[externalBuffer][0].byteOffset - values[0].length,
          this[externalBuffer][0].byteLength + values[0].length
        );
        return;
      }
      this[externalBuffer].unshift(...values.filter((value) => value && value.length));
    };
    Reader.prototype.readToEnd = async function(join5 = concat) {
      const result2 = [];
      while (true) {
        const { done, value } = await this.read();
        if (done) break;
        result2.push(value);
      }
      return join5(result2);
    };
    byValue = /* @__PURE__ */ Symbol("byValue");
    enums = {
      /** Maps curve names under various standards to one
       * @see {@link https://wiki.gnupg.org/ECC|ECC - GnuPG wiki}
       * @enum {String}
       * @readonly
       */
      curve: {
        /** NIST P-256 Curve */
        "nistP256": "nistP256",
        /** @deprecated use `nistP256` instead */
        "p256": "nistP256",
        /** NIST P-384 Curve */
        "nistP384": "nistP384",
        /** @deprecated use `nistP384` instead */
        "p384": "nistP384",
        /** NIST P-521 Curve */
        "nistP521": "nistP521",
        /** @deprecated use `nistP521` instead */
        "p521": "nistP521",
        /** SECG SECP256k1 Curve */
        "secp256k1": "secp256k1",
        /** Ed25519 - deprecated by crypto-refresh (replaced by standaone Ed25519 algo) */
        "ed25519Legacy": "ed25519Legacy",
        /** @deprecated use `ed25519Legacy` instead */
        "ed25519": "ed25519Legacy",
        /** Curve25519 - deprecated by crypto-refresh (replaced by standaone X25519 algo) */
        "curve25519Legacy": "curve25519Legacy",
        /** @deprecated use `curve25519Legacy` instead */
        "curve25519": "curve25519Legacy",
        /** BrainpoolP256r1 Curve */
        "brainpoolP256r1": "brainpoolP256r1",
        /** BrainpoolP384r1 Curve */
        "brainpoolP384r1": "brainpoolP384r1",
        /** BrainpoolP512r1 Curve */
        "brainpoolP512r1": "brainpoolP512r1"
      },
      /** A string to key specifier type
       * @enum {Integer}
       * @readonly
       */
      s2k: {
        simple: 0,
        salted: 1,
        iterated: 3,
        argon2: 4,
        gnu: 101
      },
      /** {@link https://tools.ietf.org/html/draft-ietf-openpgp-crypto-refresh-08.html#section-9.1|crypto-refresh RFC, section 9.1}
       * @enum {Integer}
       * @readonly
       */
      publicKey: {
        /** RSA (Encrypt or Sign) [HAC] */
        rsaEncryptSign: 1,
        /** RSA (Encrypt only) [HAC] */
        rsaEncrypt: 2,
        /** RSA (Sign only) [HAC] */
        rsaSign: 3,
        /** Elgamal (Encrypt only) [ELGAMAL] [HAC] */
        elgamal: 16,
        /** DSA (Sign only) [FIPS186] [HAC] */
        dsa: 17,
        /** ECDH (Encrypt only) [RFC6637] */
        ecdh: 18,
        /** ECDSA (Sign only) [RFC6637] */
        ecdsa: 19,
        /** EdDSA (Sign only) - deprecated by crypto-refresh (replaced by `ed25519` identifier below)
         * [{@link https://tools.ietf.org/html/draft-koch-eddsa-for-openpgp-04|Draft RFC}] */
        eddsaLegacy: 22,
        /** Reserved for AEDH */
        aedh: 23,
        /** Reserved for AEDSA */
        aedsa: 24,
        /** X25519 (Encrypt only) */
        x25519: 25,
        /** X448 (Encrypt only) */
        x448: 26,
        /** Ed25519 (Sign only) */
        ed25519: 27,
        /** Ed448 (Sign only) */
        ed448: 28
      },
      /** {@link https://tools.ietf.org/html/rfc4880#section-9.2|RFC4880, section 9.2}
       * @enum {Integer}
       * @readonly
       */
      symmetric: {
        /** Not implemented! */
        idea: 1,
        tripledes: 2,
        cast5: 3,
        blowfish: 4,
        aes128: 7,
        aes192: 8,
        aes256: 9,
        twofish: 10
      },
      /** {@link https://tools.ietf.org/html/rfc4880#section-9.3|RFC4880, section 9.3}
       * @enum {Integer}
       * @readonly
       */
      compression: {
        uncompressed: 0,
        /** RFC1951 */
        zip: 1,
        /** RFC1950 */
        zlib: 2,
        bzip2: 3
      },
      /** {@link https://tools.ietf.org/html/rfc4880#section-9.4|RFC4880, section 9.4}
       * @enum {Integer}
       * @readonly
       */
      hash: {
        md5: 1,
        sha1: 2,
        ripemd: 3,
        sha256: 8,
        sha384: 9,
        sha512: 10,
        sha224: 11,
        sha3_256: 12,
        sha3_512: 14
      },
      /** A list of hash names as accepted by webCrypto functions.
       * {@link https://developer.mozilla.org/en-US/docs/Web/API/SubtleCrypto/digest|Parameters, algo}
       * @enum {String}
       */
      webHash: {
        "SHA-1": 2,
        "SHA-256": 8,
        "SHA-384": 9,
        "SHA-512": 10
      },
      /** {@link https://www.rfc-editor.org/rfc/rfc9580.html#name-aead-algorithms}
       * @enum {Integer}
       * @readonly
       */
      aead: {
        eax: 1,
        ocb: 2,
        gcm: 3,
        /** @deprecated used by OpenPGP.js v5 for legacy AEAD support; use `gcm` instead for the RFC9580-standardized ID */
        experimentalGCM: 100
        // Private algorithm
      },
      /** A list of packet types and numeric tags associated with them.
       * @enum {Integer}
       * @readonly
       */
      packet: {
        publicKeyEncryptedSessionKey: 1,
        signature: 2,
        symEncryptedSessionKey: 3,
        onePassSignature: 4,
        secretKey: 5,
        publicKey: 6,
        secretSubkey: 7,
        compressedData: 8,
        symmetricallyEncryptedData: 9,
        marker: 10,
        literalData: 11,
        trust: 12,
        userID: 13,
        publicSubkey: 14,
        userAttribute: 17,
        symEncryptedIntegrityProtectedData: 18,
        modificationDetectionCode: 19,
        aeadEncryptedData: 20,
        // see IETF draft: https://tools.ietf.org/html/draft-ford-openpgp-format-00#section-2.1
        padding: 21
      },
      /** Data types in the literal packet
       * @enum {Integer}
       * @readonly
       */
      literal: {
        /** Binary data 'b' */
        binary: "b".charCodeAt(),
        /** Text data 't' */
        text: "t".charCodeAt(),
        /** Utf8 data 'u' */
        utf8: "u".charCodeAt(),
        /** MIME message body part 'm' */
        mime: "m".charCodeAt()
      },
      /** One pass signature packet type
       * @enum {Integer}
       * @readonly
       */
      signature: {
        /** 0x00: Signature of a binary document. */
        binary: 0,
        /** 0x01: Signature of a canonical text document.
         *
         * Canonicalyzing the document by converting line endings. */
        text: 1,
        /** 0x02: Standalone signature.
         *
         * This signature is a signature of only its own subpacket contents.
         * It is calculated identically to a signature over a zero-lengh
         * binary document.  Note that it doesn't make sense to have a V3
         * standalone signature. */
        standalone: 2,
        /** 0x10: Generic certification of a User ID and Public-Key packet.
         *
         * The issuer of this certification does not make any particular
         * assertion as to how well the certifier has checked that the owner
         * of the key is in fact the person described by the User ID. */
        certGeneric: 16,
        /** 0x11: Persona certification of a User ID and Public-Key packet.
         *
         * The issuer of this certification has not done any verification of
         * the claim that the owner of this key is the User ID specified. */
        certPersona: 17,
        /** 0x12: Casual certification of a User ID and Public-Key packet.
         *
         * The issuer of this certification has done some casual
         * verification of the claim of identity. */
        certCasual: 18,
        /** 0x13: Positive certification of a User ID and Public-Key packet.
         *
         * The issuer of this certification has done substantial
         * verification of the claim of identity.
         *
         * Most OpenPGP implementations make their "key signatures" as 0x10
         * certifications.  Some implementations can issue 0x11-0x13
         * certifications, but few differentiate between the types. */
        certPositive: 19,
        /** 0x30: Certification revocation signature
         *
         * This signature revokes an earlier User ID certification signature
         * (signature class 0x10 through 0x13) or direct-key signature
         * (0x1F).  It should be issued by the same key that issued the
         * revoked signature or an authorized revocation key.  The signature
         * is computed over the same data as the certificate that it
         * revokes, and should have a later creation date than that
         * certificate. */
        certRevocation: 48,
        /** 0x18: Subkey Binding Signature
         *
         * This signature is a statement by the top-level signing key that
         * indicates that it owns the subkey.  This signature is calculated
         * directly on the primary key and subkey, and not on any User ID or
         * other packets.  A signature that binds a signing subkey MUST have
         * an Embedded Signature subpacket in this binding signature that
         * contains a 0x19 signature made by the signing subkey on the
         * primary key and subkey. */
        subkeyBinding: 24,
        /** 0x19: Primary Key Binding Signature
         *
         * This signature is a statement by a signing subkey, indicating
         * that it is owned by the primary key and subkey.  This signature
         * is calculated the same way as a 0x18 signature: directly on the
         * primary key and subkey, and not on any User ID or other packets.
         *
         * When a signature is made over a key, the hash data starts with the
         * octet 0x99, followed by a two-octet length of the key, and then body
         * of the key packet.  (Note that this is an old-style packet header for
         * a key packet with two-octet length.)  A subkey binding signature
         * (type 0x18) or primary key binding signature (type 0x19) then hashes
         * the subkey using the same format as the main key (also using 0x99 as
         * the first octet). */
        keyBinding: 25,
        /** 0x1F: Signature directly on a key
         *
         * This signature is calculated directly on a key.  It binds the
         * information in the Signature subpackets to the key, and is
         * appropriate to be used for subpackets that provide information
         * about the key, such as the Revocation Key subpacket.  It is also
         * appropriate for statements that non-self certifiers want to make
         * about the key itself, rather than the binding between a key and a
         * name. */
        key: 31,
        /** 0x20: Key revocation signature
         *
         * The signature is calculated directly on the key being revoked.  A
         * revoked key is not to be used.  Only revocation signatures by the
         * key being revoked, or by an authorized revocation key, should be
         * considered valid revocation signatures.a */
        keyRevocation: 32,
        /** 0x28: Subkey revocation signature
         *
         * The signature is calculated directly on the subkey being revoked.
         * A revoked subkey is not to be used.  Only revocation signatures
         * by the top-level signature key that is bound to this subkey, or
         * by an authorized revocation key, should be considered valid
         * revocation signatures.
         *
         * Key revocation signatures (types 0x20 and 0x28)
         * hash only the key being revoked. */
        subkeyRevocation: 40,
        /** 0x40: Timestamp signature.
         * This signature is only meaningful for the timestamp contained in
         * it. */
        timestamp: 64,
        /** 0x50: Third-Party Confirmation signature.
         *
         * This signature is a signature over some other OpenPGP Signature
         * packet(s).  It is analogous to a notary seal on the signed data.
         * A third-party signature SHOULD include Signature Target
         * subpacket(s) to give easy identification.  Note that we really do
         * mean SHOULD.  There are plausible uses for this (such as a blind
         * party that only sees the signature, not the key or source
         * document) that cannot include a target subpacket. */
        thirdParty: 80
      },
      /** Signature subpacket type
       * @enum {Integer}
       * @readonly
       */
      signatureSubpacket: {
        signatureCreationTime: 2,
        signatureExpirationTime: 3,
        exportableCertification: 4,
        trustSignature: 5,
        regularExpression: 6,
        revocable: 7,
        keyExpirationTime: 9,
        placeholderBackwardsCompatibility: 10,
        preferredSymmetricAlgorithms: 11,
        revocationKey: 12,
        issuerKeyID: 16,
        notationData: 20,
        preferredHashAlgorithms: 21,
        preferredCompressionAlgorithms: 22,
        keyServerPreferences: 23,
        preferredKeyServer: 24,
        primaryUserID: 25,
        policyURI: 26,
        keyFlags: 27,
        signersUserID: 28,
        reasonForRevocation: 29,
        features: 30,
        signatureTarget: 31,
        embeddedSignature: 32,
        issuerFingerprint: 33,
        preferredAEADAlgorithms: 34,
        preferredCipherSuites: 39
      },
      /** Key flags
       * @enum {Integer}
       * @readonly
       */
      keyFlags: {
        /** 0x01 - This key may be used to certify other keys. */
        certifyKeys: 1,
        /** 0x02 - This key may be used to sign data. */
        signData: 2,
        /** 0x04 - This key may be used to encrypt communications. */
        encryptCommunication: 4,
        /** 0x08 - This key may be used to encrypt storage. */
        encryptStorage: 8,
        /** 0x10 - The private component of this key may have been split
         *        by a secret-sharing mechanism. */
        splitPrivateKey: 16,
        /** 0x20 - This key may be used for authentication. */
        authentication: 32,
        /** 0x80 - The private component of this key may be in the
         *        possession of more than one person. */
        sharedPrivateKey: 128
      },
      /** Armor type
       * @enum {Integer}
       * @readonly
       */
      armor: {
        multipartSection: 0,
        multipartLast: 1,
        signed: 2,
        message: 3,
        publicKey: 4,
        privateKey: 5,
        signature: 6
      },
      /** {@link https://tools.ietf.org/html/rfc4880#section-5.2.3.23|RFC4880, section 5.2.3.23}
       * @enum {Integer}
       * @readonly
       */
      reasonForRevocation: {
        /** No reason specified (key revocations or cert revocations) */
        noReason: 0,
        /** Key is superseded (key revocations) */
        keySuperseded: 1,
        /** Key material has been compromised (key revocations) */
        keyCompromised: 2,
        /** Key is retired and no longer used (key revocations) */
        keyRetired: 3,
        /** User ID information is no longer valid (cert revocations) */
        userIDInvalid: 32
      },
      /** {@link https://tools.ietf.org/html/draft-ietf-openpgp-rfc4880bis-04#section-5.2.3.25|RFC4880bis-04, section 5.2.3.25}
       * @enum {Integer}
       * @readonly
       */
      features: {
        /** 0x01 - Modification Detection (packets 18 and 19) */
        modificationDetection: 1,
        /** 0x02 - AEAD Encrypted Data Packet (packet 20) and version 5
         *         Symmetric-Key Encrypted Session Key Packets (packet 3) */
        aead: 2,
        /** 0x04 - Version 5 Public-Key Packet format and corresponding new
          *        fingerprint format */
        v5Keys: 4,
        seipdv2: 8
      },
      /**
       * Asserts validity of given value and converts from string/integer to integer.
       * @param {Object} type target enum type
       * @param {String|Integer} e value to check and/or convert
       * @returns {Integer} enum value if it exists
       * @throws {Error} if the value is invalid
       */
      write: function(type4, e) {
        if (typeof e === "number") {
          e = this.read(type4, e);
        }
        if (type4[e] !== void 0) {
          return type4[e];
        }
        throw new Error("Invalid enum value.");
      },
      /**
       * Converts enum integer value to the corresponding string, if it exists.
       * @param {Object} type target enum type
       * @param {Integer} e value to convert
       * @returns {String} name of enum value if it exists
       * @throws {Error} if the value is invalid
       */
      read: function(type4, e) {
        if (!type4[byValue]) {
          type4[byValue] = [];
          Object.entries(type4).forEach(([key, value]) => {
            type4[byValue][value] = key;
          });
        }
        if (type4[byValue][e] !== void 0) {
          return type4[byValue][e];
        }
        throw new Error("Invalid enum value.");
      }
    };
    config = {
      /**
       * @memberof module:config
       * @property {Integer} preferredHashAlgorithm Default hash algorithm {@link module:enums.hash}
       */
      preferredHashAlgorithm: enums.hash.sha512,
      /**
       * @memberof module:config
       * @property {Integer} preferredSymmetricAlgorithm Default encryption cipher {@link module:enums.symmetric}
       */
      preferredSymmetricAlgorithm: enums.symmetric.aes256,
      /**
       * @memberof module:config
       * @property {Integer} compression Default compression algorithm {@link module:enums.compression}
       */
      preferredCompressionAlgorithm: enums.compression.uncompressed,
      /**
       * Use Authenticated Encryption with Additional Data (AEAD) protection for symmetric encryption.
       * This option is applicable to:
       * - key generation (encryption key preferences),
       * - password-based message encryption, and
       * - private key encryption.
       * In the case of message encryption using public keys, the encryption key preferences are respected instead.
       * Note: not all OpenPGP implementations are compatible with this option.
       * @see {@link https://tools.ietf.org/html/draft-ietf-openpgp-crypto-refresh-10.html|draft-crypto-refresh-10}
       * @memberof module:config
       * @property {Boolean} aeadProtect
       */
      aeadProtect: false,
      /**
       * When reading OpenPGP v4 private keys (e.g. those generated in OpenPGP.js when not setting `config.v5Keys = true`)
       * which were encrypted by OpenPGP.js v5 (or older) using `config.aeadProtect = true`,
       * this option must be set, otherwise key parsing and/or key decryption will fail.
       * Note: only set this flag if you know that the keys are of the legacy type, as non-legacy keys
       * will be processed incorrectly.
       */
      parseAEADEncryptedV4KeysAsLegacy: false,
      /**
       * Default Authenticated Encryption with Additional Data (AEAD) encryption mode
       * Only has an effect when aeadProtect is set to true.
       * @memberof module:config
       * @property {Integer} preferredAEADAlgorithm Default AEAD mode {@link module:enums.aead}
       */
      preferredAEADAlgorithm: enums.aead.gcm,
      /**
       * Chunk Size Byte for Authenticated Encryption with Additional Data (AEAD) mode
       * Only has an effect when aeadProtect is set to true.
       * Must be an integer value from 0 to 56.
       * @memberof module:config
       * @property {Integer} aeadChunkSizeByte
       */
      aeadChunkSizeByte: 12,
      /**
       * Use v6 keys.
       * Note: not all OpenPGP implementations are compatible with this option.
       * **FUTURE OPENPGP.JS VERSIONS MAY BREAK COMPATIBILITY WHEN USING THIS OPTION**
       * @memberof module:config
       * @property {Boolean} v6Keys
       */
      v6Keys: false,
      /**
       * Enable parsing v5 keys and v5 signatures (which is different from the AEAD-encrypted SEIPDv2 packet).
       * These are non-standard entities, which in the crypto-refresh have been superseded
       * by v6 keys and v6 signatures, respectively.
       * However, generation of v5 entities was supported behind config flag in OpenPGP.js v5, and some other libraries,
       * hence parsing them might be necessary in some cases.
       * @memberof module:config
       * @property {Boolean} enableParsingV5Entities
       */
      enableParsingV5Entities: false,
      /**
       * S2K (String to Key) type, used for key derivation in the context of secret key encryption
       * and password-encrypted data. Weaker s2k options are not allowed.
       * Note: Argon2 is the strongest option but not all OpenPGP implementations are compatible with it
       * (pending standardisation).
       * @memberof module:config
       * @property {enums.s2k.argon2|enums.s2k.iterated} s2kType {@link module:enums.s2k}
       */
      s2kType: enums.s2k.iterated,
      /**
       * {@link https://tools.ietf.org/html/rfc4880#section-3.7.1.3| RFC4880 3.7.1.3}:
       * Iteration Count Byte for Iterated and Salted S2K (String to Key).
       * Only relevant if `config.s2kType` is set to `enums.s2k.iterated`.
       * Note: this is the exponent value, not the final number of iterations (refer to specs for more details).
       * @memberof module:config
       * @property {Integer} s2kIterationCountByte
       */
      s2kIterationCountByte: 224,
      /**
       * {@link https://tools.ietf.org/html/draft-ietf-openpgp-crypto-refresh-07.html#section-3.7.1.4| draft-crypto-refresh 3.7.1.4}:
       * Argon2 parameters for S2K (String to Key).
       * Only relevant if `config.s2kType` is set to `enums.s2k.argon2`.
       * Default settings correspond to the second recommendation from RFC9106 ("uniformly safe option"),
       * to ensure compatibility with memory-constrained environments.
       * For more details on the choice of parameters, see https://tools.ietf.org/html/rfc9106#section-4.
       * @memberof module:config
       * @property {Object} params
       * @property {Integer} params.passes - number of iterations t
       * @property {Integer} params.parallelism - degree of parallelism p
       * @property {Integer} params.memoryExponent - one-octet exponent indicating the memory size, which will be: 2**memoryExponent kibibytes.
       */
      s2kArgon2Params: {
        passes: 3,
        parallelism: 4,
        // lanes
        memoryExponent: 16
        // 64 MiB of RAM
      },
      /**
       * Max memory exponent allowed for Argon2 memory allocation (e.g. `maxArgon2MemoryExponent: 20` corresponds
       * to a memory limit of 2**20 KiB = 1GiB).
       * This limit is applied both on encryption (if `config.s2kType` is set to `enums.s2k.argon2`)
       * and decryption.
       * If the input memory exponent exceeds this value, the library will not attempt the argon2 key derivation
       * and instead directly throw an `Argon2OutOfMemoryError` error.
       * NB: on encryption, if `s2kArgon2Params.memoryExponent` is larger than `maxArgon2MemoryExponent`,
       * the operation will fail.
       */
      maxArgon2MemoryExponent: 30,
      /**
       * Allow decryption of messages without integrity protection.
       * This is an **insecure** setting:
       *  - message modifications cannot be detected, thus processing the decrypted data is potentially unsafe.
       *  - it enables downgrade attacks against integrity-protected messages.
       * @memberof module:config
       * @property {Boolean} allowUnauthenticatedMessages
       */
      allowUnauthenticatedMessages: false,
      /**
       * Allow streaming unauthenticated data before its integrity has been checked. This would allow the application to
       * process large streams while limiting memory usage by releasing the decrypted chunks as soon as possible
       * and deferring checking their integrity until the decrypted stream has been read in full.
       *
       * This setting is **insecure** if the encrypted data has been corrupted by a malicious entity:
       * - if the partially decrypted message is processed further or displayed to the user, it opens up the possibility of attacks such as EFAIL
       *    (see https://efail.de/).
       * - an attacker with access to traces or timing info of internal processing errors could learn some info about the data.
       *
       * NB: this setting does not apply to AEAD-encrypted data, where the AEAD data chunk is never released until integrity is confirmed.
       * @memberof module:config
       * @property {Boolean} allowUnauthenticatedStream
       */
      allowUnauthenticatedStream: false,
      /**
       * Minimum RSA key size allowed for key generation and message signing, verification and encryption.
       * The default is 2047 since due to a bug, previous versions of OpenPGP.js could generate 2047-bit keys instead of 2048-bit ones.
       * @memberof module:config
       * @property {Number} minRSABits
       */
      minRSABits: 2047,
      /**
       * Work-around for rare GPG decryption bug when encrypting with multiple passwords.
       * **Slower and slightly less secure**
       * @memberof module:config
       * @property {Boolean} passwordCollisionCheck
       */
      passwordCollisionCheck: false,
      /**
       * Allow decryption using RSA keys without `encrypt` flag.
       * This setting is potentially insecure, but it is needed to get around an old openpgpjs bug
       * where key flags were ignored when selecting a key for encryption.
       * @memberof module:config
       * @property {Boolean} allowInsecureDecryptionWithSigningKeys
       */
      allowInsecureDecryptionWithSigningKeys: false,
      /**
       * Allow verification of message signatures with keys whose validity at the time of signing cannot be determined.
       * Instead, a verification key will also be consider valid as long as it is valid at the current time.
       * This setting is potentially insecure, but it is needed to verify messages signed with keys that were later reformatted,
       * and have self-signature's creation date that does not match the primary key creation date.
       * @memberof module:config
       * @property {Boolean} allowInsecureDecryptionWithSigningKeys
       */
      allowInsecureVerificationWithReformattedKeys: false,
      /**
       * Allow using keys that do not have any key flags set.
       * Key flags are needed to restrict key usage to specific purposes: for instance, a signing key could only be allowed to certify other keys, and not sign messages
       * (see https://www.ietf.org/archive/id/draft-ietf-openpgp-crypto-refresh-10.html#section-5.2.3.29).
       * Some older keys do not declare any key flags, which means they are not allowed to be used for any operation.
       * This setting allows using such keys for any operation for which they are compatible, based on their public key algorithm.
       */
      allowMissingKeyFlags: false,
      /**
       * Enable constant-time decryption of RSA- and ElGamal-encrypted session keys, to hinder Bleichenbacher-like attacks (https://link.springer.com/chapter/10.1007/BFb0055716).
       * This setting has measurable performance impact and it is only helpful in application scenarios where both of the following conditions apply:
       * - new/incoming messages are automatically decrypted (without user interaction);
       * - an attacker can determine how long it takes to decrypt each message (e.g. due to decryption errors being logged remotely).
       * See also `constantTimePKCS1DecryptionSupportedSymmetricAlgorithms`.
       * @memberof module:config
       * @property {Boolean} constantTimePKCS1Decryption
       */
      constantTimePKCS1Decryption: false,
      /**
       * This setting is only meaningful if `constantTimePKCS1Decryption` is enabled.
       * Decryption of RSA- and ElGamal-encrypted session keys of symmetric algorithms different from the ones specified here will fail.
       * However, the more algorithms are added, the slower the decryption procedure becomes.
       * @memberof module:config
       * @property {Set<Integer>} constantTimePKCS1DecryptionSupportedSymmetricAlgorithms {@link module:enums.symmetric}
       */
      constantTimePKCS1DecryptionSupportedSymmetricAlgorithms: /* @__PURE__ */ new Set([enums.symmetric.aes128, enums.symmetric.aes192, enums.symmetric.aes256]),
      /**
       * @memberof module:config
       * @property {Boolean} ignoreUnsupportedPackets Ignore unsupported/unrecognizable packets on parsing instead of throwing an error
       */
      ignoreUnsupportedPackets: true,
      /**
       * @memberof module:config
       * @property {Boolean} ignoreMalformedPackets Ignore malformed packets on parsing instead of throwing an error
       */
      ignoreMalformedPackets: false,
      /**
       * @memberof module:config
       * @property {Boolean} enforceGrammar whether parsed OpenPGP messages must comform to the OpenPGP grammar
       *    defined in https://www.rfc-editor.org/rfc/rfc9580.html#name-openpgp-messages .
       */
      enforceGrammar: true,
      /**
       * Parsing of packets is normally restricted to a predefined set of packets. For example a Sym. Encrypted Integrity Protected Data Packet can only
       * contain a certain set of packets including LiteralDataPacket. With this setting we can allow additional packets, which is probably not advisable
       * as a global config setting, but can be used for specific function calls (e.g. decrypt method of Message).
       * @memberof module:config
       * @property {Array} additionalAllowedPackets Allow additional packets on parsing. Defined as array of packet classes, e.g. [PublicKeyPacket]
       */
      additionalAllowedPackets: [],
      /**
       * @memberof module:config
       * @property {Boolean} showVersion Whether to include {@link module:config/config.versionString} in armored messages
       */
      showVersion: false,
      /**
       * @memberof module:config
       * @property {Boolean} showComment Whether to include {@link module:config/config.commentString} in armored messages
       */
      showComment: false,
      /**
       * @memberof module:config
       * @property {String} versionString A version string to be included in armored messages
       */
      versionString: "OpenPGP.js 6.3.1",
      /**
       * @memberof module:config
       * @property {String} commentString A comment string to be included in armored messages
       */
      commentString: "https://openpgpjs.org",
      /**
       * Max userID string length (used for parsing)
       * @memberof module:config
       * @property {Integer} maxUserIDLength
       */
      maxUserIDLength: 1024 * 5,
      /**
       * Maximum size of decompressed messages
       * When decompressing a larger message, OpenPGP.js will throw an error.
       * @memberof module:config
       * @property {Integer} maxDecompressedMessageSize
       */
      maxDecompressedMessageSize: Infinity,
      /**
       * Contains notatations that are considered "known". Known notations do not trigger
       * validation error when the notation is marked as critical.
       * @memberof module:config
       * @property {Array} knownNotations
       */
      knownNotations: [],
      /**
       * If true, a salt notation is used to randomize signatures generated by v4 and v5 keys (v6 signatures are always non-deterministic, by design).
       * This protects EdDSA signatures from potentially leaking the secret key in case of faults (i.e. bitflips) which, in principle, could occur
       * during the signing computation. It is added to signatures of any algo for simplicity, and as it may also serve as protection in case of
       * weaknesses in the hash algo, potentially hindering e.g. some chosen-prefix attacks.
       * NOTE: the notation is interoperable, but will reveal that the signature has been generated using OpenPGP.js, which may not be desirable in some cases.
       */
      nonDeterministicSignaturesViaNotation: true,
      /**
       * Whether to use the the noble-curves library for curves (other than Curve25519) that are not supported by the available native crypto API.
       * When false, certain standard curves will not be supported (depending on the platform).
       * @memberof module:config
       * @property {Boolean} useEllipticFallback
       */
      useEllipticFallback: true,
      /**
       * Reject insecure hash algorithms
       * @memberof module:config
       * @property {Set<Integer>} rejectHashAlgorithms {@link module:enums.hash}
       */
      rejectHashAlgorithms: /* @__PURE__ */ new Set([enums.hash.md5, enums.hash.ripemd]),
      /**
       * Reject insecure message hash algorithms
       * @memberof module:config
       * @property {Set<Integer>} rejectMessageHashAlgorithms {@link module:enums.hash}
       */
      rejectMessageHashAlgorithms: /* @__PURE__ */ new Set([enums.hash.md5, enums.hash.ripemd, enums.hash.sha1]),
      /**
       * Reject insecure public key algorithms for key generation and message encryption, signing or verification
       * @memberof module:config
       * @property {Set<Integer>} rejectPublicKeyAlgorithms {@link module:enums.publicKey}
       */
      rejectPublicKeyAlgorithms: /* @__PURE__ */ new Set([enums.publicKey.elgamal, enums.publicKey.dsa]),
      /**
       * Reject non-standard curves for key generation, message encryption, signing or verification
       * @memberof module:config
       * @property {Set<String>} rejectCurves {@link module:enums.curve}
       */
      rejectCurves: /* @__PURE__ */ new Set([enums.curve.secp256k1])
    };
    debugMode = (() => {
      try {
        return process.env.NODE_ENV === "development";
      } catch {
      }
      return false;
    })();
    util11 = {
      isString: function(data) {
        return typeof data === "string" || data instanceof String;
      },
      nodeRequire: createRequire6(import.meta.url),
      isArray: function(data) {
        return data instanceof Array;
      },
      isUint8Array: isUint8Array2,
      isStream: isStream2,
      /**
       * Load noble-curves lib on demand and return the requested curve function
       * @param {enums.publicKey} publicKeyAlgo
       * @param {enums.curve} [curveName] - for algos supporting different curves (e.g. ECDSA)
       * @returns curve implementation
       * @throws on unrecognized curve, or curve not implemented by noble-curve
       */
      getNobleCurve: async (publicKeyAlgo, curveName) => {
        if (!config.useEllipticFallback) {
          throw new Error("This curve is only supported in the full build of OpenPGP.js");
        }
        const { nobleCurves: nobleCurves2 } = await Promise.resolve().then(function() {
          return noble_curves;
        });
        switch (publicKeyAlgo) {
          case enums.publicKey.ecdh:
          case enums.publicKey.ecdsa: {
            const curve = nobleCurves2.get(curveName);
            if (!curve)
              throw new Error("Unsupported curve");
            return curve;
          }
          case enums.publicKey.x448:
            return nobleCurves2.get("x448");
          case enums.publicKey.ed448:
            return nobleCurves2.get("ed448");
          default:
            throw new Error("Unsupported curve");
        }
      },
      readNumber: function(bytes) {
        let n2 = 0;
        for (let i4 = 0; i4 < bytes.length; i4++) {
          n2 += 256 ** i4 * bytes[bytes.length - 1 - i4];
        }
        return n2;
      },
      writeNumber: function(n2, bytes) {
        const b = new Uint8Array(bytes);
        for (let i4 = 0; i4 < bytes; i4++) {
          b[i4] = n2 >> 8 * (bytes - i4 - 1) & 255;
        }
        return b;
      },
      readDate: function(bytes) {
        const n2 = util11.readNumber(bytes);
        const d3 = new Date(n2 * 1e3);
        return d3;
      },
      writeDate: function(time) {
        const numeric = Math.floor(time.getTime() / 1e3);
        return util11.writeNumber(numeric, 4);
      },
      normalizeDate: function(time = Date.now()) {
        return time === null || time === Infinity ? time : new Date(Math.floor(+time / 1e3) * 1e3);
      },
      /**
       * Read one MPI from bytes in input
       * @param {Uint8Array} bytes - Input data to parse
       * @returns {Uint8Array} Parsed MPI.
       */
      readMPI: function(bytes) {
        const bits2 = bytes[0] << 8 | bytes[1];
        const bytelen = bits2 + 7 >>> 3;
        return util11.readExactSubarray(bytes, 2, 2 + bytelen);
      },
      /**
       * Read exactly `end - start` bytes from input.
       * This is a stricter version of `.subarray`.
       * @param {Uint8Array} input - Input data to parse
       * @returns {Uint8Array} subarray of size always equal to `end - start`
       * @throws if the input array is too short.
       */
      readExactSubarray: function(input, start, end) {
        if (input.length < end) {
          throw new Error("Input array too short");
        }
        return input.subarray(start, end);
      },
      /**
       * Left-pad Uint8Array to length by adding 0x0 bytes
       * @param {Uint8Array} bytes - Data to pad
       * @param {Number} length - Padded length
       * @returns {Uint8Array} Padded bytes.
       */
      leftPad(bytes, length) {
        if (bytes.length > length) {
          throw new Error("Input array too long");
        }
        const padded = new Uint8Array(length);
        const offset = length - bytes.length;
        padded.set(bytes, offset);
        return padded;
      },
      /**
       * Convert a Uint8Array to an MPI-formatted Uint8Array.
       * @param {Uint8Array} bin - An array of 8-bit integers to convert
       * @returns {Uint8Array} MPI-formatted Uint8Array.
       */
      uint8ArrayToMPI: function(bin) {
        const bitSize = util11.uint8ArrayBitLength(bin);
        if (bitSize === 0) {
          throw new Error("Zero MPI");
        }
        const stripped = bin.subarray(bin.length - Math.ceil(bitSize / 8));
        const prefix = new Uint8Array([(bitSize & 65280) >> 8, bitSize & 255]);
        return util11.concatUint8Array([prefix, stripped]);
      },
      /**
       * Return bit length of the input data
       * @param {Uint8Array} bin input data (big endian)
       * @returns bit length
       */
      uint8ArrayBitLength: function(bin) {
        let i4;
        for (i4 = 0; i4 < bin.length; i4++)
          if (bin[i4] !== 0)
            break;
        if (i4 === bin.length) {
          return 0;
        }
        const stripped = bin.subarray(i4);
        return (stripped.length - 1) * 8 + util11.nbits(stripped[0]);
      },
      /**
       * Convert a hex string to an array of 8-bit integers
       * @param {String} hex - A hex string to convert
       * @returns {Uint8Array} An array of 8-bit integers.
       */
      hexToUint8Array: function(hex) {
        const result2 = new Uint8Array(hex.length >> 1);
        for (let k2 = 0; k2 < hex.length >> 1; k2++) {
          result2[k2] = parseInt(hex.substr(k2 << 1, 2), 16);
        }
        return result2;
      },
      /**
       * Convert an array of 8-bit integers to a hex string
       * @param {Uint8Array} bytes - Array of 8-bit integers to convert
       * @returns {String} Hexadecimal representation of the array.
       */
      uint8ArrayToHex: function(bytes) {
        const hexAlphabet = "0123456789abcdef";
        let s = "";
        bytes.forEach((v) => {
          s += hexAlphabet[v >> 4] + hexAlphabet[v & 15];
        });
        return s;
      },
      /**
       * Convert a string to an array of 8-bit integers
       * @param {String} str - String to convert
       * @returns {Uint8Array} An array of 8-bit integers.
       */
      stringToUint8Array: function(str2) {
        return transform(str2, (str3) => {
          if (!util11.isString(str3)) {
            throw new Error("stringToUint8Array: Data must be in the form of a string");
          }
          const result2 = new Uint8Array(str3.length);
          for (let i4 = 0; i4 < str3.length; i4++) {
            result2[i4] = str3.charCodeAt(i4);
          }
          return result2;
        });
      },
      /**
       * Convert an array of 8-bit integers to a string
       * @param {Uint8Array} bytes - An array of 8-bit integers to convert
       * @returns {String} String representation of the array.
       */
      uint8ArrayToString: function(bytes) {
        bytes = new Uint8Array(bytes);
        const result2 = [];
        const bs = 1 << 14;
        const j2 = bytes.length;
        for (let i4 = 0; i4 < j2; i4 += bs) {
          result2.push(String.fromCharCode.apply(String, bytes.subarray(i4, i4 + bs < j2 ? i4 + bs : j2)));
        }
        return result2.join("");
      },
      /**
       * Convert a native javascript string to a Uint8Array of utf8 bytes
       * @param {String|ReadableStream} str - The string to convert
       * @returns {Uint8Array|ReadableStream} A valid squence of utf8 bytes.
       */
      encodeUTF8: function(str2) {
        const encoder = new TextEncoder("utf-8");
        function process25(value, lastChunk = false) {
          return encoder.encode(value, { stream: !lastChunk });
        }
        return transform(str2, process25, () => process25("", true));
      },
      /**
       * Convert a Uint8Array of utf8 bytes to a native javascript string
       * @param {Uint8Array|ReadableStream} utf8 - A valid squence of utf8 bytes
       * @returns {String|ReadableStream} A native javascript string.
       */
      decodeUTF8: function(utf8) {
        const decoder2 = new TextDecoder("utf-8");
        function process25(value, lastChunk = false) {
          return decoder2.decode(value, { stream: !lastChunk });
        }
        return transform(utf8, process25, () => process25(new Uint8Array(), true));
      },
      /**
       * Concat a list of Uint8Arrays, Strings or Streams
       * The caller must not mix Uint8Arrays with Strings, but may mix Streams with non-Streams.
       * @param {Array<Uint8Array|String|ReadableStream>} Array - Of Uint8Arrays/Strings/Streams to concatenate
       * @returns {Uint8Array|String|ReadableStream} Concatenated array.
       */
      concat,
      /**
       * Concat Uint8Arrays
       * @param {Array<Uint8Array>} Array - Of Uint8Arrays to concatenate
       * @returns {Uint8Array} Concatenated array.
       */
      concatUint8Array: concatUint8Array2,
      /**
       * Check Uint8Array equality
       * @param {Uint8Array} array1 - First array
       * @param {Uint8Array} array2 - Second array
       * @returns {Boolean} Equality.
       */
      equalsUint8Array: function(array1, array2) {
        if (!util11.isUint8Array(array1) || !util11.isUint8Array(array2)) {
          throw new Error("Data must be in the form of a Uint8Array");
        }
        if (array1.length !== array2.length) {
          return false;
        }
        for (let i4 = 0; i4 < array1.length; i4++) {
          if (array1[i4] !== array2[i4]) {
            return false;
          }
        }
        return true;
      },
      /**
       * Same as Array.findLastIndex, which is not supported on Safari 14 .
       * @param {Array} arr
       * @param {function(element, index, arr): boolean} findFn
       * @return index of last element matching `findFn`, -1 if not found
       */
      findLastIndex: function(arr, findFn) {
        for (let i4 = arr.length; i4 >= 0; i4--) {
          if (findFn(arr[i4], i4, arr)) {
            return i4;
          }
        }
        return -1;
      },
      /**
       * Calculates a 16bit sum of a Uint8Array by adding each character
       * codes modulus 65535
       * @param {Uint8Array} Uint8Array - To create a sum of
       * @returns {Uint8Array} 2 bytes containing the sum of all charcodes % 65535.
       */
      writeChecksum: function(text) {
        let s = 0;
        for (let i4 = 0; i4 < text.length; i4++) {
          s = s + text[i4] & 65535;
        }
        return util11.writeNumber(s, 2);
      },
      /**
       * Helper function to print a debug message. Debug
       * messages are only printed if
       * @param {String} str - String of the debug message
       */
      printDebug: function(str2) {
        if (debugMode) {
          console.log("[OpenPGP.js debug]", str2);
        }
      },
      /**
       * Helper function to print a debug error. Debug
       * messages are only printed if
       * @param {String} str - String of the debug message
       */
      printDebugError: function(error) {
        if (debugMode) {
          console.error("[OpenPGP.js debug]", error);
        }
      },
      // returns bit length of the integer x
      nbits: function(x3) {
        let r = 1;
        let t2 = x3 >>> 16;
        if (t2 !== 0) {
          x3 = t2;
          r += 16;
        }
        t2 = x3 >> 8;
        if (t2 !== 0) {
          x3 = t2;
          r += 8;
        }
        t2 = x3 >> 4;
        if (t2 !== 0) {
          x3 = t2;
          r += 4;
        }
        t2 = x3 >> 2;
        if (t2 !== 0) {
          x3 = t2;
          r += 2;
        }
        t2 = x3 >> 1;
        if (t2 !== 0) {
          x3 = t2;
          r += 1;
        }
        return r;
      },
      /**
       * If S[1] == 0, then double(S) == (S[2..128] || 0);
       * otherwise, double(S) == (S[2..128] || 0) xor
       * (zeros(120) || 10000111).
       *
       * Both OCB and EAX (through CMAC) require this function to be constant-time.
       *
       * @param {Uint8Array} data
       */
      double: function(data) {
        const doubleVar = new Uint8Array(data.length);
        const last = data.length - 1;
        for (let i4 = 0; i4 < last; i4++) {
          doubleVar[i4] = data[i4] << 1 ^ data[i4 + 1] >> 7;
        }
        doubleVar[last] = data[last] << 1 ^ (data[0] >> 7) * 135;
        return doubleVar;
      },
      /**
       * Shift a Uint8Array to the right by n bits
       * @param {Uint8Array} array - The array to shift
       * @param {Integer} bits - Amount of bits to shift (MUST be smaller
       * than 8)
       * @returns {String} Resulting array.
       */
      shiftRight: function(array, bits2) {
        if (bits2) {
          for (let i4 = array.length - 1; i4 >= 0; i4--) {
            array[i4] >>= bits2;
            if (i4 > 0) {
              array[i4] |= array[i4 - 1] << 8 - bits2;
            }
          }
        }
        return array;
      },
      /**
       * Get native Web Cryptography API.
       * @returns {Object} The SubtleCrypto API
       * @throws if the API is not available
       */
      getWebCrypto: function() {
        const globalWebCrypto = typeof globalThis2 !== "undefined" && globalThis2.crypto && globalThis2.crypto.subtle;
        const webCrypto2 = globalWebCrypto || this.getNodeCrypto()?.webcrypto.subtle;
        if (!webCrypto2) {
          throw new Error("The WebCrypto API is not available");
        }
        return webCrypto2;
      },
      /** @typedef {import('node:crypto')} NodeCrypto */
      /**
       * Get native Node.js crypto api.
       * @returns {NodeCrypto} The crypto module or 'undefined'.
       */
      getNodeCrypto: function() {
        return this.nodeRequire("crypto");
      },
      getNodeZlib: function() {
        return this.nodeRequire("zlib");
      },
      /**
       * Get native Node.js Buffer constructor. This should be used since
       * Buffer is not available under browserify.
       * @returns {Function} The Buffer constructor or 'undefined'.
       */
      getNodeBuffer: function() {
        return (this.nodeRequire("buffer") || {}).Buffer;
      },
      getHardwareConcurrency: function() {
        if (typeof navigator !== "undefined") {
          return navigator.hardwareConcurrency || 1;
        }
        const os20 = this.nodeRequire("os");
        return os20.cpus().length;
      },
      /**
       * Test email format to ensure basic compliance:
       * - must include a single @
       * - no control or space unicode chars allowed
       * - no backslash and square brackets (as the latter can mess with the userID parsing)
       * - cannot end with a punctuation char
       * These checks are not meant to be exhaustive; applications are strongly encouraged to implement stricter validation,
       * e.g. based on the W3C HTML spec (https://html.spec.whatwg.org/multipage/input.html#email-state-(type=email)).
       */
      isEmailAddress: function(data) {
        if (!util11.isString(data)) {
          return false;
        }
        const re = /^[^\p{C}\p{Z}@<>\\]+@[^\p{C}\p{Z}@<>\\]+[^\p{C}\p{Z}\p{P}]$/u;
        return re.test(data);
      },
      /**
       * Normalize line endings to <CR><LF>
       * Support any encoding where CR=0x0D, LF=0x0A
       */
      canonicalizeEOL: function(data) {
        const CR2 = 13;
        const LF2 = 10;
        let carryOverCR = false;
        return transform(data, (bytes) => {
          if (carryOverCR) {
            bytes = util11.concatUint8Array([new Uint8Array([CR2]), bytes]);
          }
          if (bytes[bytes.length - 1] === CR2) {
            carryOverCR = true;
            bytes = bytes.subarray(0, -1);
          } else {
            carryOverCR = false;
          }
          let index2;
          const indices = [];
          for (let i4 = 0; ; i4 = index2) {
            index2 = bytes.indexOf(LF2, i4) + 1;
            if (index2) {
              if (bytes[index2 - 2] !== CR2)
                indices.push(index2);
            } else {
              break;
            }
          }
          if (!indices.length) {
            return bytes;
          }
          const normalized = new Uint8Array(bytes.length + indices.length);
          let j2 = 0;
          for (let i4 = 0; i4 < indices.length; i4++) {
            const sub = bytes.subarray(indices[i4 - 1] || 0, indices[i4]);
            normalized.set(sub, j2);
            j2 += sub.length;
            normalized[j2 - 1] = CR2;
            normalized[j2] = LF2;
            j2++;
          }
          normalized.set(bytes.subarray(indices[indices.length - 1] || 0), j2);
          return normalized;
        }, () => carryOverCR ? new Uint8Array([CR2]) : void 0);
      },
      /**
       * Convert line endings from canonicalized <CR><LF> to native <LF>
       * Support any encoding where CR=0x0D, LF=0x0A
       */
      nativeEOL: function(data) {
        const CR2 = 13;
        const LF2 = 10;
        let carryOverCR = false;
        return transform(data, (bytes) => {
          if (carryOverCR && bytes[0] !== LF2) {
            bytes = util11.concatUint8Array([new Uint8Array([CR2]), bytes]);
          } else {
            bytes = new Uint8Array(bytes);
          }
          if (bytes[bytes.length - 1] === CR2) {
            carryOverCR = true;
            bytes = bytes.subarray(0, -1);
          } else {
            carryOverCR = false;
          }
          let index2;
          let j2 = 0;
          for (let i4 = 0; i4 !== bytes.length; i4 = index2) {
            index2 = bytes.indexOf(CR2, i4) + 1;
            if (!index2)
              index2 = bytes.length;
            const last = index2 - (bytes[index2] === LF2 ? 1 : 0);
            if (i4)
              bytes.copyWithin(j2, i4, last);
            j2 += last - i4;
          }
          return bytes.subarray(0, j2);
        }, () => carryOverCR ? new Uint8Array([CR2]) : void 0);
      },
      /**
       * Remove trailing spaces, carriage returns and tabs from each line
       */
      removeTrailingSpaces: function(text) {
        return text.split("\n").map((line) => {
          let i4 = line.length - 1;
          for (; i4 >= 0 && (line[i4] === " " || line[i4] === "	" || line[i4] === "\r"); i4--)
            ;
          return line.substr(0, i4 + 1);
        }).join("\n");
      },
      wrapError: function(error, cause) {
        if (!cause) {
          if (error instanceof Error) {
            return error;
          }
          return new Error(error);
        }
        if (error instanceof Error) {
          try {
            error.message += ": " + cause.message;
            error.cause = cause;
          } catch {
          }
          return error;
        }
        return new Error(error + ": " + cause.message, { cause });
      },
      /**
       * Map allowed packet tags to corresponding classes
       * Meant to be used to format `allowedPacket` for Packetlist.read
       * @param {Array<Object>} allowedClasses
       * @returns {Object} map from enum.packet to corresponding *Packet class
       */
      constructAllowedPackets: function(allowedClasses) {
        const map26 = {};
        allowedClasses.forEach((PacketClass) => {
          if (!PacketClass.tag) {
            throw new Error("Invalid input: expected a packet class");
          }
          map26[PacketClass.tag] = PacketClass;
        });
        return map26;
      },
      /**
       * Return a Promise that will resolve as soon as one of the promises in input resolves
       * or will reject if all input promises all rejected
       * (similar to Promise.any, but with slightly different error handling)
       * @param {Array<Promise>} promises
       * @return {Promise<Any>} Promise resolving to the result of the fastest fulfilled promise
       *                          or rejected with the Error of the last resolved Promise (if all promises are rejected)
       */
      anyPromise: function(promises) {
        return new Promise((resolve4, reject3) => {
          let exception2;
          void Promise.all(promises.map(async (promise2) => {
            try {
              resolve4(await promise2);
            } catch (e) {
              exception2 = e;
            }
          })).then(() => {
            reject3(exception2);
          });
        });
      },
      /**
       * Return either `a` or `b` based on `cond`, in algorithmic constant time.
       * @param {Boolean} cond
       * @param {Uint8Array} a
       * @param {Uint8Array} b
       * @returns `a` if `cond` is true, `b` otherwise
       */
      selectUint8Array: function(cond, a2, b) {
        const length = Math.max(a2.length, b.length);
        const result2 = new Uint8Array(length);
        let end = 0;
        for (let i4 = 0; i4 < result2.length; i4++) {
          result2[i4] = a2[i4] & 256 - cond | b[i4] & 255 + cond;
          end += cond & i4 < a2.length | 1 - cond & i4 < b.length;
        }
        return result2.subarray(0, end);
      },
      /**
       * Return either `a` or `b` based on `cond`, in algorithmic constant time.
       * NB: it only supports `a, b` with values between 0-255.
       * @param {Boolean} cond
       * @param {Uint8} a
       * @param {Uint8} b
       * @returns `a` if `cond` is true, `b` otherwise
       */
      selectUint8: function(cond, a2, b) {
        return a2 & 256 - cond | b & 255 + cond;
      },
      /**
       * @param {module:enums.symmetric} cipherAlgo
       */
      isAES: function(cipherAlgo) {
        return cipherAlgo === enums.symmetric.aes128 || cipherAlgo === enums.symmetric.aes192 || cipherAlgo === enums.symmetric.aes256;
      }
    };
    Buffer$3 = util11.getNodeBuffer();
    if (Buffer$3) {
      encodeChunk = (buf) => Buffer$3.from(buf).toString("base64");
      decodeChunk = (str2) => {
        const b = Buffer$3.from(str2, "base64");
        return new Uint8Array(b.buffer, b.byteOffset, b.byteLength);
      };
    } else {
      encodeChunk = (buf) => btoa(util11.uint8ArrayToString(buf));
      decodeChunk = (str2) => util11.stringToUint8Array(atob(str2));
    }
    crc_table = [
      new Array(255),
      new Array(255),
      new Array(255),
      new Array(255)
    ];
    for (let i4 = 0; i4 <= 255; i4++) {
      let crc = i4 << 16;
      for (let j2 = 0; j2 < 8; j2++) {
        crc = crc << 1 ^ ((crc & 8388608) !== 0 ? 8801531 : 0);
      }
      crc_table[0][i4] = (crc & 16711680) >> 16 | crc & 65280 | (crc & 255) << 16;
    }
    for (let i4 = 0; i4 <= 255; i4++) {
      crc_table[1][i4] = crc_table[0][i4] >> 8 ^ crc_table[0][crc_table[0][i4] & 255];
    }
    for (let i4 = 0; i4 <= 255; i4++) {
      crc_table[2][i4] = crc_table[1][i4] >> 8 ^ crc_table[0][crc_table[1][i4] & 255];
    }
    for (let i4 = 0; i4 <= 255; i4++) {
      crc_table[3][i4] = crc_table[2][i4] >> 8 ^ crc_table[0][crc_table[2][i4] & 255];
    }
    isLittleEndian$1 = (function() {
      const buffer3 = new ArrayBuffer(2);
      new DataView(buffer3).setInt16(
        0,
        255,
        true
        /* littleEndian */
      );
      return new Int16Array(buffer3)[0] === 255;
    })();
    _0n$8 = BigInt(0);
    _1n$c = BigInt(1);
    nodeCrypto$8 = util11.getNodeCrypto();
    _1n$b = BigInt(1);
    smallPrimes = [
      7,
      11,
      13,
      17,
      19,
      23,
      29,
      31,
      37,
      41,
      43,
      47,
      53,
      59,
      61,
      67,
      71,
      73,
      79,
      83,
      89,
      97,
      101,
      103,
      107,
      109,
      113,
      127,
      131,
      137,
      139,
      149,
      151,
      157,
      163,
      167,
      173,
      179,
      181,
      191,
      193,
      197,
      199,
      211,
      223,
      227,
      229,
      233,
      239,
      241,
      251,
      257,
      263,
      269,
      271,
      277,
      281,
      283,
      293,
      307,
      311,
      313,
      317,
      331,
      337,
      347,
      349,
      353,
      359,
      367,
      373,
      379,
      383,
      389,
      397,
      401,
      409,
      419,
      421,
      431,
      433,
      439,
      443,
      449,
      457,
      461,
      463,
      467,
      479,
      487,
      491,
      499,
      503,
      509,
      521,
      523,
      541,
      547,
      557,
      563,
      569,
      571,
      577,
      587,
      593,
      599,
      601,
      607,
      613,
      617,
      619,
      631,
      641,
      643,
      647,
      653,
      659,
      661,
      673,
      677,
      683,
      691,
      701,
      709,
      719,
      727,
      733,
      739,
      743,
      751,
      757,
      761,
      769,
      773,
      787,
      797,
      809,
      811,
      821,
      823,
      827,
      829,
      839,
      853,
      857,
      859,
      863,
      877,
      881,
      883,
      887,
      907,
      911,
      919,
      929,
      937,
      941,
      947,
      953,
      967,
      971,
      977,
      983,
      991,
      997,
      1009,
      1013,
      1019,
      1021,
      1031,
      1033,
      1039,
      1049,
      1051,
      1061,
      1063,
      1069,
      1087,
      1091,
      1093,
      1097,
      1103,
      1109,
      1117,
      1123,
      1129,
      1151,
      1153,
      1163,
      1171,
      1181,
      1187,
      1193,
      1201,
      1213,
      1217,
      1223,
      1229,
      1231,
      1237,
      1249,
      1259,
      1277,
      1279,
      1283,
      1289,
      1291,
      1297,
      1301,
      1303,
      1307,
      1319,
      1321,
      1327,
      1361,
      1367,
      1373,
      1381,
      1399,
      1409,
      1423,
      1427,
      1429,
      1433,
      1439,
      1447,
      1451,
      1453,
      1459,
      1471,
      1481,
      1483,
      1487,
      1489,
      1493,
      1499,
      1511,
      1523,
      1531,
      1543,
      1549,
      1553,
      1559,
      1567,
      1571,
      1579,
      1583,
      1597,
      1601,
      1607,
      1609,
      1613,
      1619,
      1621,
      1627,
      1637,
      1657,
      1663,
      1667,
      1669,
      1693,
      1697,
      1699,
      1709,
      1721,
      1723,
      1733,
      1741,
      1747,
      1753,
      1759,
      1777,
      1783,
      1787,
      1789,
      1801,
      1811,
      1823,
      1831,
      1847,
      1861,
      1867,
      1871,
      1873,
      1877,
      1879,
      1889,
      1901,
      1907,
      1913,
      1931,
      1933,
      1949,
      1951,
      1973,
      1979,
      1987,
      1993,
      1997,
      1999,
      2003,
      2011,
      2017,
      2027,
      2029,
      2039,
      2053,
      2063,
      2069,
      2081,
      2083,
      2087,
      2089,
      2099,
      2111,
      2113,
      2129,
      2131,
      2137,
      2141,
      2143,
      2153,
      2161,
      2179,
      2203,
      2207,
      2213,
      2221,
      2237,
      2239,
      2243,
      2251,
      2267,
      2269,
      2273,
      2281,
      2287,
      2293,
      2297,
      2309,
      2311,
      2333,
      2339,
      2341,
      2347,
      2351,
      2357,
      2371,
      2377,
      2381,
      2383,
      2389,
      2393,
      2399,
      2411,
      2417,
      2423,
      2437,
      2441,
      2447,
      2459,
      2467,
      2473,
      2477,
      2503,
      2521,
      2531,
      2539,
      2543,
      2549,
      2551,
      2557,
      2579,
      2591,
      2593,
      2609,
      2617,
      2621,
      2633,
      2647,
      2657,
      2659,
      2663,
      2671,
      2677,
      2683,
      2687,
      2689,
      2693,
      2699,
      2707,
      2711,
      2713,
      2719,
      2729,
      2731,
      2741,
      2749,
      2753,
      2767,
      2777,
      2789,
      2791,
      2797,
      2801,
      2803,
      2819,
      2833,
      2837,
      2843,
      2851,
      2857,
      2861,
      2879,
      2887,
      2897,
      2903,
      2909,
      2917,
      2927,
      2939,
      2953,
      2957,
      2963,
      2969,
      2971,
      2999,
      3001,
      3011,
      3019,
      3023,
      3037,
      3041,
      3049,
      3061,
      3067,
      3079,
      3083,
      3089,
      3109,
      3119,
      3121,
      3137,
      3163,
      3167,
      3169,
      3181,
      3187,
      3191,
      3203,
      3209,
      3217,
      3221,
      3229,
      3251,
      3253,
      3257,
      3259,
      3271,
      3299,
      3301,
      3307,
      3313,
      3319,
      3323,
      3329,
      3331,
      3343,
      3347,
      3359,
      3361,
      3371,
      3373,
      3389,
      3391,
      3407,
      3413,
      3433,
      3449,
      3457,
      3461,
      3463,
      3467,
      3469,
      3491,
      3499,
      3511,
      3517,
      3527,
      3529,
      3533,
      3539,
      3541,
      3547,
      3557,
      3559,
      3571,
      3581,
      3583,
      3593,
      3607,
      3613,
      3617,
      3623,
      3631,
      3637,
      3643,
      3659,
      3671,
      3673,
      3677,
      3691,
      3697,
      3701,
      3709,
      3719,
      3727,
      3733,
      3739,
      3761,
      3767,
      3769,
      3779,
      3793,
      3797,
      3803,
      3821,
      3823,
      3833,
      3847,
      3851,
      3853,
      3863,
      3877,
      3881,
      3889,
      3907,
      3911,
      3917,
      3919,
      3923,
      3929,
      3931,
      3943,
      3947,
      3967,
      3989,
      4001,
      4003,
      4007,
      4013,
      4019,
      4021,
      4027,
      4049,
      4051,
      4057,
      4073,
      4079,
      4091,
      4093,
      4099,
      4111,
      4127,
      4129,
      4133,
      4139,
      4153,
      4157,
      4159,
      4177,
      4201,
      4211,
      4217,
      4219,
      4229,
      4231,
      4241,
      4243,
      4253,
      4259,
      4261,
      4271,
      4273,
      4283,
      4289,
      4297,
      4327,
      4337,
      4339,
      4349,
      4357,
      4363,
      4373,
      4391,
      4397,
      4409,
      4421,
      4423,
      4441,
      4447,
      4451,
      4457,
      4463,
      4481,
      4483,
      4493,
      4507,
      4513,
      4517,
      4519,
      4523,
      4547,
      4549,
      4561,
      4567,
      4583,
      4591,
      4597,
      4603,
      4621,
      4637,
      4639,
      4643,
      4649,
      4651,
      4657,
      4663,
      4673,
      4679,
      4691,
      4703,
      4721,
      4723,
      4729,
      4733,
      4751,
      4759,
      4783,
      4787,
      4789,
      4793,
      4799,
      4801,
      4813,
      4817,
      4831,
      4861,
      4871,
      4877,
      4889,
      4903,
      4909,
      4919,
      4931,
      4933,
      4937,
      4943,
      4951,
      4957,
      4967,
      4969,
      4973,
      4987,
      4993,
      4999
    ].map((n2) => BigInt(n2));
    webCrypto$8 = util11.getWebCrypto();
    nodeCrypto$7 = util11.getNodeCrypto();
    nodeCryptoHashes = nodeCrypto$7 && nodeCrypto$7.getHashes();
    md5$1 = nodeHash("md5") || nobleHash("md5");
    sha1$2 = nodeHash("sha1") || nobleHash("sha1", "SHA-1");
    sha224$2 = nodeHash("sha224") || nobleHash("sha224");
    sha256$2 = nodeHash("sha256") || nobleHash("sha256", "SHA-256");
    sha384$2 = nodeHash("sha384") || nobleHash("sha384", "SHA-384");
    sha512$2 = nodeHash("sha512") || nobleHash("sha512", "SHA-512");
    ripemd = nodeHash("ripemd160") || nobleHash("ripemd160");
    sha3_256$1 = nodeHash("sha3-256") || nobleHash("sha3_256");
    sha3_512$1 = nodeHash("sha3-512") || nobleHash("sha3_512");
    hash_headers = [];
    hash_headers[1] = [
      48,
      32,
      48,
      12,
      6,
      8,
      42,
      134,
      72,
      134,
      247,
      13,
      2,
      5,
      5,
      0,
      4,
      16
    ];
    hash_headers[2] = [48, 33, 48, 9, 6, 5, 43, 14, 3, 2, 26, 5, 0, 4, 20];
    hash_headers[3] = [48, 33, 48, 9, 6, 5, 43, 36, 3, 2, 1, 5, 0, 4, 20];
    hash_headers[8] = [
      48,
      49,
      48,
      13,
      6,
      9,
      96,
      134,
      72,
      1,
      101,
      3,
      4,
      2,
      1,
      5,
      0,
      4,
      32
    ];
    hash_headers[9] = [
      48,
      65,
      48,
      13,
      6,
      9,
      96,
      134,
      72,
      1,
      101,
      3,
      4,
      2,
      2,
      5,
      0,
      4,
      48
    ];
    hash_headers[10] = [
      48,
      81,
      48,
      13,
      6,
      9,
      96,
      134,
      72,
      1,
      101,
      3,
      4,
      2,
      3,
      5,
      0,
      4,
      64
    ];
    hash_headers[11] = [
      48,
      45,
      48,
      13,
      6,
      9,
      96,
      134,
      72,
      1,
      101,
      3,
      4,
      2,
      4,
      5,
      0,
      4,
      28
    ];
    hash_headers[12] = [
      48,
      49,
      48,
      13,
      6,
      9,
      96,
      134,
      72,
      1,
      101,
      3,
      4,
      2,
      8,
      5,
      0,
      4,
      32
    ];
    hash_headers[14] = [
      48,
      81,
      48,
      13,
      6,
      9,
      96,
      134,
      72,
      1,
      101,
      3,
      4,
      2,
      10,
      5,
      0,
      4,
      64
    ];
    webCrypto$7 = util11.getWebCrypto();
    nodeCrypto$6 = util11.getNodeCrypto();
    _1n$a = BigInt(1);
    _1n$9 = BigInt(1);
    knownOIDs = {
      "2a8648ce3d030107": enums.curve.nistP256,
      "2b81040022": enums.curve.nistP384,
      "2b81040023": enums.curve.nistP521,
      "2b8104000a": enums.curve.secp256k1,
      "2b06010401da470f01": enums.curve.ed25519Legacy,
      "2b060104019755010501": enums.curve.curve25519Legacy,
      "2b2403030208010107": enums.curve.brainpoolP256r1,
      "2b240303020801010b": enums.curve.brainpoolP384r1,
      "2b240303020801010d": enums.curve.brainpoolP512r1
    };
    OID = class _OID {
      constructor(oid) {
        if (oid instanceof _OID) {
          this.oid = oid.oid;
        } else if (util11.isArray(oid) || util11.isUint8Array(oid)) {
          oid = new Uint8Array(oid);
          if (oid[0] === 6) {
            if (oid[1] !== oid.length - 2) {
              throw new Error("Length mismatch in DER encoded oid");
            }
            oid = oid.subarray(2);
          }
          this.oid = oid;
        } else {
          this.oid = "";
        }
      }
      /**
       * Method to read an OID object
       * @param {Uint8Array} input - Where to read the OID from
       * @returns {Number} Number of read bytes.
       */
      read(input) {
        if (input.length >= 1) {
          const length = input[0];
          if (input.length >= 1 + length) {
            this.oid = input.subarray(1, 1 + length);
            return 1 + this.oid.length;
          }
        }
        throw new Error("Invalid oid");
      }
      /**
       * Serialize an OID object
       * @returns {Uint8Array} Array with the serialized value the OID.
       */
      write() {
        return util11.concatUint8Array([new Uint8Array([this.oid.length]), this.oid]);
      }
      /**
       * Serialize an OID object as a hex string
       * @returns {string} String with the hex value of the OID.
       */
      toHex() {
        return util11.uint8ArrayToHex(this.oid);
      }
      /**
       * If a known curve object identifier, return the canonical name of the curve
       * @returns {enums.curve} String with the canonical name of the curve
       * @throws if unknown
       */
      getName() {
        const name = knownOIDs[this.toHex()];
        if (!name) {
          throw new Error("Unknown curve object identifier.");
        }
        return name;
      }
    };
    UnsupportedError = class _UnsupportedError extends Error {
      constructor(...params) {
        super(...params);
        if (Error.captureStackTrace) {
          Error.captureStackTrace(this, _UnsupportedError);
        }
        this.name = "UnsupportedError";
      }
    };
    UnknownPacketError = class extends UnsupportedError {
      constructor(...params) {
        super(...params);
        if (Error.captureStackTrace) {
          Error.captureStackTrace(this, UnsupportedError);
        }
        this.name = "UnknownPacketError";
      }
    };
    MalformedPacketError = class extends UnsupportedError {
      constructor(...params) {
        super(...params);
        if (Error.captureStackTrace) {
          Error.captureStackTrace(this, UnsupportedError);
        }
        this.name = "MalformedPacketError";
      }
    };
    UnparseablePacket = class {
      constructor(tag, rawContent) {
        this.tag = tag;
        this.rawContent = rawContent;
      }
      write() {
        return this.rawContent;
      }
    };
    publicKeyToJWK$1 = (algo, publicKey) => {
      switch (algo) {
        case enums.publicKey.ed25519: {
          const jwk = {
            kty: "OKP",
            crv: "Ed25519",
            x: uint8ArrayToB64(publicKey),
            ext: true
          };
          return jwk;
        }
        default:
          throw new Error("Unsupported EdDSA algorithm");
      }
    };
    privateKeyToJWK$1 = (algo, publicKey, privateKey) => {
      switch (algo) {
        case enums.publicKey.ed25519: {
          const jwk = publicKeyToJWK$1(algo, publicKey);
          jwk.d = uint8ArrayToB64(privateKey);
          return jwk;
        }
        default:
          throw new Error("Unsupported EdDSA algorithm");
      }
    };
    eddsa$1 = /* @__PURE__ */ Object.freeze({
      __proto__: null,
      generate: generate$3,
      getPayloadSize: getPayloadSize$1,
      getPreferredHashAlgo: getPreferredHashAlgo$2,
      sign: sign$5,
      validateParams: validateParams$7,
      verify: verify$5
    });
    isLE$1 = /* @__PURE__ */ (() => new Uint8Array(new Uint32Array([287454020]).buffer)[0] === 68)();
    wrapCipher = /* @__NO_SIDE_EFFECTS__ */ (params, constructor) => {
      function wrappedCipher(key, ...args) {
        abytes$1(key);
        if (!isLE$1)
          throw new Error("Non little-endian hardware is not yet supported");
        if (params.nonceLength !== void 0) {
          const nonce = args[0];
          if (!nonce)
            throw new Error("nonce / iv required");
          if (params.varSizeNonce)
            abytes$1(nonce);
          else
            abytes$1(nonce, params.nonceLength);
        }
        const tagl = params.tagLength;
        if (tagl && args[1] !== void 0) {
          abytes$1(args[1]);
        }
        const cipher = constructor(key, ...args);
        const checkOutput = (fnLength, output) => {
          if (output !== void 0) {
            if (fnLength !== 2)
              throw new Error("cipher output not supported");
            abytes$1(output);
          }
        };
        let called = false;
        const wrCipher = {
          encrypt(data, output) {
            if (called)
              throw new Error("cannot encrypt() twice with same key + nonce");
            called = true;
            abytes$1(data);
            checkOutput(cipher.encrypt.length, output);
            return cipher.encrypt(data, output);
          },
          decrypt(data, output) {
            abytes$1(data);
            if (tagl && data.length < tagl)
              throw new Error("invalid ciphertext length: smaller than tagLength=" + tagl);
            checkOutput(cipher.decrypt.length, output);
            return cipher.decrypt(data, output);
          }
        };
        return wrCipher;
      }
      Object.assign(wrappedCipher, params);
      return wrappedCipher;
    };
    BLOCK_SIZE$1 = 16;
    ZEROS16 = /* @__PURE__ */ new Uint8Array(16);
    ZEROS32 = u32$1(ZEROS16);
    POLY$1 = 225;
    mul2$1 = (s0, s1, s2, s3) => {
      const hiBit = s3 & 1;
      return {
        s3: s2 << 31 | s3 >>> 1,
        s2: s1 << 31 | s2 >>> 1,
        s1: s0 << 31 | s1 >>> 1,
        s0: s0 >>> 1 ^ POLY$1 << 24 & -(hiBit & 1)
        // reduce % poly
      };
    };
    swapLE = (n2) => (n2 >>> 0 & 255) << 24 | (n2 >>> 8 & 255) << 16 | (n2 >>> 16 & 255) << 8 | n2 >>> 24 & 255 | 0;
    estimateWindow = (bytes) => {
      if (bytes > 64 * 1024)
        return 8;
      if (bytes > 1024)
        return 4;
      return 2;
    };
    GHASH = class {
      // We select bits per window adaptively based on expectedLength
      constructor(key, expectedLength) {
        this.blockLen = BLOCK_SIZE$1;
        this.outputLen = BLOCK_SIZE$1;
        this.s0 = 0;
        this.s1 = 0;
        this.s2 = 0;
        this.s3 = 0;
        this.finished = false;
        key = toBytes$1(key);
        abytes$1(key, 16);
        const kView = createView$1(key);
        let k0 = kView.getUint32(0, false);
        let k1 = kView.getUint32(4, false);
        let k2 = kView.getUint32(8, false);
        let k3 = kView.getUint32(12, false);
        const doubles = [];
        for (let i4 = 0; i4 < 128; i4++) {
          doubles.push({ s0: swapLE(k0), s1: swapLE(k1), s2: swapLE(k2), s3: swapLE(k3) });
          ({ s0: k0, s1: k1, s2: k2, s3: k3 } = mul2$1(k0, k1, k2, k3));
        }
        const W2 = estimateWindow(expectedLength || 1024);
        if (![1, 2, 4, 8].includes(W2))
          throw new Error("ghash: invalid window size, expected 2, 4 or 8");
        this.W = W2;
        const bits2 = 128;
        const windows = bits2 / W2;
        const windowSize = this.windowSize = 2 ** W2;
        const items = [];
        for (let w = 0; w < windows; w++) {
          for (let byte = 0; byte < windowSize; byte++) {
            let s0 = 0, s1 = 0, s2 = 0, s3 = 0;
            for (let j2 = 0; j2 < W2; j2++) {
              const bit = byte >>> W2 - j2 - 1 & 1;
              if (!bit)
                continue;
              const { s0: d0, s1: d1, s2: d22, s3: d3 } = doubles[W2 * w + j2];
              s0 ^= d0, s1 ^= d1, s2 ^= d22, s3 ^= d3;
            }
            items.push({ s0, s1, s2, s3 });
          }
        }
        this.t = items;
      }
      _updateBlock(s0, s1, s2, s3) {
        s0 ^= this.s0, s1 ^= this.s1, s2 ^= this.s2, s3 ^= this.s3;
        const { W: W2, t: t2, windowSize } = this;
        let o0 = 0, o1 = 0, o2 = 0, o3 = 0;
        const mask = (1 << W2) - 1;
        let w = 0;
        for (const num of [s0, s1, s2, s3]) {
          for (let bytePos = 0; bytePos < 4; bytePos++) {
            const byte = num >>> 8 * bytePos & 255;
            for (let bitPos = 8 / W2 - 1; bitPos >= 0; bitPos--) {
              const bit = byte >>> W2 * bitPos & mask;
              const { s0: e0, s1: e1, s2: e2, s3: e3 } = t2[w * windowSize + bit];
              o0 ^= e0, o1 ^= e1, o2 ^= e2, o3 ^= e3;
              w += 1;
            }
          }
        }
        this.s0 = o0;
        this.s1 = o1;
        this.s2 = o2;
        this.s3 = o3;
      }
      update(data) {
        aexists$1(this);
        data = toBytes$1(data);
        abytes$1(data);
        const b32 = u32$1(data);
        const blocks = Math.floor(data.length / BLOCK_SIZE$1);
        const left = data.length % BLOCK_SIZE$1;
        for (let i4 = 0; i4 < blocks; i4++) {
          this._updateBlock(b32[i4 * 4 + 0], b32[i4 * 4 + 1], b32[i4 * 4 + 2], b32[i4 * 4 + 3]);
        }
        if (left) {
          ZEROS16.set(data.subarray(blocks * BLOCK_SIZE$1));
          this._updateBlock(ZEROS32[0], ZEROS32[1], ZEROS32[2], ZEROS32[3]);
          clean$1(ZEROS32);
        }
        return this;
      }
      destroy() {
        const { t: t2 } = this;
        for (const elm of t2) {
          elm.s0 = 0, elm.s1 = 0, elm.s2 = 0, elm.s3 = 0;
        }
      }
      digestInto(out) {
        aexists$1(this);
        aoutput$1(out, this);
        this.finished = true;
        const { s0, s1, s2, s3 } = this;
        const o32 = u32$1(out);
        o32[0] = s0;
        o32[1] = s1;
        o32[2] = s2;
        o32[3] = s3;
        return out;
      }
      digest() {
        const res = new Uint8Array(BLOCK_SIZE$1);
        this.digestInto(res);
        this.destroy();
        return res;
      }
    };
    Polyval = class extends GHASH {
      constructor(key, expectedLength) {
        key = toBytes$1(key);
        abytes$1(key);
        const ghKey = _toGHASHKey(copyBytes$1(key));
        super(ghKey, expectedLength);
        clean$1(ghKey);
      }
      update(data) {
        data = toBytes$1(data);
        aexists$1(this);
        const b32 = u32$1(data);
        const left = data.length % BLOCK_SIZE$1;
        const blocks = Math.floor(data.length / BLOCK_SIZE$1);
        for (let i4 = 0; i4 < blocks; i4++) {
          this._updateBlock(swapLE(b32[i4 * 4 + 3]), swapLE(b32[i4 * 4 + 2]), swapLE(b32[i4 * 4 + 1]), swapLE(b32[i4 * 4 + 0]));
        }
        if (left) {
          ZEROS16.set(data.subarray(blocks * BLOCK_SIZE$1));
          this._updateBlock(swapLE(ZEROS32[3]), swapLE(ZEROS32[2]), swapLE(ZEROS32[1]), swapLE(ZEROS32[0]));
          clean$1(ZEROS32);
        }
        return this;
      }
      digestInto(out) {
        aexists$1(this);
        aoutput$1(out, this);
        this.finished = true;
        const { s0, s1, s2, s3 } = this;
        const o32 = u32$1(out);
        o32[0] = s0;
        o32[1] = s1;
        o32[2] = s2;
        o32[3] = s3;
        return out.reverse();
      }
    };
    ghash = wrapConstructorWithKey((key, expectedLength) => new GHASH(key, expectedLength));
    wrapConstructorWithKey((key, expectedLength) => new Polyval(key, expectedLength));
    BLOCK_SIZE = 16;
    BLOCK_SIZE32 = 4;
    EMPTY_BLOCK = /* @__PURE__ */ new Uint8Array(BLOCK_SIZE);
    POLY = 283;
    sbox = /* @__PURE__ */ (() => {
      const t2 = new Uint8Array(256);
      for (let i4 = 0, x3 = 1; i4 < 256; i4++, x3 ^= mul2(x3))
        t2[i4] = x3;
      const box = new Uint8Array(256);
      box[0] = 99;
      for (let i4 = 0; i4 < 255; i4++) {
        let x3 = t2[255 - i4];
        x3 |= x3 << 8;
        box[t2[i4]] = (x3 ^ x3 >> 4 ^ x3 >> 5 ^ x3 >> 6 ^ x3 >> 7 ^ 99) & 255;
      }
      clean$1(t2);
      return box;
    })();
    invSbox = /* @__PURE__ */ sbox.map((_, j2) => sbox.indexOf(j2));
    rotr32_8 = (n2) => n2 << 24 | n2 >>> 8;
    rotl32_8 = (n2) => n2 << 8 | n2 >>> 24;
    byteSwap$1 = (word) => word << 24 & 4278190080 | word << 8 & 16711680 | word >>> 8 & 65280 | word >>> 24 & 255;
    tableEncoding = /* @__PURE__ */ genTtable(sbox, (s) => mul(s, 3) << 24 | s << 16 | s << 8 | mul(s, 2));
    tableDecoding = /* @__PURE__ */ genTtable(invSbox, (s) => mul(s, 11) << 24 | mul(s, 13) << 16 | mul(s, 9) << 8 | mul(s, 14));
    xPowers = /* @__PURE__ */ (() => {
      const p = new Uint8Array(16);
      for (let i4 = 0, x3 = 1; i4 < 16; i4++, x3 = mul2(x3))
        p[i4] = x3;
      return p;
    })();
    ctr = /* @__PURE__ */ wrapCipher({ blockSize: 16, nonceLength: 16 }, function aesctr(key, nonce) {
      function processCtr(buf, dst) {
        abytes$1(buf);
        if (dst !== void 0) {
          abytes$1(dst);
          if (!isAligned32(dst))
            throw new Error("unaligned destination");
        }
        const xk = expandKeyLE(key);
        const n2 = copyBytes$1(nonce);
        const toClean = [xk, n2];
        if (!isAligned32(buf))
          toClean.push(buf = copyBytes$1(buf));
        const out = ctrCounter(xk, n2, buf, dst);
        clean$1(...toClean);
        return out;
      }
      return {
        encrypt: (plaintext, dst) => processCtr(plaintext, dst),
        decrypt: (ciphertext, dst) => processCtr(ciphertext, dst)
      };
    });
    cbc = /* @__PURE__ */ wrapCipher({ blockSize: 16, nonceLength: 16 }, function aescbc(key, iv, opts3 = {}) {
      const pcks5 = !opts3.disablePadding;
      return {
        encrypt(plaintext, dst) {
          const xk = expandKeyLE(key);
          const { b, o: o2, out: _out } = validateBlockEncrypt(plaintext, pcks5, dst);
          let _iv = iv;
          const toClean = [xk];
          if (!isAligned32(_iv))
            toClean.push(_iv = copyBytes$1(_iv));
          const n32 = u32$1(_iv);
          let s0 = n32[0], s1 = n32[1], s2 = n32[2], s3 = n32[3];
          let i4 = 0;
          for (; i4 + 4 <= b.length; ) {
            s0 ^= b[i4 + 0], s1 ^= b[i4 + 1], s2 ^= b[i4 + 2], s3 ^= b[i4 + 3];
            ({ s0, s1, s2, s3 } = encrypt$4(xk, s0, s1, s2, s3));
            o2[i4++] = s0, o2[i4++] = s1, o2[i4++] = s2, o2[i4++] = s3;
          }
          if (pcks5) {
            const tmp32 = padPCKS(plaintext.subarray(i4 * 4));
            s0 ^= tmp32[0], s1 ^= tmp32[1], s2 ^= tmp32[2], s3 ^= tmp32[3];
            ({ s0, s1, s2, s3 } = encrypt$4(xk, s0, s1, s2, s3));
            o2[i4++] = s0, o2[i4++] = s1, o2[i4++] = s2, o2[i4++] = s3;
          }
          clean$1(...toClean);
          return _out;
        },
        decrypt(ciphertext, dst) {
          validateBlockDecrypt(ciphertext);
          const xk = expandKeyDecLE(key);
          let _iv = iv;
          const toClean = [xk];
          if (!isAligned32(_iv))
            toClean.push(_iv = copyBytes$1(_iv));
          const n32 = u32$1(_iv);
          dst = getOutput(ciphertext.length, dst);
          if (!isAligned32(ciphertext))
            toClean.push(ciphertext = copyBytes$1(ciphertext));
          complexOverlapBytes(ciphertext, dst);
          const b = u32$1(ciphertext);
          const o2 = u32$1(dst);
          let s0 = n32[0], s1 = n32[1], s2 = n32[2], s3 = n32[3];
          for (let i4 = 0; i4 + 4 <= b.length; ) {
            const ps0 = s0, ps1 = s1, ps2 = s2, ps3 = s3;
            s0 = b[i4 + 0], s1 = b[i4 + 1], s2 = b[i4 + 2], s3 = b[i4 + 3];
            const { s0: o0, s1: o1, s2: o22, s3: o3 } = decrypt$4(xk, s0, s1, s2, s3);
            o2[i4++] = o0 ^ ps0, o2[i4++] = o1 ^ ps1, o2[i4++] = o22 ^ ps2, o2[i4++] = o3 ^ ps3;
          }
          clean$1(...toClean);
          return validatePCKS(dst, pcks5);
        }
      };
    });
    cfb = /* @__PURE__ */ wrapCipher({ blockSize: 16, nonceLength: 16 }, function aescfb(key, iv) {
      function processCfb(src2, isEncrypt, dst) {
        abytes$1(src2);
        const srcLen = src2.length;
        dst = getOutput(srcLen, dst);
        if (overlapBytes(src2, dst))
          throw new Error("overlapping src and dst not supported.");
        const xk = expandKeyLE(key);
        let _iv = iv;
        const toClean = [xk];
        if (!isAligned32(_iv))
          toClean.push(_iv = copyBytes$1(_iv));
        if (!isAligned32(src2))
          toClean.push(src2 = copyBytes$1(src2));
        const src32 = u32$1(src2);
        const dst32 = u32$1(dst);
        const next32 = isEncrypt ? dst32 : src32;
        const n32 = u32$1(_iv);
        let s0 = n32[0], s1 = n32[1], s2 = n32[2], s3 = n32[3];
        for (let i4 = 0; i4 + 4 <= src32.length; ) {
          const { s0: e0, s1: e1, s2: e2, s3: e3 } = encrypt$4(xk, s0, s1, s2, s3);
          dst32[i4 + 0] = src32[i4 + 0] ^ e0;
          dst32[i4 + 1] = src32[i4 + 1] ^ e1;
          dst32[i4 + 2] = src32[i4 + 2] ^ e2;
          dst32[i4 + 3] = src32[i4 + 3] ^ e3;
          s0 = next32[i4++], s1 = next32[i4++], s2 = next32[i4++], s3 = next32[i4++];
        }
        const start = BLOCK_SIZE * Math.floor(src32.length / BLOCK_SIZE32);
        if (start < srcLen) {
          ({ s0, s1, s2, s3 } = encrypt$4(xk, s0, s1, s2, s3));
          const buf = u8$1(new Uint32Array([s0, s1, s2, s3]));
          for (let i4 = start, pos = 0; i4 < srcLen; i4++, pos++)
            dst[i4] = src2[i4] ^ buf[pos];
          clean$1(buf);
        }
        clean$1(...toClean);
        return dst;
      }
      return {
        encrypt: (plaintext, dst) => processCfb(plaintext, true, dst),
        decrypt: (ciphertext, dst) => processCfb(ciphertext, false, dst)
      };
    });
    gcm = /* @__PURE__ */ wrapCipher({ blockSize: 16, nonceLength: 12, tagLength: 16, varSizeNonce: true }, function aesgcm(key, nonce, AAD) {
      if (nonce.length < 8)
        throw new Error("aes/gcm: invalid nonce length");
      const tagLength2 = 16;
      function _computeTag(authKey, tagMask, data) {
        const tag = computeTag(ghash, false, authKey, data, AAD);
        for (let i4 = 0; i4 < tagMask.length; i4++)
          tag[i4] ^= tagMask[i4];
        return tag;
      }
      function deriveKeys() {
        const xk = expandKeyLE(key);
        const authKey = EMPTY_BLOCK.slice();
        const counter = EMPTY_BLOCK.slice();
        ctr32(xk, false, counter, counter, authKey);
        if (nonce.length === 12) {
          counter.set(nonce);
        } else {
          const nonceLen = EMPTY_BLOCK.slice();
          const view = createView$1(nonceLen);
          setBigUint64$1(view, 8, BigInt(nonce.length * 8), false);
          const g = ghash.create(authKey).update(nonce).update(nonceLen);
          g.digestInto(counter);
          g.destroy();
        }
        const tagMask = ctr32(xk, false, counter, EMPTY_BLOCK);
        return { xk, authKey, counter, tagMask };
      }
      return {
        encrypt(plaintext) {
          const { xk, authKey, counter, tagMask } = deriveKeys();
          const out = new Uint8Array(plaintext.length + tagLength2);
          const toClean = [xk, authKey, counter, tagMask];
          if (!isAligned32(plaintext))
            toClean.push(plaintext = copyBytes$1(plaintext));
          ctr32(xk, false, counter, plaintext, out.subarray(0, plaintext.length));
          const tag = _computeTag(authKey, tagMask, out.subarray(0, out.length - tagLength2));
          toClean.push(tag);
          out.set(tag, plaintext.length);
          clean$1(...toClean);
          return out;
        },
        decrypt(ciphertext) {
          const { xk, authKey, counter, tagMask } = deriveKeys();
          const toClean = [xk, authKey, tagMask, counter];
          if (!isAligned32(ciphertext))
            toClean.push(ciphertext = copyBytes$1(ciphertext));
          const data = ciphertext.subarray(0, -tagLength2);
          const passedTag = ciphertext.subarray(-tagLength2);
          const tag = _computeTag(authKey, tagMask, data);
          toClean.push(tag);
          if (!equalBytes(tag, passedTag))
            throw new Error("aes/gcm: invalid ghash tag");
          const out = ctr32(xk, false, counter, data);
          clean$1(...toClean);
          return out;
        }
      };
    });
    AESW = {
      /*
      High-level pseudocode:
      ```
      A: u64 = IV
      out = []
      for (let i=0, ctr = 0; i<6; i++) {
        for (const chunk of chunks(plaintext, 8)) {
          A ^= swapEndianess(ctr++)
          [A, res] = chunks(encrypt(A || chunk), 8);
          out ||= res
        }
      }
      out = A || out
      ```
      Decrypt is the same, but reversed.
      */
      encrypt(kek, out) {
        if (out.length >= 2 ** 32)
          throw new Error("plaintext should be less than 4gb");
        const xk = expandKeyLE(kek);
        if (out.length === 16)
          encryptBlock(xk, out);
        else {
          const o32 = u32$1(out);
          let a0 = o32[0], a1 = o32[1];
          for (let j2 = 0, ctr2 = 1; j2 < 6; j2++) {
            for (let pos = 2; pos < o32.length; pos += 2, ctr2++) {
              const { s0, s1, s2, s3 } = encrypt$4(xk, a0, a1, o32[pos], o32[pos + 1]);
              a0 = s0, a1 = s1 ^ byteSwap$1(ctr2), o32[pos] = s2, o32[pos + 1] = s3;
            }
          }
          o32[0] = a0, o32[1] = a1;
        }
        xk.fill(0);
      },
      decrypt(kek, out) {
        if (out.length - 8 >= 2 ** 32)
          throw new Error("ciphertext should be less than 4gb");
        const xk = expandKeyDecLE(kek);
        const chunks = out.length / 8 - 1;
        if (chunks === 1)
          decryptBlock(xk, out);
        else {
          const o32 = u32$1(out);
          let a0 = o32[0], a1 = o32[1];
          for (let j2 = 0, ctr2 = chunks * 6; j2 < 6; j2++) {
            for (let pos = chunks * 2; pos >= 1; pos -= 2, ctr2--) {
              a1 ^= byteSwap$1(ctr2);
              const { s0, s1, s2, s3 } = decrypt$4(xk, a0, a1, o32[pos], o32[pos + 1]);
              a0 = s0, a1 = s1, o32[pos] = s2, o32[pos + 1] = s3;
            }
          }
          o32[0] = a0, o32[1] = a1;
        }
        xk.fill(0);
      }
    };
    AESKW_IV = /* @__PURE__ */ new Uint8Array(8).fill(166);
    aeskw = /* @__PURE__ */ wrapCipher({ blockSize: 8 }, (kek) => ({
      encrypt(plaintext) {
        if (!plaintext.length || plaintext.length % 8 !== 0)
          throw new Error("invalid plaintext length");
        if (plaintext.length === 8)
          throw new Error("8-byte keys not allowed in AESKW, use AESKWP instead");
        const out = concatBytes$1(AESKW_IV, plaintext);
        AESW.encrypt(kek, out);
        return out;
      },
      decrypt(ciphertext) {
        if (ciphertext.length % 8 !== 0 || ciphertext.length < 3 * 8)
          throw new Error("invalid ciphertext length");
        const out = copyBytes$1(ciphertext);
        AESW.decrypt(kek, out);
        if (!equalBytes(out.subarray(0, 8), AESKW_IV))
          throw new Error("integrity check failed");
        out.subarray(0, 8).fill(0);
        return out.subarray(8);
      }
    }));
    unsafe = {
      expandKeyLE,
      expandKeyDecLE,
      encrypt: encrypt$4,
      decrypt: decrypt$4,
      encryptBlock,
      decryptBlock,
      ctrCounter,
      ctr32
    };
    webCrypto$6 = util11.getWebCrypto();
    HKDF_INFO = {
      x25519: util11.encodeUTF8("OpenPGP X25519"),
      x448: util11.encodeUTF8("OpenPGP X448")
    };
    ecdh_x = /* @__PURE__ */ Object.freeze({
      __proto__: null,
      decrypt: decrypt$3,
      encrypt: encrypt$3,
      generate: generate$2,
      generateEphemeralEncryptionMaterial,
      getPayloadSize,
      recomputeSharedSecret,
      validateParams: validateParams$6
    });
    webCrypto$5 = util11.getWebCrypto();
    nodeCrypto$5 = util11.getNodeCrypto();
    webCurves = {
      [enums.curve.nistP256]: "P-256",
      [enums.curve.nistP384]: "P-384",
      [enums.curve.nistP521]: "P-521"
    };
    knownCurves = nodeCrypto$5 ? nodeCrypto$5.getCurves() : [];
    nodeCurves = nodeCrypto$5 ? {
      [enums.curve.secp256k1]: knownCurves.includes("secp256k1") ? "secp256k1" : void 0,
      [enums.curve.nistP256]: knownCurves.includes("prime256v1") ? "prime256v1" : void 0,
      [enums.curve.nistP384]: knownCurves.includes("secp384r1") ? "secp384r1" : void 0,
      [enums.curve.nistP521]: knownCurves.includes("secp521r1") ? "secp521r1" : void 0,
      [enums.curve.ed25519Legacy]: knownCurves.includes("ED25519") ? "ED25519" : void 0,
      [enums.curve.curve25519Legacy]: knownCurves.includes("X25519") ? "X25519" : void 0,
      [enums.curve.brainpoolP256r1]: knownCurves.includes("brainpoolP256r1") ? "brainpoolP256r1" : void 0,
      [enums.curve.brainpoolP384r1]: knownCurves.includes("brainpoolP384r1") ? "brainpoolP384r1" : void 0,
      [enums.curve.brainpoolP512r1]: knownCurves.includes("brainpoolP512r1") ? "brainpoolP512r1" : void 0
    } : {};
    curves = {
      [enums.curve.nistP256]: {
        oid: [6, 8, 42, 134, 72, 206, 61, 3, 1, 7],
        keyType: enums.publicKey.ecdsa,
        hash: enums.hash.sha256,
        cipher: enums.symmetric.aes128,
        node: nodeCurves[enums.curve.nistP256],
        web: webCurves[enums.curve.nistP256],
        payloadSize: 32,
        sharedSize: 256,
        wireFormatLeadingByte: 4
      },
      [enums.curve.nistP384]: {
        oid: [6, 5, 43, 129, 4, 0, 34],
        keyType: enums.publicKey.ecdsa,
        hash: enums.hash.sha384,
        cipher: enums.symmetric.aes192,
        node: nodeCurves[enums.curve.nistP384],
        web: webCurves[enums.curve.nistP384],
        payloadSize: 48,
        sharedSize: 384,
        wireFormatLeadingByte: 4
      },
      [enums.curve.nistP521]: {
        oid: [6, 5, 43, 129, 4, 0, 35],
        keyType: enums.publicKey.ecdsa,
        hash: enums.hash.sha512,
        cipher: enums.symmetric.aes256,
        node: nodeCurves[enums.curve.nistP521],
        web: webCurves[enums.curve.nistP521],
        payloadSize: 66,
        sharedSize: 528,
        wireFormatLeadingByte: 4
      },
      [enums.curve.secp256k1]: {
        oid: [6, 5, 43, 129, 4, 0, 10],
        keyType: enums.publicKey.ecdsa,
        hash: enums.hash.sha256,
        cipher: enums.symmetric.aes128,
        node: nodeCurves[enums.curve.secp256k1],
        payloadSize: 32,
        wireFormatLeadingByte: 4
      },
      [enums.curve.ed25519Legacy]: {
        oid: [6, 9, 43, 6, 1, 4, 1, 218, 71, 15, 1],
        keyType: enums.publicKey.eddsaLegacy,
        hash: enums.hash.sha512,
        node: false,
        // nodeCurves.ed25519 TODO
        payloadSize: 32,
        wireFormatLeadingByte: 64
      },
      [enums.curve.curve25519Legacy]: {
        oid: [6, 10, 43, 6, 1, 4, 1, 151, 85, 1, 5, 1],
        keyType: enums.publicKey.ecdh,
        hash: enums.hash.sha256,
        cipher: enums.symmetric.aes128,
        node: false,
        // nodeCurves.curve25519 TODO
        payloadSize: 32,
        wireFormatLeadingByte: 64
      },
      [enums.curve.brainpoolP256r1]: {
        oid: [6, 9, 43, 36, 3, 3, 2, 8, 1, 1, 7],
        keyType: enums.publicKey.ecdsa,
        hash: enums.hash.sha256,
        cipher: enums.symmetric.aes128,
        node: nodeCurves[enums.curve.brainpoolP256r1],
        payloadSize: 32,
        wireFormatLeadingByte: 4
      },
      [enums.curve.brainpoolP384r1]: {
        oid: [6, 9, 43, 36, 3, 3, 2, 8, 1, 1, 11],
        keyType: enums.publicKey.ecdsa,
        hash: enums.hash.sha384,
        cipher: enums.symmetric.aes192,
        node: nodeCurves[enums.curve.brainpoolP384r1],
        payloadSize: 48,
        wireFormatLeadingByte: 4
      },
      [enums.curve.brainpoolP512r1]: {
        oid: [6, 9, 43, 36, 3, 3, 2, 8, 1, 1, 13],
        keyType: enums.publicKey.ecdsa,
        hash: enums.hash.sha512,
        cipher: enums.symmetric.aes256,
        node: nodeCurves[enums.curve.brainpoolP512r1],
        payloadSize: 64,
        wireFormatLeadingByte: 4
      }
    };
    CurveWithOID = class {
      constructor(oidOrName) {
        try {
          this.name = oidOrName instanceof OID ? oidOrName.getName() : enums.write(enums.curve, oidOrName);
        } catch {
          throw new UnsupportedError("Unknown curve");
        }
        const params = curves[this.name];
        this.keyType = params.keyType;
        this.oid = params.oid;
        this.hash = params.hash;
        this.cipher = params.cipher;
        this.node = params.node;
        this.web = params.web;
        this.payloadSize = params.payloadSize;
        this.sharedSize = params.sharedSize;
        this.wireFormatLeadingByte = params.wireFormatLeadingByte;
        if (this.web && util11.getWebCrypto()) {
          this.type = "web";
        } else if (this.node && util11.getNodeCrypto()) {
          this.type = "node";
        } else if (this.name === enums.curve.curve25519Legacy) {
          this.type = "curve25519Legacy";
        } else if (this.name === enums.curve.ed25519Legacy) {
          this.type = "ed25519Legacy";
        }
      }
      async genKeyPair() {
        switch (this.type) {
          case "web":
            try {
              return await webGenKeyPair(this.name, this.wireFormatLeadingByte);
            } catch (err2) {
              util11.printDebugError("Browser did not support generating ec key " + err2.message);
              return jsGenKeyPair(this.name);
            }
          case "node":
            return nodeGenKeyPair(this.name);
          case "curve25519Legacy": {
            const { k: k2, A: A2 } = await generate$2(enums.publicKey.x25519);
            const privateKey = k2.slice().reverse();
            privateKey[0] = privateKey[0] & 127 | 64;
            privateKey[31] &= 248;
            const publicKey = util11.concatUint8Array([new Uint8Array([this.wireFormatLeadingByte]), A2]);
            return { publicKey, privateKey };
          }
          case "ed25519Legacy": {
            const { seed: privateKey, A: A2 } = await generate$3(enums.publicKey.ed25519);
            const publicKey = util11.concatUint8Array([new Uint8Array([this.wireFormatLeadingByte]), A2]);
            return { publicKey, privateKey };
          }
          default:
            return jsGenKeyPair(this.name);
        }
      }
    };
    webCrypto$4 = util11.getWebCrypto();
    nodeCrypto$4 = util11.getNodeCrypto();
    ecdsa$1 = /* @__PURE__ */ Object.freeze({
      __proto__: null,
      sign: sign$4,
      validateParams: validateParams$5,
      verify: verify$4
    });
    eddsa_legacy = /* @__PURE__ */ Object.freeze({
      __proto__: null,
      sign: sign$3,
      validateParams: validateParams$4,
      verify: verify$3
    });
    ecdh$1 = /* @__PURE__ */ Object.freeze({
      __proto__: null,
      decrypt: decrypt$2,
      encrypt: encrypt$2,
      validateParams: validateParams$3
    });
    elliptic = /* @__PURE__ */ Object.freeze({
      __proto__: null,
      CurveWithOID,
      ecdh: ecdh$1,
      ecdhX: ecdh_x,
      ecdsa: ecdsa$1,
      eddsa: eddsa$1,
      eddsaLegacy: eddsa_legacy,
      generate: generate$1,
      getPreferredHashAlgo: getPreferredHashAlgo$1
    });
    _0n$7 = BigInt(0);
    _1n$8 = BigInt(1);
    ECDHSymmetricKey = class {
      constructor(data) {
        if (data) {
          this.data = data;
        }
      }
      /**
       * Read an ECDHSymmetricKey from an Uint8Array:
       * - 1 octect for the length `l`
       * - `l` octects of encoded session key data
       * @param {Uint8Array} bytes
       * @returns {Number} Number of read bytes.
       */
      read(bytes) {
        if (bytes.length >= 1) {
          const length = bytes[0];
          if (bytes.length >= 1 + length) {
            this.data = bytes.subarray(1, 1 + length);
            return 1 + this.data.length;
          }
        }
        throw new Error("Invalid symmetric key");
      }
      /**
       * Write an ECDHSymmetricKey as an Uint8Array
       * @returns  {Uint8Array} Serialised data
       */
      write() {
        return util11.concatUint8Array([new Uint8Array([this.data.length]), this.data]);
      }
    };
    KDFParams = class {
      /**
       * @param {enums.hash} hash - Hash algorithm
       * @param {enums.symmetric} cipher - Symmetric algorithm
       */
      constructor(data) {
        if (data) {
          const { hash: hash2, cipher } = data;
          this.hash = hash2;
          this.cipher = cipher;
        } else {
          this.hash = null;
          this.cipher = null;
        }
      }
      /**
       * Read KDFParams from an Uint8Array
       * @param {Uint8Array} input - Where to read the KDFParams from
       * @returns {Number} Number of read bytes.
       */
      read(input) {
        if (input.length < 4 || input[0] !== 3 || input[1] !== 1) {
          throw new UnsupportedError("Cannot read KDFParams");
        }
        this.hash = input[2];
        this.cipher = input[3];
        return 4;
      }
      /**
       * Write KDFParams to an Uint8Array
       * @returns  {Uint8Array}  Array with the KDFParams value
       */
      write() {
        return new Uint8Array([3, 1, this.hash, this.cipher]);
      }
    };
    ECDHXSymmetricKey = class _ECDHXSymmetricKey {
      static fromObject({ wrappedKey, algorithm }) {
        const instance = new _ECDHXSymmetricKey();
        instance.wrappedKey = wrappedKey;
        instance.algorithm = algorithm;
        return instance;
      }
      /**
       * - 1 octect for the length `l`
       * - `l` octects of encoded session key data (with optional leading algorithm byte)
       * @param {Uint8Array} bytes
       * @returns {Number} Number of read bytes.
       */
      read(bytes) {
        let read2 = 0;
        let followLength = bytes[read2++];
        this.algorithm = followLength % 2 ? bytes[read2++] : null;
        followLength -= followLength % 2;
        this.wrappedKey = util11.readExactSubarray(bytes, read2, read2 + followLength);
        read2 += followLength;
      }
      /**
       * Write an MontgomerySymmetricKey as an Uint8Array
       * @returns  {Uint8Array} Serialised data
       */
      write() {
        return util11.concatUint8Array([
          this.algorithm ? new Uint8Array([this.wrappedKey.length + 1, this.algorithm]) : new Uint8Array([this.wrappedKey.length]),
          this.wrappedKey
        ]);
      }
    };
    webCrypto$3 = util11.getWebCrypto();
    nodeCrypto$3 = util11.getNodeCrypto();
    knownAlgos = nodeCrypto$3 ? nodeCrypto$3.getCiphers() : [];
    nodeAlgos = {
      idea: knownAlgos.includes("idea-cfb") ? "idea-cfb" : void 0,
      /* Unused, not implemented */
      tripledes: knownAlgos.includes("des-ede3-cfb") ? "des-ede3-cfb" : void 0,
      cast5: knownAlgos.includes("cast5-cfb") ? "cast5-cfb" : void 0,
      blowfish: knownAlgos.includes("bf-cfb") ? "bf-cfb" : void 0,
      aes128: knownAlgos.includes("aes-128-cfb") ? "aes-128-cfb" : void 0,
      aes192: knownAlgos.includes("aes-192-cfb") ? "aes-192-cfb" : void 0,
      aes256: knownAlgos.includes("aes-256-cfb") ? "aes-256-cfb" : void 0
      /* twofish is not implemented in OpenSSL */
    };
    WebCryptoEncryptor = class {
      constructor(algo, key, iv) {
        const { blockSize } = getCipherParams(algo);
        this.key = key;
        this.iv = iv;
        this.prevBlock = iv.slice();
        this.nextBlock = new Uint8Array(blockSize);
        this.i = 0;
        this.blockSize = blockSize;
        this.zeroBlock = new Uint8Array(this.blockSize);
      }
      /**
       * @returns {Promise<boolean>}
       */
      static isSupported(algo) {
        const { keySize } = getCipherParams(algo);
        return webCrypto$3.importKey("raw", new Uint8Array(keySize), "aes-cbc", false, ["encrypt"]).then(() => true, () => false);
      }
      async _runCBC(plaintext, nonZeroIV) {
        const mode = "AES-CBC";
        this.keyRef = this.keyRef || await webCrypto$3.importKey("raw", this.key, mode, false, ["encrypt"]);
        const ciphertext = await webCrypto$3.encrypt({ name: mode, iv: nonZeroIV || this.zeroBlock }, this.keyRef, plaintext);
        return new Uint8Array(ciphertext).subarray(0, plaintext.length);
      }
      async encryptChunk(value) {
        const missing = this.nextBlock.length - this.i;
        const added = value.subarray(0, missing);
        this.nextBlock.set(added, this.i);
        if (this.i + value.length >= 2 * this.blockSize) {
          const leftover = (value.length - missing) % this.blockSize;
          const plaintext = util11.concatUint8Array([
            this.nextBlock,
            value.subarray(missing, value.length - leftover)
          ]);
          const toEncrypt = util11.concatUint8Array([
            this.prevBlock,
            plaintext.subarray(0, plaintext.length - this.blockSize)
            // stop one block "early", since we only need to xor the plaintext and pass it over as prevBlock
          ]);
          const encryptedBlocks = await this._runCBC(toEncrypt);
          xorMut$1(encryptedBlocks, plaintext);
          this.prevBlock = encryptedBlocks.slice(-this.blockSize);
          if (leftover > 0)
            this.nextBlock.set(value.subarray(-leftover));
          this.i = leftover;
          return encryptedBlocks;
        }
        this.i += added.length;
        let encryptedBlock;
        if (this.i === this.nextBlock.length) {
          const curBlock = this.nextBlock;
          encryptedBlock = await this._runCBC(this.prevBlock);
          xorMut$1(encryptedBlock, curBlock);
          this.prevBlock = encryptedBlock.slice();
          this.i = 0;
          const remaining = value.subarray(added.length);
          this.nextBlock.set(remaining, this.i);
          this.i += remaining.length;
        } else {
          encryptedBlock = new Uint8Array();
        }
        return encryptedBlock;
      }
      async finish() {
        let result2;
        if (this.i === 0) {
          result2 = new Uint8Array();
        } else {
          this.nextBlock = this.nextBlock.subarray(0, this.i);
          const curBlock = this.nextBlock;
          const encryptedBlock = await this._runCBC(this.prevBlock);
          xorMut$1(encryptedBlock, curBlock);
          result2 = encryptedBlock.subarray(0, curBlock.length);
        }
        this.clearSensitiveData();
        return result2;
      }
      clearSensitiveData() {
        this.nextBlock.fill(0);
        this.prevBlock.fill(0);
        this.keyRef = null;
        this.key = null;
      }
      async encrypt(plaintext) {
        const encryptedWithPadding = await this._runCBC(util11.concatUint8Array([new Uint8Array(this.blockSize), plaintext]), this.iv);
        const ct = encryptedWithPadding.subarray(0, plaintext.length);
        xorMut$1(ct, plaintext);
        this.clearSensitiveData();
        return ct;
      }
    };
    NobleStreamProcessor = class {
      constructor(forEncryption, algo, key, iv) {
        this.forEncryption = forEncryption;
        const { blockSize } = getCipherParams(algo);
        this.key = unsafe.expandKeyLE(key);
        if (iv.byteOffset % 4 !== 0)
          iv = iv.slice();
        this.prevBlock = getUint32Array(iv);
        this.nextBlock = new Uint8Array(blockSize);
        this.i = 0;
        this.blockSize = blockSize;
      }
      _runCFB(src2) {
        const src32 = getUint32Array(src2);
        const dst = new Uint8Array(src2.length);
        const dst32 = getUint32Array(dst);
        for (let i4 = 0; i4 + 4 <= dst32.length; i4 += 4) {
          const { s0: e0, s1: e1, s2: e2, s3: e3 } = unsafe.encrypt(this.key, this.prevBlock[0], this.prevBlock[1], this.prevBlock[2], this.prevBlock[3]);
          dst32[i4 + 0] = src32[i4 + 0] ^ e0;
          dst32[i4 + 1] = src32[i4 + 1] ^ e1;
          dst32[i4 + 2] = src32[i4 + 2] ^ e2;
          dst32[i4 + 3] = src32[i4 + 3] ^ e3;
          this.prevBlock = (this.forEncryption ? dst32 : src32).slice(i4, i4 + 4);
        }
        return dst;
      }
      // eslint-disable-next-line @typescript-eslint/require-await
      async processChunk(value) {
        const missing = this.nextBlock.length - this.i;
        const added = value.subarray(0, missing);
        this.nextBlock.set(added, this.i);
        if (this.i + value.length >= 2 * this.blockSize) {
          const leftover = (value.length - missing) % this.blockSize;
          const toProcess = util11.concatUint8Array([
            this.nextBlock,
            value.subarray(missing, value.length - leftover)
          ]);
          const processedBlocks = this._runCFB(toProcess);
          if (leftover > 0)
            this.nextBlock.set(value.subarray(-leftover));
          this.i = leftover;
          return processedBlocks;
        }
        this.i += added.length;
        let processedBlock;
        if (this.i === this.nextBlock.length) {
          processedBlock = this._runCFB(this.nextBlock);
          this.i = 0;
          const remaining = value.subarray(added.length);
          this.nextBlock.set(remaining, this.i);
          this.i += remaining.length;
        } else {
          processedBlock = new Uint8Array();
        }
        return processedBlock;
      }
      // eslint-disable-next-line @typescript-eslint/require-await
      async finish() {
        let result2;
        if (this.i === 0) {
          result2 = new Uint8Array();
        } else {
          const processedBlock = this._runCFB(this.nextBlock);
          result2 = processedBlock.subarray(0, this.i);
        }
        this.clearSensitiveData();
        return result2;
      }
      clearSensitiveData() {
        this.nextBlock.fill(0);
        this.prevBlock.fill(0);
        this.key.fill(0);
      }
    };
    getUint32Array = (arr) => new Uint32Array(arr.buffer, arr.byteOffset, Math.floor(arr.byteLength / 4));
    webCrypto$2 = util11.getWebCrypto();
    nodeCrypto$2 = util11.getNodeCrypto();
    blockLength$3 = 16;
    zeroBlock$1 = new Uint8Array(blockLength$3);
    webCrypto$1 = util11.getWebCrypto();
    nodeCrypto$1 = util11.getNodeCrypto();
    Buffer$2 = util11.getNodeBuffer();
    blockLength$2 = 16;
    ivLength$2 = blockLength$2;
    tagLength$2 = blockLength$2;
    zero = new Uint8Array(blockLength$2);
    one$1 = new Uint8Array(blockLength$2);
    one$1[blockLength$2 - 1] = 1;
    two = new Uint8Array(blockLength$2);
    two[blockLength$2 - 1] = 2;
    EAX.getNonce = function(iv, chunkIndex) {
      const nonce = iv.slice();
      for (let i4 = 0; i4 < chunkIndex.length; i4++) {
        nonce[8 + i4] ^= chunkIndex[i4];
      }
      return nonce;
    };
    EAX.blockLength = blockLength$2;
    EAX.ivLength = ivLength$2;
    EAX.tagLength = tagLength$2;
    blockLength$1 = 16;
    ivLength$1 = 15;
    tagLength$1 = 16;
    zeroBlock = new Uint8Array(blockLength$1);
    one = new Uint8Array([1]);
    OCB.getNonce = function(iv, chunkIndex) {
      const nonce = iv.slice();
      for (let i4 = 0; i4 < chunkIndex.length; i4++) {
        nonce[7 + i4] ^= chunkIndex[i4];
      }
      return nonce;
    };
    OCB.blockLength = blockLength$1;
    OCB.ivLength = ivLength$1;
    OCB.tagLength = tagLength$1;
    webCrypto = util11.getWebCrypto();
    nodeCrypto = util11.getNodeCrypto();
    Buffer$1 = util11.getNodeBuffer();
    blockLength = 16;
    ivLength = 12;
    tagLength = 16;
    ALGO = "AES-GCM";
    GCM.getNonce = function(iv, chunkIndex) {
      const nonce = iv.slice();
      for (let i4 = 0; i4 < chunkIndex.length; i4++) {
        nonce[4 + i4] ^= chunkIndex[i4];
      }
      return nonce;
    };
    GCM.blockLength = blockLength;
    GCM.ivLength = ivLength;
    GCM.tagLength = tagLength;
    ARGON2_TYPE = 2;
    ARGON2_VERSION = 19;
    ARGON2_SALT_SIZE = 16;
    ARGON2_MAX_ENCODEDM = 30;
    Argon2OutOfMemoryError = class _Argon2OutOfMemoryError extends Error {
      constructor(...params) {
        super(...params);
        if (Error.captureStackTrace) {
          Error.captureStackTrace(this, _Argon2OutOfMemoryError);
        }
        this.name = "Argon2OutOfMemoryError";
      }
    };
    ARGON2_WASM_MEMORY_THRESHOLD_RELOAD = 2 << 19;
    Argon2S2K = class {
      /**
      * @param {Object} [config] - Full configuration, defaults to openpgp.config
      */
      constructor(config$1 = config) {
        const { passes, parallelism, memoryExponent } = config$1.s2kArgon2Params;
        this.type = "argon2";
        this.salt = null;
        this.t = passes;
        this.p = parallelism;
        this.encodedM = memoryExponent;
      }
      generateSalt() {
        this.salt = getRandomBytes(ARGON2_SALT_SIZE);
      }
      /**
      * Parsing function for argon2 string-to-key specifier.
      * @param {Uint8Array} bytes - Payload of argon2 string-to-key specifier
      * @returns {Integer} Actual length of the object.
      */
      read(bytes) {
        let i4 = 0;
        this.salt = bytes.subarray(i4, i4 + 16);
        i4 += 16;
        this.t = bytes[i4++];
        this.p = bytes[i4++];
        this.encodedM = bytes[i4++];
        return i4;
      }
      /**
      * Serializes s2k information
      * @returns {Uint8Array} Binary representation of s2k.
      */
      write() {
        const arr = [
          new Uint8Array([enums.write(enums.s2k, this.type)]),
          this.salt,
          new Uint8Array([this.t, this.p, this.encodedM])
        ];
        return util11.concatUint8Array(arr);
      }
      /**
      * Produces a key using the specified passphrase and the defined
      * hashAlgorithm
      * @param {String} passphrase - Passphrase containing user input
      * @param {Number} keySize
      * @param {Object} config
      * @returns {Promise<Uint8Array>} Produced key with a length corresponding to `keySize`
      * @throws {Argon2OutOfMemoryError|Errors}
      * @async
      */
      async produceKey(passphrase, keySize, config2) {
        if (config2.maxArgon2MemoryExponent > ARGON2_MAX_ENCODEDM) {
          throw new Argon2OutOfMemoryError(`'config.maxArgon2MemoryExponent' exceeds the max allowed value of ${ARGON2_MAX_ENCODEDM}`);
        }
        if (this.encodedM > config2.maxArgon2MemoryExponent) {
          throw new Argon2OutOfMemoryError("Argon2 required memory exceeds `config.maxArgon2MemoryExponent`");
        }
        const decodedM = 1 << this.encodedM;
        try {
          loadArgonWasmModule = loadArgonWasmModule || (await Promise.resolve().then(function() {
            return index$2;
          })).default;
          argon2Promise = argon2Promise || loadArgonWasmModule();
          const argon2 = await argon2Promise;
          const passwordBytes = util11.encodeUTF8(passphrase);
          const hash2 = argon2({
            version: ARGON2_VERSION,
            type: ARGON2_TYPE,
            password: passwordBytes,
            salt: this.salt,
            tagLength: keySize,
            memorySize: decodedM,
            parallelism: this.p,
            passes: this.t
          });
          if (decodedM > ARGON2_WASM_MEMORY_THRESHOLD_RELOAD) {
            argon2Promise = loadArgonWasmModule();
            argon2Promise.catch(() => {
            });
          }
          return hash2;
        } catch (e) {
          if (e.message && (e.message.includes("Unable to grow instance memory") || // Chrome
          e.message.includes("failed to grow memory") || // Firefox
          e.message.includes("WebAssembly.Memory.grow") || // Safari
          e.message.includes("Out of memory"))) {
            throw new Argon2OutOfMemoryError("Could not allocate required memory for Argon2");
          } else {
            throw e;
          }
        }
      }
    };
    GenericS2K = class {
      /**
       * @param {Object} [config] - Full configuration, defaults to openpgp.config
       */
      constructor(s2kType, config$1 = config) {
        this.algorithm = enums.hash.sha256;
        this.type = enums.read(enums.s2k, s2kType);
        this.c = config$1.s2kIterationCountByte;
        this.salt = null;
      }
      generateSalt() {
        switch (this.type) {
          case "salted":
          case "iterated":
            this.salt = getRandomBytes(8);
        }
      }
      getCount() {
        const expbias = 6;
        return 16 + (this.c & 15) << (this.c >> 4) + expbias;
      }
      /**
       * Parsing function for a string-to-key specifier ({@link https://tools.ietf.org/html/rfc4880#section-3.7|RFC 4880 3.7}).
       * @param {Uint8Array} bytes - Payload of string-to-key specifier
       * @returns {Integer} Actual length of the object.
       */
      read(bytes) {
        let i4 = 0;
        this.algorithm = bytes[i4++];
        switch (this.type) {
          case "simple":
            break;
          case "salted":
            this.salt = bytes.subarray(i4, i4 + 8);
            i4 += 8;
            break;
          case "iterated":
            this.salt = bytes.subarray(i4, i4 + 8);
            i4 += 8;
            this.c = bytes[i4++];
            break;
          case "gnu":
            if (util11.uint8ArrayToString(bytes.subarray(i4, i4 + 3)) === "GNU") {
              i4 += 3;
              const gnuExtType = 1e3 + bytes[i4++];
              if (gnuExtType === 1001) {
                this.type = "gnu-dummy";
              } else {
                throw new UnsupportedError("Unknown s2k gnu protection mode.");
              }
            } else {
              throw new UnsupportedError("Unknown s2k type.");
            }
            break;
          default:
            throw new UnsupportedError("Unknown s2k type.");
        }
        return i4;
      }
      /**
       * Serializes s2k information
       * @returns {Uint8Array} Binary representation of s2k.
       */
      write() {
        if (this.type === "gnu-dummy") {
          return new Uint8Array([101, 0, ...util11.stringToUint8Array("GNU"), 1]);
        }
        const arr = [new Uint8Array([enums.write(enums.s2k, this.type), this.algorithm])];
        switch (this.type) {
          case "simple":
            break;
          case "salted":
            arr.push(this.salt);
            break;
          case "iterated":
            arr.push(this.salt);
            arr.push(new Uint8Array([this.c]));
            break;
          case "gnu":
            throw new Error("GNU s2k type not supported.");
          default:
            throw new Error("Unknown s2k type.");
        }
        return util11.concatUint8Array(arr);
      }
      /**
       * Produces a key using the specified passphrase and the defined
       * hashAlgorithm
       * @param {String} passphrase - Passphrase containing user input
       * @returns {Promise<Uint8Array>} Produced key with a length corresponding to.
       * hashAlgorithm hash length
       * @async
       */
      async produceKey(passphrase, numBytes, _config) {
        passphrase = util11.encodeUTF8(passphrase);
        const arr = [];
        let rlength = 0;
        let prefixlen = 0;
        while (rlength < numBytes) {
          let toHash;
          switch (this.type) {
            case "simple":
              toHash = util11.concatUint8Array([new Uint8Array(prefixlen), passphrase]);
              break;
            case "salted":
              toHash = util11.concatUint8Array([new Uint8Array(prefixlen), this.salt, passphrase]);
              break;
            case "iterated": {
              const data = util11.concatUint8Array([this.salt, passphrase]);
              let datalen = data.length;
              const count2 = Math.max(this.getCount(), datalen);
              toHash = new Uint8Array(prefixlen + count2);
              toHash.set(data, prefixlen);
              for (let pos = prefixlen + datalen; pos < count2; pos += datalen, datalen *= 2) {
                toHash.copyWithin(pos, prefixlen, pos);
              }
              break;
            }
            case "gnu":
              throw new Error("GNU s2k type not supported.");
            default:
              throw new Error("Unknown s2k type.");
          }
          const result2 = await computeDigest(this.algorithm, toHash);
          arr.push(result2);
          rlength += result2.length;
          prefixlen++;
        }
        return util11.concatUint8Array(arr).subarray(0, numBytes);
      }
    };
    allowedS2KTypesForEncryption = /* @__PURE__ */ new Set([enums.s2k.argon2, enums.s2k.iterated]);
    require$1 = createRequire6("/");
    try {
      _a = require$1("worker_threads"), Worker = _a.Worker, isMarkedAsUntransferable = _a.isMarkedAsUntransferable;
    } catch (e) {
    }
    u8 = Uint8Array;
    u16 = Uint16Array;
    i32 = Int32Array;
    fleb = new u8([
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      1,
      1,
      1,
      1,
      2,
      2,
      2,
      2,
      3,
      3,
      3,
      3,
      4,
      4,
      4,
      4,
      5,
      5,
      5,
      5,
      0,
      /* unused */
      0,
      0,
      /* impossible */
      0
    ]);
    fdeb = new u8([
      0,
      0,
      0,
      0,
      1,
      1,
      2,
      2,
      3,
      3,
      4,
      4,
      5,
      5,
      6,
      6,
      7,
      7,
      8,
      8,
      9,
      9,
      10,
      10,
      11,
      11,
      12,
      12,
      13,
      13,
      /* unused */
      0,
      0
    ]);
    clim = new u8([16, 17, 18, 0, 8, 7, 9, 6, 10, 5, 11, 4, 12, 3, 13, 2, 14, 1, 15]);
    freb = function(eb, start) {
      var b = new u16(31);
      for (var i4 = 0; i4 < 31; ++i4) {
        b[i4] = start += 1 << eb[i4 - 1];
      }
      var r = new i32(b[30]);
      for (var i4 = 1; i4 < 30; ++i4) {
        for (var j2 = b[i4]; j2 < b[i4 + 1]; ++j2) {
          r[j2] = j2 - b[i4] << 5 | i4;
        }
      }
      return { b, r };
    };
    _a = freb(fleb, 2);
    fl = _a.b;
    revfl = _a.r;
    fl[28] = 258, revfl[258] = 28;
    _b = freb(fdeb, 0);
    fd = _b.b;
    revfd = _b.r;
    rev = new u16(32768);
    for (i3 = 0; i3 < 32768; ++i3) {
      x2 = (i3 & 43690) >> 1 | (i3 & 21845) << 1;
      x2 = (x2 & 52428) >> 2 | (x2 & 13107) << 2;
      x2 = (x2 & 61680) >> 4 | (x2 & 3855) << 4;
      rev[i3] = ((x2 & 65280) >> 8 | (x2 & 255) << 8) >> 1;
    }
    hMap = (function(cd, mb, r) {
      var s = cd.length;
      var i4 = 0;
      var l = new u16(mb);
      for (; i4 < s; ++i4) {
        if (cd[i4])
          ++l[cd[i4] - 1];
      }
      var le = new u16(mb);
      for (i4 = 1; i4 < mb; ++i4) {
        le[i4] = le[i4 - 1] + l[i4 - 1] << 1;
      }
      var co;
      if (r) {
        co = new u16(1 << mb);
        var rvb = 15 - mb;
        for (i4 = 0; i4 < s; ++i4) {
          if (cd[i4]) {
            var sv = i4 << 4 | cd[i4];
            var r_1 = mb - cd[i4];
            var v = le[cd[i4] - 1]++ << r_1;
            for (var m = v | (1 << r_1) - 1; v <= m; ++v) {
              co[rev[v] >> rvb] = sv;
            }
          }
        }
      } else {
        co = new u16(s);
        for (i4 = 0; i4 < s; ++i4) {
          if (cd[i4]) {
            co[i4] = rev[le[cd[i4] - 1]++] >> 15 - cd[i4];
          }
        }
      }
      return co;
    });
    flt = new u8(288);
    for (i3 = 0; i3 < 144; ++i3)
      flt[i3] = 8;
    for (i3 = 144; i3 < 256; ++i3)
      flt[i3] = 9;
    for (i3 = 256; i3 < 280; ++i3)
      flt[i3] = 7;
    for (i3 = 280; i3 < 288; ++i3)
      flt[i3] = 8;
    fdt = new u8(32);
    for (i3 = 0; i3 < 32; ++i3)
      fdt[i3] = 5;
    flm = /* @__PURE__ */ hMap(flt, 9, 0);
    flrm = /* @__PURE__ */ hMap(flt, 9, 1);
    fdm = /* @__PURE__ */ hMap(fdt, 5, 0);
    fdrm = /* @__PURE__ */ hMap(fdt, 5, 1);
    max3 = function(a2) {
      var m = a2[0];
      for (var i4 = 1; i4 < a2.length; ++i4) {
        if (a2[i4] > m)
          m = a2[i4];
      }
      return m;
    };
    bits = function(d3, p, m) {
      var o2 = p / 8 | 0;
      return (d3[o2] | d3[o2 + 1] << 8) >> (p & 7) & m;
    };
    bits16 = function(d3, p) {
      var o2 = p / 8 | 0;
      return (d3[o2] | d3[o2 + 1] << 8 | d3[o2 + 2] << 16) >> (p & 7);
    };
    shft = function(p) {
      return (p + 7) / 8 | 0;
    };
    slc = function(v, s, e) {
      if (s == null || s < 0)
        s = 0;
      if (e == null || e > v.length)
        e = v.length;
      return new u8(v.subarray(s, e));
    };
    ec = [
      "unexpected EOF",
      "invalid block type",
      "invalid length/literal",
      "invalid distance",
      "stream finished",
      "no stream handler",
      ,
      // determined by compression function
      "no callback",
      "invalid UTF-8 data",
      "extra field too long",
      "date not in range 1980-2099",
      "filename too long",
      "stream finishing",
      "invalid zip data"
      // determined by unknown compression method
    ];
    err = function(ind, msg, nt) {
      var e = new Error(msg || ec[ind]);
      e.code = ind;
      if (Error.captureStackTrace)
        Error.captureStackTrace(e, err);
      if (!nt)
        throw e;
      return e;
    };
    inflt = function(dat, st, buf, dict) {
      var sl = dat.length, dl = 0;
      if (!sl || st.f && !st.l)
        return buf || new u8(0);
      var noBuf = !buf;
      var resize = noBuf || st.i != 2;
      var noSt = st.i;
      if (noBuf)
        buf = new u8(sl * 3);
      var cbuf = function(l2) {
        var bl = buf.length;
        if (l2 > bl) {
          var nbuf = new u8(Math.max(bl * 2, l2));
          nbuf.set(buf);
          buf = nbuf;
        }
      };
      var final = st.f || 0, pos = st.p || 0, bt = st.b || 0, lm = st.l, dm = st.d, lbt = st.m, dbt = st.n;
      var tbts = sl * 8;
      do {
        if (!lm) {
          final = bits(dat, pos, 1);
          var type4 = bits(dat, pos + 1, 3);
          pos += 3;
          if (!type4) {
            var s = shft(pos) + 4, l = dat[s - 4] | dat[s - 3] << 8, t2 = s + l;
            if (t2 > sl) {
              if (noSt)
                err(0);
              break;
            }
            if (resize)
              cbuf(bt + l);
            buf.set(dat.subarray(s, t2), bt);
            st.b = bt += l, st.p = pos = t2 * 8, st.f = final;
            continue;
          } else if (type4 == 1)
            lm = flrm, dm = fdrm, lbt = 9, dbt = 5;
          else if (type4 == 2) {
            var hLit = bits(dat, pos, 31) + 257, hcLen = bits(dat, pos + 10, 15) + 4;
            var tl = hLit + bits(dat, pos + 5, 31) + 1;
            pos += 14;
            var ldt = new u8(tl);
            var clt = new u8(19);
            for (var i4 = 0; i4 < hcLen; ++i4) {
              clt[clim[i4]] = bits(dat, pos + i4 * 3, 7);
            }
            pos += hcLen * 3;
            var clb = max3(clt), clbmsk = (1 << clb) - 1;
            var clm = hMap(clt, clb, 1);
            for (var i4 = 0; i4 < tl; ) {
              var r = clm[bits(dat, pos, clbmsk)];
              pos += r & 15;
              var s = r >> 4;
              if (s < 16) {
                ldt[i4++] = s;
              } else {
                var c3 = 0, n2 = 0;
                if (s == 16)
                  n2 = 3 + bits(dat, pos, 3), pos += 2, c3 = ldt[i4 - 1];
                else if (s == 17)
                  n2 = 3 + bits(dat, pos, 7), pos += 3;
                else if (s == 18)
                  n2 = 11 + bits(dat, pos, 127), pos += 7;
                while (n2--)
                  ldt[i4++] = c3;
              }
            }
            var lt2 = ldt.subarray(0, hLit), dt = ldt.subarray(hLit);
            lbt = max3(lt2);
            dbt = max3(dt);
            lm = hMap(lt2, lbt, 1);
            dm = hMap(dt, dbt, 1);
          } else
            err(1);
          if (pos > tbts) {
            if (noSt)
              err(0);
            break;
          }
        }
        if (resize)
          cbuf(bt + 131072);
        var lms = (1 << lbt) - 1, dms = (1 << dbt) - 1;
        var lpos = pos;
        for (; ; lpos = pos) {
          var c3 = lm[bits16(dat, pos) & lms], sym = c3 >> 4;
          pos += c3 & 15;
          if (pos > tbts) {
            if (noSt)
              err(0);
            break;
          }
          if (!c3)
            err(2);
          if (sym < 256)
            buf[bt++] = sym;
          else if (sym == 256) {
            lpos = pos, lm = null;
            break;
          } else {
            var add2 = sym - 254;
            if (sym > 264) {
              var i4 = sym - 257, b = fleb[i4];
              add2 = bits(dat, pos, (1 << b) - 1) + fl[i4];
              pos += b;
            }
            var d3 = dm[bits16(dat, pos) & dms], dsym = d3 >> 4;
            if (!d3)
              err(3);
            pos += d3 & 15;
            var dt = fd[dsym];
            if (dsym > 3) {
              var b = fdeb[dsym];
              dt += bits16(dat, pos) & (1 << b) - 1, pos += b;
            }
            if (pos > tbts) {
              if (noSt)
                err(0);
              break;
            }
            if (resize)
              cbuf(bt + 131072);
            var end = bt + add2;
            if (bt < dt) {
              var shift = dl - dt, dend = Math.min(dt, end);
              if (shift + bt < 0)
                err(3);
              for (; bt < dend; ++bt)
                buf[bt] = dict[shift + bt];
            }
            for (; bt < end; ++bt)
              buf[bt] = buf[bt - dt];
          }
        }
        st.l = lm, st.p = lpos, st.b = bt, st.f = final;
        if (lm)
          final = 1, st.m = lbt, st.d = dm, st.n = dbt;
      } while (!final);
      return bt != buf.length && noBuf ? slc(buf, 0, bt) : buf.subarray(0, bt);
    };
    wbits = function(d3, p, v) {
      v <<= p & 7;
      var o2 = p / 8 | 0;
      d3[o2] |= v;
      d3[o2 + 1] |= v >> 8;
    };
    wbits16 = function(d3, p, v) {
      v <<= p & 7;
      var o2 = p / 8 | 0;
      d3[o2] |= v;
      d3[o2 + 1] |= v >> 8;
      d3[o2 + 2] |= v >> 16;
    };
    hTree = function(d3, mb) {
      var t2 = [];
      for (var i4 = 0; i4 < d3.length; ++i4) {
        if (d3[i4])
          t2.push({ s: i4, f: d3[i4] });
      }
      var s = t2.length;
      var t22 = t2.slice();
      if (!s)
        return { t: et, l: 0 };
      if (s == 1) {
        var v = new u8(t2[0].s + 1);
        v[t2[0].s] = 1;
        return { t: v, l: 1 };
      }
      t2.sort(function(a2, b) {
        return a2.f - b.f;
      });
      t2.push({ s: -1, f: 25001 });
      var l = t2[0], r = t2[1], i0 = 0, i1 = 1, i22 = 2;
      t2[0] = { s: -1, f: l.f + r.f, l, r };
      while (i1 != s - 1) {
        l = t2[t2[i0].f < t2[i22].f ? i0++ : i22++];
        r = t2[i0 != i1 && t2[i0].f < t2[i22].f ? i0++ : i22++];
        t2[i1++] = { s: -1, f: l.f + r.f, l, r };
      }
      var maxSym = t22[0].s;
      for (var i4 = 1; i4 < s; ++i4) {
        if (t22[i4].s > maxSym)
          maxSym = t22[i4].s;
      }
      var tr = new u16(maxSym + 1);
      var mbt = ln(t2[i1 - 1], tr, 0);
      if (mbt > mb) {
        var i4 = 0, dt = 0;
        var lft = mbt - mb, cst = 1 << lft;
        t22.sort(function(a2, b) {
          return tr[b.s] - tr[a2.s] || a2.f - b.f;
        });
        for (; i4 < s; ++i4) {
          var i2_1 = t22[i4].s;
          if (tr[i2_1] > mb) {
            dt += cst - (1 << mbt - tr[i2_1]);
            tr[i2_1] = mb;
          } else
            break;
        }
        dt >>= lft;
        while (dt > 0) {
          var i2_2 = t22[i4].s;
          if (tr[i2_2] < mb)
            dt -= 1 << mb - tr[i2_2]++ - 1;
          else
            ++i4;
        }
        for (; i4 >= 0 && dt; --i4) {
          var i2_3 = t22[i4].s;
          if (tr[i2_3] == mb) {
            --tr[i2_3];
            ++dt;
          }
        }
        mbt = mb;
      }
      return { t: new u8(tr), l: mbt };
    };
    ln = function(n2, l, d3) {
      return n2.s == -1 ? Math.max(ln(n2.l, l, d3 + 1), ln(n2.r, l, d3 + 1)) : l[n2.s] = d3;
    };
    lc = function(c3) {
      var s = c3.length;
      while (s && !c3[--s])
        ;
      var cl = new u16(++s);
      var cli = 0, cln = c3[0], cls = 1;
      var w = function(v) {
        cl[cli++] = v;
      };
      for (var i4 = 1; i4 <= s; ++i4) {
        if (c3[i4] == cln && i4 != s)
          ++cls;
        else {
          if (!cln && cls > 2) {
            for (; cls > 138; cls -= 138)
              w(32754);
            if (cls > 2) {
              w(cls > 10 ? cls - 11 << 5 | 28690 : cls - 3 << 5 | 12305);
              cls = 0;
            }
          } else if (cls > 3) {
            w(cln), --cls;
            for (; cls > 6; cls -= 6)
              w(8304);
            if (cls > 2)
              w(cls - 3 << 5 | 8208), cls = 0;
          }
          while (cls--)
            w(cln);
          cls = 1;
          cln = c3[i4];
        }
      }
      return { c: cl.subarray(0, cli), n: s };
    };
    clen = function(cf, cl) {
      var l = 0;
      for (var i4 = 0; i4 < cl.length; ++i4)
        l += cf[i4] * cl[i4];
      return l;
    };
    wfblk = function(out, pos, dat) {
      var s = dat.length;
      var o2 = shft(pos + 2);
      out[o2] = s & 255;
      out[o2 + 1] = s >> 8;
      out[o2 + 2] = out[o2] ^ 255;
      out[o2 + 3] = out[o2 + 1] ^ 255;
      for (var i4 = 0; i4 < s; ++i4)
        out[o2 + i4 + 4] = dat[i4];
      return (o2 + 4 + s) * 8;
    };
    wblk = function(dat, out, final, syms, lf, df, eb, li, bs, bl, p) {
      wbits(out, p++, final);
      ++lf[256];
      var _a2 = hTree(lf, 15), dlt = _a2.t, mlb = _a2.l;
      var _b2 = hTree(df, 15), ddt = _b2.t, mdb = _b2.l;
      var _c = lc(dlt), lclt = _c.c, nlc = _c.n;
      var _d = lc(ddt), lcdt = _d.c, ndc = _d.n;
      var lcfreq = new u16(19);
      for (var i4 = 0; i4 < lclt.length; ++i4)
        ++lcfreq[lclt[i4] & 31];
      for (var i4 = 0; i4 < lcdt.length; ++i4)
        ++lcfreq[lcdt[i4] & 31];
      var _e = hTree(lcfreq, 7), lct = _e.t, mlcb = _e.l;
      var nlcc = 19;
      for (; nlcc > 4 && !lct[clim[nlcc - 1]]; --nlcc)
        ;
      var flen = bl + 5 << 3;
      var ftlen = clen(lf, flt) + clen(df, fdt) + eb;
      var dtlen = clen(lf, dlt) + clen(df, ddt) + eb + 14 + 3 * nlcc + clen(lcfreq, lct) + 2 * lcfreq[16] + 3 * lcfreq[17] + 7 * lcfreq[18];
      if (bs >= 0 && flen <= ftlen && flen <= dtlen)
        return wfblk(out, p, dat.subarray(bs, bs + bl));
      var lm, ll, dm, dl;
      wbits(out, p, 1 + (dtlen < ftlen)), p += 2;
      if (dtlen < ftlen) {
        lm = hMap(dlt, mlb, 0), ll = dlt, dm = hMap(ddt, mdb, 0), dl = ddt;
        var llm = hMap(lct, mlcb, 0);
        wbits(out, p, nlc - 257);
        wbits(out, p + 5, ndc - 1);
        wbits(out, p + 10, nlcc - 4);
        p += 14;
        for (var i4 = 0; i4 < nlcc; ++i4)
          wbits(out, p + 3 * i4, lct[clim[i4]]);
        p += 3 * nlcc;
        var lcts = [lclt, lcdt];
        for (var it = 0; it < 2; ++it) {
          var clct = lcts[it];
          for (var i4 = 0; i4 < clct.length; ++i4) {
            var len = clct[i4] & 31;
            wbits(out, p, llm[len]), p += lct[len];
            if (len > 15)
              wbits(out, p, clct[i4] >> 5 & 127), p += clct[i4] >> 12;
          }
        }
      } else {
        lm = flm, ll = flt, dm = fdm, dl = fdt;
      }
      for (var i4 = 0; i4 < li; ++i4) {
        var sym = syms[i4];
        if (sym > 255) {
          var len = sym >> 18 & 31;
          wbits16(out, p, lm[len + 257]), p += ll[len + 257];
          if (len > 7)
            wbits(out, p, sym >> 23 & 31), p += fleb[len];
          var dst = sym & 31;
          wbits16(out, p, dm[dst]), p += dl[dst];
          if (dst > 3)
            wbits16(out, p, sym >> 5 & 8191), p += fdeb[dst];
        } else {
          wbits16(out, p, lm[sym]), p += ll[sym];
        }
      }
      wbits16(out, p, lm[256]);
      return p + ll[256];
    };
    deo = /* @__PURE__ */ new i32([65540, 131080, 131088, 131104, 262176, 1048704, 1048832, 2114560, 2117632]);
    et = /* @__PURE__ */ new u8(0);
    dflt = function(dat, lvl, plvl, pre, post, st) {
      var s = st.z || dat.length;
      var o2 = new u8(pre + s + 5 * (1 + Math.ceil(s / 7e3)) + post);
      var w = o2.subarray(pre, o2.length - post);
      var lst = st.l;
      var pos = (st.r || 0) & 7;
      if (lvl) {
        if (pos)
          w[0] = st.r >> 3;
        var opt = deo[lvl - 1];
        var n2 = opt >> 13, c3 = opt & 8191;
        var msk_1 = (1 << plvl) - 1;
        var prev = st.p || new u16(32768), head2 = st.h || new u16(msk_1 + 1);
        var bs1_1 = Math.ceil(plvl / 3), bs2_1 = 2 * bs1_1;
        var hsh = function(i5) {
          return (dat[i5] ^ dat[i5 + 1] << bs1_1 ^ dat[i5 + 2] << bs2_1) & msk_1;
        };
        var syms = new i32(25e3);
        var lf = new u16(288), df = new u16(32);
        var lc_1 = 0, eb = 0, i4 = st.i || 0, li = 0, wi = st.w || 0, bs = 0;
        for (; i4 + 2 < s; ++i4) {
          var hv = hsh(i4);
          var imod = i4 & 32767, pimod = head2[hv];
          prev[imod] = pimod;
          head2[hv] = imod;
          if (wi <= i4) {
            var rem = s - i4;
            if ((lc_1 > 7e3 || li > 24576) && (rem > 423 || !lst)) {
              pos = wblk(dat, w, 0, syms, lf, df, eb, li, bs, i4 - bs, pos);
              li = lc_1 = eb = 0, bs = i4;
              for (var j2 = 0; j2 < 286; ++j2)
                lf[j2] = 0;
              for (var j2 = 0; j2 < 30; ++j2)
                df[j2] = 0;
            }
            var l = 2, d3 = 0, ch_1 = c3, dif = imod - pimod & 32767;
            if (rem > 2 && hv == hsh(i4 - dif)) {
              var maxn = Math.min(n2, rem) - 1;
              var maxd = Math.min(32767, i4);
              var ml = Math.min(258, rem);
              while (dif <= maxd && --ch_1 && imod != pimod) {
                if (dat[i4 + l] == dat[i4 + l - dif]) {
                  var nl = 0;
                  for (; nl < ml && dat[i4 + nl] == dat[i4 + nl - dif]; ++nl)
                    ;
                  if (nl > l) {
                    l = nl, d3 = dif;
                    if (nl > maxn)
                      break;
                    var mmd = Math.min(dif, nl - 2);
                    var md = 0;
                    for (var j2 = 0; j2 < mmd; ++j2) {
                      var ti = i4 - dif + j2 & 32767;
                      var pti = prev[ti];
                      var cd = ti - pti & 32767;
                      if (cd > md)
                        md = cd, pimod = ti;
                    }
                  }
                }
                imod = pimod, pimod = prev[imod];
                dif += imod - pimod & 32767;
              }
            }
            if (d3) {
              syms[li++] = 268435456 | revfl[l] << 18 | revfd[d3];
              var lin = revfl[l] & 31, din = revfd[d3] & 31;
              eb += fleb[lin] + fdeb[din];
              ++lf[257 + lin];
              ++df[din];
              wi = i4 + l;
              ++lc_1;
            } else {
              syms[li++] = dat[i4];
              ++lf[dat[i4]];
            }
          }
        }
        for (i4 = Math.max(i4, wi); i4 < s; ++i4) {
          syms[li++] = dat[i4];
          ++lf[dat[i4]];
        }
        pos = wblk(dat, w, lst, syms, lf, df, eb, li, bs, i4 - bs, pos);
        if (!lst) {
          st.r = pos & 7 | w[pos / 8 | 0] << 3;
          pos -= 7;
          st.h = head2, st.p = prev, st.i = i4, st.w = wi;
        }
      } else {
        for (var i4 = st.w || 0; i4 < s + lst; i4 += 65535) {
          var e = i4 + 65535;
          if (e >= s) {
            w[pos / 8 | 0] = lst;
            e = s;
          }
          pos = wfblk(w, pos + 1, dat.subarray(i4, e));
        }
        st.i = s;
      }
      return slc(o2, 0, pre + shft(pos) + post);
    };
    adler = function() {
      var a2 = 1, b = 0;
      return {
        p: function(d3) {
          var n2 = a2, m = b;
          var l = d3.length | 0;
          for (var i4 = 0; i4 != l; ) {
            var e = Math.min(i4 + 2655, l);
            for (; i4 < e; ++i4)
              m += n2 += d3[i4];
            n2 = (n2 & 65535) + 15 * (n2 >> 16), m = (m & 65535) + 15 * (m >> 16);
          }
          a2 = n2, b = m;
        },
        d: function() {
          a2 %= 65521, b %= 65521;
          return (a2 & 255) << 24 | (a2 & 65280) << 8 | (b & 255) << 8 | b >> 8;
        }
      };
    };
    dopt = function(dat, opt, pre, post, st) {
      if (!st) {
        st = { l: 1 };
        if (opt.dictionary) {
          var dict = opt.dictionary.subarray(-32768);
          var newDat = new u8(dict.length + dat.length);
          newDat.set(dict);
          newDat.set(dat, dict.length);
          dat = newDat;
          st.w = dict.length;
        }
      }
      return dflt(dat, opt.level == null ? 6 : opt.level, opt.mem == null ? st.l ? Math.ceil(Math.max(8, Math.min(13, Math.log(dat.length))) * 1.5) : 20 : 12 + opt.mem, pre, post, st);
    };
    wbytes = function(d3, b, v) {
      for (; v; ++b)
        d3[b] = v, v >>>= 8;
    };
    zlh = function(c3, o2) {
      var lv = o2.level, fl2 = lv == 0 ? 0 : lv < 6 ? 1 : lv == 9 ? 3 : 2;
      c3[0] = 120, c3[1] = fl2 << 6 | (o2.dictionary && 32);
      c3[1] |= 31 - (c3[0] << 8 | c3[1]) % 31;
      if (o2.dictionary) {
        var h2 = adler();
        h2.p(o2.dictionary);
        wbytes(c3, 2, h2.d());
      }
    };
    zls = function(d3, dict) {
      if ((d3[0] & 15) != 8 || d3[0] >> 4 > 7 || (d3[0] << 8 | d3[1]) % 31)
        err(6, "invalid zlib data");
      if ((d3[1] >> 5 & 1) == +!dict)
        err(6, "invalid zlib data: " + (d3[1] & 32 ? "need" : "unexpected") + " dictionary");
      return (d3[1] >> 3 & 4) + 2;
    };
    Deflate = /* @__PURE__ */ (function() {
      function Deflate2(opts3, cb) {
        if (typeof opts3 == "function")
          cb = opts3, opts3 = {};
        this.ondata = cb;
        this.o = opts3 || {};
        this.s = { l: 0, i: 32768, w: 32768, z: 32768 };
        this.b = new u8(98304);
        if (this.o.dictionary) {
          var dict = this.o.dictionary.subarray(-32768);
          this.b.set(dict, 32768 - dict.length);
          this.s.i = 32768 - dict.length;
        }
      }
      Deflate2.prototype.p = function(c3, f) {
        this.ondata(dopt(c3, this.o, 0, 0, this.s), f);
      };
      Deflate2.prototype.push = function(chunk, final) {
        if (!this.ondata)
          err(5);
        if (this.s.l)
          err(4);
        var endLen = chunk.length + this.s.z;
        if (endLen > this.b.length) {
          if (endLen > 2 * this.b.length - 32768) {
            var newBuf = new u8(endLen & -32768);
            newBuf.set(this.b.subarray(0, this.s.z));
            this.b = newBuf;
          }
          var split4 = this.b.length - this.s.z;
          this.b.set(chunk.subarray(0, split4), this.s.z);
          this.s.z = this.b.length;
          this.p(this.b, false);
          this.b.set(this.b.subarray(-32768));
          this.b.set(chunk.subarray(split4), 32768);
          this.s.z = chunk.length - split4 + 32768;
          this.s.i = 32766, this.s.w = 32768;
        } else {
          this.b.set(chunk, this.s.z);
          this.s.z += chunk.length;
        }
        this.s.l = final & 1;
        if (this.s.z > this.s.w + 8191 || final) {
          this.p(this.b, final || false);
          this.s.w = this.s.i, this.s.i -= 2;
        }
        if (final) {
          this.s = this.o = {};
          this.b = et;
        }
      };
      Deflate2.prototype.flush = function(sync3) {
        if (!this.ondata)
          err(5);
        if (this.s.l)
          err(4);
        this.p(this.b, false);
        this.s.w = this.s.i, this.s.i -= 2;
        if (sync3) {
          var c3 = new u8(6);
          c3[0] = this.s.r >> 3;
          var ep = wfblk(c3, this.s.r, et);
          this.s.r = 0;
          this.ondata(c3.subarray(0, ep >> 3), false);
        }
      };
      return Deflate2;
    })();
    Inflate = /* @__PURE__ */ (function() {
      function Inflate2(opts3, cb) {
        if (typeof opts3 == "function")
          cb = opts3, opts3 = {};
        this.ondata = cb;
        var dict = opts3 && opts3.dictionary && opts3.dictionary.subarray(-32768);
        this.s = { i: 0, b: dict ? dict.length : 0 };
        this.o = new u8(32768);
        this.p = new u8(0);
        if (dict)
          this.o.set(dict);
      }
      Inflate2.prototype.e = function(c3) {
        if (!this.ondata)
          err(5);
        if (this.d)
          err(4);
        if (!this.p.length)
          this.p = c3;
        else if (c3.length) {
          var n2 = new u8(this.p.length + c3.length);
          n2.set(this.p), n2.set(c3, this.p.length), this.p = n2;
        }
      };
      Inflate2.prototype.c = function(final) {
        this.s.i = +(this.d = final || false);
        var bts = this.s.b;
        var dt = inflt(this.p, this.s, this.o);
        this.ondata(slc(dt, bts, this.s.b), this.d);
        this.o = slc(dt, this.s.b - 32768), this.s.b = this.o.length;
        this.p = slc(this.p, this.s.p / 8 | 0), this.s.p &= 7;
      };
      Inflate2.prototype.push = function(chunk, final) {
        this.e(chunk), this.c(final);
      };
      return Inflate2;
    })();
    Zlib = /* @__PURE__ */ (function() {
      function Zlib2(opts3, cb) {
        this.c = adler();
        this.v = 1;
        Deflate.call(this, opts3, cb);
      }
      Zlib2.prototype.push = function(chunk, final) {
        this.c.p(chunk);
        Deflate.prototype.push.call(this, chunk, final);
      };
      Zlib2.prototype.p = function(c3, f) {
        var raw = dopt(c3, this.o, this.v && (this.o.dictionary ? 6 : 2), f && 4, this.s);
        if (this.v)
          zlh(raw, this.o), this.v = 0;
        if (f)
          wbytes(raw, raw.length - 4, this.c.d());
        this.ondata(raw, f);
      };
      Zlib2.prototype.flush = function(sync3) {
        Deflate.prototype.flush.call(this, sync3);
      };
      return Zlib2;
    })();
    Unzlib = /* @__PURE__ */ (function() {
      function Unzlib2(opts3, cb) {
        Inflate.call(this, opts3, cb);
        this.v = opts3 && opts3.dictionary ? 2 : 1;
      }
      Unzlib2.prototype.push = function(chunk, final) {
        Inflate.prototype.e.call(this, chunk);
        if (this.v) {
          if (this.p.length < 6 && !final)
            return;
          this.p = this.p.subarray(zls(this.p, this.v - 1)), this.v = 0;
        }
        if (final) {
          if (this.p.length < 4)
            err(6, "invalid zlib data");
          this.p = this.p.subarray(0, -4);
        }
        Inflate.prototype.c.call(this, final);
      };
      return Unzlib2;
    })();
    td = typeof TextDecoder != "undefined" && /* @__PURE__ */ new TextDecoder();
    tds = 0;
    try {
      td.decode(et, { stream: true });
      tds = 1;
    } catch (e) {
    }
    LiteralDataPacket = class {
      static get tag() {
        return enums.packet.literalData;
      }
      /**
       * @param {Date} date - The creation date of the literal package
       */
      constructor(date = /* @__PURE__ */ new Date()) {
        this.format = enums.literal.utf8;
        this.date = util11.normalizeDate(date);
        this.text = null;
        this.data = null;
        this.filename = "";
      }
      /**
       * Set the packet data to a javascript native string, end of line
       * will be normalized to \r\n and by default text is converted to UTF8
       * @param {String | ReadableStream<String>} text - Any native javascript string
       * @param {enums.literal} [format] - The format of the string of bytes
       */
      setText(text, format2 = enums.literal.utf8) {
        this.format = format2;
        this.text = text;
        this.data = null;
      }
      /**
       * Returns literal data packets as native JavaScript string
       * with normalized end of line to \n
       * @param {Boolean} [clone] - Whether to return a clone so that getBytes/getText can be called again
       * @returns {String | ReadableStream<String>} Literal data as text.
       */
      getText(clone4 = false) {
        if (this.text === null || util11.isStream(this.text)) {
          this.text = util11.decodeUTF8(util11.nativeEOL(this.getBytes(clone4)));
        }
        return this.text;
      }
      /**
       * Set the packet data to value represented by the provided string of bytes.
       * @param {Uint8Array | ReadableStream<Uint8Array>} bytes - The string of bytes
       * @param {enums.literal} format - The format of the string of bytes
       */
      setBytes(bytes, format2) {
        this.format = format2;
        this.data = bytes;
        this.text = null;
      }
      /**
       * Get the byte sequence representing the literal packet data
       * @param {Boolean} [clone] - Whether to return a clone so that getBytes/getText can be called again
       * @returns {Uint8Array | ReadableStream<Uint8Array>} A sequence of bytes.
       */
      getBytes(clone4 = false) {
        if (this.data === null) {
          this.data = util11.canonicalizeEOL(util11.encodeUTF8(this.text));
        }
        if (clone4) {
          return passiveClone(this.data);
        }
        return this.data;
      }
      /**
       * Sets the filename of the literal packet data
       * @param {String} filename - Any native javascript string
       */
      setFilename(filename) {
        this.filename = filename;
      }
      /**
       * Get the filename of the literal packet data
       * @returns {String} Filename.
       */
      getFilename() {
        return this.filename;
      }
      /**
       * Parsing function for a literal data packet (tag 11).
       *
       * @param {Uint8Array | ReadableStream<Uint8Array>} input - Payload of a tag 11 packet
       * @returns {Promise<LiteralDataPacket>} Object representation.
       * @async
       */
      async read(bytes) {
        await parse5(bytes, async (reader) => {
          const format2 = await reader.readByte();
          const filename_len = await reader.readByte();
          this.filename = util11.decodeUTF8(await reader.readBytes(filename_len));
          this.date = util11.readDate(await reader.readBytes(4));
          let data = reader.remainder();
          if (isArrayStream(data))
            data = await readToEnd(data);
          this.setBytes(data, format2);
        });
      }
      /**
       * Creates a Uint8Array representation of the packet, excluding the data
       *
       * @returns {Uint8Array} Uint8Array representation of the packet.
       */
      writeHeader() {
        const filename = util11.encodeUTF8(this.filename);
        const filename_length = new Uint8Array([filename.length]);
        const format2 = new Uint8Array([this.format]);
        const date = util11.writeDate(this.date);
        return util11.concatUint8Array([format2, filename_length, filename, date]);
      }
      /**
       * Creates a Uint8Array representation of the packet
       *
       * @returns {Uint8Array | ReadableStream<Uint8Array>} Uint8Array representation of the packet.
       */
      write() {
        const header = this.writeHeader();
        const data = this.getBytes();
        return util11.concat([header, data]);
      }
    };
    KeyID = class _KeyID {
      constructor() {
        this.bytes = "";
      }
      /**
       * Parsing method for a key id
       * @param {Uint8Array} bytes - Input to read the key id from
       */
      read(bytes) {
        this.bytes = util11.uint8ArrayToString(bytes.subarray(0, 8));
        return this.bytes.length;
      }
      /**
       * Serializes the Key ID
       * @returns {Uint8Array} Key ID as a Uint8Array.
       */
      write() {
        return util11.stringToUint8Array(this.bytes);
      }
      /**
       * Returns the Key ID represented as a hexadecimal string
       * @returns {String} Key ID as a hexadecimal string.
       */
      toHex() {
        return util11.uint8ArrayToHex(util11.stringToUint8Array(this.bytes));
      }
      /**
       * Checks equality of Key ID's
       * @param {KeyID} keyID
       * @param {Boolean} matchWildcard - Indicates whether to check if either keyID is a wildcard
       */
      equals(keyID, matchWildcard = false) {
        return matchWildcard && (keyID.isWildcard() || this.isWildcard()) || this.bytes === keyID.bytes;
      }
      /**
       * Checks to see if the Key ID is unset
       * @returns {Boolean} True if the Key ID is null.
       */
      isNull() {
        return this.bytes === "";
      }
      /**
       * Checks to see if the Key ID is a "wildcard" Key ID (all zeros)
       * @returns {Boolean} True if this is a wildcard Key ID.
       */
      isWildcard() {
        return /^0+$/.test(this.toHex());
      }
      static mapToHex(keyID) {
        return keyID.toHex();
      }
      static fromID(hex) {
        const keyID = new _KeyID();
        keyID.read(util11.hexToUint8Array(hex));
        return keyID;
      }
      static wildcard() {
        const keyID = new _KeyID();
        keyID.read(new Uint8Array(8));
        return keyID;
      }
    };
    verified = /* @__PURE__ */ Symbol("verified");
    SALT_NOTATION_NAME = "salt@notations.openpgpjs.org";
    allowedUnhashedSubpackets = /* @__PURE__ */ new Set([
      enums.signatureSubpacket.issuerKeyID,
      enums.signatureSubpacket.issuerFingerprint,
      enums.signatureSubpacket.embeddedSignature
    ]);
    SignaturePacket = class _SignaturePacket {
      static get tag() {
        return enums.packet.signature;
      }
      constructor() {
        this.version = null;
        this.signatureType = null;
        this.hashAlgorithm = null;
        this.publicKeyAlgorithm = null;
        this.signatureData = null;
        this.unhashedSubpackets = [];
        this.unknownSubpackets = [];
        this.signedHashValue = null;
        this.salt = null;
        this.created = null;
        this.signatureExpirationTime = null;
        this.signatureNeverExpires = true;
        this.exportable = null;
        this.trustLevel = null;
        this.trustAmount = null;
        this.regularExpression = null;
        this.revocable = null;
        this.keyExpirationTime = null;
        this.keyNeverExpires = null;
        this.preferredSymmetricAlgorithms = null;
        this.revocationKeyClass = null;
        this.revocationKeyAlgorithm = null;
        this.revocationKeyFingerprint = null;
        this.issuerKeyID = new KeyID();
        this.rawNotations = [];
        this.notations = {};
        this.preferredHashAlgorithms = null;
        this.preferredCompressionAlgorithms = null;
        this.keyServerPreferences = null;
        this.preferredKeyServer = null;
        this.isPrimaryUserID = null;
        this.policyURI = null;
        this.keyFlags = null;
        this.signersUserID = null;
        this.reasonForRevocationFlag = null;
        this.reasonForRevocationString = null;
        this.features = null;
        this.signatureTargetPublicKeyAlgorithm = null;
        this.signatureTargetHashAlgorithm = null;
        this.signatureTargetHash = null;
        this.embeddedSignature = null;
        this.issuerKeyVersion = null;
        this.issuerFingerprint = null;
        this.preferredAEADAlgorithms = null;
        this.preferredCipherSuites = null;
        this.revoked = null;
        this[verified] = null;
      }
      /**
       * parsing function for a signature packet (tag 2).
       * @param {String} bytes - Payload of a tag 2 packet
       * @returns {SignaturePacket} Object representation.
       */
      read(bytes, config$1 = config) {
        let i4 = 0;
        this.version = bytes[i4++];
        if (this.version === 5 && !config$1.enableParsingV5Entities) {
          throw new UnsupportedError("Support for v5 entities is disabled; turn on `config.enableParsingV5Entities` if needed");
        }
        if (this.version !== 4 && this.version !== 5 && this.version !== 6) {
          throw new UnsupportedError(`Version ${this.version} of the signature packet is unsupported.`);
        }
        this.signatureType = bytes[i4++];
        this.publicKeyAlgorithm = bytes[i4++];
        this.hashAlgorithm = bytes[i4++];
        i4 += this.readSubPackets(bytes.subarray(i4, bytes.length), true);
        if (!this.created) {
          throw new Error("Missing signature creation time subpacket.");
        }
        this.signatureData = bytes.subarray(0, i4);
        i4 += this.readSubPackets(bytes.subarray(i4, bytes.length), false);
        this.signedHashValue = bytes.subarray(i4, i4 + 2);
        i4 += 2;
        if (this.version === 6) {
          const saltLength = bytes[i4++];
          this.salt = bytes.subarray(i4, i4 + saltLength);
          i4 += saltLength;
        }
        const signatureMaterial = bytes.subarray(i4, bytes.length);
        const { read: read2, signatureParams } = parseSignatureParams(this.publicKeyAlgorithm, signatureMaterial);
        if (read2 < signatureMaterial.length) {
          throw new Error("Error reading MPIs");
        }
        this.params = signatureParams;
      }
      /**
       * @returns {Uint8Array | ReadableStream<Uint8Array>}
       */
      writeParams() {
        if (this.params instanceof Promise) {
          return fromAsync(async () => serializeParams(this.publicKeyAlgorithm, await this.params));
        }
        return serializeParams(this.publicKeyAlgorithm, this.params);
      }
      write() {
        const arr = [];
        arr.push(this.signatureData);
        arr.push(this.writeUnhashedSubPackets());
        arr.push(this.signedHashValue);
        if (this.version === 6) {
          arr.push(new Uint8Array([this.salt.length]));
          arr.push(this.salt);
        }
        arr.push(this.writeParams());
        return util11.concat(arr);
      }
      /**
       * Signs provided data. This needs to be done prior to serialization.
       * @param {SecretKeyPacket} key - Private key used to sign the message.
       * @param {Object} data - Contains packets to be signed.
       * @param {Date} [date] - The signature creation time.
       * @param {Boolean} [detached] - Whether to create a detached signature
       * @throws {Error} if signing failed
       * @async
       */
      async sign(key, data, date = /* @__PURE__ */ new Date(), detached = false, config2) {
        this.version = key.version;
        this.created = util11.normalizeDate(date);
        this.issuerKeyVersion = key.version;
        this.issuerFingerprint = key.getFingerprintBytes();
        this.issuerKeyID = key.getKeyID();
        const arr = [new Uint8Array([this.version, this.signatureType, this.publicKeyAlgorithm, this.hashAlgorithm])];
        if (this.version === 6) {
          const saltLength = saltLengthForHash(this.hashAlgorithm);
          if (this.salt === null) {
            this.salt = getRandomBytes(saltLength);
          } else if (saltLength !== this.salt.length) {
            throw new Error("Provided salt does not have the required length");
          }
        } else if (config2.nonDeterministicSignaturesViaNotation) {
          const saltNotations = this.rawNotations.filter(({ name }) => name === SALT_NOTATION_NAME);
          if (saltNotations.length === 0) {
            const saltValue = getRandomBytes(saltLengthForHash(this.hashAlgorithm));
            this.rawNotations.push({
              name: SALT_NOTATION_NAME,
              value: saltValue,
              humanReadable: false,
              critical: false
            });
          } else {
            throw new Error("Unexpected existing salt notation");
          }
        }
        arr.push(this.writeHashedSubPackets());
        this.unhashedSubpackets = [];
        this.signatureData = util11.concat(arr);
        const toHash = this.toHash(this.signatureType, data, detached);
        const hash2 = await this.hash(this.signatureType, data, toHash, detached);
        this.signedHashValue = slice3(clone3(hash2), 0, 2);
        const signed = async () => sign$1(this.publicKeyAlgorithm, this.hashAlgorithm, key.publicParams, key.privateParams, toHash, await readToEnd(hash2));
        if (util11.isStream(hash2)) {
          this.params = signed();
        } else {
          this.params = await signed();
          this[verified] = true;
        }
      }
      /**
       * Creates Uint8Array of bytes of all subpacket data except Issuer and Embedded Signature subpackets
       * @returns {Uint8Array} Subpacket data.
       */
      writeHashedSubPackets() {
        const sub = enums.signatureSubpacket;
        const arr = [];
        let bytes;
        if (this.created === null) {
          throw new Error("Missing signature creation time");
        }
        arr.push(writeSubPacket(sub.signatureCreationTime, true, util11.writeDate(this.created)));
        if (this.signatureExpirationTime !== null) {
          arr.push(writeSubPacket(sub.signatureExpirationTime, true, util11.writeNumber(this.signatureExpirationTime, 4)));
        }
        if (this.exportable !== null) {
          arr.push(writeSubPacket(sub.exportableCertification, true, new Uint8Array([this.exportable ? 1 : 0])));
        }
        if (this.trustLevel !== null) {
          bytes = new Uint8Array([this.trustLevel, this.trustAmount]);
          arr.push(writeSubPacket(sub.trustSignature, true, bytes));
        }
        if (this.regularExpression !== null) {
          arr.push(writeSubPacket(sub.regularExpression, true, this.regularExpression));
        }
        if (this.revocable !== null) {
          arr.push(writeSubPacket(sub.revocable, true, new Uint8Array([this.revocable ? 1 : 0])));
        }
        if (this.keyExpirationTime !== null) {
          arr.push(writeSubPacket(sub.keyExpirationTime, true, util11.writeNumber(this.keyExpirationTime, 4)));
        }
        if (this.preferredSymmetricAlgorithms !== null) {
          bytes = util11.stringToUint8Array(util11.uint8ArrayToString(this.preferredSymmetricAlgorithms));
          arr.push(writeSubPacket(sub.preferredSymmetricAlgorithms, false, bytes));
        }
        if (this.revocationKeyClass !== null) {
          bytes = new Uint8Array([this.revocationKeyClass, this.revocationKeyAlgorithm]);
          bytes = util11.concat([bytes, this.revocationKeyFingerprint]);
          arr.push(writeSubPacket(sub.revocationKey, false, bytes));
        }
        if (!this.issuerKeyID.isNull() && this.issuerKeyVersion < 5) {
          arr.push(writeSubPacket(sub.issuerKeyID, false, this.issuerKeyID.write()));
        }
        this.rawNotations.forEach(({ name, value, humanReadable, critical }) => {
          bytes = [new Uint8Array([humanReadable ? 128 : 0, 0, 0, 0])];
          const encodedName = util11.encodeUTF8(name);
          bytes.push(util11.writeNumber(encodedName.length, 2));
          bytes.push(util11.writeNumber(value.length, 2));
          bytes.push(encodedName);
          bytes.push(value);
          bytes = util11.concat(bytes);
          arr.push(writeSubPacket(sub.notationData, critical, bytes));
        });
        if (this.preferredHashAlgorithms !== null) {
          bytes = util11.stringToUint8Array(util11.uint8ArrayToString(this.preferredHashAlgorithms));
          arr.push(writeSubPacket(sub.preferredHashAlgorithms, false, bytes));
        }
        if (this.preferredCompressionAlgorithms !== null) {
          bytes = util11.stringToUint8Array(util11.uint8ArrayToString(this.preferredCompressionAlgorithms));
          arr.push(writeSubPacket(sub.preferredCompressionAlgorithms, false, bytes));
        }
        if (this.keyServerPreferences !== null) {
          bytes = util11.stringToUint8Array(util11.uint8ArrayToString(this.keyServerPreferences));
          arr.push(writeSubPacket(sub.keyServerPreferences, false, bytes));
        }
        if (this.preferredKeyServer !== null) {
          arr.push(writeSubPacket(sub.preferredKeyServer, false, util11.encodeUTF8(this.preferredKeyServer)));
        }
        if (this.isPrimaryUserID !== null) {
          arr.push(writeSubPacket(sub.primaryUserID, false, new Uint8Array([this.isPrimaryUserID ? 1 : 0])));
        }
        if (this.policyURI !== null) {
          arr.push(writeSubPacket(sub.policyURI, false, util11.encodeUTF8(this.policyURI)));
        }
        if (this.keyFlags !== null) {
          bytes = util11.stringToUint8Array(util11.uint8ArrayToString(this.keyFlags));
          arr.push(writeSubPacket(sub.keyFlags, true, bytes));
        }
        if (this.signersUserID !== null) {
          arr.push(writeSubPacket(sub.signersUserID, false, util11.encodeUTF8(this.signersUserID)));
        }
        if (this.reasonForRevocationFlag !== null) {
          bytes = util11.stringToUint8Array(String.fromCharCode(this.reasonForRevocationFlag) + this.reasonForRevocationString);
          arr.push(writeSubPacket(sub.reasonForRevocation, true, bytes));
        }
        if (this.features !== null) {
          bytes = util11.stringToUint8Array(util11.uint8ArrayToString(this.features));
          arr.push(writeSubPacket(sub.features, false, bytes));
        }
        if (this.signatureTargetPublicKeyAlgorithm !== null) {
          bytes = [new Uint8Array([this.signatureTargetPublicKeyAlgorithm, this.signatureTargetHashAlgorithm])];
          bytes.push(util11.stringToUint8Array(this.signatureTargetHash));
          bytes = util11.concat(bytes);
          arr.push(writeSubPacket(sub.signatureTarget, true, bytes));
        }
        if (this.embeddedSignature !== null) {
          arr.push(writeSubPacket(sub.embeddedSignature, true, this.embeddedSignature.write()));
        }
        if (this.issuerFingerprint !== null) {
          bytes = [new Uint8Array([this.issuerKeyVersion]), this.issuerFingerprint];
          bytes = util11.concat(bytes);
          arr.push(writeSubPacket(sub.issuerFingerprint, this.version >= 5, bytes));
        }
        if (this.preferredAEADAlgorithms !== null) {
          bytes = util11.stringToUint8Array(util11.uint8ArrayToString(this.preferredAEADAlgorithms));
          arr.push(writeSubPacket(sub.preferredAEADAlgorithms, false, bytes));
        }
        if (this.preferredCipherSuites !== null) {
          bytes = new Uint8Array([].concat(...this.preferredCipherSuites));
          arr.push(writeSubPacket(sub.preferredCipherSuites, false, bytes));
        }
        const result2 = util11.concat(arr);
        const length = util11.writeNumber(result2.length, this.version === 6 ? 4 : 2);
        return util11.concat([length, result2]);
      }
      /**
       * Creates an Uint8Array containing the unhashed subpackets
       * @returns {Uint8Array} Subpacket data.
       */
      writeUnhashedSubPackets() {
        const arr = this.unhashedSubpackets.map(({ type: type4, critical, body }) => {
          return writeSubPacket(type4, critical, body);
        });
        const result2 = util11.concat(arr);
        const length = util11.writeNumber(result2.length, this.version === 6 ? 4 : 2);
        return util11.concat([length, result2]);
      }
      // Signature subpackets
      readSubPacket(bytes, hashed = true) {
        let mypos = 0;
        const critical = !!(bytes[mypos] & 128);
        const type4 = bytes[mypos] & 127;
        mypos++;
        if (!hashed) {
          this.unhashedSubpackets.push({
            type: type4,
            critical,
            body: bytes.subarray(mypos, bytes.length)
          });
          if (!allowedUnhashedSubpackets.has(type4)) {
            return;
          }
        }
        switch (type4) {
          case enums.signatureSubpacket.signatureCreationTime:
            this.created = util11.readDate(bytes.subarray(mypos, bytes.length));
            break;
          case enums.signatureSubpacket.signatureExpirationTime: {
            const seconds = util11.readNumber(bytes.subarray(mypos, bytes.length));
            this.signatureNeverExpires = seconds === 0;
            this.signatureExpirationTime = seconds;
            break;
          }
          case enums.signatureSubpacket.exportableCertification:
            this.exportable = bytes[mypos++] === 1;
            break;
          case enums.signatureSubpacket.trustSignature:
            this.trustLevel = bytes[mypos++];
            this.trustAmount = bytes[mypos++];
            break;
          case enums.signatureSubpacket.regularExpression:
            this.regularExpression = bytes[mypos];
            break;
          case enums.signatureSubpacket.revocable:
            this.revocable = bytes[mypos++] === 1;
            break;
          case enums.signatureSubpacket.keyExpirationTime: {
            const seconds = util11.readNumber(bytes.subarray(mypos, bytes.length));
            this.keyExpirationTime = seconds;
            this.keyNeverExpires = seconds === 0;
            break;
          }
          case enums.signatureSubpacket.preferredSymmetricAlgorithms:
            this.preferredSymmetricAlgorithms = [...bytes.subarray(mypos, bytes.length)];
            break;
          case enums.signatureSubpacket.revocationKey:
            this.revocationKeyClass = bytes[mypos++];
            this.revocationKeyAlgorithm = bytes[mypos++];
            this.revocationKeyFingerprint = bytes.subarray(mypos, mypos + 20);
            break;
          case enums.signatureSubpacket.issuerKeyID:
            if (this.version === 4) {
              this.issuerKeyID.read(bytes.subarray(mypos, bytes.length));
            } else if (hashed) {
              throw new Error("Unexpected Issuer Key ID subpacket");
            }
            break;
          case enums.signatureSubpacket.notationData: {
            const humanReadable = !!(bytes[mypos] & 128);
            mypos += 4;
            const m = util11.readNumber(bytes.subarray(mypos, mypos + 2));
            mypos += 2;
            const n2 = util11.readNumber(bytes.subarray(mypos, mypos + 2));
            mypos += 2;
            const name = util11.decodeUTF8(bytes.subarray(mypos, mypos + m));
            const value = bytes.subarray(mypos + m, mypos + m + n2);
            this.rawNotations.push({ name, humanReadable, value, critical });
            if (humanReadable) {
              this.notations[name] = util11.decodeUTF8(value);
            }
            break;
          }
          case enums.signatureSubpacket.preferredHashAlgorithms:
            this.preferredHashAlgorithms = [...bytes.subarray(mypos, bytes.length)];
            break;
          case enums.signatureSubpacket.preferredCompressionAlgorithms:
            this.preferredCompressionAlgorithms = [...bytes.subarray(mypos, bytes.length)];
            break;
          case enums.signatureSubpacket.keyServerPreferences:
            this.keyServerPreferences = [...bytes.subarray(mypos, bytes.length)];
            break;
          case enums.signatureSubpacket.preferredKeyServer:
            this.preferredKeyServer = util11.decodeUTF8(bytes.subarray(mypos, bytes.length));
            break;
          case enums.signatureSubpacket.primaryUserID:
            this.isPrimaryUserID = bytes[mypos++] !== 0;
            break;
          case enums.signatureSubpacket.policyURI:
            this.policyURI = util11.decodeUTF8(bytes.subarray(mypos, bytes.length));
            break;
          case enums.signatureSubpacket.keyFlags:
            this.keyFlags = [...bytes.subarray(mypos, bytes.length)];
            break;
          case enums.signatureSubpacket.signersUserID:
            this.signersUserID = util11.decodeUTF8(bytes.subarray(mypos, bytes.length));
            break;
          case enums.signatureSubpacket.reasonForRevocation:
            this.reasonForRevocationFlag = bytes[mypos++];
            this.reasonForRevocationString = util11.decodeUTF8(bytes.subarray(mypos, bytes.length));
            break;
          case enums.signatureSubpacket.features:
            this.features = [...bytes.subarray(mypos, bytes.length)];
            break;
          case enums.signatureSubpacket.signatureTarget: {
            this.signatureTargetPublicKeyAlgorithm = bytes[mypos++];
            this.signatureTargetHashAlgorithm = bytes[mypos++];
            const len = getHashByteLength(this.signatureTargetHashAlgorithm);
            this.signatureTargetHash = util11.uint8ArrayToString(bytes.subarray(mypos, mypos + len));
            break;
          }
          case enums.signatureSubpacket.embeddedSignature:
            this.embeddedSignature = new _SignaturePacket();
            this.embeddedSignature.read(bytes.subarray(mypos, bytes.length));
            break;
          case enums.signatureSubpacket.issuerFingerprint:
            this.issuerKeyVersion = bytes[mypos++];
            this.issuerFingerprint = bytes.subarray(mypos, bytes.length);
            if (this.issuerKeyVersion >= 5) {
              this.issuerKeyID.read(this.issuerFingerprint);
            } else {
              this.issuerKeyID.read(this.issuerFingerprint.subarray(-8));
            }
            break;
          case enums.signatureSubpacket.preferredAEADAlgorithms:
            this.preferredAEADAlgorithms = [...bytes.subarray(mypos, bytes.length)];
            break;
          case enums.signatureSubpacket.preferredCipherSuites:
            this.preferredCipherSuites = [];
            for (let i4 = mypos; i4 < bytes.length; i4 += 2) {
              this.preferredCipherSuites.push([bytes[i4], bytes[i4 + 1]]);
            }
            break;
          default:
            this.unknownSubpackets.push({
              type: type4,
              critical,
              body: bytes.subarray(mypos, bytes.length)
            });
            break;
        }
      }
      readSubPackets(bytes, trusted = true, config2) {
        const subpacketLengthBytes = this.version === 6 ? 4 : 2;
        const subpacketLength = util11.readNumber(bytes.subarray(0, subpacketLengthBytes));
        let i4 = subpacketLengthBytes;
        while (i4 < 2 + subpacketLength) {
          const len = readSimpleLength(bytes.subarray(i4, bytes.length));
          i4 += len.offset;
          this.readSubPacket(bytes.subarray(i4, i4 + len.len), trusted, config2);
          i4 += len.len;
        }
        return i4;
      }
      // Produces data to produce signature on
      toSign(type4, data) {
        const t2 = enums.signature;
        switch (type4) {
          case t2.binary:
            if (data.text !== null) {
              return util11.encodeUTF8(data.getText(true));
            }
            return data.getBytes(true);
          case t2.text: {
            const bytes = data.getBytes(true);
            return util11.canonicalizeEOL(bytes);
          }
          case t2.standalone:
            return new Uint8Array(0);
          case t2.certGeneric:
          case t2.certPersona:
          case t2.certCasual:
          case t2.certPositive:
          case t2.certRevocation: {
            let packet;
            let tag;
            if (data.userID) {
              tag = 180;
              packet = data.userID;
            } else if (data.userAttribute) {
              tag = 209;
              packet = data.userAttribute;
            } else {
              throw new Error("Either a userID or userAttribute packet needs to be supplied for certification.");
            }
            const bytes = packet.write();
            return util11.concat([
              this.toSign(t2.key, data),
              new Uint8Array([tag]),
              util11.writeNumber(bytes.length, 4),
              bytes
            ]);
          }
          case t2.subkeyBinding:
          case t2.subkeyRevocation:
          case t2.keyBinding:
            return util11.concat([this.toSign(t2.key, data), this.toSign(t2.key, {
              key: data.bind
            })]);
          case t2.key:
            if (data.key === void 0) {
              throw new Error("Key packet is required for this signature.");
            }
            return data.key.writeForHash(this.version);
          case t2.keyRevocation:
            return this.toSign(t2.key, data);
          case t2.timestamp:
            return new Uint8Array(0);
          case t2.thirdParty:
            throw new Error("Not implemented");
          default:
            throw new Error("Unknown signature type.");
        }
      }
      calculateTrailer(data, detached) {
        let length = 0;
        return transform(clone3(this.signatureData), (value) => {
          length += value.length;
        }, () => {
          const arr = [];
          if (this.version === 5 && (this.signatureType === enums.signature.binary || this.signatureType === enums.signature.text)) {
            if (detached) {
              arr.push(new Uint8Array(6));
            } else {
              arr.push(data.writeHeader());
            }
          }
          arr.push(new Uint8Array([this.version, 255]));
          if (this.version === 5) {
            arr.push(new Uint8Array(4));
          }
          arr.push(util11.writeNumber(length, 4));
          return util11.concat(arr);
        });
      }
      toHash(signatureType, data, detached = false) {
        const bytes = this.toSign(signatureType, data);
        return util11.concat([this.salt || new Uint8Array(), bytes, this.signatureData, this.calculateTrailer(data, detached)]);
      }
      async hash(signatureType, data, toHash, detached = false) {
        if (this.version === 6 && this.salt.length !== saltLengthForHash(this.hashAlgorithm)) {
          throw new Error("Signature salt does not have the expected length");
        }
        if (!toHash)
          toHash = this.toHash(signatureType, data, detached);
        return computeDigest(this.hashAlgorithm, toHash);
      }
      /**
       * verifies the signature packet. Note: not all signature types are implemented
       * @param {PublicSubkeyPacket|PublicKeyPacket|
       *         SecretSubkeyPacket|SecretKeyPacket} key - the public key to verify the signature
       * @param {module:enums.signature} signatureType - Expected signature type
       * @param {Uint8Array|Object} data - Data which on the signature applies
       * @param {Date} [date] - Use the given date instead of the current time to check for signature validity and expiration
       * @param {Boolean} [detached] - Whether to verify a detached signature
       * @param {Object} [config] - Full configuration, defaults to openpgp.config
       * @throws {Error} if signature validation failed
       * @async
       */
      async verify(key, signatureType, data, date = /* @__PURE__ */ new Date(), detached = false, config$1 = config) {
        if (!this.issuerKeyID.equals(key.getKeyID())) {
          throw new Error("Signature was not issued by the given public key");
        }
        if (this.publicKeyAlgorithm !== key.algorithm) {
          throw new Error("Public key algorithm used to sign signature does not match issuer key algorithm.");
        }
        const isMessageSignature = signatureType === enums.signature.binary || signatureType === enums.signature.text;
        const skipVerify = this[verified] && !isMessageSignature;
        if (!skipVerify) {
          let toHash;
          let hash2;
          if (this.hashed) {
            hash2 = await this.hashed;
          } else {
            toHash = this.toHash(signatureType, data, detached);
            hash2 = await this.hash(signatureType, data, toHash);
          }
          hash2 = await readToEnd(hash2);
          if (this.signedHashValue[0] !== hash2[0] || this.signedHashValue[1] !== hash2[1]) {
            throw new Error("Signed digest did not match");
          }
          this.params = await this.params;
          this[verified] = await verify$1(this.publicKeyAlgorithm, this.hashAlgorithm, this.params, key.publicParams, toHash, hash2);
          if (!this[verified]) {
            throw new Error("Signature verification failed");
          }
        }
        const normDate = util11.normalizeDate(date);
        if (normDate && this.created > normDate) {
          throw new Error("Signature creation time is in the future");
        }
        if (normDate && normDate >= this.getExpirationTime()) {
          throw new Error("Signature is expired");
        }
        if (config$1.rejectHashAlgorithms.has(this.hashAlgorithm)) {
          throw new Error("Insecure hash algorithm: " + enums.read(enums.hash, this.hashAlgorithm).toUpperCase());
        }
        if (config$1.rejectMessageHashAlgorithms.has(this.hashAlgorithm) && [enums.signature.binary, enums.signature.text].includes(this.signatureType)) {
          throw new Error("Insecure message hash algorithm: " + enums.read(enums.hash, this.hashAlgorithm).toUpperCase());
        }
        this.unknownSubpackets.forEach(({ type: type4, critical }) => {
          if (critical) {
            throw new Error(`Unknown critical signature subpacket type ${type4}`);
          }
        });
        this.rawNotations.forEach(({ name, critical }) => {
          if (critical && config$1.knownNotations.indexOf(name) < 0) {
            throw new Error(`Unknown critical notation: ${name}`);
          }
        });
        if (this.revocationKeyClass !== null) {
          throw new Error("This key is intended to be revoked with an authorized key, which OpenPGP.js does not support.");
        }
      }
      /**
       * Verifies signature expiration date
       * @param {Date} [date] - Use the given date for verification instead of the current time
       * @returns {Boolean} True if expired.
       */
      isExpired(date = /* @__PURE__ */ new Date()) {
        const normDate = util11.normalizeDate(date);
        if (normDate !== null) {
          return !(this.created <= normDate && normDate < this.getExpirationTime());
        }
        return false;
      }
      /**
       * Returns the expiration time of the signature or Infinity if signature does not expire
       * @returns {Date | Infinity} Expiration time.
       */
      getExpirationTime() {
        return this.signatureNeverExpires ? Infinity : new Date(this.created.getTime() + this.signatureExpirationTime * 1e3);
      }
    };
    OnePassSignaturePacket = class _OnePassSignaturePacket {
      static get tag() {
        return enums.packet.onePassSignature;
      }
      static fromSignaturePacket(signaturePacket, isLast) {
        const onePassSig = new _OnePassSignaturePacket();
        onePassSig.version = signaturePacket.version === 6 ? 6 : 3;
        onePassSig.signatureType = signaturePacket.signatureType;
        onePassSig.hashAlgorithm = signaturePacket.hashAlgorithm;
        onePassSig.publicKeyAlgorithm = signaturePacket.publicKeyAlgorithm;
        onePassSig.issuerKeyID = signaturePacket.issuerKeyID;
        onePassSig.salt = signaturePacket.salt;
        onePassSig.issuerFingerprint = signaturePacket.issuerFingerprint;
        onePassSig.flags = isLast ? 1 : 0;
        return onePassSig;
      }
      constructor() {
        this.version = null;
        this.signatureType = null;
        this.hashAlgorithm = null;
        this.publicKeyAlgorithm = null;
        this.salt = null;
        this.issuerKeyID = null;
        this.issuerFingerprint = null;
        this.flags = null;
      }
      /**
       * parsing function for a one-pass signature packet (tag 4).
       * @param {Uint8Array} bytes - Payload of a tag 4 packet
       * @returns {OnePassSignaturePacket} Object representation.
       */
      read(bytes) {
        let mypos = 0;
        this.version = bytes[mypos++];
        if (this.version !== 3 && this.version !== 6) {
          throw new UnsupportedError(`Version ${this.version} of the one-pass signature packet is unsupported.`);
        }
        this.signatureType = bytes[mypos++];
        this.hashAlgorithm = bytes[mypos++];
        this.publicKeyAlgorithm = bytes[mypos++];
        if (this.version === 6) {
          const saltLength = bytes[mypos++];
          this.salt = bytes.subarray(mypos, mypos + saltLength);
          mypos += saltLength;
          this.issuerFingerprint = bytes.subarray(mypos, mypos + 32);
          mypos += 32;
          this.issuerKeyID = new KeyID();
          this.issuerKeyID.read(this.issuerFingerprint);
        } else {
          this.issuerKeyID = new KeyID();
          this.issuerKeyID.read(bytes.subarray(mypos, mypos + 8));
          mypos += 8;
        }
        this.flags = bytes[mypos++];
        return this;
      }
      /**
       * creates a string representation of a one-pass signature packet
       * @returns {Uint8Array} A Uint8Array representation of a one-pass signature packet.
       */
      write() {
        const arr = [new Uint8Array([
          this.version,
          this.signatureType,
          this.hashAlgorithm,
          this.publicKeyAlgorithm
        ])];
        if (this.version === 6) {
          arr.push(new Uint8Array([this.salt.length]), this.salt, this.issuerFingerprint);
        } else {
          arr.push(this.issuerKeyID.write());
        }
        arr.push(new Uint8Array([this.flags]));
        return util11.concatUint8Array(arr);
      }
      calculateTrailer(...args) {
        return fromAsync(async () => SignaturePacket.prototype.calculateTrailer.apply(await this.correspondingSig, args));
      }
      async verify() {
        const correspondingSig = await this.correspondingSig;
        if (!correspondingSig || correspondingSig.constructor.tag !== enums.packet.signature) {
          throw new Error("Corresponding signature packet missing");
        }
        if (correspondingSig.signatureType !== this.signatureType || correspondingSig.hashAlgorithm !== this.hashAlgorithm || correspondingSig.publicKeyAlgorithm !== this.publicKeyAlgorithm || !correspondingSig.issuerKeyID.equals(this.issuerKeyID) || this.version === 3 && correspondingSig.version === 6 || this.version === 6 && correspondingSig.version !== 6 || this.version === 6 && !util11.equalsUint8Array(correspondingSig.issuerFingerprint, this.issuerFingerprint) || this.version === 6 && !util11.equalsUint8Array(correspondingSig.salt, this.salt)) {
          throw new Error("Corresponding signature packet does not match one-pass signature packet");
        }
        correspondingSig.hashed = this.hashed;
        return correspondingSig.verify.apply(correspondingSig, arguments);
      }
    };
    OnePassSignaturePacket.prototype.hash = SignaturePacket.prototype.hash;
    OnePassSignaturePacket.prototype.toHash = SignaturePacket.prototype.toHash;
    OnePassSignaturePacket.prototype.toSign = SignaturePacket.prototype.toSign;
    PacketList = class _PacketList extends Array {
      /**
       * Parses the given binary data and returns a list of packets.
       * Equivalent to calling `read` on an empty PacketList instance.
       * @param {Uint8Array | ReadableStream<Uint8Array>} bytes - binary data to parse
       * @param {Object} allowedPackets - mapping where keys are allowed packet tags, pointing to their Packet class
       * @param {Object} [config] - full configuration, defaults to openpgp.config
       * @param {function(enums.packet[], boolean, Object): void} [grammarValidator]
       * @param {Boolean} [delayErrors] - delay errors until the input stream has been read completely
       * @returns {Promise<PacketList>} parsed list of packets
       * @throws on parsing errors
       * @async
       */
      static async fromBinary(bytes, allowedPackets, config$1 = config, grammarValidator = null, delayErrors = false) {
        const packets = new _PacketList();
        await packets.read(bytes, allowedPackets, config$1, grammarValidator, delayErrors);
        return packets;
      }
      /**
       * Reads a stream of binary data and interprets it as a list of packets.
       * @param {Uint8Array | ReadableStream<Uint8Array>} bytes - binary data to parse
       * @param {Object} allowedPackets - mapping where keys are allowed packet tags, pointing to their Packet class
       * @param {Object} [config] - full configuration, defaults to openpgp.config
       * @param {function(enums.packet[], boolean, Object): void} [grammarValidator]
       * @param {Boolean} [delayErrors] - delay errors until the input stream has been read completely
       * @throws on parsing errors
       * @async
       */
      async read(bytes, allowedPackets, config$1 = config, grammarValidator = null, delayErrors = false) {
        let additionalAllowedPackets;
        if (config$1.additionalAllowedPackets.length) {
          additionalAllowedPackets = util11.constructAllowedPackets(config$1.additionalAllowedPackets);
          allowedPackets = { ...allowedPackets, ...additionalAllowedPackets };
        }
        this.stream = transformPair(bytes, async (readable2, writable2) => {
          const reader2 = getReader(readable2);
          const writer = getWriter(writable2);
          try {
            let useStreamType = util11.isStream(readable2);
            while (true) {
              await writer.ready;
              let unauthenticatedError;
              let wasStream;
              await readPacket(reader2, useStreamType, async (parsed) => {
                try {
                  if (parsed.tag === enums.packet.marker || parsed.tag === enums.packet.trust || parsed.tag === enums.packet.padding) {
                    return;
                  }
                  const packet = newPacketFromTag(parsed.tag, allowedPackets);
                  try {
                    grammarValidator?.recordPacket(parsed.tag, additionalAllowedPackets);
                  } catch (e) {
                    if (config$1.enforceGrammar) {
                      throw e;
                    } else {
                      util11.printDebugError(e);
                    }
                  }
                  packet.packets = new _PacketList();
                  packet.fromStream = util11.isStream(parsed.packet);
                  wasStream = packet.fromStream;
                  try {
                    await packet.read(parsed.packet, config$1);
                  } catch (e) {
                    if (!(e instanceof UnsupportedError)) {
                      throw util11.wrapError(new MalformedPacketError(`Parsing ${packet.constructor.name} failed`), e);
                    }
                    throw e;
                  }
                  await writer.write(packet);
                } catch (e) {
                  const throwUnknownPacketError = e instanceof UnknownPacketError && parsed.tag <= 39;
                  const throwUnsupportedError = e instanceof UnsupportedError && !(e instanceof UnknownPacketError) && !config$1.ignoreUnsupportedPackets;
                  const throwMalformedPacketError = e instanceof MalformedPacketError && !config$1.ignoreMalformedPackets;
                  const throwDataPacketError = supportsStreaming(parsed.tag);
                  const throwOtherError = !(e instanceof UnknownPacketError || e instanceof UnsupportedError || e instanceof MalformedPacketError);
                  if (throwUnknownPacketError || throwUnsupportedError || throwMalformedPacketError || throwDataPacketError || throwOtherError) {
                    if (delayErrors) {
                      unauthenticatedError = e;
                    } else {
                      await writer.abort(e);
                    }
                  } else {
                    const unparsedPacket = new UnparseablePacket(parsed.tag, parsed.packet);
                    await writer.write(unparsedPacket);
                  }
                  util11.printDebugError(e);
                }
              });
              if (wasStream) {
                useStreamType = null;
              }
              if (unauthenticatedError) {
                await reader2.readToEnd();
                throw unauthenticatedError;
              }
              const nextPacket = await reader2.peekBytes(2);
              const done = !nextPacket || !nextPacket.length;
              if (done) {
                try {
                  grammarValidator?.recordEnd();
                } catch (e) {
                  if (config$1.enforceGrammar) {
                    throw e;
                  } else {
                    util11.printDebugError(e);
                  }
                }
                await writer.ready;
                await writer.close();
                return;
              }
            }
          } catch (e) {
            await writer.abort(e);
          }
        });
        const reader = getReader(this.stream);
        while (true) {
          const { done, value } = await reader.read();
          if (!done) {
            this.push(value);
          } else {
            this.stream = null;
          }
          if (done || supportsStreaming(value.constructor.tag)) {
            break;
          }
        }
        reader.releaseLock();
      }
      /**
       * Creates a binary representation of openpgp objects contained within the
       * class instance.
       * @returns {Uint8Array} A Uint8Array containing valid openpgp packets.
       */
      write() {
        const arr = [];
        for (let i4 = 0; i4 < this.length; i4++) {
          const tag = this[i4] instanceof UnparseablePacket ? this[i4].tag : this[i4].constructor.tag;
          const packetbytes = this[i4].write();
          if (util11.isStream(packetbytes) && supportsStreaming(this[i4].constructor.tag)) {
            let buffer3 = [];
            let bufferLength = 0;
            const minLength = 512;
            arr.push(writeTag(tag));
            arr.push(transform(packetbytes, (value) => {
              buffer3.push(value);
              bufferLength += value.length;
              if (bufferLength >= minLength) {
                const powerOf2 = Math.min(Math.log(bufferLength) / Math.LN2 | 0, 30);
                const chunkSize = 2 ** powerOf2;
                const bufferConcat = util11.concat([writePartialLength(powerOf2)].concat(buffer3));
                buffer3 = [bufferConcat.subarray(1 + chunkSize)];
                bufferLength = buffer3[0].length;
                return bufferConcat.subarray(0, 1 + chunkSize);
              }
            }, () => util11.concat([writeSimpleLength(bufferLength)].concat(buffer3))));
          } else {
            if (util11.isStream(packetbytes)) {
              let length = 0;
              arr.push(transform(clone3(packetbytes), (value) => {
                length += value.length;
              }, () => writeHeader(tag, length)));
            } else {
              arr.push(writeHeader(tag, packetbytes.length));
            }
            arr.push(packetbytes);
          }
        }
        return util11.concat(arr);
      }
      /**
       * Creates a new PacketList with all packets matching the given tag(s)
       * @param {...module:enums.packet} tags - packet tags to look for
       * @returns {PacketList}
       */
      filterByTag(...tags) {
        const filtered = new _PacketList();
        const handle = (tag) => (packetType) => tag === packetType;
        for (let i4 = 0; i4 < this.length; i4++) {
          if (tags.some(handle(this[i4].constructor.tag))) {
            filtered.push(this[i4]);
          }
        }
        return filtered;
      }
      /**
       * Traverses packet list and returns first packet with matching tag
       * @param {module:enums.packet} tag - The packet tag
       * @returns {Packet|undefined}
       */
      findPacket(tag) {
        return this.find((packet) => packet.constructor.tag === tag);
      }
      /**
       * Find indices of packets with the given tag(s)
       * @param {...module:enums.packet} tags - packet tags to look for
       * @returns {Integer[]} packet indices
       */
      indexOfTag(...tags) {
        const tagIndex = [];
        const that = this;
        const handle = (tag) => (packetType) => tag === packetType;
        for (let i4 = 0; i4 < this.length; i4++) {
          if (tags.some(handle(that[i4].constructor.tag))) {
            tagIndex.push(i4);
          }
        }
        return tagIndex;
      }
    };
    GrammarError = class _GrammarError extends Error {
      constructor(...params) {
        super(...params);
        if (Error.captureStackTrace) {
          Error.captureStackTrace(this, _GrammarError);
        }
        this.name = "GrammarError";
      }
    };
    (function(MessageType2) {
      MessageType2[MessageType2["EmptyMessage"] = 0] = "EmptyMessage";
      MessageType2[MessageType2["PlaintextOrEncryptedData"] = 1] = "PlaintextOrEncryptedData";
      MessageType2[MessageType2["EncryptedSessionKeys"] = 2] = "EncryptedSessionKeys";
      MessageType2[MessageType2["StandaloneAdditionalAllowedData"] = 3] = "StandaloneAdditionalAllowedData";
    })(MessageType || (MessageType = {}));
    MessageGrammarValidator = class {
      constructor() {
        this.state = MessageType.EmptyMessage;
        this.leadingOnePassSignatureCounter = 0;
      }
      /**
       * Determine validity of the next packet in the sequence.
       * NB: padding, marker and unknown packets are expected to already be filtered out on parsing,
       * and are not accepted by `recordPacket`.
       * @param packet - packet to validate
       * @param additionalAllowedPackets - object containing packets which are allowed anywhere in the sequence, except they cannot precede a OPS packet
       * @throws {GrammarError} on invalid `packet` input
       */
      recordPacket(packet, additionalAllowedPackets) {
        switch (this.state) {
          case MessageType.EmptyMessage:
          case MessageType.StandaloneAdditionalAllowedData:
            switch (packet) {
              case enums.packet.literalData:
              case enums.packet.compressedData:
              case enums.packet.aeadEncryptedData:
              case enums.packet.symEncryptedIntegrityProtectedData:
              case enums.packet.symmetricallyEncryptedData:
                this.state = MessageType.PlaintextOrEncryptedData;
                return;
              case enums.packet.signature:
                if (this.state === MessageType.StandaloneAdditionalAllowedData) {
                  if (--this.leadingOnePassSignatureCounter < 0) {
                    throw new GrammarError("Trailing signature packet without OPS");
                  }
                }
                return;
              case enums.packet.onePassSignature:
                if (this.state === MessageType.StandaloneAdditionalAllowedData) {
                  throw new GrammarError("OPS following StandaloneAdditionalAllowedData");
                }
                this.leadingOnePassSignatureCounter++;
                return;
              case enums.packet.publicKeyEncryptedSessionKey:
              case enums.packet.symEncryptedSessionKey:
                this.state = MessageType.EncryptedSessionKeys;
                return;
              default:
                if (!additionalAllowedPackets?.[packet]) {
                  throw new GrammarError(`Unexpected packet ${packet} in state ${this.state}`);
                }
                this.state = MessageType.StandaloneAdditionalAllowedData;
                return;
            }
          case MessageType.PlaintextOrEncryptedData:
            switch (packet) {
              case enums.packet.signature:
                if (--this.leadingOnePassSignatureCounter < 0) {
                  throw new GrammarError("Trailing signature packet without OPS");
                }
                this.state = MessageType.PlaintextOrEncryptedData;
                return;
              default:
                if (!additionalAllowedPackets?.[packet]) {
                  throw new GrammarError(`Unexpected packet ${packet} in state ${this.state}`);
                }
                this.state = MessageType.PlaintextOrEncryptedData;
                return;
            }
          case MessageType.EncryptedSessionKeys:
            switch (packet) {
              case enums.packet.publicKeyEncryptedSessionKey:
              case enums.packet.symEncryptedSessionKey:
                this.state = MessageType.EncryptedSessionKeys;
                return;
              case enums.packet.symEncryptedIntegrityProtectedData:
              case enums.packet.aeadEncryptedData:
              case enums.packet.symmetricallyEncryptedData:
                this.state = MessageType.PlaintextOrEncryptedData;
                return;
              case enums.packet.signature:
                if (--this.leadingOnePassSignatureCounter < 0) {
                  throw new GrammarError("Trailing signature packet without OPS");
                }
                this.state = MessageType.PlaintextOrEncryptedData;
                return;
              default:
                if (!additionalAllowedPackets?.[packet]) {
                  throw new GrammarError(`Unexpected packet ${packet} in state ${this.state}`);
                }
                this.state = MessageType.EncryptedSessionKeys;
            }
        }
      }
      /**
       * Signal end of the packet sequence for final validity check
       * @throws {GrammarError} on invalid sequence
       */
      recordEnd() {
        switch (this.state) {
          case MessageType.EmptyMessage:
          // needs to be allowed for PacketLists that only include unknown packets
          case MessageType.PlaintextOrEncryptedData:
          case MessageType.EncryptedSessionKeys:
          case MessageType.StandaloneAdditionalAllowedData:
            if (this.leadingOnePassSignatureCounter > 0) {
              throw new GrammarError("Missing trailing signature packets");
            }
        }
      }
    };
    allowedPackets$5 = /* @__PURE__ */ util11.constructAllowedPackets([
      LiteralDataPacket,
      OnePassSignaturePacket,
      SignaturePacket
    ]);
    CompressedDataPacket = class {
      static get tag() {
        return enums.packet.compressedData;
      }
      /**
       * @param {Object} [config] - Full configuration, defaults to openpgp.config
       */
      constructor(config$1 = config) {
        this.packets = null;
        this.algorithm = config$1.preferredCompressionAlgorithm;
        this.compressed = null;
      }
      /**
       * Parsing function for the packet.
       * @param {Uint8Array | ReadableStream<Uint8Array>} bytes - Payload of a tag 8 packet
       * @param {Object} [config] - Full configuration, defaults to openpgp.config
       */
      async read(bytes, config$1 = config) {
        await parse5(bytes, async (reader) => {
          this.algorithm = await reader.readByte();
          this.compressed = reader.remainder();
          await this.decompress(config$1);
        });
      }
      /**
       * Return the compressed packet.
       * @returns {Uint8Array | ReadableStream<Uint8Array>} Binary compressed packet.
       */
      write() {
        if (this.compressed === null) {
          this.compress();
        }
        return util11.concat([new Uint8Array([this.algorithm]), this.compressed]);
      }
      /**
       * Decompression method for decompressing the compressed data
       * read by read_packet
       * @param {Object} [config] - Full configuration, defaults to openpgp.config
       */
      async decompress(config$1 = config) {
        const compressionName = enums.read(enums.compression, this.algorithm);
        const decompressionFn = decompress_fns[compressionName];
        if (!decompressionFn) {
          throw new Error(`${compressionName} decompression not supported`);
        }
        let decompressed = await decompressionFn(this.compressed);
        if (config$1.maxDecompressedMessageSize !== Infinity) {
          let decompressedSize = 0;
          decompressed = transform(decompressed, (chunk) => {
            decompressedSize += chunk.length;
            if (decompressedSize > config$1.maxDecompressedMessageSize) {
              throw new Error("Maximum decompressed message size exceeded");
            }
            return chunk;
          });
        }
        if (!isStream2(this.compressed) || isArrayStream(this.compressed)) {
          decompressed = await readToEnd(decompressed);
        }
        this.packets = await PacketList.fromBinary(decompressed, allowedPackets$5, config$1, new MessageGrammarValidator());
      }
      /**
       * Compress the packet data (member decompressedData)
       */
      compress() {
        const compressionName = enums.read(enums.compression, this.algorithm);
        const compressionFn = compress_fns[compressionName];
        if (!compressionFn) {
          throw new Error(`${compressionName} compression not supported`);
        }
        const data = this.packets.write();
        let compressed = compressionFn(data);
        if (!isStream2(data) || isArrayStream(data)) {
          compressed = fromAsync(() => readToEnd(compressed));
        }
        this.compressed = compressed;
      }
    };
    getCompressionStreamInstantiators = (compressionFormat) => ({
      compressor: typeof CompressionStream !== "undefined" && (() => new CompressionStream(compressionFormat)),
      decompressor: typeof DecompressionStream !== "undefined" && (() => new DecompressionStream(compressionFormat))
    });
    compress_fns = {
      zip: /* @__PURE__ */ zlib(getCompressionStreamInstantiators("deflate-raw").compressor, Deflate),
      zlib: /* @__PURE__ */ zlib(getCompressionStreamInstantiators("deflate").compressor, Zlib)
    };
    decompress_fns = {
      uncompressed: (data) => data,
      zip: /* @__PURE__ */ zlib(getCompressionStreamInstantiators("deflate-raw").decompressor, Inflate),
      zlib: /* @__PURE__ */ zlib(getCompressionStreamInstantiators("deflate").decompressor, Unzlib),
      bzip2: /* @__PURE__ */ bzip2Decompress()
      // NB: async due to dynamic lib import
    };
    allowedPackets$4 = /* @__PURE__ */ util11.constructAllowedPackets([
      LiteralDataPacket,
      CompressedDataPacket,
      OnePassSignaturePacket,
      SignaturePacket
    ]);
    SymEncryptedIntegrityProtectedDataPacket = class _SymEncryptedIntegrityProtectedDataPacket {
      static get tag() {
        return enums.packet.symEncryptedIntegrityProtectedData;
      }
      static fromObject({ version: version2, aeadAlgorithm }) {
        if (version2 !== 1 && version2 !== 2) {
          throw new Error("Unsupported SEIPD version");
        }
        const seip = new _SymEncryptedIntegrityProtectedDataPacket();
        seip.version = version2;
        if (version2 === 2) {
          seip.aeadAlgorithm = aeadAlgorithm;
        }
        return seip;
      }
      constructor() {
        this.version = null;
        this.cipherAlgorithm = null;
        this.aeadAlgorithm = null;
        this.chunkSizeByte = null;
        this.salt = null;
        this.encrypted = null;
        this.packets = null;
      }
      async read(bytes) {
        await parse5(bytes, async (reader) => {
          this.version = await reader.readByte();
          if (this.version !== 1 && this.version !== 2) {
            throw new UnsupportedError(`Version ${this.version} of the SEIP packet is unsupported.`);
          }
          if (this.version === 2) {
            this.cipherAlgorithm = await reader.readByte();
            this.aeadAlgorithm = await reader.readByte();
            this.chunkSizeByte = await reader.readByte();
            this.salt = await reader.readBytes(32);
          }
          this.encrypted = reader.remainder();
        });
      }
      write() {
        if (this.version === 2) {
          return util11.concat([new Uint8Array([this.version, this.cipherAlgorithm, this.aeadAlgorithm, this.chunkSizeByte]), this.salt, this.encrypted]);
        }
        return util11.concat([new Uint8Array([this.version]), this.encrypted]);
      }
      /**
       * Encrypt the payload in the packet.
       * @param {enums.symmetric} sessionKeyAlgorithm - The symmetric encryption algorithm to use
       * @param {Uint8Array} key - The key of cipher blocksize length to be used
       * @param {Object} [config] - Full configuration, defaults to openpgp.config
       * @returns {Promise<Boolean>}
       * @throws {Error} on encryption failure
       * @async
       */
      async encrypt(sessionKeyAlgorithm, key, config$1 = config) {
        const { blockSize, keySize } = getCipherParams(sessionKeyAlgorithm);
        if (key.length !== keySize) {
          throw new Error("Unexpected session key size");
        }
        let bytes = this.packets.write();
        if (isArrayStream(bytes))
          bytes = await readToEnd(bytes);
        if (this.version === 2) {
          this.cipherAlgorithm = sessionKeyAlgorithm;
          this.salt = getRandomBytes(32);
          this.chunkSizeByte = config$1.aeadChunkSizeByte;
          this.encrypted = await runAEAD(this, "encrypt", key, bytes);
        } else {
          const prefix = await getPrefixRandom(sessionKeyAlgorithm);
          const mdc = new Uint8Array([211, 20]);
          const tohash = util11.concat([prefix, bytes, mdc]);
          const hash2 = await computeDigest(enums.hash.sha1, passiveClone(tohash));
          const plaintext = util11.concat([tohash, hash2]);
          this.encrypted = await encrypt$1(sessionKeyAlgorithm, key, plaintext, new Uint8Array(blockSize));
        }
        return true;
      }
      /**
       * Decrypts the encrypted data contained in the packet.
       * @param {enums.symmetric} sessionKeyAlgorithm - The selected symmetric encryption algorithm to be used
       * @param {Uint8Array} key - The key of cipher blocksize length to be used
       * @param {Object} [config] - Full configuration, defaults to openpgp.config
       * @returns {Promise<Boolean>}
       * @throws {Error} on decryption failure
       * @async
       */
      async decrypt(sessionKeyAlgorithm, key, config$1 = config) {
        if (key.length !== getCipherParams(sessionKeyAlgorithm).keySize) {
          throw new Error("Unexpected session key size");
        }
        let encrypted = clone3(this.encrypted);
        if (isArrayStream(encrypted))
          encrypted = await readToEnd(encrypted);
        let packetbytes;
        let delayErrors = false;
        if (this.version === 2) {
          if (this.cipherAlgorithm !== sessionKeyAlgorithm) {
            throw new Error("Unexpected session key algorithm");
          }
          packetbytes = await runAEAD(this, "decrypt", key, encrypted);
        } else {
          const { blockSize } = getCipherParams(sessionKeyAlgorithm);
          const decrypted = await decrypt$1(sessionKeyAlgorithm, key, encrypted, new Uint8Array(blockSize));
          const realHash = slice3(passiveClone(decrypted), -20);
          const tohash = slice3(decrypted, 0, -20);
          const verifyHash = Promise.all([
            readToEnd(await computeDigest(enums.hash.sha1, passiveClone(tohash))),
            readToEnd(realHash)
          ]).then(([hash2, mdc]) => {
            if (!util11.equalsUint8Array(hash2, mdc)) {
              throw new Error("Modification detected.");
            }
            return new Uint8Array();
          });
          const bytes = slice3(tohash, blockSize + 2);
          packetbytes = slice3(bytes, 0, -2);
          packetbytes = concat([packetbytes, fromAsync(() => verifyHash)]);
          if (util11.isStream(encrypted) && config$1.allowUnauthenticatedStream) {
            delayErrors = true;
          } else {
            packetbytes = await readToEnd(packetbytes);
          }
        }
        this.packets = await PacketList.fromBinary(packetbytes, allowedPackets$4, config$1, new MessageGrammarValidator(), delayErrors);
        return true;
      }
    };
    PublicKeyEncryptedSessionKeyPacket = class _PublicKeyEncryptedSessionKeyPacket {
      static get tag() {
        return enums.packet.publicKeyEncryptedSessionKey;
      }
      constructor() {
        this.version = null;
        this.publicKeyID = new KeyID();
        this.publicKeyVersion = null;
        this.publicKeyFingerprint = null;
        this.publicKeyAlgorithm = null;
        this.sessionKey = null;
        this.sessionKeyAlgorithm = null;
        this.encrypted = {};
      }
      static fromObject({ version: version2, encryptionKeyPacket, anonymousRecipient, sessionKey, sessionKeyAlgorithm }) {
        const pkesk = new _PublicKeyEncryptedSessionKeyPacket();
        if (version2 !== 3 && version2 !== 6) {
          throw new Error("Unsupported PKESK version");
        }
        pkesk.version = version2;
        if (version2 === 6) {
          pkesk.publicKeyVersion = anonymousRecipient ? null : encryptionKeyPacket.version;
          pkesk.publicKeyFingerprint = anonymousRecipient ? null : encryptionKeyPacket.getFingerprintBytes();
        }
        pkesk.publicKeyID = anonymousRecipient ? KeyID.wildcard() : encryptionKeyPacket.getKeyID();
        pkesk.publicKeyAlgorithm = encryptionKeyPacket.algorithm;
        pkesk.sessionKey = sessionKey;
        pkesk.sessionKeyAlgorithm = sessionKeyAlgorithm;
        return pkesk;
      }
      /**
       * Parsing function for a publickey encrypted session key packet (tag 1).
       *
       * @param {Uint8Array} bytes - Payload of a tag 1 packet
       */
      read(bytes) {
        let offset = 0;
        this.version = bytes[offset++];
        if (this.version !== 3 && this.version !== 6) {
          throw new UnsupportedError(`Version ${this.version} of the PKESK packet is unsupported.`);
        }
        if (this.version === 6) {
          const versionAndFingerprintLength = bytes[offset++];
          if (versionAndFingerprintLength) {
            this.publicKeyVersion = bytes[offset++];
            const fingerprintLength = versionAndFingerprintLength - 1;
            this.publicKeyFingerprint = bytes.subarray(offset, offset + fingerprintLength);
            offset += fingerprintLength;
            if (this.publicKeyVersion >= 5) {
              this.publicKeyID.read(this.publicKeyFingerprint);
            } else {
              this.publicKeyID.read(this.publicKeyFingerprint.subarray(-8));
            }
          } else {
            this.publicKeyID = KeyID.wildcard();
          }
        } else {
          offset += this.publicKeyID.read(bytes.subarray(offset, offset + 8));
        }
        this.publicKeyAlgorithm = bytes[offset++];
        this.encrypted = parseEncSessionKeyParams(this.publicKeyAlgorithm, bytes.subarray(offset));
        if (this.publicKeyAlgorithm === enums.publicKey.x25519 || this.publicKeyAlgorithm === enums.publicKey.x448) {
          if (this.version === 3) {
            this.sessionKeyAlgorithm = enums.write(enums.symmetric, this.encrypted.C.algorithm);
          } else if (this.encrypted.C.algorithm !== null) {
            throw new Error("Unexpected cleartext symmetric algorithm");
          }
        }
      }
      /**
       * Create a binary representation of a tag 1 packet
       *
       * @returns {Uint8Array} The Uint8Array representation.
       */
      write() {
        const arr = [
          new Uint8Array([this.version])
        ];
        if (this.version === 6) {
          if (this.publicKeyFingerprint !== null) {
            arr.push(new Uint8Array([
              this.publicKeyFingerprint.length + 1,
              this.publicKeyVersion
            ]));
            arr.push(this.publicKeyFingerprint);
          } else {
            arr.push(new Uint8Array([0]));
          }
        } else {
          arr.push(this.publicKeyID.write());
        }
        arr.push(new Uint8Array([this.publicKeyAlgorithm]), serializeParams(this.publicKeyAlgorithm, this.encrypted));
        return util11.concatUint8Array(arr);
      }
      /**
       * Encrypt session key packet
       * @param {PublicKeyPacket} key - Public key
       * @throws {Error} if encryption failed
       * @async
       */
      async encrypt(key) {
        const algo = enums.write(enums.publicKey, this.publicKeyAlgorithm);
        const sessionKeyAlgorithm = this.version === 3 ? this.sessionKeyAlgorithm : null;
        const fingerprint = key.version === 5 ? key.getFingerprintBytes().subarray(0, 20) : key.getFingerprintBytes();
        const encoded = encodeSessionKey(this.version, algo, sessionKeyAlgorithm, this.sessionKey);
        this.encrypted = await publicKeyEncrypt(algo, sessionKeyAlgorithm, key.publicParams, encoded, fingerprint);
      }
      /**
       * Decrypts the session key (only for public key encrypted session key packets (tag 1)
       * @param {SecretKeyPacket} key - decrypted private key
       * @param {Object} [randomSessionKey] - Bogus session key to use in case of sensitive decryption error, or if the decrypted session key is of a different type/size.
       *                                      This is needed for constant-time processing. Expected object of the form: { sessionKey: Uint8Array, sessionKeyAlgorithm: enums.symmetric }
       * @throws {Error} if decryption failed, unless `randomSessionKey` is given
       * @async
       */
      async decrypt(key, randomSessionKey) {
        if (this.publicKeyAlgorithm !== key.algorithm) {
          throw new Error("Decryption error");
        }
        const randomPayload = randomSessionKey ? encodeSessionKey(this.version, this.publicKeyAlgorithm, randomSessionKey.sessionKeyAlgorithm, randomSessionKey.sessionKey) : null;
        const fingerprint = key.version === 5 ? key.getFingerprintBytes().subarray(0, 20) : key.getFingerprintBytes();
        const decryptedData = await publicKeyDecrypt(this.publicKeyAlgorithm, key.publicParams, key.privateParams, this.encrypted, fingerprint, randomPayload);
        const { sessionKey, sessionKeyAlgorithm } = decodeSessionKey(this.version, this.publicKeyAlgorithm, decryptedData, randomSessionKey);
        if (this.version === 3) {
          const hasEncryptedAlgo = this.publicKeyAlgorithm !== enums.publicKey.x25519 && this.publicKeyAlgorithm !== enums.publicKey.x448;
          this.sessionKeyAlgorithm = hasEncryptedAlgo ? sessionKeyAlgorithm : this.sessionKeyAlgorithm;
          if (sessionKey.length !== getCipherParams(this.sessionKeyAlgorithm).keySize) {
            throw new Error("Unexpected session key size");
          }
        }
        this.sessionKey = sessionKey;
      }
    };
    SymEncryptedSessionKeyPacket = class _SymEncryptedSessionKeyPacket {
      static get tag() {
        return enums.packet.symEncryptedSessionKey;
      }
      /**
       * @param {Object} [config] - Full configuration, defaults to openpgp.config
       */
      constructor(config$1 = config) {
        this.version = config$1.aeadProtect ? 6 : 4;
        this.sessionKey = null;
        this.sessionKeyEncryptionAlgorithm = null;
        this.sessionKeyAlgorithm = null;
        this.aeadAlgorithm = enums.write(enums.aead, config$1.preferredAEADAlgorithm);
        this.encrypted = null;
        this.s2k = null;
        this.iv = null;
      }
      /**
       * Parsing function for a symmetric encrypted session key packet (tag 3).
       *
       * @param {Uint8Array} bytes - Payload of a tag 3 packet
       */
      read(bytes) {
        let offset = 0;
        this.version = bytes[offset++];
        if (this.version !== 4 && this.version !== 5 && this.version !== 6) {
          throw new UnsupportedError(`Version ${this.version} of the SKESK packet is unsupported.`);
        }
        if (this.version === 6) {
          offset++;
        }
        const algo = bytes[offset++];
        if (this.version >= 5) {
          this.aeadAlgorithm = bytes[offset++];
          if (this.version === 6) {
            offset++;
          }
        }
        const s2kType = bytes[offset++];
        this.s2k = newS2KFromType(s2kType);
        offset += this.s2k.read(bytes.subarray(offset, bytes.length));
        if (this.version >= 5) {
          const mode = getAEADMode(this.aeadAlgorithm, true);
          this.iv = bytes.subarray(offset, offset += mode.ivLength);
        }
        if (this.version >= 5 || offset < bytes.length) {
          this.encrypted = bytes.subarray(offset, bytes.length);
          this.sessionKeyEncryptionAlgorithm = algo;
        } else {
          this.sessionKeyAlgorithm = algo;
        }
      }
      /**
       * Create a binary representation of a tag 3 packet
       *
       * @returns {Uint8Array} The Uint8Array representation.
      */
      write() {
        const algo = this.encrypted === null ? this.sessionKeyAlgorithm : this.sessionKeyEncryptionAlgorithm;
        let bytes;
        const s2k = this.s2k.write();
        if (this.version === 6) {
          const s2kLen = s2k.length;
          const fieldsLen = 3 + s2kLen + this.iv.length;
          bytes = util11.concatUint8Array([new Uint8Array([this.version, fieldsLen, algo, this.aeadAlgorithm, s2kLen]), s2k, this.iv, this.encrypted]);
        } else if (this.version === 5) {
          bytes = util11.concatUint8Array([new Uint8Array([this.version, algo, this.aeadAlgorithm]), s2k, this.iv, this.encrypted]);
        } else {
          bytes = util11.concatUint8Array([new Uint8Array([this.version, algo]), s2k]);
          if (this.encrypted !== null) {
            bytes = util11.concatUint8Array([bytes, this.encrypted]);
          }
        }
        return bytes;
      }
      /**
       * Decrypts the session key with the given passphrase
       * @param {String} passphrase - The passphrase in string form
       * @param {Object} config
       * @throws {Error} if decryption was not successful
       * @async
       */
      async decrypt(passphrase, config$1 = config) {
        const algo = this.sessionKeyEncryptionAlgorithm !== null ? this.sessionKeyEncryptionAlgorithm : this.sessionKeyAlgorithm;
        const { blockSize, keySize } = getCipherParams(algo);
        const key = await this.s2k.produceKey(passphrase, keySize, config$1);
        if (this.version >= 5) {
          const mode = getAEADMode(this.aeadAlgorithm, true);
          const adata = new Uint8Array([192 | _SymEncryptedSessionKeyPacket.tag, this.version, this.sessionKeyEncryptionAlgorithm, this.aeadAlgorithm]);
          const encryptionKey = this.version === 6 ? await computeHKDF(enums.hash.sha256, key, new Uint8Array(), adata, keySize) : key;
          const modeInstance = await mode(algo, encryptionKey);
          this.sessionKey = await modeInstance.decrypt(this.encrypted, this.iv, adata);
        } else if (this.encrypted !== null) {
          const decrypted = await decrypt$1(algo, key, this.encrypted, new Uint8Array(blockSize));
          this.sessionKeyAlgorithm = enums.write(enums.symmetric, decrypted[0]);
          this.sessionKey = decrypted.subarray(1, decrypted.length);
          if (this.sessionKey.length !== getCipherParams(this.sessionKeyAlgorithm).keySize) {
            throw new Error("Unexpected session key size");
          }
        } else {
          this.sessionKey = key;
        }
      }
      /**
       * Encrypts the session key with the given passphrase
       * @param {String} passphrase - The passphrase in string form
       * @param {Object} [config] - Full configuration, defaults to openpgp.config
       * @throws {Error} if encryption was not successful
       * @async
       */
      async encrypt(passphrase, config$1 = config) {
        const algo = this.sessionKeyEncryptionAlgorithm !== null ? this.sessionKeyEncryptionAlgorithm : this.sessionKeyAlgorithm;
        this.sessionKeyEncryptionAlgorithm = algo;
        this.s2k = newS2KFromConfig(config$1);
        this.s2k.generateSalt();
        const { blockSize, keySize } = getCipherParams(algo);
        const key = await this.s2k.produceKey(passphrase, keySize, config$1);
        if (this.sessionKey === null) {
          this.sessionKey = generateSessionKey$1(this.sessionKeyAlgorithm);
        }
        if (this.version >= 5) {
          const mode = getAEADMode(this.aeadAlgorithm);
          this.iv = getRandomBytes(mode.ivLength);
          const adata = new Uint8Array([192 | _SymEncryptedSessionKeyPacket.tag, this.version, this.sessionKeyEncryptionAlgorithm, this.aeadAlgorithm]);
          const encryptionKey = this.version === 6 ? await computeHKDF(enums.hash.sha256, key, new Uint8Array(), adata, keySize) : key;
          const modeInstance = await mode(algo, encryptionKey);
          this.encrypted = await modeInstance.encrypt(this.sessionKey, this.iv, adata);
        } else {
          const toEncrypt = util11.concatUint8Array([
            new Uint8Array([this.sessionKeyAlgorithm]),
            this.sessionKey
          ]);
          this.encrypted = await encrypt$1(algo, key, toEncrypt, new Uint8Array(blockSize));
        }
      }
    };
    PublicKeyPacket = class _PublicKeyPacket {
      static get tag() {
        return enums.packet.publicKey;
      }
      /**
       * @param {Date} [date] - Creation date
       * @param {Object} [config] - Full configuration, defaults to openpgp.config
       */
      constructor(date = /* @__PURE__ */ new Date(), config$1 = config) {
        this.version = config$1.v6Keys ? 6 : 4;
        this.created = util11.normalizeDate(date);
        this.algorithm = null;
        this.publicParams = null;
        this.expirationTimeV3 = 0;
        this.fingerprint = null;
        this.keyID = null;
      }
      /**
       * Create a PublicKeyPacket from a SecretKeyPacket
       * @param {SecretKeyPacket} secretKeyPacket - key packet to convert
       * @returns {PublicKeyPacket} public key packet
       * @static
       */
      static fromSecretKeyPacket(secretKeyPacket) {
        const keyPacket = new _PublicKeyPacket();
        const { version: version2, created, algorithm, publicParams, keyID, fingerprint } = secretKeyPacket;
        keyPacket.version = version2;
        keyPacket.created = created;
        keyPacket.algorithm = algorithm;
        keyPacket.publicParams = publicParams;
        keyPacket.keyID = keyID;
        keyPacket.fingerprint = fingerprint;
        return keyPacket;
      }
      /**
       * Internal Parser for public keys as specified in {@link https://tools.ietf.org/html/rfc4880#section-5.5.2|RFC 4880 section 5.5.2 Public-Key Packet Formats}
       * @param {Uint8Array} bytes - Input array to read the packet from
       * @returns {Promise<number>} The number of bytes read from `bytes`
       * @async
       */
      async read(bytes, config$1 = config) {
        let pos = 0;
        this.version = bytes[pos++];
        if (this.version === 5 && !config$1.enableParsingV5Entities) {
          throw new UnsupportedError("Support for parsing v5 entities is disabled; turn on `config.enableParsingV5Entities` if needed");
        }
        if (this.version === 4 || this.version === 5 || this.version === 6) {
          this.created = util11.readDate(bytes.subarray(pos, pos + 4));
          pos += 4;
          this.algorithm = bytes[pos++];
          if (this.version >= 5) {
            pos += 4;
          }
          const { read: read2, publicParams } = parsePublicKeyParams(this.algorithm, bytes.subarray(pos));
          if (this.version === 6 && publicParams.oid && (publicParams.oid.getName() === enums.curve.curve25519Legacy || publicParams.oid.getName() === enums.curve.ed25519Legacy)) {
            throw new Error("Legacy curve25519 cannot be used with v6 keys");
          }
          this.publicParams = publicParams;
          pos += read2;
          await this.computeFingerprintAndKeyID();
          return pos;
        }
        throw new UnsupportedError(`Version ${this.version} of the key packet is unsupported.`);
      }
      /**
       * Creates an OpenPGP public key packet for the given key.
       * @returns {Uint8Array} Bytes encoding the public key OpenPGP packet.
       */
      write() {
        const arr = [];
        arr.push(new Uint8Array([this.version]));
        arr.push(util11.writeDate(this.created));
        arr.push(new Uint8Array([this.algorithm]));
        const params = serializeParams(this.algorithm, this.publicParams);
        if (this.version >= 5) {
          arr.push(util11.writeNumber(params.length, 4));
        }
        arr.push(params);
        return util11.concatUint8Array(arr);
      }
      /**
       * Write packet in order to be hashed; either for a signature or a fingerprint
       * @param {Integer} version - target version of signature or key
       */
      writeForHash(version2) {
        const bytes = this.writePublicKey();
        const versionOctet = 149 + version2;
        const lengthOctets = version2 >= 5 ? 4 : 2;
        return util11.concatUint8Array([new Uint8Array([versionOctet]), util11.writeNumber(bytes.length, lengthOctets), bytes]);
      }
      /**
       * Check whether secret-key data is available in decrypted form. Returns null for public keys.
       * @returns {Boolean|null}
       */
      isDecrypted() {
        return null;
      }
      /**
       * Returns the creation time of the key
       * @returns {Date}
       */
      getCreationTime() {
        return this.created;
      }
      /**
       * Return the key ID of the key
       * @returns {module:type/keyid~KeyID} The 8-byte key ID
       */
      getKeyID() {
        return this.keyID;
      }
      /**
       * Computes and set the key ID and fingerprint of the key
       * @async
       */
      async computeFingerprintAndKeyID() {
        await this.computeFingerprint();
        this.keyID = new KeyID();
        if (this.version >= 5) {
          this.keyID.read(this.fingerprint.subarray(0, 8));
        } else if (this.version === 4) {
          this.keyID.read(this.fingerprint.subarray(12, 20));
        } else {
          throw new Error("Unsupported key version");
        }
      }
      /**
       * Computes and set the fingerprint of the key
       */
      async computeFingerprint() {
        const toHash = this.writeForHash(this.version);
        if (this.version >= 5) {
          this.fingerprint = await computeDigest(enums.hash.sha256, toHash);
        } else if (this.version === 4) {
          this.fingerprint = await computeDigest(enums.hash.sha1, toHash);
        } else {
          throw new Error("Unsupported key version");
        }
      }
      /**
       * Returns the fingerprint of the key, as an array of bytes
       * @returns {Uint8Array} A Uint8Array containing the fingerprint
       */
      getFingerprintBytes() {
        return this.fingerprint;
      }
      /**
       * Calculates and returns the fingerprint of the key, as a string
       * @returns {String} A string containing the fingerprint in lowercase hex
       */
      getFingerprint() {
        return util11.uint8ArrayToHex(this.getFingerprintBytes());
      }
      /**
       * Calculates whether two keys have the same fingerprint without actually calculating the fingerprint
       * @returns {Boolean} Whether the two keys have the same version and public key data.
       */
      hasSameFingerprintAs(other) {
        return this.version === other.version && util11.equalsUint8Array(this.writePublicKey(), other.writePublicKey());
      }
      /**
       * Returns algorithm information
       * @returns {Object} An object of the form {algorithm: String, bits:int, curve:String}.
       */
      getAlgorithmInfo() {
        const result2 = {};
        result2.algorithm = enums.read(enums.publicKey, this.algorithm);
        const modulo = this.publicParams.n || this.publicParams.p;
        if (modulo) {
          result2.bits = util11.uint8ArrayBitLength(modulo);
        } else if (this.publicParams.oid) {
          result2.curve = this.publicParams.oid.getName();
        }
        return result2;
      }
    };
    PublicKeyPacket.prototype.readPublicKey = PublicKeyPacket.prototype.read;
    PublicKeyPacket.prototype.writePublicKey = PublicKeyPacket.prototype.write;
    PublicSubkeyPacket = class _PublicSubkeyPacket extends PublicKeyPacket {
      static get tag() {
        return enums.packet.publicSubkey;
      }
      /**
       * @param {Date} [date] - Creation date
       * @param {Object} [config] - Full configuration, defaults to openpgp.config
       */
      constructor(date, config2) {
        super(date, config2);
      }
      /**
       * Create a PublicSubkeyPacket from a SecretSubkeyPacket
       * @param {SecretSubkeyPacket} secretSubkeyPacket - subkey packet to convert
       * @returns {SecretSubkeyPacket} public key packet
       * @static
       */
      static fromSecretSubkeyPacket(secretSubkeyPacket) {
        const keyPacket = new _PublicSubkeyPacket();
        const { version: version2, created, algorithm, publicParams, keyID, fingerprint } = secretSubkeyPacket;
        keyPacket.version = version2;
        keyPacket.created = created;
        keyPacket.algorithm = algorithm;
        keyPacket.publicParams = publicParams;
        keyPacket.keyID = keyID;
        keyPacket.fingerprint = fingerprint;
        return keyPacket;
      }
    };
    UserAttributePacket = class _UserAttributePacket {
      static get tag() {
        return enums.packet.userAttribute;
      }
      constructor() {
        this.attributes = [];
      }
      /**
       * parsing function for a user attribute packet (tag 17).
       * @param {Uint8Array} input - Payload of a tag 17 packet
       */
      read(bytes) {
        let i4 = 0;
        while (i4 < bytes.length) {
          const len = readSimpleLength(bytes.subarray(i4, bytes.length));
          i4 += len.offset;
          this.attributes.push(util11.uint8ArrayToString(bytes.subarray(i4, i4 + len.len)));
          i4 += len.len;
        }
      }
      /**
       * Creates a binary representation of the user attribute packet
       * @returns {Uint8Array} String representation.
       */
      write() {
        const arr = [];
        for (let i4 = 0; i4 < this.attributes.length; i4++) {
          arr.push(writeSimpleLength(this.attributes[i4].length));
          arr.push(util11.stringToUint8Array(this.attributes[i4]));
        }
        return util11.concatUint8Array(arr);
      }
      /**
       * Compare for equality
       * @param {UserAttributePacket} usrAttr
       * @returns {Boolean} True if equal.
       */
      equals(usrAttr) {
        if (!usrAttr || !(usrAttr instanceof _UserAttributePacket)) {
          return false;
        }
        return this.attributes.every(function(attr, index2) {
          return attr === usrAttr.attributes[index2];
        });
      }
    };
    SecretKeyPacket = class extends PublicKeyPacket {
      static get tag() {
        return enums.packet.secretKey;
      }
      /**
       * @param {Date} [date] - Creation date
       * @param {Object} [config] - Full configuration, defaults to openpgp.config
       */
      constructor(date = /* @__PURE__ */ new Date(), config$1 = config) {
        super(date, config$1);
        this.keyMaterial = null;
        this.isEncrypted = null;
        this.s2kUsage = 0;
        this.s2k = null;
        this.symmetric = null;
        this.aead = null;
        this.isLegacyAEAD = null;
        this.privateParams = null;
        this.usedModernAEAD = null;
      }
      // 5.5.3.  Secret-Key Packet Formats
      /**
       * Internal parser for private keys as specified in
       * {@link https://tools.ietf.org/html/draft-ietf-openpgp-rfc4880bis-04#section-5.5.3|RFC4880bis-04 section 5.5.3}
       * @param {Uint8Array} bytes - Input string to read the packet from
       * @async
       */
      async read(bytes, config$1 = config) {
        let i4 = await this.readPublicKey(bytes, config$1);
        const startOfSecretKeyData = i4;
        this.s2kUsage = bytes[i4++];
        if (this.version === 5) {
          i4++;
        }
        if (this.version === 6 && this.s2kUsage) {
          i4++;
        }
        try {
          if (this.s2kUsage === 255 || this.s2kUsage === 254 || this.s2kUsage === 253) {
            this.symmetric = bytes[i4++];
            if (this.s2kUsage === 253) {
              this.aead = bytes[i4++];
            }
            if (this.version === 6) {
              i4++;
            }
            const s2kType = bytes[i4++];
            this.s2k = newS2KFromType(s2kType);
            i4 += this.s2k.read(bytes.subarray(i4, bytes.length));
            if (this.s2k.type === "gnu-dummy") {
              return;
            }
          } else if (this.s2kUsage) {
            this.symmetric = this.s2kUsage;
          }
          if (this.s2kUsage) {
            this.isLegacyAEAD = this.s2kUsage === 253 && (this.version === 5 || this.version === 4 && config$1.parseAEADEncryptedV4KeysAsLegacy);
            if (this.s2kUsage !== 253 || this.isLegacyAEAD) {
              this.iv = bytes.subarray(i4, i4 + getCipherParams(this.symmetric).blockSize);
              this.usedModernAEAD = false;
            } else {
              this.iv = bytes.subarray(i4, i4 + getAEADMode(this.aead).ivLength);
              this.usedModernAEAD = true;
            }
            i4 += this.iv.length;
          }
        } catch (e) {
          if (!this.s2kUsage)
            throw e;
          this.unparseableKeyMaterial = bytes.subarray(startOfSecretKeyData);
          this.isEncrypted = true;
        }
        if (this.version === 5) {
          i4 += 4;
        }
        this.keyMaterial = bytes.subarray(i4);
        this.isEncrypted = !!this.s2kUsage;
        if (!this.isEncrypted) {
          let cleartext;
          if (this.version === 6) {
            cleartext = this.keyMaterial;
          } else {
            cleartext = this.keyMaterial.subarray(0, -2);
            if (!util11.equalsUint8Array(util11.writeChecksum(cleartext), this.keyMaterial.subarray(-2))) {
              throw new Error("Key checksum mismatch");
            }
          }
          try {
            const { read: read2, privateParams } = parsePrivateKeyParams(this.algorithm, cleartext, this.publicParams);
            if (read2 < cleartext.length) {
              throw new Error("Error reading MPIs");
            }
            this.privateParams = privateParams;
          } catch (err2) {
            if (err2 instanceof UnsupportedError)
              throw err2;
            throw new Error("Error reading MPIs");
          }
        }
      }
      /**
       * Creates an OpenPGP key packet for the given key.
       * @returns {Uint8Array} A string of bytes containing the secret key OpenPGP packet.
       */
      write() {
        const serializedPublicKey = this.writePublicKey();
        if (this.unparseableKeyMaterial) {
          return util11.concatUint8Array([
            serializedPublicKey,
            this.unparseableKeyMaterial
          ]);
        }
        const arr = [serializedPublicKey];
        arr.push(new Uint8Array([this.s2kUsage]));
        const optionalFieldsArr = [];
        if (this.s2kUsage === 255 || this.s2kUsage === 254 || this.s2kUsage === 253) {
          optionalFieldsArr.push(this.symmetric);
          if (this.s2kUsage === 253) {
            optionalFieldsArr.push(this.aead);
          }
          const s2k = this.s2k.write();
          if (this.version === 6) {
            optionalFieldsArr.push(s2k.length);
          }
          optionalFieldsArr.push(...s2k);
        }
        if (this.s2kUsage && this.s2k.type !== "gnu-dummy") {
          optionalFieldsArr.push(...this.iv);
        }
        if (this.version === 5 || this.version === 6 && this.s2kUsage) {
          arr.push(new Uint8Array([optionalFieldsArr.length]));
        }
        arr.push(new Uint8Array(optionalFieldsArr));
        if (!this.isDummy()) {
          if (!this.s2kUsage) {
            this.keyMaterial = serializeParams(this.algorithm, this.privateParams);
          }
          if (this.version === 5) {
            arr.push(util11.writeNumber(this.keyMaterial.length, 4));
          }
          arr.push(this.keyMaterial);
          if (!this.s2kUsage && this.version !== 6) {
            arr.push(util11.writeChecksum(this.keyMaterial));
          }
        }
        return util11.concatUint8Array(arr);
      }
      /**
       * Check whether secret-key data is available in decrypted form.
       * Returns false for gnu-dummy keys and null for public keys.
       * @returns {Boolean|null}
       */
      isDecrypted() {
        return this.isEncrypted === false;
      }
      /**
       * Check whether the key includes secret key material.
       * Some secret keys do not include it, and can thus only be used
       * for public-key operations (encryption and verification).
       * Such keys are:
       * - GNU-dummy keys, where the secret material has been stripped away
       * - encrypted keys with unsupported S2K or cipher
       */
      isMissingSecretKeyMaterial() {
        return this.unparseableKeyMaterial !== void 0 || this.isDummy();
      }
      /**
       * Check whether this is a gnu-dummy key
       * @returns {Boolean}
       */
      isDummy() {
        return !!(this.s2k && this.s2k.type === "gnu-dummy");
      }
      /**
       * Remove private key material, converting the key to a dummy one.
       * The resulting key cannot be used for signing/decrypting but can still verify signatures.
       * @param {Object} [config] - Full configuration, defaults to openpgp.config
       */
      makeDummy(config$1 = config) {
        if (this.isDummy()) {
          return;
        }
        if (this.isDecrypted()) {
          this.clearPrivateParams();
        }
        delete this.unparseableKeyMaterial;
        this.isEncrypted = null;
        this.keyMaterial = null;
        this.s2k = newS2KFromType(enums.s2k.gnu, config$1);
        this.s2k.algorithm = 0;
        this.s2k.c = 0;
        this.s2k.type = "gnu-dummy";
        this.s2kUsage = 254;
        this.symmetric = enums.symmetric.aes256;
        this.isLegacyAEAD = null;
        this.usedModernAEAD = null;
      }
      /**
       * Encrypt the payload. By default, we use aes256 and iterated, salted string
       * to key specifier. If the key is in a decrypted state (isEncrypted === false)
       * and the passphrase is empty or undefined, the key will be set as not encrypted.
       * This can be used to remove passphrase protection after calling decrypt().
       * @param {String} passphrase
       * @param {Object} [config] - Full configuration, defaults to openpgp.config
       * @throws {Error} if encryption was not successful
       * @async
       */
      async encrypt(passphrase, config$1 = config) {
        if (this.isDummy()) {
          return;
        }
        if (!this.isDecrypted()) {
          throw new Error("Key packet is already encrypted");
        }
        if (!passphrase) {
          throw new Error("A non-empty passphrase is required for key encryption.");
        }
        this.s2k = newS2KFromConfig(config$1);
        this.s2k.generateSalt();
        const cleartext = serializeParams(this.algorithm, this.privateParams);
        this.symmetric = enums.symmetric.aes256;
        const { blockSize } = getCipherParams(this.symmetric);
        if (config$1.aeadProtect) {
          this.s2kUsage = 253;
          this.aead = config$1.preferredAEADAlgorithm;
          const mode = getAEADMode(this.aead);
          this.isLegacyAEAD = this.version === 5;
          this.usedModernAEAD = !this.isLegacyAEAD;
          const serializedPacketTag = writeTag(this.constructor.tag);
          const key = await produceEncryptionKey(this.version, this.s2k, passphrase, this.symmetric, this.aead, serializedPacketTag, this.isLegacyAEAD, config$1);
          const modeInstance = await mode(this.symmetric, key);
          this.iv = this.isLegacyAEAD ? getRandomBytes(blockSize) : getRandomBytes(mode.ivLength);
          const associateData = this.isLegacyAEAD ? new Uint8Array() : util11.concatUint8Array([serializedPacketTag, this.writePublicKey()]);
          this.keyMaterial = await modeInstance.encrypt(cleartext, this.iv.subarray(0, mode.ivLength), associateData);
        } else {
          this.s2kUsage = 254;
          this.usedModernAEAD = false;
          const key = await produceEncryptionKey(this.version, this.s2k, passphrase, this.symmetric, void 0, void 0, void 0, config$1);
          this.iv = getRandomBytes(blockSize);
          this.keyMaterial = await encrypt$1(this.symmetric, key, util11.concatUint8Array([
            cleartext,
            await computeDigest(enums.hash.sha1, cleartext)
          ]), this.iv);
        }
      }
      /**
       * Decrypts the private key params which are needed to use the key.
       * Successful decryption does not imply key integrity, call validate() to confirm that.
       * {@link SecretKeyPacket.isDecrypted} should be false, as
       * otherwise calls to this function will throw an error.
       * @param {String} passphrase - The passphrase for this private key as string
       * @param {Object} config
       * @throws {Error} if the key is already decrypted, or if decryption was not successful
       * @async
       */
      async decrypt(passphrase, config$1 = config) {
        if (this.isDummy()) {
          return false;
        }
        if (this.unparseableKeyMaterial) {
          throw new Error("Key packet cannot be decrypted: unsupported S2K or cipher algo");
        }
        if (this.isDecrypted()) {
          throw new Error("Key packet is already decrypted.");
        }
        let key;
        const serializedPacketTag = writeTag(this.constructor.tag);
        if (this.s2kUsage === 254 || this.s2kUsage === 253) {
          key = await produceEncryptionKey(this.version, this.s2k, passphrase, this.symmetric, this.aead, serializedPacketTag, this.isLegacyAEAD, config$1);
        } else if (this.s2kUsage === 255) {
          throw new Error("Encrypted private key is authenticated using an insecure two-byte hash");
        } else {
          throw new Error("Private key is encrypted using an insecure S2K function: unsalted MD5");
        }
        let cleartext;
        if (this.s2kUsage === 253) {
          const mode = getAEADMode(this.aead, true);
          const modeInstance = await mode(this.symmetric, key);
          try {
            const associateData = this.isLegacyAEAD ? new Uint8Array() : util11.concatUint8Array([serializedPacketTag, this.writePublicKey()]);
            cleartext = await modeInstance.decrypt(this.keyMaterial, this.iv.subarray(0, mode.ivLength), associateData);
          } catch (err2) {
            if (err2.message === "Authentication tag mismatch") {
              throw new Error("Incorrect key passphrase: " + err2.message);
            }
            throw err2;
          }
        } else {
          const cleartextWithHash = await decrypt$1(this.symmetric, key, this.keyMaterial, this.iv);
          cleartext = cleartextWithHash.subarray(0, -20);
          const hash2 = await computeDigest(enums.hash.sha1, cleartext);
          if (!util11.equalsUint8Array(hash2, cleartextWithHash.subarray(-20))) {
            throw new Error("Incorrect key passphrase");
          }
        }
        try {
          const { privateParams } = parsePrivateKeyParams(this.algorithm, cleartext, this.publicParams);
          this.privateParams = privateParams;
        } catch {
          throw new Error("Error reading MPIs");
        }
        this.isEncrypted = false;
        this.keyMaterial = null;
        this.s2kUsage = 0;
        this.aead = null;
        this.symmetric = null;
        this.isLegacyAEAD = null;
      }
      /**
       * Checks that the key parameters are consistent
       * @throws {Error} if validation was not successful
       * @async
       */
      async validate() {
        if (this.isDummy()) {
          return;
        }
        if (!this.isDecrypted()) {
          throw new Error("Key is not decrypted");
        }
        if (this.usedModernAEAD) {
          return;
        }
        let validParams;
        try {
          validParams = await validateParams$1(this.algorithm, this.publicParams, this.privateParams);
        } catch {
          validParams = false;
        }
        if (!validParams) {
          throw new Error("Key is invalid");
        }
      }
      async generate(bits2, curve) {
        if (this.version === 6 && (this.algorithm === enums.publicKey.ecdh && curve === enums.curve.curve25519Legacy || this.algorithm === enums.publicKey.eddsaLegacy)) {
          throw new Error(`Cannot generate v6 keys of type 'ecc' with curve ${curve}. Generate a key of type 'curve25519' instead`);
        }
        const { privateParams, publicParams } = await generateParams(this.algorithm, bits2, curve);
        this.privateParams = privateParams;
        this.publicParams = publicParams;
        this.isEncrypted = false;
      }
      /**
       * Clear private key parameters
       */
      clearPrivateParams() {
        if (this.isMissingSecretKeyMaterial()) {
          return;
        }
        Object.keys(this.privateParams).forEach((name) => {
          const param = this.privateParams[name];
          param.fill(0);
          delete this.privateParams[name];
        });
        this.privateParams = null;
        this.isEncrypted = true;
      }
    };
    UserIDPacket = class _UserIDPacket {
      static get tag() {
        return enums.packet.userID;
      }
      constructor() {
        this.userID = "";
        this.name = "";
        this.email = "";
        this.comment = "";
      }
      /**
       * Create UserIDPacket instance from object
       * @param {Object} userID - Object specifying userID name, email and comment
       * @returns {UserIDPacket}
       * @static
       */
      static fromObject(userID) {
        if (util11.isString(userID) || userID.name && !util11.isString(userID.name) || userID.email && !util11.isEmailAddress(userID.email) || userID.comment && !util11.isString(userID.comment)) {
          throw new Error("Invalid user ID format");
        }
        const packet = new _UserIDPacket();
        Object.assign(packet, userID);
        const components = [];
        if (packet.name)
          components.push(packet.name);
        if (packet.comment)
          components.push(`(${packet.comment})`);
        if (packet.email)
          components.push(`<${packet.email}>`);
        packet.userID = components.join(" ");
        return packet;
      }
      /**
       * Parsing function for a user id packet (tag 13).
       * @param {Uint8Array} input - Payload of a tag 13 packet
       */
      read(bytes, config$1 = config) {
        const userID = util11.decodeUTF8(bytes);
        if (userID.length > config$1.maxUserIDLength) {
          throw new Error("User ID string is too long");
        }
        const isValidEmail = (str2) => /^[^\s@]+@[^\s@]+$/.test(str2);
        const firstBracket = userID.indexOf("<");
        const lastBracket = userID.lastIndexOf(">");
        if (firstBracket !== -1 && lastBracket !== -1 && lastBracket > firstBracket) {
          const potentialEmail = userID.substring(firstBracket + 1, lastBracket);
          if (isValidEmail(potentialEmail)) {
            this.email = potentialEmail;
            const beforeEmail = userID.substring(0, firstBracket).trim();
            const firstParen = beforeEmail.indexOf("(");
            const lastParen = beforeEmail.lastIndexOf(")");
            if (firstParen !== -1 && lastParen !== -1 && lastParen > firstParen) {
              this.comment = beforeEmail.substring(firstParen + 1, lastParen).trim();
              this.name = beforeEmail.substring(0, firstParen).trim();
            } else {
              this.name = beforeEmail;
              this.comment = "";
            }
          }
        } else if (isValidEmail(userID.trim())) {
          this.email = userID.trim();
          this.name = "";
          this.comment = "";
        }
        this.userID = userID;
      }
      /**
       * Creates a binary representation of the user id packet
       * @returns {Uint8Array} Binary representation.
       */
      write() {
        return util11.encodeUTF8(this.userID);
      }
      equals(otherUserID) {
        return otherUserID && otherUserID.userID === this.userID;
      }
    };
    SecretSubkeyPacket = class extends SecretKeyPacket {
      static get tag() {
        return enums.packet.secretSubkey;
      }
      /**
       * @param {Date} [date] - Creation date
       * @param {Object} [config] - Full configuration, defaults to openpgp.config
       */
      constructor(date = /* @__PURE__ */ new Date(), config$1 = config) {
        super(date, config$1);
      }
    };
    allowedPackets$1 = /* @__PURE__ */ util11.constructAllowedPackets([SignaturePacket]);
    Signature = class {
      /**
       * @param {PacketList} packetlist - The signature packets
       */
      constructor(packetlist) {
        this.packets = packetlist || new PacketList();
      }
      /**
       * Returns binary encoded signature
       * @returns {ReadableStream<Uint8Array>} Binary signature.
       */
      write() {
        return this.packets.write();
      }
      /**
       * Returns ASCII armored text of signature
       * @param {Object} [config] - Full configuration, defaults to openpgp.config
       * @returns {ReadableStream<String>} ASCII armor.
       */
      armor(config$1 = config) {
        const emitChecksum = this.packets.some((packet) => packet.constructor.tag === SignaturePacket.tag && packet.version !== 6);
        return armor(enums.armor.signature, this.write(), void 0, void 0, void 0, emitChecksum, config$1);
      }
      /**
       * Returns an array of KeyIDs of all of the issuers who created this signature
       * @returns {Array<KeyID>} The Key IDs of the signing keys
       */
      getSigningKeyIDs() {
        return this.packets.map((packet) => packet.issuerKeyID);
      }
    };
    User = class _User {
      constructor(userPacket, mainKey) {
        this.userID = userPacket.constructor.tag === enums.packet.userID ? userPacket : null;
        this.userAttribute = userPacket.constructor.tag === enums.packet.userAttribute ? userPacket : null;
        this.selfCertifications = [];
        this.otherCertifications = [];
        this.revocationSignatures = [];
        this.mainKey = mainKey;
      }
      /**
       * Transforms structured user data to packetlist
       * @returns {PacketList}
       */
      toPacketList() {
        const packetlist = new PacketList();
        packetlist.push(this.userID || this.userAttribute);
        packetlist.push(...this.revocationSignatures);
        packetlist.push(...this.selfCertifications);
        packetlist.push(...this.otherCertifications);
        return packetlist;
      }
      /**
       * Shallow clone
       * @returns {User}
       */
      clone() {
        const user = new _User(this.userID || this.userAttribute, this.mainKey);
        user.selfCertifications = [...this.selfCertifications];
        user.otherCertifications = [...this.otherCertifications];
        user.revocationSignatures = [...this.revocationSignatures];
        return user;
      }
      /**
       * Generate third-party certifications over this user and its primary key
       * @param {Array<PrivateKey>} signingKeys - Decrypted private keys for signing
       * @param {Date} [date] - Date to use as creation date of the certificate, instead of the current time
       * @param {Object} config - Full configuration
       * @returns {Promise<User>} New user with new certifications.
       * @async
       */
      async certify(signingKeys, date, config2) {
        const primaryKey = this.mainKey.keyPacket;
        const dataToSign = {
          userID: this.userID,
          userAttribute: this.userAttribute,
          key: primaryKey
        };
        const user = new _User(dataToSign.userID || dataToSign.userAttribute, this.mainKey);
        user.otherCertifications = await Promise.all(signingKeys.map(async function(privateKey) {
          if (!privateKey.isPrivate()) {
            throw new Error("Need private key for signing");
          }
          if (privateKey.hasSameFingerprintAs(primaryKey)) {
            throw new Error("The user's own key can only be used for self-certifications");
          }
          const signingKey = await privateKey.getSigningKey(void 0, date, void 0, config2);
          return createSignaturePacket(dataToSign, [privateKey], signingKey.keyPacket, {
            // Most OpenPGP implementations use generic certification (0x10)
            signatureType: enums.signature.certGeneric,
            keyFlags: [enums.keyFlags.certifyKeys | enums.keyFlags.signData]
          }, date, void 0, void 0, void 0, config2);
        }));
        await user.update(this, date, config2);
        return user;
      }
      /**
       * Checks if a given certificate of the user is revoked
       * @param {SignaturePacket} certificate - The certificate to verify
       * @param  {PublicSubkeyPacket|
       *          SecretSubkeyPacket|
       *          PublicKeyPacket|
       *          SecretKeyPacket} [keyPacket] The key packet to verify the signature, instead of the primary key
       * @param {Date} [date] - Use the given date for verification instead of the current time
       * @param {Object} config - Full configuration
       * @returns {Promise<Boolean>} True if the certificate is revoked.
       * @async
       */
      async isRevoked(certificate, keyPacket, date = /* @__PURE__ */ new Date(), config$1 = config) {
        const primaryKey = this.mainKey.keyPacket;
        return isDataRevoked(primaryKey, enums.signature.certRevocation, {
          key: primaryKey,
          userID: this.userID,
          userAttribute: this.userAttribute
        }, this.revocationSignatures, certificate, keyPacket, date, config$1);
      }
      /**
       * Verifies the user certificate.
       * @param {SignaturePacket} certificate - A certificate of this user
       * @param {Array<PublicKey>} verificationKeys - Array of keys to verify certificate signatures
       * @param {Date} [date] - Use the given date instead of the current time
       * @param {Object} config - Full configuration
       * @returns {Promise<true|null>} true if the certificate could be verified, or null if the verification keys do not correspond to the certificate
       * @throws if the user certificate is invalid.
       * @async
       */
      async verifyCertificate(certificate, verificationKeys, date = /* @__PURE__ */ new Date(), config2) {
        const that = this;
        const primaryKey = this.mainKey.keyPacket;
        const dataToVerify = {
          userID: this.userID,
          userAttribute: this.userAttribute,
          key: primaryKey
        };
        const { issuerKeyID } = certificate;
        const issuerKeys = verificationKeys.filter((key) => key.getKeys(issuerKeyID).length > 0);
        if (issuerKeys.length === 0) {
          return null;
        }
        await Promise.all(issuerKeys.map(async (key) => {
          const signingKey = await key.getSigningKey(issuerKeyID, certificate.created, void 0, config2);
          if (certificate.revoked || await that.isRevoked(certificate, signingKey.keyPacket, date, config2)) {
            throw new Error("User certificate is revoked");
          }
          try {
            await certificate.verify(signingKey.keyPacket, enums.signature.certGeneric, dataToVerify, date, void 0, config2);
          } catch (e) {
            throw util11.wrapError("User certificate is invalid", e);
          }
        }));
        return true;
      }
      /**
       * Verifies all user certificates
       * @param {Array<PublicKey>} verificationKeys - Array of keys to verify certificate signatures
       * @param {Date} [date] - Use the given date instead of the current time
       * @param {Object} config - Full configuration
       * @returns {Promise<Array<{
       *   keyID: module:type/keyid~KeyID,
       *   valid: Boolean | null
       * }>>} List of signer's keyID and validity of signature.
       *      Signature validity is null if the verification keys do not correspond to the certificate.
       * @async
       */
      async verifyAllCertifications(verificationKeys, date = /* @__PURE__ */ new Date(), config2) {
        const that = this;
        const certifications = this.selfCertifications.concat(this.otherCertifications);
        return Promise.all(certifications.map(async (certification) => ({
          keyID: certification.issuerKeyID,
          valid: await that.verifyCertificate(certification, verificationKeys, date, config2).catch(() => false)
        })));
      }
      /**
       * Verify User. Checks for existence of self signatures, revocation signatures
       * and validity of self signature.
       * @param {Date} date - Use the given date instead of the current time
       * @param {Object} config - Full configuration
       * @returns {Promise<true>} Status of user.
       * @throws {Error} if there are no valid self signatures.
       * @async
       */
      async verify(date = /* @__PURE__ */ new Date(), config2) {
        if (!this.selfCertifications.length) {
          throw new Error("No self-certifications found");
        }
        const that = this;
        const primaryKey = this.mainKey.keyPacket;
        const dataToVerify = {
          userID: this.userID,
          userAttribute: this.userAttribute,
          key: primaryKey
        };
        let exception2;
        for (let i4 = this.selfCertifications.length - 1; i4 >= 0; i4--) {
          try {
            const selfCertification = this.selfCertifications[i4];
            if (selfCertification.revoked || await that.isRevoked(selfCertification, void 0, date, config2)) {
              throw new Error("Self-certification is revoked");
            }
            try {
              await selfCertification.verify(primaryKey, enums.signature.certGeneric, dataToVerify, date, void 0, config2);
            } catch (e) {
              throw util11.wrapError("Self-certification is invalid", e);
            }
            return true;
          } catch (e) {
            exception2 = e;
          }
        }
        throw exception2;
      }
      /**
       * Update user with new components from specified user
       * @param {User} sourceUser - Source user to merge
       * @param {Date} date - Date to verify the validity of signatures
       * @param {Object} config - Full configuration
       * @returns {Promise<undefined>}
       * @async
       */
      async update(sourceUser, date, config2) {
        const primaryKey = this.mainKey.keyPacket;
        const dataToVerify = {
          userID: this.userID,
          userAttribute: this.userAttribute,
          key: primaryKey
        };
        await mergeSignatures(sourceUser, this, "selfCertifications", date, async function(srcSelfSig) {
          try {
            await srcSelfSig.verify(primaryKey, enums.signature.certGeneric, dataToVerify, date, false, config2);
            return true;
          } catch {
            return false;
          }
        });
        await mergeSignatures(sourceUser, this, "otherCertifications", date);
        await mergeSignatures(sourceUser, this, "revocationSignatures", date, function(srcRevSig) {
          return isDataRevoked(primaryKey, enums.signature.certRevocation, dataToVerify, [srcRevSig], void 0, void 0, date, config2);
        });
      }
      /**
       * Revokes the user
       * @param {SecretKeyPacket} primaryKey - decrypted private primary key for revocation
       * @param {Object} reasonForRevocation - optional, object indicating the reason for revocation
       * @param  {module:enums.reasonForRevocation} reasonForRevocation.flag optional, flag indicating the reason for revocation
       * @param  {String} reasonForRevocation.string optional, string explaining the reason for revocation
       * @param {Date} date - optional, override the creationtime of the revocation signature
       * @param {Object} [config] - Full configuration, defaults to openpgp.config
       * @returns {Promise<User>} New user with revocation signature.
       * @async
       */
      async revoke(primaryKey, { flag: reasonForRevocationFlag = enums.reasonForRevocation.noReason, string: reasonForRevocationString = "" } = {}, date = /* @__PURE__ */ new Date(), config$1 = config) {
        const dataToSign = {
          userID: this.userID,
          userAttribute: this.userAttribute,
          key: primaryKey
        };
        const user = new _User(dataToSign.userID || dataToSign.userAttribute, this.mainKey);
        user.revocationSignatures.push(await createSignaturePacket(dataToSign, [], primaryKey, {
          signatureType: enums.signature.certRevocation,
          reasonForRevocationFlag: enums.write(enums.reasonForRevocation, reasonForRevocationFlag),
          reasonForRevocationString
        }, date, void 0, void 0, false, config$1));
        await user.update(this);
        return user;
      }
    };
    Subkey = class _Subkey {
      /**
       * @param {SecretSubkeyPacket|PublicSubkeyPacket} subkeyPacket - subkey packet to hold in the Subkey
       * @param {Key} mainKey - reference to main Key object, containing the primary key packet corresponding to the subkey
       */
      constructor(subkeyPacket, mainKey) {
        this.keyPacket = subkeyPacket;
        this.bindingSignatures = [];
        this.revocationSignatures = [];
        this.mainKey = mainKey;
      }
      /**
       * Transforms structured subkey data to packetlist
       * @returns {PacketList}
       */
      toPacketList() {
        const packetlist = new PacketList();
        packetlist.push(this.keyPacket);
        packetlist.push(...this.revocationSignatures);
        packetlist.push(...this.bindingSignatures);
        return packetlist;
      }
      /**
       * Shallow clone
       * @return {Subkey}
       */
      clone() {
        const subkey = new _Subkey(this.keyPacket, this.mainKey);
        subkey.bindingSignatures = [...this.bindingSignatures];
        subkey.revocationSignatures = [...this.revocationSignatures];
        return subkey;
      }
      /**
       * Checks if a binding signature of a subkey is revoked
       * @param {SignaturePacket} signature - The binding signature to verify
       * @param  {PublicSubkeyPacket|
       *          SecretSubkeyPacket|
       *          PublicKeyPacket|
       *          SecretKeyPacket} key, optional The key to verify the signature
       * @param {Date} [date] - Use the given date for verification instead of the current time
       * @param {Object} [config] - Full configuration, defaults to openpgp.config
       * @returns {Promise<Boolean>} True if the binding signature is revoked.
       * @async
       */
      async isRevoked(signature, key, date = /* @__PURE__ */ new Date(), config$1 = config) {
        const primaryKey = this.mainKey.keyPacket;
        return isDataRevoked(primaryKey, enums.signature.subkeyRevocation, {
          key: primaryKey,
          bind: this.keyPacket
        }, this.revocationSignatures, signature, key, date, config$1);
      }
      /**
       * Verify subkey. Checks for revocation signatures, expiration time
       * and valid binding signature.
       * @param {Date} date - Use the given date instead of the current time
       * @param {Object} [config] - Full configuration, defaults to openpgp.config
       * @returns {Promise<SignaturePacket>}
       * @throws {Error}           if the subkey is invalid.
       * @async
       */
      async verify(date = /* @__PURE__ */ new Date(), config$1 = config) {
        const primaryKey = this.mainKey.keyPacket;
        const dataToVerify = { key: primaryKey, bind: this.keyPacket };
        const bindingSignature = await getLatestValidSignature(this.bindingSignatures, primaryKey, enums.signature.subkeyBinding, dataToVerify, date, config$1);
        if (bindingSignature.revoked || await this.isRevoked(bindingSignature, null, date, config$1)) {
          throw new Error("Subkey is revoked");
        }
        if (isDataExpired(this.keyPacket, bindingSignature, date)) {
          throw new Error("Subkey is expired");
        }
        return bindingSignature;
      }
      /**
       * Returns the expiration time of the subkey or Infinity if key does not expire.
       * Returns null if the subkey is invalid.
       * @param {Date} date - Use the given date instead of the current time
       * @param {Object} [config] - Full configuration, defaults to openpgp.config
       * @returns {Promise<Date | Infinity | null>}
       * @async
       */
      async getExpirationTime(date = /* @__PURE__ */ new Date(), config$1 = config) {
        const primaryKey = this.mainKey.keyPacket;
        const dataToVerify = { key: primaryKey, bind: this.keyPacket };
        let bindingSignature;
        try {
          bindingSignature = await getLatestValidSignature(this.bindingSignatures, primaryKey, enums.signature.subkeyBinding, dataToVerify, date, config$1);
        } catch {
          return null;
        }
        const keyExpiry = getKeyExpirationTime(this.keyPacket, bindingSignature);
        const sigExpiry = bindingSignature.getExpirationTime();
        return keyExpiry < sigExpiry ? keyExpiry : sigExpiry;
      }
      /**
       * Update subkey with new components from specified subkey
       * @param {Subkey} subkey - Source subkey to merge
       * @param {Date} [date] - Date to verify validity of signatures
       * @param {Object} [config] - Full configuration, defaults to openpgp.config
       * @throws {Error} if update failed
       * @async
       */
      async update(subkey, date = /* @__PURE__ */ new Date(), config$1 = config) {
        const primaryKey = this.mainKey.keyPacket;
        if (!this.hasSameFingerprintAs(subkey)) {
          throw new Error("Subkey update method: fingerprints of subkeys not equal");
        }
        if (this.keyPacket.constructor.tag === enums.packet.publicSubkey && subkey.keyPacket.constructor.tag === enums.packet.secretSubkey) {
          this.keyPacket = subkey.keyPacket;
        }
        const that = this;
        const dataToVerify = { key: primaryKey, bind: that.keyPacket };
        await mergeSignatures(subkey, this, "bindingSignatures", date, async function(srcBindSig) {
          for (let i4 = 0; i4 < that.bindingSignatures.length; i4++) {
            if (that.bindingSignatures[i4].issuerKeyID.equals(srcBindSig.issuerKeyID)) {
              if (srcBindSig.created > that.bindingSignatures[i4].created) {
                that.bindingSignatures[i4] = srcBindSig;
              }
              return false;
            }
          }
          try {
            await srcBindSig.verify(primaryKey, enums.signature.subkeyBinding, dataToVerify, date, void 0, config$1);
            return true;
          } catch {
            return false;
          }
        });
        await mergeSignatures(subkey, this, "revocationSignatures", date, function(srcRevSig) {
          return isDataRevoked(primaryKey, enums.signature.subkeyRevocation, dataToVerify, [srcRevSig], void 0, void 0, date, config$1);
        });
      }
      /**
       * Revokes the subkey
       * @param {SecretKeyPacket} primaryKey - decrypted private primary key for revocation
       * @param {Object} reasonForRevocation - optional, object indicating the reason for revocation
       * @param  {module:enums.reasonForRevocation} reasonForRevocation.flag optional, flag indicating the reason for revocation
       * @param  {String} reasonForRevocation.string optional, string explaining the reason for revocation
       * @param {Date} date - optional, override the creationtime of the revocation signature
       * @param {Object} [config] - Full configuration, defaults to openpgp.config
       * @returns {Promise<Subkey>} New subkey with revocation signature.
       * @async
       */
      async revoke(primaryKey, { flag: reasonForRevocationFlag = enums.reasonForRevocation.noReason, string: reasonForRevocationString = "" } = {}, date = /* @__PURE__ */ new Date(), config$1 = config) {
        const dataToSign = { key: primaryKey, bind: this.keyPacket };
        const subkey = new _Subkey(this.keyPacket, this.mainKey);
        subkey.revocationSignatures.push(await createSignaturePacket(dataToSign, [], primaryKey, {
          signatureType: enums.signature.subkeyRevocation,
          reasonForRevocationFlag: enums.write(enums.reasonForRevocation, reasonForRevocationFlag),
          reasonForRevocationString
        }, date, void 0, void 0, false, config$1));
        await subkey.update(this);
        return subkey;
      }
      hasSameFingerprintAs(other) {
        return this.keyPacket.hasSameFingerprintAs(other.keyPacket || other);
      }
    };
    ["getKeyID", "getFingerprint", "getAlgorithmInfo", "getCreationTime", "isDecrypted"].forEach((name) => {
      Subkey.prototype[name] = function() {
        return this.keyPacket[name]();
      };
    });
    allowedRevocationPackets = /* @__PURE__ */ util11.constructAllowedPackets([SignaturePacket]);
    mainKeyPacketTags = /* @__PURE__ */ new Set([enums.packet.publicKey, enums.packet.privateKey]);
    keyPacketTags = /* @__PURE__ */ new Set([
      enums.packet.publicKey,
      enums.packet.privateKey,
      enums.packet.publicSubkey,
      enums.packet.privateSubkey
    ]);
    Key = class {
      /**
       * Transforms packetlist to structured key data
       * @param {PacketList} packetlist - The packets that form a key
       * @param {Set<enums.packet>} disallowedPackets - disallowed packet tags
       */
      packetListToStructure(packetlist, disallowedPackets = /* @__PURE__ */ new Set()) {
        let user;
        let primaryKeyID;
        let subkey;
        let ignoreUntil;
        for (const packet of packetlist) {
          if (packet instanceof UnparseablePacket) {
            const isUnparseableKeyPacket = keyPacketTags.has(packet.tag);
            if (isUnparseableKeyPacket && !ignoreUntil) {
              if (mainKeyPacketTags.has(packet.tag)) {
                ignoreUntil = mainKeyPacketTags;
              } else {
                ignoreUntil = keyPacketTags;
              }
            }
            continue;
          }
          const tag = packet.constructor.tag;
          if (ignoreUntil) {
            if (!ignoreUntil.has(tag))
              continue;
            ignoreUntil = null;
          }
          if (disallowedPackets.has(tag)) {
            throw new Error(`Unexpected packet type: ${tag}`);
          }
          switch (tag) {
            case enums.packet.publicKey:
            case enums.packet.secretKey:
              if (this.keyPacket) {
                throw new Error("Key block contains multiple keys");
              }
              this.keyPacket = packet;
              primaryKeyID = this.getKeyID();
              if (!primaryKeyID) {
                throw new Error("Missing Key ID");
              }
              break;
            case enums.packet.userID:
            case enums.packet.userAttribute:
              user = new User(packet, this);
              this.users.push(user);
              break;
            case enums.packet.publicSubkey:
            case enums.packet.secretSubkey:
              user = null;
              subkey = new Subkey(packet, this);
              this.subkeys.push(subkey);
              break;
            case enums.packet.signature:
              switch (packet.signatureType) {
                case enums.signature.certGeneric:
                case enums.signature.certPersona:
                case enums.signature.certCasual:
                case enums.signature.certPositive:
                  if (!user) {
                    util11.printDebug("Dropping certification signatures without preceding user packet");
                    continue;
                  }
                  if (packet.issuerKeyID.equals(primaryKeyID)) {
                    user.selfCertifications.push(packet);
                  } else {
                    user.otherCertifications.push(packet);
                  }
                  break;
                case enums.signature.certRevocation:
                  if (user) {
                    user.revocationSignatures.push(packet);
                  } else {
                    this.directSignatures.push(packet);
                  }
                  break;
                case enums.signature.key:
                  this.directSignatures.push(packet);
                  break;
                case enums.signature.subkeyBinding:
                  if (!subkey) {
                    util11.printDebug("Dropping subkey binding signature without preceding subkey packet");
                    continue;
                  }
                  subkey.bindingSignatures.push(packet);
                  break;
                case enums.signature.keyRevocation:
                  this.revocationSignatures.push(packet);
                  break;
                case enums.signature.subkeyRevocation:
                  if (!subkey) {
                    util11.printDebug("Dropping subkey revocation signature without preceding subkey packet");
                    continue;
                  }
                  subkey.revocationSignatures.push(packet);
                  break;
              }
              break;
          }
        }
      }
      /**
       * Transforms structured key data to packetlist
       * @returns {PacketList} The packets that form a key.
       */
      toPacketList() {
        const packetlist = new PacketList();
        packetlist.push(this.keyPacket);
        packetlist.push(...this.revocationSignatures);
        packetlist.push(...this.directSignatures);
        this.users.map((user) => packetlist.push(...user.toPacketList()));
        this.subkeys.map((subkey) => packetlist.push(...subkey.toPacketList()));
        return packetlist;
      }
      /**
       * Clones the key object. The copy is shallow, as it references the same packet objects as the original. However, if the top-level API is used, the two key instances are effectively independent.
       * @param {Boolean} [clonePrivateParams=false] Only relevant for private keys: whether the secret key paramenters should be deeply copied. This is needed if e.g. `encrypt()` is to be called either on the clone or the original key.
       * @returns {Promise<Key>} Clone of the key.
       */
      clone(clonePrivateParams = false) {
        const key = new this.constructor(this.toPacketList());
        if (clonePrivateParams) {
          key.getKeys().forEach((k2) => {
            k2.keyPacket = Object.create(Object.getPrototypeOf(k2.keyPacket), Object.getOwnPropertyDescriptors(k2.keyPacket));
            if (!k2.keyPacket.isDecrypted())
              return;
            const privateParams = {};
            Object.keys(k2.keyPacket.privateParams).forEach((name) => {
              privateParams[name] = new Uint8Array(k2.keyPacket.privateParams[name]);
            });
            k2.keyPacket.privateParams = privateParams;
          });
        }
        return key;
      }
      /**
       * Returns an array containing all public or private subkeys matching keyID;
       * If no keyID is given, returns all subkeys.
       * @param {type/keyID} [keyID] - key ID to look for
       * @returns {Array<Subkey>} array of subkeys
       */
      getSubkeys(keyID = null) {
        const subkeys = this.subkeys.filter((subkey) => !keyID || subkey.getKeyID().equals(keyID, true));
        return subkeys;
      }
      /**
       * Returns an array containing all public or private keys matching keyID.
       * If no keyID is given, returns all keys, starting with the primary key.
       * @param {type/keyid~KeyID} [keyID] - key ID to look for
       * @returns {Array<Key|Subkey>} array of keys
       */
      getKeys(keyID = null) {
        const keys4 = [];
        if (!keyID || this.getKeyID().equals(keyID, true)) {
          keys4.push(this);
        }
        return keys4.concat(this.getSubkeys(keyID));
      }
      /**
       * Returns key IDs of all keys
       * @returns {Array<module:type/keyid~KeyID>}
       */
      getKeyIDs() {
        return this.getKeys().map((key) => key.getKeyID());
      }
      /**
       * Returns userIDs
       * @returns {Array<string>} Array of userIDs.
       */
      getUserIDs() {
        return this.users.map((user) => {
          return user.userID ? user.userID.userID : null;
        }).filter((userID) => userID !== null);
      }
      /**
       * Returns binary encoded key
       * @returns {Uint8Array} Binary key.
       */
      write() {
        return this.toPacketList().write();
      }
      /**
       * Returns last created key or key by given keyID that is available for signing and verification
       * @param  {module:type/keyid~KeyID} [keyID] - key ID of a specific key to retrieve
       * @param  {Date} [date] - use the fiven date date to  to check key validity instead of the current date
       * @param  {Object} [userID] - filter keys for the given user ID
       * @param  {Object} [config] - Full configuration, defaults to openpgp.config
       * @returns {Promise<Key|Subkey>} signing key
       * @throws if no valid signing key was found
       * @async
       */
      async getSigningKey(keyID = null, date = /* @__PURE__ */ new Date(), userID = {}, config$1 = config) {
        await this.verifyPrimaryKey(date, userID, config$1);
        const primaryKey = this.keyPacket;
        try {
          checkKeyRequirements(primaryKey, config$1);
        } catch (err2) {
          throw util11.wrapError("Could not verify primary key", err2);
        }
        const subkeys = this.subkeys.slice().sort((a2, b) => b.keyPacket.created - a2.keyPacket.created || b.keyPacket.algorithm - a2.keyPacket.algorithm);
        let exception2;
        for (const subkey of subkeys) {
          if (!keyID || subkey.getKeyID().equals(keyID)) {
            try {
              await subkey.verify(date, config$1);
              const dataToVerify = { key: primaryKey, bind: subkey.keyPacket };
              const bindingSignature = await getLatestValidSignature(subkey.bindingSignatures, primaryKey, enums.signature.subkeyBinding, dataToVerify, date, config$1);
              if (!validateSigningKeyPacket(subkey.keyPacket, bindingSignature, config$1)) {
                continue;
              }
              if (!bindingSignature.embeddedSignature) {
                throw new Error("Missing embedded signature");
              }
              await getLatestValidSignature([bindingSignature.embeddedSignature], subkey.keyPacket, enums.signature.keyBinding, dataToVerify, date, config$1);
              checkKeyRequirements(subkey.keyPacket, config$1);
              return subkey;
            } catch (e) {
              exception2 = e;
            }
          }
        }
        try {
          const selfCertification = await this.getPrimarySelfSignature(date, userID, config$1);
          if ((!keyID || primaryKey.getKeyID().equals(keyID)) && validateSigningKeyPacket(primaryKey, selfCertification, config$1)) {
            checkKeyRequirements(primaryKey, config$1);
            return this;
          }
        } catch (e) {
          exception2 = e;
        }
        throw util11.wrapError("Could not find valid signing key packet in key " + this.getKeyID().toHex(), exception2);
      }
      /**
       * Returns last created key or key by given keyID that is available for encryption or decryption
       * @param  {module:type/keyid~KeyID} [keyID] - key ID of a specific key to retrieve
       * @param  {Date}   [date] - use the fiven date date to  to check key validity instead of the current date
       * @param  {Object} [userID] - filter keys for the given user ID
       * @param  {Object} [config] - Full configuration, defaults to openpgp.config
       * @returns {Promise<Key|Subkey>} encryption key
       * @throws if no valid encryption key was found
       * @async
       */
      async getEncryptionKey(keyID, date = /* @__PURE__ */ new Date(), userID = {}, config$1 = config) {
        await this.verifyPrimaryKey(date, userID, config$1);
        const primaryKey = this.keyPacket;
        try {
          checkKeyRequirements(primaryKey, config$1);
        } catch (err2) {
          throw util11.wrapError("Could not verify primary key", err2);
        }
        const subkeys = this.subkeys.slice().sort((a2, b) => b.keyPacket.created - a2.keyPacket.created || b.keyPacket.algorithm - a2.keyPacket.algorithm);
        let exception2;
        for (const subkey of subkeys) {
          if (!keyID || subkey.getKeyID().equals(keyID)) {
            try {
              await subkey.verify(date, config$1);
              const dataToVerify = { key: primaryKey, bind: subkey.keyPacket };
              const bindingSignature = await getLatestValidSignature(subkey.bindingSignatures, primaryKey, enums.signature.subkeyBinding, dataToVerify, date, config$1);
              if (validateEncryptionKeyPacket(subkey.keyPacket, bindingSignature, config$1)) {
                checkKeyRequirements(subkey.keyPacket, config$1);
                return subkey;
              }
            } catch (e) {
              exception2 = e;
            }
          }
        }
        try {
          const selfCertification = await this.getPrimarySelfSignature(date, userID, config$1);
          if ((!keyID || primaryKey.getKeyID().equals(keyID)) && validateEncryptionKeyPacket(primaryKey, selfCertification, config$1)) {
            checkKeyRequirements(primaryKey, config$1);
            return this;
          }
        } catch (e) {
          exception2 = e;
        }
        throw util11.wrapError("Could not find valid encryption key packet in key " + this.getKeyID().toHex(), exception2);
      }
      /**
       * Checks if a signature on a key is revoked
       * @param {SignaturePacket} signature - The signature to verify
       * @param  {PublicSubkeyPacket|
       *          SecretSubkeyPacket|
       *          PublicKeyPacket|
       *          SecretKeyPacket} key, optional The key to verify the signature
       * @param {Date} [date] - Use the given date for verification, instead of the current time
       * @param {Object} [config] - Full configuration, defaults to openpgp.config
       * @returns {Promise<Boolean>} True if the certificate is revoked.
       * @async
       */
      async isRevoked(signature, key, date = /* @__PURE__ */ new Date(), config$1 = config) {
        return isDataRevoked(this.keyPacket, enums.signature.keyRevocation, { key: this.keyPacket }, this.revocationSignatures, signature, key, date, config$1);
      }
      /**
       * Verify primary key. Checks for revocation signatures, expiration time
       * and valid self signature. Throws if the primary key is invalid.
       * @param {Date} [date] - Use the given date for verification instead of the current time
       * @param {Object} [userID] - User ID
       * @param {Object} [config] - Full configuration, defaults to openpgp.config
       * @throws {Error} If key verification failed
       * @async
       */
      async verifyPrimaryKey(date = /* @__PURE__ */ new Date(), userID = {}, config$1 = config) {
        const primaryKey = this.keyPacket;
        if (await this.isRevoked(null, null, date, config$1)) {
          throw new Error("Primary key is revoked");
        }
        const selfCertification = await this.getPrimarySelfSignature(date, userID, config$1);
        if (isDataExpired(primaryKey, selfCertification, date)) {
          throw new Error("Primary key is expired");
        }
        if (primaryKey.version !== 6) {
          const directSignature = await getLatestValidSignature(this.directSignatures, primaryKey, enums.signature.key, { key: primaryKey }, date, config$1).catch(() => {
          });
          if (directSignature && isDataExpired(primaryKey, directSignature, date)) {
            throw new Error("Primary key is expired");
          }
        }
      }
      /**
       * Returns the expiration date of the primary key, considering self-certifications and direct-key signatures.
       * Returns `Infinity` if the key doesn't expire, or `null` if the key is revoked or invalid.
       * @param  {Object} [userID] - User ID to consider instead of the primary user
       * @param  {Object} [config] - Full configuration, defaults to openpgp.config
       * @returns {Promise<Date | Infinity | null>}
       * @async
       */
      async getExpirationTime(userID, config$1 = config) {
        let primaryKeyExpiry;
        try {
          const selfCertification = await this.getPrimarySelfSignature(null, userID, config$1);
          const selfSigKeyExpiry = getKeyExpirationTime(this.keyPacket, selfCertification);
          const selfSigExpiry = selfCertification.getExpirationTime();
          const directSignature = this.keyPacket.version !== 6 && // For V6 keys, the above already returns the direct-key signature.
          await getLatestValidSignature(this.directSignatures, this.keyPacket, enums.signature.key, { key: this.keyPacket }, null, config$1).catch(() => {
          });
          if (directSignature) {
            const directSigKeyExpiry = getKeyExpirationTime(this.keyPacket, directSignature);
            primaryKeyExpiry = Math.min(selfSigKeyExpiry, selfSigExpiry, directSigKeyExpiry);
          } else {
            primaryKeyExpiry = selfSigKeyExpiry < selfSigExpiry ? selfSigKeyExpiry : selfSigExpiry;
          }
        } catch {
          primaryKeyExpiry = null;
        }
        return util11.normalizeDate(primaryKeyExpiry);
      }
      /**
       * For V4 keys, returns the self-signature of the primary user.
       * For V5 keys, returns the latest valid direct-key self-signature.
       * This self-signature is to be used to check the key expiration,
       * algorithm preferences, and so on.
       * @param {Date} [date] - Use the given date for verification instead of the current time
       * @param {Object} [userID] - User ID to get instead of the primary user for V4 keys, if it exists
       * @param {Object} [config] - Full configuration, defaults to openpgp.config
       * @returns {Promise<SignaturePacket>} The primary self-signature
       * @async
       */
      async getPrimarySelfSignature(date = /* @__PURE__ */ new Date(), userID = {}, config$1 = config) {
        const primaryKey = this.keyPacket;
        if (primaryKey.version === 6) {
          return getLatestValidSignature(this.directSignatures, primaryKey, enums.signature.key, { key: primaryKey }, date, config$1);
        }
        const { selfCertification } = await this.getPrimaryUser(date, userID, config$1);
        return selfCertification;
      }
      /**
       * Returns primary user and most significant (latest valid) self signature
       * - if multiple primary users exist, returns the one with the latest self signature
       * - otherwise, returns the user with the latest self signature
       * @param {Date} [date] - Use the given date for verification instead of the current time
       * @param {Object} [userID] - User ID to get instead of the primary user, if it exists
       * @param {Object} [config] - Full configuration, defaults to openpgp.config
       * @returns {Promise<{
       *   user: User,
       *   selfCertification: SignaturePacket
       * }>} The primary user and the self signature
       * @async
       */
      async getPrimaryUser(date = /* @__PURE__ */ new Date(), userID = {}, config$1 = config) {
        const primaryKey = this.keyPacket;
        const users = [];
        let exception2;
        for (let i4 = 0; i4 < this.users.length; i4++) {
          try {
            const user2 = this.users[i4];
            if (!user2.userID) {
              continue;
            }
            if (userID.name !== void 0 && user2.userID.name !== userID.name || userID.email !== void 0 && user2.userID.email !== userID.email || userID.comment !== void 0 && user2.userID.comment !== userID.comment) {
              throw new Error("Could not find user that matches that user ID");
            }
            const dataToVerify = { userID: user2.userID, key: primaryKey };
            const selfCertification = await getLatestValidSignature(user2.selfCertifications, primaryKey, enums.signature.certGeneric, dataToVerify, date, config$1);
            users.push({ index: i4, user: user2, selfCertification });
          } catch (e) {
            exception2 = e;
          }
        }
        if (!users.length) {
          throw exception2 || new Error("Could not find primary user");
        }
        await Promise.all(users.map(async (a2) => {
          a2.selfCertification.revoked || await a2.user.isRevoked(a2.selfCertification, null, date, config$1);
        }));
        const primaryUser = users.sort(function(a2, b) {
          const A2 = a2.selfCertification;
          const B = b.selfCertification;
          return B.revoked - A2.revoked || A2.isPrimaryUserID - B.isPrimaryUserID || A2.created - B.created;
        }).pop();
        const { user, selfCertification: cert } = primaryUser;
        if (cert.revoked || await user.isRevoked(cert, null, date, config$1)) {
          throw new Error("Primary user is revoked");
        }
        return primaryUser;
      }
      /**
       * Update key with new components from specified key with same key ID:
       * users, subkeys, certificates are merged into the destination key,
       * duplicates and expired signatures are ignored.
       *
       * If the source key is a private key and the destination key is public,
       * a private key is returned.
       * @param {Key} sourceKey - Source key to merge
       * @param {Date} [date] - Date to verify validity of signatures and keys
       * @param {Object} [config] - Full configuration, defaults to openpgp.config
       * @returns {Promise<Key>} updated key
       * @async
       */
      async update(sourceKey, date = /* @__PURE__ */ new Date(), config$1 = config) {
        if (!this.hasSameFingerprintAs(sourceKey)) {
          throw new Error("Primary key fingerprints must be equal to update the key");
        }
        if (!this.isPrivate() && sourceKey.isPrivate()) {
          const equal2 = this.subkeys.length === sourceKey.subkeys.length && this.subkeys.every((destSubkey) => {
            return sourceKey.subkeys.some((srcSubkey) => {
              return destSubkey.hasSameFingerprintAs(srcSubkey);
            });
          });
          if (!equal2) {
            throw new Error("Cannot update public key with private key if subkeys mismatch");
          }
          return sourceKey.update(this, config$1);
        }
        const updatedKey = this.clone();
        await mergeSignatures(sourceKey, updatedKey, "revocationSignatures", date, (srcRevSig) => {
          return isDataRevoked(updatedKey.keyPacket, enums.signature.keyRevocation, updatedKey, [srcRevSig], null, sourceKey.keyPacket, date, config$1);
        });
        await mergeSignatures(sourceKey, updatedKey, "directSignatures", date);
        await Promise.all(sourceKey.users.map(async (srcUser) => {
          const usersToUpdate = updatedKey.users.filter((dstUser) => srcUser.userID && srcUser.userID.equals(dstUser.userID) || srcUser.userAttribute && srcUser.userAttribute.equals(dstUser.userAttribute));
          if (usersToUpdate.length > 0) {
            await Promise.all(usersToUpdate.map((userToUpdate) => userToUpdate.update(srcUser, date, config$1)));
          } else {
            const newUser = srcUser.clone();
            newUser.mainKey = updatedKey;
            updatedKey.users.push(newUser);
          }
        }));
        await Promise.all(sourceKey.subkeys.map(async (srcSubkey) => {
          const subkeysToUpdate = updatedKey.subkeys.filter((dstSubkey) => dstSubkey.hasSameFingerprintAs(srcSubkey));
          if (subkeysToUpdate.length > 0) {
            await Promise.all(subkeysToUpdate.map((subkeyToUpdate) => subkeyToUpdate.update(srcSubkey, date, config$1)));
          } else {
            const newSubkey = srcSubkey.clone();
            newSubkey.mainKey = updatedKey;
            updatedKey.subkeys.push(newSubkey);
          }
        }));
        return updatedKey;
      }
      /**
       * Get revocation certificate from a revoked key.
       *   (To get a revocation certificate for an unrevoked key, call revoke() first.)
       * @param {Date} date - Use the given date instead of the current time
       * @param {Object} [config] - Full configuration, defaults to openpgp.config
       * @returns {Promise<String>} Armored revocation certificate.
       * @async
       */
      async getRevocationCertificate(date = /* @__PURE__ */ new Date(), config$1 = config) {
        const dataToVerify = { key: this.keyPacket };
        const revocationSignature = await getLatestValidSignature(this.revocationSignatures, this.keyPacket, enums.signature.keyRevocation, dataToVerify, date, config$1);
        const packetlist = new PacketList();
        packetlist.push(revocationSignature);
        const emitChecksum = this.keyPacket.version !== 6;
        return armor(enums.armor.publicKey, packetlist.write(), null, null, "This is a revocation certificate", emitChecksum, config$1);
      }
      /**
       * Applies a revocation certificate to a key
       * This adds the first signature packet in the armored text to the key,
       * if it is a valid revocation signature.
       * @param {String} revocationCertificate - armored revocation certificate
       * @param {Date} [date] - Date to verify the certificate
       * @param {Object} [config] - Full configuration, defaults to openpgp.config
       * @returns {Promise<Key>} Revoked key.
       * @async
       */
      async applyRevocationCertificate(revocationCertificate, date = /* @__PURE__ */ new Date(), config$1 = config) {
        const input = await unarmor(revocationCertificate);
        const packetlist = await PacketList.fromBinary(input.data, allowedRevocationPackets, config$1);
        const revocationSignature = packetlist.findPacket(enums.packet.signature);
        if (!revocationSignature || revocationSignature.signatureType !== enums.signature.keyRevocation) {
          throw new Error("Could not find revocation signature packet");
        }
        if (!revocationSignature.issuerKeyID.equals(this.getKeyID())) {
          throw new Error("Revocation signature does not match key");
        }
        try {
          await revocationSignature.verify(this.keyPacket, enums.signature.keyRevocation, { key: this.keyPacket }, date, void 0, config$1);
        } catch (e) {
          throw util11.wrapError("Could not verify revocation signature", e);
        }
        const key = this.clone();
        key.revocationSignatures.push(revocationSignature);
        return key;
      }
      /**
       * Signs primary user of key
       * @param {Array<PrivateKey>} privateKeys - decrypted private keys for signing
       * @param {Date} [date] - Use the given date for verification instead of the current time
       * @param {Object} [userID] - User ID to get instead of the primary user, if it exists
       * @param {Object} [config] - Full configuration, defaults to openpgp.config
       * @returns {Promise<Key>} Key with new certificate signature.
       * @async
       */
      async signPrimaryUser(privateKeys, date, userID, config$1 = config) {
        const { index: index2, user } = await this.getPrimaryUser(date, userID, config$1);
        const userSign = await user.certify(privateKeys, date, config$1);
        const key = this.clone();
        key.users[index2] = userSign;
        return key;
      }
      /**
       * Signs all users of key
       * @param {Array<PrivateKey>} privateKeys - decrypted private keys for signing
       * @param {Date} [date] - Use the given date for signing, instead of the current time
       * @param {Object} [config] - Full configuration, defaults to openpgp.config
       * @returns {Promise<Key>} Key with new certificate signature.
       * @async
       */
      async signAllUsers(privateKeys, date = /* @__PURE__ */ new Date(), config$1 = config) {
        const key = this.clone();
        key.users = await Promise.all(this.users.map(function(user) {
          return user.certify(privateKeys, date, config$1);
        }));
        return key;
      }
      /**
       * Verifies primary user of key
       * - if no arguments are given, verifies the self certificates;
       * - otherwise, verifies all certificates signed with given keys.
       * @param {Array<PublicKey>} [verificationKeys] - array of keys to verify certificate signatures, instead of the primary key
       * @param {Date} [date] - Use the given date for verification instead of the current time
       * @param {Object} [userID] - User ID to get instead of the primary user, if it exists
       * @param {Object} [config] - Full configuration, defaults to openpgp.config
       * @returns {Promise<Array<{
       *   keyID: module:type/keyid~KeyID,
       *   valid: Boolean|null
       * }>>} List of signer's keyID and validity of signature.
       *      Signature validity is null if the verification keys do not correspond to the certificate.
       * @async
       */
      async verifyPrimaryUser(verificationKeys, date = /* @__PURE__ */ new Date(), userID, config$1 = config) {
        const primaryKey = this.keyPacket;
        const { user } = await this.getPrimaryUser(date, userID, config$1);
        const results = verificationKeys ? await user.verifyAllCertifications(verificationKeys, date, config$1) : [{ keyID: primaryKey.getKeyID(), valid: await user.verify(date, config$1).catch(() => false) }];
        return results;
      }
      /**
       * Verifies all users of key
       * - if no arguments are given, verifies the self certificates;
       * - otherwise, verifies all certificates signed with given keys.
       * @param {Array<PublicKey>} [verificationKeys] - array of keys to verify certificate signatures
       * @param {Date} [date] - Use the given date for verification instead of the current time
       * @param {Object} [config] - Full configuration, defaults to openpgp.config
       * @returns {Promise<Array<{
       *   userID: String,
       *   keyID: module:type/keyid~KeyID,
       *   valid: Boolean|null
       * }>>} List of userID, signer's keyID and validity of signature.
       *      Signature validity is null if the verification keys do not correspond to the certificate.
       * @async
       */
      async verifyAllUsers(verificationKeys, date = /* @__PURE__ */ new Date(), config$1 = config) {
        const primaryKey = this.keyPacket;
        const results = [];
        await Promise.all(this.users.map(async (user) => {
          const signatures = verificationKeys ? await user.verifyAllCertifications(verificationKeys, date, config$1) : [{ keyID: primaryKey.getKeyID(), valid: await user.verify(date, config$1).catch(() => false) }];
          results.push(...signatures.map((signature) => ({
            userID: user.userID ? user.userID.userID : null,
            userAttribute: user.userAttribute,
            keyID: signature.keyID,
            valid: signature.valid
          })));
        }));
        return results;
      }
    };
    ["getKeyID", "getFingerprint", "getAlgorithmInfo", "getCreationTime", "hasSameFingerprintAs"].forEach((name) => {
      Key.prototype[name] = Subkey.prototype[name];
    });
    PublicKey = class extends Key {
      /**
       * @param {PacketList} packetlist - The packets that form this key
       */
      constructor(packetlist) {
        super();
        this.keyPacket = null;
        this.revocationSignatures = [];
        this.directSignatures = [];
        this.users = [];
        this.subkeys = [];
        if (packetlist) {
          this.packetListToStructure(packetlist, /* @__PURE__ */ new Set([enums.packet.secretKey, enums.packet.secretSubkey]));
          if (!this.keyPacket) {
            throw new Error("Invalid key: missing public-key packet");
          }
        }
      }
      /**
       * Returns true if this is a private key
       * @returns {false}
       */
      isPrivate() {
        return false;
      }
      /**
       * Returns key as public key (shallow copy)
       * @returns {PublicKey} New public Key
       */
      toPublic() {
        return this;
      }
      /**
       * Returns ASCII armored text of key
       * @param {Object} [config] - Full configuration, defaults to openpgp.config
       * @returns {ReadableStream<String>} ASCII armor.
       */
      armor(config$1 = config) {
        const emitChecksum = this.keyPacket.version !== 6;
        return armor(enums.armor.publicKey, this.toPacketList().write(), void 0, void 0, void 0, emitChecksum, config$1);
      }
    };
    PrivateKey = class _PrivateKey extends PublicKey {
      /**
      * @param {PacketList} packetlist - The packets that form this key
      */
      constructor(packetlist) {
        super();
        this.packetListToStructure(packetlist, /* @__PURE__ */ new Set([enums.packet.publicKey, enums.packet.publicSubkey]));
        if (!this.keyPacket) {
          throw new Error("Invalid key: missing private-key packet");
        }
      }
      /**
       * Returns true if this is a private key
       * @returns {Boolean}
       */
      isPrivate() {
        return true;
      }
      /**
       * Returns key as public key (shallow copy)
       * @returns {PublicKey} New public Key
       */
      toPublic() {
        const packetlist = new PacketList();
        const keyPackets = this.toPacketList();
        for (const keyPacket of keyPackets) {
          switch (keyPacket.constructor.tag) {
            case enums.packet.secretKey: {
              const pubKeyPacket = PublicKeyPacket.fromSecretKeyPacket(keyPacket);
              packetlist.push(pubKeyPacket);
              break;
            }
            case enums.packet.secretSubkey: {
              const pubSubkeyPacket = PublicSubkeyPacket.fromSecretSubkeyPacket(keyPacket);
              packetlist.push(pubSubkeyPacket);
              break;
            }
            default:
              packetlist.push(keyPacket);
          }
        }
        return new PublicKey(packetlist);
      }
      /**
       * Returns ASCII armored text of key
       * @param {Object} [config] - Full configuration, defaults to openpgp.config
       * @returns {ReadableStream<String>} ASCII armor.
       */
      armor(config$1 = config) {
        const emitChecksum = this.keyPacket.version !== 6;
        return armor(enums.armor.privateKey, this.toPacketList().write(), void 0, void 0, void 0, emitChecksum, config$1);
      }
      /**
       * Returns all keys that are available for decryption, matching the keyID when given
       * This is useful to retrieve keys for session key decryption
       * @param  {module:type/keyid~KeyID} keyID, optional
       * @param  {Date}              date, optional
       * @param  {String}            userID, optional
       * @param {Object} [config] - Full configuration, defaults to openpgp.config
       * @returns {Promise<Array<Key|Subkey>>} Array of decryption keys.
       * @throws {Error} if no decryption key is found
       * @async
       */
      async getDecryptionKeys(keyID, date = /* @__PURE__ */ new Date(), userID = {}, config$1 = config) {
        const primaryKey = this.keyPacket;
        const keys4 = [];
        let exception2 = null;
        for (let i4 = 0; i4 < this.subkeys.length; i4++) {
          if (!keyID || this.subkeys[i4].getKeyID().equals(keyID, true)) {
            if (this.subkeys[i4].keyPacket.isDummy()) {
              exception2 = exception2 || new Error("Gnu-dummy key packets cannot be used for decryption");
              continue;
            }
            try {
              const dataToVerify = { key: primaryKey, bind: this.subkeys[i4].keyPacket };
              const bindingSignature = await getLatestValidSignature(this.subkeys[i4].bindingSignatures, primaryKey, enums.signature.subkeyBinding, dataToVerify, date, config$1);
              if (validateDecryptionKeyPacket(this.subkeys[i4].keyPacket, bindingSignature, config$1)) {
                keys4.push(this.subkeys[i4]);
              }
            } catch (e) {
              exception2 = e;
            }
          }
        }
        const selfCertification = await this.getPrimarySelfSignature(date, userID, config$1);
        if ((!keyID || primaryKey.getKeyID().equals(keyID, true)) && validateDecryptionKeyPacket(primaryKey, selfCertification, config$1)) {
          if (primaryKey.isDummy()) {
            exception2 = exception2 || new Error("Gnu-dummy key packets cannot be used for decryption");
          } else {
            keys4.push(this);
          }
        }
        if (keys4.length === 0) {
          throw exception2 || new Error("No decryption key packets found");
        }
        return keys4;
      }
      /**
       * Returns true if the primary key or any subkey is decrypted.
       * A dummy key is considered encrypted.
       */
      isDecrypted() {
        return this.getKeys().some(({ keyPacket }) => keyPacket.isDecrypted());
      }
      /**
       * Check whether the private and public primary key parameters correspond
       * Together with verification of binding signatures, this guarantees key integrity
       * In case of gnu-dummy primary key, it is enough to validate any signing subkeys
       *   otherwise all encryption subkeys are validated
       * If only gnu-dummy keys are found, we cannot properly validate so we throw an error
       * @param {Object} [config] - Full configuration, defaults to openpgp.config
       * @throws {Error} if validation was not successful and the key cannot be trusted
       * @async
       */
      async validate(config$1 = config) {
        if (!this.isPrivate()) {
          throw new Error("Cannot validate a public key");
        }
        let signingKeyPacket;
        if (!this.keyPacket.isDummy()) {
          signingKeyPacket = this.keyPacket;
        } else {
          const signingKey = await this.getSigningKey(null, null, void 0, { ...config$1, rejectPublicKeyAlgorithms: /* @__PURE__ */ new Set(), minRSABits: 0 });
          if (signingKey && !signingKey.keyPacket.isDummy()) {
            signingKeyPacket = signingKey.keyPacket;
          }
        }
        if (signingKeyPacket) {
          return signingKeyPacket.validate();
        } else {
          const keys4 = this.getKeys();
          const allDummies = keys4.map((key) => key.keyPacket.isDummy()).every(Boolean);
          if (allDummies) {
            throw new Error("Cannot validate an all-gnu-dummy key");
          }
          return Promise.all(keys4.map((key) => key.keyPacket.validate()));
        }
      }
      /**
       * Clear private key parameters
       */
      clearPrivateParams() {
        this.getKeys().forEach(({ keyPacket }) => {
          if (keyPacket.isDecrypted()) {
            keyPacket.clearPrivateParams();
          }
        });
      }
      /**
       * Revokes the key
       * @param {Object} reasonForRevocation - optional, object indicating the reason for revocation
       * @param  {module:enums.reasonForRevocation} reasonForRevocation.flag optional, flag indicating the reason for revocation
       * @param  {String} reasonForRevocation.string optional, string explaining the reason for revocation
       * @param {Date} date - optional, override the creationtime of the revocation signature
       * @param {Object} [config] - Full configuration, defaults to openpgp.config
       * @returns {Promise<PrivateKey>} New key with revocation signature.
       * @async
       */
      async revoke({ flag: reasonForRevocationFlag = enums.reasonForRevocation.noReason, string: reasonForRevocationString = "" } = {}, date = /* @__PURE__ */ new Date(), config$1 = config) {
        if (!this.isPrivate()) {
          throw new Error("Need private key for revoking");
        }
        const dataToSign = { key: this.keyPacket };
        const key = this.clone();
        key.revocationSignatures.push(await createSignaturePacket(dataToSign, [], this.keyPacket, {
          signatureType: enums.signature.keyRevocation,
          reasonForRevocationFlag: enums.write(enums.reasonForRevocation, reasonForRevocationFlag),
          reasonForRevocationString
        }, date, void 0, void 0, void 0, config$1));
        return key;
      }
      /**
       * Generates a new OpenPGP subkey, and returns a clone of the Key object with the new subkey added.
       * Supports RSA and ECC keys, as well as the newer Curve448 and Curve25519.
       * Defaults to the algorithm and bit size/curve of the primary key. DSA primary keys default to RSA subkeys.
       * @param {ecc|rsa|curve25519|curve448} options.type The subkey algorithm: ECC, RSA, Curve448 or Curve25519 (new format).
       *                                                   Note: Curve448 and Curve25519 are not widely supported yet.
       * @param {String}  options.curve      (optional) Elliptic curve for ECC keys
       * @param {Integer} options.rsaBits    (optional) Number of bits for RSA subkeys
       * @param {Number}  options.keyExpirationTime (optional) Number of seconds from the key creation time after which the key expires
       * @param {Date}    options.date       (optional) Override the creation date of the key and the key signatures
       * @param {Boolean} options.sign       (optional) Indicates whether the subkey should sign rather than encrypt. Defaults to false
       * @param {Object}  options.config     (optional) custom configuration settings to overwrite those in [config]{@link module:config}
       * @returns {Promise<PrivateKey>}
       * @async
       */
      async addSubkey(options = {}) {
        const config$1 = { ...config, ...options.config };
        if (options.passphrase) {
          throw new Error("Subkey could not be encrypted here, please encrypt whole key");
        }
        if (options.rsaBits < config$1.minRSABits) {
          throw new Error(`rsaBits should be at least ${config$1.minRSABits}, got: ${options.rsaBits}`);
        }
        const secretKeyPacket = this.keyPacket;
        if (secretKeyPacket.isDummy()) {
          throw new Error("Cannot add subkey to gnu-dummy primary key");
        }
        if (!secretKeyPacket.isDecrypted()) {
          throw new Error("Key is not decrypted");
        }
        const defaultOptions4 = secretKeyPacket.getAlgorithmInfo();
        defaultOptions4.type = getDefaultSubkeyType(defaultOptions4.algorithm);
        defaultOptions4.rsaBits = defaultOptions4.bits || 4096;
        defaultOptions4.curve = defaultOptions4.curve || "curve25519Legacy";
        options = sanitizeKeyOptions(options, defaultOptions4);
        const keyPacket = await generateSecretSubkey(options, { ...config$1, v6Keys: this.keyPacket.version === 6 });
        checkKeyRequirements(keyPacket, config$1);
        const bindingSignature = await createBindingSignature(keyPacket, secretKeyPacket, options, config$1);
        const packetList = this.toPacketList();
        packetList.push(keyPacket, bindingSignature);
        return new _PrivateKey(packetList);
      }
    };
    allowedKeyPackets = /* @__PURE__ */ util11.constructAllowedPackets([
      PublicKeyPacket,
      PublicSubkeyPacket,
      SecretKeyPacket,
      SecretSubkeyPacket,
      UserIDPacket,
      UserAttributePacket,
      SignaturePacket
    ]);
    allowedSymSessionKeyPackets = /* @__PURE__ */ util11.constructAllowedPackets([SymEncryptedSessionKeyPacket]);
    allowedDetachedSignaturePackets = /* @__PURE__ */ util11.constructAllowedPackets([SignaturePacket]);
    Message = class _Message {
      /**
       * @param {PacketList} packetlist - The packets that form this message
       */
      constructor(packetlist) {
        this.packets = packetlist || new PacketList();
      }
      /**
       * Returns the key IDs of the keys to which the session key is encrypted
       * @returns {Array<module:type/keyid~KeyID>} Array of keyID objects.
       */
      getEncryptionKeyIDs() {
        const keyIDs = [];
        const pkESKeyPacketlist = this.packets.filterByTag(enums.packet.publicKeyEncryptedSessionKey);
        pkESKeyPacketlist.forEach(function(packet) {
          keyIDs.push(packet.publicKeyID);
        });
        return keyIDs;
      }
      /**
       * Returns the key IDs of the keys that signed the message
       * @returns {Array<module:type/keyid~KeyID>} Array of keyID objects.
       */
      getSigningKeyIDs() {
        const msg = this.unwrapCompressed();
        const onePassSigList = msg.packets.filterByTag(enums.packet.onePassSignature);
        if (onePassSigList.length > 0) {
          return onePassSigList.map((packet) => packet.issuerKeyID);
        }
        const signatureList = msg.packets.filterByTag(enums.packet.signature);
        return signatureList.map((packet) => packet.issuerKeyID);
      }
      /**
       * Decrypt the message. Either a private key, a session key, or a password must be specified.
       * @param {Array<PrivateKey>} [decryptionKeys] - Private keys with decrypted secret data
       * @param {Array<String>} [passwords] - Passwords used to decrypt
       * @param {Array<Object>} [sessionKeys] - Session keys in the form: { data:Uint8Array, algorithm:String, [aeadAlgorithm:String] }
       * @param {Date} [date] - Use the given date for key verification instead of the current time
       * @param {Object} [config] - Full configuration, defaults to openpgp.config
       * @returns {Promise<Message>} New message with decrypted content.
       * @async
       */
      async decrypt(decryptionKeys, passwords, sessionKeys, date = /* @__PURE__ */ new Date(), config$1 = config) {
        const symEncryptedPacketlist = this.packets.filterByTag(enums.packet.symmetricallyEncryptedData, enums.packet.symEncryptedIntegrityProtectedData, enums.packet.aeadEncryptedData);
        if (symEncryptedPacketlist.length === 0) {
          throw new Error("No encrypted data found");
        }
        const symEncryptedPacket = symEncryptedPacketlist[0];
        const expectedSymmetricAlgorithm = symEncryptedPacket.cipherAlgorithm;
        const sessionKeyObjects = sessionKeys || await this.decryptSessionKeys(decryptionKeys, passwords, expectedSymmetricAlgorithm, date, config$1);
        let exception2 = null;
        const decryptedPromise = Promise.all(sessionKeyObjects.map(async ({ algorithm: algorithmName, data }) => {
          if (!util11.isUint8Array(data) || !symEncryptedPacket.cipherAlgorithm && !util11.isString(algorithmName)) {
            throw new Error("Invalid session key for decryption.");
          }
          try {
            const algo = symEncryptedPacket.cipherAlgorithm || enums.write(enums.symmetric, algorithmName);
            await symEncryptedPacket.decrypt(algo, data, config$1);
          } catch (e) {
            util11.printDebugError(e);
            exception2 = e;
          }
        }));
        cancel(symEncryptedPacket.encrypted);
        symEncryptedPacket.encrypted = null;
        await decryptedPromise;
        if (!symEncryptedPacket.packets || !symEncryptedPacket.packets.length) {
          throw exception2 || new Error("Decryption failed.");
        }
        const resultMsg = new _Message(symEncryptedPacket.packets);
        symEncryptedPacket.packets = new PacketList();
        return resultMsg;
      }
      /**
       * Decrypt encrypted session keys either with private keys or passwords.
       * @param {Array<PrivateKey>} [decryptionKeys] - Private keys with decrypted secret data
       * @param {Array<String>} [passwords] - Passwords used to decrypt
       * @param {enums.symmetric} [expectedSymmetricAlgorithm] - The symmetric algorithm the SEIPDv2 / AEAD packet is encrypted with (if applicable)
       * @param {Date} [date] - Use the given date for key verification, instead of current time
       * @param {Object} [config] - Full configuration, defaults to openpgp.config
       * @returns {Promise<Array<{
       *   data: Uint8Array,
       *   algorithm: String
       * }>>} array of object with potential sessionKey, algorithm pairs
       * @async
       */
      async decryptSessionKeys(decryptionKeys, passwords, expectedSymmetricAlgorithm, date = /* @__PURE__ */ new Date(), config$1 = config) {
        let decryptedSessionKeyPackets = [];
        let exception2;
        if (passwords) {
          const skeskPackets = this.packets.filterByTag(enums.packet.symEncryptedSessionKey);
          if (skeskPackets.length === 0) {
            throw new Error("No symmetrically encrypted session key packet found.");
          }
          await Promise.all(passwords.map(async function(password, i4) {
            let packets;
            if (i4) {
              packets = await PacketList.fromBinary(skeskPackets.write(), allowedSymSessionKeyPackets, config$1);
            } else {
              packets = skeskPackets;
            }
            await Promise.all(packets.map(async function(skeskPacket) {
              try {
                await skeskPacket.decrypt(password, config$1);
                decryptedSessionKeyPackets.push(skeskPacket);
              } catch (err2) {
                util11.printDebugError(err2);
                if (err2 instanceof Argon2OutOfMemoryError) {
                  exception2 = err2;
                }
              }
            }));
          }));
        } else if (decryptionKeys) {
          const pkeskPackets = this.packets.filterByTag(enums.packet.publicKeyEncryptedSessionKey);
          if (pkeskPackets.length === 0) {
            throw new Error("No public key encrypted session key packet found.");
          }
          await Promise.all(pkeskPackets.map(async function(pkeskPacket) {
            await Promise.all(decryptionKeys.map(async function(decryptionKey) {
              let decryptionKeyPackets;
              try {
                decryptionKeyPackets = (await decryptionKey.getDecryptionKeys(pkeskPacket.publicKeyID, null, void 0, config$1)).map((key) => key.keyPacket);
              } catch (err2) {
                exception2 = err2;
                return;
              }
              let algos = [
                enums.symmetric.aes256,
                // Old OpenPGP.js default fallback
                enums.symmetric.aes128,
                // RFC4880bis fallback
                enums.symmetric.tripledes,
                // RFC4880 fallback
                enums.symmetric.cast5
                // Golang OpenPGP fallback
              ];
              try {
                const selfCertification = await decryptionKey.getPrimarySelfSignature(date, void 0, config$1);
                if (selfCertification.preferredSymmetricAlgorithms) {
                  algos = algos.concat(selfCertification.preferredSymmetricAlgorithms);
                }
              } catch {
              }
              await Promise.all(decryptionKeyPackets.map(async function(decryptionKeyPacket) {
                if (!decryptionKeyPacket.isDecrypted()) {
                  throw new Error("Decryption key is not decrypted.");
                }
                const doConstantTimeDecryption = config$1.constantTimePKCS1Decryption && (pkeskPacket.publicKeyAlgorithm === enums.publicKey.rsaEncrypt || pkeskPacket.publicKeyAlgorithm === enums.publicKey.rsaEncryptSign || pkeskPacket.publicKeyAlgorithm === enums.publicKey.rsaSign || pkeskPacket.publicKeyAlgorithm === enums.publicKey.elgamal);
                if (doConstantTimeDecryption) {
                  const serialisedPKESK = pkeskPacket.write();
                  await Promise.all((expectedSymmetricAlgorithm ? [expectedSymmetricAlgorithm] : Array.from(config$1.constantTimePKCS1DecryptionSupportedSymmetricAlgorithms)).map(async (sessionKeyAlgorithm) => {
                    const pkeskPacketCopy = new PublicKeyEncryptedSessionKeyPacket();
                    pkeskPacketCopy.read(serialisedPKESK);
                    const randomSessionKey = {
                      sessionKeyAlgorithm,
                      sessionKey: generateSessionKey$1(sessionKeyAlgorithm)
                    };
                    try {
                      await pkeskPacketCopy.decrypt(decryptionKeyPacket, randomSessionKey);
                      decryptedSessionKeyPackets.push(pkeskPacketCopy);
                    } catch (err2) {
                      util11.printDebugError(err2);
                      exception2 = err2;
                    }
                  }));
                } else {
                  try {
                    await pkeskPacket.decrypt(decryptionKeyPacket);
                    const symmetricAlgorithm = expectedSymmetricAlgorithm || pkeskPacket.sessionKeyAlgorithm;
                    if (symmetricAlgorithm && !algos.includes(enums.write(enums.symmetric, symmetricAlgorithm))) {
                      throw new Error("A non-preferred symmetric algorithm was used.");
                    }
                    decryptedSessionKeyPackets.push(pkeskPacket);
                  } catch (err2) {
                    util11.printDebugError(err2);
                    exception2 = err2;
                  }
                }
              }));
            }));
            cancel(pkeskPacket.encrypted);
            pkeskPacket.encrypted = null;
          }));
        } else {
          throw new Error("No key or password specified.");
        }
        if (decryptedSessionKeyPackets.length > 0) {
          if (decryptedSessionKeyPackets.length > 1) {
            const seen = /* @__PURE__ */ new Set();
            decryptedSessionKeyPackets = decryptedSessionKeyPackets.filter((item) => {
              const k2 = item.sessionKeyAlgorithm + util11.uint8ArrayToString(item.sessionKey);
              if (seen.has(k2)) {
                return false;
              }
              seen.add(k2);
              return true;
            });
          }
          return decryptedSessionKeyPackets.map((packet) => ({
            data: packet.sessionKey,
            algorithm: packet.sessionKeyAlgorithm && enums.read(enums.symmetric, packet.sessionKeyAlgorithm)
          }));
        }
        throw exception2 || new Error("Session key decryption failed.");
      }
      /**
       * Get literal data that is the body of the message
       * @returns {(Uint8Array|null)} Literal body of the message as Uint8Array.
       */
      getLiteralData() {
        const msg = this.unwrapCompressed();
        const literal = msg.packets.findPacket(enums.packet.literalData);
        return literal && literal.getBytes() || null;
      }
      /**
       * Get filename from literal data packet
       * @returns {(String|null)} Filename of literal data packet as string.
       */
      getFilename() {
        const msg = this.unwrapCompressed();
        const literal = msg.packets.findPacket(enums.packet.literalData);
        return literal && literal.getFilename() || null;
      }
      /**
       * Get literal data as text
       * @returns {(String|null)} Literal body of the message interpreted as text.
       */
      getText() {
        const msg = this.unwrapCompressed();
        const literal = msg.packets.findPacket(enums.packet.literalData);
        if (literal) {
          return literal.getText();
        }
        return null;
      }
      /**
       * Generate a new session key object, taking the algorithm preferences of the passed encryption keys into account, if any.
       * @param {Array<PublicKey>} [encryptionKeys] - Public key(s) to select algorithm preferences for
       * @param {Date} [date] - Date to select algorithm preferences at
       * @param {Array<Object>} [userIDs] - User IDs to select algorithm preferences for
       * @param {Object} [config] - Full configuration, defaults to openpgp.config
       * @returns {Promise<{ data: Uint8Array, algorithm: String, aeadAlgorithm: undefined|String }>} Object with session key data and algorithms.
       * @async
       */
      static async generateSessionKey(encryptionKeys = [], date = /* @__PURE__ */ new Date(), userIDs = [], config$1 = config) {
        const { symmetricAlgo, aeadAlgo } = await getPreferredCipherSuite(encryptionKeys, date, userIDs, config$1);
        const symmetricAlgoName = enums.read(enums.symmetric, symmetricAlgo);
        const aeadAlgoName = aeadAlgo ? enums.read(enums.aead, aeadAlgo) : void 0;
        await Promise.all(encryptionKeys.map((key) => key.getEncryptionKey().catch(() => null).then((maybeKey) => {
          if (maybeKey && (maybeKey.keyPacket.algorithm === enums.publicKey.x25519 || maybeKey.keyPacket.algorithm === enums.publicKey.x448) && !aeadAlgoName && !util11.isAES(symmetricAlgo)) {
            throw new Error("Could not generate a session key compatible with the given `encryptionKeys`: X22519 and X448 keys can only be used to encrypt AES session keys; change `config.preferredSymmetricAlgorithm` accordingly.");
          }
        })));
        const sessionKeyData = generateSessionKey$1(symmetricAlgo);
        return { data: sessionKeyData, algorithm: symmetricAlgoName, aeadAlgorithm: aeadAlgoName };
      }
      /**
       * Encrypt the message either with public keys, passwords, or both at once.
       * @param {Array<PublicKey>} [encryptionKeys] - Public key(s) for message encryption
       * @param {Array<String>} [passwords] - Password(s) for message encryption
       * @param {Object} [sessionKey] - Session key in the form: { data:Uint8Array, algorithm:String, [aeadAlgorithm:String] }
       * @param {Boolean} [wildcard] - Use a key ID of 0 instead of the public key IDs
       * @param {Array<module:type/keyid~KeyID>} [encryptionKeyIDs] - Array of key IDs to use for encryption. Each encryptionKeyIDs[i] corresponds to keys[i]
       * @param {Date} [date] - Override the creation date of the literal package
       * @param {Array<Object>} [userIDs] - User IDs to encrypt for, e.g. [{ name:'Robert Receiver', email:'robert@openpgp.org' }]
       * @param {Object} [config] - Full configuration, defaults to openpgp.config
       * @returns {Promise<Message>} New message with encrypted content.
       * @async
       */
      async encrypt(encryptionKeys, passwords, sessionKey, wildcard = false, encryptionKeyIDs = [], date = /* @__PURE__ */ new Date(), userIDs = [], config$1 = config) {
        if (sessionKey) {
          if (!util11.isUint8Array(sessionKey.data) || !util11.isString(sessionKey.algorithm)) {
            throw new Error("Invalid session key for encryption.");
          }
        } else if (encryptionKeys && encryptionKeys.length) {
          sessionKey = await _Message.generateSessionKey(encryptionKeys, date, userIDs, config$1);
        } else if (passwords && passwords.length) {
          sessionKey = await _Message.generateSessionKey(void 0, void 0, void 0, config$1);
        } else {
          throw new Error("No keys, passwords, or session key provided.");
        }
        const { data: sessionKeyData, algorithm: algorithmName, aeadAlgorithm: aeadAlgorithmName } = sessionKey;
        const msg = await _Message.encryptSessionKey(sessionKeyData, algorithmName, aeadAlgorithmName, encryptionKeys, passwords, wildcard, encryptionKeyIDs, date, userIDs, config$1);
        const symEncryptedPacket = SymEncryptedIntegrityProtectedDataPacket.fromObject({
          version: aeadAlgorithmName ? 2 : 1,
          aeadAlgorithm: aeadAlgorithmName ? enums.write(enums.aead, aeadAlgorithmName) : null
        });
        symEncryptedPacket.packets = this.packets;
        const algorithm = enums.write(enums.symmetric, algorithmName);
        await symEncryptedPacket.encrypt(algorithm, sessionKeyData, config$1);
        msg.packets.push(symEncryptedPacket);
        symEncryptedPacket.packets = new PacketList();
        return msg;
      }
      /**
       * Encrypt a session key either with public keys, passwords, or both at once.
       * @param {Uint8Array} sessionKey - session key for encryption
       * @param {String} algorithmName - session key algorithm
       * @param {String} [aeadAlgorithmName] - AEAD algorithm, e.g. 'eax' or 'ocb'
       * @param {Array<PublicKey>} [encryptionKeys] - Public key(s) for message encryption
       * @param {Array<String>} [passwords] - For message encryption
       * @param {Boolean} [wildcard] - Use a key ID of 0 instead of the public key IDs
       * @param {Array<module:type/keyid~KeyID>} [encryptionKeyIDs] - Array of key IDs to use for encryption. Each encryptionKeyIDs[i] corresponds to encryptionKeys[i]
       * @param {Date} [date] - Override the date
       * @param {Array} [userIDs] - User IDs to encrypt for, e.g. [{ name:'Robert Receiver', email:'robert@openpgp.org' }]
       * @param {Object} [config] - Full configuration, defaults to openpgp.config
       * @returns {Promise<Message>} New message with encrypted content.
       * @async
       */
      static async encryptSessionKey(sessionKey, algorithmName, aeadAlgorithmName, encryptionKeys, passwords, wildcard = false, encryptionKeyIDs = [], date = /* @__PURE__ */ new Date(), userIDs = [], config$1 = config) {
        const packetlist = new PacketList();
        const symmetricAlgorithm = enums.write(enums.symmetric, algorithmName);
        const aeadAlgorithm = aeadAlgorithmName && enums.write(enums.aead, aeadAlgorithmName);
        if (encryptionKeys) {
          const results = await Promise.all(encryptionKeys.map(async function(primaryKey, i4) {
            const encryptionKey = await primaryKey.getEncryptionKey(encryptionKeyIDs[i4], date, userIDs, config$1);
            const pkESKeyPacket = PublicKeyEncryptedSessionKeyPacket.fromObject({
              version: aeadAlgorithm ? 6 : 3,
              encryptionKeyPacket: encryptionKey.keyPacket,
              anonymousRecipient: wildcard,
              sessionKey,
              sessionKeyAlgorithm: symmetricAlgorithm
            });
            await pkESKeyPacket.encrypt(encryptionKey.keyPacket);
            delete pkESKeyPacket.sessionKey;
            return pkESKeyPacket;
          }));
          packetlist.push(...results);
        }
        if (passwords) {
          const testDecrypt = async function(keyPacket, password) {
            try {
              await keyPacket.decrypt(password, config$1);
              return 1;
            } catch {
              return 0;
            }
          };
          const sum = (accumulator, currentValue) => accumulator + currentValue;
          const encryptPassword = async function(sessionKey2, algorithm, aeadAlgorithm2, password) {
            const symEncryptedSessionKeyPacket = new SymEncryptedSessionKeyPacket(config$1);
            symEncryptedSessionKeyPacket.sessionKey = sessionKey2;
            symEncryptedSessionKeyPacket.sessionKeyAlgorithm = algorithm;
            if (aeadAlgorithm2) {
              symEncryptedSessionKeyPacket.aeadAlgorithm = aeadAlgorithm2;
            }
            await symEncryptedSessionKeyPacket.encrypt(password, config$1);
            if (config$1.passwordCollisionCheck) {
              const results2 = await Promise.all(passwords.map((pwd) => testDecrypt(symEncryptedSessionKeyPacket, pwd)));
              if (results2.reduce(sum) !== 1) {
                return encryptPassword(sessionKey2, algorithm, password);
              }
            }
            delete symEncryptedSessionKeyPacket.sessionKey;
            return symEncryptedSessionKeyPacket;
          };
          const results = await Promise.all(passwords.map((pwd) => encryptPassword(sessionKey, symmetricAlgorithm, aeadAlgorithm, pwd)));
          packetlist.push(...results);
        }
        return new _Message(packetlist);
      }
      /**
       * Sign the message (the literal data packet of the message)
       * @param {Array<PrivateKey>} signingKeys - private keys with decrypted secret key data for signing
       * @param {Array<Key>} recipientKeys - recipient keys to get the signing preferences from
       * @param {Signature} [signature] - Any existing detached signature to add to the message
       * @param {Array<module:type/keyid~KeyID>} [signingKeyIDs] - Array of key IDs to use for signing. Each signingKeyIDs[i] corresponds to signingKeys[i]
       * @param {Date} [date] - Override the creation time of the signature
       * @param {Array<UserID>} [signingUserIDs] - User IDs to sign with, e.g. [{ name:'Steve Sender', email:'steve@openpgp.org' }]
       * @param {Array<UserID>} [recipientUserIDs] - User IDs associated with `recipientKeys` to get the signing preferences from
       * @param {Array} [notations] - Notation Data to add to the signatures, e.g. [{ name: 'test@example.org', value: new TextEncoder().encode('test'), humanReadable: true, critical: false }]
       * @param {Object} [config] - Full configuration, defaults to openpgp.config
       * @returns {Promise<Message>} New message with signed content.
       * @async
       */
      async sign(signingKeys = [], recipientKeys = [], signature = null, signingKeyIDs = [], date = /* @__PURE__ */ new Date(), signingUserIDs = [], recipientUserIDs = [], notations = [], config$1 = config) {
        const packetlist = new PacketList();
        const literalDataPacket = this.packets.findPacket(enums.packet.literalData);
        if (!literalDataPacket) {
          throw new Error("No literal data packet to sign.");
        }
        const signaturePackets = await createSignaturePackets(literalDataPacket, signingKeys, recipientKeys, signature, signingKeyIDs, date, signingUserIDs, recipientUserIDs, notations, false, config$1);
        const onePassSignaturePackets = signaturePackets.map((signaturePacket, i4) => OnePassSignaturePacket.fromSignaturePacket(signaturePacket, i4 === 0)).reverse();
        packetlist.push(...onePassSignaturePackets);
        packetlist.push(literalDataPacket);
        packetlist.push(...signaturePackets);
        return new _Message(packetlist);
      }
      /**
       * Compresses the message (the literal and -if signed- signature data packets of the message)
       * @param {module:enums.compression} algo - compression algorithm
       * @param {Object} [config] - Full configuration, defaults to openpgp.config
       * @returns {Message} New message with compressed content.
       */
      compress(algo, config$1 = config) {
        if (algo === enums.compression.uncompressed) {
          return this;
        }
        const compressed = new CompressedDataPacket(config$1);
        compressed.algorithm = algo;
        compressed.packets = this.packets;
        const packetList = new PacketList();
        packetList.push(compressed);
        return new _Message(packetList);
      }
      /**
       * Create a detached signature for the message (the literal data packet of the message)
       * @param {Array<PrivateKey>} signingKeys - private keys with decrypted secret key data for signing
       * @param {Array<Key>} recipientKeys - recipient keys to get the signing preferences from
       * @param {Signature} [signature] - Any existing detached signature
       * @param {Array<module:type/keyid~KeyID>} [signingKeyIDs] - Array of key IDs to use for signing. Each signingKeyIDs[i] corresponds to signingKeys[i]
       * @param {Date} [date] - Override the creation time of the signature
       * @param {Array<UserID>} [signingUserIDs] - User IDs to sign with, e.g. [{ name:'Steve Sender', email:'steve@openpgp.org' }]
       * @param {Array<UserID>} [recipientUserIDs] - User IDs associated with `recipientKeys` to get the signing preferences from
       * @param {Array} [notations] - Notation Data to add to the signatures, e.g. [{ name: 'test@example.org', value: new TextEncoder().encode('test'), humanReadable: true, critical: false }]
       * @param {Object} [config] - Full configuration, defaults to openpgp.config
       * @returns {Promise<Signature>} New detached signature of message content.
       * @async
       */
      async signDetached(signingKeys = [], recipientKeys = [], signature = null, signingKeyIDs = [], recipientKeyIDs = [], date = /* @__PURE__ */ new Date(), userIDs = [], notations = [], config$1 = config) {
        const literalDataPacket = this.packets.findPacket(enums.packet.literalData);
        if (!literalDataPacket) {
          throw new Error("No literal data packet to sign.");
        }
        return new Signature(await createSignaturePackets(literalDataPacket, signingKeys, recipientKeys, signature, signingKeyIDs, recipientKeyIDs, date, userIDs, notations, true, config$1));
      }
      /**
       * Verify message signatures
       * @param {Array<PublicKey>} verificationKeys - Array of public keys to verify signatures
       * @param {Date} [date] - Verify the signature against the given date, i.e. check signature creation time < date < expiration time
       * @param {Object} [config] - Full configuration, defaults to openpgp.config
       * @returns {Promise<Array<{
       *   keyID: module:type/keyid~KeyID,
       *   signature: Promise<Signature>,
       *   verified: Promise<true>
       * }>>} List of signer's keyID and validity of signatures.
       * @async
       */
      async verify(verificationKeys, date = /* @__PURE__ */ new Date(), config$1 = config) {
        const msg = this.unwrapCompressed();
        const literalDataList = msg.packets.filterByTag(enums.packet.literalData);
        if (literalDataList.length !== 1) {
          throw new Error("Can only verify message with one literal data packet.");
        }
        let packets = msg.packets;
        if (isArrayStream(packets.stream)) {
          packets = packets.concat(await readToEnd(packets.stream, (_) => _ || []));
        }
        const onePassSigList = packets.filterByTag(enums.packet.onePassSignature).reverse();
        const signatureList = packets.filterByTag(enums.packet.signature);
        if (onePassSigList.length && !signatureList.length && util11.isStream(packets.stream) && !isArrayStream(packets.stream)) {
          await Promise.all(onePassSigList.map(async (onePassSig) => {
            onePassSig.correspondingSig = new Promise((resolve4, reject3) => {
              onePassSig.correspondingSigResolve = resolve4;
              onePassSig.correspondingSigReject = reject3;
            });
            onePassSig.signatureData = fromAsync(async () => (await onePassSig.correspondingSig).signatureData);
            onePassSig.hashed = readToEnd(await onePassSig.hash(onePassSig.signatureType, literalDataList[0], void 0, false));
            onePassSig.hashed.catch(() => {
            });
          }));
          packets.stream = transformPair(packets.stream, async (readable2, writable2) => {
            const reader = getReader(readable2);
            const writer = getWriter(writable2);
            try {
              for (let i4 = 0; i4 < onePassSigList.length; i4++) {
                const { value: signature } = await reader.read();
                onePassSigList[i4].correspondingSigResolve(signature);
              }
              await reader.readToEnd();
              await writer.ready;
              await writer.close();
            } catch (e) {
              onePassSigList.forEach((onePassSig) => {
                onePassSig.correspondingSigReject(e);
              });
              await writer.abort(e);
            }
          });
          return createVerificationObjects(onePassSigList, literalDataList, verificationKeys, date, false, config$1);
        }
        return createVerificationObjects(signatureList, literalDataList, verificationKeys, date, false, config$1);
      }
      /**
       * Verify detached message signature
       * @param {Array<PublicKey>} verificationKeys - Array of public keys to verify signatures
       * @param {Signature} signature
       * @param {Date} date - Verify the signature against the given date, i.e. check signature creation time < date < expiration time
       * @param {Object} [config] - Full configuration, defaults to openpgp.config
       * @returns {Promise<Array<{
       *   keyID: module:type/keyid~KeyID,
       *   signature: Promise<Signature>,
       *   verified: Promise<true>
       * }>>} List of signer's keyID and validity of signature.
       * @async needed to avoid breaking change until next major release
       */
      // eslint-disable-next-line @typescript-eslint/require-await
      async verifyDetached(signature, verificationKeys, date = /* @__PURE__ */ new Date(), config$1 = config) {
        const msg = this.unwrapCompressed();
        const literalDataList = msg.packets.filterByTag(enums.packet.literalData);
        if (literalDataList.length !== 1) {
          throw new Error("Can only verify message with one literal data packet.");
        }
        const signatureList = signature.packets.filterByTag(enums.packet.signature);
        return createVerificationObjects(signatureList, literalDataList, verificationKeys, date, true, config$1);
      }
      /**
       * Unwrap compressed message
       * @returns {Message} Message Content of compressed message.
       */
      unwrapCompressed() {
        const compressed = this.packets.filterByTag(enums.packet.compressedData);
        if (compressed.length) {
          return new _Message(compressed[0].packets);
        }
        return this;
      }
      /**
       * Append signature to unencrypted message object
       * @param {String|Uint8Array} detachedSignature - The detached ASCII-armored or Uint8Array PGP signature
       * @param {Object} [config] - Full configuration, defaults to openpgp.config
       */
      async appendSignature(detachedSignature, config$1 = config) {
        await this.packets.read(util11.isUint8Array(detachedSignature) ? detachedSignature : (await unarmor(detachedSignature)).data, allowedDetachedSignaturePackets, config$1);
      }
      /**
       * Returns binary encoded message
       * @returns {ReadableStream<Uint8Array>} Binary message.
       */
      write() {
        return this.packets.write();
      }
      /**
       * Returns ASCII armored text of message
       * @param {Object} [config] - Full configuration, defaults to openpgp.config
       * @returns {ReadableStream<String>} ASCII armor.
       */
      armor(config$1 = config) {
        const trailingPacket = this.packets[this.packets.length - 1];
        const emitChecksum = trailingPacket.constructor.tag === SymEncryptedIntegrityProtectedDataPacket.tag ? trailingPacket.version !== 2 : this.packets.some((packet) => packet.constructor.tag === SignaturePacket.tag && packet.version !== 6);
        return armor(enums.armor.message, this.write(), null, null, null, emitChecksum, config$1);
      }
    };
    defaultConfigPropsCount = Object.keys(config).length;
    crypto$2 = nc && typeof nc === "object" && "webcrypto" in nc ? nc.webcrypto : nc && typeof nc === "object" && "randomBytes" in nc ? nc : void 0;
    isLE = /* @__PURE__ */ (() => new Uint8Array(new Uint32Array([287454020]).buffer)[0] === 68)();
    swap32IfBE = isLE ? (u2) => u2 : byteSwap32;
    hasHexBuiltin = /* @__PURE__ */ (() => (
      // @ts-ignore
      typeof Uint8Array.from([]).toHex === "function" && typeof Uint8Array.fromHex === "function"
    ))();
    hexes = /* @__PURE__ */ Array.from({ length: 256 }, (_, i4) => i4.toString(16).padStart(2, "0"));
    asciis = { _0: 48, _9: 57, A: 65, F: 70, a: 97, f: 102 };
    Hash = class {
    };
    wrapConstructor = createHasher;
    _0n$6 = /* @__PURE__ */ BigInt(0);
    _1n$7 = /* @__PURE__ */ BigInt(1);
    isPosBig = (n2) => typeof n2 === "bigint" && _0n$6 <= n2;
    bitMask = (n2) => (_1n$7 << BigInt(n2)) - _1n$7;
    _0n$5 = BigInt(0);
    _1n$6 = BigInt(1);
    _2n$6 = /* @__PURE__ */ BigInt(2);
    _3n$2 = /* @__PURE__ */ BigInt(3);
    _4n$1 = /* @__PURE__ */ BigInt(4);
    _5n = /* @__PURE__ */ BigInt(5);
    _7n$1 = /* @__PURE__ */ BigInt(7);
    _8n$1 = /* @__PURE__ */ BigInt(8);
    _9n = /* @__PURE__ */ BigInt(9);
    _16n = /* @__PURE__ */ BigInt(16);
    FIELD_FIELDS = [
      "create",
      "isValid",
      "is0",
      "neg",
      "inv",
      "sqrt",
      "sqr",
      "eql",
      "add",
      "sub",
      "mul",
      "pow",
      "div",
      "addN",
      "subN",
      "mulN",
      "sqrN"
    ];
    HashMD = class extends Hash {
      constructor(blockLen, outputLen, padOffset, isLE2) {
        super();
        this.finished = false;
        this.length = 0;
        this.pos = 0;
        this.destroyed = false;
        this.blockLen = blockLen;
        this.outputLen = outputLen;
        this.padOffset = padOffset;
        this.isLE = isLE2;
        this.buffer = new Uint8Array(blockLen);
        this.view = createView(this.buffer);
      }
      update(data) {
        aexists(this);
        data = toBytes(data);
        abytes(data);
        const { view, buffer: buffer3, blockLen } = this;
        const len = data.length;
        for (let pos = 0; pos < len; ) {
          const take10 = Math.min(blockLen - this.pos, len - pos);
          if (take10 === blockLen) {
            const dataView2 = createView(data);
            for (; blockLen <= len - pos; pos += blockLen)
              this.process(dataView2, pos);
            continue;
          }
          buffer3.set(data.subarray(pos, pos + take10), this.pos);
          this.pos += take10;
          pos += take10;
          if (this.pos === blockLen) {
            this.process(view, 0);
            this.pos = 0;
          }
        }
        this.length += data.length;
        this.roundClean();
        return this;
      }
      digestInto(out) {
        aexists(this);
        aoutput(out, this);
        this.finished = true;
        const { buffer: buffer3, view, blockLen, isLE: isLE2 } = this;
        let { pos } = this;
        buffer3[pos++] = 128;
        clean(this.buffer.subarray(pos));
        if (this.padOffset > blockLen - pos) {
          this.process(view, 0);
          pos = 0;
        }
        for (let i4 = pos; i4 < blockLen; i4++)
          buffer3[i4] = 0;
        setBigUint64(view, blockLen - 8, BigInt(this.length * 8), isLE2);
        this.process(view, 0);
        const oview = createView(out);
        const len = this.outputLen;
        if (len % 4)
          throw new Error("_sha2: outputLen should be aligned to 32bit");
        const outLen = len / 4;
        const state = this.get();
        if (outLen > state.length)
          throw new Error("_sha2: outputLen bigger than state");
        for (let i4 = 0; i4 < outLen; i4++)
          oview.setUint32(4 * i4, state[i4], isLE2);
      }
      digest() {
        const { buffer: buffer3, outputLen } = this;
        this.digestInto(buffer3);
        const res = buffer3.slice(0, outputLen);
        this.destroy();
        return res;
      }
      _cloneInto(to) {
        to || (to = new this.constructor());
        to.set(...this.get());
        const { blockLen, buffer: buffer3, length, finished: finished7, destroyed, pos } = this;
        to.destroyed = destroyed;
        to.finished = finished7;
        to.length = length;
        to.pos = pos;
        if (length % blockLen)
          to.buffer.set(buffer3);
        return to;
      }
      clone() {
        return this._cloneInto();
      }
    };
    SHA256_IV = /* @__PURE__ */ Uint32Array.from([
      1779033703,
      3144134277,
      1013904242,
      2773480762,
      1359893119,
      2600822924,
      528734635,
      1541459225
    ]);
    SHA224_IV = /* @__PURE__ */ Uint32Array.from([
      3238371032,
      914150663,
      812702999,
      4144912697,
      4290775857,
      1750603025,
      1694076839,
      3204075428
    ]);
    SHA384_IV = /* @__PURE__ */ Uint32Array.from([
      3418070365,
      3238371032,
      1654270250,
      914150663,
      2438529370,
      812702999,
      355462360,
      4144912697,
      1731405415,
      4290775857,
      2394180231,
      1750603025,
      3675008525,
      1694076839,
      1203062813,
      3204075428
    ]);
    SHA512_IV = /* @__PURE__ */ Uint32Array.from([
      1779033703,
      4089235720,
      3144134277,
      2227873595,
      1013904242,
      4271175723,
      2773480762,
      1595750129,
      1359893119,
      2917565137,
      2600822924,
      725511199,
      528734635,
      4215389547,
      1541459225,
      327033209
    ]);
    U32_MASK64 = /* @__PURE__ */ BigInt(2 ** 32 - 1);
    _32n = /* @__PURE__ */ BigInt(32);
    shrSH = (h2, _l, s) => h2 >>> s;
    shrSL = (h2, l, s) => h2 << 32 - s | l >>> s;
    rotrSH = (h2, l, s) => h2 >>> s | l << 32 - s;
    rotrSL = (h2, l, s) => h2 << 32 - s | l >>> s;
    rotrBH = (h2, l, s) => h2 << 64 - s | l >>> s - 32;
    rotrBL = (h2, l, s) => h2 >>> s - 32 | l << 64 - s;
    rotlSH = (h2, l, s) => h2 << s | l >>> 32 - s;
    rotlSL = (h2, l, s) => l << s | h2 >>> 32 - s;
    rotlBH = (h2, l, s) => l << s - 32 | h2 >>> 64 - s;
    rotlBL = (h2, l, s) => h2 << s - 32 | l >>> 64 - s;
    add3L = (Al, Bl, Cl) => (Al >>> 0) + (Bl >>> 0) + (Cl >>> 0);
    add3H = (low, Ah, Bh, Ch) => Ah + Bh + Ch + (low / 2 ** 32 | 0) | 0;
    add4L = (Al, Bl, Cl, Dl) => (Al >>> 0) + (Bl >>> 0) + (Cl >>> 0) + (Dl >>> 0);
    add4H = (low, Ah, Bh, Ch, Dh) => Ah + Bh + Ch + Dh + (low / 2 ** 32 | 0) | 0;
    add5L = (Al, Bl, Cl, Dl, El) => (Al >>> 0) + (Bl >>> 0) + (Cl >>> 0) + (Dl >>> 0) + (El >>> 0);
    add5H = (low, Ah, Bh, Ch, Dh, Eh) => Ah + Bh + Ch + Dh + Eh + (low / 2 ** 32 | 0) | 0;
    SHA256_K = /* @__PURE__ */ Uint32Array.from([
      1116352408,
      1899447441,
      3049323471,
      3921009573,
      961987163,
      1508970993,
      2453635748,
      2870763221,
      3624381080,
      310598401,
      607225278,
      1426881987,
      1925078388,
      2162078206,
      2614888103,
      3248222580,
      3835390401,
      4022224774,
      264347078,
      604807628,
      770255983,
      1249150122,
      1555081692,
      1996064986,
      2554220882,
      2821834349,
      2952996808,
      3210313671,
      3336571891,
      3584528711,
      113926993,
      338241895,
      666307205,
      773529912,
      1294757372,
      1396182291,
      1695183700,
      1986661051,
      2177026350,
      2456956037,
      2730485921,
      2820302411,
      3259730800,
      3345764771,
      3516065817,
      3600352804,
      4094571909,
      275423344,
      430227734,
      506948616,
      659060556,
      883997877,
      958139571,
      1322822218,
      1537002063,
      1747873779,
      1955562222,
      2024104815,
      2227730452,
      2361852424,
      2428436474,
      2756734187,
      3204031479,
      3329325298
    ]);
    SHA256_W = /* @__PURE__ */ new Uint32Array(64);
    SHA256 = class extends HashMD {
      constructor(outputLen = 32) {
        super(64, outputLen, 8, false);
        this.A = SHA256_IV[0] | 0;
        this.B = SHA256_IV[1] | 0;
        this.C = SHA256_IV[2] | 0;
        this.D = SHA256_IV[3] | 0;
        this.E = SHA256_IV[4] | 0;
        this.F = SHA256_IV[5] | 0;
        this.G = SHA256_IV[6] | 0;
        this.H = SHA256_IV[7] | 0;
      }
      get() {
        const { A: A2, B, C, D: D3, E, F, G: G3, H: H2 } = this;
        return [A2, B, C, D3, E, F, G3, H2];
      }
      // prettier-ignore
      set(A2, B, C, D3, E, F, G3, H2) {
        this.A = A2 | 0;
        this.B = B | 0;
        this.C = C | 0;
        this.D = D3 | 0;
        this.E = E | 0;
        this.F = F | 0;
        this.G = G3 | 0;
        this.H = H2 | 0;
      }
      process(view, offset) {
        for (let i4 = 0; i4 < 16; i4++, offset += 4)
          SHA256_W[i4] = view.getUint32(offset, false);
        for (let i4 = 16; i4 < 64; i4++) {
          const W15 = SHA256_W[i4 - 15];
          const W2 = SHA256_W[i4 - 2];
          const s0 = rotr(W15, 7) ^ rotr(W15, 18) ^ W15 >>> 3;
          const s1 = rotr(W2, 17) ^ rotr(W2, 19) ^ W2 >>> 10;
          SHA256_W[i4] = s1 + SHA256_W[i4 - 7] + s0 + SHA256_W[i4 - 16] | 0;
        }
        let { A: A2, B, C, D: D3, E, F, G: G3, H: H2 } = this;
        for (let i4 = 0; i4 < 64; i4++) {
          const sigma1 = rotr(E, 6) ^ rotr(E, 11) ^ rotr(E, 25);
          const T1 = H2 + sigma1 + Chi$1(E, F, G3) + SHA256_K[i4] + SHA256_W[i4] | 0;
          const sigma0 = rotr(A2, 2) ^ rotr(A2, 13) ^ rotr(A2, 22);
          const T2 = sigma0 + Maj(A2, B, C) | 0;
          H2 = G3;
          G3 = F;
          F = E;
          E = D3 + T1 | 0;
          D3 = C;
          C = B;
          B = A2;
          A2 = T1 + T2 | 0;
        }
        A2 = A2 + this.A | 0;
        B = B + this.B | 0;
        C = C + this.C | 0;
        D3 = D3 + this.D | 0;
        E = E + this.E | 0;
        F = F + this.F | 0;
        G3 = G3 + this.G | 0;
        H2 = H2 + this.H | 0;
        this.set(A2, B, C, D3, E, F, G3, H2);
      }
      roundClean() {
        clean(SHA256_W);
      }
      destroy() {
        this.set(0, 0, 0, 0, 0, 0, 0, 0);
        clean(this.buffer);
      }
    };
    SHA224 = class extends SHA256 {
      constructor() {
        super(28);
        this.A = SHA224_IV[0] | 0;
        this.B = SHA224_IV[1] | 0;
        this.C = SHA224_IV[2] | 0;
        this.D = SHA224_IV[3] | 0;
        this.E = SHA224_IV[4] | 0;
        this.F = SHA224_IV[5] | 0;
        this.G = SHA224_IV[6] | 0;
        this.H = SHA224_IV[7] | 0;
      }
    };
    K512 = /* @__PURE__ */ (() => split2([
      "0x428a2f98d728ae22",
      "0x7137449123ef65cd",
      "0xb5c0fbcfec4d3b2f",
      "0xe9b5dba58189dbbc",
      "0x3956c25bf348b538",
      "0x59f111f1b605d019",
      "0x923f82a4af194f9b",
      "0xab1c5ed5da6d8118",
      "0xd807aa98a3030242",
      "0x12835b0145706fbe",
      "0x243185be4ee4b28c",
      "0x550c7dc3d5ffb4e2",
      "0x72be5d74f27b896f",
      "0x80deb1fe3b1696b1",
      "0x9bdc06a725c71235",
      "0xc19bf174cf692694",
      "0xe49b69c19ef14ad2",
      "0xefbe4786384f25e3",
      "0x0fc19dc68b8cd5b5",
      "0x240ca1cc77ac9c65",
      "0x2de92c6f592b0275",
      "0x4a7484aa6ea6e483",
      "0x5cb0a9dcbd41fbd4",
      "0x76f988da831153b5",
      "0x983e5152ee66dfab",
      "0xa831c66d2db43210",
      "0xb00327c898fb213f",
      "0xbf597fc7beef0ee4",
      "0xc6e00bf33da88fc2",
      "0xd5a79147930aa725",
      "0x06ca6351e003826f",
      "0x142929670a0e6e70",
      "0x27b70a8546d22ffc",
      "0x2e1b21385c26c926",
      "0x4d2c6dfc5ac42aed",
      "0x53380d139d95b3df",
      "0x650a73548baf63de",
      "0x766a0abb3c77b2a8",
      "0x81c2c92e47edaee6",
      "0x92722c851482353b",
      "0xa2bfe8a14cf10364",
      "0xa81a664bbc423001",
      "0xc24b8b70d0f89791",
      "0xc76c51a30654be30",
      "0xd192e819d6ef5218",
      "0xd69906245565a910",
      "0xf40e35855771202a",
      "0x106aa07032bbd1b8",
      "0x19a4c116b8d2d0c8",
      "0x1e376c085141ab53",
      "0x2748774cdf8eeb99",
      "0x34b0bcb5e19b48a8",
      "0x391c0cb3c5c95a63",
      "0x4ed8aa4ae3418acb",
      "0x5b9cca4f7763e373",
      "0x682e6ff3d6b2b8a3",
      "0x748f82ee5defb2fc",
      "0x78a5636f43172f60",
      "0x84c87814a1f0ab72",
      "0x8cc702081a6439ec",
      "0x90befffa23631e28",
      "0xa4506cebde82bde9",
      "0xbef9a3f7b2c67915",
      "0xc67178f2e372532b",
      "0xca273eceea26619c",
      "0xd186b8c721c0c207",
      "0xeada7dd6cde0eb1e",
      "0xf57d4f7fee6ed178",
      "0x06f067aa72176fba",
      "0x0a637dc5a2c898a6",
      "0x113f9804bef90dae",
      "0x1b710b35131c471b",
      "0x28db77f523047d84",
      "0x32caab7b40c72493",
      "0x3c9ebe0a15c9bebc",
      "0x431d67c49c100d4c",
      "0x4cc5d4becb3e42b6",
      "0x597f299cfc657e2a",
      "0x5fcb6fab3ad6faec",
      "0x6c44198c4a475817"
    ].map((n2) => BigInt(n2))))();
    SHA512_Kh = /* @__PURE__ */ (() => K512[0])();
    SHA512_Kl = /* @__PURE__ */ (() => K512[1])();
    SHA512_W_H = /* @__PURE__ */ new Uint32Array(80);
    SHA512_W_L = /* @__PURE__ */ new Uint32Array(80);
    SHA512 = class extends HashMD {
      constructor(outputLen = 64) {
        super(128, outputLen, 16, false);
        this.Ah = SHA512_IV[0] | 0;
        this.Al = SHA512_IV[1] | 0;
        this.Bh = SHA512_IV[2] | 0;
        this.Bl = SHA512_IV[3] | 0;
        this.Ch = SHA512_IV[4] | 0;
        this.Cl = SHA512_IV[5] | 0;
        this.Dh = SHA512_IV[6] | 0;
        this.Dl = SHA512_IV[7] | 0;
        this.Eh = SHA512_IV[8] | 0;
        this.El = SHA512_IV[9] | 0;
        this.Fh = SHA512_IV[10] | 0;
        this.Fl = SHA512_IV[11] | 0;
        this.Gh = SHA512_IV[12] | 0;
        this.Gl = SHA512_IV[13] | 0;
        this.Hh = SHA512_IV[14] | 0;
        this.Hl = SHA512_IV[15] | 0;
      }
      // prettier-ignore
      get() {
        const { Ah, Al, Bh, Bl, Ch, Cl, Dh, Dl, Eh, El, Fh, Fl, Gh, Gl, Hh, Hl } = this;
        return [Ah, Al, Bh, Bl, Ch, Cl, Dh, Dl, Eh, El, Fh, Fl, Gh, Gl, Hh, Hl];
      }
      // prettier-ignore
      set(Ah, Al, Bh, Bl, Ch, Cl, Dh, Dl, Eh, El, Fh, Fl, Gh, Gl, Hh, Hl) {
        this.Ah = Ah | 0;
        this.Al = Al | 0;
        this.Bh = Bh | 0;
        this.Bl = Bl | 0;
        this.Ch = Ch | 0;
        this.Cl = Cl | 0;
        this.Dh = Dh | 0;
        this.Dl = Dl | 0;
        this.Eh = Eh | 0;
        this.El = El | 0;
        this.Fh = Fh | 0;
        this.Fl = Fl | 0;
        this.Gh = Gh | 0;
        this.Gl = Gl | 0;
        this.Hh = Hh | 0;
        this.Hl = Hl | 0;
      }
      process(view, offset) {
        for (let i4 = 0; i4 < 16; i4++, offset += 4) {
          SHA512_W_H[i4] = view.getUint32(offset);
          SHA512_W_L[i4] = view.getUint32(offset += 4);
        }
        for (let i4 = 16; i4 < 80; i4++) {
          const W15h = SHA512_W_H[i4 - 15] | 0;
          const W15l = SHA512_W_L[i4 - 15] | 0;
          const s0h = rotrSH(W15h, W15l, 1) ^ rotrSH(W15h, W15l, 8) ^ shrSH(W15h, W15l, 7);
          const s0l = rotrSL(W15h, W15l, 1) ^ rotrSL(W15h, W15l, 8) ^ shrSL(W15h, W15l, 7);
          const W2h = SHA512_W_H[i4 - 2] | 0;
          const W2l = SHA512_W_L[i4 - 2] | 0;
          const s1h = rotrSH(W2h, W2l, 19) ^ rotrBH(W2h, W2l, 61) ^ shrSH(W2h, W2l, 6);
          const s1l = rotrSL(W2h, W2l, 19) ^ rotrBL(W2h, W2l, 61) ^ shrSL(W2h, W2l, 6);
          const SUMl = add4L(s0l, s1l, SHA512_W_L[i4 - 7], SHA512_W_L[i4 - 16]);
          const SUMh = add4H(SUMl, s0h, s1h, SHA512_W_H[i4 - 7], SHA512_W_H[i4 - 16]);
          SHA512_W_H[i4] = SUMh | 0;
          SHA512_W_L[i4] = SUMl | 0;
        }
        let { Ah, Al, Bh, Bl, Ch, Cl, Dh, Dl, Eh, El, Fh, Fl, Gh, Gl, Hh, Hl } = this;
        for (let i4 = 0; i4 < 80; i4++) {
          const sigma1h = rotrSH(Eh, El, 14) ^ rotrSH(Eh, El, 18) ^ rotrBH(Eh, El, 41);
          const sigma1l = rotrSL(Eh, El, 14) ^ rotrSL(Eh, El, 18) ^ rotrBL(Eh, El, 41);
          const CHIh = Eh & Fh ^ ~Eh & Gh;
          const CHIl = El & Fl ^ ~El & Gl;
          const T1ll = add5L(Hl, sigma1l, CHIl, SHA512_Kl[i4], SHA512_W_L[i4]);
          const T1h = add5H(T1ll, Hh, sigma1h, CHIh, SHA512_Kh[i4], SHA512_W_H[i4]);
          const T1l = T1ll | 0;
          const sigma0h = rotrSH(Ah, Al, 28) ^ rotrBH(Ah, Al, 34) ^ rotrBH(Ah, Al, 39);
          const sigma0l = rotrSL(Ah, Al, 28) ^ rotrBL(Ah, Al, 34) ^ rotrBL(Ah, Al, 39);
          const MAJh = Ah & Bh ^ Ah & Ch ^ Bh & Ch;
          const MAJl = Al & Bl ^ Al & Cl ^ Bl & Cl;
          Hh = Gh | 0;
          Hl = Gl | 0;
          Gh = Fh | 0;
          Gl = Fl | 0;
          Fh = Eh | 0;
          Fl = El | 0;
          ({ h: Eh, l: El } = add$1(Dh | 0, Dl | 0, T1h | 0, T1l | 0));
          Dh = Ch | 0;
          Dl = Cl | 0;
          Ch = Bh | 0;
          Cl = Bl | 0;
          Bh = Ah | 0;
          Bl = Al | 0;
          const All = add3L(T1l, sigma0l, MAJl);
          Ah = add3H(All, T1h, sigma0h, MAJh);
          Al = All | 0;
        }
        ({ h: Ah, l: Al } = add$1(this.Ah | 0, this.Al | 0, Ah | 0, Al | 0));
        ({ h: Bh, l: Bl } = add$1(this.Bh | 0, this.Bl | 0, Bh | 0, Bl | 0));
        ({ h: Ch, l: Cl } = add$1(this.Ch | 0, this.Cl | 0, Ch | 0, Cl | 0));
        ({ h: Dh, l: Dl } = add$1(this.Dh | 0, this.Dl | 0, Dh | 0, Dl | 0));
        ({ h: Eh, l: El } = add$1(this.Eh | 0, this.El | 0, Eh | 0, El | 0));
        ({ h: Fh, l: Fl } = add$1(this.Fh | 0, this.Fl | 0, Fh | 0, Fl | 0));
        ({ h: Gh, l: Gl } = add$1(this.Gh | 0, this.Gl | 0, Gh | 0, Gl | 0));
        ({ h: Hh, l: Hl } = add$1(this.Hh | 0, this.Hl | 0, Hh | 0, Hl | 0));
        this.set(Ah, Al, Bh, Bl, Ch, Cl, Dh, Dl, Eh, El, Fh, Fl, Gh, Gl, Hh, Hl);
      }
      roundClean() {
        clean(SHA512_W_H, SHA512_W_L);
      }
      destroy() {
        clean(this.buffer);
        this.set(0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0);
      }
    };
    SHA384 = class extends SHA512 {
      constructor() {
        super(48);
        this.Ah = SHA384_IV[0] | 0;
        this.Al = SHA384_IV[1] | 0;
        this.Bh = SHA384_IV[2] | 0;
        this.Bl = SHA384_IV[3] | 0;
        this.Ch = SHA384_IV[4] | 0;
        this.Cl = SHA384_IV[5] | 0;
        this.Dh = SHA384_IV[6] | 0;
        this.Dl = SHA384_IV[7] | 0;
        this.Eh = SHA384_IV[8] | 0;
        this.El = SHA384_IV[9] | 0;
        this.Fh = SHA384_IV[10] | 0;
        this.Fl = SHA384_IV[11] | 0;
        this.Gh = SHA384_IV[12] | 0;
        this.Gl = SHA384_IV[13] | 0;
        this.Hh = SHA384_IV[14] | 0;
        this.Hl = SHA384_IV[15] | 0;
      }
    };
    sha256$1 = /* @__PURE__ */ createHasher(() => new SHA256());
    sha224$1 = /* @__PURE__ */ createHasher(() => new SHA224());
    sha512$1 = /* @__PURE__ */ createHasher(() => new SHA512());
    sha384$1 = /* @__PURE__ */ createHasher(() => new SHA384());
    HMAC = class extends Hash {
      constructor(hash2, _key) {
        super();
        this.finished = false;
        this.destroyed = false;
        ahash(hash2);
        const key = toBytes(_key);
        this.iHash = hash2.create();
        if (typeof this.iHash.update !== "function")
          throw new Error("Expected instance of class which extends utils.Hash");
        this.blockLen = this.iHash.blockLen;
        this.outputLen = this.iHash.outputLen;
        const blockLen = this.blockLen;
        const pad4 = new Uint8Array(blockLen);
        pad4.set(key.length > blockLen ? hash2.create().update(key).digest() : key);
        for (let i4 = 0; i4 < pad4.length; i4++)
          pad4[i4] ^= 54;
        this.iHash.update(pad4);
        this.oHash = hash2.create();
        for (let i4 = 0; i4 < pad4.length; i4++)
          pad4[i4] ^= 54 ^ 92;
        this.oHash.update(pad4);
        clean(pad4);
      }
      update(buf) {
        aexists(this);
        this.iHash.update(buf);
        return this;
      }
      digestInto(out) {
        aexists(this);
        abytes(out, this.outputLen);
        this.finished = true;
        this.iHash.digestInto(out);
        this.oHash.update(out);
        this.oHash.digestInto(out);
        this.destroy();
      }
      digest() {
        const out = new Uint8Array(this.oHash.outputLen);
        this.digestInto(out);
        return out;
      }
      _cloneInto(to) {
        to || (to = Object.create(Object.getPrototypeOf(this), {}));
        const { oHash, iHash, finished: finished7, destroyed, blockLen, outputLen } = this;
        to = to;
        to.finished = finished7;
        to.destroyed = destroyed;
        to.blockLen = blockLen;
        to.outputLen = outputLen;
        to.oHash = oHash._cloneInto(to.oHash);
        to.iHash = iHash._cloneInto(to.iHash);
        return to;
      }
      clone() {
        return this._cloneInto();
      }
      destroy() {
        this.destroyed = true;
        this.oHash.destroy();
        this.iHash.destroy();
      }
    };
    hmac = (hash2, key, message) => new HMAC(hash2, key).update(message).digest();
    hmac.create = (hash2, key) => new HMAC(hash2, key);
    _0n$4 = BigInt(0);
    _1n$5 = BigInt(1);
    pointPrecomputes = /* @__PURE__ */ new WeakMap();
    pointWindowSizes = /* @__PURE__ */ new WeakMap();
    wNAF = class {
      // Parametrized with a given Point class (not individual point)
      constructor(Point, bits2) {
        this.BASE = Point.BASE;
        this.ZERO = Point.ZERO;
        this.Fn = Point.Fn;
        this.bits = bits2;
      }
      // non-const time multiplication ladder
      _unsafeLadder(elm, n2, p = this.ZERO) {
        let d3 = elm;
        while (n2 > _0n$4) {
          if (n2 & _1n$5)
            p = p.add(d3);
          d3 = d3.double();
          n2 >>= _1n$5;
        }
        return p;
      }
      /**
       * Creates a wNAF precomputation window. Used for caching.
       * Default window size is set by `utils.precompute()` and is equal to 8.
       * Number of precomputed points depends on the curve size:
       * 2^(𝑊−1) * (Math.ceil(𝑛 / 𝑊) + 1), where:
       * - 𝑊 is the window size
       * - 𝑛 is the bitlength of the curve order.
       * For a 256-bit curve and window size 8, the number of precomputed points is 128 * 33 = 4224.
       * @param point Point instance
       * @param W window size
       * @returns precomputed point tables flattened to a single array
       */
      precomputeWindow(point, W2) {
        const { windows, windowSize } = calcWOpts(W2, this.bits);
        const points = [];
        let p = point;
        let base = p;
        for (let window2 = 0; window2 < windows; window2++) {
          base = p;
          points.push(base);
          for (let i4 = 1; i4 < windowSize; i4++) {
            base = base.add(p);
            points.push(base);
          }
          p = base.double();
        }
        return points;
      }
      /**
       * Implements ec multiplication using precomputed tables and w-ary non-adjacent form.
       * More compact implementation:
       * https://github.com/paulmillr/noble-secp256k1/blob/47cb1669b6e506ad66b35fe7d76132ae97465da2/index.ts#L502-L541
       * @returns real and fake (for const-time) points
       */
      wNAF(W2, precomputes, n2) {
        if (!this.Fn.isValid(n2))
          throw new Error("invalid scalar");
        let p = this.ZERO;
        let f = this.BASE;
        const wo = calcWOpts(W2, this.bits);
        for (let window2 = 0; window2 < wo.windows; window2++) {
          const { nextN, offset, isZero: isZero2, isNeg, isNegF, offsetF } = calcOffsets(n2, window2, wo);
          n2 = nextN;
          if (isZero2) {
            f = f.add(negateCt(isNegF, precomputes[offsetF]));
          } else {
            p = p.add(negateCt(isNeg, precomputes[offset]));
          }
        }
        assert0(n2);
        return { p, f };
      }
      /**
       * Implements ec unsafe (non const-time) multiplication using precomputed tables and w-ary non-adjacent form.
       * @param acc accumulator point to add result of multiplication
       * @returns point
       */
      wNAFUnsafe(W2, precomputes, n2, acc = this.ZERO) {
        const wo = calcWOpts(W2, this.bits);
        for (let window2 = 0; window2 < wo.windows; window2++) {
          if (n2 === _0n$4)
            break;
          const { nextN, offset, isZero: isZero2, isNeg } = calcOffsets(n2, window2, wo);
          n2 = nextN;
          if (isZero2) {
            continue;
          } else {
            const item = precomputes[offset];
            acc = acc.add(isNeg ? item.negate() : item);
          }
        }
        assert0(n2);
        return acc;
      }
      getPrecomputes(W2, point, transform3) {
        let comp = pointPrecomputes.get(point);
        if (!comp) {
          comp = this.precomputeWindow(point, W2);
          if (W2 !== 1) {
            if (typeof transform3 === "function")
              comp = transform3(comp);
            pointPrecomputes.set(point, comp);
          }
        }
        return comp;
      }
      cached(point, scalar, transform3) {
        const W2 = getW$1(point);
        return this.wNAF(W2, this.getPrecomputes(W2, point, transform3), scalar);
      }
      unsafe(point, scalar, transform3, prev) {
        const W2 = getW$1(point);
        if (W2 === 1)
          return this._unsafeLadder(point, scalar, prev);
        return this.wNAFUnsafe(W2, this.getPrecomputes(W2, point, transform3), scalar, prev);
      }
      // We calculate precomputes for elliptic curve point multiplication
      // using windowed method. This specifies window size and
      // stores precomputed values. Usually only base point would be precomputed.
      createCache(P2, W2) {
        validateW(W2, this.bits);
        pointWindowSizes.set(P2, W2);
        pointPrecomputes.delete(P2);
      }
      hasCache(elm) {
        return getW$1(elm) !== 1;
      }
    };
    divNearest = (num, den) => (num + (num >= 0 ? den : -den) / _2n$5) / den;
    DERErr = class extends Error {
      constructor(m = "") {
        super(m);
      }
    };
    DER = {
      // asn.1 DER encoding utils
      Err: DERErr,
      // Basic building block is TLV (Tag-Length-Value)
      _tlv: {
        encode: (tag, data) => {
          const { Err: E } = DER;
          if (tag < 0 || tag > 256)
            throw new E("tlv.encode: wrong tag");
          if (data.length & 1)
            throw new E("tlv.encode: unpadded data");
          const dataLen = data.length / 2;
          const len = numberToHexUnpadded(dataLen);
          if (len.length / 2 & 128)
            throw new E("tlv.encode: long form length too big");
          const lenLen = dataLen > 127 ? numberToHexUnpadded(len.length / 2 | 128) : "";
          const t2 = numberToHexUnpadded(tag);
          return t2 + lenLen + len + data;
        },
        // v - value, l - left bytes (unparsed)
        decode(tag, data) {
          const { Err: E } = DER;
          let pos = 0;
          if (tag < 0 || tag > 256)
            throw new E("tlv.encode: wrong tag");
          if (data.length < 2 || data[pos++] !== tag)
            throw new E("tlv.decode: wrong tlv");
          const first = data[pos++];
          const isLong = !!(first & 128);
          let length = 0;
          if (!isLong)
            length = first;
          else {
            const lenLen = first & 127;
            if (!lenLen)
              throw new E("tlv.decode(long): indefinite length not supported");
            if (lenLen > 4)
              throw new E("tlv.decode(long): byte length is too big");
            const lengthBytes = data.subarray(pos, pos + lenLen);
            if (lengthBytes.length !== lenLen)
              throw new E("tlv.decode: length bytes not complete");
            if (lengthBytes[0] === 0)
              throw new E("tlv.decode(long): zero leftmost byte");
            for (const b of lengthBytes)
              length = length << 8 | b;
            pos += lenLen;
            if (length < 128)
              throw new E("tlv.decode(long): not minimal encoding");
          }
          const v = data.subarray(pos, pos + length);
          if (v.length !== length)
            throw new E("tlv.decode: wrong value length");
          return { v, l: data.subarray(pos + length) };
        }
      },
      // https://crypto.stackexchange.com/a/57734 Leftmost bit of first byte is 'negative' flag,
      // since we always use positive integers here. It must always be empty:
      // - add zero byte if exists
      // - if next byte doesn't have a flag, leading zero is not allowed (minimal encoding)
      _int: {
        encode(num) {
          const { Err: E } = DER;
          if (num < _0n$3)
            throw new E("integer: negative integers are not allowed");
          let hex = numberToHexUnpadded(num);
          if (Number.parseInt(hex[0], 16) & 8)
            hex = "00" + hex;
          if (hex.length & 1)
            throw new E("unexpected DER parsing assertion: unpadded hex");
          return hex;
        },
        decode(data) {
          const { Err: E } = DER;
          if (data[0] & 128)
            throw new E("invalid signature integer: negative");
          if (data[0] === 0 && !(data[1] & 128))
            throw new E("invalid signature integer: unnecessary leading zero");
          return bytesToNumberBE(data);
        }
      },
      toSig(hex) {
        const { Err: E, _int: int2, _tlv: tlv } = DER;
        const data = ensureBytes("signature", hex);
        const { v: seqBytes, l: seqLeftBytes } = tlv.decode(48, data);
        if (seqLeftBytes.length)
          throw new E("invalid signature: left bytes after parsing");
        const { v: rBytes, l: rLeftBytes } = tlv.decode(2, seqBytes);
        const { v: sBytes, l: sLeftBytes } = tlv.decode(2, rLeftBytes);
        if (sLeftBytes.length)
          throw new E("invalid signature: left bytes after parsing");
        return { r: int2.decode(rBytes), s: int2.decode(sBytes) };
      },
      hexFromSig(sig) {
        const { _tlv: tlv, _int: int2 } = DER;
        const rs = tlv.encode(2, int2.encode(sig.r));
        const ss = tlv.encode(2, int2.encode(sig.s));
        const seq2 = rs + ss;
        return tlv.encode(48, seq2);
      }
    };
    _0n$3 = BigInt(0);
    _1n$4 = BigInt(1);
    _2n$5 = BigInt(2);
    _3n$1 = BigInt(3);
    _4n = BigInt(4);
    p256_CURVE = {
      p: BigInt("0xffffffff00000001000000000000000000000000ffffffffffffffffffffffff"),
      n: BigInt("0xffffffff00000000ffffffffffffffffbce6faada7179e84f3b9cac2fc632551"),
      h: BigInt(1),
      a: BigInt("0xffffffff00000001000000000000000000000000fffffffffffffffffffffffc"),
      b: BigInt("0x5ac635d8aa3a93e7b3ebbd55769886bc651d06b0cc53b0f63bce3c3e27d2604b"),
      Gx: BigInt("0x6b17d1f2e12c4247f8bce6e563a440f277037d812deb33a0f4a13945d898c296"),
      Gy: BigInt("0x4fe342e2fe1a7f9b8ee7eb4a7c0f9e162bce33576b315ececbb6406837bf51f5")
    };
    p384_CURVE = {
      p: BigInt("0xfffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffeffffffff0000000000000000ffffffff"),
      n: BigInt("0xffffffffffffffffffffffffffffffffffffffffffffffffc7634d81f4372ddf581a0db248b0a77aecec196accc52973"),
      h: BigInt(1),
      a: BigInt("0xfffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffeffffffff0000000000000000fffffffc"),
      b: BigInt("0xb3312fa7e23ee7e4988e056be3f82d19181d9c6efe8141120314088f5013875ac656398d8a2ed19d2a85c8edd3ec2aef"),
      Gx: BigInt("0xaa87ca22be8b05378eb1c71ef320ad746e1d3b628ba79b9859f741e082542a385502f25dbf55296c3a545e3872760ab7"),
      Gy: BigInt("0x3617de4a96262c6f5d9e98bf9292dc29f8f41dbd289a147ce9da3113b5f0b8c00a60b1ce1d7e819d7a431d7c90ea0e5f")
    };
    p521_CURVE = {
      p: BigInt("0x1ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff"),
      n: BigInt("0x01fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffa51868783bf2f966b7fcc0148f709a5d03bb5c9b8899c47aebb6fb71e91386409"),
      h: BigInt(1),
      a: BigInt("0x1fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc"),
      b: BigInt("0x0051953eb9618e1c9a1f929a21a0b68540eea2da725b99b315f3b8b489918ef109e156193951ec7e937b1652c0bd3bb1bf073573df883d2c34f1ef451fd46b503f00"),
      Gx: BigInt("0x00c6858e06b70404e9cd9e3ecb662395b4429c648139053fb521f828af606b4d3dbaa14b5e77efe75928fe1dc127a2ffa8de3348b3c1856a429bf97e7e31c2e5bd66"),
      Gy: BigInt("0x011839296a789a3bc0045c8a5fb42c7d1bd998f54449579b446817afbd17273e662c97ee72995ef42640c550b9013fad0761353c7086a272c24088be94769fd16650")
    };
    Fp256 = Field(p256_CURVE.p);
    Fp384 = Field(p384_CURVE.p);
    Fp521 = Field(p521_CURVE.p);
    p256$1 = createCurve({ ...p256_CURVE, Fp: Fp256, lowS: false }, sha256$1);
    p384$1 = createCurve({ ...p384_CURVE, Fp: Fp384, lowS: false }, sha384$1);
    p521$1 = createCurve({ ...p521_CURVE, Fp: Fp521, lowS: false, allowedPrivateKeyLengths: [130, 131, 132] }, sha512$1);
    p256 = p256$1;
    p384 = p384$1;
    p521 = p521$1;
    _0n$2 = BigInt(0);
    _1n$3 = BigInt(1);
    _2n$4 = BigInt(2);
    _7n = BigInt(7);
    _256n = BigInt(256);
    _0x71n = BigInt(113);
    SHA3_PI = [];
    SHA3_ROTL = [];
    _SHA3_IOTA = [];
    for (let round = 0, R2 = _1n$3, x3 = 1, y = 0; round < 24; round++) {
      [x3, y] = [y, (2 * x3 + 3 * y) % 5];
      SHA3_PI.push(2 * (5 * y + x3));
      SHA3_ROTL.push((round + 1) * (round + 2) / 2 % 64);
      let t2 = _0n$2;
      for (let j2 = 0; j2 < 7; j2++) {
        R2 = (R2 << _1n$3 ^ (R2 >> _7n) * _0x71n) % _256n;
        if (R2 & _2n$4)
          t2 ^= _1n$3 << (_1n$3 << /* @__PURE__ */ BigInt(j2)) - _1n$3;
      }
      _SHA3_IOTA.push(t2);
    }
    IOTAS = split2(_SHA3_IOTA, true);
    SHA3_IOTA_H = IOTAS[0];
    SHA3_IOTA_L = IOTAS[1];
    rotlH = (h2, l, s) => s > 32 ? rotlBH(h2, l, s) : rotlSH(h2, l, s);
    rotlL = (h2, l, s) => s > 32 ? rotlBL(h2, l, s) : rotlSL(h2, l, s);
    Keccak = class _Keccak extends Hash {
      // NOTE: we accept arguments in bytes instead of bits here.
      constructor(blockLen, suffix, outputLen, enableXOF = false, rounds = 24) {
        super();
        this.pos = 0;
        this.posOut = 0;
        this.finished = false;
        this.destroyed = false;
        this.enableXOF = false;
        this.blockLen = blockLen;
        this.suffix = suffix;
        this.outputLen = outputLen;
        this.enableXOF = enableXOF;
        this.rounds = rounds;
        anumber(outputLen);
        if (!(0 < blockLen && blockLen < 200))
          throw new Error("only keccak-f1600 function is supported");
        this.state = new Uint8Array(200);
        this.state32 = u32(this.state);
      }
      clone() {
        return this._cloneInto();
      }
      keccak() {
        swap32IfBE(this.state32);
        keccakP(this.state32, this.rounds);
        swap32IfBE(this.state32);
        this.posOut = 0;
        this.pos = 0;
      }
      update(data) {
        aexists(this);
        data = toBytes(data);
        abytes(data);
        const { blockLen, state } = this;
        const len = data.length;
        for (let pos = 0; pos < len; ) {
          const take10 = Math.min(blockLen - this.pos, len - pos);
          for (let i4 = 0; i4 < take10; i4++)
            state[this.pos++] ^= data[pos++];
          if (this.pos === blockLen)
            this.keccak();
        }
        return this;
      }
      finish() {
        if (this.finished)
          return;
        this.finished = true;
        const { state, suffix, pos, blockLen } = this;
        state[pos] ^= suffix;
        if ((suffix & 128) !== 0 && pos === blockLen - 1)
          this.keccak();
        state[blockLen - 1] ^= 128;
        this.keccak();
      }
      writeInto(out) {
        aexists(this, false);
        abytes(out);
        this.finish();
        const bufferOut = this.state;
        const { blockLen } = this;
        for (let pos = 0, len = out.length; pos < len; ) {
          if (this.posOut >= blockLen)
            this.keccak();
          const take10 = Math.min(blockLen - this.posOut, len - pos);
          out.set(bufferOut.subarray(this.posOut, this.posOut + take10), pos);
          this.posOut += take10;
          pos += take10;
        }
        return out;
      }
      xofInto(out) {
        if (!this.enableXOF)
          throw new Error("XOF is not possible for this instance");
        return this.writeInto(out);
      }
      xof(bytes) {
        anumber(bytes);
        return this.xofInto(new Uint8Array(bytes));
      }
      digestInto(out) {
        aoutput(out, this);
        if (this.finished)
          throw new Error("digest() was already called");
        this.writeInto(out);
        this.destroy();
        return out;
      }
      digest() {
        return this.digestInto(new Uint8Array(this.outputLen));
      }
      destroy() {
        this.destroyed = true;
        clean(this.state);
      }
      _cloneInto(to) {
        const { blockLen, suffix, outputLen, rounds, enableXOF } = this;
        to || (to = new _Keccak(blockLen, suffix, outputLen, enableXOF, rounds));
        to.state32.set(this.state32);
        to.pos = this.pos;
        to.posOut = this.posOut;
        to.finished = this.finished;
        to.rounds = rounds;
        to.suffix = suffix;
        to.outputLen = outputLen;
        to.enableXOF = enableXOF;
        to.destroyed = this.destroyed;
        return to;
      }
    };
    gen = (suffix, blockLen, outputLen) => createHasher(() => new Keccak(blockLen, suffix, outputLen));
    sha3_256 = /* @__PURE__ */ (() => gen(6, 136, 256 / 8))();
    sha3_512 = /* @__PURE__ */ (() => gen(6, 72, 512 / 8))();
    genShake = (suffix, blockLen, outputLen) => createXOFer((opts3 = {}) => new Keccak(blockLen, suffix, opts3.dkLen === void 0 ? outputLen : opts3.dkLen, true));
    shake256 = /* @__PURE__ */ (() => genShake(31, 136, 256 / 8))();
    _0n$1 = BigInt(0);
    _1n$2 = BigInt(1);
    _2n$3 = BigInt(2);
    _8n = BigInt(8);
    _0n = BigInt(0);
    _1n$1 = BigInt(1);
    _2n$2 = BigInt(2);
    ed448_CURVE = {
      p: BigInt("0xfffffffffffffffffffffffffffffffffffffffffffffffffffffffeffffffffffffffffffffffffffffffffffffffffffffffffffffffff"),
      n: BigInt("0x3fffffffffffffffffffffffffffffffffffffffffffffffffffffff7cca23e9c44edb49aed63690216cc2728dc58f552378c292ab5844f3"),
      h: BigInt(4),
      a: BigInt(1),
      d: BigInt("0xfffffffffffffffffffffffffffffffffffffffffffffffffffffffeffffffffffffffffffffffffffffffffffffffffffffffffffff6756"),
      Gx: BigInt("0x4f1970c66bed0ded221d15a622bf36da9e146570470f1767ea6de324a3d3a46412ae1af72ab66511433b80e18b00938e2626a82bc70cc05e"),
      Gy: BigInt("0x693f46716eb6bc248876203756c9c7624bea73736ca3984087789c1e05a0c2d73ad3ff1ce67c39c4fdbd132c4ed7c8ad9808795bf230fa14")
    };
    E448_CURVE = Object.assign({}, ed448_CURVE, {
      d: BigInt("0xd78b4bdc7f0daf19f24f38c29373a2ccad46157242a50f37809b1da3412a12e79ccc9c81264cfe9ad080997058fb61c4243cc32dbaa156b9"),
      Gx: BigInt("0x79a70b2b70400553ae7c9df416c792c61128751ac92969240c25a07d728bdc93e21f7787ed6972249de732f38496cd11698713093e9c04fc"),
      Gy: BigInt("0x7fffffffffffffffffffffffffffffffffffffffffffffffffffffff80000000000000000000000000000000000000000000000000000001")
    });
    shake256_114 = /* @__PURE__ */ createHasher(() => shake256.create({ dkLen: 114 }));
    _1n = BigInt(1);
    _2n$1 = BigInt(2);
    _3n = BigInt(3);
    BigInt(4);
    _11n = BigInt(11);
    _22n = BigInt(22);
    _44n = BigInt(44);
    _88n = BigInt(88);
    _223n = BigInt(223);
    Fp$3 = /* @__PURE__ */ (() => Field(ed448_CURVE.p, { BITS: 456, isLE: true }))();
    Fn = /* @__PURE__ */ (() => Field(ed448_CURVE.n, { BITS: 456, isLE: true }))();
    ED448_DEF = /* @__PURE__ */ (() => ({
      ...ed448_CURVE,
      Fp: Fp$3,
      Fn,
      nBitLength: Fn.BITS,
      hash: shake256_114,
      adjustScalarBytes,
      domain: dom4,
      uvRatio
    }))();
    ed448 = twistedEdwards(ED448_DEF);
    edwards(E448_CURVE);
    x448 = /* @__PURE__ */ (() => {
      const P2 = ed448_CURVE.p;
      return montgomery({
        P: P2,
        type: "x448",
        powPminus2: (x3) => {
          const Pminus3div4 = ed448_pow_Pminus3div4(x3);
          const Pminus3 = pow2(Pminus3div4, _2n$1, P2);
          return mod(Pminus3 * x3, P2);
        },
        adjustScalarBytes
      });
    })();
    secp256k1_CURVE = {
      p: BigInt("0xfffffffffffffffffffffffffffffffffffffffffffffffffffffffefffffc2f"),
      n: BigInt("0xfffffffffffffffffffffffffffffffebaaedce6af48a03bbfd25e8cd0364141"),
      h: BigInt(1),
      a: BigInt(0),
      b: BigInt(7),
      Gx: BigInt("0x79be667ef9dcbbac55a06295ce870b07029bfcdb2dce28d959f2815b16f81798"),
      Gy: BigInt("0x483ada7726a3c4655da4fbfc0e1108a8fd17b448a68554199c47d08ffb10d4b8")
    };
    secp256k1_ENDO = {
      beta: BigInt("0x7ae96a2b657c07106e64479eac3434e99cf0497512f58995c1396c28719501ee"),
      basises: [
        [BigInt("0x3086d221a7d46bcde86c90e49284eb15"), -BigInt("0xe4437ed6010e88286f547fa90abfe4c3")],
        [BigInt("0x114ca50f7a8e2f3f657c1108d9d44cfd8"), BigInt("0x3086d221a7d46bcde86c90e49284eb15")]
      ]
    };
    _2n = /* @__PURE__ */ BigInt(2);
    Fpk1 = Field(secp256k1_CURVE.p, { sqrt: sqrtMod });
    secp256k1 = createCurve({ ...secp256k1_CURVE, Fp: Fpk1, lowS: true, endo: secp256k1_ENDO }, sha256$1);
    sha256 = sha256$1;
    sha224 = sha224$1;
    Fp$2 = Field(BigInt("0xa9fb57dba1eea9bc3e660a909d838d726e3bf623d52620282013481d1f6e5377"));
    CURVE_A$2 = Fp$2.create(BigInt("0x7d5a0975fc2c3057eef67530417affe7fb8055c126dc5c6ce94a4b44f330b5d9"));
    CURVE_B$2 = BigInt("0x26dc5c6ce94a4b44f330b5d9bbd77cbf958416295cf7e1ce6bccdc18ff8c07b6");
    brainpoolP256r1 = createCurve({
      a: CURVE_A$2,
      // Equation params: a, b
      b: CURVE_B$2,
      Fp: Fp$2,
      // Curve order (q), total count of valid points in the field
      n: BigInt("0xa9fb57dba1eea9bc3e660a909d838d718c397aa3b561a6f7901e0e82974856a7"),
      // Base (generator) point (x, y)
      Gx: BigInt("0x8bd2aeb9cb7e57cb2c4b482ffc81b7afb9de27e1e3bd23c23a4453bd9ace3262"),
      Gy: BigInt("0x547ef835c3dac4fd97f8461a14611dc9c27745132ded8e545c1d54c72f046997"),
      h: BigInt(1),
      lowS: false
    }, sha256);
    sha512 = sha512$1;
    sha384 = sha384$1;
    Fp$1 = Field(BigInt("0x8cb91e82a3386d280f5d6f7e50e641df152f7109ed5456b412b1da197fb71123acd3a729901d1a71874700133107ec53"));
    CURVE_A$1 = Fp$1.create(BigInt("0x7bc382c63d8c150c3c72080ace05afa0c2bea28e4fb22787139165efba91f90f8aa5814a503ad4eb04a8c7dd22ce2826"));
    CURVE_B$1 = BigInt("0x04a8c7dd22ce28268b39b55416f0447c2fb77de107dcd2a62e880ea53eeb62d57cb4390295dbc9943ab78696fa504c11");
    brainpoolP384r1 = createCurve({
      a: CURVE_A$1,
      // Equation params: a, b
      b: CURVE_B$1,
      Fp: Fp$1,
      // Curve order (q), total count of valid points in the field
      n: BigInt("0x8cb91e82a3386d280f5d6f7e50e641df152f7109ed5456b31f166e6cac0425a7cf3ab6af6b7fc3103b883202e9046565"),
      // Base (generator) point (x, y)
      Gx: BigInt("0x1d1c64f068cf45ffa2a63a81b7c13f6b8847a3e77ef14fe3db7fcafe0cbd10e8e826e03436d646aaef87b2e247d4af1e"),
      Gy: BigInt("0x8abe1d7520f9c2a45cb1eb8e95cfd55262b70b29feec5864e19c054ff99129280e4646217791811142820341263c5315"),
      h: BigInt(1),
      lowS: false
    }, sha384);
    Fp = Field(BigInt("0xaadd9db8dbe9c48b3fd4e6ae33c9fc07cb308db3b3c9d20ed6639cca703308717d4d9b009bc66842aecda12ae6a380e62881ff2f2d82c68528aa6056583a48f3"));
    CURVE_A = Fp.create(BigInt("0x7830a3318b603b89e2327145ac234cc594cbdd8d3df91610a83441caea9863bc2ded5d5aa8253aa10a2ef1c98b9ac8b57f1117a72bf2c7b9e7c1ac4d77fc94ca"));
    CURVE_B = BigInt("0x3df91610a83441caea9863bc2ded5d5aa8253aa10a2ef1c98b9ac8b57f1117a72bf2c7b9e7c1ac4d77fc94cadc083e67984050b75ebae5dd2809bd638016f723");
    brainpoolP512r1 = createCurve({
      a: CURVE_A,
      // Equation params: a, b
      b: CURVE_B,
      Fp,
      // Curve order (q), total count of valid points in the field
      n: BigInt("0xaadd9db8dbe9c48b3fd4e6ae33c9fc07cb308db3b3c9d20ed6639cca70330870553e5c414ca92619418661197fac10471db1d381085ddaddb58796829ca90069"),
      // Base (generator) point (x, y)
      Gx: BigInt("0x81aee4bdd82ed9645a21322e9c4c6a9385ed9f70b5d916c1b43b62eef4d0098eff3b1f78e2d0d48d50d1687b93b97d5f7c6d5047406a5e688b352209bcb9f822"),
      Gy: BigInt("0x7dde385d566332ecc0eabfa9cf7822fdf209f70024a57b1aa000c55b881f8111b2dcde494a5f485e5bca4bd88a2763aed1ca2b2fa8f0540678cd1e0f3ad80892"),
      h: BigInt(1),
      lowS: false
    }, sha512);
    nobleCurves = new Map(Object.entries({
      nistP256: p256,
      nistP384: p384,
      nistP521: p521,
      brainpoolP256r1,
      brainpoolP384r1,
      brainpoolP512r1,
      secp256k1,
      x448,
      ed448
    }));
    noble_curves = /* @__PURE__ */ Object.freeze({
      __proto__: null,
      nobleCurves
    });
    SHA1_IV = /* @__PURE__ */ Uint32Array.from([
      1732584193,
      4023233417,
      2562383102,
      271733878,
      3285377520
    ]);
    SHA1_W = /* @__PURE__ */ new Uint32Array(80);
    SHA1 = class extends HashMD {
      constructor() {
        super(64, 20, 8, false);
        this.A = SHA1_IV[0] | 0;
        this.B = SHA1_IV[1] | 0;
        this.C = SHA1_IV[2] | 0;
        this.D = SHA1_IV[3] | 0;
        this.E = SHA1_IV[4] | 0;
      }
      get() {
        const { A: A2, B, C, D: D3, E } = this;
        return [A2, B, C, D3, E];
      }
      set(A2, B, C, D3, E) {
        this.A = A2 | 0;
        this.B = B | 0;
        this.C = C | 0;
        this.D = D3 | 0;
        this.E = E | 0;
      }
      process(view, offset) {
        for (let i4 = 0; i4 < 16; i4++, offset += 4)
          SHA1_W[i4] = view.getUint32(offset, false);
        for (let i4 = 16; i4 < 80; i4++)
          SHA1_W[i4] = rotl(SHA1_W[i4 - 3] ^ SHA1_W[i4 - 8] ^ SHA1_W[i4 - 14] ^ SHA1_W[i4 - 16], 1);
        let { A: A2, B, C, D: D3, E } = this;
        for (let i4 = 0; i4 < 80; i4++) {
          let F, K2;
          if (i4 < 20) {
            F = Chi$1(B, C, D3);
            K2 = 1518500249;
          } else if (i4 < 40) {
            F = B ^ C ^ D3;
            K2 = 1859775393;
          } else if (i4 < 60) {
            F = Maj(B, C, D3);
            K2 = 2400959708;
          } else {
            F = B ^ C ^ D3;
            K2 = 3395469782;
          }
          const T2 = rotl(A2, 5) + F + E + K2 + SHA1_W[i4] | 0;
          E = D3;
          D3 = C;
          C = rotl(B, 30);
          B = A2;
          A2 = T2;
        }
        A2 = A2 + this.A | 0;
        B = B + this.B | 0;
        C = C + this.C | 0;
        D3 = D3 + this.D | 0;
        E = E + this.E | 0;
        this.set(A2, B, C, D3, E);
      }
      roundClean() {
        clean(SHA1_W);
      }
      destroy() {
        this.set(0, 0, 0, 0, 0);
        clean(this.buffer);
      }
    };
    sha1$1 = /* @__PURE__ */ createHasher(() => new SHA1());
    Rho160 = /* @__PURE__ */ Uint8Array.from([
      7,
      4,
      13,
      1,
      10,
      6,
      15,
      3,
      12,
      0,
      9,
      5,
      2,
      14,
      11,
      8
    ]);
    Id160 = /* @__PURE__ */ (() => Uint8Array.from(new Array(16).fill(0).map((_, i4) => i4)))();
    Pi160 = /* @__PURE__ */ (() => Id160.map((i4) => (9 * i4 + 5) % 16))();
    idxLR = /* @__PURE__ */ (() => {
      const L3 = [Id160];
      const R2 = [Pi160];
      const res = [L3, R2];
      for (let i4 = 0; i4 < 4; i4++)
        for (let j2 of res)
          j2.push(j2[i4].map((k2) => Rho160[k2]));
      return res;
    })();
    idxL = /* @__PURE__ */ (() => idxLR[0])();
    idxR = /* @__PURE__ */ (() => idxLR[1])();
    shifts160 = /* @__PURE__ */ [
      [11, 14, 15, 12, 5, 8, 7, 9, 11, 13, 14, 15, 6, 7, 9, 8],
      [12, 13, 11, 15, 6, 9, 9, 7, 12, 15, 11, 13, 7, 8, 7, 7],
      [13, 15, 14, 11, 7, 7, 6, 8, 13, 14, 13, 12, 5, 5, 6, 9],
      [14, 11, 12, 14, 8, 6, 5, 5, 15, 12, 15, 14, 9, 9, 8, 6],
      [15, 12, 13, 13, 9, 5, 8, 6, 14, 11, 12, 11, 8, 6, 5, 5]
    ].map((i4) => Uint8Array.from(i4));
    shiftsL160 = /* @__PURE__ */ idxL.map((idx, i4) => idx.map((j2) => shifts160[i4][j2]));
    shiftsR160 = /* @__PURE__ */ idxR.map((idx, i4) => idx.map((j2) => shifts160[i4][j2]));
    Kl160 = /* @__PURE__ */ Uint32Array.from([
      0,
      1518500249,
      1859775393,
      2400959708,
      2840853838
    ]);
    Kr160 = /* @__PURE__ */ Uint32Array.from([
      1352829926,
      1548603684,
      1836072691,
      2053994217,
      0
    ]);
    BUF_160 = /* @__PURE__ */ new Uint32Array(16);
    RIPEMD160 = class extends HashMD {
      constructor() {
        super(64, 20, 8, true);
        this.h0 = 1732584193 | 0;
        this.h1 = 4023233417 | 0;
        this.h2 = 2562383102 | 0;
        this.h3 = 271733878 | 0;
        this.h4 = 3285377520 | 0;
      }
      get() {
        const { h0, h1, h2, h3, h4 } = this;
        return [h0, h1, h2, h3, h4];
      }
      set(h0, h1, h2, h3, h4) {
        this.h0 = h0 | 0;
        this.h1 = h1 | 0;
        this.h2 = h2 | 0;
        this.h3 = h3 | 0;
        this.h4 = h4 | 0;
      }
      process(view, offset) {
        for (let i4 = 0; i4 < 16; i4++, offset += 4)
          BUF_160[i4] = view.getUint32(offset, true);
        let al = this.h0 | 0, ar = al, bl = this.h1 | 0, br = bl, cl = this.h2 | 0, cr = cl, dl = this.h3 | 0, dr = dl, el = this.h4 | 0, er = el;
        for (let group = 0; group < 5; group++) {
          const rGroup = 4 - group;
          const hbl = Kl160[group], hbr = Kr160[group];
          const rl = idxL[group], rr = idxR[group];
          const sl = shiftsL160[group], sr = shiftsR160[group];
          for (let i4 = 0; i4 < 16; i4++) {
            const tl = rotl(al + ripemd_f(group, bl, cl, dl) + BUF_160[rl[i4]] + hbl, sl[i4]) + el | 0;
            al = el, el = dl, dl = rotl(cl, 10) | 0, cl = bl, bl = tl;
          }
          for (let i4 = 0; i4 < 16; i4++) {
            const tr = rotl(ar + ripemd_f(rGroup, br, cr, dr) + BUF_160[rr[i4]] + hbr, sr[i4]) + er | 0;
            ar = er, er = dr, dr = rotl(cr, 10) | 0, cr = br, br = tr;
          }
        }
        this.set(this.h1 + cl + dr | 0, this.h2 + dl + er | 0, this.h3 + el + ar | 0, this.h4 + al + br | 0, this.h0 + bl + cr | 0);
      }
      roundClean() {
        clean(BUF_160);
      }
      destroy() {
        this.destroyed = true;
        clean(this.buffer);
        this.set(0, 0, 0, 0, 0);
      }
    };
    ripemd160$1 = /* @__PURE__ */ createHasher(() => new RIPEMD160());
    sha1 = sha1$1;
    ripemd160 = ripemd160$1;
    K$1 = Array.from({ length: 64 }, (_, i4) => Math.floor(2 ** 32 * Math.abs(Math.sin(i4 + 1))));
    Chi = (a2, b, c3) => a2 & b ^ ~a2 & c3;
    IV = /* @__PURE__ */ new Uint32Array([1732584193, 4023233417, 2562383102, 271733878]);
    MD5_W = /* @__PURE__ */ new Uint32Array(16);
    MD5 = class extends HashMD {
      constructor() {
        super(64, 16, 8, true);
        this.A = IV[0] | 0;
        this.B = IV[1] | 0;
        this.C = IV[2] | 0;
        this.D = IV[3] | 0;
      }
      get() {
        const { A: A2, B, C, D: D3 } = this;
        return [A2, B, C, D3];
      }
      set(A2, B, C, D3) {
        this.A = A2 | 0;
        this.B = B | 0;
        this.C = C | 0;
        this.D = D3 | 0;
      }
      process(view, offset) {
        for (let i4 = 0; i4 < 16; i4++, offset += 4)
          MD5_W[i4] = view.getUint32(offset, true);
        let { A: A2, B, C, D: D3 } = this;
        for (let i4 = 0; i4 < 64; i4++) {
          let F, g, s;
          if (i4 < 16) {
            F = Chi(B, C, D3);
            g = i4;
            s = [7, 12, 17, 22];
          } else if (i4 < 32) {
            F = Chi(D3, B, C);
            g = (5 * i4 + 1) % 16;
            s = [5, 9, 14, 20];
          } else if (i4 < 48) {
            F = B ^ C ^ D3;
            g = (3 * i4 + 5) % 16;
            s = [4, 11, 16, 23];
          } else {
            F = C ^ (B | ~D3);
            g = 7 * i4 % 16;
            s = [6, 10, 15, 21];
          }
          F = F + A2 + K$1[i4] + MD5_W[g];
          A2 = D3;
          D3 = C;
          C = B;
          B = B + rotl(F, s[i4 % 4]);
        }
        A2 = A2 + this.A | 0;
        B = B + this.B | 0;
        C = C + this.C | 0;
        D3 = D3 + this.D | 0;
        this.set(A2, B, C, D3);
      }
      roundClean() {
        MD5_W.fill(0);
      }
      destroy() {
        this.set(0, 0, 0, 0);
        this.buffer.fill(0);
      }
    };
    md5 = /* @__PURE__ */ wrapConstructor(() => new MD5());
    nobleHashes = new Map(Object.entries({
      md5,
      sha1,
      sha224,
      sha256,
      sha384,
      sha512,
      sha3_256,
      sha3_512,
      ripemd160
    }));
    noble_hashes = /* @__PURE__ */ Object.freeze({
      __proto__: null,
      nobleHashes
    });
    crypto$1 = nc && typeof nc === "object" && "webcrypto" in nc ? nc.webcrypto : void 0;
    nacl = {};
    gf = function(init2) {
      var i4, r = new Float64Array(16);
      if (init2) for (i4 = 0; i4 < init2.length; i4++) r[i4] = init2[i4];
      return r;
    };
    randombytes = function() {
      throw new Error("no PRNG");
    };
    _9 = new Uint8Array(32);
    _9[0] = 9;
    gf0 = gf();
    gf1 = gf([1]);
    _121665 = gf([56129, 1]);
    D = gf([30883, 4953, 19914, 30187, 55467, 16705, 2637, 112, 59544, 30585, 16505, 36039, 65139, 11119, 27886, 20995]);
    D2 = gf([61785, 9906, 39828, 60374, 45398, 33411, 5274, 224, 53552, 61171, 33010, 6542, 64743, 22239, 55772, 9222]);
    X = gf([54554, 36645, 11616, 51542, 42930, 38181, 51040, 26924, 56412, 64982, 57905, 49316, 21502, 52590, 14035, 8553]);
    Y = gf([26200, 26214, 26214, 26214, 26214, 26214, 26214, 26214, 26214, 26214, 26214, 26214, 26214, 26214, 26214, 26214]);
    I2 = gf([41136, 18958, 6951, 50414, 58488, 44335, 6150, 12099, 55207, 15867, 153, 11085, 57099, 20417, 9344, 11139]);
    K = [
      1116352408,
      3609767458,
      1899447441,
      602891725,
      3049323471,
      3964484399,
      3921009573,
      2173295548,
      961987163,
      4081628472,
      1508970993,
      3053834265,
      2453635748,
      2937671579,
      2870763221,
      3664609560,
      3624381080,
      2734883394,
      310598401,
      1164996542,
      607225278,
      1323610764,
      1426881987,
      3590304994,
      1925078388,
      4068182383,
      2162078206,
      991336113,
      2614888103,
      633803317,
      3248222580,
      3479774868,
      3835390401,
      2666613458,
      4022224774,
      944711139,
      264347078,
      2341262773,
      604807628,
      2007800933,
      770255983,
      1495990901,
      1249150122,
      1856431235,
      1555081692,
      3175218132,
      1996064986,
      2198950837,
      2554220882,
      3999719339,
      2821834349,
      766784016,
      2952996808,
      2566594879,
      3210313671,
      3203337956,
      3336571891,
      1034457026,
      3584528711,
      2466948901,
      113926993,
      3758326383,
      338241895,
      168717936,
      666307205,
      1188179964,
      773529912,
      1546045734,
      1294757372,
      1522805485,
      1396182291,
      2643833823,
      1695183700,
      2343527390,
      1986661051,
      1014477480,
      2177026350,
      1206759142,
      2456956037,
      344077627,
      2730485921,
      1290863460,
      2820302411,
      3158454273,
      3259730800,
      3505952657,
      3345764771,
      106217008,
      3516065817,
      3606008344,
      3600352804,
      1432725776,
      4094571909,
      1467031594,
      275423344,
      851169720,
      430227734,
      3100823752,
      506948616,
      1363258195,
      659060556,
      3750685593,
      883997877,
      3785050280,
      958139571,
      3318307427,
      1322822218,
      3812723403,
      1537002063,
      2003034995,
      1747873779,
      3602036899,
      1955562222,
      1575990012,
      2024104815,
      1125592928,
      2227730452,
      2716904306,
      2361852424,
      442776044,
      2428436474,
      593698344,
      2756734187,
      3733110249,
      3204031479,
      2999351573,
      3329325298,
      3815920427,
      3391569614,
      3928383900,
      3515267271,
      566280711,
      3940187606,
      3454069534,
      4118630271,
      4000239992,
      116418474,
      1914138554,
      174292421,
      2731055270,
      289380356,
      3203993006,
      460393269,
      320620315,
      685471733,
      587496836,
      852142971,
      1086792851,
      1017036298,
      365543100,
      1126000580,
      2618297676,
      1288033470,
      3409855158,
      1501505948,
      4234509866,
      1607167915,
      987167468,
      1816402316,
      1246189591
    ];
    L2 = new Float64Array([237, 211, 245, 92, 26, 99, 18, 88, 214, 156, 247, 162, 222, 249, 222, 20, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 16]);
    crypto_scalarmult_BYTES = 32;
    crypto_scalarmult_SCALARBYTES = 32;
    crypto_box_PUBLICKEYBYTES = 32;
    crypto_box_SECRETKEYBYTES = 32;
    crypto_sign_BYTES = 64;
    crypto_sign_PUBLICKEYBYTES = 32;
    crypto_sign_SECRETKEYBYTES = 64;
    crypto_sign_SEEDBYTES = 32;
    nacl.scalarMult = function(n2, p) {
      checkArrayTypes(n2, p);
      if (n2.length !== crypto_scalarmult_SCALARBYTES) throw new Error("bad n size");
      if (p.length !== crypto_scalarmult_BYTES) throw new Error("bad p size");
      var q = new Uint8Array(crypto_scalarmult_BYTES);
      crypto_scalarmult(q, n2, p);
      return q;
    };
    nacl.box = {};
    nacl.box.keyPair = function() {
      var pk = new Uint8Array(crypto_box_PUBLICKEYBYTES);
      var sk = new Uint8Array(crypto_box_SECRETKEYBYTES);
      crypto_box_keypair(pk, sk);
      return { publicKey: pk, secretKey: sk };
    };
    nacl.box.keyPair.fromSecretKey = function(secretKey) {
      checkArrayTypes(secretKey);
      if (secretKey.length !== crypto_box_SECRETKEYBYTES)
        throw new Error("bad secret key size");
      var pk = new Uint8Array(crypto_box_PUBLICKEYBYTES);
      crypto_scalarmult_base(pk, secretKey);
      return { publicKey: pk, secretKey: new Uint8Array(secretKey) };
    };
    nacl.sign = function(msg, secretKey) {
      checkArrayTypes(msg, secretKey);
      if (secretKey.length !== crypto_sign_SECRETKEYBYTES)
        throw new Error("bad secret key size");
      var signedMsg = new Uint8Array(crypto_sign_BYTES + msg.length);
      crypto_sign(signedMsg, msg, msg.length, secretKey);
      return signedMsg;
    };
    nacl.sign.detached = function(msg, secretKey) {
      var signedMsg = nacl.sign(msg, secretKey);
      var sig = new Uint8Array(crypto_sign_BYTES);
      for (var i4 = 0; i4 < sig.length; i4++) sig[i4] = signedMsg[i4];
      return sig;
    };
    nacl.sign.detached.verify = function(msg, sig, publicKey) {
      checkArrayTypes(msg, sig, publicKey);
      if (sig.length !== crypto_sign_BYTES)
        throw new Error("bad signature size");
      if (publicKey.length !== crypto_sign_PUBLICKEYBYTES)
        throw new Error("bad public key size");
      var sm = new Uint8Array(crypto_sign_BYTES + msg.length);
      var m = new Uint8Array(crypto_sign_BYTES + msg.length);
      var i4;
      for (i4 = 0; i4 < crypto_sign_BYTES; i4++) sm[i4] = sig[i4];
      for (i4 = 0; i4 < msg.length; i4++) sm[i4 + crypto_sign_BYTES] = msg[i4];
      return crypto_sign_open(m, sm, sm.length, publicKey) >= 0;
    };
    nacl.sign.keyPair = function() {
      var pk = new Uint8Array(crypto_sign_PUBLICKEYBYTES);
      var sk = new Uint8Array(crypto_sign_SECRETKEYBYTES);
      crypto_sign_keypair(pk, sk);
      return { publicKey: pk, secretKey: sk };
    };
    nacl.sign.keyPair.fromSecretKey = function(secretKey) {
      checkArrayTypes(secretKey);
      if (secretKey.length !== crypto_sign_SECRETKEYBYTES)
        throw new Error("bad secret key size");
      var pk = new Uint8Array(crypto_sign_PUBLICKEYBYTES);
      for (var i4 = 0; i4 < pk.length; i4++) pk[i4] = secretKey[32 + i4];
      return { publicKey: pk, secretKey: new Uint8Array(secretKey) };
    };
    nacl.sign.keyPair.fromSeed = function(seed) {
      checkArrayTypes(seed);
      if (seed.length !== crypto_sign_SEEDBYTES)
        throw new Error("bad seed size");
      var pk = new Uint8Array(crypto_sign_PUBLICKEYBYTES);
      var sk = new Uint8Array(crypto_sign_SECRETKEYBYTES);
      for (var i4 = 0; i4 < 32; i4++) sk[i4] = seed[i4];
      crypto_sign_keypair(pk, sk, true);
      return { publicKey: pk, secretKey: sk };
    };
    nacl.setPRNG = function(fn) {
      randombytes = fn;
    };
    (function() {
      if (crypto$1 && crypto$1.getRandomValues) {
        var QUOTA = 65536;
        nacl.setPRNG(function(x3, n2) {
          var i4, v = new Uint8Array(n2);
          for (i4 = 0; i4 < n2; i4 += QUOTA) {
            crypto$1.getRandomValues(v.subarray(i4, i4 + Math.min(n2 - i4, QUOTA)));
          }
          for (i4 = 0; i4 < n2; i4++) x3[i4] = v[i4];
          cleanup(v);
        });
      }
    })();
    naclFast = /* @__PURE__ */ Object.freeze({
      __proto__: null,
      default: nacl
    });
    TripleDES.keySize = TripleDES.prototype.keySize = 24;
    TripleDES.blockSize = TripleDES.prototype.blockSize = 8;
    CAST5.blockSize = CAST5.prototype.blockSize = 8;
    CAST5.keySize = CAST5.prototype.keySize = 16;
    MAXINT = 4294967295;
    TF.keySize = TF.prototype.keySize = 32;
    TF.blockSize = TF.prototype.blockSize = 16;
    Blowfish.prototype.BLOCKSIZE = 8;
    Blowfish.prototype.SBOXES = [
      [
        3509652390,
        2564797868,
        805139163,
        3491422135,
        3101798381,
        1780907670,
        3128725573,
        4046225305,
        614570311,
        3012652279,
        134345442,
        2240740374,
        1667834072,
        1901547113,
        2757295779,
        4103290238,
        227898511,
        1921955416,
        1904987480,
        2182433518,
        2069144605,
        3260701109,
        2620446009,
        720527379,
        3318853667,
        677414384,
        3393288472,
        3101374703,
        2390351024,
        1614419982,
        1822297739,
        2954791486,
        3608508353,
        3174124327,
        2024746970,
        1432378464,
        3864339955,
        2857741204,
        1464375394,
        1676153920,
        1439316330,
        715854006,
        3033291828,
        289532110,
        2706671279,
        2087905683,
        3018724369,
        1668267050,
        732546397,
        1947742710,
        3462151702,
        2609353502,
        2950085171,
        1814351708,
        2050118529,
        680887927,
        999245976,
        1800124847,
        3300911131,
        1713906067,
        1641548236,
        4213287313,
        1216130144,
        1575780402,
        4018429277,
        3917837745,
        3693486850,
        3949271944,
        596196993,
        3549867205,
        258830323,
        2213823033,
        772490370,
        2760122372,
        1774776394,
        2652871518,
        566650946,
        4142492826,
        1728879713,
        2882767088,
        1783734482,
        3629395816,
        2517608232,
        2874225571,
        1861159788,
        326777828,
        3124490320,
        2130389656,
        2716951837,
        967770486,
        1724537150,
        2185432712,
        2364442137,
        1164943284,
        2105845187,
        998989502,
        3765401048,
        2244026483,
        1075463327,
        1455516326,
        1322494562,
        910128902,
        469688178,
        1117454909,
        936433444,
        3490320968,
        3675253459,
        1240580251,
        122909385,
        2157517691,
        634681816,
        4142456567,
        3825094682,
        3061402683,
        2540495037,
        79693498,
        3249098678,
        1084186820,
        1583128258,
        426386531,
        1761308591,
        1047286709,
        322548459,
        995290223,
        1845252383,
        2603652396,
        3431023940,
        2942221577,
        3202600964,
        3727903485,
        1712269319,
        422464435,
        3234572375,
        1170764815,
        3523960633,
        3117677531,
        1434042557,
        442511882,
        3600875718,
        1076654713,
        1738483198,
        4213154764,
        2393238008,
        3677496056,
        1014306527,
        4251020053,
        793779912,
        2902807211,
        842905082,
        4246964064,
        1395751752,
        1040244610,
        2656851899,
        3396308128,
        445077038,
        3742853595,
        3577915638,
        679411651,
        2892444358,
        2354009459,
        1767581616,
        3150600392,
        3791627101,
        3102740896,
        284835224,
        4246832056,
        1258075500,
        768725851,
        2589189241,
        3069724005,
        3532540348,
        1274779536,
        3789419226,
        2764799539,
        1660621633,
        3471099624,
        4011903706,
        913787905,
        3497959166,
        737222580,
        2514213453,
        2928710040,
        3937242737,
        1804850592,
        3499020752,
        2949064160,
        2386320175,
        2390070455,
        2415321851,
        4061277028,
        2290661394,
        2416832540,
        1336762016,
        1754252060,
        3520065937,
        3014181293,
        791618072,
        3188594551,
        3933548030,
        2332172193,
        3852520463,
        3043980520,
        413987798,
        3465142937,
        3030929376,
        4245938359,
        2093235073,
        3534596313,
        375366246,
        2157278981,
        2479649556,
        555357303,
        3870105701,
        2008414854,
        3344188149,
        4221384143,
        3956125452,
        2067696032,
        3594591187,
        2921233993,
        2428461,
        544322398,
        577241275,
        1471733935,
        610547355,
        4027169054,
        1432588573,
        1507829418,
        2025931657,
        3646575487,
        545086370,
        48609733,
        2200306550,
        1653985193,
        298326376,
        1316178497,
        3007786442,
        2064951626,
        458293330,
        2589141269,
        3591329599,
        3164325604,
        727753846,
        2179363840,
        146436021,
        1461446943,
        4069977195,
        705550613,
        3059967265,
        3887724982,
        4281599278,
        3313849956,
        1404054877,
        2845806497,
        146425753,
        1854211946
      ],
      [
        1266315497,
        3048417604,
        3681880366,
        3289982499,
        290971e4,
        1235738493,
        2632868024,
        2414719590,
        3970600049,
        1771706367,
        1449415276,
        3266420449,
        422970021,
        1963543593,
        2690192192,
        3826793022,
        1062508698,
        1531092325,
        1804592342,
        2583117782,
        2714934279,
        4024971509,
        1294809318,
        4028980673,
        1289560198,
        2221992742,
        1669523910,
        35572830,
        157838143,
        1052438473,
        1016535060,
        1802137761,
        1753167236,
        1386275462,
        3080475397,
        2857371447,
        1040679964,
        2145300060,
        2390574316,
        1461121720,
        2956646967,
        4031777805,
        4028374788,
        33600511,
        2920084762,
        1018524850,
        629373528,
        3691585981,
        3515945977,
        2091462646,
        2486323059,
        586499841,
        988145025,
        935516892,
        3367335476,
        2599673255,
        2839830854,
        265290510,
        3972581182,
        2759138881,
        3795373465,
        1005194799,
        847297441,
        406762289,
        1314163512,
        1332590856,
        1866599683,
        4127851711,
        750260880,
        613907577,
        1450815602,
        3165620655,
        3734664991,
        3650291728,
        3012275730,
        3704569646,
        1427272223,
        778793252,
        1343938022,
        2676280711,
        2052605720,
        1946737175,
        3164576444,
        3914038668,
        3967478842,
        3682934266,
        1661551462,
        3294938066,
        4011595847,
        840292616,
        3712170807,
        616741398,
        312560963,
        711312465,
        1351876610,
        322626781,
        1910503582,
        271666773,
        2175563734,
        1594956187,
        70604529,
        3617834859,
        1007753275,
        1495573769,
        4069517037,
        2549218298,
        2663038764,
        504708206,
        2263041392,
        3941167025,
        2249088522,
        1514023603,
        1998579484,
        1312622330,
        694541497,
        2582060303,
        2151582166,
        1382467621,
        776784248,
        2618340202,
        3323268794,
        2497899128,
        2784771155,
        503983604,
        4076293799,
        907881277,
        423175695,
        432175456,
        1378068232,
        4145222326,
        3954048622,
        3938656102,
        3820766613,
        2793130115,
        2977904593,
        26017576,
        3274890735,
        3194772133,
        1700274565,
        1756076034,
        4006520079,
        3677328699,
        720338349,
        1533947780,
        354530856,
        688349552,
        3973924725,
        1637815568,
        332179504,
        3949051286,
        53804574,
        2852348879,
        3044236432,
        1282449977,
        3583942155,
        3416972820,
        4006381244,
        1617046695,
        2628476075,
        3002303598,
        1686838959,
        431878346,
        2686675385,
        1700445008,
        1080580658,
        1009431731,
        832498133,
        3223435511,
        2605976345,
        2271191193,
        2516031870,
        1648197032,
        4164389018,
        2548247927,
        300782431,
        375919233,
        238389289,
        3353747414,
        2531188641,
        2019080857,
        1475708069,
        455242339,
        2609103871,
        448939670,
        3451063019,
        1395535956,
        2413381860,
        1841049896,
        1491858159,
        885456874,
        4264095073,
        4001119347,
        1565136089,
        3898914787,
        1108368660,
        540939232,
        1173283510,
        2745871338,
        3681308437,
        4207628240,
        3343053890,
        4016749493,
        1699691293,
        1103962373,
        3625875870,
        2256883143,
        3830138730,
        1031889488,
        3479347698,
        1535977030,
        4236805024,
        3251091107,
        2132092099,
        1774941330,
        1199868427,
        1452454533,
        157007616,
        2904115357,
        342012276,
        595725824,
        1480756522,
        206960106,
        497939518,
        591360097,
        863170706,
        2375253569,
        3596610801,
        1814182875,
        2094937945,
        3421402208,
        1082520231,
        3463918190,
        2785509508,
        435703966,
        3908032597,
        1641649973,
        2842273706,
        3305899714,
        1510255612,
        2148256476,
        2655287854,
        3276092548,
        4258621189,
        236887753,
        3681803219,
        274041037,
        1734335097,
        3815195456,
        3317970021,
        1899903192,
        1026095262,
        4050517792,
        356393447,
        2410691914,
        3873677099,
        3682840055
      ],
      [
        3913112168,
        2491498743,
        4132185628,
        2489919796,
        1091903735,
        1979897079,
        3170134830,
        3567386728,
        3557303409,
        857797738,
        1136121015,
        1342202287,
        507115054,
        2535736646,
        337727348,
        3213592640,
        1301675037,
        2528481711,
        1895095763,
        1721773893,
        3216771564,
        62756741,
        2142006736,
        835421444,
        2531993523,
        1442658625,
        3659876326,
        2882144922,
        676362277,
        1392781812,
        170690266,
        3921047035,
        1759253602,
        3611846912,
        1745797284,
        664899054,
        1329594018,
        3901205900,
        3045908486,
        2062866102,
        2865634940,
        3543621612,
        3464012697,
        1080764994,
        553557557,
        3656615353,
        3996768171,
        991055499,
        499776247,
        1265440854,
        648242737,
        3940784050,
        980351604,
        3713745714,
        1749149687,
        3396870395,
        4211799374,
        3640570775,
        1161844396,
        3125318951,
        1431517754,
        545492359,
        4268468663,
        3499529547,
        1437099964,
        2702547544,
        3433638243,
        2581715763,
        2787789398,
        1060185593,
        1593081372,
        2418618748,
        4260947970,
        69676912,
        2159744348,
        86519011,
        2512459080,
        3838209314,
        1220612927,
        3339683548,
        133810670,
        1090789135,
        1078426020,
        1569222167,
        845107691,
        3583754449,
        4072456591,
        1091646820,
        628848692,
        1613405280,
        3757631651,
        526609435,
        236106946,
        48312990,
        2942717905,
        3402727701,
        1797494240,
        859738849,
        992217954,
        4005476642,
        2243076622,
        3870952857,
        3732016268,
        765654824,
        3490871365,
        2511836413,
        1685915746,
        3888969200,
        1414112111,
        2273134842,
        3281911079,
        4080962846,
        172450625,
        2569994100,
        980381355,
        4109958455,
        2819808352,
        2716589560,
        2568741196,
        3681446669,
        3329971472,
        1835478071,
        660984891,
        3704678404,
        4045999559,
        3422617507,
        3040415634,
        1762651403,
        1719377915,
        3470491036,
        2693910283,
        3642056355,
        3138596744,
        1364962596,
        2073328063,
        1983633131,
        926494387,
        3423689081,
        2150032023,
        4096667949,
        1749200295,
        3328846651,
        309677260,
        2016342300,
        1779581495,
        3079819751,
        111262694,
        1274766160,
        443224088,
        298511866,
        1025883608,
        3806446537,
        1145181785,
        168956806,
        3641502830,
        3584813610,
        1689216846,
        3666258015,
        3200248200,
        1692713982,
        2646376535,
        4042768518,
        1618508792,
        1610833997,
        3523052358,
        4130873264,
        2001055236,
        3610705100,
        2202168115,
        4028541809,
        2961195399,
        1006657119,
        2006996926,
        3186142756,
        1430667929,
        3210227297,
        1314452623,
        4074634658,
        4101304120,
        2273951170,
        1399257539,
        3367210612,
        3027628629,
        1190975929,
        2062231137,
        2333990788,
        2221543033,
        2438960610,
        1181637006,
        548689776,
        2362791313,
        3372408396,
        3104550113,
        3145860560,
        296247880,
        1970579870,
        3078560182,
        3769228297,
        1714227617,
        3291629107,
        3898220290,
        166772364,
        1251581989,
        493813264,
        448347421,
        195405023,
        2709975567,
        677966185,
        3703036547,
        1463355134,
        2715995803,
        1338867538,
        1343315457,
        2802222074,
        2684532164,
        233230375,
        2599980071,
        2000651841,
        3277868038,
        1638401717,
        4028070440,
        3237316320,
        6314154,
        819756386,
        300326615,
        590932579,
        1405279636,
        3267499572,
        3150704214,
        2428286686,
        3959192993,
        3461946742,
        1862657033,
        1266418056,
        963775037,
        2089974820,
        2263052895,
        1917689273,
        448879540,
        3550394620,
        3981727096,
        150775221,
        3627908307,
        1303187396,
        508620638,
        2975983352,
        2726630617,
        1817252668,
        1876281319,
        1457606340,
        908771278,
        3720792119,
        3617206836,
        2455994898,
        1729034894,
        1080033504
      ],
      [
        976866871,
        3556439503,
        2881648439,
        1522871579,
        1555064734,
        1336096578,
        3548522304,
        2579274686,
        3574697629,
        3205460757,
        3593280638,
        3338716283,
        3079412587,
        564236357,
        2993598910,
        1781952180,
        1464380207,
        3163844217,
        3332601554,
        1699332808,
        1393555694,
        1183702653,
        3581086237,
        1288719814,
        691649499,
        2847557200,
        2895455976,
        3193889540,
        2717570544,
        1781354906,
        1676643554,
        2592534050,
        3230253752,
        1126444790,
        2770207658,
        2633158820,
        2210423226,
        2615765581,
        2414155088,
        3127139286,
        673620729,
        2805611233,
        1269405062,
        4015350505,
        3341807571,
        4149409754,
        1057255273,
        2012875353,
        2162469141,
        2276492801,
        2601117357,
        993977747,
        3918593370,
        2654263191,
        753973209,
        36408145,
        2530585658,
        25011837,
        3520020182,
        2088578344,
        530523599,
        2918365339,
        1524020338,
        1518925132,
        3760827505,
        3759777254,
        1202760957,
        3985898139,
        3906192525,
        674977740,
        4174734889,
        2031300136,
        2019492241,
        3983892565,
        4153806404,
        3822280332,
        352677332,
        2297720250,
        60907813,
        90501309,
        3286998549,
        1016092578,
        2535922412,
        2839152426,
        457141659,
        509813237,
        4120667899,
        652014361,
        1966332200,
        2975202805,
        55981186,
        2327461051,
        676427537,
        3255491064,
        2882294119,
        3433927263,
        1307055953,
        942726286,
        933058658,
        2468411793,
        3933900994,
        4215176142,
        1361170020,
        2001714738,
        2830558078,
        3274259782,
        1222529897,
        1679025792,
        2729314320,
        3714953764,
        1770335741,
        151462246,
        3013232138,
        1682292957,
        1483529935,
        471910574,
        1539241949,
        458788160,
        3436315007,
        1807016891,
        3718408830,
        978976581,
        1043663428,
        3165965781,
        1927990952,
        4200891579,
        2372276910,
        3208408903,
        3533431907,
        1412390302,
        2931980059,
        4132332400,
        1947078029,
        3881505623,
        4168226417,
        2941484381,
        1077988104,
        1320477388,
        886195818,
        18198404,
        3786409e3,
        2509781533,
        112762804,
        3463356488,
        1866414978,
        891333506,
        18488651,
        661792760,
        1628790961,
        3885187036,
        3141171499,
        876946877,
        2693282273,
        1372485963,
        791857591,
        2686433993,
        3759982718,
        3167212022,
        3472953795,
        2716379847,
        445679433,
        3561995674,
        3504004811,
        3574258232,
        54117162,
        3331405415,
        2381918588,
        3769707343,
        4154350007,
        1140177722,
        4074052095,
        668550556,
        3214352940,
        367459370,
        261225585,
        2610173221,
        4209349473,
        3468074219,
        3265815641,
        314222801,
        3066103646,
        3808782860,
        282218597,
        3406013506,
        3773591054,
        379116347,
        1285071038,
        846784868,
        2669647154,
        3771962079,
        3550491691,
        2305946142,
        453669953,
        1268987020,
        3317592352,
        3279303384,
        3744833421,
        2610507566,
        3859509063,
        266596637,
        3847019092,
        517658769,
        3462560207,
        3443424879,
        370717030,
        4247526661,
        2224018117,
        4143653529,
        4112773975,
        2788324899,
        2477274417,
        1456262402,
        2901442914,
        1517677493,
        1846949527,
        2295493580,
        3734397586,
        2176403920,
        1280348187,
        1908823572,
        3871786941,
        846861322,
        1172426758,
        3287448474,
        3383383037,
        1655181056,
        3139813346,
        901632758,
        1897031941,
        2986607138,
        3066810236,
        3447102507,
        1393639104,
        373351379,
        950779232,
        625454576,
        3124240540,
        4148612726,
        2007998917,
        544563296,
        2244738638,
        2330496472,
        2058025392,
        1291430526,
        424198748,
        50039436,
        29584100,
        3605783033,
        2429876329,
        2791104160,
        1057563949,
        3255363231,
        3075367218,
        3463963227,
        1469046755,
        985887462
      ]
    ];
    Blowfish.prototype.PARRAY = [
      608135816,
      2242054355,
      320440878,
      57701188,
      2752067618,
      698298832,
      137296536,
      3964562569,
      1160258022,
      953160567,
      3193202383,
      887688300,
      3232508343,
      3380367581,
      1065670069,
      3041331479,
      2450970073,
      2306472731
    ];
    Blowfish.prototype.NN = 16;
    Blowfish.prototype._clean = function(xx) {
      if (xx < 0) {
        const yy = xx & 2147483647;
        xx = yy + 2147483648;
      }
      return xx;
    };
    Blowfish.prototype._F = function(xx) {
      let yy;
      const dd = xx & 255;
      xx >>>= 8;
      const cc = xx & 255;
      xx >>>= 8;
      const bb = xx & 255;
      xx >>>= 8;
      const aa = xx & 255;
      yy = this.sboxes[0][aa] + this.sboxes[1][bb];
      yy ^= this.sboxes[2][cc];
      yy += this.sboxes[3][dd];
      return yy;
    };
    Blowfish.prototype._encryptBlock = function(vals) {
      let dataL = vals[0];
      let dataR = vals[1];
      let ii;
      for (ii = 0; ii < this.NN; ++ii) {
        dataL ^= this.parray[ii];
        dataR = this._F(dataL) ^ dataR;
        const tmp = dataL;
        dataL = dataR;
        dataR = tmp;
      }
      dataL ^= this.parray[this.NN + 0];
      dataR ^= this.parray[this.NN + 1];
      vals[0] = this._clean(dataR);
      vals[1] = this._clean(dataL);
    };
    Blowfish.prototype.encryptBlock = function(vector) {
      let ii;
      const vals = [0, 0];
      const off = this.BLOCKSIZE / 2;
      for (ii = 0; ii < this.BLOCKSIZE / 2; ++ii) {
        vals[0] = vals[0] << 8 | vector[ii + 0] & 255;
        vals[1] = vals[1] << 8 | vector[ii + off] & 255;
      }
      this._encryptBlock(vals);
      const ret2 = [];
      for (ii = 0; ii < this.BLOCKSIZE / 2; ++ii) {
        ret2[ii + 0] = vals[0] >>> 24 - 8 * ii & 255;
        ret2[ii + off] = vals[1] >>> 24 - 8 * ii & 255;
      }
      return ret2;
    };
    Blowfish.prototype._decryptBlock = function(vals) {
      let dataL = vals[0];
      let dataR = vals[1];
      let ii;
      for (ii = this.NN + 1; ii > 1; --ii) {
        dataL ^= this.parray[ii];
        dataR = this._F(dataL) ^ dataR;
        const tmp = dataL;
        dataL = dataR;
        dataR = tmp;
      }
      dataL ^= this.parray[1];
      dataR ^= this.parray[0];
      vals[0] = this._clean(dataR);
      vals[1] = this._clean(dataL);
    };
    Blowfish.prototype.init = function(key) {
      let ii;
      let jj = 0;
      this.parray = [];
      for (ii = 0; ii < this.NN + 2; ++ii) {
        let data = 0;
        for (let kk = 0; kk < 4; ++kk) {
          data = data << 8 | key[jj] & 255;
          if (++jj >= key.length) {
            jj = 0;
          }
        }
        this.parray[ii] = this.PARRAY[ii] ^ data;
      }
      this.sboxes = [];
      for (ii = 0; ii < 4; ++ii) {
        this.sboxes[ii] = [];
        for (jj = 0; jj < 256; ++jj) {
          this.sboxes[ii][jj] = this.SBOXES[ii][jj];
        }
      }
      const vals = [0, 0];
      for (ii = 0; ii < this.NN + 2; ii += 2) {
        this._encryptBlock(vals);
        this.parray[ii + 0] = vals[0];
        this.parray[ii + 1] = vals[1];
      }
      for (ii = 0; ii < 4; ++ii) {
        for (jj = 0; jj < 256; jj += 2) {
          this._encryptBlock(vals);
          this.sboxes[ii][jj + 0] = vals[0];
          this.sboxes[ii][jj + 1] = vals[1];
        }
      }
    };
    BF.keySize = BF.prototype.keySize = 16;
    BF.blockSize = BF.prototype.blockSize = 8;
    legacyCiphers = new Map(Object.entries({
      tripledes: TripleDES,
      cast5: CAST5,
      twofish: TF,
      blowfish: BF
    }));
    legacy_ciphers = /* @__PURE__ */ Object.freeze({
      __proto__: null,
      legacyCiphers
    });
    BLAKE2B_IV32 = new Uint32Array([
      4089235720,
      1779033703,
      2227873595,
      3144134277,
      4271175723,
      1013904242,
      1595750129,
      2773480762,
      2917565137,
      1359893119,
      725511199,
      2600822924,
      4215389547,
      528734635,
      327033209,
      1541459225
    ]);
    SIGMA = new Uint8Array([
      0,
      1,
      2,
      3,
      4,
      5,
      6,
      7,
      8,
      9,
      10,
      11,
      12,
      13,
      14,
      15,
      14,
      10,
      4,
      8,
      9,
      15,
      13,
      6,
      1,
      12,
      0,
      2,
      11,
      7,
      5,
      3,
      11,
      8,
      12,
      0,
      5,
      2,
      15,
      13,
      10,
      14,
      3,
      6,
      7,
      1,
      9,
      4,
      7,
      9,
      3,
      1,
      13,
      12,
      11,
      14,
      2,
      6,
      5,
      10,
      4,
      0,
      15,
      8,
      9,
      0,
      5,
      7,
      2,
      4,
      10,
      15,
      14,
      1,
      11,
      12,
      6,
      8,
      3,
      13,
      2,
      12,
      6,
      10,
      0,
      11,
      8,
      3,
      4,
      13,
      7,
      5,
      15,
      14,
      1,
      9,
      12,
      5,
      1,
      15,
      14,
      13,
      4,
      10,
      0,
      7,
      6,
      3,
      9,
      2,
      8,
      11,
      13,
      11,
      7,
      14,
      12,
      1,
      3,
      9,
      5,
      0,
      15,
      4,
      8,
      6,
      2,
      10,
      6,
      15,
      14,
      9,
      11,
      3,
      0,
      8,
      12,
      2,
      13,
      7,
      1,
      4,
      10,
      5,
      10,
      2,
      8,
      4,
      7,
      6,
      1,
      5,
      15,
      11,
      9,
      14,
      3,
      12,
      13,
      0,
      0,
      1,
      2,
      3,
      4,
      5,
      6,
      7,
      8,
      9,
      10,
      11,
      12,
      13,
      14,
      15,
      14,
      10,
      4,
      8,
      9,
      15,
      13,
      6,
      1,
      12,
      0,
      2,
      11,
      7,
      5,
      3
    ].map((x3) => x3 * 2));
    Blake2b = class {
      constructor(outlen, key, salt, personal) {
        const params = new Uint8Array(64);
        this.S = {
          b: new Uint8Array(BLOCKBYTES),
          h: new Uint32Array(OUTBYTES_MAX / 4),
          t0: new Uint32Array(2),
          // input counter `t`, lower 64-bits only
          c: 0,
          // `fill`, pointer within buffer, up to `BLOCKBYTES`
          outlen
          // output length in bytes
        };
        params[0] = outlen;
        if (key) params[1] = key.length;
        params[2] = 1;
        params[3] = 1;
        if (salt) params.set(salt, 32);
        if (personal) params.set(personal, 48);
        const params32 = new Uint32Array(params.buffer, params.byteOffset, params.length / Uint32Array.BYTES_PER_ELEMENT);
        for (let i4 = 0; i4 < 16; i4++) {
          this.S.h[i4] = BLAKE2B_IV32[i4] ^ params32[i4];
        }
        if (key) {
          const block = new Uint8Array(BLOCKBYTES);
          block.set(key);
          this.update(block);
        }
      }
      // Updates a BLAKE2b streaming hash
      // Requires Uint8Array (byte array)
      update(input) {
        if (!(input instanceof Uint8Array)) throw new Error("Input must be Uint8Array or Buffer");
        let i4 = 0;
        while (i4 < input.length) {
          if (this.S.c === BLOCKBYTES) {
            INC64(this.S.t0, this.S.c);
            compress(this.S, false);
            this.S.c = 0;
          }
          let left = BLOCKBYTES - this.S.c;
          this.S.b.set(input.subarray(i4, i4 + left), this.S.c);
          const fill = Math.min(left, input.length - i4);
          this.S.c += fill;
          i4 += fill;
        }
        return this;
      }
      /**
       * Return a BLAKE2b hash, either filling the given Uint8Array or allocating a new one
       * @param {Uint8Array} [prealloc] - optional preallocated buffer
       * @returns {ArrayBuffer} message digest
       */
      digest(prealloc) {
        INC64(this.S.t0, this.S.c);
        this.S.b.fill(0, this.S.c);
        this.S.c = BLOCKBYTES;
        compress(this.S, true);
        const out = prealloc || new Uint8Array(this.S.outlen);
        for (let i4 = 0; i4 < this.S.outlen; i4++) {
          out[i4] = this.S.h[i4 >> 2] >> 8 * (i4 & 3);
        }
        this.S.h = null;
        return out.buffer;
      }
    };
    OUTBYTES_MAX = 64;
    BLOCKBYTES = 128;
    TYPE = 2;
    VERSION = 19;
    TAGBYTES_MAX = 4294967295;
    TAGBYTES_MIN = 4;
    SALTBYTES_MAX = 4294967295;
    SALTBYTES_MIN = 8;
    passwordBYTES_MAX = 4294967295;
    passwordBYTES_MIN = 8;
    MEMBYTES_MAX = 4294967295;
    ADBYTES_MAX = 4294967295;
    SECRETBYTES_MAX = 32;
    ARGON2_BLOCK_SIZE = 1024;
    ARGON2_PREHASH_DIGEST_LENGTH = 64;
    isLittleEndian = new Uint8Array(new Uint16Array([43981]).buffer)[0] === 205;
    KB = 1024;
    WASM_PAGE_SIZE = 64 * KB;
    loadWasm = async () => setupWasm(
      (instanceObject) => wasmSIMD(instanceObject),
      (instanceObject) => wasmNonSIMD(instanceObject)
    );
    index$2 = /* @__PURE__ */ Object.freeze({
      __proto__: null,
      default: loadWasm
    });
    unbzip2StreamExports = requireUnbzip2Stream();
    index = /* @__PURE__ */ getDefaultExportFromCjs(unbzip2StreamExports);
    index$1 = /* @__PURE__ */ _mergeNamespaces({
      __proto__: null,
      default: index
    }, [unbzip2StreamExports]);
  }
});

// ../crypto/shasums-file/lib/nodeReleaseKeys.js
var NODE_RELEASE_KEYS;
var init_nodeReleaseKeys = __esm({
  "../crypto/shasums-file/lib/nodeReleaseKeys.js"() {
    "use strict";
    NODE_RELEASE_KEYS = [
      {
        fingerprint: "4ED778F539E3634C779C87C6D7062848A1AB005C",
        armoredKey: "-----BEGIN PGP PUBLIC KEY BLOCK-----\n\nmQENBFq44CwBCADNRnp3EGOqifmbqOgRb64hkObYdNAClPy/aQfxyWvrZBuVw8OF\nDhtziM8M8g986wALaE/nCMufVLrWLVFr4hDHrKr9weaX8vdrPVgvbk/wLfokumnT\nied2EXUYv4i1+PFPLnBEfb/FhG/x11mSStIra74JIw7C3uLbBdZfU5SBI9SRjFEg\nIMHnnTVrXsoZCf+MBUU5nN+tEuOk5s2bnb8rZOsDfdkMLblLbk7j9OvU4OfJ9cLa\ntNk0wsvrXmOkxAkr0NNwaotb6xqQwXML1obiBkLl3cZ8c9PnvxWnEau8jItvO/+n\nVOgSIvCQd/obAZzAYWPKrYwLp5iEwejB66XLABEBAAG0IEJldGggR3JpZ2dzIDxi\nZ3JpZ2dzQHJlZGhhdC5jb20+iQFXBBMBCABBAhsDBQsJCAcCBhUKCQgLAgQWAgMB\nAh4BAheAAhkBFiEETtd49TnjY0x3nIfG1wYoSKGrAFwFAmBePXEFCQln0lUACgkQ\n1wYoSKGrAFyFMwf/dwvX7pOhVOhaXUwc0jhzslRnoVCNPcdHJvTXRWl/sdMEcgZN\nI074o7hWBhEy1q9hveBA0d+xNUW7akcHSgzj3hU3PqKqtX6X8x3Z/vymlBCX3Bmn\nEwydEvMK1GVLct3StgLQDw4iq9vueIHUV43H3U5Qpr1RuO4qrQiFZAD12RL+aAT/\nGno6pDqOOb1GrxZJQ859hsWXh1cnoI1r6AS/ztnkPAofXISe4XxABNh2dLZXEBSo\nyXMvc7LSLsJoT8sGdRtjMirDRuUN6D1lnOqe1kcE0efv22igBRpVlOF9rgAi90Go\nb5qSfnTysC/306lmAWlj0Rgl2OBEEl/1fzRV1okBVwQTAQgAQQIbAwUJBaPvfgUL\nCQgHAgYVCgkICwIEFgIDAQIeAQIXgBYhBE7XePU542NMd5yHxtcGKEihqwBcBQJf\ndgz6AhkBAAoJENcGKEihqwBcl28H/RS5pGfdPEsR0UeB9F2t7W08m6e8f3nBdmmx\ntEC6qowZkv+LpSxApBpb9E2iig7uv+5yenkwqdCZRoFhtmYdhHGAoez0bLMLsUSA\nlLdmaj7U41QntdB27fRhB3VXdbvXmMugi7nKw9gOLjepdetWGA52S9uHvc3PlZmI\nsY0FUR7JKIDCbkMHQUMnKj0+zj8giuaYGapzBUI0ZWUbxyem/l5xZ+U6ufbpU7Sk\nXWjFd097OXoQzw7OiEdVRBZEZj1QIW4vXQlWBZDwKXAB+Oobz7/muJIVPDN6w1ik\nZf62zHWzTpLz+VDMDKtDNtnGqNV5/089+oonG/x6dfzhdIIs9uGJAVQEEwEIAD4W\nIQRO13j1OeNjTHech8bXBihIoasAXAUCX3YM4AIbAwUJBaPvfgULCQgHAgYVCgkI\nCwIEFgIDAQIeAQIXgAAKCRDXBihIoasAXIZJB/9QBWKhLUV8El+bE7XplkwgnLWv\n4eTvR5dGDLNo5sYXQxS5y6NG0/mSC8biez6tUFfnqY1lp8uKz1E8BZlcbRUBe1bx\nCTDCr7psIig9IqKOYbMNpAcrnVG2wv+TZz9Sb9PJxgT2Pqwek9KiMPTJk6V3fWau\nGKRsl11ur5tpx0SiJwk21iv1YVHL6Vz6/E4/3XMEq5QpdjLroCBqFBKbKgDHQUYa\n6G/h8YU+WkdncVi331WX2ukX88Z47b5nagXN5FHEHMA44qWyqKJbts5LHsI+hbUK\n4zT+yNxSd0jmEuGi8kYvzz7IXGBcED7CCY2ZG5wlCVa1O3L9FqHK0EJFkOjItCdC\nZXRoIEdyaWdncyA8QmV0aGFueS5HcmlnZ3NAdWsuaWJtLmNvbT6JAVQEEwEIAD4C\nGwMFCwkIBwIGFQoJCAsCBBYCAwECHgECF4AWIQRO13j1OeNjTHech8bXBihIoasA\nXAUCYF49cQUJCWfSVQAKCRDXBihIoasAXGIyB/9TCYA8fJYElS0S5OvYjA38l+3k\n2D22ckRrRTO1UvWMSltBA4PWNtKZ9j2/uQVDFWzgxio9n8tJs0b+9U7mKKKovubo\nlYD4tMzsBaEKESd+tOgwraAPqkwT6jQt49R/NspoQaZ1ubIYvYK00mPerGHX4wIQ\nw/9u9douLqTw6Q38J34sxJA2pJ3Rz4OAvPef3MsBd+5PE1OHXgSi9/+MvPzDBGw5\no+N6qm/AyW06v6c0RrhKX4i8POcycLkMdcLgZXLhQacj40a+PP5AeVogjjwMFzkc\nbGJUcMuqJHkf5d8G0SdrVwEOcEfDQmAGpvWtS5JqwZfU9x+J/UdBB70rQ+WeiQFU\nBBMBCAA+FiEETtd49TnjY0x3nIfG1wYoSKGrAFwFAlq44CwCGwMFCQPCZwAFCwkI\nBwIGFQoJCAsCBBYCAwECHgECF4AACgkQ1wYoSKGrAFz3hgf/RfSAI0EfcPPo7t+3\nLvJ6EENvOY/+UJAF5kTLExKdmwT/nx9got9vi8QJ+rHX6RxzGa0tLlzTUOegDZft\nVGQ/aanpOpStIc6TxSPkKqNZrt/ICceDhTl0101dafaIAChY5TIz8KDUsEOmWOO7\nbO6Nk+/IlttM7X6BDC0vHOH09bsn7APQ19fUL0PLIOvjiTkI+knecSnXagVn7Qyg\ne5FLgpSbHgz/MLlt9hSX0Zz9nClI4S313bLsKufvyh1QzK9VnQZFnAp70r3Rw00t\n5LsHdh8Me8h/VqpDQYWyOGlTDREustxvOlN+cRnlsZsCOX8m1gwTTVAPtgYz7GZd\n1p65uokBVAQTAQgAPgIbAwULCQgHAgYVCgkICwIEFgIDAQIeAQIXgAUJBaPvfhYh\nBE7XePU542NMd5yHxtcGKEihqwBcBQJfdgz6AAoJENcGKEihqwBcRxIIAKTG7199\nXR/SHE4zY+FNu9AZZnModHa+1sVdpq1u11cQgjV33xeU4kK0hqQyUv+CcPfPGpFk\nODmIWTsz90PhO6x568Va3SXYtJrXJW6DXIADpxobgYEvxMraxReViuUuMnl+Dl4L\np6qdXQBGLAvyBuZ8Ebq79Os8pMMXccF/KQh1tpNlJzeP6xqWkvLGwFQR05nTtIlp\nOdAc13wlfgojWrDI18lIRYObZ8NBdnfCFf2JcaPXmkEzskNbGG86VJr0YNXo7P0H\n1+8CqxOhucOE/Fkc2pbbUqXcympkaC2OqB/vvrvOqSKOwQOFaCv7cZZ5YV5z20uq\nJavJh6hEwAgZCVCJAVcEEwEIAEECGwMFCwkIBwIGFQoJCAsCBBYCAwECHgECF4AF\nCQWj734WIQRO13j1OeNjTHech8bXBihIoasAXAUCX3YM4AIZAQAKCRDXBihIoasA\nXCr6CADMzDvi2isS7AiwvbDz/y/wtiy0HbOeT/BH1g/ZpArmx2ML1lgxBlD5+uro\nNAYLgWhub3ofV5uOadma65y5uHDzKpdsold1K7zJNlewCjVyEYg6v7wikSY7E16O\nyQRlDN+pSdoNU7N2aAmCOTLul1jRBhMflyjZWjT8NiWCN9ie9THfFtRNT6sPinx8\nb6k9z8arby9rdOHJysMyGBcjCsL6/TTUqwC/ZSBz9yM3nFt7LvWHNS14bNCwoPx1\npOYa3cCRfmnd4LtbXvQ60y81f6MgNepIHi5nJ9YeJy8cY9oANtZggK3Nw4Lv1WU/\n/lixbTsDLcB8qe9AWPlH4Mhka9/ZiQFUBBMBCAA+AhsDBQsJCAcCBhUKCQgLAgQW\nAgMBAh4BAheAFiEETtd49TnjY0x3nIfG1wYoSKGrAFwFAl57nCoFCQWj734ACgkQ\n1wYoSKGrAFxoUQf7BS5G4leywWU0tTeh8sT1dcfjXpF6LT4Xp5Z8dKPlC4ZZ2VWo\n2YjRwggwmhXT+01dfV97k5/cge+a1QuI/ItajjhaeeI+Lgw/PfeS1UwaHk/r+5z/\nR1jvGB+/yXtSgI5aQmwxw2T67o/PlLx/qPkyw3iqMdhuT4zrRHGm9c3nmZyGm573\nc2myvOSHmgceTyscIxRB5187Xtm5A+ur+NEBCwF8QwYqsznz4B6mTc0zkBxxfzJa\nIsrJNgCT5eD62+JjJCKlg3uGOJ18JvrWEJsigIjlgF8JMvVO/qcYsMoDNPdLxeP7\nbK1NTfzbIeVyPYIoDdhWHXzNT96Q7YWqQssbEokBVAQTAQgAPgIbAwULCQgHAgYV\nCgkICwIEFgIDAQIeAQIXgBYhBE7XePU542NMd5yHxtcGKEihqwBcBQJee35/BQkF\no9HTAAoJENcGKEihqwBcYzsH/j1Bodb0le0jwRly3K81UASvCuPzQP4o+7jbMC0s\nyfAZIgqTdaKq3H0o6TFg16ByyBQCywXTQ28q5rMUMpzS5rBThdDD/88lmMAwQb0G\nO+cpDWUrtOrfzsPX9ifVp/IAlOlOvyRNx4KXFca+LUegkuSU+HFSbihjebTfHbEb\ndSPma7CIyDY/zVnwprOmysOcIItx5MW6xc/lY62CrcHk2ivM9ZRt492zY0M6Alqj\nkprLes3oH8HswhdLRdDT2IfFO+0zwZflBIn0bepKkXzSzNBeZ0JjY7tDfV4w84vM\nVsJ53MG1b71WEALhiTMWj0zzQeSzqLMJVOt79olDtHEWote5AQ0EWrjgLAEIAML0\ngaAcTl01H3mhCZkbL+yRpknAiUNXFe56bSkpxZFP43X3N8i63NF9iLYzcjgicTHv\nrF5hZQXrjqMPPotqR1jye34qfp3pZ/3pqrTqcGgRTZ0z3aMr+G+eNSIhd5ZlGgXN\n5U4PAddehK7mst9tJbc3+xvC/sb0jc0nut7D40jaKMkoQjb1MGlmZ1NmunuyJ4yM\nsI6jbq2Qm72duML1GC12i0FU+GfUdk+8NU+GR6j4lr/QPi+X4O0RPfdpzXm8cQ6w\nkCzrKP6a4LQ06qSG26iwue3V+H4WjWCluapsZ+RADUdB5+DCHboPu5jS2iecHVxA\n2byPQLuOyW4p4igSkXcAEQEAAYkBPAQYAQgAJgIbDBYhBE7XePU542NMd5yHxtcG\nKEihqwBcBQJgXj1xBQkJZ9JVAAoJENcGKEihqwBc/9UIAJRkCDOgNLX+mbpo+29p\njoU+KZj5IE1R9XggKjZJeAMOZtSCMt4QNQLYDBP6fnuSVEt0L6t9CCwbQgrtgknv\nvq1urynIp8MQvMMRaN++uC+7v/oTO/Sxlq8w08HCX0+SmA+upSECMv+pehaZD8pT\nP45AVubs4hVZf1O68/4RMzOI7IDF6sJTl8GSW8fWbOeOa0XR3l46JF9MJzWKozMF\nDDimlWvZOxxUwM2eWPVrP0dqN26r/i2EGgyY18AGL/SUBIpzp9sMnh2qDX+2Jat7\nCGGhgXlIlvNNx29Ru5eTE0k4BVuq1ZM+rgQTTQis3x5tTICxog+joxMGVWfC5s2r\nMH8=\n=H626\n-----END PGP PUBLIC KEY BLOCK-----\n"
      },
      {
        fingerprint: "94AE36675C464D64BAFA68DD7434390BDBE9B9C5",
        armoredKey: "-----BEGIN PGP PUBLIC KEY BLOCK-----\n\nmQINBFWujE4BEAC8YwRvCMbhE0CV0F7U3Swr96hLPerVWEVmFoVshq9acXc8x+NL\na4BjGBt+GBZR2E6cRw4kEbIHmNj/XEE2fF4MG/L149feRxMwk8SuakQbcbvopSmZ\ncVc+IqLTYcZ36nJH1Vvij4gREL2BnPGHZKSJ2RxMtoc75t1Mgdx3D1MmOPHrBmCB\njN9xCvMBx24Fv5QHCXoL5ObOyZbJ+J4Et+nR2e5tL5ixWXA99Vomy6mAkYIinlNc\n/BqvV7E5eWh21a2aHCD0j0msmVkQ9dZA+wmsh226P7YwOkjSOCU5einfd4t2AoJt\nlg2YBSmDd99UYx852Y2BibRBgh8FoTmx9vjDdw8t1CGv//9ApFTUeVYe6Nzw2dZB\nVuVXvWkAOAiunrizk8ZGA0kHJwJ3ls+LBiYxRd24JidDyHs2UfLYvp8tolQFby/f\nNdlHuWVzd/rsEJBlpU64VDvibWpXIQL5qhnqitdpRmHMQToxrMy9oFW/a+bdc7Xn\ncZalUDG+chsjYM0LLRNZdsZ6mvYA+MQWJ5r69oKFPIkKzmkhUrf+AAoSPWIL/Q+j\nnPJDIClMtybBaWLgKe08f6xgqIMTGCxMulTiqNaTHXY7NMEhhkRQ368/WLV1LT6/\nPyPVfuISiYuCuwAjldotc1ijyg/PJuPKSzH7Wbf2nNaHHYRSYAPD3adekwARAQAB\ntB9Db2xpbiBJaHJpZyA8Y2ppaHJpZ0BnbWFpbC5jb20+iQI9BBMBCgAnBQJVroxO\nAhsDBQkHhh+ABQsJCAcDBRUKCQgLBRYCAwEAAh4BAheAAAoJEHQ0OQvb6bnFcs4P\n/A3qsO4+/boj+nJcrUJlG0vkWf4GQS3gPLZWUYbsEf/o1Dr9TWImkpKu+hC+a+x9\n6pNrmXNvZd8j6rV9vDqiYeOO5rnS2ZjmSElJM5inqEFwZoT+sG5YxeHdpRBF8m5x\n/WGYdvr9OQQUN+xwC5lT/hCjqXs5SNsRcfty+jhA+f1cbpbTUU1OyaRJ/xC+mkLI\n7e05ugXAWGI/kNAWSVxJdgWZ9CNckGbOPXKKip6DNXyS8B0sgpDo5TYFDkTK11Sa\n4oBjz/HePpx4ev1TyK8sbe8H/icBz4aSnHNaGlff8ypR6baU/De22mj6bLbA1kq7\n6/1OJhpt//T+Z3c9p+KRt1sX3mJYg15xYP6BJbSZGWe+8Mxg+F4hc/DgDH3z9IfL\nfI0IvR1U8ikZZGqbtpa2jsQz3Ip2xaYgnZ1sbHQj/Q1/aCWegxDR97YvsY9Esiv0\nPpnnNazhaVQWiGODcUDVb9jY9dOAahmgYCXUNL2I1DbSqw/fbT5ECMejVvyDT7lH\nyJDuc3SLaaxgMMEMgWbKpnDPiKnXjUDp/MILLivFMl5XGsUqdcTMBYkX+LeMtgLC\nYPipiRieKmLL+bJdEEVFZA/8Zwf++DURSO+ahQ+Tr1epWfA20GdWGReYN0wY8sCg\nGWnXVBb0wXjnSQ0CFgLX/SO8WFtFGMP/8PQhCNYNNggGuQINBFWujE4BEADGIQDE\nIcsQ4ykBhRxShY7pRUQ2SEEmHn76edTXa6cOt8hkOAl2ZVVkmbYy0nIZVgCZvS9J\np3bYlq1LhKFQHeFYdbFwD1LNbSnPPyW6XEL+IXVEIQDDeq5DrlojYcVfwEHThgfS\nu5f/D9iARNdIxHCrJ7Vet3Gq5cezRddE4uPPpHXjJkjJT60qswtp74RzWW2mhn85\nBQpbS+xA15n5W/IJ6ujYrrfpg9JyLl3fdx22iOGW4QZqwoOkuGr+18g0rEunuLE4\nGBqRqIfpfx4ujHn/eHC6QjgCUfsl7iF7mLwzZGwarzx9i47ASHpTbgBkyFOpu1Nn\n5aHMRpOuocnz2ZjyQINrbO6yODyHdhD0MwMsE50nPgw147TYaUSw9GL9mVqJfT6k\ntzlV4fKmMzD1KV9N4lXyB5GxiRAwHXvMZzLWwzNVNXndPNtAGb+vCNZvoHTuMfKZ\nHxjJE5O8+5KoQrx1ULXLW58WoKswPgZDZjvzB98oyooBYBY35WlBFJKDrkBac5Dn\nO3H9sFgqxVMx3MuT8/ySfX12RpZK06AO7Zz1YqWZQNFpXOiO6MbyGVZGwoaOS4gh\nJYCKolb39Fw/64M6lisBK5sL7GcgBlmBswaG4TtZqTe9B8Ubj2hFoCceJY/EpZtZ\nL98JvPY25MixC9nX2oJA7zJAcCyjxjNHp8th/QARAQABiQIlBBgBCgAPBQJVroxO\nAhsMBQkHhh+AAAoJEHQ0OQvb6bnFAicP/ijpdJQC650vD9+wxIgP8k9ay5CTvvI2\nVPYdlJrunCerY9jYAncnpvdNpopQ0p1F4nt5/W6EdD4Nj9pPb5ipSA/xh/8+TeX2\nsHU2Ul0JPsRwTFodl5rTfeovIfgUcL7r69notQLLK+CmHxJAWKCjmkwOwENPLU2+\nOqOo98DpoVpLWN6aF9LGY2WvNei+TP39pjUVQKS72tkv2elpGXS7TZqR1xnBMvDk\ncOG6HgiJl7opn+Hg1jwy8M3rwyvNFcN3k07J8BqmWqM5IV6j4xvWSjCpOfrGIKWi\nJUWSHCOFH5RgXaYs6AQia4iK6xGHork16vtMOeFbXW0+vWZd0/h93edeO6NkGxgn\nJ7Ngm9uWZzn0qL+HfpQA3v3LyqaFdpGzmTycRzaTKSrHX81rp4IZtO4n99PZL3lW\nG7AsuyGNI6zdnrdLdmXEDGdRWbdwDOxVRrIsvFb62dpW6UbAwa9ohy4G1rAwwkCh\nwR7NJhOSPMkbEeXCqyqAgl9pzHLV3LJMq93tzstVBxO6frcTQ+wAeXWsQA4az45l\n3X8O2c1wbhgNcGpaOz4AZLeeKb4uyMPLXrGTLHsGkeAnsHlPHoFst2w77waFzv7Q\nzTbeFyQlqZoK409fCdxzre1KxNOoox38cH79ffsjinQf1Q5zUIdR2QCnVNhbHMj4\nmMJZL+1dR71q\n=sm/t\n-----END PGP PUBLIC KEY BLOCK-----\n"
      },
      {
        fingerprint: "1C050899334244A8AF75E53792EF661D867B9DFA",
        armoredKey: "-----BEGIN PGP PUBLIC KEY BLOCK-----\n\nmQENBFtYnJsBCACdDOWJYl/Zd38Mt6kg3j+ooN7sl1bR+SBPEv4yS+lK0cLenv3F\nM+cYZEy152H8542OpJpASvQQ+N4TSHcoqDauSR1oQYKkHOj3k+U7wgODlkh5LioO\n9Z+WyMuawMcaK6daN323OdiEt5uALLP2/60BC6As9Sl6KO7BSz2nWjEqtb4daGps\nxzyjuBgzl4A3Ct9PpBEuft4L6TVhLv8bQOTJIkjM3q4iDX312elbtZxs+4wCsVpa\nsY0OaA6UVLSxQChpaXdpQiHEn0Obv+C213nm+BLpwNUjnzkxzEvsM35Bb/fY5Jyv\nNfNyKfXp+795b3z+cTokJUhb4M+rtG1vw7gBABEBAAG0KERhbmllbGxlIEFkYW1z\nIDxhZGFtemRhbmllbGxlQGdtYWlsLmNvbT6JAVQEEwEIAD4CGwMFCwkIBwIGFQoJ\nCAsCBBYCAwECHgECF4AWIQQcBQiZM0JEqK915TeS72Ydhnud+gUCX2ogXwUJBJVm\n9QAKCRCS72Ydhnud+uZIB/4nxi3IG5AebPp1aBm9jc021FXFLBjiBi7C0KJKoj/l\nij9XEnGxULiAeon2TnH9mAIqr8sEvyK80M24gQACGL7HQeEPo36+mj9yXXHc/6wo\n7gQq9omkEqoGJeMKrNCFTXv8yBUXMMku7oaVwmvszIsAKSq0lxERlTM1HTay5tk6\nH1k5Ekq6koDypi7uaJwDOATHZldmSaeA8tyeXZh29Q4nCNCJ5aRi01ZaA2tq/19q\nXv/zCjdjT+XrdLI+8bJuIFYDZgF3E074KdX2cOkFDOE3XZVTDUDSMD4cAVpVtqWk\n2wllId62awCAFVzqM7frlg2GFyQFVjhJ/x0U6u5700H0tClkYW5pZWxsZWFkYW1z\nIDxkYW5pZWxsZS5hZGFtc0BoZXJva3UuY29tPokBVAQTAQgAPgIbAwULCQgHAgYV\nCgkICwIEFgIDAQIeAQIXgBYhBBwFCJkzQkSor3XlN5LvZh2Ge536BQJfaiBgBQkE\nlWb1AAoJEJLvZh2Ge536JMsH/jq0ZP88g2rHC1PKpJMaNqYrSsGEkQomMXJiWQv7\nTVjggJBoMuWCZoGC9kE99PNX1tYyJZbokCy+aw6TnUvNm9JDgPgdTkxllUNh6bfw\nGi8CaKhHQuI/y1YymuQ75cuIrgMxV4y0VR8O5TYHm7ZHuXgLEpKDQSX0cfewaMIA\noe+73QWz64qRQXaz7i9p+L+l1UMsjxU1Rwlj4I9RH2Q5t5EZSDj+Ljsg1lNpnspT\nuo7YtjuHJahz8w2/EN0J9N0x9SD82jFZB1OUzWcSxPDAZcmPxhl8yuXZedSjd12+\nRtzWYUrM/2I49WImTvCrpdXDMetSsDnK1+5vsinuugAEQvG5AQ0EW1icmwEIALl3\nD4Qh6l2M+7zGjtf0FO3y48ud/QcWpcy0q6GIRZDd0lrn41UJhLEyLMBV9VWzsagO\npASTR8oETMbDrjMFrL7GpqgCRYbrTwJcpXNsCXV9LwMg+EMO7ulCKZlQ7ZecVdJY\nJceB0eu3MBm7QMgD1JoTiEUE0QMrLxnodPcghVAZXyMdvWqKv5vEYK38nYSGyfai\nhA65nHvphI6e9ZYAU8mkVn+qLsSBiFs32jDgfl7PnBf2h5yTfu/qTAMk0JhI50ql\nTSrRVb4LYL9VJEcVlZ0+VHU7IbHZHBfZVEEAn5TcYzc4gkhRlHnZYwZYXxWyhdb1\nSWp7kl2L/jBVkNhbpJMAEQEAAYkBNgQYAQgAIBYhBBwFCJkzQkSor3XlN5LvZh2G\ne536BQJbWJybAhsMAAoJEJLvZh2Ge536xW4H/3UB4DnR5p/BcXeMufo8zEcpfDsV\n51KRtcAPq5bmjQJWQ8uYeorQslUPFufw4+1tv4dwmKP0Zx7t0G5DJI9BzclMV4ot\nWCrANP71Z6g52VeKmUAY5nSBzg6cjo5vzkpv/4MhbsyTyUxkrZSxsDoCoQURJyEe\n+SJItRY9+9HFKdW5ercag1nln9tRVWeCfEgiCxfg4xiUu+ngkgU9Ps1YCCgEl0+P\nDpOCw22UTW2cf5wZTr6THRHeuuAZUAxJXWCJ9WacTkJu7irCfNc1BebbINd+O3se\nHiCpJpIGZQQfnMzE+CsMSu3u2gwUnWHBVHzof7wbgs94u+xEgNBjQ6QkbbY=\n=ZsQu\n-----END PGP PUBLIC KEY BLOCK-----\n"
      },
      {
        fingerprint: "B9AE9905FFD7803F25714661B63B535A4C206CA9",
        armoredKey: "-----BEGIN PGP PUBLIC KEY BLOCK-----\n\nmQINBFZypZgBEADeIdm42LaylSWw5CosOAte2m6S9DgAGEBrg/yHSFTZWz341EZr\nlq1fghIC9nHh09wVlJNOOo3orB9tYoJ3LArB0MQb7Ha7dcnfn98O1od0T4QTlEro\nEeJaOfuElLD+5b9HVYqhdRtMIFiUTfSTbEXbQcvZhaLf3M8aI1G+poPRYNVRx30p\nX9PM5N8DDmW8Q/xYg3T1uHuYUmd6HlzBiESNE2WWcJoxoKuQR2Lk4Wkt+qYnxdHH\n0vYIsk9mN0yDySpPEv+kzrAU/UuZ9Ve0GhlLsVLL3yHFUjLQOx1gV/ofrV/v0vcW\nM3+rRovU1cFPUUv75mzA/TJ8aseAbboAY84RyF0b4jQLOmiTHWdDMSZwDVR05r82\nJqynI0GGfXRgztNpnnebiYk5QLAqvUzzdfRMyrU0SSl6VDCXUQAEz3CyODwJ8GGk\n6PaTQ9/9vmt3OY4leEEf3SrSwH+l4E8Z59gCvAUx/ao1pIacPdCd/kdx1mPVcwxT\njiPDMp8sIeBSdLt9Lo8jt5m/92nKoH9SnE6L4snJVvB21mfwRxRj1cWmeZ1+BAC7\n+5WfcJRM6xhr7XXeEmZO+QQYjLzKS1t+zIsv1modQMl/f2ciSi1RTO82mIEaCfRB\nXVEpewsRV+nikjsAJ9FOV+kr4NAUIg6zg9QRiHtTulm3P/c7iRKFnbdehQARAQAB\ntB1FdmFuIEx1Y2FzIDxldmFubHVjYXNAbWUuY29tPokCPQQTAQoAJwUCVnKlmAIb\nAwUJB4YfgAULCQgHAwUVCgkICwUWAgMBAAIeAQIXgAAKCRC2O1NaTCBsqYJuD/9V\nd0yTYaSYj1BWDusB8GowhVsiPiHFO+b7LPcNO60mPOU8emJCyIDR7MZTzGuiHPaz\nxV4zYgK1IEZ1a24M483i+53Bquej7nqch3AGVlKA9okPFNTsJOt0QkbuPTGztU++\nZSfiUnNpY7hMA0f5rZVoHg1BIOSv9jzt/Ej4PPRKoiMB7f0wSeQkYyXojq1ilcZD\nYIuk9il6dxD8mLgc5HoJcCLIhuBUhqDlEMH/1yODqoonDJMUShJqOZE+1Xp6zJ6w\nBeMC+IGGefp8UyIvumtT89l2JrS5j+6DLPRC7IKoo9ZcdKwdX/erX4vfee2uorDL\n/u64oN1otYEeZdz571rq+YipTlyqA+4kvmzxl6Vsz0hbVOskttLOTrjQkZ+wu64d\n4VpczomevsqZcETrIwy+0lngkOxsQdh085kO/Xgh/abRjDkWd7bxWkdMavmfY0oe\naHi1/NWWiBZn8PM3EFhNINVgCjLdfwD+gHJ4SFZCXWmVcxIelo9kZ0Zwh66LViDh\nHAfE2e/pr+tQ37hW5Sj3LgYUlTKkFL4iSlcib6EKL7BNmmRtmDDpdn6Qk5CZXj3T\nIqjGnpwUygcNxms1vv2ZtHqr2dPmnVJT8kzrQhQHaE3yTLyeTjrwPnFA304BOaEm\nkdCbAVV9Qk6UfGV7Hf2rJ0QI6TzpLotVN2QclYG62IkCQAQTAQoAKgIbAwUJB4Yf\ngAULCQgHAwUVCgkICwUWAgMBAAIeAQIXgAUCVnKmHgIZAQAKCRC2O1NaTCBsqck9\nEACqOdwRtnf/X2vqdsOxisPjxvtfb4jFC1j09rsWcXmOoVRFxphriX7Y+Ea1+pwA\nSeMHR6UP1gLpbISMVKoBxDp0n916sTxH5KPeq5o9xcieRAoNubzxQdEArwCkd545\nLv4K1SlYTNWUZxECHCkHEcpUA3JBOYzd1vkJTS73Box02zOrDX2FTX0Naf2pduNH\nFsQ2b7p1Wj3XIEN0YDvHSmWCKdqlQRfxYL+7qakd1170ILqmPZpjItU+jLkL7d7W\nXNgI8Ej/30OBygNntdgUZieB40Ogzuvye20lCHjATF22bbD7gyc1etAIZCgtCFiL\nCoprJTO0wCky3wesjRTEnz5n8Vlz/XWLllCEOu6b3iWJVKgHUUP7AP3EUITT54sB\nuDEnHE782zhbaYGjcPJQCWg0hKTEdHnzQai0CagSElwrm+ez2kK/O1R6QDdo9P/x\nxrphl6PoJ7nHjgvgV8kuoH/OllN3E4SZ4TOEU0a909QBKmoikySTtlL/ur54+4v7\npLnKFoT21JD5So+JUeh6iXJHDId2yez4CgZGh6StsSZsbDJ6dxput+STMyoDOZuW\nuOjBHx3Zi3tSMkOzPaSGfvVj3SPognuGd4tPU9rGCB9ftMW/19zs4Tz8G0j78lom\nPXygUiKKZ6q6BI0n9pN45Dn2l1UGF9RN+FZdANkCww12QLQhRXZhbiBMdWNhcyA8\nZXZhbmx1Y2FzQGtleWJhc2UuaW8+iQI9BBMBCgAnBQJWcqYVAhsDBQkHhh+ABQsJ\nCAcDBRUKCQgLBRYCAwEAAh4BAheAAAoJELY7U1pMIGypAdIP/RnIwmVyCHRDFn6i\nJlRkIn+VDfn6NiVloru2VFEaJlGnSZuXaYk++LvQLb21SJCJPU1CU/PDmAOBSVKW\nq2xCog9WVDdUZLN34ggqGBJWQFMYFmlTFrYmDHrSO7FPxi4/Ul/8UmvPIOV+gkLM\nJLp4+4aEXh2dD1lOvWPX2tVxaUeMp28tpL6F1RHEHUzF7hv+Ek1oTfWPIDIl65W8\np3vVUOG+VJi3iFSy/V3/R/xbI+6x4qrLQPiBlxQQ8nXaXaqRz7CzY0xuRh9Xq7XG\n5tpiVHgvLr6frZFBQiCnx2ULDLpFC8F+5mEZQUppa69u0O/EbSf2pVdI6KXqFNnQ\nNuHfP+ueXwQkAZOjQNIH1Hi4CHJhG4iH1TA9FLjggv/OriMmeiYz3aOhU9vDXEvd\nvMqZSViG03LBzESz2LGfRBjuyU7PjFMKeRN8BiyXrHE8wXVp0n4Z6lhfCVAo1cVG\nieU5a+hSnC9XWQ12UlfkEwE/7c2FDQBpw2UCui70PQTYumWO2dP067+HH7ojCyUi\n94tGQWzJLObz+f2y0TIWYYGgyBie2XaYrkO71rl/vyxgXQV8zMvWkqSOpugzW/dW\nyRPQGE6aS462NgIkWedujrl0VZqAG2vfuEbiCWX+SOEWA99RZgGvIWjIkKseBEsl\nQvRCLMOOi9K/H0BqeMjnLf5Hu74BuQINBFZypZgBEAC6T1PynefGCGgjhjIefXBg\nSx9d3X5UcnF4+JuMG67tEau1bXBAucvbD/FZAOc4sCX1K/yH+CsvvTam3CiV8IkJ\nGBgIj4VkWlNbi/zQvgw1+bzOYRVth57xh58SHUNHIpl7ccFLMOhmCjUfAak6xC/P\nVf0XtK132Zj+uET8Ek99tCZfpxaZuRmRkctIdSnl35AjmV4Wb+l4Rs7SVfxH8JsD\npu8PIF8rsGU1JNTVcujGaiT3GB5vJjzO2QnrC2s3PE2TDgn9jDCs/i/U4NgcrA4B\nJh8QdH4IIul/U8lGeQcZJb5/iu8ygBqj+ZylpLtHolC61XrFJtTb2X2mILOwOqry\nHLuizuSkZOpTG21hgdQ4FnspnF6yFvOXuHD1RWNgU7jesASYBGxpHRy/owzwevSx\nqvcxnv39P4R1BMmg9R6hx6nfQK60iwIm1XB1U6XFbl9mpIgrifo4rebsGaiXg1DR\nhblOe7qICqvOMz7DdkFCpCzNSbBn/3LZnDlP4fyu7/+y60SU55lLwp5PmC2uJklB\n9LYHRKvULK3Kx5VkXftYxy7DktHJTpJpU/M1drQFDYISkiQUOHKhMYndr4fwNAgS\nE1uQ7ym3fUF4EX3Fouwh1W18GL62PkcV2i5VkE+Bev07dBonunntzpHRqZulsp9N\n0Pi/3n6s7tMx8oR89oe8ewARAQABiQIlBBgBCgAPBQJWcqWYAhsMBQkHhh+AAAoJ\nELY7U1pMIGypmoAP/2GV4IZ/V2lt/SEY54Q51YhRaQHGT++cvemkfCIQLJ+nWOSD\nFJZUaZiwNF7sC3U0crXMJ87Ais5LxE5EIFqqjKn/cbTZX4a9Jd7uNooZQvGzT825\nzr98MH8Go9PZdodcSwwtLf6C/gPa2VYI6X7wpdfBS1RaUB9SW+PX0R/rQR6uWVyU\nnT17xk9tvHzFyauxBAm0UWd96C3I4zvHujrH3If7Qol+fWBDMZZ7lMjId+f3Ix+e\ny39lsaSVZXiRP2GmyjpPilJ2tONe1Bj96MfEev0owl3Uz5LJrhTy99zQdfUNVLgX\nluvslK/WzppNmOXX+u3Xw4c3p3QL9qtyXay9tv2rsi19HULpPE5FkZulscbDrbUI\nEcyAc1CTq0S0wJvVvnPNtUIiOkiLGNlTIZpVp6e3vi165Bm4Kx7KwxELyuE07pJJ\nv6PbHjfbD4UTGGPBxGa39y/h72nh0hv73Ev4HDDRAwgQhALhHsL1eXyc6kMMxLXh\nNR3W/AdBq2BDID1qj4g15FqBnVmcOLJ79AAbszQ+2Sh08PmPGw08D0iAGsqvOsmW\nW+4+S206EIfKl43eLd/PME1ot+FAOepT9CXkQxaAs+ZH7rKmlx8mmowujwX0Cb1j\npkatHhJZAsqY8KUjSXqFfVjPHglxLyP/8ywgi/MBlwSnTTtbHyKmqDyts1PP\n=CMP0\n-----END PGP PUBLIC KEY BLOCK-----\n"
      },
      {
        fingerprint: "77984A986EBC2AA786BC0F66B01FBB92821C587A",
        armoredKey: "-----BEGIN PGP PUBLIC KEY BLOCK-----\n\nmQINBFf3hmYBEAC6YQyQighf1meU1gG8OyjlfRp7KMJJHmxtBjtH5fWtM8IWCdmZ\nnCoUgNbJHIYD2Fn3h/ijX4/S/492mbymadmW24D7mYde/OBuAQCmffjypBCUS5Gh\nZmZF0tu9Dg4cn5Zx+mchnt330m7T6cUreWR1/CiBXINJWQ6ISuwO8MDW/OSKJNyr\nRdrf4Hq73PDBkSkHK3awXVHyHfypeJP44fqBWbG+j437xWJFEqnVSIhMlk5y+qS7\nToZTmjybq0A88tfMZztSuUv6CApGVbS/zxSpyYrFbSW1vZK9glrZ2qJsWZYCBlt6\n17W1P5nWYIpP6T2NLOmx6Hk9okQL+TVrfOGsBkdMBI/KBlV9SlxQFlwIPSj24a7f\nUjpjP82Bx8sdErUM/DREnr7epLU88jdLxazWywI+yh+rEfE4A+9oxpcmxwJtpzP7\n2sVloWhaVLjWDbaSJ+ALvkFr9PmOa27nxnRYt77D5AMWttnjyoWvS8fJ5Bcm+N7t\nbrVBORqk61WCJDmuK9ghCgQ/YnC1e7PGEhxUVYfJEU+m+NIAPcOE0lv3nHSTAunf\npIzHwI9TTkd9Kj4rHzxtQW+tmToeGO0ghnBj6p741rzMYdVHER5isvD36Vij3bW0\nf+qJItIbcDpwiPMBUOIPB5saZzn7toXNMo+fmYAN44pXk38ImnZM5F0ljQARAQAB\ntCVHaWJzb24gRmFobmVzdG9jayA8Z2liZmFobkBnbWFpbC5jb20+iQI5BBMBCAAj\nBQJX94ZmAhsDBwsJCAcDAgEGFQgCCQoLBBYCAwECHgECF4AACgkQsB+7koIcWHqx\nWQ/+MrqkpR3a5vtTz53p+pgU/1XARr8/PISTILA969FZZ4naXPyUpYICVnVMgs4s\nFu7X8D5I0tSUmVDD1zQH35+d8Sgxd52AgrHg1gXa8Dyc3NPamG1yD5rVB/+QdhE8\n34klvs/lG/YZrASQ1VrRH6xVmdBAnGEP19jJ2xSQGKidzs3o0Sj3OZ8gMlWRYJxm\ny+nnhuuKGZWb6U+cQXP8bMTzf4Rxhgmi66snmL3ffffa8YGg/hMiW2m0bXy9/n9j\nAZXjihzGDingPYv6Vh2rO8lPW+woVWX/S/59no1Q7mCW7JEMx+vD8kueT/OYvhDg\nXCylqSkiDzkaTQzu9HRTIt0ODSIc0gV1r6rFpKoBluoJF4PRXbtwYiM+9hHT/lFm\nh4RXrL4Kvbt1kOwThCWQEiR2oDd8O3v4Rg/mNdHjXaSUnHmTDagZEw7QLuIAlQCA\nQK/PIN7q0CVpza/A35rlWcuk95Rx5TYctPfgT3VzDXtqwsttxzSseeDNxSUX6zR2\nMqAMg8PLSIN4sxSQ5DwDoFjGezDt0SFz+f1sZLOX1ZQ6vqSeGK4S3M0tm86MaND3\nF8Ie1o1g/TxrZHVaSYdLXhpkExOE0TW2pve0EhBDLjDc6ntE/kvSnMpoou6xGA1Q\np/BrtqINBOq166uZrmCjuuz+nulkor/T3RbzdkxTDZbscFK5Ag0EV/eGZgEQAKfK\nOW/wNpyORAWl6tXxllhFFfCEHZQy8GZ5lgo+egaHLNXNrMHLG5sOB5Rw0TISEt7R\nxWJ6b1zMJIb2WyhvG5AqQA0Z8E+oL6psKEogkEWkrh67Nj23BnmDQlY5rjzLx/Mj\n9lViWhscnq7RJDUXK62nbtDnZGIbWstqaWdRFAxhv3p7JvDArjTEdNQbZPwyTqcm\npiU7BnXxbAxtJjU32Dg9RFWdmK4zuRqIViATstPF8MWD8Dz/xBdNo0oAWyd4VwNs\nLHNjqMy8/4j2QNTpNDyqcBr32aCavU3JMxlBh1bhAY6jKEJuzDFWAtL6NV9uh3vE\nbKlNSW8v1zgSUtCy5mD+/kU6RAYSXInFDa5f9Taf/DVUfFNAOC8Bwg0/8nLUjDGZ\nvs0Pk+k9caV7ckMf6DTRknHOa1+PO+uqv+izWH105LUlRK9ZD6bgPG6x3p09M19Q\nuZ05/Q08f11lb59I1QJ64kdOz1S45VtlEfC+6bsCrECWf6Fk6cvIFb35zEblAy3Z\nsZLSMk/MkZbRlAFh65APm+z4Y90Rj+ZlqtBYGnTgWh7BPpcoWfLHceHHRV42vbQ3\nlYNzUPYgopKtA3AN1kEck/GOPFqXOHheDCokTpxLnSCjaLcHUEvckMMiC4BjC7KM\nn9WQgnq3FjljNKRld8VhkXLvCH9wxZjxC/ntRUJfABEBAAGJAh8EGAEIAAkFAlf3\nhmYCGwwACgkQsB+7koIcWHq2PRAAkbTAM5NwMd6BU72Yuhy3pq+v6bbIKaaqvV3L\nDfRdABA67AWmECu5BzLXl+FeKCEDsa0J2WX9f6fteAha74c2Kt+UMX6GjHVeMF9c\nhvsBf7obbpggRwAYTDJ1gGZn0+km4gMZ8vBXJoFt0n/jkHii3EwD+fbRDolBUxN/\nTmEj51Q8UXVkBwDCbqca7bHa84aOYWY5SzfmrI92FObcM7R6+6ZNomczyjcOGQS4\n649TSouC8uuiloicjhZ+T0ubXsRfbAmMOfZHnRv5GgW8c+Dv+cUmML1u8xhQDl/3\nC3oaaA8IYZsJiESZvOW6w34715XTvGUGYvBlnSg+FnZ0V1VEMkZ7bsdm0bHol5E3\nzfzU6xWD64Gb2JjX5THUkCqj9T9K40KR2m31kemkqs47Q0inX49PR11rNzW76VZy\nwTiLyJ4ILTwlO5VmniMjNK6rwoJfKUVVlidPwgrLk0O9RYoD3fYn77uAyHYI/kAC\nDhqZBK3vruEQGml878yEYQ7RC87Fae1GBjs2ekw9TN+X5p6rvP48uCP4zkNB/+gi\nga9LX8s48pbof8mesx0fLmBAqcHllhuE9T4WxlL6uRsAfpzgx0dQIPapOHnx6tfO\nwzSUzZBpKVw/+hPrbFbpoRzpjDSAe0XePuiTcVbGZIQtjsAgJsK6t+mGHppWTri/\nKoZmFSI=\n=Fwcs\n-----END PGP PUBLIC KEY BLOCK-----\n"
      },
      {
        fingerprint: "71DCFD284A79C3B38668286BC97EC7A07EDE3FC1",
        armoredKey: "-----BEGIN PGP PUBLIC KEY BLOCK-----\n\nmQINBFRgAMsBEAC1SlN8Db9p/+pQcrlXM0xtbVDOZksBQynOzUV+Y/NBTmeBnYMo\ngh+gTau0Iv7UlDanKlB8pQubo1Gwp6ToLB6pcoh+Zuy6BRB1yHYtNFhrb33QZ5Qu\nQjtnM1qRhIuZI74StyJvfvfg5xG+Z15rvGalIhJ95s3574t6sFnnkdAx3FnHZS93\n2Bv9Dg7FsgKB7BAANa0rTbe0PS2NdzMRtelvomUnT97Z7Ik7NLNYddu+9LRXUqQw\nsxt0bFL4nhGti/+XHGodtiYgtxiRg1qV2XbWdzVJB0KA1MMSlFj56xzvydLZbaAM\nggUm1WE9rUas8klqx+tff8u0zJzoQjD3SZ1HWpmmtujYGiCQ8X9V4dZONBtu7xTA\nspoh9rm+re+paR0/W0GWBzQJMBQgmPrs6M5NN1eNofNvbWkW5XhtMZ1ebBoqKm0P\nZ+xjVmvJIq53oy3GaakRdom2SMeHWaFoSz7hHYzoYy+ZwSD2nJbAlewWt8Fa+HGz\nDw0HS3MOnktYaU/vuLPfa1FQo8xdCLT1tidbgsQMmh3bx6p9y8e4xrKWEkSpenk7\n1BDGP9B5FdDUOBhyJ8xMKLQOigKzeU246P3Mv37allDn870yB340BU7yuGfUhBPa\nt4mV4MFjFZQq2l+1sdI/AU7v+bC4IXjgy4Sr0wO+WU0o+mt0SBGxxhHQAwARAQAB\ntCFKYW1lcyBNIFNuZWxsIDxqYXNuZWxsQGdtYWlsLmNvbT6JAjcEEwEKACEFAlcG\nbYgCGy8FCwkIBwMFFQoJCAsFFgIDAQACHgECF4AACgkQyX7HoH7eP8HWmxAAl+gW\n/nticpxR5GnUjxmYEws7lprXoXAYg6c1YUwAZ/bmzNaSm64qrrME8B1x72UrkcfZ\nATgecEau41pifCsn1WsPlDIzOhGO9TVfkcaBScQK69SmifZk19VQ4e2TuPUL83sy\nYGCgoxWh1wuGadZxP4ldud5QYEDbSNSk21CF/Uwpzn8sws/D0ZqN452KWFds9Ql6\n497HoauzIE15M/JxKeslbnT+00Y/DOyKb67R1uV+nuyX1cxWlyWbLyHbQDyGG2U9\ntIOcC1hodx2CFzv+hT0NwUjSeq/TiuWPZ+mtO3YMGh282RfK1y2p46bfmnopf/QG\nyKglU26yxb7RnrljbnSS6CxqpokSnMmGtOunnwb1YJ7qMCNJvtWjTMPE0hqyW8wc\nhT2o4KLavx9MSUyZw2Azpz9zlmTn2E2jwi4eNFdaIDCMzoU8pXpIXLinX0/ss7aV\nq5YMO/N0A9H+Z+05GIQyDYPdcZrESbcn4uieIujYWk/ZiVjfW1JB3ws6mDZFo5es\n8yJkU9tgbU8oTSvQSIB8ibY0InXTv51AltlDdpb4Sm6B+hKZYptAR5cxEpsshX1M\n5fEicvaeCxdagF6blErbqjWjo4GEZrSqyg9lNsYYhfF2TaiPFMNC+Ztgu8iY3L+Z\nI8EZA5Wcnpg5f+CL/Lka81Pyjca3tj9fAHntsry0IkphbWVzIE0gU25lbGwgPGph\nc25lbGxAdXMuaWJtLmNvbT6JAjcEEwEKACEFAlcGbboCGy8FCwkIBwMFFQoJCAsF\nFgIDAQACHgECF4AACgkQyX7HoH7eP8F0yQ//UD98e/HG/Ntj3jCrTBzmFPRj0+T/\nc6/sdDoCHYPvQZR/glK4zlvAs1GmXh3eLG85W8RuYDfqyhaPsmby8nAw2rBAS7ZA\nn1AWhWJc7UcHHI1Ti6Jd1KJopJxq37jx0Nb1HRo3vc4zD59KVEojXDOrZT2jyfBc\n2k1/R5wHz0+argv20um2Ptb5TyqWIhIVae2PlS9vyzZaKXMFl8Hpu5a3P7TxGi6Y\n88wI9i2NvdYKaNPRMNAzfbNJiDroGWuIZr2MeREfHwls72e9uxUAEp2JNkdrK4RA\nyxJQdPHV9YRyvzCUuCckqzOqn6fjPANLD27RFLYjyggL9RE3XZtBBvVOD2XgxiiX\nWickJaAmScw+7FPyVX2oTtMrJlO8Ma0TJHFSJ5l0BXNloD2tLA1Etvo3UEqaqS6e\nQkn+Qynjh9vU67nvdXhaD4hVt/bSZwi2UqoR1rBQ2IDzq9kVXYvG9DiElrpBo8j7\ngLdxvGhp+Oyl2WTe8/lH4OZLVG+rxqh+t/sSZ6voRqfg/fKG6Wb8ZDa5cRhgYJRp\n1nEta9hse8bWChkYXLScxep+ncsPh1gJStEgXBt8QO+4c93gBHJW0oRTvytj+y/9\nebIyo7WVHylczMpR/k4iTBDo0dkwib3LODR01Tqsooz7MI38GKguEMfFcDpRQwtq\ntonrAexO6AaDMcu0J2tleWJhc2UuaW8vamFzbmVsbCA8amFzbmVsbEBrZXliYXNl\nLmlvPokCHAQQAQgABgUCVGAW3QAKCRDJfsegft4/wVwiD/9w2HqKu2gmmgUiZwPT\nwgPlwIWKscnoyM96LUMEOfoUwc0p8uk0xikbGWkiYUh92eNW5MknrcF71TJnd9d2\nHRkt1l7Km7gGqdQi/OOxGLNU5l5fs1DGY6+owoNzF4htMosVJ300tJXQKYlwO6zK\n07RNjfiVaUU8CMj0N62gzR62vy7a2SI+x1u0vSRU2FUED8GZsVTVsr3Zos7Fk1zm\nbyv+ejiAq1UBnnf1kenKidtcaTz7AJFF//P3Pb58xjur+tYpPh2gHNOw2p2ANdUH\nY/HQdtkpvRT/jiDTUIunOfPjSrVJEWaVfzNHjocmV0uYJfSTuBomtCXdqLAHWcl/\nrWDYO/20MAL3Bvy357zxbhyLhvWiusxSvZYsNKEpDU4na+jH5TpiDUi3ulE5MUEj\n9Vyh4p3n0Knse7Rd0pKvPpV3FklDVlv9pOjpb/TrAq4f5/LfBmq+HUryqBiOlII5\nECbP/RZoreH82LJO3a6wbnOM8gzhf7BKBToiZIEZrNsnpjBCY2X6m/LESO4geEEq\nb22xzxvD8iiZRgIpc6xwjVpBZi+BcGgeOHxr732M93cbUAtdv8DUjBz3fL/sdx44\nnKN8byJ0vSutHhEn05AjAJECykV5L5SGhJhtVCGv/FHnYqeZnE/HoPWTUI76MBrB\nCQYst9L2LRBvHkFXaFbpdngGE4kCHAQQAQgABgUCVGBVwQAKCRDJfsegft4/wYAw\nEAClrLnJnhMnDjMnJPeid+Yb/a5yUbi5LIcXKEeikExznyKogMljF7xCl/gtUZys\nK1GncI5B/1AoDJG/a/6OsTgbIR9RvZosKMJj0m0JNp660ZzzyDY4o1CCNn+mBrZA\ndsEnYxE7Hrc7K9S4fi8QLJRUVstaPeh9HrARB0thzQInaU63B9ZjX1DluPWRKTZh\nbpyd4NcU6cJjapu6l0UkHH4YzRsXgVJCvCkcB3XI6KjkycZbbCuv4GJkiEKUDCFt\nlhaf3jOT+TVD0aErrJ/SDIUsH7hOLjgriJ2ElpE0fdNF7zBs7FjPTaVEneIeBwZJ\nBobM9+cf50P8XVVTs5DzM/28XIEMEjFyoHRn5ghirdGGuIz2VBmMdpm5O0SWmk1e\nts/23YMEh1ZUA+8QgBU9WV4VejQxgHDHfgho4YifXNopHLgSgZa8pL5hk+yWey+d\nWm7QxZBaIsTYjS5CuCjeSZYI+2L1BxuF4PVlaENGEMbzCbLUr7jyDj8Mbd8mxWla\ndxJCyQ3IGuGZMwTyGUjuhTceW8kBFfwUUEsWlsRJ+JvcbbOKr7BlNOlPy4g8doLK\n8S10+2GSQudncj1MQbxYrePSoeEy0e9stGKRwM/gcfLyWJFNPI+z59rkKAdigbkT\nXiYaohWROWRL3YfzJar+jUtycGbXaN9TJr8zFv0dlDZAJIkCHAQQAQgABgUCVUTm\ntgAKCRDJfsegft4/wf8YD/9ISAWK7cJtKiTH9JfMgelUinWiVGyKu5SsvA/eyvIp\n2ZufUXfTCQ6C37Kui1XVZUchtGW+iDX29q1+8uZl6qunezXLGUMe/PCQCCc4y6sy\nWXfKLmUMgIt/ffJmOLh6UG/ituiJULHrhiN6X+vRmnkcYyBWAVIP+xh3RojTdtvb\nNHQf8TI6bIeqEt/h+qSoYXhT+lUGKqvnvDZGwtqS3pAGdJpLSaN3FpgTJRF7RLhC\nt1NC/zy3r1CrcikTmYMOXRq7dGhDSNkIHXjVvEbc2Fcefc74ThU3GwCiGeSjyvmc\nCh+mt5Xwsh+ReOPJKSushWQ8hceTbEK3P/ytXmzQ7jssGlLE11F8nYDK+yq6XnD5\n+sHXdOdc5EvZHmWU5RyZetlHBwvnBAOST9I+dOzLqVcJgCB45bN7BRl8FrXKFEL7\nPTufzqvdqG/a8J1MtC30IuSbi90NtJbmMt60jLmA6YHruO+YgB8zjugIV0yLbcjv\nZ+a3ligRd9xS0zMhCz4EoMNXTBnwLNHdLWwLFe2z9n6jpGaZKxYM2n+vSbJacv+P\nLjaYQwGCjwj2eWt5Pdui9DubL0Cnyr5phEIhxtkPpStFosfBE9uICdbhruEzOeha\nfadMfk4wfHja6lzjy8Qp5qkEEjqdeKRXFSjgFoMSZ5yf3wni0pWvwlLNYT8XoyQn\n8IkCHwQQAQoACQUCVwZtqwIZAQAKCRDJfsegft4/wYlgEACCVatD5VtbCWrvk5mF\nGXeqLFdEwwJxCzy6r8CR8xNX9lihxo7NTS7TXvKozVFl9nclpqLVcsBkB15hD1rf\ntZbDonGUSjPtT0zs7YlfqJTVHH8MKtg4lRiHru65bD5t6/ygBoBHxGsgcVtKsSpp\nLICzpbrv+LEsflK+P0EA/D9LRpGE6cKH4gASn41TqrjxkI4NiUZlFvoheNmT/Jo/\nyt88fn1gh79P3i/g8uk9ZSHxiRzXousL/hcYi/yjqJmQTzhVTEXFIV3I4zqpkroH\ntPidLLuI3mX91xuQrLnf8cO6BEYoC6R2qnMMpBq0Ys2QUYogLzdYwgQczVKFVwZ6\nP23XpNpZmP0/lGwj/WnaMuAoW3BAtwKjJc/MCMkd97fKZdXx9u9UscfU4Vy5rHvf\nBXOsQ7BqygQQ0mLRVDJE0JyUXsHs4eheM9pyf3ZxxYcLk7rvcOy48k4jpJAfxwMC\nsWQuajEh7Rp2bewVGOJpb8pIV+oTP1Q15dAEmEDRSA42uc4rzUMnLq8+59AEGB9P\nPRvDEy+6fceOQ2KzGitvzFw11aKyS7fzHfXFWR+L8ahF99S7iKdF7nAyebQeupSM\nHQW500DDhEGZj+pjtqOPUNuqDZG5gEBQDJnKzGefH/WrHq191pEtTLi1rU6XssHw\nY7/4FdyFGC3bXgquNSZU1G2/QIkCLQQTAQoAFwUCVGAAywIbLwMLCQcDFQoIAh4B\nAheAAAoJEMl+x6B+3j/BW0IP/2R9HNKSifGjTwZ4MYZcbFXfLSnXLaz8AVQQwIdn\n0diQkevICzhbZ7VbcxvgODMjn7ZwaI/gGcPWklVUp4cSyttxAfWRKqEPOr63jblp\nTaSzxAAjnFEa1CJTb3T6d2hvwCd+R2W6Vht3O8lRkOa7YyXVfLnakbeWGDhm2IDT\nHQNXpeuZPHnIcoLpaAsVhpm0EQ8+3Q53sFjZus0h1xh5v7Wfnrxjf/jzQ2MJTGvb\nFxRy/eti62yVAHEYLbw6ud1qZB1vJ9TNjcdnhfEn7gtuXHLMUrAQ3v5HoVBdAmZf\nm6C8S5Ko2kh0PCtfgGYxXIHPeQo34YipRDpe8y5CZ81WbWB8CgTfPnjglWEY3GpN\nA0r0PI0JDd4cVJO2HZQ9qNk9hvKnpOQxbcwzsOt4bZyGkqWGJOKSwMqsFh7HaQfA\nWHnPGz7PRulCR6mOTTPI2LQVbp0zBWfQM1HnsZw1dV99DrGKLiiRigwJuoCc+YxZ\nmx6odKaoBzFe2qqeq/HTnykkhIGEwUHxKDfdXhOwaj6d10gx7Eh2d1puNPMHNNMO\n6y7drNnX5FeTrI1vFNAZst8yhxUGVXLZvjr+PkZDloe3NUxTUdSe75VV9QC0w1nl\nFsBKWTfu92bWcJo+pHsk4q05xqHObq6tcXhdmfBPsuQaTD8imCZNA5W2bDim4Ou2\n9p9uuQENBFRgAMsBCAC43agotjWP18xhtfMOydJEMFsc5bZ1OzRMNAuAd/3FbLuz\n8HSNgB2ff/kRIBj5bjtFLwC348Q8lYIsbNtA8WblumYPuMTPqxpvglUUCnFSmum1\nptCZE3L5aHWRzvDa0cC6tIP5xGJu2gn+mjwUbXhCNKJ/zdloRyuOulLuYjsUjNvq\nY/2y0aKic9qpvUR3JQjdHqiCqs/e/pLfe/j07gKVb9SfN5t9PShmD8hw1yVR8Cbg\nX2Z7xlh2g3f0Ue25QcFZ/5K/DN0Kfb7W0uB620tSupmoLk2kma6qF6fTIfI4CQ4T\nnsd3v5CdM8+zGq0pI9CLSXsiQktIjFdEwltdCVk5ABEBAAGJA0QEGAEKAA8FAlRg\nAMsFCQ8JnAACGwIBKQkQyX7HoH7eP8HAXSAEGQEKAAYFAlRgAMsACgkQc0GxXAcI\nd6yPxwgAmgnZzvl9tYAKrDQ1Vl/c/XDV7FfGNT1rUl6ECGAM2cq3aF9PabjPJqRt\nmYPwrTUYHTfz879WZqX8u4lhD37oSAu20HzmppJzs6t6ZXv8NvEoSyadEteW+pZE\nFrNt+UyYt4iOq+5IKKdyyUMHC4mK+KS1eNsX40b1SFioxy9L06UEicW6oTpfwUTy\nkPva2iMJdldz3z2Vspr3pYQET4qv8YWyftPiusHc27UucDm8v6UssO2EaYmngQC4\nbufkThi4UORgeJaunHJ203oKJe3l5viyuse48KG6+ZE8cOCOz3URW0OGYDV5aJnP\nzWy+gsQG/amJ1y78Hd3JAa8n+zhZBpEID/9gUms98iXNGDhDi4iL2pa4J+vK/sPO\nZXG0TEYkMNI/youAWQRhCoMeB8hK/borFLSnuzQVZ8nPau3YKjbA/8JF01RAaJ5L\njE6uKpV5INav8/B3gUAEAZJXIcFg3OWAxgj3XjkSXlfzSaMNDWXQrrR6Edpj+U0S\nMH231rgz6E7AN/TRaLP90csTeRoxb39sGqEdIc++3kZSnvXIpOs6/7BtKpfolAjY\nRXu7IRbaU8+hA5YV1+5wRokJaPebaYJChljwux/NCybARIL4S9jUXHO/aImOCUrb\nBiIPDrF4oXyY7Lj44rtaKBSRaLdtpadZLR1aeazwpAoyuicXcRrlsH2NMowAE8KD\nOfZ4Dpv9qf0NdHkeRKR9hjmjmKXO7e7dksReyqc7wyUpKnVlekI3KTG9kVszjBWH\n6957DH2khGBWqjnGNwTVeYx8PHQ00IOSDA+NSa5uUkjXKP89ArAhk0C74/Ekdchj\n+//vz0MbzxI4txfvQxzRFXnIDJTvSx5ZY/gR0+B/ZpiptvmLn6fQvAZ28h9lt6fn\nCdQVcLEvYkJbRa7qL2e2Vib40Ell6HxaT9k+OAx3f3IBbkDVXG9750gn+Hjlm4+a\n3b1YjS0gumgN31ttSFKUJbsOZNL3M/IdBQAndCoeTrfYzJecpWVnt4OTu6sjpy2n\ncMp4ZM/mOzLMX7kBDQRUYADLAQgAy35fTSDmKmu14u1wBr6l7fSp8wjgTAuHTMGe\n0pZs7PxtUEZI5fOBszDpoze8Dw6xw4H25AkMk9+tUiGObMs7M19hBGdxNaeM+W/X\n4ySUEB3X1v7o92058+uwFcipiaBZfGhOtnq/wcTH699Apkr16cScSwsMb88jCoE6\nDRCYKIzf+lEGSRbYLv8hGw/F0hPgrX67X4llDgR9CjTofZ5OKzkGZnp/KsrpiIV6\nSXYw+p6J3XC2UrqVJw7lwFvXulRPwYQhj2aX8JGAkyI9xZNUSZUXhpWq2VKV4TI0\nunXXSKlbcwevdSc+WmhHyHT57euWlhLdGSfa9ja7pWdFU6gcfwARAQABiQNEBBgB\nCgAPBQJUYADLBQkPCZwAAhsMASkJEMl+x6B+3j/BwF0gBBkBCgAGBQJUYADLAAoJ\nEIl1uothAMaxNn8H/3b34X3lSzD6vD+IoCkYRrATG16KRC55G/T8uWCai3iD1Wbn\nYfhewAK7hkgPsO3N8XGhoVReMk3ZFe9GWGbDZESwegbL4/MO6/V1cPMc5Xr8bWWh\n62rrH7VDyNA0UH/9NZNKogPf5DA9GYNUox8B60YPCKBljXThx6rf4t0VMyO5HW6U\nu7YSRmKORbSnwoj5zBY3yzjZP2lRfFmOelWpx90HhwRh6pBulIAo3oQWfOFolSku\njW/E30nXxXlvo9c0cYHbEzPNYQ5VgUchkE+FHRUuKDkbofgze90uDB+RogpkjwUJ\nOajV99F4e6VIXmy3+LLgz9MTE58OsblUPeA4Sk4poQ/+I3EtcXZdRKt5McxipEfQ\n/hCxQRElduZ0Y8qqhB8ZccvcIkSCpp1APIxzM+mpOGCBS30n2TxCGzaqgRqydbPj\nzSgZ5RDVRLPPCV5yh/9IN4qaecii6Pq9RHFY3T2UU0JARjOdpQ18jsFl2Umx4BIz\ntNgyuoGH2YpytkLw+80PZGBV9oYLHGDs69bc6zyOPaHc69qXB6Gihn/9vQwsuTY6\nRVVTxxuwZTNwAOcAz7arHSTv7dQaDSALLcbA0qrLRfJCq0H/VUYUMDZyOasHI61e\nCNeDMGmQ1K2rv6glcVoG00y6m+Os6OqVeLRGVBERLRkctbXv7wRQFo+43/ZJxDu2\n8aYR4F1jjyUbEsdvfst8a1/Nhr6vnJwid7Gg3TjVYzOHxBqUblHoRjP0LDd+G/Fk\npWc9pQRSn0cxvSTwoN1UPo9kmr0QqfLOV/kNrwlh0YElr2ArNVRmn5BUyhmWxn8w\n1C07HQJe1LnTkgln65V/+kt2tze4WfMt6OGYo5mcxGiPtgcBSsJEU1IU99dKz1od\nGuyYaS3LXdYyGTKWNrxto1CEkGQArS4Ei+CrTbeb6GAXEn8GDhzfpw09JT2c3Ab5\n12rlNNGXvvSUwk0NjUwuYv7HxNBCjrQQAhoPEZlzZ60wv+uRLNWQUr01VwLxzaD2\nntI6COSRy17o3GzXm9d4V70=\n=h9up\n-----END PGP PUBLIC KEY BLOCK-----\n"
      },
      {
        fingerprint: "61FC681DFB92A079F1685E77973F295594EC4689",
        armoredKey: "-----BEGIN PGP PUBLIC KEY BLOCK-----\n\nmQINBF5MceABEADFVslAVcrIyj7pcWEPeYgnr+psd6CNKlqOslf0+WUFSf0RVl45\nuTckfS/D46llZRGbnOOixtM0v0fK60iSjLfWOTQJWAF8BIHaCEb3nAafZcFGnRb/\nLYwBYHakhtlvQFprEp7R+ja3e5+m4N3x7Rr/WEG57g+PXigsH2oGOZxgjRbaoAw8\nQovG3ngU1/4Zo6p+7spTtPQ2eyhuE3qd039zJ4mKysJWqdZUsByNPfFITKVtbj5m\nhtZPTKwYw4+gAV1aWy8AaEVpRJxGciZFQxp3ZqNgNBLFcgs3IWN9MPXapqS4A1U8\nqLZ9VeWhgFtNvf5Sxb5l/cGoH99u3nJCrn8EHiMsDU4qnrEzszxcOdLiERwtgzhH\n4wvddZdAz0dqonD/PMhOvhbrANx2Z58pq+mgw9BAQuwpsFsgiJj40NSdr3Uy7Hfm\nvDA3WmOPu9eRE6zt6RXcP70Hh4/VFr97T+v6oNVERy8KtGQaMTGtc2tFnqV4sdOX\nXsgZvmdghvQjkVUwwCEBZjNyrb0v1iEHvLjLi3Nli70Ue/HMQQGU4ICznC3rgZ4o\nPNW4fPD4QFtDMz+xh5mIrKNA4TiOGwhtZxrEvpZmU3EmzB+fYuKvfCkOlemV0/WG\nCvH2Va6ejJk/y0tn19eBR3G5O+9r+172MPaKOxlgmSHWi4o45JUrV4VAZwARAQAB\ntCxKdWFuIEpvc8OpIEFyYm9sZWRhIDxzb3lqdWFuYXJib2xAZ21haWwuY29tPokC\nTgQTAQoAOBYhBGH8aB37kqB58Whed5c/KVWU7EaJBQJeTHHgAhsDBQsJCAcCBhUK\nCQgLAgQWAgMBAh4BAheAAAoJEJc/KVWU7EaJ3LUQAJ88l5DP+nccBt+Z8VWUPJpj\nosA3FO7VFSHnPqzPAFe8PNhllyYnhguaaFJZQGzhjE7KP84hLHINBQ6rSyYjOE9p\n4YwC8JjKiF3cNVA8sV87kYG9yh3ogBDO4RKLc5Fqj7dXneFxKapips3yC3iTjORU\nPCYphlPT5D+qoshEIyYvxU9Iovapl7uNwLSmxoFb93vp+7KY9ooCufErXig+x7Ci\nmy0NcrG9JEjQCdyTECcXeetB6LCqCNUdAsXf5yw1jf5rtdHOAFdLt5v2lbfmqwJO\nv274Knk7sHTWfTnB16SUVpvh8XST8pCgPa9U2yZiWOFQ14hV5pvg8c5cYtSbjpE3\nfecm2DquZg9LtKs8PafQGg0fHbQCcTmUF4L8JYW9T4bIzFZt/bF2FmUlE3ka7brz\nDRE/cTlqI8eaIGRr38UqoDuQZ9kgDgcA/n63jciVL/TkJ246eViPjuSUtkI6DCpn\n/IVked4/1yMsqgzT9k+QAMdLLMlVvNfHzbrnRyyh4UkH4MAnjuafpBkTgoMsDKcT\nwE7CcG65WIOcQdYB5oFNYkJqqrbsvw1N+fLiDmN6aYrP8sYJoPlr7LUVFCgJSLUF\nh2k/dZyp+Lj23p7ls1BWe63jvb29KRzo2bew/URVdFaiYj1XadvuQSLhQo6Pv0Uv\n8W5Pba/pFEVFK5YT/SEBuQINBF5MceABEAC3+dGa/TP26+L3RKpmu8Wei6SDkgbE\nfYQkxbd2KNVLPVSAyDP3XGgcsgYze+RyGGZwCEMgSpcS11N8Bci6Z5bs2OQ9Q0o+\njuO8jNbPvBqq/5q8gupMrnXYmvIt79f+ZXKSfm5fJSemRotLBnHZDGRLLF6QzObt\noi+QFfqWHPa7mBM+pjFIBt7fJjqQDreLHuQZ8rYdez1FrnNOr3gvmOyFaxsgjcQ+\n6RPpVvtkxRyVBi/Hjc4GLEj5sGzjzsMeFSZ52O0QXHTOxodZzcn/sbw143RJk4AG\nxzxCkNTa306ZYXKteTqmPT/b/tg0baR5pt0xmnfRbijxiyYFsSW7vmR4+fc4h1zU\nUCiPpp6BweD1QMyJCWOds3OBwm91z0qesOxfIZ5X1jUM2iQ7/ZYJ/I9sWPEoVMDl\nCR1ez7ihdhxeeUJRvjlMzdn8QTp0qUY7hcJRCrl60GwsXtotcxDMJ5VDU0/yQoJ0\nYa2DIXbCbgkAXQA+hvZ9z+C8G/Qa6cAuHuKGcaeb29HpXJU8upLsyjAGhXJUzj2s\nZX06NA8pc+DX1E03kd8/iVLzkkOqWTQY4SZcaQPafmcDlw2LMVGwTu0IwzFY34rX\n2O5xcGiTBLNSUJBld/+NPF33VQHnwKqnO7q9zEyruxGNNS2/PpjIvli628msWZj6\nXXeyyKQVQSFYwwARAQABiQI2BBgBCgAgFiEEYfxoHfuSoHnxaF53lz8pVZTsRokF\nAl5MceACGwwACgkQlz8pVZTsRol+AQ//eYQZMhPVz1mADAp5t+jYQ5sGUdhJsV5T\nI4EEwPGA6nyjjbnuCR4nfDc5teSVSI+24qvzfgkKTRjWojLWFsN2JSBsNZVzHEwj\nNS6lEkFuwAnOE2QjG6yKXoRLZvHiCw35Ep0Fs6fSVtiqedX5FcjURw1wx6PHyiHF\n8rUDBPnzuD/EQwqcLSXo3pWZr+sqYAu87G7bgJJqu+bm5g1MTrtAJw4/x6TrKrW2\nfMmNDSvdgaHiRx9adY33W4nmr+ShjxN2OVrAo5TsjO5kANOmKySDlfjpPoDAWJ2T\nY7acqfYGXFgCTKdTjMFdURveB1qIezR0P6Eo+mvtDMnaUCaw4mR1r9Es4QxYasof\nsyh0BkkoL6F1mTr2aP0S0b+WAcJ4SI4BUY1J6fBDccxUZtl3/h7jKLy7mGlG3WnP\npp45cZ9SHr4GErp3z8hu4HbaIVoAxurkiFX2Wd6QmkTcpRM1NKftkEZLW6pzrD0w\nI24uLT/RC+8e8xwGqvcPc5HZ5POrQJLknW+xnSDoAQNcjwcyD3oX9nH3dfPAV6LP\n5jZl07WrRfbElwmr/v/gKVVgaxrK3laZ/U3OYe/qGz/ntMvPPhkoezpP4hgNyTTj\n17mQo2WRyoHgK6bivtU7j8ZSmByctDvyWsfknnNFKvKZDW555O01TDNpChkpvzoY\n+SMSBsOPDf0=\n=i++9\n-----END PGP PUBLIC KEY BLOCK-----\n"
      },
      {
        fingerprint: "FD3A5288F042B6850C66B31F09FE44734EB7990E",
        armoredKey: "-----BEGIN PGP PUBLIC KEY BLOCK-----\n\nmQINBFM7JpoBEACmf7uB5P5QJ8X38ARQn+dr+/O+6/wzkKzUcoFvRArwZTcpdEO/\n0C12kNSpK2UkVMh4sorYwA8W0yv3spZJWU3TiIfCVryxqZaAWEIU+dwsQ0P6EAUy\nthjdQEs81bG6aN0dUqE26fWjGL/mU7BPtAwfzg6lty2cwZJP5zaNCl/PjRUeTKC2\noNas3M5dWoOqWq6HLPqnTEPHPlZ/mhkOfLOnJA6r669sQcml5R+Lhwd8wdJp+ANi\nDLW661MmaiA4VqjEXwsXKK0KISWftEgd9WGBsHH8rn4KdKj9u6EtnDlA3vaPmADZ\nmf7RVSMRoMkdiswFqEIMQuhTVbqS69vyhtByQs1fhriYrPy3OMeSMjJ/zNDCnHTB\nuKxoNHgMcznVu1tjz+ggso7Whd0IiXEaHXhF5ASWnJJa+xLxXQRQV2X1RXEK0bAy\nSX5B+NmxJRVY+ixpO5TVhQhzzzL9Ivz4z0odlvt5VJJIHHFIAWkgXRNAo0wgDzfe\n+jHOE7nz9uzYsqDBV25Zo22oMZURTBN87WZ1TFpDiORvvjR8QXJIBIUvMHAhG/Zl\nEkVopoNaznUOplnr/ToDpA1RDrdxeUAQ1i99EeBtXRREFgByFvETnVCkX/pvQA1y\nFrhGFgqCYBpN4IK0UcUx1MuwPBrfZxbL/cy+FhmJqutB6ufaJzatMQHu5QARAQAB\ntClrZXliYXNlLmlvL2Zpc2hyb2NrIDxmaXNocm9ja0BrZXliYXNlLmlvPokCPQQT\nAQoAJwIbLwUJEswDAAULCQgHAwUVCgkICwUWAgMBAAIeAQIXgAUCVwQhpwAKCRAJ\n/kRzTreZDi0BD/kBw2x4mRU5CTcJsft/llfVXiWpxl0o3HDP8gP5UteD3A+YnN65\ntLbSN8WvBZs3j2ch9e4UAUe3msGEq1jRKya9zg3fj/K4F8tj1a951HUD/oyIAnGy\n4hoHBWk7WJwIgVzVc2R60sVSss8RAh0ALZ5GqyMzJlU6ZvfOZ8HEhFHY/O3KhUcE\nuCyAQ5nvKvtJSPljEdEGhtfMDv+9P+458Nbz/CeEJ+lvXbdRk0waU5yMPjxeedmE\nUMuFflkj1XIozqef/PrHSAw/oNdU7SS6aDLCbajSUvFwmpdCzjaje56FxnNeQVPW\nPC54RL7O2hv+0dQhDnke+Yn1p7lCKyo++cYPekzx4cMyisroaHNlGH+IYTIA2mYW\nOmK2diwInuwkJ3ofblmZ/Srvd1DFgdNX/y8lZw669LHL2RuYNE+9IesKGLn94SKF\nKJJmv3HJOLL3K79fYEPlAIMOz28Wy99qGl+U0oS4eo9dzulDasGGWw7JZ7sqdkyc\nu9kzNJtREgmaheQSmV76wb70cCJA+TovmOxCQbk/WQrt6z8kzaEX8SigHDVd5UpE\nMd9rbnLtyGMGEt7cIvcu/7gtH1PFEMOMAwE4vdb6urfPpxTAX7mQuGZJRvM7Umxf\nxtufVqbErkLKaxYHtyigVKCBHXt83RAuYu1P07/ODjdYhKE8mpQ53zw46IkCPQQT\nAQoAJwUCUzsmmgIbLwUJEswDAAULCQgHAwUVCgkICwUWAgMBAAIeAQIXgAAKCRAJ\n/kRzTreZDoJsD/4vYyw9IchMrrJiWiKNuk1u8JTeIHNa5ONwFOFl65Wq9pwm1t8H\neTKubKmTwqpjoRsV3QlT9GNW10rp0kJ5hlmlkcaPx/q4VmDksCAhp3NyQI0p0h53\nYBzwZKssNahoryPdsYIU+1jwJ/2gQx/1YENC7gz3iUXgxXNChQqZ8Qapf3gVUufw\n9uS2MjYRWmXAmSSLTc4nj3SX4RnZpfTaAvdgD9qh0zulIK5jySpcQzliBLPCE8Ap\nWafWOY1p0mNcYUGD36GtjPO1mwyUWfVzK4VMhrqnaAA3bJ0iCiK/kqNkDjN3T7EP\nxaurZCvbUwZU9p/cB4JrnLk7k959uxpBSBeTac9f057BjPFsyLAZnzmlIfA1XLq4\nVtKL5qvnay1deRYpZXFeK4QDASymKro9+QY6MV2l9/TSoynu/jYIeIFGVXkD3kLU\nKtI2eKxHduseT49Ax9yZMzmqYUI0uCtSJvX2eRC/pifPQDChkpjDQBp4ryLfOAlH\neouLE9mtWMVJKvBykCaYK5zzJFqbF6atPsZ6/+Nwgur52pRFI6yrE+t06BzkBkcS\nu0SwW1IqAVctLViiq97o6VvYj3nxC0/EXn8OTyFx13nW/HKa9I5m5UO+wzNJl15Y\n0Lk48RPVWmpBwPkcAWMtGc3TDCik3FF3BziSYGdtkUwPtO0TuXOzS5Ats4kCQAQT\nAQoAKgIbLwUJEswDAAULCQgHAwUVCgkICwUWAgMBAAIeAQIXgAUCVwQhdgIZAQAK\nCRAJ/kRzTreZDgATD/9g3/UVBAhCgKMZ1ELw6XZItFExCb4I3UFQ6J87XaRsO5Gq\nrh+yi0AcWnCFNCdyg6+Q2utEcii9SJxroGy0SLf4jGy5/hDT7CBjhwCTZiAV7woc\nFBhcxpkkSsWRvdtQyZiPPao7RWytJ0st5uQFKTwJo91A/iVxhnOUCMZoTmS3D3GP\nWBr9KEAOdbpIsnIMvLOLme0rk/lWJPcDANxKA5TG4ep8CY2os/Xrp5ajBdmgduUY\nuksbVyzSQ4bk8xCUlWUEzpNOvMAUetu9WOYAuivfgz6gUHlV6CqxcwhXxpmjAJIi\ntuVhX8KiSSr3o5FjYtBcBLZQSjnNyswht61ftBWLv+K8zS+Y/RELjGSLLvnaws++\nv4QOI/7Fjs9cKsETH9Nfe/xKp0VVxz5wyGvYeVmwhkyhW1Wl7YdGz9BF4AmdSMRb\nGYeyY7VUlB2A0n2XOtZ6Xs17IYNSShJPX+FyFuD6FaY6yClhTCdCC7BOxkAPzJVt\noCuAqRDAMR/BLl0D1xBwNMidaSnaVXzt+QoamHVQSKf6DZAG2KfocFHuOP0ybFje\nwEVYqB/SSvhB3n/kLJGZdO/enECzVvSObcZDqUkO3EmxBeEhGghkv4B1bRaPMQhI\nVQbdhJQR3kOGOweGW7+tnsjOOJnCU08T9kqGf3cMhTFBGyejwPB0nAy2xWS++LQu\nSmVyZW1pYWggU2Vua3BpZWwgPGZpc2hyb2NrMTIzQHJvY2tldG1haWwuY29tPokC\nPQQTAQoAJwUCVwQhagIbLwUJEswDAAULCQgHAwUVCgkICwUWAgMBAAIeAQIXgAAK\nCRAJ/kRzTreZDjI5D/oC9tol8Gz+AeFlUUnI+RRY09JZt/+Zz/DIPkWC+txOumS3\nFR++get7PJXtLuyBrVKY/FOA1+hCcdIoSakTqaN3GawSo9DmFM/MlAxZOAZ74aqU\n5gAogWlQTUpUB3UzE+D0fo9wblqczosLYT42ILQ3ew5udYbCWIO5LhSVg2D3Zz/g\nasFpLB8e+U0i4hVs1F5hUWgLyxVCMbvvf36bXSExygDgZCUQCJwHfzXAIiQYwxU2\nI6qs7Uk+sb+XCYLQ0qUdTXfncOQPsvnH3Ddb5t6a2YKSm4+ReNKvZA6hORhyQd4B\nDIfTxfkj3T3rnZGnyz1O7UOcesqP/Njch9Vb85jyfUuXwSuTVr4bNliL7Z1Ptw4g\nmw1/ptZVQyc7rLgQCSr0eEJLvgk9jnIzjaTab9PTMDq6NO+X4Cpha7bLDnsQz6fN\npNvKqwNeB47kR9yNAH+CnxoVN3C+AxNRgdJ4m0EozxqedenokLVNmE2VA6zjTX6r\njSGygFZh7FvPiQl0tzMZ+EoVr+Pqxt23FTCgAoYtG5vv1PJRYiBJgd3fjmuQhVeP\nN6QKH28j2wuuubfa0vYoSyQyOuvOKpyvhZi2DsboT09VOFi/RP/tPVaZ2n6y/r6x\n1zTYS3/1frifg76iO+OI+nd8wZcZe0XuZzhle4947Is3NDwMk30MtUjr3Pta/4kC\nQAQTAQoAKgIbLwUJEswDAAULCQgHAwUVCgkICwUWAgMBAAIeAQIXgAUCVwQhpwIZ\nAQAKCRAJ/kRzTreZDjdwD/9kXy21TxUzWjZLTUUQcztwHV/ReVr78k7iEj9cj108\noq63U8s6/5mM3Pf4Y9wpdGlxpobUzKssNkZBuF78v0s/F5Q8Q2+/uh/g5zaybwD2\nrKQi9DbfMUDSqp3yWkM6Vjh/QTLjtg2wUmHHR4G1ra4+1kVSRzK75DG/mcRUAaFx\nhitamEcvwD6mC1hAO4sGoZZHxfYS7KisatEEBZJ/49wuL4q+Rl9g+bBOgzEzsG5P\n1o20eQewpbC63LCTo0UEv1Ue2wH5ks+Um0Gixjg7IaVpptNnFQUmBaxct6yOXNV1\nrET1MlTIHleF3rdyKjyHhdlfn1AGuKQGfyrptQ/tvsMNOLOQpS8SAww80LTTLOdU\ncrKeHvuddotz5RR04aczncnnE1LieK83ZZBWm/sRfhoFm93tkW1ju3LqrK3jDSiW\nW9QeqiwYKcypIHYVMod6Fr5uVQhsMcq5iP34LTwn4VeluTK2aJ/SieAY2nOmKrq3\nxCTSTWPe+ze6Xuvmw6QjCFUwMyOU7NIIXLYnELzDjUz6rRJEPLQaRoJSeQMXcnka\ngtUhYpy8HEbfgYwda4DANPyatvxO87THSnFgx73V99+IExGjWZ5VnB3FYdLxKEAE\nAiq7JZ37x5LcWxb5A0wti6UmrI1pHpTm21X8c6qRmttakFfWXw59baXRv738+hU8\nQ7kCDQRTOyaaARAAvG+PmIRpCu8qls1lzJN6CR1jfMGFPBpG1EZ+do4NcrmEuHCT\nh/Qt0/4igDLFGBiIyCQ9/OBUF/lf7ziRFqN9mztC+OCx4ULWUsTtu2aZuHaeIxlS\ntL0Eze8NKL/BL3u9PJ0SvvbhztEvGOv+hMdYgRH1PuLPLzizIOo1vg+a31P8vzuo\nhW2QyVlw61S5hDOclYkDUfPxKQ+u0/fvMAUXBAccGus3ns4d2PaeBjqiuSS8MfCw\n66/5j34DqS5avJfsiR0h1c+WaCS8GPExOPiviO1qrTXLhJw6kh6zqHIoSMBcnGOU\nafU2vj5I0D7LMpjHwCEIWgceOUmRsE8m6eBge49qENdXVGELQgVfvHgfFEEKKORK\nHGX7khLxVPZL3ZhQreEPLXm73hpvjB7uBUBKMaaZYOHothfPdUd/JXRt1ZQ24zCS\ndqGpJ7x1rIJWWVo9EM7Qq0wtvu3g6tvLPf8yoOBcQ7Bvi3BYYOKpAAZEGad7N971\npMVjeVYJvLb1595nImwbdO42YUT4wV0oxyUTtx2MSRr1ptvviXNQrkCo74Q0dCM0\nw/lwR2IOGo5mHKSLBlxkBjTh01n6Iv9ACWGAqpwJvtZKlB7Lm9gzXHFM2WPPJ9y0\nnpRDGS2IjtUvshrW7XtiwjtM5iEBeCTslhZHzpgBDv0PUGHUy9+OHtx9LlUAEQEA\nAYkERAQYAQoADwUCUzsmmgIbLgUJEswDAAIpCRAJ/kRzTreZDsFdIAQZAQoABgUC\nUzsmmgAKCRBF9e69gT2ujoIzD/9ZXbiKvsx2DBFgX3QXjrMWT1XPc7dv1x4IW25b\n7CWq0OG5WrDIgJCbuUfp57tg7C+YFLz5jnpK5Ht8uvyKHtkgbS0tIuNaSrDm6X5q\nCxeRhtyQKKjoKSnK+Fj4GeSo/hWQ3jJ0CCDxQNF13A66Yg/yD27apa01f9GLaEUI\niEjbXL6XgLnQAwCcETkxHBWPlm1XT7P1OEjLoosWRWUi722rax55u9R4ucy3mT7Y\n3DDIbhnJ5fBgUg/4xc9F2iXyJqrYmR5x9Zz45CnF1e2nwWSUSdHQlcjPbiWZrCKh\nODglw3Mk0wmWP1fgNJg8TXHx2ZdtNIK3SAJoVGe+DHEaTwL8o9Hy3Zrd1ye+DWhe\nK6KEYmzn/+ZMFjaEkk4Sm6cX3Zha83z7wUtT+jLRinyf2wquwVGdcJw8MUkNhv19\nVPbFtm+VziV+fbiOimcuKsq6eF1jUiXSosOKh6stc/+h+J5P00C0OSy+Ku7w9BZ3\naTe3iugyGWKHpAtQAt4l07ChUyKodPboaSMXiI+XP5co0KZt7FghKC7Bn1ttJDj7\n0IgbqNuuiDwhaHhGYBxw90RpgdXO3+wbtg7B2OUmBmLzTJVNWI7vqMzIvaJy0ZCw\nShNSCYT1FZk0k/AsOixe5Gbhhi7o8DCoAZC1nM+xHYr04613NlPs52bqVk8c5TO+\notNgD7UNEACQdyGa+slpdHMLVrdubatBVJarH3Wd0vUH3Ba5Ir9NjSEpiijRoQef\nbH1wSUV0/AtQY2LwOzhufFGK5xNrOVPoPTbKXN1fUwCktsaEGDrv2Rpr/TiYuqOs\nAE26UefK7yvKab9nEVbBPq6IQRl8pSEqmxbKD9zBbpI6+2WLMW+PnJPWz5f2g3Px\ndtFpfeVeq0o22+L6sdGHH8QuQq/6od7fSB1tvHxzPXsuw7MvULRoGnqh2f336DzM\nohBbfs2riI+Ik667uOF4RrLNRfDVRb5PiDcTAuHGaDtJjUpBlrG9WNZlwjo9k3Wh\nUWFPha4ZKiRIGvTh+C4wJmJeR51u41OlQjEF4MJTgZiGWZSnTKbv942FvXQpKz5D\ngt6NaGDcxEXOj5ohP8VWlLZel8H8ncoljNEcT2y+SU3C8o3q0xzv6jTlZR/pi15E\nxkZ4mf7VQdPkLwUrwp10HMRt8pxCBjTnvEBwMVLyq1fo5z3czv3LiWW8RBYtTBZ/\nsFv2xRcarfdVeGY5r7ZKRhlkJj6L8x96Xik7D5b9G5SiIEi6XX3ZOIaiV4mDfDaV\nFuIInPdrU0Bg1jqBWQZDqjEvfRHYIDQpd3Ahxbv56J02tl6s29gMT5dYRFE7OhaJ\n0CCphsH66qcPvWImsyQ3OdVJ7AU3fuFRFVIgQwoohTpKKCIGTJ8u1g==\n=NfOh\n-----END PGP PUBLIC KEY BLOCK-----\n"
      },
      {
        fingerprint: "8FCCA13FEF1D0C2E91008E09770F7A9A5AE15600",
        armoredKey: "-----BEGIN PGP PUBLIC KEY BLOCK-----\n\nmQINBFcGZx4BEACa92SjEniMQIBdb0btnZRu8vzOGNe+ndzXIWPyu2h+p0xZ/2JN\nMDQW5hc8USoV4/rTssdqDOqcu3AkmLtZi14IaRJ1TQP6Zb05I8MOEm58WXXn7fSF\nYJwhD3LDrAdAHAs896QvsFG7X3Rw18+j7RpK/MPIXZDA5GS3QPfrB67q/J3vvJyQ\neNz9jSlnMpkNO3KQYvUuU1KqeBpMXZtJi52B6FQY7y3H27MgjmJ2EEX9f1uNaxUw\n0SzHCJhKXFjAoeKIwrE/MwcbSks2Ax8lHMlLAgaio77nfdvrEtHbXUIbOGlY7gT/\nPzwav9ofCE3thvfTAzcScIENgmRuun2PEItxAO2ysqzpnj8cbdknF+ZVQohpGV1d\n2ECyYLcwQLWiJd+UR/rr0IJ8KvJI0dMxZxul055JF4UqU0O98BsRABi5GiIg6zgn\nPZm2Tr6Um90rPjKcVgJ3DgxeGkeYjvfxEj4pX4muZkouJdi4BGnvUB/pkKFaf9pl\nyx/hioMMF4tywify74+avPseZDaXRJSxqz+uXEy8VApN263oIiJAWiXWwPunTaWP\nnMBoAZcJm+2im7NwB8x3jxUfK9M8GcsOOUT+grpe0OguLwH1vhYSaLg9rlpjMBdb\n3xF6X7N6/h8PaHGUatHrvht+0V6NchmtdTVnJzOXOsI6rBBFc6ON2Yz7RQARAQAB\ntC9NaWNoYcOrbCBaYXNzbyAoVGFyZ29zKSA8dGFyZ29zQHByb3Rvbm1haWwuY29t\nPokCVQQTAQgAPwIbAwYLCQgHAwIGFQgCCQoLBBYCAwECHgECF4AWIQSPzKE/7x0M\nLpEAjgl3D3qaWuFWAAUCaTgfOQUJJP27GwAKCRB3D3qaWuFWAOH+D/4lJ0ldFrsm\npt/w04XNgwRajkv1LniHMmzAss1TerrgrWALMh8A8rhxkAxYekcAYghGQEXomtNO\nj2hBe95DmQLhFob7INy6uaoRXcLPdHYm7K7zkKjOpMD7Hqni+ozmU53zrI/Myj+A\nE3kFP199JnL8Bj2fnJLHVTsdTxSERuUkLuVmMHjjqKRrbmSn7x9uysXhF6yFD/Wt\nML8A1pFbTn04VO+pLNK8mxoH+TJ1g4N8Zi8B0qzvCTBTkNhPrKztNlQWmRuvWiZ3\n7GADTGdanNbuiM9sUt/vY4cz5lRDZybO8Xk1MXFJ6ISrjZWPMbt6fF40HTqj9d+c\n0BpWJKulOUWh8Bcna4HFv/EKODoVteSshDnixqNgkOXhooM87TnBh/1hivLLVj5j\nKk54VQ44P/f88IOs+TaUCxPgj6+ww6+dWpxyM5S925Gu6EbVDUnkjPWPQHfcVUih\nKnA1pTLkqnA1DyJikiyBDXeGpPtyqibIHFnLS+DcHwc/dhnXUMfzOETUf2VnwkmD\nxBoQmIf8g6o3ggmhIAIzcB5MxI7RBteLnM8D80P3X1eeRPwIJaRC0zL9WIuUtuON\ngCr/SXMkyBBQCxluMVVC2U+xH2Y4QnGXIkjZJzhx/XdOCg2MFe48S8bxT4HU24Tn\nMmshf7gzMKuWs29Fr1NNXc6okhP8RrL2ybkCDQRXBmceARAAysxKPzZLnWG+QZUr\naQHUoYndRG5Y0toYHvCk9mUm98+aRvxUyG9VwRTkQzWv2e2yL1kX+Gs36c47XZNo\nOeOwfkDtv7QXDVp/7h2LSFLaXYg+We0EXdNAm5yjJRq7dEIziJgJQOcL9VC6jjWa\nfk578uMZOyQWdcAmcuzT9aAzdz1nbqVK3gBOj1pDSIK4OxiI5bgsLN2SE8vreaFQ\nqXEatBw5Aik5tU00Suv/B7T8oYi27/JZt7f9+m4cSAlrChyRasF9ALyotQBpQarj\ncWuYevc6cmLsh4d5p15tDlRChu9uwHAZ1mZzruZK8vgeWgdsIZ1oyDR907u8kqOh\nUBC5f7VDkw8tWdokhAraNGYs4SRYCR28myxVSTBl2j1/uWXOxBXNjojMql17bMJs\nbli+ajCNBJGuOhgB/m75DT2Mt6rcuDE2lc4yQzih7C7f46caEy8k9kmHMDLYNtOc\nJmTmQ3dkaOTdKTcRE1EzyWdRLEWeXvDO2X5oZT0wYygppJxPEaLU+ChWrU9hLdpd\ne+fsSyQMqguX30hLhXz+HDsQqJF3LfQs7tCH6nDx5UqrVNIEizBnuS/DolXmgDOd\noczZUgeGtS1gWU0jfDX1KEdoeSQJz87hcA4FesDryeQpiyTAdwe9JlMI86K4ceGw\nksXl9LeVNJn84CgcfPKuIy2+sGMAEQEAAYkCPAQYAQgAJgIbDBYhBI/MoT/vHQwu\nkQCOCXcPeppa4VYABQJpOB9kBQkUEuvGAAoJEHcPeppa4VYAXckP/322cQ3GTB9x\nPGndr7kbQrEE5z8fhatMVk9YlamujoWYRQzXWjmhK5wHuUIQur3sGspuAGLPSUfn\nLK1r6qPGp719vSS0MVco4ME/qR98txo47/Mjc8uBjwWpbODf0AjEjwBN5jauXdi0\nw4hu68+QfbffAqIu6libBfitjHrNT7/DnwTLhDvlHpLqkKgQutvJ1Sf1GBQ9iDbo\nIu6hd+7QAzvW50FZE887gwOBha6F01EJLxqy1cwmQkT1QHCiLPHv/N9oIX2uYsQD\nUtW+yuRkG06E5at0fYrQNLksQMmsVU8MTxNMYJk7Ac9gTn9den71uQzt2QxaYBhA\nQLkAMUweFzBPlNU3IDirpYsz8+0TT0jsAIgNGJ/r09pDpgyDsnyuwVqBDLj7zWU3\nCaNfn6Es6/Z57fjnd8OD5iC0J/2ykURnhz1RHL8SSikOmkLaZQps4SfpF7PnuGHm\nry4fNFZrt0YeiOLyucBAbHMi02UpGd51yRvFJ9EK63JR5/orjsH1vw7gI1In93zs\n23SWnx8JL5l1uGlkJ/PN8LJJI751FeezE88wD0aOG3C+sMvuZJdahOHlGDEm7xKR\nBA+da9/uNqbKAfMzX3K3eto9RoeBQeLqgYouT85gHmZLeD7kYxI9NnU9pxeeELmF\nreo3MNn8Ye0sXg12rQIxV/isDIk6zg6GuDMEaSAoCRYJKwYBBAHaRw8BAQdAq/Y6\n0uQAJXs+LO3yhZJtKRbow22NHbOKOsY/BMFFnOuJArMEGAEIACYCGwIWIQSPzKE/\n7x0MLpEAjgl3D3qaWuFWAAUCaTgfZAUJAfkq2wCBdiAEGRYKAB0WIQSGyNdGQuZ4\nRvjhIChNqoDR5ze8nwUCaSAoCQAKCRBNqoDR5ze8nxryAP9IiA8ZTV6GQ/kpwLJq\n+87o+HZTojSYtN/ZfDQrPuHHFAD/dkGOXiutQcEM1YKDTTTSVQcdFhPFLChIGtoh\nExpmYgQJEHcPeppa4VYAp54P/1Dk/wLnuCB7XjNeIEA9UdU1w6M+cpWuzSlaLkjf\ngL95r89/SG3n670qNh54mTz0Uod7QV9BijoxNopbz2daPNJwf+WYlxk3pmCngXwu\nck8efXwgl6C1NrnZiJBvtQO6qXabmqTs59PumLjoR0i43knw8iaYQYdnuKBFJ6K6\n5xpMoYJAzj1nxHAESPhcbTe+nRPnGrfVwQ2qvK7iSL6eU80emHOWsxPaFo6SA9no\nDvzWmSwZ6jmFJo43lasrkLW8QH+8OdsORc7nBm1J7hXk24KAIHOrxBm5Icpc89XF\nxCJNI8fEP/WZJNfEx61m25XWIDuPz4mTgCaBHvrp+6bvXuVC8QiEFhqYGPpklN8G\n/cYG9OyDPOyTSPjfoUPYQwNap+SPxzqYIg/is9lqeIsMEV7Sbg8FLGlhP52sxnxR\ntrA7kZMfXFphCC42PMojJEBq/nlmXC79G64Q3kbmmDZ5kbzmYBtoPSEou17MGGCi\nwicnOtUO/XHct5/Wfkq2z5jYuj5Wbe5DNBV/eWp43uMpxNjkmfj+SdJtpI9MJ5B2\nUwJ09JwwPNF5B1RasQnXDLImINEoLOxixNddwk+2hZn5p7YwbZ02MznDaWVuiX86\nVpZxqzy2y5PDphbf/Rbx4ePeziYIsa0PRyjrS6fPu5QUV/EBK2V6nibMHsGuSfin\nR/5R\n=+ahi\n-----END PGP PUBLIC KEY BLOCK-----\n"
      },
      {
        fingerprint: "C4F0DFFF4E8C1A8236409D08E73BC641CC11F4C8",
        armoredKey: "-----BEGIN PGP PUBLIC KEY BLOCK-----\n\nmQINBFaVjpQBEADt/ZC4FsskPNkAgLq240K+CjPJzq/0cuEyABJeAVeYWJFUJRcb\nzNHBVzr85vW0pEKJUGyTyVxGV1P9VzkqaL5RRiupViwC5lf48P78fCMgEa2z4LIt\nnlIiWnJ1UlDeTvLc1DiLCxWgsYTRRj+x70/sL6EmH7laE1C/5RlnkGnuxM4Vgruc\nT1UMHsZJE/kefPe95NhzJtu+ii/v345ZqHhsGPyfeJYV2CiS2iTIqxvyvrlidrVw\nhqird1CKLuv0++/FY50O8Tq4xb7Kz9tIQODtCSBsex24sB2awHt3RdCwmW7d9F6Z\nBmWycKllFtuXjNf0bDNCJLctVAywUK28lwjrQw86y3VO9ktmVCDSsSBJd0TbhD7Y\nUnvkanTJzWhF+vCoQwarCuD4ZdaWBvlLTIFv0XjJ7VA2+RlwRuYvTN2PlIRzLvxr\n4+JiIiounGnBH5WyAVxdu6enWsdIKCImujm0JUqvSXLJtY/mU5LUIyaGe9wBnODx\nReStvNPCWaehgC83NHMkO7t+An9zDummDZF3mzwUZRO8NXPAowmw+X+Yt+47jUOA\nulHXarjiRuom0InW369JJ9ZUmd1m9pCmoQ+V/YPaQ56y5riIz4W4HJqAaqksh4vO\n0JMyIr3VJjBDxVR6QA9UMHV2PTVUAFA9vYTuv9xTXV3yHJFewX442H67WwARAQAB\ntCFNeWxlcyBCb3JpbnMgPG1ib3JpbnNAZ29vZ2xlLmNvbT6JAjkEEwEIACMFAliQ\nsTgCGwMHCwkIBwMCAQYVCAIJCgsEFgIDAQIeAQIXgAAKCRDnO8ZBzBH0yJgDEACb\n5LGFZogzl6Kiunk0w4hjNg7Cue7/M+VGo72IcPg53P/36G7Qtd7kMRpTIi2CCFpr\n5jLhb655fvMYsrQjpqLDXrqElHA+Qgv71Dm8CTO0CZb8estNKJ47HS7hwMjOe3Zm\nYBVro2iP/4sl5JEUwhLO19ia4JCcxO8wp/T9ai6merBrh3wykm0LO+VFfcDhN93K\n+TuP66xNULybRxPJI7qi3A6ETzPbaP9o9yHpU0B7cCkYDXr6c8S6X63aeTtoNOvl\nRExDgb64j7mkqPPNueDVgTRLJRowAT63ZyxM0UtlDYwAtwOyys6bbG+es55Bo9vy\nNWTT3GtHJlL8WqPef66D+yQ+sNdTmvld4mElfhBmEavVA/k+Z30Dyu+vz1vU/xo3\nBVDzjZK9iLaxGeb1EYc9QoR1JJD/RSHw82bYcLFVfGkd5LTPWMwE+rTYWpwVszA0\nHPzDJuGaOCHYfFNZX/6y6xCA0dEcx/HeLlvE/ytBhe1wOiVDuWxZOvhOjMFd6VLT\nJ/6XJoyaDbljibBPC6Bo5Gk4yCA/gwOLW5lVYXoD0I4kWslZCH5QBYztW3M6MsVP\n+id0DXjy4i6qd0iUnjwmvXQp5u67UQmdxsEDimyjC4wXKQrUAImjF68QrROOfNCb\nAmQ4nz6kETKgPqRkIHIYnzn0XbcWKAibnZjcn4jJLrQhTXlsZXMgQm9yaW5zIDxt\nYm9yaW5zQHVzLmlibS5jb20+iQIfBDABCAAJBQJYkLEeAh0AAAoJEOc7xkHMEfTI\nKr8QANu71NmLwCVUCCT0PW7Ey4sZitKF46Vf80kpVCbIwEvOnigs2JJKZJxSXNdC\nNHEc5/XakXgYuu9BmjZXHGga35ZCUvrif8hP6KZUzyp6we4o4O0+UdGKW0W0rwn7\nD9acxfICrpjhbI5iXLiKVM8C2Qo9bjHXZ8i0HbEH8kQpFbyh5YV7gpclqrWEiY65\nJIA5t+SQL373B0Xf0u7pTwoQI4S8J+BpDbLEK9PpvW0NCNQ/z87cIIXPT/rpAkVI\n2r78abO+SnFzGkd+WpLu9Vm5HiUsCGWD2lIfZASBqcENyDg+blxmEmI5wBh+PEO1\nmteYBh9sXkGhlkgJWa/Yrt5fNV29O/uaROPKdpR6G/Rbs5NZax1QcjWqIC1sr8hd\n/N3p9w2q3IAK1YjG1ahwet2Rl0xL70d3/QUZXdo+fcCnJgOx06aEWBJQX9ualjSN\nxbzxvRAm3PYJeXkgiuapN+aBZYDs2YuP8XTPDdNTkz80oG0v/ANUcTN+IUSPa41c\nWsjnBrFu2OSLC8YuwBvdMgNUF0GEpBY9+UfL+S/FpGtBflnkeE0kq0UVuT0J8/un\n90UHRU3sUMfUA1t8tQ6F0DnOAjb7Ogtwh/nhjHkwP02VJcyu6jjHv4aSp14NXgnG\nN4Kl4JuNcYRknHDMFwyNH5D2cm3CVT8UArINaCbxvrPmkHwbiQIxBBMBCgAbBQJW\nlY6UAhsDAwsJBwMVCggCHgECF4ADFgIBAAoJEOc7xkHMEfTIecEQAIi4C62S+o1r\nd5abdaMfnQyTGC9ynWjH1RPpihRy2cG9HuVtklAiyu0FtX4MzA39nvqy6tM/XROP\npAoN9XPicvbORr62Vq1YMNS6Na4L/BKOpIngNmcAD2Xqb7Hy/f+z8cUH1/6INEEa\nM5Zcx9x2h493JUVbRls8xx56uchMD2Dm2s195pdQjVg9U8T57ssNrA2MHY4RRxw7\nJRV5Pettmg0k6TiaaVo+BjAbe7rke+WdHJNefttCsIG8P4/rX8rhnFWJZWpBjBgV\nFeL2iSGhxyQbKcfGhrhsWeiiTg/wvw3epiH/cHSz9e8cXwCBtOKZujv6STrnl5i0\nbuTHOKSz5gZAp7QCUGoXTO1otWMyzBBeRiDL3KHmi3mzGZJGV7VkmT8D7S8mCFV5\noT+j7zzoHNPhiiB9ha9lfW+r3S8MypfpGFnNvjn2O3YvXnwA9BVudaTSk3NQAxS5\n2PjNYEazsvNeOjTueyJwoBEM7+tq2TBXny72B9h/bRl68KGkVuuHha4wKHTMa0Vr\nhaLCSzFq6TTmJmBg53BagiXKORHihTV88666Uoj2oEIzDN1L7C9wjN2G+gRCjFyT\npb4N7NgR/FZQbhJFx31rj2GAmLFv9tkv8Ow7BMUarZqvAb8UJEi+lwEOVrN4lRvF\nDrVZPEY/hu2qVrkgKUcd6v2gX5cSQ1a/tCVNeWxlcyBCb3JpbnMgPG15bGVzLmJv\ncmluc0BnbWFpbC5jb20+iQI0BBMBCgAeBQJWlY6UAhsDAwsJBwMVCggCHgECF4AD\nFgIBAhkBAAoJEOc7xkHMEfTIB1IP/jd39peJKGZkKeK7X4fUB6CmnxWAWX7aTe4c\nZA9/Rpbts7O6LRYaErlabEqYW3RUXIiuqr34Z/2sw9JGaPCmXWBP2d6mwSaCyJW4\nd8+mrv+BzAcoWjdf6XdohLCNp/9XwAsE9Pe/i4I1oxLWYRsnlJBEK8ANpseDImiw\nR4D5HLnelCEt73Jhl0stDtlALz+4Ex5nq0PL+QYDKE6Ol6Blut3Zr0InL77PLBHc\nfl6CTKPs3jbHZVS2zve8Zz2iI73mpqzSkSqB5ZZmdPCof5a1d5Tm+hcfu9VG4xPA\nSuAIGuB/wLQX9BK7t18LFH7oPej6pn97WmkchnO+SQzhVxG1OKdNNCA8/qikUAxH\ni+TNz990hQU8AaUR0LPcmoreY+QZX7EJjn1rpa4KKmxigNGFwiTLqScBekwpIv9V\nDOoVEnPJ2MjFfHTXpFED2btey4bKWneisqAgiUxLcBv8h7ibBG/TdgBxmKzofeuD\nSLRZH206wfMhff+YAqADF/Rg8CafZBMErNM1BUNg3IBgwH/GKqsX5Qt2IyVQf3NY\nAkRXZUHWMqB+/TEON3gAkd7ZvYDP1KEINUnVA3xDwztA+bP2tlBnJdLkBis/nOYF\nZtsi8AkityhOzVC+7dnKw1QoqwuGBxwJgX9hmqgtETJw0HabXEPosyAngh57iDVF\nPSaK4+sniQJLBBMBCgA1AwsJBwMVCggCHgECF4ADFgIBAhkBFiEExPDf/06MGoI2\nQJ0I5zvGQcwR9MgFAlv0OAgCGwEACgkQ5zvGQcwR9MjstxAAxesRqumspWU9ODeh\nJ9KucmBGNecVd7Q3+E27Wn4zZcoHu1X6eb0bu9mbbF6CCB0srPqJnsinQnDZP83I\ngyYTHelWIeFLSW80heDZB/KUW7758OqAvL9SahDtbrDqWr5rKc8JNOYqpBdbhCsj\nCyHrtZwTkPOgc9lV/RNaijbmz7LwH6aDCofsCXXsjq2U2sv8yq3DQN7aawaNZcrb\nweeEvWLsMxP+dbt5HQptp783i3xxCmgG3KE/tB6dwhs+PkWhktnIm8xeurZGCaCi\nOTH7oGJzTWOQF6fYLZfeDW7Z+aTAPgnt++c5V/fWP0bR+AfH0Md7C+/lYbORc6fr\nXmjjpsDid4D2eBZpkL8e+Js5v8IWQX5E6Y9hxoECyRe/NXkRf4zWRfrl5xvucKSt\ntN41EbTxjmth/ay5ux1d1NmlLJ4gg+Yh81h/g392w7UPC4U+NaRcpFIMGPbtZtyp\nx8HdkT2NGbDraF6azEkLA2K2ugbTfJ8VwZinxJR+K9iT2ROfAmYuqOvR1j9koso7\n9OnsrIbPU+cfqav4GfIaAtjBq1UnayMZ/scldC1e04srUcCBypRrhfjgwscAQV4G\nyuLSj2xG66BDB8zF6VXK0vaJcynv3GrIWH4pdYLX9WmevlQrqcU90KzuG0S9UUJg\nfJBAWWNQg28xEDcB6ChDKdmb24yJAksEEwEKADUDCwkHAxUKCAIeAQIXgAMWAgEC\nGwEWIQTE8N//TowagjZAnQjnO8ZBzBH0yAUCW/Q5HwIZAQAKCRDnO8ZBzBH0yF/G\nD/93QJn3CekgK+dzYprVC3jJ9vbNMAmcpReWi9SnmGfxFnDSS9tjSRnI0xgxCMeV\noPYjP7m3sVPgA0qU46sGQJ4gQWiIheM/zy1JsKKtp0sJNN6WH8jpfCKkq1VaOGU7\nkLbOxmVcsaO/J3Vzi+o+4GfAopfAkeSiuisKmG7YmfOp+Bpj6vADMs0sLrCPucl8\nloi0CA1ph3Xh8r8XKCkWrih1SHk0VXpCgAiwjMfx7m1nzmpw0Adhz4DmJWna6Njs\nnyLPbyul6niW6ddKsijFZ2K59mkNLknISUuATrl+OEQkBL+Ji0dgAGBM/jdNLG7h\noRQYQZEZoUedUz2Hr9g9VNMOO6tTtEUlADV+mu1GSw3AotcZeti3OvdZRa4LShpe\nU6Miz0qk66k+YlOHl6n5UdwpxnJawSTHhUk//CEDFNyTosOtt9NPmIob4vayyRbx\n4ylttld8pdZ02cyQWq+28+ojng4PvPzWYb4J5kJayHURx8AYlZapYH1+g3pKzXsL\ns1F1gBaYFuFpN7ODJxgucP7kWgD9KzEH2/M5qCB1nY6xdr5hzBYUZqKtGbwIRZWI\n2mYjqGu8PpOgYoEf2FP0qa5ib6MXrFqIIo8XIDwMUmwA4KL2B+EJOagB0pUew6uE\nNNZESgJHS9vT47aNPtE8q12uovCBFqpaXoRqN/InPR954LQlTXlsZXMgQm9yaW5z\nIDxteWxlc2Jvcmluc0Bnb29nbGUuY29tPokCNwQTAQoAIQUCWJFrDgIbAwULCQgH\nAwUVCgkICwUWAgMBAAIeAQIXgAAKCRDnO8ZBzBH0yPLPEACtalzeY8Ycz2Ay4s+D\nb43IQucEzWWA/oO+G8cmIIyTgO7uhyAS8ArN8Wqbc5WLHnIvZw7D1WdX8wgx0Hpo\n1hzJRX1XmZSvZ3N6so/QWMKFCNXkIGTBjhWH+eoJ2w0hzhz80pkH8NQsw5lx3b+I\nf+RzE9NEP8CV4zfxdTKY0X5uLyIoB0XGfHCQh4yTra/aqaUXTEKsWINiiwPy8ulD\ntOHIZKo+uN2Zr9FBsJQswP8n62XfS3ig8O1l7dktjNALJQfCeiPC2Fw8eJ964t9h\nt20P4nwiL7E7k7B6aiHQFAoqkBKzErsOZBUJXst2JCRGA7hbDXxa4swqvtScjZVA\nERigDVG4y4i4G96Q3tSwpHQsUE5R4S6XeR9scuv9ElcvV2M2B0d4EVV9EyHdeDEb\nKYAv0yhOhrznLuJT9KndMVsWyHTtGFt6o5pAqMgBjdEv/ONsdUchG85UoLgSHrRo\ndHaaFXPbXkjmqLaETvYb9S5GNW1K6GiSyHCROTPXoob2SFX8wluazAJieYU/ovN8\nftyH6K7HWwkSmrXf0//7kPEF7+P0LvSX4Ri/X2zfa+GgkfmIK66n8Vl/+YXSZxr8\n3Yf06k16Nl0loYZqYYkhQvdxKIyrXKx4zLiIU3QOKWFUy5EvAFwg++i5s8YvSvxb\n72p5tlhZ7C2I5/zzZG6+VPFEa4kCOQQTAQgAIwUCWJ4DrwIbAwcLCQgHAwIBBhUI\nAgkKCwQWAgMBAh4BAheAAAoJEOc7xkHMEfTI3RUQAKagnz10ZI0WUXYbQlZ09eUG\nzDzxA8gpsMAoEb31+vo3bwFJ8hlErSkWe/WsHoaF7y0BiqWlUYibdpKrdmNnivbs\nj5TTb5MEndP/kKYsfKQZtbNZwP5ITU3lKVEPHCBZbDYQWKPdQBSq/6qvQ1D1/lSr\n6VEhML0p/XbFy9st22jMqTWiSEu6xHyOf7t6+niLcLuBo/edR/+jOEF8qizGYZaU\nR7eFtRkWD5I8y8sPWtjjiRmbnV/1YcJNfZKDNu4ReVzXh9iJBt3iC8HY1nUFo2ic\n2bZ31odwpGLrfebHtL63jyu7BW1GrlQK7NwrQbgFg2ePpNCv62Pzz+LUkXl4UH2Q\nKFRBhJ+MMmq9Tx4IIAUrcOx/wc292S8+VOoH404Scp8y13dsW4v1YmvbO7zobomF\neTA1TZ371q7OqumxtCl2B8gnAFxzBPH7W6O3YHSs2zEpwtd3r20VS/WZ2owl8+HL\n1hGg1AY+LCVBsX4BiBF/4e4qr/6BghvScximLbIThS9jLJCJs0jphhPKudS7dMAQ\nveGSlWJUJ1stLqoWkmQuo0ndArLtnHQF+pFRtNcaIqmn2ZOQM+GD91PxIlMmR/hw\ndKzVf6b5ncwvfS2di0ySl8v50SgBvZTbLm/C2Qh5VcB9NolzVHqICtoVO/fD4I3P\ngS52Asdx6Deeq188yoXUiQJQBBMBCAA6AhsDBwsJCAcDAgEGFQgCCQoLBBYCAwEC\nHgECF4AWIQTE8N//TowagjZAnQjnO8ZBzBH0yAUCW/Q5HwAKCRDnO8ZBzBH0yPtu\nEACUVtMYUeB8NTZC5e4ceP8D0fciwxvcXKngRSm/BItY/Hi4gWn01Us5cG/7hh6y\nnW16f2DLWMTQL8EIcUZ7kiKvBCJc/v6X/4XCPGJthGrsiFzPiaFUv2qzhSooQkGB\n72Qi1WhdvLn1ocSkUDWbFeEJCnGxH5bVBSntDu0nVU8DwVTB/NQ8V2HZDl4e/mWo\ncteekAVzXw1Nl1v6PUNMexGMCQgqiU4xkWD/Ypv7G00fA0cg26hJxfawWJgnVIBW\nGKHHl24y34oK9nmTB6OYQcdPkMg4sOHMKILR8P6/iahoJXnErjhmwa1q6XbF632g\nl1ZE1BMNIZqeurLNnRecvYDrF2MKzid6+jMGb452QHMRLw40EqxVLkNBkePvo1sv\nZcTtsQbpv5r9yaBr2RZvvFf/vGBrsBWjtsZuOWwIUzdLaA8qPCHDKbEqJ5YqMuyG\nQ59viNd/DPiJhtUci9e7DOLajnPN2+B9h+pM7YYBvwaTs1QGWw0RAhMP1y4PooyQ\nwu2KMrCW5yGlawtFkdSQE3hZWzb6JRfBQG6m5ufo1c6CP0yLSaQwV4oOqaBXWk5S\ndE5155xBsXRRHx2bq2hUs3BP2OCGYJSHopX1cuJVs4nTVCu3Uc5svw2B8jCuFUIU\nBgxYn/icYrAEhU1+JFeuj2FIweM3qFMV/D1YMurLWYZDJrQ/TXlsZXMgQm9yaW5z\nIChOb3QgdXNlZCBhZnRlciBKYW51YXJ5IDIwMTcpIDxtYm9yaW5zQHVzLmlibS5j\nb20+iQI2BDABCAAgFiEExPDf/06MGoI2QJ0I5zvGQcwR9MgFAlv0OTMCHQAACgkQ\n5zvGQcwR9MjmshAAnt7iyUzrgmdJwhT9fwaUAgzDCjieKN7OPMZ3YgSl7J3rNVEj\nR3mLWEnlWcMT/n6aQBn0iIYO+GNDDcm0MI/SPP72+4YUa/sjC84Zw3popoQj0jav\nxV0kMZfY3L7ma1S03mD/At5YIqF94rHx3CIlh/0XzGK7F6KYrjI0GJVJb6AVGGzU\nviL4GhMrN9u8An7Y1rOPzXYYDTfQPg+SgDThNeNrr/Ehg/F+RHB/uOjg6l/n0Bcv\nIP63MqX6TmUxDO3tPRngLM2dzFOcAk0CevPw4zeAHWcK05Q6jWZw/DlyVxO9wAqy\n/g/OxpMTpyALcWdMCyDVPMmV0pdnW0WIgypYCEKzaaCWDTfYbzAkiq+9gy94TLKf\nUKoW69pxRQ+zLzyKhQziMLArstyyNDKqXeOD/EiOrTJCSzhGvb1ZIt8FyyYyKT0e\n+geNzd8d59yzxwFlFiOYuRglsHu8TpQJhw2sz3YwMC9uJFUSFvccrO/CnewW6RIJ\n3rfJFEX6seMz7+XN8tj7PxghwTg0uLPIRQGFr3xI2PQn4MORLp7P9QjdUHZcNR/u\nC9yxhonj30pGcT2/BC1PJQjeUGYHrATHwzzjFR75eKsC+O4BetAasAEbI+FLbKp0\nR+sAkTkuz/5T11H2QoNhwD3oi2abbJnqfYLbceTgd6ZTAcRag7kZdNyNgVWJAjkE\nEwEIACMFAlihZaMCGwMHCwkIBwMCAQYVCAIJCgsEFgIDAQIeAQIXgAAKCRDnO8ZB\nzBH0yL7CEADb1Z7WnCwpLEfHWJAFfbMiJ/Lh821U2CTz2eJKulFup0d5PvXWxkS+\npAZP2Dp9P4m95lc/6jD2SxapqFk5EYd6ghngS32bTneB4y0Ob76RbJ5FpjeAVtyY\nv5UnmB8l1OWb/WfWDsW6NcvbTh74a7K3t5Id9RPQDea2/cdilUt3cH5jeDyMfptG\nguianzZX+/IQ1Gxnbj5uk5B3JhFX2yU/16qs1E3CbDVZO9OO6xsWRqPk8W1vEYtw\nj6Hu0Efy4UPyMSD6dXjbuqDFsnGOpuxGITYmoH++o/yb/U+0eV5kbcWattc+PfOX\nETQuWrqKA/mqXTolY37d4AG3svw2T4aWOj9g7c6tTBV3R0X6FuWp+NAYOSIJ20Ya\nnIPRGNftfNljQdoms57UeNyHjTWV15ZCyFcVuKABt76ug1d+5cDbjmC07HRlL25D\nHf7tc5nnH1/QvMFOPxMXn5Ou+khNb+bIQOeFA1L1IWhpw2y2WeujH4l34rRP0bht\n/7hX5MXinN/wrFCpN0WG7SgNzrv9DvQuqSiFQokIVHvx1UonZJNBgGdxauuAqmo3\ndgcs9EBQx8Cr9egUmPhOJpgFl2MNmle6TvrYr4m+l12yx1P1oCdam5v0K97qPmWL\n+JO3+CMGItJG0m/Z8bW37fdH7qt8ZiZPwc2OjWdn+hSDvGmic0yBm7kBDQRWlY6U\nAQgAt8I05Quf43Yto5yKKYXLbwPF2qpq0Hg+hmi7oHwn8tc81P+y28xm29Jsz3Zx\ndTk/IbUBbvgljayJ1A6jNrBxNLasdhEPNiqCvbkHbhY8l99xitBRZEIfnAx5Ew0i\nEJKKseuxRz/o4Hob/KwM6cHPxuEIKFqaY/qtRsHD3t+FjAms7H1DGMq//ossOj2N\nFmckDTFIDiLcBpb6u0LGKltqxfG5eqjvCj5V8Vyu3+xEZtUnC73nOluw22kHDtyp\nSvrVILBVQJBxGMM+zBstsmzTf3x040tLgfTg5MkRRRrBF3INQYSbIBzcvplk7OnT\nprShGVuNQXly+qYKafsUHAnwlQARAQABiQI2BCgBCgAgFiEExPDf/06MGoI2QJ0I\n5zvGQcwR9MgFAlvb8sgCHQAACgkQ5zvGQcwR9MhI/Q/9FpQud4D5Qq2eKfCto7HL\nXZPCQTeIBJEoqtRCvLXfVw2Il2oMmhApGr86l7pEO95SWhQvzX7yYNTpptMc9meU\nrEoIyPR/M27MfCK1JEzWzjRde/L0KpoVaMX4kIxuSgdsrsHMLZYP8YVxXiIrWPsn\nd9CHFfqsvoLx4mwxf9S2pBPJ+qNB588ir7GANjtBfVUnWUlqc0fyzT3BAZdfz7rv\n1+LmjJaHKoYuPwm6Tk3mYUnxmZFodJ0GdLDbxTMDzWitDNZz/2Y06VM/3sTpzXvP\n6x8po85zcTlxvHHsF+eJv8wYPY6MXipFR75CnVxSCavJvlcvX8W+PLyXz4ISQocm\n1RiMNE0UCcabl1LIMVNrQPtfh5LGnr/Iz3L+OEYqsygMC16TIZeLS5uljL2hNiAz\nI37phI71hgEPJflS/ikyYMkDbFR2IUQ+iqBfRvr7FGmcSFlmTxPANcLu+j00F52k\nMcIKfjoirfXTw3MNjHOaVpmTX4VwlRQHHwMJXOeOy13h7ihf436NyVXQAeIb2cQQ\nFSsZX8islTbjtOheM3MjOdC8dVeO4HL6iXO0/ohiDyCqhm5va8GtjyD1j0LsCCYZ\nKSIaoh9n6lyIKdPqwUxwxFabtVY6j3XcUaBZ9/v8X2gQHAv4MsSBpMxSzfLnHGEE\ndTHLEeSSsNo1nYpj0BLDiMCJA1sEGAEKACYFCQVQqc0WIQTE8N//TowagjZAnQjn\nO8ZBzBH0yAUCW/Q4dgIbDgEpwF0gBBkBCgAGBQJWlY6UAAoJEN6hY3GXQDGl4DQI\nAJJpkD6tNpTwO3I3ZFrW2BdLcWJ54z3CIY/JnrYot2LHg5HyXLFXOSFQzKoNzbOl\ntnLnUkfXIH8PiXOTHlbRIAXq0cOlFwH7xiu5IVV3vUxXuOhcdUxCda1v4XNJTSjT\nXCX0IWDyJbIxUYmEBLzouwPVSnKWrRV6hw0Rkr41p2X2ryRKUC+3+XhXfxl8xUzT\nsymME0ajp9xEkBM2OuZWzkUMG8E0+Fe9OIusd2gYcI5qpzjBWj5VOvUEIK5j2ZGk\npPkezZFEvwHKQxSebdS/89h4ihf13huVOpZg8vz52tHreo50xRJAzpDD0EqbleZF\na5mMnIW1okm19sS0pxzlod4JEOc7xkHMEfTIz+wQAJtL+M2ypBCuxroRS9JHLCJR\nUSkWiSkSh7CAz7A4KWb4tVXZAkQCaUDtPaHjT6ZSYa4nXu7XYZ/RIRVER0srb7jC\nci+P7Yi+XWEoFzMYar1VMeWoac2Yk+wSotH1Ew0usr88w5nzwFgyarEyRpTiMbg0\nUZS5GhI0O50K5wbm8XuxnoSFSGJqdBfuNnf9uvSFXlUFc5f3c6mf6xZd/5gK+d7W\nZKN9Ca5Lx9fOqGnb8dnmPTwTUn0wu3HdqmLOVZXjomhH/Pxh/wPRUMoniyw6hct8\nb0gI7aQD7Dn06Cr4ScPY8n0f/Sfmaq8Y8Cz5ELiIZUyCt5RHPQxlS9kvsi6e0dOM\n6uEMI8UIBh09pltAKznd0QOr+IOR3RodiOqo6XBJLfuLat5pezJU9iNUTYljGk6B\nrkI2NBwQmMxKUIev2+QUeJYTTc8adFXilAIS1TXr5uzOMWLObDsTiz/gGI8zlmET\n58SnqwXBFWdJ368MPHHYs/Op1Tgfd3oYuPYnkQbyj9fYA9LHOs/qQZo2XNKLR9A7\nIlFuwhlebvSMVtsV1fPOde3PNiSk3vhJdHVrUQZWB0kzVlJoY3Gtr2sJeIs4tObx\nkqoeonyQAoDZl+ZzrHMEPjouRRsOXH+4ymSePcYoQgdHmrAtDP7VKo/AiAhC+Gyq\n+N9uvS0OJ7OatFeJxTr4uQENBFaVjpQBCAC95gv1WH4byN01w/Gvuid661hyVPFs\nsMBdwXVw/KCfiHvV0asTe02luwvEbwrcLyfFB1wvQ3AGdGnksAX9A0uHFYtsVGfF\neVQtT0xxZz2hQLpUUpIEY6a11u7LMqd4EiuLQFNequOZziUjd3C8fFFFfUF/iStu\nTxRN4zY/m23o1yInXJCWJe8+TqIdV4/4ta/6ToCQboouflNXBmMdsR+UZw+vBf/W\n9ZA/JKn/fqTH3W337FvD8tb5JrxvHI2+i8fyhdBoQWYeWTQGGA3WfJ+260WlPsVw\nl+CV/qWNc/HlYnKeJvVtoCe7vRWw+wvpJWVfFCeZ83J5L62zbLuGol1DABEBAAGJ\nA0QEGAEKAA8FAlaVjpQFCQ8JnAACGyIBKQkQ5zvGQcwR9MjAXSAEGQEKAAYFAlaV\njpQACgkQkzsB9AtcqUbjGAf/auRS2oQ9ylkc8dPph3qq/JBUsDhgNp3tXAgccj5e\n05F6roZsQ6UdQlppC2HChs70d9nTvCKdv0N4ycybH5BjfKt0yJ1Lnu9KnRnWwmwD\nr1Ro4Jww7gcRkSgwLhbjlhFmEwcnlX+4vju4IeNt75KztHAaf37UOuYUCk09Con8\nphkLi5cnFtLypK1m1yNsR1wpiyh6AB23Nc4xojUbVgAJmDOs+YBOnmNDvGmjiXlg\nLIJuofh0MydSJcOOXgC/Z1zNfQlt30MqnDZT2ssCwZNtG0S/fqFYoM9b0JvQVyo7\n17zDgzG/q146Knj5ZAyAhOShVncE5ouLcFiLU0lFqNOk3rQBD/47QSWAigIWwdxV\ngjg1JYPOaYVep4TWOWVXDbCcDas7yCnerR9yMR3nsuOjALcZUUFl+vApf3gbQm2X\nhYe3M1TKZTGe7PrPfmNPoLmKM00OB3/64CzNoaBKGnrWmXSEVOJsjHitRPh9di5C\nHC74mxiCITuQuMYbjA1o4/USq2gGuFH6+5345uLYr+LPbCV9uEXjkuuH+ibwHv3m\n4DaSfjZf4WGBjCt/bH77aOQ7YxwndW9l2/kChXHNBiSRRvekmsI+Er+XsDCB/uql\nG+utBw5f62meWEnaR5ZRKN3UqTVBxsU8pZAbiRScxRwxanxUb5YIsG7UyV5gXkMU\nDCQasZBXqlA10w6zXhDLnFkmhVis24vfj0Fh4qsDE9uQ2E09jFeF02LfmOZe9cgT\nGeh7SxwmByOFwcL2uBfc05WYP0cRjgzMBmc0vOLkRSxu1ZXX9K6L+2OeiNucLGru\n6dw+8Fk2IxLy+gqwUhdeN7CFy075U0tEFu8zXwwk5or9AlV5HyXC++wPOXL1By8D\nxg+nI5lWvzcxeXeeTR+QZPSuNnMfO82G8vTNZKgtsYrcr3lcIHM0e45SokIyVENx\n2BbjdZgzPOku8w4ZLGWbfqfgTKdwKjhsMyX04w+anvxwBlJpqecmpsqsZmnhs3Mi\nCei6k96jcO6sYiJO+vTB65BkfKY2WrkBDQRb2goTAQgAztxdnR1C/j38n64JlSlO\ndSTWaxV4XVDGu4YLQnoA017JAkrbkIlz8T2KQ5X9yNBdLqRZy1QCWZyPFndAdZ0i\n4cy4nuhdYQlShXg2KkcSUhUUI7LKHAXk59cWXne58UJFHqZYCGyvrorKJ84R8OpN\ncjw9OXANgvdH2TWHr58vcYrVKPB6RrKjH8BI91x9OjnQkN9kUhSf+yxjYISoG2O6\nLE7IAa9GI7sD8V0XGdOgwbFhEstofmlFWZAP2DwwkblN+7rPk7hcs76ecc7ZoCbD\np0RL5lYoIag3EVce2gAu6+TTsUeO6hh1nUGdgy9R00npKuecsYsXpV+VQ/r/uk/W\nGwARAQABiQI8BBgBCAAmFiEExPDf/06MGoI2QJ0I5zvGQcwR9MgFAlvaChMCGwwF\nCQeGH4AACgkQ5zvGQcwR9MgBVQ//WWqsFzL/j14eeSYFivamp5Exfs2gA6+38Jps\np3oW0kbpIpq0BdAue558HDx/pluZwcGTMhzijWZYzWVeLVXwcit/+5FduKTBAw6A\ncD1Tgd9meAy23lxBAANj1Loz+PxMpIHLmE9zUIKWrwDGEYEVXLHk2oVCbntUXVdM\nZK3yathVZyBsMiLWXL8AghHyZN5gt15QSTm2KyaN4XbYZqVDjk64bJzi+31wY7YP\n0bajpE0fQcugaB9KlBXt+nLgVHCNqym3C4dU6OXCOafoRYnz7qASiHGkY5EX4iS9\n+MlmA5UvKjOBg4bjUFADxnMGmiFyjWRNuoxxXAE30422qpvpmTPcGW+OJkY0Ir2D\nK6w008wv98GaUGr1ZPjA6O8Oeks2+m3o+9l7GNv1uiiTiSMzJmmdCG2F94ZSAyzA\noZuqEvytOYMCBBYVBN3FqGEyb0aNsJnvB+6tJOxKdvdJcZNIXmbqvo8uCeZDk4et\ne5BlxYQEC2yGuDAKgqqcP376d8NAgpGfL6oG32EQ0PpZXJidHpz5U6lTQZpVPiB5\n6tZfWAlrtI0SDsQGdhe3XmiKxlCji9BT1YNuGginkadLXvmISg7Is0s3rgsjC61/\nKu9xqajxZHvDBZ9cNCnpq3PQIWLai1YFCGDmsEDc7nF/g89NnfQRoTvbTm2v+iYt\n4G5Uhcw=\n=YIVB\n-----END PGP PUBLIC KEY BLOCK-----\n"
      },
      {
        fingerprint: "890C08DB8579162FEE0DF9DB8BEAB4DFCF555EF4",
        armoredKey: "-----BEGIN PGP PUBLIC KEY BLOCK-----\n\nmQGNBGKD3OQBDAC3ESxNd7dHfM7Hl3sE7Xn2osS4UZkJtmXA7hdbfybzf164wCbL\ncYECq0GrGfgdnKEMWNzr2S08KkUWQwJZd70Jt1voVpqWVXdtBH/KxGwifixMkTEy\nlu0ePvJM7L5HNOIZP5njcAU03hKgIibYQW+SWj/G37yfdyNprN2uX8p4CUyJbnBc\nYOZ2W1tUzNsddvTV03JlDmfR5kwHoi5sTCqvQWTzsIQn/vGHxMqa3XjabfSvim1A\nytE1J7VIiu7P9hW1prEfUVY5+ggswUCfJl4A4WcCwFLIaIdOreiakAix7Hn5AD4D\nlyskTzDy6QRpzFVm6YyrKzUzggqa+bQ5/9aq8LdKVim/f/LmEuSQdwkEt0rOWhAX\nYJQrnJT8IFLqmgnJEygGkwcdXOBGRERRB8Mes0rfrgYHYW0WqGI5fMxyL1Ti9w+0\nAH6QFq1IoWZY8bzGk1bJe57lgJrshavpSc1ftKTqsFAoLYDsMF6lxkNyS7+OZMIx\nU9hbvuJgdPj7/lUAEQEAAbQjUmFmYWVsR1NTIDxyYWZhZWwubnVudUBob3RtYWls\nLmNvbT6JAdQEEwEKAD4CGwMFCwkIBwIGFQoJCAsCBBYCAwECHgECF4AWIQSJDAjb\nhXkWL+4N+duL6rTfz1Ve9AUCZowKYQUJB8qUfQAKCRCL6rTfz1Ve9OI7C/9mQxcc\ng/oZxn4QlxWaNjqrLLjDt5D64BMFWlqAIg+9OiABF3dAAYdkRLvQ4Wxq2xHauf2z\ndu1pbCdKxO4lhGDVbMjKgCvfjH21foORH/ZR/daOt9lc3ywFGg9WMN4Vlt9+cO4f\ndENOMMNpDVPWiIZ0VPJZcFNXtHmBgT3CmKjVZQUDUerhp6qaRxkMqUdVnYfieUKX\nlDdviMKQoVHmzaDlexgvsKyCX6NzjCBKsigOQeC+hqt3AdyN3IG2sBAVBrMGvqN2\nMXfgebr1ZDJnC0Y0hA6zAeyzKrR5vrzB7oDQAl2Jze9e0hinjtcCGOo7+Xna6Dm2\nGP2Gj04hNSk6JXARU03KZWnMryRqQCDNxfdHy9ShmPAD3PuH/g/VCQMeQsB1S1H+\nm/XVp2I+G/fZj6L7iZpR5URbYQFSSL7UIVjyFTymU8e8PkkRqXDI0nboaZBVikbl\nFmYAINtsVJLHY70lAZ+0BJCGs9QIETguxFtsofRw3pqnuy93FKV2/T2wJUa5AY0E\nYoPc5AEMAN+Z6DX1O0fLkt0lq+N70gmO+AlFI9l4L2HKBiPCMMPCXP/iX/04zVzm\n6n3rl5ypNo+Q4um6eGwL9UGrzUJSwcD0nsvK8U+SVyDpp8e3i4+ph2XRiC5Bkktf\ngye2vTAgE9clqnDpQGnaQ689gOd9nPQAUqNXnibuZsnETusbu/+HQDqM4wdSxTGX\nQ4PaqjmyATeUcTVwh8bzdBOLZ8O2eilFgNhY30cycxevI68SnLzPz7riXTQo0pKb\nf6hvK5kn3nULn5l7b+QFtuVbffe9vo3J3OT8lEX9Cvd73y01fgDRXs5j1Zbg5OaO\nMXqMthbndq+enlhkD4vyCF07LkuHBk8lMX1yUVysMx/iqN7YS/2ZEMkJt095Q/6D\ncNigEUpTvgtPJYxHam1uXQb3Ellhap/YeCkkgOs2FOeytaIR8na/A7TjPwOM6v/t\nar+ENQDF1nChrqhlLin9j+kyiwkTypWJ0kmyU58fZGvlSh1JfjVNaMuM4f6xoFQF\nb88Au4p8swARAQABiQG8BBgBCgAmAhsMFiEEiQwI24V5Fi/uDfnbi+q0389VXvQF\nAmaMCowFCQfKlKgACgkQi+q0389VXvSQBQwAsMvjMThyU14b/Ba3zfC4fqtBd17l\nRExTlyCpjJj7Kt8tiFSM1Yq0M30ndQtZY2+tpiX8iyjgWPYpcbNgm6T3jOFV1tgt\np2m7bYiGTqa7o0VQEcdu+52GqNmrLv7aLZGoCM8kNWaRGyi32433EWdz6b+1cfT8\nH7lIrLKvBdwrOV5q1XMQLf2DDNLQUhLqGb6qE6EG9/Rw4e8uc10w3wz0xr3Le1+F\nlrC1KFC0XaHoBCW0gNq7tK0gG+aaASIXg8qQS/cT3Tf00jq/M7j4Vl6QwOsOwZw1\nhn/ydBQfK3Tv+Hxe060vWehIyc/nfnw9oo4AetNKQqieNFjfh7CHhAIaTVDisc13\n0rQWJtTmloRBoXA0uwLc6dIvIWi1hL7KgEI55zSeXUdFIpwWjRcNxdiLQ46GagtV\nMj+1hz8EOU7J3vY04ZRHDyapCRYoRXd/N8MUnsZ/ySRdA/Sk57Ujn9UH3nFEhD6A\nH9y08K6zB4JFN7saJiCj2Q7W2nXuEUhRVs2K\n=L7AX\n-----END PGP PUBLIC KEY BLOCK-----\n"
      },
      {
        fingerprint: "C82FA3AE1CBEDC6BE46B9360C43CEC45C17AB93C",
        armoredKey: "-----BEGIN PGP PUBLIC KEY BLOCK-----\n\nmQINBF222c0BEAC/wIiI7EYmA7yprNa/0en2leF+CrF09BlCItTHH5IgjSLGq2tI\nBi3hIhf7TitDlu6GphHlFjvhj6UDgdEmr0itcoOLRhtER6WlmMaXtS+im5fPSLWW\nskZSAh1YC3iqOQCErkAnVFUWY5nUbWfxgv0pKrc5GTT2RkiD6ngor5YIAkRaYQ+n\nniHsekUYOuLln0p4n/K0/iRw5NMok9Q2FwlEj7H0kCfDPuqsgfEoDXoVv8QSVIpB\n1gdOQ7e2MeMAB6U5o0OjqzMxPUrIkDmgGIBvCgcCN33lMNO4DWlhr3vF90EhKvWP\nLy4kTa4Gctt9f5kICzb7AYZJG7+F8hrVHpbF0fXzTgZsO/BBf4ERTMKGfj7ZXq7e\nGARTfDgzR9yxWfxfo47jUd8amVk/qj9O94lIPobEUeP7SKPy2jIRTx04HcdMDPAF\nokzJf1cwCghc19mN+ro31rcnud0Za0EM7Yxq89GHvHiUEzxj2XWny3n583V4Lh6c\n2bAm0tcqmJlLholeFo3qW/nBSCde0BjwfamKd4KB80tsF8Qu6OdahFT8ybaCA2ls\ndcks9uAXXqwyTmXhwe22CHk/919Ubk0DFPozgj0AaDf+vQz+lKxDUuY0FaSEo3sP\nnw7JmG1fdz2jAw0UvK4xGrYE8nTlF85mOBhV7zjwW57b9x07Og0zilqZhwARAQAB\ntB1SaWNoYXJkIExhdSA8cmxhdUByZWRoYXQuY29tPokCOQQTAQIAIwUCX3X/5wIb\nAwcLCQgHAwIBBhUIAgkKCwQWAgMBAh4BAheAAAoJEMQ87EXBerk8y0gQALZv85ID\neHIDsbf05A3q5G614MQzRuU3rXBlLpTEv6DJorQll3hhmvRU4aQzX2D3JTzOAb8W\nsu+cHUXJvU11rCIsAQN3L5yWEG11hld/oDG3j5S0sM+/3YvqKjluWhQpYvOrTQUR\noJqn5UvKNzZ68cWgQDJOS3XVw5SLstB3ctoa3me0sSkSVs7Gy9L2SJUnnc33GGEr\nUJCo7u/0eD5+ihNnP4buga+xd8w4zqe9gEzh8BZMi+soAv2kNC4wlMbErJUh0Msq\nLTEJKmbNsVeGX0gwjlJR0sPGbfNWlN4lw6xAljFeRjRJg59Z9gk5P5+UHabUZLFk\n9U98dj/8tclmxoa9ceMW1VVOBcpVskhUpF7DK7j0ojjz9iRXXWIxkn5dgnAP58eK\n+WZtSQ5lBbzyLFFlr5c51/FZoFurVACWymHNiyA3Xg5tsv2e7a31T1oPC0K9T3Zx\nnavSgnx0Gb0SRJM2W0kJwIjdX61iHN8yisnD4+DMHWGZmNgPN/tVhpSVKVKJC1do\nWlDgaoi2agnRtgfI0G9Em1CN7yHBCRpWaVERAaP/+uBogAwWOZFNgQjwVtU6jZYz\noLgazKbQXDf859eJ6C6AwWxrBiMMsdLsuQoFTmAztZS3efbLXU0qO4NkQ5QpEMP/\n9U6873G4QApdzEHojTyTt18ffmvZjkzpbj7WtB9SaWNoYXJkIExhdSA8cmljbGF1\nQHVrLmlibS5jb20+iQJRBDABCAA7FiEEyC+jrhy+3Gvka5NgxDzsRcF6uTwFAmDR\nt8QdHSBDaGFuZ2VkIGVtcGxveWVyIDIwMjAtMTAtMDEACgkQxDzsRcF6uTyfNA/+\nIchjvyChF8f5CEIKvfT46yg3JrCl8sETf6cTR+ZY6ZleVgHD4/AM6yZXDg6B3gfj\nUgZMpp1fu76N1zY+OQ6fPH9hgOGEsfKX//n5AJCCxhESXPlxQ7rvAkOLqUa8UsML\nI8ueh19Rv+afEL4Z7l+mJF3HjGZAInVhbXg7OBp9x2Y1YhyGQe074bT1gX7UPdfT\nPmmkT7cD92ec1uxJVSYbG4UzUZb46fZSUmgyRAlz3sTng2y7an9t/auzPNrzm+DC\nSplupDqwu07MrfiKUnGfJs6C0tx9LGY6KQQKZR5yCVqp+bWhRuFd04e8gIX2qq34\nvgU+GbulJoz63OJ3tu1igouoVnS7OwoYrEIiWZI3agzkb0VvpAlqVInOrXmZtvFn\nV3wLW7RfXf6sO3sSjgVBGCunxNasbaTCtUk1jpiMQKZpg1LwSEcLEAXt5wIDZuWl\n827/CHSEuLqJNkJsTRYXZe/hXvWm09OGSPQglcAeRH9fytWxBBMd82LRcsuYw/b6\ndxw9qkwaLEZKN2vtvdJYu3BrS4PndU5Z2T530rdpign07ZpIDPvxElJ8KuFRgikN\nFujKeAcMQ+PaZVWXBTEXsmqVJNPpLcun+Rb+ufpiwhehlqbnhdyqF40Rxivf2pk+\ngy0bKrCl+AEYiqJ+dKpUs50PYApvQCoKq6eVjoEnsACJAk4EEwEKADgWIQTIL6Ou\nHL7ca+Rrk2DEPOxFwXq5PAUCXbbZzQIbAwULCQgHAgYVCgkICwIEFgIDAQIeAQIX\ngAAKCRDEPOxFwXq5PGi/D/4yqrdmfkGqJBDHXfE6wnbm2+rtpr0F587CFtKeC7P9\nlJzDBXGvU22nf4pYB1c+UsLRvM+l3pQAfxJe8lg1fc6Phso1cb9WVquqHhkPDT+c\nlgkGV8c0M9T2lRpDOLXmn7UfoqVq6aGCI7fqVf6mq0YCcprsAx6cPFd6G6jF6qEq\nMaw7Yx+6gESRymI2FbifEHAEOWZHcS/H+itRN6OQG76n5W/PmVO8bsCqxTQlTqLS\nARX7bMFVI/J/F00DNjqI2sWzNx2FLsEbfG+NSrnGmun/Dz0M//TTwpAORTdQ5xGF\nHcxNCsuNeRHVvbArP7NXIydMl5mBCs8W9fAZkNVchiVVgMovn+APA0/zhCjw/+I6\nEwGnPtOYzENcriKPF/5ZTrv/moGVWktfdgTO8Ygbx2Z4953U0JMAQc88CyY1Rnw7\n5S/tjmT+hwlGMb+YKiwq9+P3Zo5+9dPHz+aL4M5gskZDBP2Iu+c0ixgukoKdYf8d\nmje7UsuF2RvW0y0Z/wIhNSo6/N/hYr6i5cMoDeZ6zMVZZEyFPx/JnvAX6B7t+7Br\nMNFRtjvG9TNt5P4BkoBy0fL5Admid/oWlDLz6posj5ayfjb4ihB91BI1ORaqG8oL\nAUC6C1vb8dmvCPGIyM0pmJnALc5/glnDNqyOVRrYAQXowNrlVPdbX3dYbZ0ooGAe\nwbQhUmljaGFyZCBMYXUgPHJpY2hhcmQubGF1QGlibS5jb20+iQJUBBMBCgA+AhsD\nBQsJCAcCAiICBhUKCQgLAgQWAgMBAh4HAheAFiEEyC+jrhy+3Gvka5NgxDzsRcF6\nuTwFAmhcK9QCGQEACgkQxDzsRcF6uTzocw/9HMMhhddNoJeqOAFnKSKcKm5uw1cc\ngTezizurj6W7GGKmJAvzLHz9gD+xz3TjAe+E4ZAkQNF2x0OmuEiHN1ST3lqtmF1J\nfz3C1/WvtTTm03h6t5NQRtBzCLhXW7mH6Qbof8yI3pozM9t/mhmvkkr7FjJxC8cO\nA8VbNXIVChZrRBrQZXfr06PkjDg7qEzSKZgDA10oSBJexZksf8g1L0D7NuEUu3dL\ngwrL2+FlT3RCmEEhEei//V4gTbwA2DXjgro556vVv1SlgJWOsaD3228XT05jSta7\njKswMyhS/U+/e7rt3BWhm/sxdHpZXOnQ0tqB8/veu4aI79DFTP//oDI45xwXXFSw\nZwF9GEvOlX1q5ZUA4eS2mxY1hHrj7Lo9VZwW1cZou5msqKXpe6+CLcSjPbIPT51V\nVFTbmx9ps+0sxCa2cbNu/DvOlxAmZj2c9ceW4fsAiS4m8K4Z0nM8yy+t+2JHh8d4\n/GpkLMMWdYGq3xTxRS4mCekEZ28LWvwjo9/X06UvSGSu+Z47VxmR7oVeSIt8gPw0\n73gAYz4gb+cXTfAm+LOk5i4j564Ixqh5pIkjwasMQS5vlswWETq1hmDsCDCNMgLI\nbbQYlUQgCFClPl+i4TXfWc7b0K3AUSjeThG4ZpsjDhhAl/uD6ykNMugZt66XEJoD\nOvzI76MwP0rwuX25Ag0EXbbZzQEQAL9YA50WXd+iCK2rTlDk4Pv8piGkBu92CJ8Z\nlbP37AriS0xKYm78sWFqRwflFoerUwdPbC7PV5FuslRC3Y7T2T7uJOU08YEue5nC\nXgLJxnbtpjCKoLlgDWgLgLcmtfQnQrZkIZmYQ6zlTFHrJZ+Mg29ku/JeZ7HHB3EP\ndQoFd0EIJJJy5IUhJA10xnjND3RrSaApS0Q7swui8LXNOtLa/tpGXF/0OA6OjIXB\nxuT8lgTTUtk6zz+ESw0BgI+GnYZmL65m/PSfTVd79PujWhP3e/OmDti8JxWVsvjh\ntbmS2ZNuQEKAvGJS/ZoMrap2cuA7OrDM0/Ndoq9dft5yhWZbkwBNevPwXSo9ZVgt\nK+mZyVrQPKTfPusjF27HwPw1xrSvj1h1b1bAlg19FJTTAv5GqOePlnbgUlPvJYt9\nR3gipBy2ZIwWV9dfRZe848dz3dReD/+q1fNkQJJC76pv7T0CboEMHvKryKfsKNp6\nTHyHWRE472kkQZ7qF2ssxu3d+JHFvn+KEAmIbR+UfS5hnENVallHXRU4gtEAae8c\nBlXNnP8swzO6BkgGqsERtvATTdb8xjRSUIcqPxv7EIRG57lnEHuGr6N1Xa6FAxTm\nhOy27AlmnbQyaJmpDMe5s5XHApUbRA4Mq1qSbcOFNml3zUVKnCXaXY0B6MM5F3RP\nhRnx9LHRABEBAAGJAjYEGAEKACAWIQTIL6OuHL7ca+Rrk2DEPOxFwXq5PAUCXbbZ\nzQIbDAAKCRDEPOxFwXq5PLlHD/9kI4bENYzm/IE1EK0zp48LZCsaeZGZ/hyW0qJ9\nlnLyXKRmilHAeLmD+tRXEnCOzmFwqftJpQJditx79uoyUiTiOA/yexia4/hrItZ8\n+E7lXQmvA6vEFRMNZ+5+TtlOMMS8BL1kdyJIC589nDZorA8l8401e9nAGVtowhk/\njWpF3tuRfb7sVKvvWpzee/EJ1ntmUXi8FrhflMhBJafQaRdLFnrGTjr3iwh05TDE\nAbpwzTfZQkj6YljJAFz+QwNZV9mK9hGzq1ExGo3B7EXdY7qelQIYTEByPXkRXa9j\ntUYJZOKX12hyCYfONIFFcZcNryxbF+X7UtCnTrgyK8LZ3L1t2xKOxumvoeLnfOqX\nWdizm25eu1vaBKSmdYwwC9z9DYZqImYtOksLQoolqEh0LcqJBKJuItMKmDsBW5EB\n5IFinbpmzxa2X4rvX7qNNQ46ky0sJzLW+bollsrn40S021IUyXq/FsisJTyFz7Nd\neTvEgr8uvOZJf++r9oEZw48siZNqjvPsejQjacu9UyXM0dCnJSaOm8OnZy8TpRB/\nibYKg149T1Y2+JrwHaXdKiM0U4k3a9X+TjA8BCV0+m3eY97cuFqXItaEGg/3FJyf\n9l5FS1bmjbondfTk3+rBsZ/tzDds+Jw2ir2mncO1jXgVls8xieBGoRWvH1N7nSSM\nNBG2Fw==\n=Cg9A\n-----END PGP PUBLIC KEY BLOCK-----\n"
      },
      {
        fingerprint: "DD8F2338BAE7501E3DD5AC78C273792F7D83545D",
        armoredKey: "-----BEGIN PGP PUBLIC KEY BLOCK-----\n\nmQENBFKKodABCADiE7Ex8GXnQNgipqbTADO5+BfufYFeq9YLEKkuOUfnjAZ8Wzle\n4eLL4rdfFSuwuUO0rkSFOpNjkjKqxfRo0RkmlMxdHwT2auf/yrfX4EyhyKDn1Vh8\nMP2JecXQN3FVa1yR8AMGfT0zOP138MNp21tNp3Dy9r/ds6ZhttrnR+mrKnhKMmTj\n1J+MX/LKw3o9ERIz0O8dxw75pA27npX1EcSCM1Vcq1bam7xD6d3cfQtfQsidXkQ/\nnFpD7BQFU+nemYaa6Vkuy4VJ11AMLNvzoWc2iHofD0kO60am3z6x8t63m+BUSU5I\nr7B5GNbatekJqu/Qn1qrCjyuXcExEsGnCJl/ABEBAAG0ElJvZCBWYWdnIDxyQHZh\nLmdnPokBOAQTAQIAIgUCUoqh0AIbAwYLCQgHAwIGFQgCCQoLBBYCAwECHgECF4AA\nCgkQwnN5L32DVF2cywf/Vws0J68vxn+ngUzq/wcWlQANfwMFUcD/8eM0N1B3OMXQ\n9+GSlsuEUvh6/oxYxn4EPIgdqsV25SB/fAUz4uN50qvc0ft+wTgh20pnMP0qLf7/\nadb/dBf/NTV4TWzHaUDAkwPXqPd4He7AI5/PZeaMGmJPJmeR8ZM0ZrvLsNTmYV6N\nbyWcqYvbbRSNSn4ypb/QbYjFQZB2QKrC1LAW9jpdNnfQViYeZDmoSRaCTOv7SeSy\nTkzOhMFRZDP9NmUvnl3chWNdmBoLls3/lO1Kpuc8h+nXkgU1hUyvsPjs8zBaqUDI\noMudExnECyEUHlZvVLlfpocznOPqlBhxjR0Q9VRYYrQXUm9kIFZhZ2cgPHJvZEB2\nYWdnLm9yZz6JATgEEwECACIFAlKKo5ACGwMGCwkIBwMCBhUIAgkKCwQWAgMBAh4B\nAheAAAoJEMJzeS99g1RdocEIAJCkX71Kddk6B1HD9V80dpTVvm+YMup2qca6LqLt\nsiYE/O/XZHRZZ1WJRdxTGqGLKLkHgea0PUaxrcUxSzibDFJqEcRBz90ojaVu2jXb\n8Wbr9PkNcV0ABivyPCpx0IFUxKj3+94akK9DOzwLpAf2QMSm0JlQhdql8K0JCRyk\n9ehkBCxcssVKocgZTCRur475lYNDU4SiQoJJ7iFirf1SvNAoeXwXiqDAR2q/k5Vr\nANmfzKvmQ4UMciExvQaxc+q7LsBI0/EzFtWCnhPabEzhY8lzqsxlfdEbFXWFO1V6\n206FBYuymTE6IDxgtrhVg6FZgmWSrxnWWasJSZxv2iWhwgK5AQ0EUoqh0AEIANGU\nbt///24seQv1o9hgAWJ6i7sjC79jCH1mtPlLjAsUcGg+16fTwAlII1Z2ffXYKs9M\nvcGBNVdxkR8S1g+aYM/ds3hY2CglHe7zN+/pkYr5I1jchmCE6LQDbGA/yIfiufMk\nUFB1Pry34P+G3mcnENfeETns/26yCSJ9plysIggJiPKS3ihrPnp8qjCEByzBn70H\nRkliS4nnjws1aSG67aWUn0RdELrK7MgmEWRacrMu308pgdn7XQ/hUUPcsOAqiI9t\nc0xeG2FXEg2WS7aklqAw7yjEpJK7qid0ntEbKy3Erlu29ZxzH/kphNJH5eQFgXJ0\nguhG/Sm4ljt45nn7H+8AEQEAAYkBHwQYAQIACQUCUoqh0AIbDAAKCRDCc3kvfYNU\nXVfxCAC1ajXnKPFswIU2RgJETuY1GgUHNL8oU3bp5oGhocKPcDPQL8rLZkAhTfKY\nkRoc6hLS5wcgz8FSEEz5oMesBWCXSZBS8xTW0vgncbrTUVnVmCAz88qeQ7SA9RVm\ngnpgKnVAv46azZQkB+x1FR2scSEf7uooGo5zxB7LvSwRX+bgyct5TRcs37lLLaaG\nlgsy7yrcZYqqUXjEOGrZ78KMNDifK+X0XYoGY+p4sCfl4Uf46qANa4shQMZjKaWG\nZpiqs673aIg0MoZPCyTTO6Atfsv2Li8EossDZpvJuroJFZw5zvIEy7AiDAcCZjMj\n8FLoLzom0A1FNxCvgzOraMITOobs\n=dTMc\n-----END PGP PUBLIC KEY BLOCK-----\n"
      },
      {
        fingerprint: "A48C2BEE680E841632CD4E44F07496B3EB3C1762",
        armoredKey: "-----BEGIN PGP PUBLIC KEY BLOCK-----\n\nmQINBFhJehkBEADNX8qrO9msK8u1znGaBG+Fr0FS5qzMxpC9oStGZV8abX/rrLkN\nNiImTUMQG6Ooz7luOBSSF7VbYT2xSrgzuYV8WrSJE4Oo0AjVNn2YnbwgyzcQ5FhY\noDcfthDk1HALwXPxjyxvWA2RYf9NZj5OsT2j7nzVoRrQZRtDDB4l2dyEObZ4Am5R\nMRdmAApgHYB1vdTqseHIQjB14V5RcuEzZaE6qez/vJuCHWQby5y2c7JhbY4Hj7gw\nMCkB4I7ToHX0PSIpDOAqBXb1OZiI834Y+Q9pP/HF5ormpcK1hccoARQWXano7AQb\nfiQnSYh6kr6HJbzNR/YVxIHdW+yuxrZheX39EerKejndgUx7RrHmRm9K+7ostMEM\nKq++K3HYLdMag6loazn6qdX6DWgNhSJdsblJUOoqCnPQBmZMGtxpZqh3Oet3tlWm\nxF/ksmc5NmvcdZUtSndqSYa4xsegHl34mkefw4s8GmkIP6d3eqNpunC7Kh0FzkgP\nkWLENpusSYpF0qVtJ40uAgW7U42d5AIf9kc3zFn/yF3c/RHy5NjE4x/fAq6iB0s0\nEFnLXW8397YJY1PvHnvQzTQOWSkzwwyym85kjU22UWn7vKl/NlYmol6RydlCZvW0\nK0C7qg5AgWp/TkJGiX+6Wj0jVvswn0LelEIgb+yBiBjb4mEYLwgA5zadkwARAQAB\ntChSdWJlbiBCcmlkZ2V3YXRlciA8cnViZW5AYnJpZGdld2F0ZXIuZGU+iQI9BBMB\nCAAnBQJY27LjAhsjBQkJZgGABQsJCAcCBhUICQoLAgQWAgMBAh4BAheAAAoJEPB0\nlrPrPBdijzcP/iNelF4LLAJrz9sCfe8hAm0lk4cg3AM3XBuR/k1M4LsJQNd0iUb0\nTQNQeVcuFpZ7WANKgTtNXlU1C9u2QYNSikn+NJwglc0g6ukL80CKu5tdpOTCRlFj\nVaHacRyg5tE3tjo03E6YHPS/bfmfOOVCccJfo6w9S9zncmxM2qxYZTjWA/3QLDwd\nBMS7jIIBcM9fZTqANIGhjzctpqHfGoB+wZisx3UxyGu3OIa5nswP5alqIOyajwLn\nJirzmc9/+CEf85ap33gul6bEX68nEVaDUo9ft531z02tlNrFfX4YaT+um8t1oBdx\nkYq2qB0vvxme/q2Lzy5JIzLKkSaimHyXzahI3YhflQUUatVsfZBSnclpNrPvKxLN\nUI1GVkODrbR9ps9JAHo+IRhFk+HoC28CpvfEsOhzB45xwbEgzprQVyoRJQ2KGnOl\nYoTYr9L+o4/dxQVCCQganVQW1FyCKcAip5dfCwHQUBmMlhkc/QdeZotEBN2mKOzE\n+hUPkiWIiQMFJ1x2AXcOjjnEIOJ3zHFmnQ134K17P+Alkwwp4V9hCqoLg2tG5wlF\naUTAThqDZNdxI/VTl4SK+YIYoUZfKLohfSk5eOx3g2d0SYjlMf/6pR29XOez7Nee\nSGzuYv58ireisaWNeYbCCYU84KTVatsyh/4JD0bJG788nbLYDqB0yk6PuQINBFhJ\nehkBEADDZLZSbGS2Y8FCL9v1SwDcTfZnJzx0Qau+HX4Are3/lVipHFDSg33lrtjs\nsKkNrQNnBp6IV8udSvh17XnitH/oV4DA72MdFWBlxoZ74Lo3V3+n0KJdBOAmn9Bd\npPq+8kdBIH3tCKHuEWEw7XtoyYlu1FZ/bsR74x4TcDi7UG8nmiYALZ2hOfnSnUp8\nax2ZzzUZUzh72qUEWa1eSp9p4rLTJMnwygcSxJcS1Jv97D4fq03mW9Zxen4wuXQ/\n386Ec0Yc8LGmv461PbPOjtuV1vEeOTWWSTx8k0Qsch/TJXxKLbcVxOfQ0sZyOq/i\nosWrMFSa6+JOtZYZIEXtPxdDzvYZFcc1euzdhVTN+tfYulWmBjE92ILdM2Rcgl4R\n1r4c+9C/Q8DbNXf/4ZiSxoL7rGWhIwCp0nD5mNOTQyY2v+PTlqIrg52ZsS/t0pwy\nv39KLiZICUJFHuE4I2qLonriLxnZrgtYfPyqDQmtNidoqG4++nsFX4SNoSxUXaAw\nPLxnxfwMDdrmzIHquQP4OHIQCOwQx1PNwo1+XmMVD2v/IXjDUP9yeAFYC3Evf3yE\nuq8ldbHxKHsS2aoOlEWniWpRIBVtJnqgCbtbP80p0itCse1SkzYZfsHCO9XqBOrS\ne63R5eprdFO1ixA60k00xYVVB1pFPmUYzeoUXEmNNVzeu0sRiwARAQABiQIlBBgB\nCAAPBQJYSXoZAhsMBQkJZgGAAAoJEPB0lrPrPBdiO+MP+wbMbkkDN5D9gjz4Dnty\nZW4P/47oGLuOiH8SdIui+XlPt8eWSie6iYZPEiS9jrenb/qism0ejpFuOk7wiLCI\nYnM8G8C42y5FfFSVVQzKHJ4SyCovpkB8ENcxAdvpbtcX4e5ASwrGFUWdeZ+sErEy\nKPe9TqDpjgHLqzFENSiR7hXHm6+BGslMRrn9VnrKQPIQeN9VB0YZIP5fPcsMvxm0\no8Cw9FkMXcZqrJzNH6wX1HIqO6GD8aT+dUPKupKmzDyG3YX1SJ3IyCXNtpnB15jV\nKzd8hM1cguuihc248pUA73uqn5pD6zZJzpIfZIr0CUhVyevJTiRzqLcuK9dizMI/\nbgYPpYuFmUlm/D/AciG2vTNGJ/yit9Yk0+7NIt979okP5aDP4fleLcGydbZOzOmI\ns4PDe1TmA59jphVDnNqZ52M9XWPYIT4xo4HI1WEGh4pQ+gU6n4W6mh9unSrgdvjO\nU1PLlzRL7h/ZhkUkLP30vgHco35muGBMW6/Ni/RQwxblR1TdpZ2RwvDr5t2u5HBU\nnpqSZaj8YOWI+DPDYGYzqQwFgyGLH0J32l5zzpcggwhEoDsQSMHKxekHD9bX0Bck\n4gpJCw5QwoZHeeSczEFZq6JGvWM6zIM8JKg4gGwIcZcJse/s9+H3+WvrwYFk1Nto\nfyCIa9sx6lcYB+gDJgESL0Nt\n=hSfG\n-----END PGP PUBLIC KEY BLOCK-----\n"
      },
      {
        fingerprint: "B9E2F5981AA6E0CD28160D9FF13993A75599653C",
        armoredKey: "-----BEGIN PGP PUBLIC KEY BLOCK-----\n\nmQINBFl60g4BEAChHPOjxooUAUjigTKIERl8uYyOTA0JL9nICb7Azbl2J3ygmku6\nHdbaqgfaHRwap+hE0s8/oLkccFJVnab6b0rexWQEvarOtzkARJ0wqbxQIQBJKhfS\nV9KCjeacnohnd7CZCW64PtNLC1M9J7rBR32/f5YjllVQeZ/JesWW4HjxbxQLQZ5q\nccjuFw3ZG82zXZZ6gn5b1hNcrDuBLhmQ70UV25rNQopM916o62jXVIbCRNh/nflb\nhGaWrmnhw97HtrIgkrqH+AlzNJwF5YUhEe1SumjFo4YLDos7FtzZ+BO/KPJPqYFB\nkqNzpZHH2FGp+jtxca2zhPFJGxm8KmyoznmX4iYZeI/wtlsXzHs8nP/Pduuw8Q5a\nT9sIRBpw2M7/iElJED9YAr7xAv92xnha2cBAR1rgD/9u453+NvYSJRZiIkcCSx3e\nHT9VtAuEWozkM02isHB1s24+0UDvWN0zKbFLVPpLM/Ctlp8YgsPF4lLi3V2/YDbs\n2n1dr4moYrEGPF6oMCT6xlrpItkkGO3o2lSq0/2+AjL7uEOBI0e2s/2xLh0OXUCU\nVWj3oqJUvZYaNpjKsxLan9p+zWtzK4iBSVw5znfg5XBVYFJghmnlKN+BlCpaWEJV\nAKm2K5QKYOOrF0dHGYmXq7BmSitCDLfFc+7K/0tH7YfN/XYHSHYtT7OtBQARAQAB\ntD1TaGVsbGV5IFZvaHIgKHNlY3VyaXR5IGlzIG1ham9yIGtleSkgPHNoZWxsZXku\ndm9ockBnbWFpbC5jb20+iQI3BBMBCgAhBQJZetIOAhsDBQsJCAcDBRUKCQgLBRYC\nAwEAAh4BAheAAAoJEPE5k6dVmWU8m6IP/2mrwX/bxyg4fzh07MqTwYSC2kfjkZgH\nqBdwDmhJCq72erkTK5oq+7T7x+7f8mewM7ZDGXT/ccH6ys+AHXLM/6WDm71LczYn\nnhlPZMOmfqCtCqavyx7veVUwQEwFr8NKJg0+U7ROPf4EO3g5NYL5wEN9rSFUFGkw\nuSInJ07FY7/OD0Ej4Y9hUbdWUzFsk1jdmDjJGN+k1W6Vjv0Q+4d1IKfOpgb5H0Mx\nL9KCQlsAJbLcINo/oYu+hJt38au6I1hnuT19lGDmCG8ZGcmPYXYSthtWX/II7SW+\n/7g1FzL4VIBZvPvjtQCjmKOHMhnyw+lWF7biPDO7EldR3bmlruATXyDJ+yAaHD2R\nhzHPswzsueAF1cA7Z9XsyLJ/g0/t9yNIhI+7LJJD6GlKiVH+ogP/Wzm4mpDweXBa\nlmlXsZeq+BVV4Roh8Ab1AEIijpvRsYQ4TsK2sTpg+TzqQ/UpBuK1NaW5tr0G/zJZ\nip3D0wo/Mn7+sJjKqHY36phi8cJ6PFTE052l7Kw8XMTI2sEZ42g8BuqtllFGY78t\nqlyGvhjeJt5Mdjvdj5U8A+6AkUu1JXlQoKjdbdLTpcOzqV0JxAXORNQ4EAsyNRHR\n4Ocs1vHlO10k/7/3xtpwatRp+7D7BdlBhOpV75+xtO968I06ddk7aYtmdHceQ10a\nYaxE+YRoBubRuQINBFl60g4BEADnTYF3VoC++RSmvfykLv9KF0xuptSL4yEdmn+q\nY4kKZD9U8+tsvmYlsoAms0+0kjNXcAtpmgr/oLXG273R06anpFgeX4KMTrvJ3tct\nBXO5JuoYEmZrlzoHJ1PaPEJfO6EuEADl2D6arlBtO2unBeKuqMkfL+dV4E8mtNay\nE/H+qfX+JVZGyPMKbG15mYxcyd0yRrqKh/ZhyGtBEyBzxXP8XbTx6l0oFCrHGC2t\n2pRe/tb2XwBjv+VAHfHNkxHGraHA316lGIAMgB3Aj5kwdoVCq5OH38lQr1U55WRa\np1yMsmDU4nuk17hMOW9zPqLDve39URVvNRtFwNQmex8PiqtWn52aHsEuUqZJAHTU\nEpuNXOJXjNtsfQYY9FBLCrKisvhge2Hnx7IaVn3dkKLKM7LXeOpUYKLfTUkTp3pG\ns5HLFThTG5PAHHJYQNtRedR/zdJa5Znu98XNlGIpCRMLdRkvmUahVGh/FUw5o9d3\nbOalBY20CDcOvLBwasySZO7buu+y025LVaIizFSsAwRd9KCvTHFBwKM0ui0JHx5Z\nlgx8PYwPJxOJAeuclVnHFcuBesi+wK/uAwujyVxjtmMglCO0pyAWeL9vJUIxn83J\ng2euk2msmEuzVTOPObhuV9iOkTRY2wdl248ymoooZuNBbB8KZ4VBK9gHgShEtBec\ndgILQQARAQABiQIfBBgBCgAJBQJZetIOAhsMAAoJEPE5k6dVmWU8pLgP/it40xsG\ng1RDip1+5ctMVW8+DRLDT9zfq6OBd/fHY02Nbbw1ZWK43tS0mliWMHM3Zc/ujy/9\n4nbKawYWKy2rGv/JFTGU/0gU8renvKyZHWUJe2rgAj9HgaERUnpJaHpvpkl/yjZd\nyeTvLuVIqefRnyxPQg9ce55CL1fL+VFraVnohWkeEkWNDqUSUuXmUS7VVCvYTjnq\nT/R3/hXnEOiPx/j0zCUK6TgGelhf7ZfKIHAnU3t/5eAjf1oH3BkhEpRKPAQB8STq\nP/Fr1pntFB21HtNwwqZJV5XIoidAbGJLncrMBxuZILjmbv9QDPE/A6X5fuhOzetK\nsS5ZppwKr9D4kpz5bpn7xXPyCJVfn1djccLq54ppHJK68eEkZwjCouOj1nkx4m0p\nF6lEMPCvDTBkAhZGagp5BmbCeOoaOmGOXlYRqBX0OY9nicxmbFN6rcxpUDQ2OeW8\nDc6e3lMPrzI2TiswkaMnUTWWT7EAiKE9k8iFGlNICNpiTqz+Q/GSXRazRBS8rCnX\n1im+g2KkWs9SXaMcbSeO31wlO+ZdD5NcYlc7GLQm8z+KONat/CMOPLf5JrHQt4vJ\nd83bmcM7vvf4bBddioM4BiiydSKXAYoFDZzs7xXuce3LpCleYnUISVBF5g3KVLSE\n1j7Q6fERAXlFlv7ciEuKBz5A3SK7Xt7Eb7vQ\n=kARQ\n-----END PGP PUBLIC KEY BLOCK-----\n"
      },
      {
        fingerprint: "108F52B48DB57BB0CC439B2997B01419BD92F80A",
        armoredKey: "-----BEGIN PGP PUBLIC KEY BLOCK-----\n\nmQINBFltAggBEADHYmcgBOWwJTVRJCnqEpC8IvOber468ikSgNolQHFbyUkJy/kd\ncx+byBnvqs+s050N6EocIkmPvaa+ptNYf21uDnGKPyFqPMKn68iAXwVDasUK1SST\nlQSixf4qyHjcD7oyDm+1behw0J+KEnjLj941/Q4TOTu93ntRtgBKX0urXTvGjuxk\niHyMiPSiisuV4S0cpi5XsPOPrCvRFrx6xUGRAPf5+MVJkbS5AknmE/aFaMa7yfXe\nhZEYIwJzHFgYYRTZH4RB+a6fO3VqVdEEO2oHtR34c4bEn28rtgcrJv/3rTa1yXZx\nWf/qGHthRUXY+eHwV+Ih3zOxlQ+nGBK5sarqpOLF2iuVYbmtJeYo6b0LQRVxNEOo\nkmxEOJEpkKJfq1nWRd3hY80KRnNCwCbGjM5i2s8IbyDtvmyVCZAtpBkQOpL24Uej\nO15EaqJUMLbAwbrj3vNZZBRcWC4/MWL8seYYn05cIRKp9tf8+JsJFpq1VYcgtMjJ\nbu11+B/lhuNwDow+iBETfHgwNl61B9/2AlyMo2qGnnJ9Q/fBxJDV+F/cSun/zyr5\nks5wIuzY8fDYzmqaYROgZObGDwqbEON5wl/iQKFSMfLB138AP1TY7yDLueuuohpL\nCxEiVntr6+d7FIWIDfJS7FLQJvC6riUfp9TWXjnqPjIQPeraGNlqKSUIeQARAQAB\ntCJSdXkgQWRvcm5vIDxydXlhZG9ybm9AaG90bWFpbC5jb20+iQI5BBMBCAAjBQJZ\nbQIIAhsDBwsJCAcDAgEGFQgCCQoLBBYCAwECHgECF4AACgkQl7AUGb2S+AqKBw//\naQJ7OXWKXIiIr45ojfTJ7IaFbhaRE3awRyzrnnaGmZSiv4RN6Uzbx7FrzOPVKr/S\nzelUVYlRt+umZCIcB3fv0bOqa32GXHNN6mVPQL1OWFPfS6NqV9tEpE3bdGmffYck\n1r3Hst/kL5OeTp6VV7YP1bMy1kvoGNzOWKnZx1sV5FKOVWmJ05mG6QGj+rFOEE5C\n/mQbs6x8/aoIVXMNdNJMGPcA/+lPKaz1vk2yIt1r5YTtTlzz0IihltYUihuoi22G\nViwSOqjtK6c6HhfeUOfz53rZKjgtcmQNFlypVJLCb2tUZQSTauOiaY25Qs3jkvTX\nHi+QqIWH3slDBtF/CsppDFb02jSFyHYbNvWnlOPHAcjYHwMGPXdNJCVDB9a8XQHU\nlYJQFvy1uDefycWYZk9zveaeHEiB/zHX5q16yT2jQxpt1oPjZzVU/fmPtIw5vHmn\nHMG1lO6A22mKXArmH+RwLrSIYIT9VYpY5nkhKikCPe4mAL3jQmkObAJh6q8+cVGG\n8+CjEQXMYQ/6ui8+2vqUNfakzOCdzUDc+pTIm93kGXkMaUObS94ocMxqBZgFpiGS\nix1oxF9ggAzIySu+FEflxzyNBqXyCg/CwQl5hBkWhTJ8cdBWCCbHKZvDwgF0otSH\nH5xJnvc4OKF46CCrXezT9tn3ZnE7/eZse9f0gSKteXO5Ag0EWW0CCAEQAOjS4fWh\nZ6dmAs4suTyf26i+rpDiL8SRoR2uxH4G2fepxFWHPPsiYEdGyXFeY87I80la9bJ1\n7LjYqdTscNq1jQPfkeV6wd+XOm8oDXHszvuZMLPApc7BBOEcMpvG4X8iABVn4/Aq\nYqOAHyztph9Fai1TefqgBxlLJNGXUDCruqJxIQpAlEPgV/kSmvTen4ieiaECWupa\nnox6RY/012HhpkwNtVBuVQwTd33/FHCysZZvv92rZyFqIfkLP5am1xUmbShsmmaX\n0VOUjjyrMaCHrdwAnG09qDRRltKQiSjBWv4qH2EZl6E7KPQQdIIeUBCKU2tSQLw4\nfaQj5Mgjnbt57XYA8UALuQQxg5rIKrgqg9602Sp+JlP1xbNe+RgIRzK5foR10rAT\noDYWsDLDtFEM08zNWAsgndt1BbtFOS38oiLYFpscFAvKke8Z6SG68bhqvLK+jh+S\ncBrCTc2VCUA+MkGgpWbUjvEYrBgjpChmj+CHThOGRE1PPNz7lpHFdgFkIsDDSyrW\nFaJuqS4/oWz1zpivKDim8AATiRxhCiVDd+l9bR9YKHHTaBcZw8FJT2YUsH6/dTKZ\neOjFaNH6nY/A0S4QAXI2TPIl7rTwCHm9+GxqJtTPIqHfvoZ2hfL3N3LguZxjuEEp\n48mDr+Pvib2HdoTYc6KeqBJ6xl+hCs2vwE2FABEBAAGJAh8EGAEIAAkFAlltAggC\nGwwACgkQl7AUGb2S+AoKVBAAj8SuwYHG3c0cgcgKxV6WcYLyPuZywsUZA02CA70B\ngSZi6lyrhPb2akXq3Mrh0NX0GxfgDHokggaMuXZtuluj/9FhWCqlvcG4sb3gujnX\nunzzYBZ8KtgPDLFV4zAVdHBsQnSFKFeemVvKYD1vlkGPkHoO8JHl9gZz/mei0OER\ncyYbyw4ufUEgSEGaKf1BfHveXeM5F2atthtjYvhsq5RsrUB9QazG/UKu0fMCof/6\n3WkwlJoi00SNtMbwqFkhnjxZkZ9S+flLj4TXciGuopNkzZwnUtBjTqrSjgedTKpH\n8S5vPiqBORR8hcb3lKKHSIyIBDHkf0Tk5sDNjobmRzp0LQ7hKh3HgCfNMLOwffTO\nw8ZMI/B14VHnsrzrUIms4Gs8lohT4FdbC+SxW9bdN8ifGPVojD6IsxQXpgTXGddT\nZJDuFrNZJsrPguinZSzXBIA1sqLHf4jc6iH/qkdOr3jmDWiFtXJD5mH8hy+a2NZ9\nVNsIyghvEedwy61grPghFDrkJKN/nmbTsoS5zVIkBwCtvdY7/8cXdY4QFXWREWAu\nzvT091yoDiEFqFc0HUTEHzJEHwDiBNaRvWvsph3/wejwrPz6IZ8jh/dvhTH1ueF7\nn+uWqOu9Yo24d3z8jRopp7dTponoPYTQKmH8uzNeqvO3DFxm7fJ7TSrXaYJndOQ3\nAI4=\n=Sf/w\n-----END PGP PUBLIC KEY BLOCK-----\n"
      },
      {
        fingerprint: "9554F04D7259F04124DE6B476D5A82AC7E37093B",
        armoredKey: "-----BEGIN PGP PUBLIC KEY BLOCK-----\n\nmQENBFTROWUBCACslqx8p2znj3CwEqWK+bEgyfxykVC1iFEABB6UCQ5UrlAiYTjI\n0vwFaTlbWkD3dWBxiFN2+n24Lro549ATmXGO+i0Sacr7DTgawZdkJuM17nNmlAW1\nc1lo6D/KfQ1K7QrakloQw10LzLLW3uxi3OXVoefY1JKTeQn43jolrCHho9iNvZ0N\nxyihQYzSiRzqMQGltKw5UDdbhwuzr9jROgHuUH+msOzax9IkLb8mm2VqJ3HaDJWk\noAaU92leGoicEBhR8qC3zGzua7pRFK8qhjaSSL/N/NpCu4ud6axHaBomfn5HJQNT\ndTHB6R6wsVgMED9vfZHqJeyltDvA8FDw4uQnABEBAAG0OUNocmlzdG9waGVyIERp\nY2tpbnNvbiA8Y2hyaXN0b3BoZXIucy5kaWNraW5zb25AZ21haWwuY29tPokBOAQT\nAQIAIgUCVNE5ZQIbAwYLCQgHAwIGFQgCCQoLBBYCAwECHgECF4AACgkQbVqCrH43\nCTvBaAf9HEU1MhfIF8qlGno0WQojtEW8hLskw0Dd4OeG3cLsSmCa72zEjEVHw82X\ng862h3vfEybf7nd+mxdoSDT3iLwD8NOW6pnzW4/RjRGwvKKUhYggu8oi3xBSNj+h\nGRg2dkRWpCtqJo1q0XUdh34iqJUpk2isYvsQuHJrbcglPLO+tuFFNZ0JTf1f895s\nOnP1f+N1ygOnhehRoxO8gjncU3M8TXSsX8LQuCYfrBXayT5kZ49j5/+HOS8dHxYE\nR9e4LpPIWpfWQtXgXZKxcpyu0x25ZO6jkQLhleXtRpCfDO3DJw7l80suGf7Vjt0P\nXiYk5K2Z6x7h9rhWkEN92kTmRSbErrkBDQRU0TllAQgA1g9MDLyGI3/W+oXwrl2r\n2DKvJFRALeUHyedU+oaGo47XBKvNk4UdIDeHuUvf5DzYJW6t8GH1G55ZdYGik9/M\n16/6b1eYA2T7P6kjOmCGtv3KMkCLbymlFxb5SWEWwVR16L+5eXfVKbEBT7n2MGwT\nc42DCJzg7APZasaJuRQDoPgQFVQ1WX+0eXimAgdYlbtVjZmrkaIZbzGIcET1lJdB\nxOj+bR0pXIXbOvo5FlCVMmGAefrDePhqfuFMAQup8d4Gd7V19AcV8FyNUrVkji/a\niupi4FcBKLuF5yybJLY5d/Ij0pZ7MGUcbUhe9CbOZv9fvZBnL1Ukl9bxfchzrM2h\nVwARAQABiQEfBBgBAgAJBQJU0TllAhsMAAoJEG1agqx+Nwk7vzAH/iTv3qDimLGA\n9YdgSJ0h1aWZBgU2okJLLEeZQQuNHzM+ekQDhBA6Bdb938VtNUAdCSABBKUlFeq7\n+cqpcH1YgHyBv6K6avTI0F2Y1+nYIqZoe4n1QlcWg858fg4zzjBPU+s2eVIl9rOZ\nkMioU0UgM53DOhz/KjCHIWeLCpZAdfXsK2+lzWLINoYJ767wTNkXWPcxj2mGtht3\nhCOcTHK5toVhlytM7vGVacn0xwOhNSNMBwFq6rucIi/fgLheNDFgLPykE48XmLau\nfb3Fyii+q1BCWWZsyZjkLW7kcpf62i/YlrJHjWRheWLblLtxqy4ZiKqqLCtyfh9a\nxr5u2jsokh8=\n=2Ugv\n-----END PGP PUBLIC KEY BLOCK-----\n"
      },
      {
        fingerprint: "93C7E9E91B49E432C2F75674B0A78B0A6C481CF6",
        armoredKey: "-----BEGIN PGP PUBLIC KEY BLOCK-----\n\nmQENBEx8nbMBCACjmblSAGggunFHAWRGZLWLKltA2PG6rIM0bOokJFWtGwRqBCAa\ndKuNwBGy7eBwFQAxuHnNwDKqyGgCKUBe4RUuz0gKr1WgkPAzHZppo/n5BhE4iIxr\nlWJBKVKk/gjXVUBPhRPWNTa23JbzJHntxzHqeMQWIwIdBXoyOf0tOuXcfH2oVBdq\np8nFaeJQ906F6olUD8U12LgIhkg6/NTDLymwkau4YcOe8c2repNITVFaP6w5FmSj\naWTnyFXpdnVF4fWpbrLXsPBG72UMsAyWW4XuMtO07t4MvzgKBQALmGqlGMVtVkCI\njBgYD250NqBGKPmBrfJQVYbEesOZqNAF7bdNABEBAAG0J2lzYWFjcyAoaHR0cDov\nL2Jsb2cuaXpzLm1lLykgPGlAaXpzLm1lPokBOAQTAQIAIgUCTHydswIbAwYLCQgH\nAwIGFQgCCQoLBBYCAwECHgECF4AACgkQsKeLCmxIHPYyyAf8CUkbVGxWid46g9jq\nhYJd4o2Au0l6Y5prhraugbMw72PUstn6VAqx77Voe4NS5J/8942HHWjtlMIn42gU\nB5DS6gnGDFpo/64d3AZZ66meOE7OHcD2qo/kvziIPq77paOu4ZLF6XcY1xycCCkq\nL+8zzH409o6uR/LN4APeUcCmnqugibA1vOmQcvU1Ks+X0hKEHOkjDjws8F3yUokG\nahUrtvYqJ7qNx5RQvKzvcNbhM7omZ2KXH57YyhyvSdUvfjzaFv7D2CABDlVk4xxT\nGAZjmAKrKI6mvJLU36Ip9XJTH4J7iAqOe2phUSmOdZOfRrF6qFkvmNNNkH4MbDu/\np9IPOLkBDQRMfJ2zAQgArSXiNKQXWZizpdNy/C5fWIqmczpW8MwnVY99PfB6+gnA\nRxZ1GX4J1APd1rniOEOEEgWiB+QsihuMLHYuGHBhQo1zvrrmvUAZpNwz4NovcCAq\n3AzMMk+VQYDYWqqkUFnct1dLblf6SuuZ/beWUk+Rju1mRQoi9heMMwjvNlqPBc0v\nN8y3I8WhxCtQpWIMvQs7LN3v0s8AWNCV9VsQxmgtYpx5kMe3aYMJWEa+RzqhNvgP\nFwfOUaBXQ07dBqLOhTjMomEVeBoCkBU8mrIrgqoOkucKZE5/Hlqb8d1y0AiO02bs\nzCHPc5Wx5aCpq+EYWhskM8Zg3CpXhHQx3rE8oMnX7wARAQABiQEfBBgBAgAJBQJM\nfJ2zAhsMAAoJELCniwpsSBz2bckH/0+0te0aioSQWEb39JYZCcBvXvvnpL/pHgPa\nZ6tOizCf8/3tSRbwxI2CQ19p8ji95v+A0c1G4LwiTfZY3lEkIk0ZL1M1Ky82x/lc\n6hhsIVQ3JdrCSuOUzMhgQQk+I+xPr8gx4+1GL+Ia9F44o0CP0WgPeLshmK03hmjy\nZqC+u0j/R8OQqS/kVe7qt41nmNZzwsROuKuJt1xFD2GMquL+Z4oCu4YLKM13WPkd\n+ntZI9Gu0N7YDY4tKQCtcjs7z7AwVpfCesnuJtMtFb1+xuyt5DErMVN83Mi1VrUu\npYtVXNkSmiSUWMmh7QfVNFrWDqlP8vUi3BIEV3FtjXblPkbKbow=\n=o1Jn\n-----END PGP PUBLIC KEY BLOCK-----\n"
      },
      {
        fingerprint: "56730D5401028683275BD23C23EFEFE93C4CFFFE",
        armoredKey: "-----BEGIN PGP PUBLIC KEY BLOCK-----\n\nmQINBFiGktYBEADoBPdUkwVA9dNViz2wxb+e3XiaQaesSHvRReDpOpWQ7yuw2yLd\nxeUer6Iexcoje/i18x+eD7FF1gi+Lo2J1LVIRchTCx2vGs9P2iYW1iypCRl89C72\nsq0aHz6SiW0OActk5FOJtlOycuYpGra8bKqyTk8en17s6EyjEcvQ54FWacriLz6f\nk1ZnV3mBIiy03IWEOaVUxIvmuBM8MQRUXYn/BxUX1Vpo0qpqf9qtXR7QbiUyjTN/\ndHUz3vxYT266afEsOmFOgdU2LwsZsNKASUnHsRzNMeMqTIopED3MLVH1IvxsAEyl\nlA0fEHV1pCEI8ue6Gbvfn2o0r+GyXAZFB7pJweSJKnF4kmvLfj6a5o/UBG1JWQBB\nZFlnjpCZF5hL8W6ldcMj0eCED2PEbFGiEirkNzjyU1sUesSluLsvOc4fzr0PYFBN\nGAn9SNTlEq5FpCubwpsmKsZDq/UWaY9fSguC/UhRe6oknty5swKtkp4hKrrTPjwU\nVTN/fwdgiHKF/NIovdP+vhItkv34pBcqF89udPXtsDHtyo1Bm17ezFXVGXWSnwfw\np9KdLVnIXGbKe2z1cpmvM3AI1QaWpl2nA+bXfYFVarHhTp+nWs5PzSUXEItD9K1r\nSUa9Vz6oQx1WpsM9ZZi3rF4sKhSRc2r1VBUoeETQjPzjK0zsSqdA4VwGBQARAQAB\ntCNJdGFsbyBBLiBDYXNhcyA8bWVAaXRhbG9hY2FzYXMuY29tPokCOAQTAQgALAUC\nWIaS1gkQI+/v6TxM//4CGwMFCR4TOAACGQEECwcJAwUVCAoCAwQWAAECAADH0hAA\n2H1WNEsPxwuuyNWAp4Lz+dwPpymTs6psfm8qOx7npErQAGlTdlJL2vMl1P6He9Oc\niBEoJQFrDbFy/ug34YI1PdUnsybIXg3INM6MGI+j9a9yTULzWfa3j7Tkg23oAvtm\nfkd94QZZUujvNvNF4Jd2beSaiJ9jHHAgSc9l4lovLeclFSVMxabn2V9TzyrRELIF\nl0j36a6IPu+hIhHk27pR/8SvD5ivJdwEuVEgb2TWcwvlwBwfWqG+HK70WPoHZJ4N\nwEcrfsrLGI6awhjkfUqxfuKN1HUystRIhuo4OmKk3ioUc9H4jMPIBZezZB0QASu6\nHfdILNhfWtxWlVBTRu4BEGUYr5fPHAhdSf9XUq7ZtNGXl4puC+fhsHpX1/GtS83e\nD+Z2YH+kYsK32KYSo9xWiICmcttMnocggVP+s15GiaormIM0bbseMbGh8gpuSqEU\nnaP8kQEkqkbgMetUSS6noZPHMDMIcuvpGSbKnfYtBSrnKtXq7t7u1XoejJoQOjrL\nBp8C4FN+HcMBx8xqd2SkV26MZWeIauP08nxTHj8nG7Wk3XnW4eJ8whO5UKSaOtLq\nB8XMKhLNxBXvKM15y+ex7mKkJzKjpAnbIKTAr5+75VxbLklXD4U69Lji2AYtywF7\nE8861k/FV5nUYIxWM9rA0yM6OYHSMsEDaWa8MmSJK6a5Ag0EWIaS1gEQAK9E6slK\nFUYVeOWV2qv4OlMyw3scGKuczu/p6xql3UcYk0FA2ErXq8YLo3APt+k4nlufQDMT\nVE80pn8Jc4SgKd7vQzhe7OyRSWpHviTC9FzGRXVYAc34AFQg5eZ8hVBmJD1szwWV\nQUWhbvkxcN3xR5o6cxrE4x9gxCfTMKT7TDajpQcq3JMkRDov1d8V49rFOrGlaVaA\nMvnQl4s9ypBsXlq/znXGmk+pGutIxq3QThPkjiFbab3oDgpMJe3RPKtzOJhInV6W\nGJdmmAn5mXASmTeUPfYkONqvj2ClzHY2ejiqPaIx3HrYPb87GlyQuhE1qPbmx2AL\nslkHOYYbBu5JsTWrlBPCMwids1xyxSYU0QJY8Ey+kkr9EL78e3Pyrfve3/jlbh3v\nNc2BDGUAoX301WFnUQEPkJLLdDqo+p2tt0mHcOVUf8qcWX6EvDGyeNXRWFc8mCyD\nrZPMgYOVL83o3kLraWP1wJbpuJ6ThBQuA3X82LSF50rpoF3MO2lLgJHWzWtxr6uC\nqKauA62Xqolbf4xLG2IuwMssMBixl2Fae4GFQHtcjIEG02KvmsWJss2OR3FQXhSD\nz1T32by804WJNo4GPLetO8X1e0SpjeqD8pJR/vlbCnjKzUu4DtGgqQ0RP9ZewaJT\njt5LR0PoM5CZIqusAg9+qx5b2mEkP6Ftus9ZABEBAAGJAjUEGAEIACkFAliGktYJ\nECPv7+k8TP/+AhsMBQkeEzgABAsHCQMFFQgKAgMEFgABAgAACwkP/RpocTf+3Fp4\nxTVt8OzSdYgGZKuqFW8cS/LMjNYrfQPo1+a/ts/zWEgt9rY9/GMiA4Ie10DjG0Cp\nXcbb/7tR5YsqW/S26JmbHynyZCQDoyw6e4NHixZNDxV3RquRPLOUE7C/P9IvxhcN\nLFZ5ICBJJtD5GLtevDAT4GNxZJ4ppuqaBDgensttDQi9Dl/6EFZ8u+6AKAcj/s9E\n+FBulqWUh1AsTtChq+XxoMbwCp43q0Et+OfX1FGSi21ue1tSVIb5ahiTaFiLJ1kZ\nGUrCQ19yy5po0XSn2kfQdHpGuySeurFP6XwNoubgHAgwVeOdK4IQ9+IneRXhvNFE\n0PuI5+iR2MmKiPgKGsVHrjrWQOXvOp2QYipTjmpD5qSWjRZMW9+KJOuwxcukiGsI\n2fygZJPR4zy7cYJ+YwVvGE7z3s1MNifPXA4xxe4xWonjz1oMoq8RXzMuWONSMmJl\nUOdurRATVpvNV2YG0lEDfvfZu4HCvOUcvnPgFxpnB7VtCw8cDPIL0Skmfs+0lx0O\nR8GTU+wZbH1yY++q9fVdubxShWJ7TH7CB7lIzvvkl4N1HjWUed1bDrtHLn0aBBqm\nQ6hquBOorI1gxgDFkGoq928iFLyN0C3mV1qAmlWq5EKlKr3U4DEwbRMUYIFcqO2r\nOweTnxa0BqWTj1O87/SvSKdOd9ZI5GIp\n=K6ke\n-----END PGP PUBLIC KEY BLOCK-----\n"
      },
      {
        fingerprint: "114F43EE0176B71C7BC219DD50A3051F888C628D",
        armoredKey: "-----BEGIN PGP PUBLIC KEY BLOCK-----\n\nmQINBFSvCTEBEADIa8J6pku+vT9RZ/cU4wKmC441OVghEZ8Cuct4AynkZQZ8Hpra\n4mq9SEjB9t2KSM7kvN/yBrrJBJwAnR7Q+e3+gfthL8Hmgr7K2J+qJdSm7Va/LcSK\nzZjN8UX0EFC+gh+gda9qm0nwRTgxR9k9nWu3l6zcvEsLE79m9Uir3W8BtGak9HCU\n69aSaaWupoqTXgPvYuh0LaF5C+qEccUls/Bmuw8FPP+T8OmOc5SU8pD9uz2r2S+p\nrBqh6rutBBqzPRl19nR9MCv/2jYmPqyCtvBbalxy8fvxC4wuBSarkgUD2dj/aIqa\njUMMBDFELXxFwTKd73RQtxnHha9VsbIFpy5wpt0NBq9/Yi2ZI44Q4PqccOs+ByKJ\n8iZsvg46WDwmZ58pU8Bxkl/Qaz9numDfGYYV1Vhk45ACob67zYGDgVE1X2BBe5iY\nJIA8hergbPZf3j5DA/5cCEONqTCLc70XYWE31x2+6DcywZ2xxJfMw8eEOihCBMwe\nrNiMYH0uENEo/b6q71g23rNC/mNhZCYF8k8crbCmbuKDNjaQA6zxQW9E4hzqkkte\nTfNRi06il3fAKbkfDjIX0kH+/XGaCd0rYK3mvx32tVzuZmk86EEFot/+OOAh4zkq\nQ/DirFRXnGCbJVPtyGWO65CutAlFSoOaVN7G3tJhQCQGg5jb41l27d904QARAQAB\ntCFKdWxpZW4gR2lsbGkgPGpnaWxsaUBmYXN0bWFpbC5mbT6JAj0EEwEKACcFAlSv\nCTECGwMFCQeGH4AFCwkIBwMFFQoJCAsFFgIDAQACHgECF4AACgkQUKMFH4iMYo02\nxQ//bdrpGrxbSlZnC+cMS0dRzZ6zbW/r1QPV/Bag4GeWl61BhMSdGg99Feb2kkqH\n47P7wv23PyzGT1aaUnMwlQeR/tVz3gVCHfe1rAQ6pNtZYEA5b/IF4RhIYoZr+9ke\nwlNIJk/zSCVd6110nzMrb9Z82cJiIb9MPiYzw3BW3Gzw7EsdGPbFwiCsRZf4BApa\nHMY+T2j8AlENDNSOtsvlLwKRiSQqd00XvEciZ/xtB1VYgNVGHN+21sVZdadj8+Oi\nH2iHnbdcElVadsCpKdcmETqteRyrXXA0FW5WPEM5N1qNWT3Aml4C22cU+S8Kdx79\n5uPKUQjgOWl6/x6z2HxSPWMOGVS5+X/r047vOGa3kap9RbOTiyxQNixcsxomHUQL\nJcYU+K+dzSeuXY6uc33gSY1a9QkKdzWI8+ECbS7CaKg/540AOtRswbXWxpRpGz2l\nB5sfN4g53aCn1XvcMDWtjrkXNBn4tRyoH/YUohWU4IPBtyetKSr5UgngHNVBkDNF\nWKn7vpcfeM6Tc40cdyQEvc+bmVdcsUmBY7wzkzJTyIf9YBSJXD4MhN0PzJHdmNvA\n9R3dyv4beYDKWqxxgH6/f6xVgI7nPM8UhDbM0FcztwbUcrM+jX1uv/6XR4/AYE2e\nUVRfplMrlJKoZlX/5wP1H0BX7xHdL6P1S4AZg2K9INKeuce5Ag0EVK8JMQEQAKdI\nri92rNrpBoU2vhVsbNNGaJV1A+jDvyoOJ+ahbG2EJKMjkOHZTfW5ZrO3GWpmXQJ+\neTCy3nbBkKTNI/HxKc7xU1WpnK/YRyRtDOJrUN2MiMvo5HYmv+g5fDoG/8oS4KXZ\n6nn09UCZPwo+B00nKWLFIcFblMvZh/a7h3r3kVu4yCEKSu4gO7Vhdz0wHJhy3PSh\ntRDh9BTjHaW7R10o8agwHMXKeoWyOZUZb9QqifbnK98gVHmw6qT6FlY3czFWtSUk\nbk4O3Ew2tiupguTrenC8+Mp+qyd9r7WHJZrKfNYQYLD32eojXvd3VCrSmfYbVUlh\nmvSFTE/95d0EMAuxAodKVtpayqyQKDXKfb2X2gtoCWKaYtxYlh/XVqiuh+BYAZzA\ntiRLmLe0joPhm9ew7z5PvMJ8Xl4HU+BX1TexNfviFvE4Q7xqaEnJLG82ms/pPzAr\nx5qIcUPkEtR3vu6kyvk3AZXc7D7ZQtPhaN49CNES3g50rvF7bY2Rw1xBfxMUpUyA\nq2btT31NWIj5Hrx8wr/ivPxMzxpNQu4ujuo74f4ilaXlsksNxN5JPPDCmVc8pRMV\nlIhjd7T5E/4dwiKCt14G3Lgeoynln9czO80jasYTxs2Ietl5EhZ110DqUhG9GIId\nf5d3Qb56l3Nv9Shrtlhu0q02aQayaP2HkFHchXxbABEBAAGJAiUEGAEKAA8FAlSv\nCTECGwwFCQeGH4AACgkQUKMFH4iMYo1xPA//TKoprQhJ365yHH/h2ZqSXP0V4UkF\n5WGxzf0k+BBKzgKnhH4yCBwyRU1txbZ+V4mTf5odoKb7h90NJNzWgLDqkURXAK/M\nCRc6KdaGiOrIXNWQKayCDwhQ3LXU7FstzTzPFKiwlYsRuCw+36CSEkRzB+onLoBA\nVOzh1QAlLLO+hdUDs/OswS3GNRg+HGltazgy/LZ3nJ2lsqXOmHGgXe+P8eZKTvJV\nrg48rmws5NbhK4JHA7oVvJb8mCaOvsOh3Sj5BTgdJQCTClYqjyhcX3D54OQumXYL\n3pAWHZ2+po75Ybg8KzcDosgYl2+2byxVDTWv4muP67t1Latqg0LmJrlsjxdIG8s4\n1WMdXvei9kXU1qr15yIsGVQ81tOxmb/m15S3JyubyQXVP6zfqUrhS8LGk4wpEUyw\noUyfo0DMkpIwSPlV0KkSo5pApY//cUNr9MEYJDUTZGgclY4JxtF18LtnKUmb74Mt\nLD0YJhGRrdrZluYcl9yBfvPDEtb4PmD00dlpyUk6ehf38L3XOmWyCxqa6jjL9dax\nTNYE7DPKQo5n2WKKuCqjMfyeRnwCqgO4BwsocxPhZl3NzW/mH0orA2mxwg/6MJUF\nk7rTC4J6kM9hoUCMOJ0XqBfQZVeQd2x3bkZpx1ubH6L5ilZHKSvHcqOy6HE4wyDz\nUSXWhEefc3s6beE=\n=v6Nn\n-----END PGP PUBLIC KEY BLOCK-----\n"
      },
      {
        fingerprint: "7937DFD2AB06298B2293C3187D33FF9D0246406D",
        armoredKey: "-----BEGIN PGP PUBLIC KEY BLOCK-----\n\nmQGiBEPOjg4RBAC2iPU+EHukOrmApMnhYym03gV/VbdPDydVVj+fc7TyjULlKWP7\niEMFZb58EBjjK4Db3O5JiC9yZ7NRgYvqCFGP7hTVBTykJucXIyT8wCmaAImrtAlg\nhA7LKTKlMdkPMz+iTiaVivt5F2W24Lfy/f664J5POcUH3Y5e1dhImNY6fwCg9TN8\nT2QKrFuudsbvqdw+w9I9ZD8EALBfpb39xdZenQllhq6MnODIzeHf5+wQV0slAzaO\nRZCAVWodGtNx3NYomvmOuhY3iwFrTiGW7r+3CDqt/4us1vhn/y/A8JijReltOeF0\nnbTM9HzD+3MrlTZMSfR9lzpu941IDkvw67NeFdSHPxLEEcAxI+eoS5dYsdjM3isb\nOvv1A/9jJFYcPg+CRDPYVsY7ok+JW6olXfDzK0pg9zKS2gNbYq2AhyvKKjM/L1Ca\nRkmpliBQZEq3QarXrirdwtR9283JKQ7K5UgigkCDqxE2C7jF4XZ6BA41Wh63GPFF\nhV1J7R+LI/FZiG0gE0y+bckeSB68+wdh8jnb2JCkNkegbBU70LQvVGltb3RoeSBK\nIEZvbnRhaW5lIChPRlRDKSA8dGpmb250YWluZUBvZnRjLm5ldD6IaAQTEQIAKAIb\nAwYLCQgHAwIGFQgCCQoLBBYCAwECHgECF4AFAlMeUUgFCREw9rcACgkQfTP/nQJG\nQG1lcgCfdK0g8n4Rwe7ng5CiGsK2aeFu3tMAn2GJN5GDVyVpxIvDMAITPIcbpJFi\niGgEExECACgCGwMGCwkIBwMCBhUIAgkKCwQWAgMBAh4BAheABQJVFZjCBQkTKD4x\nAAoJEH0z/50CRkBt9DUAn3JLT9PifudI9mbufjOvNhTRjNzBAKDnPR1ceqWO3F78\nO02juhMZp82YfYhoBBMRAgAoBQJRPNokAhsDBQkPT38mBgsJCAcDAgYVCAIJCgsE\nFgIDAQIeAQIXgAAKCRB9M/+dAkZAbSbgAJ4q2SMC4N9bzJwiU1fdz8evS2z5xgCg\nhyS/CRrGGzlBbaQfLsY2h6CVftO0MlRpbW90aHkgSiBGb250YWluZSAoV29yaykg\nPHRqLmZvbnRhaW5lQGpveWVudC5jb20+iGgEExECACgCGwMGCwkIBwMCBhUIAgkK\nCwQWAgMBAh4BAheABQJTHlFIBQkRMPa3AAoJEH0z/50CRkBtgOgAoKCVOmY7DUec\nppH25/ZNtzhUZUBQAKCv6nNAXhafNJ1KEi9nPLsweUv6CohoBBMRAgAoAhsDBgsJ\nCAcDAgYVCAIJCgsEFgIDAQIeAQIXgAUCVRWYwgUJEyg+MQAKCRB9M/+dAkZAbSXB\nAJ9T4QxHcQiglAj6unDkpNCfQd8gAwCfd3zAVN6xtlDI119a/Gvb5H2JskeIaAQT\nEQIAKAUCUTzaRgIbAwUJD09/JgYLCQgHAwIGFQgCCQoLBBYCAwECHgECF4AACgkQ\nfTP/nQJGQG0vcQCfXBAfor5DHZEd0vrUAtHoZXIiRNEAoKs9sryP9dD65Uf8P0eL\nW7NpB/Y5tDRUaW1vdGh5IEogRm9udGFpbmUgKFBlcnNvbmFsKSA8dGpmb250YWlu\nZUBnbWFpbC5jb20+iGsEExECACsCGwMFCQ9PfyYGCwkIBwMCBhUIAgkKCwQWAgMB\nAh4BAheABQJRPNqyAhkBAAoJEH0z/50CRkBtqIwAn2HZ88QHvZFReoqNo/saO4ax\nzqxyAJ94cWr+bwMO8wbx2JHTtGxRKx+s+ohrBBMRAgArAhsDBgsJCAcDAgYVCAIJ\nCgsEFgIDAQIeAQIXgAIZAQUCUx5RRQUJETD2twAKCRB9M/+dAkZAbe1gAKC/YnU4\nK3YvGN3zDZZqA45F6dGUywCcCzQs5rgW4ivr4kVTWb0JJXh6BNCIawQTEQIAKwIb\nAwYLCQgHAwIGFQgCCQoLBBYCAwECHgECF4ACGQEFAlUVmL8FCRMoPjEACgkQfTP/\nnQJGQG1yCgCgrxLj45QV/4cZ8rarKJjetNdBj8gAoMxW6LSPod4qwTE2jw2Qf4wP\nlXC7tEBUaW1vdGh5IEogRm9udGFpbmUgKFBlcnNvbmFsIEtleSkgPHRqZm9udGFp\nbmVAYXR4Y29uc3VsdGluZy5jb20+iGQEExECACQCGwMGCwkIBwMCAxUCAwMWAgEC\nHgECF4AFAk1yezwFCQ1mVBUACgkQfTP/nQJGQG2ITACg3Zd9owEpcatNeuPrWpmL\nM3yORKIAn2kmpLHReRpKQ+buF/I2SUq5uLXbiGQEExECACQCGwMGCwkIBwMCAxUC\nAwMWAgECHgECF4AFAlE82bQFCQ9PfyYACgkQfTP/nQJGQG0qEQCfbXfhJFcYc/7k\nlu56ErfoVejcFdEAoOdUqZR1xrvo2KlJ5VjLLfYQSrjAiGQEExECACQCGwMGCwkI\nBwMCAxUCAwMWAgECHgECF4AFAlMeUUgFCREw9rcACgkQfTP/nQJGQG21QQCdEysx\nve0BrhHvguEY000u2qib94YAnjAEizeGyU24omSDGaRu4R3ZXf21iGQEExECACQC\nGwMGCwkIBwMCAxUCAwMWAgECHgECF4AFAlUVmMIFCRMoPjEACgkQfTP/nQJGQG27\n0ACfTnIRPUS4LBzdfibQITWkhntX71IAn2ie7nGByDTPHvGrweLrymQtvUj/iGQE\nExECACQFAkPOjg4CGwMFCQlmAYAGCwkIBwMCAxUCAwMWAgECHgECF4AACgkQfTP/\nnQJGQG0ljQCcD9WLRu209WbSIgKQtqiC1moxqXsAoIbKSLaI7jL+a3jH3bWuoomq\nnNLpuQINBEPOjhMQCADE7uQ2/Z/yXL6asrYXkTLUIJ1toTkdYe8qVK/rW7XrjZye\nXjx88PUGLL+480iTqQhDuUMvTONKW+09RwXuXk88OT6IpDxTfrUoYUQnLrE6O9ZV\nYTJOdVXUbNv7j/Yl7RTGCoeNp/A+NmdWa1fW2UU3ME2OyQU5Zn/7U5YkNwgVFlpu\nh59xWWTnZtwxBuhBufBc+dSm5kItZ31XbA6yGH917klpm7EWrRgzyQmT9y/K5PtE\nQDs2oLg3+O7yezz8mG1JpIR13CoLjgdQqtVSEs0bZG4vKvwquG1DyVCcjLunwZmr\nERUv1fG0n1sXnHIA9d67a5tFasQHBKdcC4xVj+tLAAMFB/904UJbUVM/bsP0pJFZ\nJ0p1rhXlcxyTs+xngq5oed5y1AogmGIwSAyn/LWm78GgSsy4vJuQWxpE1oNb3TF7\nv3GSi6XKKarX0Ne842YC27Sz6GgG3T7O8HHXGxduNPnNoiREaLGEsJacuA/zyGmn\nQlKBxQK3aXulkZmXr7nzVUTUAdy/z1vljJ+/hnxNsroQPV3/97hscU4qlr+Ga3Na\n2SK6/0528bc1c2EytS9+hUcPXiIRxBAFapSoWWJI1tBMRggQheWWsxFFVFk0WlYa\nW9doKJ3aVpt/xObNlurt/b3J8UJ0CgumwAgBDDqQiHIuvwvIh+llMcOCjSmOL1kX\n6/rwiE8EGBECAA8FAkPOjhMCGwwFCQlmAYAACgkQfTP/nQJGQG0jIgCggpvZkUdq\nIuKp+2ArWFlzlhT9eWoAoLnbH9U3VeVJMqipWJhNYHcwekXfuQINBE1ygEoBEADM\n2zl4oVCqfpwxw5luyfkac4E4A4vgGZgA88n7LMLAG8kkHr+JCdCi/z+K7WB1F6Gq\nWzoJPS9l/IF/GHRndrsRRQ13nXbHrem0ZjRSiCrRU7o+WZ/3y+IFIrjn74hTxJIW\nOJM+Y/QkfLv8vNgbcTGOAB3qMv1dq9cNReX98JQ2DW+U/FZPyvGSP6hc0JzcahQ6\neLsq/Y1BZWj0ET1ZSClYRdooaiFdKuEKGSH70WTpxrDjuymDOaNLfmgfmJpS26U8\ncEE6ThQ91phzQpD/MiWVaRFGSq71TxIMAdNoQZgugirutVGGQ8zD6FHnd9sL52H9\nMmzFltjMf12aosW51HFW28B1c1Mxy4P4DlWlfUeYG1OYKAiU231tyFP1uMnk+hCG\nsL7ntgAF/SM0WWqXjUWNpzt1EcDCsFHN7ZUI2uVUcbwoqZ/XlP2TgPzsZBKG4jXg\nFOXEKLGvYHaTc5xoGYP1lr8uB9oihkv6c6q10hjvTEPxAi40IIzdTQsXdVOlaPjd\nb2yI3UUqruEYv6OTIxdYZXJg64z99v6n0eFtuRPFEHcyiuyIxVik3fB+mKiCBW7x\nR3KRRo2nwiPq9W1PT5lClIdd5W2GnVm0aARlbQrFcNLBTNBi+osBopNvFpat5rKX\nDzniioD2CfESmW/t49LFqkPBk6Lg07SHAIkQyoHhYQARAQABiEkEGBECAAkFAk1y\ngEoCGwwACgkQfTP/nQJGQG2l6ACfbyXz7xaWlSaubTDOo/N6yKFkKSQAoILPCUOi\nUhw2iju+XrCVJ/AXUtwH\n=AG5V\n-----END PGP PUBLIC KEY BLOCK-----\n"
      },
      {
        fingerprint: "74F12602B6F1C4E913FAA37AD3A89613643B6201",
        armoredKey: "-----BEGIN PGP PUBLIC KEY BLOCK-----\n\nmQINBF/qTWsBEADlnzvN5W//gwj5oOpnyPQLjjguiXi0NPe9o0LcQgOmccD8a76R\nr4VQDDM9iFieOcmdcJzTeEcTli165+pBTilqR/RBjq63N4jFzzsiCDJaf8utUhlW\nV7ISG3tpzEJWcgdqK+YlNgVv5C0K1BwvXfh5H5P8pRzvLTpmnhvBIoV4srnVP158\nPifAkbeEBIZU5xyjmFSgevX1QSvjpIdAGvo7RKNzNbbG8SK5KNOkrPzGq3lOtpwA\nduj21q55MZrDEIxYxBwCtcx24qkEyBe01ox/K61yqs8HVFn0vJZ44ghLwUzR+dPf\nfQD8VKrNrmIu8Bh+NZeLUiRSb7eZAwNjeDA4+AgSF1ntp89iKPSmeycslwjSXj2M\n1GzXjOCucEn+kYC5FBIEmfLn9vAiLL98V8IlV0OkljIN0VF8eCaGmiFcX0+4mdaK\nl7XS5v8dGVHZ9ons4i5aP1oyWtMhW4rqe59kHzzrHIXJEmu8wOCCq0CtirSh6r4V\nTBsIxWJwkVLFY94LLuC0XF57HPVg1smU/sXDhXUWNUhiPKtsYXfc/jwZvXwJjmXY\nHO+6/jXWDsdDlMneG9ip+bFCfYA8Zi1GvVUtfJ1rU3GGIIowicbYT9y1pURFC7Hi\nvAPPpNJN+ZKuOlfe3Rhjwr7uVjjNWjMzdzxhessE2BjMgBMsCzVOv2nPvwARAQAB\ntChEYW5pZWxsZSBBZGFtcyA8YWRhbXpkYW5pZWxsZUBnbWFpbC5jb20+iQJXBBMB\nCABBAhsDBQkHhhy9BQsJCAcCBhUKCQgLAgQWAgMBAh4BAheAFiEEdPEmArbxxOkT\n+qN606iWE2Q7YgEFAl/rK/ACGQEACgkQ06iWE2Q7YgG3HxAAmTVUQ78hN0ynUFjY\nvQxdtKLhj7adYQFC63CsV5mueScnw+qo92yvrm1SxM+/YJ8dfBHnT2UFclXbN0je\nCrZwpj6GBoNF6WdwguunUsAtIAqhsTzyovGRioOcKjn+laat9q/gKgs78hCWYl3+\n76dE6CprjRPXl1uXF8wWmSkRFQlgHPsvFXKATm9vWRSVYqlCHXk5IuOAhJJbkacq\n4aUx889zlXyZrM8ALhML+j3gWSwFt2XiADxAHQ0Y9GsM3KNLfpsAhameV++/H9DZ\nmS9xz4IAZn1kq1dCF1I2NKLkuZkdHh3WCcWMhm5yM5kLad3X4cq5KTg9PNgbB8Uy\n2VnUv91xIbnsr0EIo0pit5ii6EtCsbU1CTI0arXbo5BV1TTf0O255Hwxe5C+pLiY\nNrR9XJZ70cF4Em6BbVfs2GpSxiACIf3JCSd7gZYtArfR660esZGdxZeC8a00Tx/o\nIZpyyTvz5qUWOykWt5kk0Nz7hhnz2SU3z85+6FHW9bAl3cQnuBoIbBvxO7kTNYYT\ny4KKhhvwFXIB+EL9VGedQAf2r3SEAKqmmdHemRMf8c2clrQIJqTUjuZdpI4BZUqL\nIba3v7AIdENhFCGjsb2moKv+q4XD/YH582Rym66HVfFtw1/tvVwXxM8AcEIONktW\nKF5i7i+kdwodOpepex2rHiDXZsSJAlQEEwEIAD4WIQR08SYCtvHE6RP6o3rTqJYT\nZDtiAQUCX+pgZwIbAwUJB4YcvQULCQgHAgYVCgkICwIEFgIDAQIeAQIXgAAKCRDT\nqJYTZDtiAXozEACA+AIiaN55SlktI3+vDKWV2EZmgycWJ3z9bZNJj+P7qM31sB0L\n+ciT5ZrF7ktX9wn+oVWimU8DhpQO/bdYUbzePpJ6ng/YrRF33RKcH9dMk99Pre1u\nvkTs88Wi5FYyYjFIcbxWY+MkxlzhpqVjU71Woj7Y1SacTaHNZoHl089Rnq8l/8WH\nDoGHLNVavcU8uKGv8465YS+1pX2lxSg6ste0UN94kxepLCnD9MmgO60at2m3qBLX\nJbysf/LYeaEQpn3z5EKhN+f17tqW4Zyo9N6LaI9eY2EnwMh9uM2woSKSDuLyI5jx\n6wAgoHKJwn6ps7xbU81CYdXs9hZRPxegyCd2VCQD0btQ5k9WJfKRuPJt2d8c3vqg\nn5hJIWpQF3V6OErlz3CO2abWihJrYrBFtdXTqgA2XwNdny/C70P+axk7bt3ne9K7\n4BJlLIIWllGTXehyJa1n0AVw08m/+iHYo7334iJZZ0KGScxFyUgnPpxwKIkRdVA/\nCXqN4J/nmb6OKxsM+u4ypiV5VDb7sWb/iPTrBikGG8ZDN4DtOvRzHWvz5n5zwsiG\n2tnCF6HLnkOUVGFCD5xByiGwqogcPr+SqsJ3BsRV3WxGt6DNZBOX6kGuNBcpTz7l\nTrPdWLX3JPReTLgarSxBHzgULMJwkfecnzxXddWF+S0qkwQVQdIeR1VfRLQqRGFu\naWVsbGUgQWRhbXMgPGRhbmllbGxlLmFkYW1zQGhlcm9rdS5jb20+iQJUBBMBCAA+\nFiEEdPEmArbxxOkT+qN606iWE2Q7YgEFAl/qUJoCGwMFCQeGHL0FCwkIBwIGFQoJ\nCAsCBBYCAwECHgECF4AACgkQ06iWE2Q7YgGWoA/+L5mVMtm3tvFKxs3OwN0ORhSH\nrU5YQ9sSVTrh9/uOrjkITywB6tHI/QPmHcil5T+nrld5dJWg63ybb5zZPLU+L6tH\nh+g6nylyGeo/YCcp24WcQj9bTpMn6q+nkmkIZ2hic4nUXs9mal6/Tb/FrDqr/JEG\neDpCimAhTyXmZeehGuQ0lZwayVp/XutIAzZkDALY1IpUYLmsoptMTqazy52/Fgk6\nzT+fqqln+d+2YsNrGUxsH08kq6nlovf3J+B4CUJqgdWUqT7/E3bX9Yl0waR9TzO4\n6rdHOIyxtRDbj7UkNAHt6ANWmJZy4QzFY1fMarDlSyAYnG4OSInGQlKP7rs97+U4\nywd2HWRsACWFuQgPyyK17IIO5AFN0EYLD6J+MPfz7SRrQWLD/TD7HIU2SX53jmjz\nVTfSEsruSEs3T4RiKah5tDydNnriWhTfoRsx88s9aFaCgcZjJueb7Yvi8LGMSSxJ\nSzqjVvCkFOdXrwbvMT2fpUY9zjX9i/+y/JerZaxJs4Jc/bWFS+6irMDPYaU+jrtO\nkbd683Tv9edxj0TZE840Wlciu1jfGNeNn+QHyozQdO+7ASABuWnlzDQJfG58pThv\nCBvgAbhr3pWhwQM2xMLD7JvCrrBAapSULW99TndeONp5G3RWyjXa6jXmoLEWqwN5\n6CS8+k071ntkKxFcjua0LkRhbmllbGxlIEFkYW1zIDxkYW5pZWxsZS5hZGFtc0Bz\nYWxlc2ZvcmNlLmNvbT6JAlQEEwEIAD4CGwMFCwkIBwIGFQoJCAsCBBYCAwECHgEC\nF4AFCQeGHL0WIQR08SYCtvHE6RP6o3rTqJYTZDtiAQUCX+sr7wAKCRDTqJYTZDti\nAd2IEACCMdIFYKq77tY09OD6BBIPJYzgSCLm4teswU1Dj/Farv56xlIcm1vs8mq+\npvU+1lkvpTwGYSi3x0j0ZJNxtOMYpoiiNLFKQZZoXLpwAFwO0aIfTPS3ZO4qTUNX\nMOAk2UweQfZah5Qo1ljw3n2uz2lj8QOz7V2rdHMicvIXw39ep63ZHzq6KIlsKvQm\nzm0qPQ6/2vA0HXBN67Ab5228U4RkFdKC3rTHxw0EMIq4mwYpW1lys+zitN2qcefm\nEolT1mJk+WNjelgB95/HrFzoIUkt7V6+7vSgJlQ8vMLJMV+GZieMaTv5XVrW+VoC\nhYYy/i3ccRjacn5C9v6yvKP92cP/ER90JUnwmiKWw5dVvT/oiyX1mXsNPC9iBQM0\n7ErsVwfWGWVWHYpDmeF9HKpFPh+l1M+u/DTS7vIBMeF/DlEZZx37coKKkk+/17YA\nccUSeDGi/yRBV63aWWEZsOQG0lQD6Jqw1xliAcCqjyUL6t1GK9gt0aNa7iQv38eJ\nRM8lKI6EVfgaPXeVpEUDUTdvtSVXS4F6Ch1R83b2aIlH6V4+3M/5IN2jRTehEeqE\nb/GX2lFKrq2tz1PHFDBKyxGX5h89LDnoHTA36JbyHrPtc5PmvjFTSpeRyCix5WnH\nQVUAtk1VABC5DRbATPtAkTpHGVp+UahyhHGOjzmO92l+SsoqNIkCVwQTAQgAQQIb\nAwULCQgHAgYVCgkICwIEFgIDAQIeAQIXgAUJB4YcvRYhBHTxJgK28cTpE/qjetOo\nlhNkO2IBBQJf6lCbAhkBAAoJENOolhNkO2IBE1wQAKLyZ5D4GB2xojA1Uvuhw0Gr\nm/T9Ti2BrH4h8Vm9iAObTuz38osUZb//d5x313iBy0Wu169TD3eA+RUxybsnP3Cn\nzOX1osh4w8zAn3HMFUD0OrS8cBbTD341MxcS1lHa+RIYa+D0e4VQQehb5zMRNxxt\n8zkqGJL7MeCJrWL8YL8AGA6LXpZUfW+liZVvNBirzHSVYkDWjPf594zn88DQEPSN\nVMw8D2QjwwVrzXvydgpSy+yR2+2lEkh8bhZnZMjPNAwUaSb3BsBh1PPoTb1J31GH\nKT1z8yECP1/EvOKkk4UnWYKYD2W6GRUuSzItn+BHa0GzlCSLcaDMZCyDsxRVOCUU\n307k7NSS/NwX8MUY664YS9JkcWhCslnNkL7mFI7kDq4kEzgapGitWNbnMsuS2tQ0\nM87BooiuW5GMoh3ZZUcuXJuyLcIjKmrayLwToHgQW8XdKe5qXNw3mH5/1qXKGiYY\nDVH1U6GTc9bs0xLf1MyykoMm7uqY7knVwMawC4/ipuHCz0jf+GA5+shs+8RxP55m\nTXXO2QnqM82Ac4LcI8ucgVfq1vjF5XUWTwTpjOVzU/D10z+T2kj93YPOFWON1TeX\nSMzrYathhyKWtyJJg7qBQaTLc80Sp8htYaAmFtHIHpKQcrQr1FPTJGLAADoPUlA4\naf+jP8Nmn4SlWHcF6YoHiQJUBBMBCAA+AhsDBQsJCAcCBhUKCQgLAgQWAgMBAh4B\nAheAFiEEdPEmArbxxOkT+qN606iWE2Q7YgEFAl/qTa4FCQeGHL0ACgkQ06iWE2Q7\nYgGNCQ//T0uJJvmuWSSQ6JdMzwqjSpvI4EXfRFn55rtW7R3m6UP7ihdQCXTzsChL\nKN3VSXmLd9N0BKdTaNjh/FD7SoJIMaVPXnD6wjjH1+o9RzkrXiXwNJEvlQ9v4kId\nnqsODA8hFTSN9umyf/WA2VqJ62erQSAkhXqgD19tQ4PdB58aG4hlg2xhXP/LhzLm\nO/2KRy1pbeZfEUFBObpymP5cD2QrQYk9T0xIGv+QZUolqiOoks21Oh9a1ArN6CMk\nnFdq6mbJF3Ev802TLSpJ6oy+F0AhrW8eEjKh0G3LO+jcz0CWFjuOKuRJt+v4gbr+\njXc465sbjSDH1K5ys2lyO8HYpFgiVmzLXba/ibmBszDQGZFY7oAynxTczAtyJteV\n/8luCLvQ8Ki3cc68NcmYYRrDGp3iLhmVnf/jwxffvei2zVJZGv03gY4vGkZJyfFO\nSmqH/y/UrvdKn0d2Pd/Ym1KpW65UDHYqz3bsg8D2NltZFT7QWHP+QVxXMp6JGfrO\nqVPwnLHEHNaRQaveokjAxQADCNBULjDBXKQtFNzKRPKY9dia9OXriTj3EE+PZ+MY\nTvJvzXOmjQpI7ZVRTYFAdjHpjqU4C0AGeGVxB3xdMXglaQZKiNV2JvidbjTczd52\n4iZMFtrnoM8JOgpD6fSbQJnsEb1hzbP2QJo+dPSnx0GBjTFNu5eJAlQEEwEIAD4W\nIQR08SYCtvHE6RP6o3rTqJYTZDtiAQUCX+pNawIbAwUJB4YcvQULCQgHAgYVCgkI\nCwIEFgIDAQIeAQIXgAAKCRDTqJYTZDtiAUujD/9DuQT9ZRV93ev+63Tn/fX0031C\nNXhov18cQByhdyP4xzhFY/B/2AHyfvNbbP7GPkWqFmyEwhtdTcfuXOeDl6puV+3W\nP6w4NRmhEkdtwfOlmHo0vQGvGdOa80PCJPXOuDD0PybL/sJSBlRETquiqxgKwYQp\n78DWaEiE01wxcDnAcfmJBiKW7urGFrIfmvgLaeI6p8bqHOrIF8T0MhnoVSceUXV7\n4EBjWBajxJNhYMnn8VsqkbmVEcA/4Mgthes61yxflwlqbrTTg5+AmOM+fqF8rJdF\nnLrCoza5bIOlY22rRs+tMqvwiv4SrafncwdAqSxlGDDvxXVUpyC30kULOiHatjni\nxcf5SfQwp2f2tKAEKpsiTRc6UTwf2A1lQboosWi14NeP/TbmCs827xsuCxUpkSLe\nOOlG8dWkwVaJKGmMNAbvuiDIdsWO6c15unYuUqQrZ8OVQMKZkhrKJZJdXUxXtiz3\nKWLaYlQ4EmK8PfRAuMTE7Ugac9U9utKp8hTrs5E+on+E3XFqKBl9teWtbw+8zn72\neAsCwCu/yLLo7tXG1oUlkoreAeSmUexoWNmrC6xwVmPGonxj7m2HYgjkrS0dxGBc\n9v9m3A/Py67HZaaLowsEQYDGX47hLhZcwntUyC0YTLNSA7bDwdeX6QEQ/yzbyVgM\nAmu+vfkFZL1GU8DhE7kCDQRf6k1rARAAucHY4jWkVnzie+2CdEvMJJ69UVtbOSDe\nnNgH1UFqQJwueLJTAxr0dMr4BxbE7L/8BHaHD52JNufOAKmGnrXY1MK1JKl7cPN6\ndBJPA52zykc50KBuIEM1Vy2eAlYvX14Ffyf/Mt0KkAAmqGW1Ti8pWlUez59HzdWj\nV7ELB77eGgB+J7VEMZIhJGxptlqqU4RNV09euuwa3zvL1IUxe0K+L4SK4vbJrCCz\nPjwXHXrOXYtcKj8+VjfyjAg5oXCbI+TNNwwtmNoH3N5dBEjnvyAYOWUDYcG+OFoN\ng2uMYrSOOc3VOMx8p0pMEYY4lJCEBBIBFL+wCqEeXyeq6cJ6N7wGqKdpueNDnA8g\nYKOaA0Ax1G6KS3Zd4ZJV2zIKtPEHK0cvR3jlaQ+Y0rszqjqLjWfU463KKf+5P7GM\nuKuGghohjUAbzmbs7lCfZL9I44Ria2kBfGQm/w3GbFbL599RtyjVvkcLZGvWX1yH\nK7p4VIWKciWAdydFjIeDPC6vLKxmHC2urom94A0geJCgQ2BXPf22b+PaXPpB5WOa\nnbAt+FenKWzK+8q2e3Lp8aIbJgY2nXh9SzAeQlBnAIANF6vxmzVYEs1WhL6vxTGu\n6kPf0yTn5qOFnL+GuGm8eJqSDk7MZDY1hloqxWgWebWP7uan5U+cqsni6XPyHXP7\n/wJxXg5GSQMAEQEAAYkCPAQYAQgAJhYhBHTxJgK28cTpE/qjetOolhNkO2IBBQJf\n6k1rAhsMBQkHhhy9AAoJENOolhNkO2IB0psP/1Dmb1dbzoEeoTCQObL9ivZal+tN\nWv1OxWsAjE4ITVLkOLaHMdLSAQAoXju1iRN+bFO11qXXETVrzvNKuTfk7XalReOE\nJIFF01xSKQbECKaSx8y+CKUpWowidLV3m2utNy9sInFtYGdm0HMlNgEhKQrO9u6P\nyKusVYaT9/c8NL5Gaksgbvii7Mgwc9a1Hv/ffFdTmOOv+sw5KUkmR3Kv0SXRtXNG\nT1MKkVdUdZ6PjtcqDIH0J/xV+JVjE5DmjGkb8Rzk+WeWXehzMDXdQuonsUh2mUdG\nqi77vK6hMauD9w79rQjP3fH5AYlH0mtowCUODrGLdUnVskdWqw6lV9LXTQUwTiTF\nRCb8ehLe4t7bkdh5uxcTpwN1bLMx9dpu4M3hCAh5DW1UAcuDpCDS2vrKQsLN2/2z\nkOTH5HDnvlp75/QC5B7cLe6nj4yUSe6twFFnT50T/hDYJPnzvcqKGZDTM7jEWjtR\n+QFjCI21FYOwO+ddCtHRPr0CtC++H3OJc3AVqI4YNMvGH0MI5yP+K3+/bwRpCYKB\nptG2zf386NG8iZZtBPkHRtxWwgBfs05rGw/eIcFkDSea4G9CvTsgOczxny/mIbPw\nZZ4mxiQ4srJvZcj63UV3H4Jsr4vXJrhRSDX5Va8mAyF+rF6g4Cjgxp1fqkB0A1lK\nni5lUGYmUmXIuRub\n=EVa1\n-----END PGP PUBLIC KEY BLOCK-----\n"
      },
      {
        fingerprint: "141F07595B7B3FFE74309A937405533BE57C7D57",
        armoredKey: "-----BEGIN PGP PUBLIC KEY BLOCK-----\n\nmQINBGHo9TgBEADbSK0AjEvbVkjrvHk3HG1InM3H0kqEjXxenzTukSHQOl8ytLUD\ngP1PPzuHmgTqgONkNa3JNHv7AMO7lUukIYTSvtzOI6fl2i13ZeASDGCBfFHYjxeA\nAcwVe0lTbQUrQA6sUTBJIxL/3JcP0h8mCc5usIiafSclgnTTMbjhbyN5/GJ4AYgv\nv85oyarvX5q2qQhtP6JcevhNwTAxU00XBnPyMr5bL9CSAImOpHDAk/8CLoC4UIW5\nioBFINVzZ1DVq1e5O6JTx1XOshimCCom/VFs0LZg35kpKTRMG/kBkXx+8ZfqQPan\njpQ7PWO+H6+AYQl2azWAnmQbyAFqXI03ipQzaGbAya7pPPI36+CK54GnlZIrUJIL\n5ho91tHzHVyEpOhuWRMhflqpya6y94u0WVAjgjCALB5qdzUCku6hUJvJkxsU+ncp\n8JM/4N5uiQPw5kIgNGvMuWcOz4Gpk9zUuG4/b+3C8OpFIcyJqlDA6VCbDEdVVVK1\n0IO9fm5rJn3n0qrwCRymeyzB2zO5ckW7LqhULd/ZcMi0JR4QyN/IpaE4EcSUW6w/\nQ0nu2i9mFZSyb2ZHmQNkcqDSJ7+ykLKXdGIeND1A5NCntg2fBbCTxtVbSLOCwnRy\nM1fRQzR7+6DSvuMIFvwaQdzwDvl/zoxsSt8ZgoBWadzMuur/yVHBH+VjmQARAQAB\ntCZCcnlhbiBFbmdsaXNoIDxicnlhbkBicnlhbmVuZ2xpc2guY29tPokCTgQTAQoA\nOBYhBBQfB1lbez/+dDCak3QFUzvlfH1XBQJh6PU4AhsDBQsJCAcCBhUKCQgLAgQW\nAgMBAh4BAheAAAoJEHQFUzvlfH1Xqr8QAMlZvdmrH7LckkLz/xLJM/Itp+Jcdlvl\nLw+C9yrzb8mVw92P3YriwpgefCb0k7EOwkG8TVtqh49oAjBgUV7tXpreOR5NzE0D\n2ihtoBPFGIjAKuuu594yVYf9gYEjRZ1yX8S/p+fZqNa9mv/g5mVhRq4M/v5JiaCt\nR9rCr/xW8RJWKsO/iXeVcAiY4liHd+eXbYiAqFDCITTu/EFWx1ovlHrEnbJ3Eqm4\nOeuK9TO+w+YUpouhAkLlyM4LgM4Y2ldQ3dYHcB1+G1jCuXR0hRD0bjE1EodP3xZH\nvBHXjVkeMuxHc0b5aJ6JY73l8K4VIaD42gHex77HEVBdUw8BFW6QWh8Y2d4142rW\nSLK36/nb8OTbw3VR7FSHfNv6+c2yAWm3+ni48w8A0IsfkleYvH8QedZe2RfKls1S\ncnkb5OLWzTm9bFRumDDpM9vqqtWOkOLNv2URhactRciZ8ZSuyDKKRZ/bqMesLEfA\nKKJyUca/o0N6rbeasulXYXUI1T/PXUFyP+8r19zN4VeqjdbC5HnZKRlu/SSjE8VU\nN24MR+P0Lypg/B2cLgNvuehNCkDfEYQOso2cB9mSAsvpc7PaJOJiG/9QAiXC9Ztc\nMTYfhqCJJzZ1biOMzCOtX9bhjDcEygRApvbvUtj84pJsR7wHaCxoDzcPPf6oAvlF\ntLD3CfsuzXXWiQIzBBABCgAdFiEEVO4USbAo/MQxUhAa2gJupRO6Ng8FAmIVXnkA\nCgkQ2gJupRO6Ng+yLhAAs+jqXpdUxRb6I9aUEG/r4XzUw6IdDlekFwzGHDers1xQ\nUMF6Ftt3AaTYrdAyG4HvwN61V3/epWGyyESlOHubrtHFc+w5laAJF+onbynu+Lli\nFSNkgqHc6AaTPp+GtTepwsvjGSkpVeGSjpADtz/IoK4FkQ2v0x26nhPVmUGFUelg\nHNjfr/AkFiC3+dKlBKPJWUTKMGKx8/p9jxNJ7UuBXbRI1FeR+GFcMaMCJQ8bm8MB\nbgaeXOzqY+USQGgIVM04GiBWAPj6fVz9RByhfcYQzGt1s+17n94+6CmhkOaDKqec\njnjXa56WnFVaib909YCRXyPi+0iDr40MqSmNKzrmz3g2W3l62pjCGQOy6B41miLM\n0VipRhgJZ4gNcf1LhfOZI3PUzK+DA7ATD9+HQ4x4y8BqJkyyKAovN8M9pH7ARFR9\nBbRil7dxU/7uXmMmhrCDghGPRzZOxlnvzqdCLDCjN4qXg29p5UpfgtAI8mZ8jfGD\nHiHxasSl11WfLueeM7BscldTrF3bd35z4G/Cuy9V/OpbWxojJGfU5zYzPwTg0Cbp\n0+y/pcQlU2c9lVxFiAwsgCQjwCcBaNW5DzZ/Mslrg0Yz5lAgLYGBbg6SWNGOJ0aj\nGSp6mJHRkgyRQPRjpKrYY/sfrxtVnQXbmZ3PvaooDiPyn9iColHgp081PA5bixG5\nAg0EYej1OAEQAOMKA1m67HIgfFz1ebL4j+KRVIllqE29+ASJTmuMpWlZiO/HBIGI\nnOnSQleHULFmjRIukTqyvYYpf7a0S8gbJMgXHwlW1gfLIJ8VF2wZ6OUwHg2s0Gaa\n4iyp6gI9tZDEmZEfAb/7WX+ouHvlPLiToM3ils99gvhwX2iv8YXhakgC/0eJOb7h\nfkKixlCoc8Gb5L1LzeRrQsJ2HoDVZDyk1BZ124wtPdTK8impsQL5F/4dafo7DY6R\ng+WJ/eZv50NpK21JJihaP4lq0fcqdbaa+hkRfiai/h1OVhG5fURnP44mt0b7AE7T\nt0O0t1ghS2REMWcWgAEiPaV5Uww1SucP6+X5+9CaYcsOZ35JxSg/VeipC4RMJkd5\n00pA41N4fpRtN38OJfLUOY5Fik6CrejP48v+PACPDkU9TnGO3Ng1ttnP37E9j1Qb\n+mpJ/dpf8q3JaIuXOMwkavp2PebborhrjUH5TLMytXTrVOuMqINYat7ap62VIW5U\n6dyZnyd6SB05Lf2nUkH5R1UpOSsThcENCHiY3Is5hBfqQf3lVBmNdCfUWZl0+j2m\n5WrF+7pG+IZU7cZ69e5zH9X78HL6OgJlTjiZWjMv2wWicWniz2RrATnnYKjrgYBJ\nQGhjo5T1u9h/U5FcFAgiiKfGzdHTD8iA9lC72zG08ssGg4cgQ4v4GLdZABEBAAGJ\nAjYEGAEKACAWIQQUHwdZW3s//nQwmpN0BVM75Xx9VwUCYej1OAIbDAAKCRB0BVM7\n5Xx9V1LbD/91t98rvV7PASnIWx9Ujc7Hf6ItHI+gdZsfw23jg2LwyefZYZxuLkok\nLT0aIVeZxh9OXCt1+HNEzWyPAaKyzPTzmTgDumhja1Fwduyi/BhHPeCNY46dygmE\nSdG78pLxcUvfsGKpyUwdeRHOwIJ8wmbwBq3AVpk89+EAddCC/VJzLRqf4BjF2sEi\nAKl2mwJhUtXgWzMN9yEj9/wh42WMtGKLMc7QXzf3xABkT0iGLoNbVhe9jeSAdHT1\nNyz1LgMnMmsVbESkqLNbaz95zHJP6NYv5UvUVK9FaWJHhFFGg8khG/U2tOjMNK41\nxeXTyOBkpc9LpgRwOAy0YQIYgzRkOv90/1xU0zFZXRhkCslkclz4dpk48mGKfq6F\n5t/xQDL8Xy4xllAaA+MfOFgh0KG5zD24X4Ve7C5tl6YVvWd8XA8YMQPTsx498BYY\nZoFo5CpitxS+U3wFbyD14DFLl5BKXLm3CvqR5/RQntUNd0oGQo8210bUNJMVLqS2\nlheM0/ykjIQiwCrun5UPxklwXDAYZTRtWD2tKmRvPaJLJecW4254jIR54EOJ2CLV\n42Z7a78BYbeLYEJym5V/IDEd2Vpd1/luW9TT2/E3A+4nbzwT7WHuLOQZzgCB2JFx\nyudDESHgKZ0E+4nz3kcyoat9yiPqNiIx3Cj4fDiRu/lJrLY+bpAwi7kCDQRh6Pce\nARAAqUMuuYnRU8sTdJbEyfbYy8XxiUiYN7J4chovmvKb6T6m8lqNkexcEe9Zgq1Z\nBd1WzuEHtz6Y59pYGGvLkR7BGBZ4WVIZbRuMzjXYZDLdmng4vThvqPgAce/uwIio\n4uVfElhixD/hUrPBfrBNK8YQvWiJq6MIXf3M/ieE2wdq3vGRy5u4OFOOFXJU7IKE\nRub4oCd38EYrS/ntwRY2+X7kgzGZ3c0suiZd9Mj/YuY+zQGVyvTYMjAKTcaT5fFA\nV7Z6OGeedmBfyICeefqW0oozwXnEt3Xh507aBQ2PKAYScYY9URSLGanx1LzYHRla\nfnOXr+efpti//ZpCYfwnPtc1Qz+VeQHuJl2l1qvCftWE56QlOkoFXiTLhezvGvY1\nLfypTDf9EcWvBNSdC7ztdjWHrIsrEheHGMGmMms1hb5vfNYJ8I81FJ9QA5MsQssR\n+3a8YmzSo38Mh/VOJ5t6pYEVjWPturkaXx+9xb4IvKg2VJ22risByW9zcK6gsuGX\nji3LCeHZSJr+8BS7KJurKBlK0fZgtDLEEzcZeACkj8anjKMgNARtdm5ger2ClT7V\ngOoHHssCi+0oXZZPYHdEzyir3qMUWDvdz0856YPEIJRcGP/q1ALroScVCMWR99bm\nggfQZd1c+zpdrGzsFpM7cz7fqygIjfdN+PT7vWSJsqr7Lk0AEQEAAYkCNgQYAQoA\nIBYhBBQfB1lbez/+dDCak3QFUzvlfH1XBQJh6PceAhsgAAoJEHQFUzvlfH1XEGgP\n/RKmZQx8ZwTM8aHvaKQzc8j19MvnlNiZwyhpEurIlISdwteRNPA8Prb+c61RvDSf\n3DbsI6J9EcYlwLZ01a7bf6qNlYvxCfgm9k7N4nsLxFYBgUZjvgUOFqlrPsIto7IZ\n517cyiRjqu7fHVS+aSguz/7L09041LPKls8Zu2boLT93EYbuj3RZm+ItmC2YN7Mv\nAozTjlMDMgJL5fSjfrTRkzrwNOJ4J+RyMlFcMzTRiPYI/gUAdeS3wBCm3lLHIbiC\n7U19sqZlbXBvHPwyARp/PlUo5i5/Br3oBAzcTIMxgUOdIRVUCxEgltu+RKyWMQhH\nTzhk5oIUR/wIcwGZK7stFDrpSubKVgJ9v6M/S5rbDffDvNeTtkx97ZANifizi0U4\n5UGaOkWDObkLx9zvPeaZMI/DmC/5LSMNVS53hbllYgtB+bHMjio8S7d8cbxKahsx\nc4rr77gfQAy+V9d6F9mgPgL1Jgt8CQx/olROIkzJnzXLLx1pl/jBxq71C+oNJcP0\nUposRhf6OMb6CbaMJExfV8cM3wsBfSdK9Px+M/TtmWHUDnUqlAInRWm/S3QOMA2w\nPggS8SeMj1QnC9JLQIiMKNUMpZ8Pq0XAQSQy7mWYwYN6/W3SqqZuJSxogDSIK1J6\nAdTumtl+mDJRFlYwC0LHorFIhLjym1o4FbcdU440P6xC\n=48+4\n-----END PGP PUBLIC KEY BLOCK-----\n"
      },
      {
        fingerprint: "DD792F5973C6DE52C432CBDAC77ABFA00DDBF2B7",
        armoredKey: "-----BEGIN PGP PUBLIC KEY BLOCK-----\n\nmDMEZAFttBYJKwYBBAHaRw8BAQdA9UUQNclFp0rIrgtQnNw6BgjDINkFPoVbuS4H\nsQNEf+e0LEp1YW4gSm9zw6kgQXJib2xlZGEgPHNveWp1YW5hcmJvbEBnbWFpbC5j\nb20+iJMEExYKADsWIQTdeS9Zc8beUsQyy9rHer+gDdvytwUCZAFttAIbAwULCQgH\nAgIiAgYVCgkICwIEFgIDAQIeBwIXgAAKCRDHer+gDdvyt3PYAP9A8XbvZYT+N7k9\n2xnRMfrAUep6TLfWbx9uf7k/hm/+KAEAmqUYV1afcuwU2xXE5I8m25VMnCEKFFEF\n52tW2baWkQW4OARkAW20EgorBgEEAZdVAQUBAQdAtwscgbxby3vew2hn9F+KlVPL\nvFBPjnvODcnsqlO2mXQDAQgHiHgEGBYKACAWIQTdeS9Zc8beUsQyy9rHer+gDdvy\ntwUCZAFttAIbDAAKCRDHer+gDdvytzxaAQDvYX4o1Y6R30bYwIXemGgbO8GlCkgk\n5it7MjeSk8vUygEApE5zIi5OtP8TlPiMgu2MoJbIltqqDCKWTtHPIQRNIwk=\n=IisY\n-----END PGP PUBLIC KEY BLOCK-----\n"
      },
      {
        fingerprint: "A363A499291CBBC940DD62E41F10027AF002F8B0",
        armoredKey: "-----BEGIN PGP PUBLIC KEY BLOCK-----\nComment: A363 A499 291C BBC9 40DD  62E4 1F10 027A F002 F8B0\nComment: ulises Gascon <ulisesgascongonzalez@gmail.com>\n\nxsFNBF0VqLoBEACiPJYKX/UT5OFnucsBQqSmFNPsRD6JaClRqNe8wQfOZKFNLyat\njtNj2Bvuq2wDTdKSiwcT3PWtPCEVEQ5i4MMzwmnflAV4KTtj8mLCGTR3ighnf9kF\nhBdX+G4I3lQ2rIAc7ie+sI67zFmsAC7wFTw06DrB18vxl5uX7H5UqDXLsOQKE3+D\nQ2SsygI+JsCanaZ+kk6pxgflNDlWj5uRIPe82Cwxg0gS0aQKX5m//diavfhlPmuo\nYaQioe8/b6Bo9re7opWhtEFfYyGUxaRxVTLoMRwWcacspwqHcGe+rp88YmLMUXDh\nPLmgGw8aAsf+b6Wcj12zPusny1sJoG7zwm37a98blyCoYFzx/xTG6gq/RLud/xdU\nOOOhPGMH9wQK9ngVYG3Wr+LWU0ABrUBayY1wE3QBj7wYkoK6BEYknzkzm7y4tO2j\nrv/9dxV8kt8zUEDwUq01Uj3TDe3YAbbYhXTVIXFwVarCM4AmdIrvKbJZz0JWCIA9\n6M3NVyIJHqY2KYsm/YWsWMDqieLQci5M78o3wSdr4vsbvTRRGnmpEXw5cU16qY+/\nnpWm3R2H4o3IV9qRrrcYTgMdS6QohCV3qBeTRCdy7n3YB6X78ITIo/I9ogGG2nrs\ni+mj0R6F39Y6Y/KQzDM1ECWjsk4pxdK71JGXWZWersmI8rymbtd/WT+UKwARAQAB\nzS51bGlzZXMgR2FzY29uIDx1bGlzZXNnYXNjb25nb256YWxlekBnbWFpbC5jb20+\nwsGUBBMBCAA+AhsDBQsJCAcCBhUKCQgLAgQWAgMBAh4BAheAFiEEo2OkmSkcu8lA\n3WLkHxACevAC+LAFAmg9l54FCRDLiWQACgkQHxACevAC+LAE/g/7BmvYINuaFeQX\nHjGRXVfkcXojrNKF5/co5XpvxaNl50UOrq+tInUg23/Q2ES76VMgONUIgIUqP71d\n/09D/dehFnEeHCJhflCMjAbuZPTovjyfTPPwqKQUMLl+P4z7QAq4HKiuqP6hQW0r\nIDsRsiODmDGMXgxA3O8tIphUmgQJi1GhiZXRZh8kNAo3d4pbkhoBXXXlgm+vJVu6\nhcf2KCjciNrsqw+V9oNq8LyZytpKBdYprph6eCvaiGlGUk6PMzM+6tNBPbYJPt0v\nyVQTGvfZrHe1auEjbh/oFColO/UgHfyAKe3yc+AnKuUWyLei+imz0fTio7Oj5d5C\n5HTUQCaWTwEM0sODb05zI9EHjkpzRHyTwEuZM9gO+by5M9M8pxJ60wrUrftOgDMe\nKm8+lIXmz6mYgfoOFHAzozwQDjfSCT1Fq30pWcCb3UiBb/zYV/N1CTqjnoEmHXiB\n5dSrEzNDBmSIVvJpbY1sokOfxD8PNi0kcvNiZnxZg+ogECjPKtPx5VbEr0FYZEW7\nQddAM163jfxmnLdYdtst9CxSqB6uMiz9F1ybMp8H4QE4wbmdGziqqebRV0m4EOiJ\nrJWmJnWFzaScG1dGU+Ez3ICL3Q4JHfHiQi8tu6rRUa7nCBtA28h43H+uIoHqapOZ\nOw/ZPZtFApgGgnLyN6VT38mTgIuRq5bCwZQEEwEIAD4CGwMFCwkIBwIGFQoJCAsC\nBBYCAwECHgECF4AWIQSjY6SZKRy7yUDdYuQfEAJ68AL4sAUCZHme/QUJCyZdQwAK\nCRAfEAJ68AL4sFb+EACOc8YAcl6I3uGnRAhiu0F4tUI+ls0W+1FgMTZItkCH7Yg5\nBLsu5arxs/Jn5YtEuV2Q2RipC2RJtNf/MKtJ94ubrljZQ3Ha3UApwq4qojiIm4mM\nBlK+gKnewX76axyauXU+WC0cmpTTAhTYPpFFNG80J3aWIJa6gbuMvqnfvuA3Spwx\n/SOsmUfnpKVFc11Tf1pE+1KcvvoKlAN2Xx/xNGT6GTsgxNWNCFpDVomSV5tnNd6g\nHT1/k6nnefrC11NqzqSwy6DLNjijFZ0jn6tJFZThg2r2RQC5RZvXoM448+aeBN4k\nzr3D16ojbXvCMpqHuU2PkZUgLjw7wVSaUbe1xUv5OmseprV+4R7t6FRIcc2yfRA9\nLUdh44bmdGBJ1yxiP+eFay+NqNiK7LYo3Z/Rbcdc/KLttR6wB6l4BLZ31VP0Dm7J\nSk5VK9LlsBleifYkldI14e4GkA3qR9C23YLyiAEeUi+bd/yW1wirCFxoplx0pwCr\nHi+Gr5EgLWDia/ODfQh3ZJfRI37efaMmRqjN4FyGvQaIyqCu9/Qv9MNE9JZSw93m\n9/2kK84lH+LyCoqDmFN1WlRs+FSc7PpR401bmthtruj1zDmvwxZOB/xmSdPE2R6R\n3JO9S0DqvVuNhbv4sntegLXY9tNJzfBKFkcPm84WJkOg7TzYkOE5eyLN4aG7mMLB\nlAQTAQgAPgIbAwULCQgHAgYVCgkICwIEFgIDAQIeAQIXgBYhBKNjpJkpHLvJQN1i\n5B8QAnrwAviwBQJgthu8BQkHYtoCAAoJEB8QAnrwAviw9SsP/0VnbVs2BDS9BzzR\n8mjF7xcGGXgUJosusaDRmNHfGBgnH0SKH8TOql295TyGwzJyI4yUf/snq5YL6tUf\n5rPDFf+YqIfWkIJZ0lqxGzDqFXxV0Q1IxrxMaLDKZ0sFsV2fxXFRhpuvzGWkn7Gb\ne0EjWcHlI1a3gvdDpXV0HiH0ZwD1VAq57mooCr2UQH5A5IKgd5Kzy7z6gxBeNw5w\nq/gnxwkqON7WpAg4CXlEldL+xpS6sLTfB4apPCOOfjYL3dQTvatKZswm5UdYTgk/\nGO6Zqky2PZzRuXnoJ2vEDNTjNKtH33hRGLBrQDfYeAsrqQClrwJTK7cN40CC7Dh5\nZ23qcyuRo5SZZP6jC8VLf5+svFv+PQUZmZ+vojp8XzdGuXxCa7eeToHJOclgyA41\nMf0LJmJuaMT/3V1FHl26awrjB4RLBnDo0ULtAMFLhP29suc88BEO1HuDlV2SoJvx\nmuLyPdyA+i0r5zHxROwctQygHBaHVFX8ZSwG5+ZH7Daz08/tHk9J8mt3tR4jaBV8\nrn8RXaqg5lNcnXL28YSe3f7vsWzkODPEufR1dx4tvdCKM/Qpc4KUV9UIooX/QAeD\nU0URc+9x09CU7Ue7rh87v+a2riG3s9fNRGK5m/I8N/wbNBorf7J7TV5yNkDXs40A\nd0k7PmZYMKHxiosj1yWelPRQjokvwsGUBBMBCAA+FiEEo2OkmSkcu8lA3WLkHxAC\nevAC+LAFAl0VqLoCGwMFCQPCZwAFCwkIBwIGFQoJCAsCBBYCAwECHgECF4AACgkQ\nHxACevAC+LDNmg//aDq4im2VJLm+3wY0DNYYnkyBcRupgqkFUPQD+nhbKLvCWeLt\nrNZmi20ODZYNfhZqhvyfkoaq6NBCPSagVhU/2H/n/aLTM+y4VfYbtOFjWA8JrUyB\nwsPgIMxNoDqe1pZNAgFdly6/wS9OUbg4HyEhvTU6LzMbXHZ6ZZDfcgMMwPV3+/sw\nge4gmhTNkAF+jeiwM097Q2zLctAeH5kxXWmhUex4oWW/mP+Z2KTp7yKc1Fg3fy21\nzQ4CCyDE8lWszC+caxL6QgwRcmO5FGKGvkYTGkkGWFOa6Sfm8rJHI5XjPzXtq/+E\nyUrrvV3fxdDBJYsqM5HZt0uyaB7NTU7a4VGG6aIqjlaujZSXmHs0LZWFn5SpVmwc\nQ2/H7lK+lWzczOMMTmpQPiqPeRu0WIGZnrc2d8gVUTVKJOClCfQTFeBPSwwA1qFo\nPbZ4dNXg/TcAWEIdtwKPVq440hH10ZyYdW2POEw1tMthy/58mpxc0+W6rixpgT+D\nSEPmBdbgk4/XZOYk6sCJnp7L7CBBRXs36DTELZMzrlvTjR3weR9D32/G43Us6Se5\nyNdjKrkBsmtHYrSvwtokXpCO4tu3hVsJQ9juzsx9Dsf1WTV82VDT592K4HSh5APp\n1KJ2Z5gELlqqOOef9QRIK9EEgN15oSjXEkIRJkq2m7LHMingmvm+ST3qIxDOwU0E\naHptGwEQAKvzjhzR8jBL5Ey1CsD2kStMhyNMEGL+5m15Vzch06jmttzJX2xMDFLy\n/Vm3vdM1YnM+gQheRZpzRbYBRtJja27CBu/YJP0/PvuIW940Lvp+MGuWdg9VJ7Hq\nLjT1GQSJ4SgrkC+p7wUMtW59SeCditzRX5SIYsMryds/T8HYH8n3YyuOn0z5VjKG\nwKww77mUJp6QA9CNtNxeiELJXovg0uYp/kPfAOVck8WtCHXKFm8tZ/469/PtnT3s\njFK3/nya1zBUi2OlQhhpQwRgk+tiSKWbnQEmSIh7v5ZRfYph3pdpnYWf7eHLzF+k\nZLK3kHf0S9L0QR/xraCRvViQIeVyyf3Q5sXggfxtHIF9mXPdXkMPonT8T8Bp0IGS\nqFVKwvY8osQ945/WWEE06pmX6X0buE6tsnVZVHNdH76soFh3MKlg+hlxDTivhtk5\nuIj8S0BG7Z0YxkVM4dobUGsum5Mbkl52Zq/+RHkFGPUvp0BL3Xw0BgOk1uj5NVOQ\nS/VVN4FDkjq8iPb97JumsbxbPD3maCcM7Z8BZE1HJl0mUsqSblLLy+cARWNlWSfr\njMN2OUxhF+6a5AfndJv1PndAlGbpEd04UWaODbZ+D29DocmNKKVOuCNf0bOWZmir\noBQFzHs1CorUjg2CSZWkjoC/P1BGwWoygsYGy1QLXe2/knxCTOgVABEBAAHCw7IE\nGAEKACYWIQSjY6SZKRy7yUDdYuQfEAJ68AL4sAUCaHptGwIbAgUJA8JnAAJACRAf\nEAJ68AL4sMF0IAQZAQoAHRYhBMKyXZtCctspVluofzx4JPOaiVdYBQJoem0bAAoJ\nEDx4JPOaiVdYgWMP/i2TATu3s+8yL74Q2W7H+85QrC3nGGN8FVeDskXwbu/fdmTF\nop/6A2nPSP04f3x+OoIY+J/d1KGdk0HGEmf8DAVFJOJhc1jQ9gUteHLGfjwHXqp4\nzh8tszs/HZ2zwvgO3fVN6NlhhMX5A4sH0Obzxih/KhkwlRcBbXYYvuT6WpaM1S7B\no9jthsrY2rL0lVaHL4o3dCCRVR5FKdy2mYNlgcsEyWDmGa8Ss2CqCTaIrxNxfZS3\neASxDoV380uiR2i/KV9BLtElz/YAXShmQJ8CYmFYgzCDGlTfZBoQonRnm5d1g93H\nONB7n9Vta6pBLDvDdEJiB/Oy1G8LSowW5juQB5bLf6PZksoYmbhjcIwX+gpnklZr\nXxOTYe0S01y8a5lD9wx0L+WiKinwETRnn5XoMMrx9c1nfOqixkPAKy/nwnoOYSPY\nwLTY1GXT87taZfc3BRGkmRxcrv3sU4qrzHab8jJ0Oax53vvcHI9qmdcRBDtb8X8h\n7uXHZTu+bVRBtiFO6HhHEhY5squGzNP0YphZSdL7dXj+rBZ611MA0dmBwp27dwlA\nV26KEF8DWp780akC7lOb1g83Yag4lEofCduWSHMeaLRckD7HwDjOecLXALfIJNSS\nhPWPr5WP9kNnBjrnzU48tCxfnx8eJUMsy673S/8DStTyKH1mk2BBIbQ6kYzYuDkP\n/j7dtChcatXNpjtV0IDctbq2tPWb67cPpTEBTaiAjoC1zFYstSblQU1h9SDFMyMU\nutKlTfuqlmbiPHmSyaZyvaSVZlx1Yx8yA96Lq79ATd+CnYl8CWQDaQQ4E+i4psJp\nrSn7XgnF+RBhujZiP/jcRuTwJ1RZm2v4pNtBmAaW5ZXPyR4fKZLFsW22FJDNzLtZ\ncBBz8HPD3IGH0spUaf5PalYoNpBgh6euCWP8W0fCKyIPy6bIL5ycHuo3ErWzIHLe\nkO9gGeaSN/t1VLgdE16Gaozu8Oypx2u0c9fhR7aqYTOxPfcrekuBEevHAKxOe1bI\nEqcgqdxht3bXFvfeqx6kvmn8Y9EhGjA8W/PWraVoCrKVdHXVe47l4i/1QZU3UxnE\neAj97ArW6H/Os1cjK9K77xzCpAz8FMT7AaPQq3uReUaDqoNIMTO+tCFB2dYQYeX8\nYGgILe40bMpCnvY6zxC7UvlO+YxhZSQkF80Ytk/2eHuoLeEiM9IW/0+zxjP6SNmn\nfhlkLevudlFFxoYlg5uWH6BIKLSUF1gCRIFKj3T1OnMrDlEAkNYrA3WATxHWEYAZ\nNsZ4wS4I0oPY2bZ8ScS+2qwmcrUf4Zoq/praBJY9GYslAh29MmXmvSMuVt0SlYYW\nKdMepn86/V0vJYpLKmNHrhToycaaVIN3p69Ap5mIztWLzsFNBF0VqLoBEAC/lPmx\nQvfX2S520XOnOD0GnvqnKFUvICc+hfU9vW7o7Dy9ZdGFLRgmkrZbXCNowwPlGI66\nVSOUfwueEvmJh5BQRXIv7gkvLhC7yO7OpyqAiLVrux2K69b7Jw/y91FZZZyaOyH8\nkXdVNO7qAQ4aOTTln+DbIXa2WW1fljUktbFhSzjK3CRtVL7NUgHrFePGfETZimII\nU4ZxjtX52NLQpyoh56WoGpW9+oXe2wEGYYYcHJszKD9iZyNCpSULT7pRNFwZQ3yQ\nXNptOotYCw0L8gAmSwJ6SUge+MdLk1BGpXEji7rEvUxj99ymh3sTWqczdKAgYWtw\niis0KDpLrCtDohrc0JJxc2D2cI1FbcF+b4GA1+KGUAR9yd3+EC5yXLYPU0d3BN5a\nXjCaXCr/vWLS4/LcXBAIjzGF1Jdr1a5uQBD7JBv/4JxLCd9r9aqfU+pSUgM0+4oB\n1Pxqo+0fm7m42ALve9c+t5Yq7q9B/eHSx6sacfq7DD+Eo6NuxIZF9prl8b83uPE/\nYr0INE+Jm/DPLO9FfQYuuLZsyb3RcQ8RaArVdWMteYBke2tbAxlaWK2X+qvDqjsb\nRNzjQKZEM+ib8uWcLxQQIF8g/6OAY6JXPNJrYTMyAkRsy8regIyZcCs9KVw6+jAn\nHOXAyFURqpyDallSGd2sUFURidTqgrZIVBJ6yQARAQABwsOyBBgBCAAmAhsuFiEE\no2OkmSkcu8lA3WLkHxACevAC+LAFAmR5nv0FCQsmXUMCQAkQHxACevAC+LDBdCAE\nGQEIAB0WIQSmAjUw/FNGH+yR+ZwEzT8v3geVeAUCXRWougAKCRAEzT8v3geVeFHE\nEACsKQ79VNKKCjh7tcREWAIz1R/2Y6WQxBxA94swo0TxrNRKUgRdHCqQ9+hI0erf\namB4Wr3+6/qBdm93qTj8xZ9P+9EyKIEBpK1v7X0XDl21XpYjtvBIs5AcQYnPUrs/\nZpGb5yXTY1vI5cJg27aPwkeqEBpnFIz2JsgPQVnDLk0ltU/1pGtObIWH4JkRl6xY\nFFuGEtxdF+0XBeaOFvL5e8Ds1bLr+wRXCYa0b1o0US8t8uqWwQ/Kg4fSfT86Gjkf\nU9NtNe2LUjoKRZk4miWbC5ZvcCmS8U3/qN3+AFG5URRq86fQSSWvEqPQqmdg8E9t\nNy6KYXBCHU75hlw9zPasdc7vw3UUIqCpkohOIzdLArt+sMVklTKlhmNjCkbpguBK\n/Ef7K12JyVHnUUhyxm03sKKLALn5qBlkwlXqSLgCKPYSYSFhV9uX4ZezStceV4we\nx1mocU0EJZXzbhQiPhaIQFFXyIpubvFpw4lvrNZ085Qit0JduuEr4MUDDBt0HcQO\nS5apPpRkNYU7ZFYgINcGbt9iUWLrTsVm6kQVAXqeIKM7uJ5LpS1ADwDOdWAK4leo\nFqCReb9rcPA22raDLe8Q1PF8cADttBwX1mX9sAn6NdcBBvNemUSm8+RlL4W2g5EI\n/LboJEP5seO32vQRua0MO70/G2SlzqidbVdTi/4x4BSC5EjXD/9vlfu/y2B2lHZf\nHGQ5FJYFBsThjyoBxGU1aKE67vHZlei384B74J0dettcoDIKodmk7aE/kHHVdxhZ\nZAM7U3NUp8B4TyFQHpxRXtqVP26tqTnhsvHjQSwUIe/NVSVzn3buSVofXy9ViG0w\nTjIIFYnMUqk7aUvZJa1lqdZ2zWuSmNOjQ1UcDNRj/fp5SU8K1qiOYCyHn230VGVT\nf2UUNJn11y5/Ev2Hw3hzDwkAK+C7XhRIKE83U+tcpEs2xlPTN1glTPmKlcjj/8vr\nrgiM6nc2PKF0iHbJdargKEAJZBfECs6yUJ6qqdPGLtYPecw8XVgt9ZgFvY1JveZH\nTwxYPtuk+3WmL3Wu9Uqew2mmVFY6N0dYUE3A/RQWNTorRddAGhYVTeSOU+nSKUG3\nvh939JLc6whDHMwR2WsvKjEoL8SiC02Jf+fS/QVDk4Gyb0aYxpe0BKijGWd/AvGZ\nTaCG1w18TW69zeZKudUv1U4k2SB2Da+tx23g73GSW+gRZOLnKPtHb0T9+i2U8YKg\ntc/FlkvjF1JRltNeTbk+cB0YT+UEHegvlX7umMKqUPKD54VrmafT28B1sTbIh1ir\n9n2viPgGK+INdVp+7N6Gym0j4TdCnPg2X5/KX5MVBEGQpkRJCyJoSRh5QVbjwXf7\n5gz29ym+3kgbwS6FwUp1P1BBxrBTTsLDsgQYAQgAJgIbLhYhBKNjpJkpHLvJQN1i\n5B8QAnrwAviwBQJgthvRBQkHYtoXAkAJEB8QAnrwAviwwXQgBBkBCAAdFiEEpgI1\nMPxTRh/skfmcBM0/L94HlXgFAl0VqLoACgkQBM0/L94HlXhRxBAArCkO/VTSigo4\ne7XERFgCM9Uf9mOlkMQcQPeLMKNE8azUSlIEXRwqkPfoSNHq32pgeFq9/uv6gXZv\nd6k4/MWfT/vRMiiBAaStb+19Fw5dtV6WI7bwSLOQHEGJz1K7P2aRm+cl02NbyOXC\nYNu2j8JHqhAaZxSM9ibID0FZwy5NJbVP9aRrTmyFh+CZEZesWBRbhhLcXRftFwXm\njhby+XvA7NWy6/sEVwmGtG9aNFEvLfLqlsEPyoOH0n0/Oho5H1PTbTXti1I6CkWZ\nOJolmwuWb3ApkvFN/6jd/gBRuVEUavOn0EklrxKj0KpnYPBPbTcuimFwQh1O+YZc\nPcz2rHXO78N1FCKgqZKITiM3SwK7frDFZJUypYZjYwpG6YLgSvxH+ytdiclR51FI\ncsZtN7CiiwC5+agZZMJV6ki4Aij2EmEhYVfbl+GXs0rXHleMHsdZqHFNBCWV824U\nIj4WiEBRV8iKbm7xacOJb6zWdPOUIrdCXbrhK+DFAwwbdB3EDkuWqT6UZDWFO2RW\nICDXBm7fYlFi607FZupEFQF6niCjO7ieS6UtQA8AznVgCuJXqBagkXm/a3DwNtq2\ngy3vENTxfHAA7bQcF9Zl/bAJ+jXXAQbzXplEpvPkZS+FtoORCPy26CRD+bHjt9r0\nEbmtDDu9Pxtkpc6onW1XU4v+MeAUguSKSg/8Ciu/o/I9G+6JV+ZZyvNtmCR95gLL\na05lvNQ2BrV7dh9+azF2mTDBsO8jPFxI6yqbZxccMTkfy9OIrtsurOoxsLPg442o\nlyUfjYWNRyEKzo5YN6hrk+q6KFEFJUkmJPu3ApGYIbVFDDPs+iQVQKPw5WxpBssZ\nEnaPNT4sEfcz8xUXDp2R1zNY1tirieOEGJXEroA/ssGF6cbCr4gYH7HrUO7ZLSpE\n0ivr5njHZyjl//xCxbiJD+E2qBrBhwW3mJxFq3L3jo8R1Ijut7TY4w33QhlsfoGH\n7mpxFaoHznsT+GuH2CRxdimOTGpv8dCl+0qhvZhpqvAoZqaQGuTfBjeP//J/RdbP\nbNND+ROnv7zZReamM9JGrQXtuT51cEI7rwViv8Y43heazqRN/bM6LZQUIM3kWB57\nIMUZCiDJOKd1BD71fsU4dTM0BiyczpYpr1O9cUjGgn6h5Khkwdi+4s1ij0oQo+Hc\nXDSkeCIOg31DV0rmHUTRUeUHdPoXFEwWS1lAPJw4nwsZ5e/BuCF20Sw2lfTUyFxf\no+C1H7Ams0/QnUe9RbGeICEA3ElZeZ6hetFVggdMm1vXsWyo4+hP5YzmbW0eapRA\nS/5FNbjs3Ie9hliikjitL6ip7F7/0x8PcRu2mRnjYrdTpsNnK8h3vzgsySaSI7/O\nIG8Tn3MVI7yg2LjOwU0EaHpt/AEQAMAQRKtjJbseOA4djkpN3I26rT0Z7z3bpvCZ\nKDTB1J09zuzBf9FLP/mZTt63Y10+cH8eDqK2Jx/Jn4TxQMAlMU+5YMkDOuzdj7sB\nyBIkiinYOFG7tcQHu5jSWYxNo26rjJ+82omVMjwP0NmYHyYVpPGaN08UjV6Hwsq4\nVxZf8pKHVcQtk4tAuBsO8drJ4R2kGX3AFxmZ5DMH7Q2oxBy0O4kG2DQsSl7kF7my\nSwNwPw1Eppx2UCHtPa1r6DIL3vaUJQhrEW/z2HMS4I/HsqfrKc//hdEuWWIx3PcL\noFGqQHNfPiwLOiZqQTu3VLCwazrNfQNZpZugWwo+YK3kuN2UMp4CTybFW4o7lnyb\nhXN88+Qj1tpdf30ItHDIs2P8i9eODT6Ssxn98nmhIyZSrxlgvaTDV/fJqDsVG46B\nSdHS8h73yxlROGEEvE6g/ip7hSbFHiql8TrnQnRH2UzH+PJbmdTU16cKxR0VZ56w\nV0OXhH/iSJdNV/jKAt/HiPz+Jn6I1C35eUIJtlcMIHGue4JAxmbrGJ++GZrgG7DP\nUNz85VZo+TNzmDpG5gHV8TG6birttsqWfHyyu4ccYqdv5dOBBsrKB00r45alHMXJ\ndZ7mf1M6OQDqY/pS5MYzZSj+iDAs43gsvWuQTeU1lYDbIN69t/LmgdShTrj52dTQ\nnFTBAn81ABEBAAHCwXwEGAEKACYWIQSjY6SZKRy7yUDdYuQfEAJ68AL4sAUCaHpt\n/AIbDAUJA8JnAAAKCRAfEAJ68AL4sLtxD/9EGdh2RiWB3WDeCy+6VE2fE1a1j2qG\nb1I9MzaagGIjNfNLQa0ZRd4C8F2PxMq44g9pJT14Ti/TydW8UnavcO2eg5AP+mrO\nP4bF8I+mtx1YtnyDPOBPtaxFXc1h1qF70KDyzQJl9C3ni/NrbvI8TTyh7JjFEqfy\ng5PU+m2TBwoK+cQoAVb6NEA9bAzKsayqVg596E4A3VEn8LkiXshe96MGXwENCZbU\nJhU1+C5M+q2XUi4BwfnbccgW3f67HyPEYt1dyYuQD18RM2I61yvUfCS9UMjZuBv3\nQKERDap46x6fg7nfq7NZqBB4Ktb0pp//NJJdP8eP7zs+tbuLEDvLF3+RhiBUrR2d\nWx7qZLM1JRqHd85ttvB1xK7f/38TE7J2STpIpHlBgWroqWUYbTw3hiIfN9pNSike\nM8hKjZ+w58HrXrx8gxN0tq60c9tAsxy7wpZmvufn06T9AaqPGnArfh3mAzk4G9jG\n15JcGO5YKrE1M9y0pqyBgdku+zp87D8TEuWBa3GPHMVqkwz5Tm/ovpa6ms2KiuNK\n9qVYb8JaUg5AxOnkxJSjnomRCVfTf6yccexdmE4EEkUNhFj/6Y+UA4WCxhAS4Gra\nLDARUWnKPkw2YY4m7cWPDHzXF+pN3KHLej+u1O+0y1q9OmpQ0yogo1fnzmeIHvJY\niYmSNsSq9FUzTw==\n=CCuY\n-----END PGP PUBLIC KEY BLOCK-----\n"
      },
      {
        fingerprint: "CC68F5A3106FF448322E48ED27F5E38D5B0A215F",
        armoredKey: "-----BEGIN PGP PUBLIC KEY BLOCK-----\n\nmQINBGYFoj0BEACm4UKYcykICb5oxZQQxSZRYwzkSngpeFcrruHVHfg2jcQ+VmRV\nC3NrbhSrBQuJ0pMx/zq/yZB6K4JS+EMf5GpaX2ZsVsj/MPoSKVHcyXR4clIulCxN\nrUyKYS78awl3bE+dwf9U+IY2fMoMVLwNL8kT2Yr28dI2u47bOPRqxDTxJ8VkRMR2\n4Nv8VbFn2kZVm4u/ZE4lVlAr82vuM8dOdo+RA6OTfnJRBtuwp8YmSLQnoE+BeR+i\nLgbmqOFSqAsQ4z5tl6PlwUMQn7k/GiYfGGKzgpZ9eq265xu7u7f2cXk3SAnxf2Tm\nv3JLsdLd3wbxGOSAd9Ciy+VNmhW06khd9JGriVyslapSNu0ZdH4RepPqjTEItHLE\ndnUwlcmJGKnbE3n7Q6mTez2pMtNYNAeA4LK26qHkHqkgAlkgIZKG3SMlD9wc3FKf\nSpMdEQw9RqAZivO0CoiFRC+VknRVFy4N/F0nrvC4uHDEomIueJswN2r0LWhMDmlV\nj0CGfDQ1SDeU0QpVtuQ5wjpp3UumLtj+uzfU6Y01mrtxH2hNbXKWiYFlDSH17wra\nzYGyEWDnz7owLbxEN1c7sQgHVTVgFzQs/zRjS27HE3bWK2O+vXWD+mceXMHUL0om\n04V2TFig5GaGPr2GSD4eY5Em4G2FzmwPGhjB+nP8nHmsQLAuMUhIR47yNwARAQAB\ntCptYXJjby1pcHBvbGl0byA8bWFyY29pcHBvbGl0bzU0QGdtYWlsLmNvbT6JAlcE\nEwEIAEEWIQTMaPWjEG/0SDIuSO0n9eONWwohXwUCZgWiPQIbAwUJEswDAAULCQgH\nAgIiAgYVCgkICwIEFgIDAQIeBwIXgAAKCRAn9eONWwohX7lMD/4yCMpJqxGKaSsc\n5hDbr5ua0uQRnziFBUPz/RFF6RmSDDCZ+Guck2A+8d7WHh/bmXhz9sUIRp04oLpn\nsJAkbbdNJaePmRxEOoi1Z1yUhLlfpq9ZB1Y8z9Hgsk4fzbBcpvyGrfpmuRx1B8F5\n4QO02VGPp+i/Jek+PPCpyXSSFVVe41ROHeAFoAdAsk/Pn2K/xP8sFWf2yZJDxauE\nNUP67aK7q84N4iC93ioVaW/tdVGdOKKwSCo1jxEnWqMCHe44/BMzDzjNzcGNFNNS\n2Wp5x1Bzmsj4SDHjWpfgfNzOuWzbdH0H52KiQW5I/TDw/WnAMDAm/ECe1V0n/+ON\ngmCMCf/iRmYlLWRf27aGK5OlH+cpF/fsuWe14QvSbLKgO6d3nZ3kJ6bdrkeI0+eM\nsnPVMtc9Sfo1Begl4XMOMLXoGA5Q0tZpCue+o7HfJ2hEtYQVL3G2yIgWwLcw//Zt\n/N9sYOJAGvMi2GQubqTryBloskV/DAT8cH3ttokOWF/EZarWkJmtOMpGIT+tpnyt\nYnpV/R6sAqT0whqxo4A4Me8ncFIhbviJNBdy/hi0qJxHvVDURGHaMFCcYGzzfjlH\n/nXOGCfInzEmmaLUkyqoM+mcLOvWBacprlXpm8Vd+OprgljeBI6JyCZYnIJycNQq\nU2drHjHrgFl2JEmvHwCzuP0Vqr/GxbkCDQRmBaI9ARAA4jotNS9OKK8tT3ORqpqE\nNs4j1MMHQW9tJ9K2M3rqLLsUx72MN3NIEzidEzGyr7HKdBQ88XC25TRqtKhljUFp\n3m3sw7jauZcTCHF/vaW5Vkfix9qL5BDiqQ7T54o05nmCxXBWKDa64JFA0GcR5xZe\nYORi/EujoeU2xWaXZQBuU0RLItraGJnIIUCmsPxrSde0EBTpjNJ0zEKqdUWwx2JD\n5sxs2Ln1olJFA4hKCuGnYhjojQxapB7HKanmqMJD6mvQVCjUmw1FNaNDLfFq/hx9\nyF2vTNZ1BzUvQfYBqKswnD6/Q+ButpjaDyGP8w2+NVWCQlPxVXiHcOBDNh8JSySM\nESHi5vltXujKZAkr+q67OZrKpa53Mtw0PAEuM5wl+Dv2Ut3Z3mWIa+8h8AO/SXnA\nRXzzsM6M8sHMiF12IIzxAtfve8eINor+gEhB9LJdobOq+o8tu6la9UOotY+dJPL1\npy6SuZBbOSpJRio7PwuDz478PbbfyD3HSiRcv9UWCUgpdfiPNLJz8NCCYwwM0CwN\nlKOvc0pEBQxufHOMDxEWv7RxOdxWiODwLZrlyE6eLh5BaxM/AMwOWJH5ReGaAA0V\nDRjXHRm+vOCXLENeH+ZlTqnKIHHmKDPJdybzllsxaFp02+c6sf7Gj9BPdA0rzJrd\nprnboL8oBr8HJzvDw6m02kMAEQEAAYkCPAQYAQgAJhYhBMxo9aMQb/RIMi5I7Sf1\n441bCiFfBQJmBaI9AhsMBQkSzAMAAAoJECf1441bCiFfXugP/1iYMqMM7MRifFe/\nHIwhBmUGBOXvRrOdYEnoQOQM5CV+ro1mgVLr3alHo6xc5ZYwINq3AvfS0XTLG0z1\ng7zQpictpK4mo2sTRujeJpf6TPgJ7aI9+fYDnfq+SmhDgKIlR20NUxLMgK8u2eBc\nEF8gqqGBldHV6b6TbDBZGW6xAVGXe49NLd8Q1rHPCUVA4SsDF0Wgn9gaiarMqlmO\ntcrsalTvGrbsDzyHY8p+OktYeJPCVy0iaiT5RTwkGjyhInSzH0Qyb91aYXKJdH74\nc6BPFjoXeEM/n/pH3cu5h4x3m+8Z7X5l9/UrV9kBM5TxwinTwGUuQDLes0mjwspU\nc3kgPGgPGzRp5+wTcRfiF00luEFUxRtBLCId6PKSH3ZhDjRA25M0Yp4qP81wgu6S\nqlbB+goIZtbEAJeIxWNerMVeC1FobuFa9S6t9PAUlvX7mMlBAMDOv6czFkrl7rSj\nyQw4lcYv23z/o42yFG+EcnEQ3l7K3j1qmkFDiEfopbQVBNpE69stjpO1sQV4fVYr\neu0agvd1+yKZrcoEo+npXyzXPckRsHchS6pbhck1vFtgKwXpPCjSC0e6IwrDgAGw\n0smdXeIIwNoMVaY3oksWA8DdRdNCaHqYalW+8LytiOOcBvgFCMcUsr0NcLstWwyi\nZWf0a3VP6Gco5bmDPhvGoLEs9Vw5\n=57kS\n-----END PGP PUBLIC KEY BLOCK-----\n"
      },
      {
        fingerprint: "C0D6248439F1D5604AAFFB4021D900FFDB233756",
        armoredKey: "-----BEGIN PGP PUBLIC KEY BLOCK-----\n\nmQINBGHwIyoBEADN55NGkn1hvOjFotJVr8aeU6/xGZF3gPLi7q2qaX5CXtVMGS2B\n5h9kiBKrNo1+xeC1+jRu9r5179lTiYV808qNFBQdr+5ZBnOoszadlMPMtU89qsR9\njxr8wJT563nIPoCeRl+0oFeam9ktAZnnpLz0dmPxyHHVaFXsVauDpwjJxOPo5Vyo\n2MHTacVUBWZA6R92ZETWIOHSg3ZtLf+jq7IyzeYSnj31kbx5djGtawLKZZ9bbIdr\nihRysKAaHabf+x7mHs9VYnioygC5z91vKJxJcPCNinjFM29gU7qoooYgjmoXFrmy\n3X+AdmtK6gNKgEzoFyHThPp1ta8YoNKd9LrCW/eF3Mz/k0LnvJSTCEzY3ynwMjXm\nDP06ljDwMEll2pk4utFykYmczxdvc6XYRzCUDlpTNBbnUxo9wtWS5P972j/Rrila\n4NmvZbgSCf5nmJfouCRLqxiSAB+hkilikjCGx/zvd5gUYyvrB/scSn0WsIFOA626\nY/JpBVtERKXcercRBZlRPYlKVoKXopT2p3WS2nRmj/HvOMTH9KdxF7jwEF5pguic\nWLKQtjFkHVWgZgCi6cSwohL0ANch9HcQjU/PB1zqyMYUxDuMxwA5nzeKLfOHY7cS\nXbvVmeLwA0ArEXWTIXH1chDcaGW2LKbqlHS8fRnogJ9ZZ8REWTbX4y7abQARAQAB\ntC9BbnRvaW5lIGR1IEhhbWVsIDxkdWhhbWVsYW50b2luZTE5OTVAZ21haWwuY29t\nPokCVQQTAQgAPwIbAwULCQgHAgMiAgEGFQoJCAsCBBYCAwECHgcCF4AWIQTA1iSE\nOfHVYEqv+0Ah2QD/2yM3VgUCYfBtoQIZAQAKCRAh2QD/2yM3Vu3PD/4jPvierFEH\nss1ekNSOoIuLWZfjQudlLZy1w7ANPEIY5at11EZ4s9bh3QRoNM8Ztw3mNojXqDPX\ntBJ5DHFb9dvqVS3cRV8XjDWOKFO370tYEW35nozV41XenrSJpc3NYlr48Rmx+8mH\nZ0Fd3S0aOEkb+yLpAVxwKRyHyaKjJugz7Bq9rNFrgAqkIL6PTcS2UpEt6QRpcMtb\nizHQcQT2kk7ULAS+LChKyqUUXC2jmAgGwAgBUjQ3Dx8z3UBNxjaTNuLgywftroGu\ne543ubOR2OWOEeLRFapHg+GPLgm7q8cmz0aSvs4ezFhOa45uOwXVVDFsMsXFOG8Q\n73TC3+GoF0+3hCDCROSUsyd/OzhLMlLMBuW6EqSlfXjwuqmIuQ31mXz67ORwcO3k\nA6GjkzxHhNq8i6gu1MC/nQLOVwTwqttvpBcbxclU7RRRvrFzr9/YsM+asqLwQ0sQ\nw+JEnVaFDcq+BCa4zQaAYUtkMuGibnwLAHlPVk1iityrW5bgFO7fokZHa7pUXBZ3\nEfviff512Zho9Hd1zkrJdYpnoOXyoho/TlzD63n6DMA3Z1cfF7MM4pqx38xxasch\nyYbkXwHIYUQ5BivgNYC6hcgMHM8DlENpOpPFFHciFLvv8ORI8cM+PR1RlsmCwRDJ\nEjN8Y4cFqHUtBFy3DAZTp1AD8dOiJBVqyLkCDQRh8CMqARAA2ez9vkDBw5sN2OZQ\ndkLiqpd0YW+v8muDmc3JqNIIqduSFuG2amW7ueSeQ7anfrLZwugLWozX+AKACVQt\n945dmvnvwLC5r3ej5iUdnrqsrdSGn062v/ZtgYoheaVSOeHQKAF3N0+SzDQOBAzE\nfPmziMbBDhC3UQiEqIzrHlrTfxaI2e+scJpFzXnpGWhxrWZsF93eCZmbcnH8uzug\neEIjAxevrNNnKC3G+wWklVJpTTAsUHv8SPGHVkX9BUbLBoPuTdZja7BiD4cSMr1n\nc2BFR3xBIzFdmIztBHjpvgqwKAauUcAsgtKFFWDy8NjYjBCzb/YSlpMC1JYQIF9X\nHSQTPA8dw1ZJPjcHFjSza7FsF0OUeDQNtId3uVxCsfJ6xEqlHw746e/ZZ+GJHgmX\nQurEwvMPOxg954jBVLPAx3YYLNkfqA+MrX0AvgwNCr7/Jva0bK238uKOZhpBIUBz\nMTVbY0IYFh06lPHAP+YS3tkyc+68+m6c6UTikSnNN1K3LQxvODfydt5jSzjG/+qr\nAN5pZLpbHKWCGGsEhjS1exs30BTUnJMJMSqRoPsnvOoJXfePQMXq45b26hmQw9gJ\n/7mzVOOKzgnPpdIlAO6hkp7HfWHKoLUGOOHRIJcuKkEi8iYmc/Rb8S3HsohtrOAs\nkKGGOVnr8W2CuBTLNJMVOsDgWfMAEQEAAYkCNgQYAQgAIBYhBMDWJIQ58dVgSq/7\nQCHZAP/bIzdWBQJh8CMqAhsMAAoJECHZAP/bIzdWvoIP/1Gj1Of+sF0ZemozOmMS\nJR4K8hnsKboaklPtimor0cUYHwuCYS2YZR2nUdAu8vhhc6iYHRN0deZR2cWMXDF2\n5vhVx6LDHRVNkeoW4SXOAt2OX7iJGZn21MhkkXA4+FyOUhbLrUl3E+Ea00dlygA3\nSt9VsiV5LOn2siAYwf8rTUWw60LZkyXZqhyZObXY0L69iBgwN7GW+bKWQee5SV0f\nIw3EC2qiYyxKv8B60/HkAzx4mKsfsOr/CNMqsJpSeho1Je9enCPzPxm5+9bGJ3oq\nGuCxNRW1J8WxhDg72I8iBMypLHVg0iL8tVDHLqB9JJs+CxWzRojxIR/p7lOiBMGh\n7PX6ONA9Jb8q7PLQzGmz8cIJkqzj/XlsmIONPHR2IEW9k+vQVd7S68M1f+XQKdn5\nyPaUFCTuRZC46FpiBWWvNI7ATKv4c+AdgwFPHzojt9TSd05AQJjChYbIWh0FilX6\nOeB+4MoqHUx1W/R/40tjxX48Q1/OYU45S6PaqrLeOM99jmf2gW7R226sJK0DFO3S\nWVS5izHknfSdJouA9teJ8FYz9wJqLAymjgI/n4XLk+62/VdgtRDRU4gq7BtH+mb9\nlzRFvHZnq6EP1QgDOW55OhdXTqb9v4P3bM77Ez7qHQWKoZOoC0mYvXJff3SOzkOE\nTh80Z8v5rFX5xNw+zn0Ee+yr\n=SZFY\n-----END PGP PUBLIC KEY BLOCK-----\n"
      },
      {
        fingerprint: "5BE8A3F6C8A5C01D106C0AD820B1A390B168D356",
        armoredKey: "-----BEGIN PGP PUBLIC KEY BLOCK-----\n\nmDMEaGA63BYJKwYBBAHaRw8BAQdAo/yU+MutacFmmn0CEX495goNrBxR24235XLM\ncvHYjfq0L0FudG9pbmUgZHUgSGFtZWwgPGR1aGFtZWxhbnRvaW5lMTk5NUBnbWFp\nbC5jb20+iI4EExYKADYWIQRb6KP2yKXAHRBsCtggsaOQsWjTVgUCaGA63AIbAwQL\nCQgHBBUKCQgFFgIDAQACHgUCF4AACgkQILGjkLFo01afgwEA/sLHqsj7ml2vyDoT\nKDPE8n9a80ZOh14OfnlOe0cCZA8BAMEOOk7QFI69DIlV1nMiqcFCqQFoSzBU2LkI\nR17p/j4NtDNBbnRvaW5lIGR1IEhhbWVsIDxhbnRvaW5lLmR1aGFtZWxAcGxhdGZv\ncm1hdGljLmRldj6IjgQTFgoANhYhBFvoo/bIpcAdEGwK2CCxo5CxaNNWBQJpsCMx\nAhsDBAsJCAcEFQoJCAUWAgMBAAIeAQIXgAAKCRAgsaOQsWjTVr/sAPwIBsG8g6ND\nzoNRTX1wPKBvfZg1NP7tYCyM5sxQfrpuLAEA05AhG4xBILfhL/f0pqR5jXfxg6gz\nT6WfeVeS6zeHZwe4OARoYDrcEgorBgEEAZdVAQUBAQdAQVmtih8AO3ryBQMR/22x\nWHVKLjAbCiH2cMxNH+iy1RQDAQgHiHgEGBYKACAWIQRb6KP2yKXAHRBsCtggsaOQ\nsWjTVgUCaGA63AIbDAAKCRAgsaOQsWjTVu8oAP9Bc+QY+9FikX3YvMgWAqiDlVOy\no0y6UIZGBMSQlF80wAD/d34LqtVIVe9oe5NO3xA75+6Ew8tGeAjUq/ovagr5dAU=\n=JsVv\n-----END PGP PUBLIC KEY BLOCK-----\n"
      },
      {
        fingerprint: "655F3B5C1FB3FA8D1A0CA6BDE4A7D232B936D2FD",
        armoredKey: "-----BEGIN PGP PUBLIC KEY BLOCK-----\n\nmDMEakIjcxYJKwYBBAHaRw8BAQdAYRFWvBCAd9dDjKTePuAvvzAWxhvojAXco0m4\n2AMh/MC0H1N0ZXdhcnQgWCBBZGRpc29uIDxzeGFAaWJtLmNvbT6ImQQTFgoAQRYh\nBGVfO1wfs/qNGgymveSn0jK5NtL9BQJqQiNzAhsDBQkDwmcABQsJCAcCAiICBhUK\nCQgLAgQWAgMBAh4HAheAAAoJEOSn0jK5NtL9FOEBAMpIjknm4fnEQvTmIlzy0kDu\nVplF4HR78+lBef2i4590AP9i82wtP4pH1/vynoSBMkCauFIPmF1c9MYLFF0f53zq\nArg4BGpCI3MSCisGAQQBl1UBBQEBB0AVa1WJ4P8ir/M7NaCGrX7PDs0QU9qzpzme\na5TZ44b/YgMBCAeIfgQYFgoAJhYhBGVfO1wfs/qNGgymveSn0jK5NtL9BQJqQiNz\nAhsMBQkDwmcAAAoJEOSn0jK5NtL9EzYA/Arr4hbKLaU6OUjAVbH7HGLEl0HSvxE8\n5lEgWfuNbqOtAQCF9UT0wQEfiIj2R358Ce62zV43w2yaD8Xu0M/S+hz8AQ==\n=DcLq\n-----END PGP PUBLIC KEY BLOCK-----\n"
      }
    ];
  }
});

// ../crypto/shasums-file/lib/verifyNodeShasums.js
async function loadSigningKeyPackets(trustedKeys) {
  if (trustedKeys === NODE_RELEASE_KEYS) {
    bundledKeyPacketsPromise ??= readSigningKeyPackets(NODE_RELEASE_KEYS);
    return bundledKeyPacketsPromise;
  }
  return readSigningKeyPackets(trustedKeys);
}
async function readSigningKeyPackets(trustedKeys) {
  const keys4 = await Promise.all(trustedKeys.map(({ armoredKey }) => readKey2({ armoredKey })));
  return keys4.flatMap((key) => [key.keyPacket, ...key.subkeys.map((subkey) => subkey.keyPacket)]);
}
async function fetchVerifiedNodeShasums(fetch3, shasumsUrl, trustedKeys = NODE_RELEASE_KEYS) {
  const [shasumsBytes, signatureBytes] = await Promise.all([
    fetchBytes(fetch3, shasumsUrl, "SHASUMS256.txt"),
    fetchBytes(fetch3, `${shasumsUrl}.sig`, "SHASUMS256.txt.sig")
  ]);
  if (!await isSignedByTrustedKey(shasumsBytes, signatureBytes, trustedKeys)) {
    throw new PnpmError("NODE_SHASUMS_SIGNATURE_INVALID", `The OpenPGP signature of ${shasumsUrl} does not match any trusted Node.js release key. The downloaded Node.js runtime cannot be verified as a genuine release.`);
  }
  return Buffer.from(shasumsBytes).toString("utf8");
}
async function isSignedByTrustedKey(content, signatureBytes, trustedKeys) {
  let signature;
  let keyPackets;
  try {
    ;
    [signature, keyPackets] = await Promise.all([
      readSignature({ binarySignature: signatureBytes }),
      loadSigningKeyPackets(trustedKeys)
    ]);
  } catch (err2) {
    throw new PnpmError("NODE_SHASUMS_SIGNATURE_INVALID", `Could not read the Node.js SHASUMS signature: ${String(err2)}`);
  }
  const message = await createMessage({ binary: content });
  const literalDataPacket = message.packets[0];
  const perSignature = await Promise.all(signature.packets.map((signaturePacket) => signaturePacketVerifies(signaturePacket, keyPackets, literalDataPacket)));
  return perSignature.some(Boolean);
}
async function signaturePacketVerifies(signaturePacket, keyPackets, literalDataPacket) {
  const issuerKeyID = signaturePacket.issuerKeyID;
  if (issuerKeyID == null)
    return false;
  const keyPacket = keyPackets.find((packet) => packet.getKeyID().equals(issuerKeyID));
  if (keyPacket == null)
    return false;
  try {
    await signaturePacket.verify(keyPacket, signaturePacket.signatureType, literalDataPacket, signaturePacket.created ?? void 0, true);
    return true;
  } catch {
    return false;
  }
}
async function fetchBytes(fetch3, url7, what) {
  const res = await fetch3(url7);
  if (!res.ok) {
    throw new PnpmError("NODE_SHASUMS_FETCH_FAIL", `Failed to fetch ${what} (${url7}) to verify the Node.js download (status: ${res.status})`);
  }
  return new Uint8Array(await res.arrayBuffer());
}
var bundledKeyPacketsPromise;
var init_verifyNodeShasums = __esm({
  "../crypto/shasums-file/lib/verifyNodeShasums.js"() {
    "use strict";
    init_lib2();
    init_openpgp();
    init_nodeReleaseKeys();
  }
});

// ../crypto/shasums-file/lib/index.js
async function fetchShasumsFile(fetch3, shasumsUrl) {
  return parseShasumsFile(await fetchShasumsFileRaw(fetch3, shasumsUrl));
}
async function fetchVerifiedNodeShasumsFile(fetch3, shasumsUrl) {
  return parseShasumsFile(await fetchVerifiedNodeShasums(fetch3, shasumsUrl));
}
function parseShasumsFile(shasumsFileContent) {
  const lines = shasumsFileContent.split("\n");
  const items = [];
  for (const line of lines) {
    if (!line)
      continue;
    const [sha2562, fileName] = line.trim().split(/\s+/);
    items.push({
      integrity: `sha256-${Buffer.from(sha2562, "hex").toString("base64")}`,
      fileName
    });
  }
  return items;
}
async function fetchShasumsFileRaw(fetch3, shasumsUrl) {
  const res = await fetch3(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_lib45 = __esm({
  "../crypto/shasums-file/lib/index.js"() {
    "use strict";
    init_lib2();
    init_verifyNodeShasums();
  }
});

// ../engine/runtime/node-resolver/lib/normalizeArch.js
function getNormalizedArch(platform5, arch2, nodeVersion) {
  if (nodeVersion) {
    const nodeMajorVersion = +nodeVersion.split(".")[0];
    if (platform5 === "darwin" && arch2 === "arm64" && nodeMajorVersion < 16) {
      return "x64";
    }
  }
  if (platform5 === "win32" && arch2 === "ia32") {
    return "x86";
  }
  if (arch2 === "arm") {
    return "armv7l";
  }
  return arch2;
}
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: platform5, arch: arch2, libc }) {
  const isWindowsPlatform = platform5 === "win32";
  const normalizedPlatform = isWindowsPlatform ? "win" : platform5;
  const normalizedArch = getNormalizedArch(platform5, arch2, 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, opts3) {
  if (wantedDependency.alias !== "node" || !wantedDependency.bareSpecifier?.startsWith("runtime:"))
    return null;
  if (opts3?.currentPkg && !opts3.update) {
    return {
      id: opts3.currentPkg.id,
      resolution: opts3.currentPkg.resolution,
      resolvedVia: "nodejs.org"
    };
  }
  if (ctx.offline)
    throw new PnpmError("NO_OFFLINE_NODEJS_RESOLUTION", "Offline Node.js resolution is not supported");
  const versionSpec = normalizeRuntimeSpec(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, releaseChannel);
  const range = createNodeRuntimeVersionSpec(versionSpec, version2, wantedDependency);
  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 ? normalizeRuntimeSpec(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 } };
}
function createNodeRuntimeVersionSpec(versionSpec, resolvedVersion, wantedDependency) {
  if (resolvedVersion === versionSpec || import_semver16.default.parse(resolvedVersion)?.prerelease.length) {
    return resolvedVersion;
  }
  const source = wantedDependency.prevSpecifier?.startsWith("runtime:") ? wantedDependency.prevSpecifier.substring("runtime:".length) : versionSpec;
  const spec = source.includes("/") ? source.split("/", 2)[1] : source;
  if (spec.startsWith("^"))
    return `^${resolvedVersion}`;
  if (spec.startsWith("~"))
    return `~${resolvedVersion}`;
  return resolvedVersion;
}
async function readNodeAssets(fetch3, nodeMirrorBaseUrl, version2, releaseChannel) {
  const assets = await readNodeAssetsFromMirror(fetch3, { nodeMirrorBaseUrl, version: version2, muslOnly: false, verifySignature: releaseChannel === "release" });
  if (nodeMirrorBaseUrl === DEFAULT_NODE_MIRROR_BASE_URL) {
    try {
      const muslAssets = await readNodeAssetsFromMirror(fetch3, { nodeMirrorBaseUrl: UNOFFICIAL_NODE_MIRROR_BASE_URL, version: version2, muslOnly: true, verifySignature: false });
      assets.push(...muslAssets);
    } catch {
    }
  }
  return assets;
}
async function readNodeAssetsFromMirror(fetch3, opts3) {
  const { nodeMirrorBaseUrl, version: version2, muslOnly, verifySignature } = opts3;
  const integritiesFileUrl = `${nodeMirrorBaseUrl}v${version2}/SHASUMS256.txt`;
  const shasumsFileItems = verifySignature ? await fetchVerifiedNodeShasumsFile(fetch3, integritiesFileUrl) : await fetchShasumsFile(fetch3, 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 [, platform5, arch2, muslSuffix] = match;
    if (platform5 === "win") {
      platform5 = "win32";
    }
    const isMusl = muslSuffix != null;
    if (muslOnly && !isMusl)
      continue;
    const libc = isMusl ? "musl" : void 0;
    const address = getNodeArtifactAddress({
      version: version2,
      baseUrl: nodeMirrorBaseUrl,
      platform: platform5,
      arch: arch2,
      libc
    });
    const url7 = `${address.dirname}/${address.basename}${address.extname}`;
    const resolution = {
      type: "binary",
      archive: address.extname === ".zip" ? "zip" : "tarball",
      bin: getNodeBinsForCurrentOS(platform5),
      integrity,
      url: url7
    };
    if (resolution.archive === "zip") {
      resolution.prefix = address.basename;
    }
    const target2 = {
      os: platform5,
      cpu: arch2,
      ...libc != null && { libc }
    };
    assets.push({
      targets: [target2],
      resolution
    });
  }
  return assets;
}
async function resolveNodeVersion(fetch3, versionSpec, nodeMirrorBaseUrl) {
  const allVersions = await fetchAllVersions(fetch3, nodeMirrorBaseUrl);
  versionSpec = normalizeRuntimeSpec(versionSpec);
  if (versionSpec === "latest") {
    return allVersions[0].version;
  }
  const { versions, versionRange } = filterVersions(allVersions, versionSpec);
  return import_semver16.default.maxSatisfying(versions, versionRange, SEMVER_OPTS) ?? null;
}
async function resolveNodeVersions(fetch3, versionSpec, nodeMirrorBaseUrl) {
  const allVersions = await fetchAllVersions(fetch3, nodeMirrorBaseUrl);
  if (versionSpec == null) {
    return allVersions.map(({ version: version2 }) => version2);
  }
  versionSpec = normalizeRuntimeSpec(versionSpec);
  if (versionSpec === "latest") {
    return [allVersions[0].version];
  }
  const { versions, versionRange } = filterVersions(allVersions, versionSpec);
  return versions.filter((version2) => import_semver16.default.satisfies(version2, versionRange, SEMVER_OPTS));
}
function normalizeRuntimeSpec(versionSpec) {
  versionSpec = versionSpec.trim();
  return versionSpec === "" ? "latest" : versionSpec;
}
async function fetchAllVersions(fetch3, nodeMirrorBaseUrl) {
  const response = await fetch3(`${nodeMirrorBaseUrl ?? "https://nodejs.org/download/release/"}index.json`);
  return (await response.json()).map(({ version: version2, lts }) => ({
    version: version2.substring(1),
    lts
  }));
}
function getNodeBinsForCurrentOS(platform5 = process.platform) {
  if (platform5 === "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_semver16, import_version_selector_type3, DEFAULT_NODE_MIRROR_BASE_URL, UNOFFICIAL_NODE_MIRROR_BASE_URL, NODE_EXTRAS_IGNORE_PATTERN, SEMVER_OPTS;
var init_lib46 = __esm({
  "../engine/runtime/node-resolver/lib/index.js"() {
    "use strict";
    init_lib45();
    init_lib2();
    import_semver16 = __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
    };
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/adm-zip/0.6.0/b73dcba73c6138e78473794275eb2a3cf9dcc30013166515f2010a5d4f712975/node_modules/adm-zip/util/constants.js
var require_constants16 = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/adm-zip/0.6.0/b73dcba73c6138e78473794275eb2a3cf9dcc30013166515f2010a5d4f712975/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
    };
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/adm-zip/0.6.0/b73dcba73c6138e78473794275eb2a3cf9dcc30013166515f2010a5d4f712975/node_modules/adm-zip/util/errors.js
var require_errors5 = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/adm-zip/0.6.0/b73dcba73c6138e78473794275eb2a3cf9dcc30013166515f2010a5d4f712975/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]);
    }
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/adm-zip/0.6.0/b73dcba73c6138e78473794275eb2a3cf9dcc30013166515f2010a5d4f712975/node_modules/adm-zip/util/utils.js
var require_utils11 = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/adm-zip/0.6.0/b73dcba73c6138e78473794275eb2a3cf9dcc30013166515f2010a5d4f712975/node_modules/adm-zip/util/utils.js"(exports2, module2) {
    var fsystem = __require("fs");
    var pth = __require("path");
    var Constants = require_constants16();
    var Errors = require_errors5();
    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(opts3) {
      this.sep = pth.sep;
      this.fs = fsystem;
      if (is_Obj(opts3)) {
        if (is_Obj(opts3.fs) && typeof opts3.fs.statSync === "function") {
          this.fs = opts3.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(path240, content, overwrite2, attr) {
      const self2 = this;
      if (self2.fs.existsSync(path240)) {
        if (!overwrite2) return false;
        var stat2 = self2.fs.statSync(path240);
        if (stat2.isDirectory()) {
          return false;
        }
      }
      var folder = pth.dirname(path240);
      if (!self2.fs.existsSync(folder)) {
        self2.makeDir(folder);
      }
      var fd2;
      try {
        fd2 = self2.fs.openSync(path240, "w", 438);
      } catch (e) {
        self2.fs.chmodSync(path240, 438);
        fd2 = self2.fs.openSync(path240, "w", 438);
      }
      if (fd2) {
        try {
          self2.fs.writeSync(fd2, content, 0, content.length, 0);
        } finally {
          self2.fs.closeSync(fd2);
        }
      }
      self2.fs.chmodSync(path240, attr || 438);
      return true;
    };
    Utils.prototype.writeFileToAsync = function(path240, content, overwrite2, attr, callback2) {
      if (typeof attr === "function") {
        callback2 = attr;
        attr = void 0;
      }
      const self2 = this;
      self2.fs.exists(path240, function(exist) {
        if (exist && !overwrite2) return callback2(false);
        self2.fs.stat(path240, function(err2, stat2) {
          if (exist && stat2 && stat2.isDirectory()) {
            return callback2(false);
          }
          var folder = pth.dirname(path240);
          self2.fs.exists(folder, function(exists) {
            if (!exists) {
              try {
                self2.makeDir(folder);
              } catch (e) {
                return callback2(false);
              }
            }
            const writeToFd = function(fd2) {
              self2.fs.write(fd2, content, 0, content.length, 0, function(writeErr) {
                self2.fs.close(fd2, function() {
                  if (writeErr) return callback2(false);
                  self2.fs.chmod(path240, attr || 438, function() {
                    callback2(true);
                  });
                });
              });
            };
            self2.fs.open(path240, "w", 438, function(err3, fd2) {
              if (err3) {
                self2.fs.chmod(path240, 438, function() {
                  self2.fs.open(path240, "w", 438, function(retryErr, fd3) {
                    if (retryErr || !fd3) return callback2(false);
                    writeToFd(fd3);
                  });
                });
              } else if (fd2) {
                writeToFd(fd2);
              } else {
                callback2(false);
              }
            });
          });
        });
      });
    };
    Utils.prototype.findFiles = function(path240) {
      const self2 = this;
      function findSync(dir, pattern, recursive2, visited) {
        if (typeof pattern === "boolean") {
          recursive2 = pattern;
          pattern = void 0;
        }
        let files = [];
        self2.fs.readdirSync(dir).forEach(function(file) {
          const path241 = pth.join(dir, file);
          const stat2 = self2.fs.statSync(path241);
          if (!pattern || pattern.test(path241)) {
            files.push(pth.normalize(path241) + (stat2.isDirectory() ? self2.sep : ""));
          }
          if (stat2.isDirectory() && recursive2) {
            const realDir = self2.fs.realpathSync(path241);
            if (!visited.has(realDir)) {
              visited.add(realDir);
              files = files.concat(findSync(path241, pattern, recursive2, visited));
            }
          }
        });
        return files;
      }
      return findSync(path240, void 0, true, /* @__PURE__ */ new Set([self2.fs.realpathSync(path240)]));
    };
    Utils.prototype.findFilesAsync = function(dir, cb) {
      const self2 = this;
      const results = [];
      let finished7 = false;
      const finish = function(err2) {
        if (finished7) return;
        finished7 = true;
        cb(err2, err2 ? void 0 : results);
      };
      const walk = function(dir2, visited, done) {
        self2.fs.readdir(dir2, function(err2, list2) {
          if (err2) return done(err2);
          let pending = list2.length;
          if (!pending) return done();
          list2.forEach(function(name) {
            const file = pth.join(dir2, name);
            self2.fs.stat(file, function(err3, stat2) {
              if (err3) return done(err3);
              if (!stat2) {
                if (!--pending) done();
                return;
              }
              results.push(pth.normalize(file) + (stat2.isDirectory() ? self2.sep : ""));
              if (!stat2.isDirectory()) {
                if (!--pending) done();
                return;
              }
              self2.fs.realpath(file, function(err4, realDir) {
                if (err4) return done(err4);
                if (visited.has(realDir)) {
                  if (!--pending) done();
                  return;
                }
                visited.add(realDir);
                walk(file, visited, function(err5) {
                  if (err5) return done(err5);
                  if (!--pending) done();
                });
              });
            });
          });
        });
      };
      self2.fs.realpath(dir, function(err2, realDir) {
        if (err2) return finish(err2);
        walk(dir, /* @__PURE__ */ new Set([realDir]), finish);
      });
    };
    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(method2) {
      switch (method2) {
        case Constants.STORED:
          return "STORED (" + method2 + ")";
        case Constants.DEFLATED:
          return "DEFLATED (" + method2 + ")";
        default:
          return "UNSUPPORTED (" + method2 + ")";
      }
    };
    Utils.canonical = function(path240) {
      if (!path240) return "";
      const safeSuffix = pth.posix.normalize("/" + path240.split("\\").join("/"));
      return pth.join(".", safeSuffix);
    };
    Utils.zipnamefix = function(path240) {
      if (!path240) return "";
      const safeSuffix = pth.posix.normalize("/" + path240.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 i4 = len - 1; i4 >= 0; i4--) {
        if (callback2(arr[i4], i4, arr)) {
          return arr[i4];
        }
      }
      return void 0;
    };
    Utils.sanitize = function(prefix, name) {
      prefix = pth.resolve(pth.normalize(prefix));
      var parts = name.split("/");
      for (var i4 = 0, l = parts.length; i4 < l; i4++) {
        var path240 = pth.normalize(pth.join(prefix, parts.slice(i4, l).join(pth.sep)));
        if (path240 === prefix || path240.startsWith(prefix + pth.sep)) {
          return path240;
        }
      }
      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, index2) {
      const lo = buffer3.readUInt32LE(index2);
      const hi = buffer3.readUInt32LE(index2 + 4);
      return hi * 4294967296 + lo;
    };
    Utils.writeBigUInt64LE = function(buffer3, value, index2) {
      const lo = value >>> 0;
      const hi = Math.floor(value / 4294967296) >>> 0;
      buffer3.writeUInt32LE(lo, index2);
      buffer3.writeUInt32LE(hi, index2 + 4);
    };
    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;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/adm-zip/0.6.0/b73dcba73c6138e78473794275eb2a3cf9dcc30013166515f2010a5d4f712975/node_modules/adm-zip/util/fattr.js
var require_fattr = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/adm-zip/0.6.0/b73dcba73c6138e78473794275eb2a3cf9dcc30013166515f2010a5d4f712975/node_modules/adm-zip/util/fattr.js"(exports2, module2) {
    var pth = __require("path");
    module2.exports = function(path240, { fs: fs131 }) {
      var _path = path240 || "", _obj = newAttr(), _stat = null;
      function newAttr() {
        return {
          directory: false,
          readonly: false,
          hidden: false,
          executable: false,
          mtime: 0,
          atime: 0
        };
      }
      if (_path && fs131.existsSync(_path)) {
        _stat = fs131.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, "	");
        }
      };
    };
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/adm-zip/0.6.0/b73dcba73c6138e78473794275eb2a3cf9dcc30013166515f2010a5d4f712975/node_modules/adm-zip/util/decoder.js
var require_decoder = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/adm-zip/0.6.0/b73dcba73c6138e78473794275eb2a3cf9dcc30013166515f2010a5d4f712975/node_modules/adm-zip/util/decoder.js"(exports2, module2) {
    module2.exports = {
      efs: true,
      encode: (data) => Buffer.from(data, "utf8"),
      decode: (data) => data.toString("utf8")
    };
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/adm-zip/0.6.0/b73dcba73c6138e78473794275eb2a3cf9dcc30013166515f2010a5d4f712975/node_modules/adm-zip/util/index.js
var require_util10 = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/adm-zip/0.6.0/b73dcba73c6138e78473794275eb2a3cf9dcc30013166515f2010a5d4f712975/node_modules/adm-zip/util/index.js"(exports2, module2) {
    module2.exports = require_utils11();
    module2.exports.Constants = require_constants16();
    module2.exports.Errors = require_errors5();
    module2.exports.FileAttr = require_fattr();
    module2.exports.decoder = require_decoder();
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/adm-zip/0.6.0/b73dcba73c6138e78473794275eb2a3cf9dcc30013166515f2010a5d4f712975/node_modules/adm-zip/headers/entryHeader.js
var require_entryHeader = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/adm-zip/0.6.0/b73dcba73c6138e78473794275eb2a3cf9dcc30013166515f2010a5d4f712975/node_modules/adm-zip/headers/entryHeader.js"(exports2, module2) {
    var Utils = require_util10();
    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;
              break;
            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.FLG_DESC, 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.FLG_DESC, 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, "	");
        }
      };
    };
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/adm-zip/0.6.0/b73dcba73c6138e78473794275eb2a3cf9dcc30013166515f2010a5d4f712975/node_modules/adm-zip/headers/mainHeader.js
var require_mainHeader = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/adm-zip/0.6.0/b73dcba73c6138e78473794275eb2a3cf9dcc30013166515f2010a5d4f712975/node_modules/adm-zip/headers/mainHeader.js"(exports2, module2) {
    var Utils = require_util10();
    var Constants = Utils.Constants;
    module2.exports = function() {
      var _volumeEntries = 0, _totalEntries = 0, _size = 0, _offset = 0, _commentLength = 0;
      const needsZip64 = () => _volumeEntries > Constants.EF_ZIP64_OR_16 || _totalEntries > Constants.EF_ZIP64_OR_16 || _size > Constants.EF_ZIP64_OR_32 || _offset > Constants.EF_ZIP64_OR_32;
      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 (needsZip64() ? Constants.ZIP64HDR + Constants.END64HDR : 0) + 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.ZIP64SIZB);
            _offset = Utils.readBigUInt64LE(data, Constants.ZIP64OFF);
            _commentLength = 0;
          }
        },
        toBinary: function() {
          if (!needsZip64()) {
            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;
          }
          var b = Buffer.alloc(this.mainHeaderSize);
          let offset = 0;
          b.writeUInt32LE(Constants.ZIP64SIG, offset);
          Utils.writeBigUInt64LE(b, Constants.ZIP64HDR - Constants.ZIP64LEAD, offset + Constants.ZIP64SIZE);
          b.writeUInt16LE(45, offset + Constants.ZIP64VEM);
          b.writeUInt16LE(45, offset + Constants.ZIP64VER);
          b.writeUInt32LE(0, offset + Constants.ZIP64DSK);
          b.writeUInt32LE(0, offset + Constants.ZIP64DSKDIR);
          Utils.writeBigUInt64LE(b, _volumeEntries, offset + Constants.ZIP64SUB);
          Utils.writeBigUInt64LE(b, _totalEntries, offset + Constants.ZIP64TOT);
          Utils.writeBigUInt64LE(b, _size, offset + Constants.ZIP64SIZB);
          Utils.writeBigUInt64LE(b, _offset, offset + Constants.ZIP64OFF);
          const zip64EndOffset = _offset + _size;
          offset += Constants.ZIP64HDR;
          b.writeUInt32LE(Constants.END64SIG, offset);
          b.writeUInt32LE(0, offset + Constants.END64START);
          Utils.writeBigUInt64LE(b, zip64EndOffset, offset + Constants.END64OFF);
          b.writeUInt32LE(1, offset + Constants.END64NUMDISKS);
          offset += Constants.END64HDR;
          b.writeUInt32LE(Constants.ENDSIG, offset);
          b.writeUInt32LE(0, offset + 4);
          b.writeUInt16LE(Math.min(_volumeEntries, Constants.EF_ZIP64_OR_16), offset + Constants.ENDSUB);
          b.writeUInt16LE(Math.min(_totalEntries, Constants.EF_ZIP64_OR_16), offset + Constants.ENDTOT);
          b.writeUInt32LE(Math.min(_size, Constants.EF_ZIP64_OR_32), offset + Constants.ENDSIZ);
          b.writeUInt32LE(Math.min(_offset, Constants.EF_ZIP64_OR_32), offset + Constants.ENDOFF);
          b.writeUInt16LE(_commentLength, offset + Constants.ENDCOM);
          b.fill(" ", offset + 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, "	");
        }
      };
    };
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/adm-zip/0.6.0/b73dcba73c6138e78473794275eb2a3cf9dcc30013166515f2010a5d4f712975/node_modules/adm-zip/headers/index.js
var require_headers2 = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/adm-zip/0.6.0/b73dcba73c6138e78473794275eb2a3cf9dcc30013166515f2010a5d4f712975/node_modules/adm-zip/headers/index.js"(exports2) {
    exports2.EntryHeader = require_entryHeader();
    exports2.MainHeader = require_mainHeader();
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/adm-zip/0.6.0/b73dcba73c6138e78473794275eb2a3cf9dcc30013166515f2010a5d4f712975/node_modules/adm-zip/methods/deflater.js
var require_deflater = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/adm-zip/0.6.0/b73dcba73c6138e78473794275eb2a3cf9dcc30013166515f2010a5d4f712975/node_modules/adm-zip/methods/deflater.js"(exports2, module2) {
    module2.exports = function(inbuf) {
      var zlib2 = __require("zlib");
      var opts3 = { chunkSize: (parseInt(inbuf.length / 1024) + 1) * 1024 };
      return {
        deflate: function() {
          return zlib2.deflateRawSync(inbuf, opts3);
        },
        deflateAsync: function(callback2) {
          var tmp = zlib2.createDeflateRaw(opts3), 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 i4 = 0; i4 < parts.length; i4++) {
              var part = parts[i4];
              part.copy(buf, written);
              written += part.length;
            }
            callback2 && callback2(buf);
          });
          tmp.end(inbuf);
        }
      };
    };
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/adm-zip/0.6.0/b73dcba73c6138e78473794275eb2a3cf9dcc30013166515f2010a5d4f712975/node_modules/adm-zip/methods/inflater.js
var require_inflater = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/adm-zip/0.6.0/b73dcba73c6138e78473794275eb2a3cf9dcc30013166515f2010a5d4f712975/node_modules/adm-zip/methods/inflater.js"(exports2, module2) {
    var version2 = +(process?.versions?.node ?? "").split(".")[0] || 0;
    module2.exports = function(inbuf, expectedLength) {
      var zlib2 = __require("zlib");
      const option = version2 >= 15 && expectedLength > 0 ? { maxOutputLength: expectedLength } : {};
      return {
        inflate: function() {
          return zlib2.inflateRawSync(inbuf, option);
        },
        inflateAsync: function(callback2) {
          var tmp = zlib2.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 i4 = 0; i4 < parts.length; i4++) {
              var part = parts[i4];
              part.copy(buf, written);
              written += part.length;
            }
            callback2 && callback2(buf);
          });
          tmp.end(inbuf);
        }
      };
    };
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/adm-zip/0.6.0/b73dcba73c6138e78473794275eb2a3cf9dcc30013166515f2010a5d4f712975/node_modules/adm-zip/methods/zipcrypto.js
var require_zipcrypto = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/adm-zip/0.6.0/b73dcba73c6138e78473794275eb2a3cf9dcc30013166515f2010a5d4f712975/node_modules/adm-zip/methods/zipcrypto.js"(exports2, module2) {
    "use strict";
    var { randomFillSync } = __require("crypto");
    var Errors = require_errors5();
    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 i4 = 0; i4 < len; i4++) salt[i4] = Math.random() * 256 & 255;
      return salt;
    };
    var config2 = {
      genSalt
    };
    function Initkeys(pw) {
      const pass = Buffer.isBuffer(pw) ? pw : Buffer.from(pw);
      this.keys = new Uint32Array([305419896, 591751049, 878082192]);
      for (let i4 = 0; i4 < pass.length; i4++) {
        this.updateKeys(pass[i4]);
      }
    }
    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) {
        config2.genSalt = function() {
          return data.slice(0, 12);
        };
      } else if (data === "node") {
        config2.genSalt = genSalt.node;
      } else {
        config2.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 = config2.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 };
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/adm-zip/0.6.0/b73dcba73c6138e78473794275eb2a3cf9dcc30013166515f2010a5d4f712975/node_modules/adm-zip/methods/index.js
var require_methods = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/adm-zip/0.6.0/b73dcba73c6138e78473794275eb2a3cf9dcc30013166515f2010a5d4f712975/node_modules/adm-zip/methods/index.js"(exports2) {
    exports2.Deflater = require_deflater();
    exports2.Inflater = require_inflater();
    exports2.ZipCrypto = require_zipcrypto();
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/adm-zip/0.6.0/b73dcba73c6138e78473794275eb2a3cf9dcc30013166515f2010a5d4f712975/node_modules/adm-zip/zipEntry.js
var require_zipEntry = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/adm-zip/0.6.0/b73dcba73c6138e78473794275eb2a3cf9dcc30013166515f2010a5d4f712975/node_modules/adm-zip/zipEntry.js"(exports2, module2) {
    var Utils = require_util10();
    var Headers2 = require_headers2();
    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 opts3 = options;
      const decoder2 = typeof opts3.decoder === "object" ? opts3.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) {
        const expectedCrc = _centralHeader.flags_desc || _centralHeader.localHeader.flags_desc ? _centralHeader.crc : _centralHeader.localHeader.crc;
        return Utils.crc32(data) === expectedCrc;
      }
      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;
        switch (_centralHeader.method) {
          case Utils.Constants.STORED:
            data = Buffer.alloc(compressedData.length);
            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) {
              data = inflater.inflate();
              if (!crc32OK(data)) {
                throw Utils.Errors.BAD_CRC(`"${decoder2.decode(_entryName)}"`);
              }
              return data;
            } else {
              inflater.inflateAsync(function(result2) {
                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 compress2(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() {
          const n2 = decoder2.decode(_entryName);
          return _isDirectory ? n2.replace(/[/\\]$/, "").split("/").pop() : n2.split("/").pop();
        },
        get isDirectory() {
          return _isDirectory;
        },
        getCompressedData: function() {
          return compress2(false, null);
        },
        getCompressedDataAsync: function(callback2) {
          compress2(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, "	");
        }
      };
    };
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/adm-zip/0.6.0/b73dcba73c6138e78473794275eb2a3cf9dcc30013166515f2010a5d4f712975/node_modules/adm-zip/zipFile.js
var require_zipFile = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/adm-zip/0.6.0/b73dcba73c6138e78473794275eb2a3cf9dcc30013166515f2010a5d4f712975/node_modules/adm-zip/zipFile.js"(exports2, module2) {
    var ZipEntry = require_zipEntry();
    var Headers2 = require_headers2();
    var Utils = require_util10();
    module2.exports = function(inBuffer, options) {
      var entryList = [], entryTable = /* @__PURE__ */ Object.create(null), _comment = Buffer.alloc(0), mainHeader = new Headers2.MainHeader(), loadedEntries = false;
      var password = null;
      const temporary = /* @__PURE__ */ new Set();
      const opts3 = options;
      const { noSort, decoder: decoder2 } = opts3;
      if (inBuffer) {
        readMainHeader(opts3.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 i4 = 0; i4 < elements.length; i4++) {
            const sub = elements.slice(0, i4 + 1).join("/") + "/";
            foldersList.add(sub);
          }
        }
        for (const elem of foldersList) {
          if (!(elem in entryTable)) {
            const tempfolder = new ZipEntry(opts3);
            tempfolder.entryName = elem;
            tempfolder.attr = 16;
            tempfolder.temporary = true;
            entryList.push(tempfolder);
            entryTable[tempfolder.entryName] = tempfolder;
            temporary.add(tempfolder);
          }
        }
      }
      function readEntries() {
        loadedEntries = true;
        entryTable = /* @__PURE__ */ Object.create(null);
        if (mainHeader.diskEntries > (inBuffer.length - mainHeader.offset) / Utils.Constants.CENHDR) {
          throw Utils.Errors.DISK_ENTRY_TOO_LARGE();
        }
        entryList = new Array(mainHeader.diskEntries);
        var index2 = mainHeader.offset;
        for (var i4 = 0; i4 < entryList.length; i4++) {
          var tmp = index2, entry = new ZipEntry(opts3, 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);
          index2 += entry.header.centralHeaderSize;
          entryList[i4] = entry;
          entryTable[entry.entryName] = entry;
        }
        temporary.clear();
        makeTemporaryFolders();
      }
      function readMainHeader(readNow) {
        var i4 = inBuffer.length - Utils.Constants.ENDHDR, max4 = Math.max(0, i4 - 65535), n2 = max4, endStart = inBuffer.length, endOffset = -1, commentEnd = 0;
        const trailingSpace = typeof opts3.trailingSpace === "boolean" ? opts3.trailingSpace : false;
        if (trailingSpace) max4 = 0;
        for (i4; i4 >= n2; i4--) {
          if (inBuffer[i4] !== 80) continue;
          if (inBuffer.readUInt32LE(i4) === Utils.Constants.ENDSIG) {
            endOffset = i4;
            commentEnd = i4;
            endStart = i4 + Utils.Constants.ENDHDR;
            n2 = i4 - Utils.Constants.END64HDR;
            continue;
          }
          if (inBuffer.readUInt32LE(i4) === Utils.Constants.END64SIG) {
            n2 = max4;
            continue;
          }
          if (inBuffer.readUInt32LE(i4) === Utils.Constants.ZIP64SIG) {
            endOffset = i4;
            endStart = i4 + Utils.readBigUInt64LE(inBuffer, i4 + 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 sortEntries2() {
        if (entryList.length > 1 && !noSort) {
          entryList = entryList.map((entry) => ({ entry, key: entry.entryName.toLowerCase() })).sort((a2, b) => a2.key.localeCompare(b.key)).map((pair) => pair.entry);
        }
      }
      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 index2 = entryList.indexOf(entry);
          if (index2 >= 0) {
            entryList.splice(index2, 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();
          }
          sortEntries2();
          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, mh.length - _comment.length);
          }
          mh.copy(outBuffer, dindex);
          inBuffer = outBuffer;
          loadedEntries = false;
          return outBuffer;
        },
        toAsyncBuffer: function(onSuccess, onFail, onItemStart, onItemEnd) {
          try {
            if (!loadedEntries) {
              readEntries();
            }
            sortEntries2();
            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, mh.length - _comment.length);
                }
                mh.copy(outBuffer, dindex);
                inBuffer = outBuffer;
                loadedEntries = false;
                onSuccess(outBuffer);
              }
            };
            compress2Buffer(Array.from(this.entries));
          } catch (e) {
            onFail(e);
          }
        }
      };
    };
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/adm-zip/0.6.0/b73dcba73c6138e78473794275eb2a3cf9dcc30013166515f2010a5d4f712975/node_modules/adm-zip/adm-zip.js
var require_adm_zip = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/adm-zip/0.6.0/b73dcba73c6138e78473794275eb2a3cf9dcc30013166515f2010a5d4f712975/node_modules/adm-zip/adm-zip.js"(exports2, module2) {
    var Utils = require_util10();
    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 opts3 = Object.assign(/* @__PURE__ */ Object.create(null), defaultOptions4);
      if (input && "object" === typeof input) {
        if (!(input instanceof Uint8Array)) {
          Object.assign(opts3, input);
          input = opts3.input ? opts3.input : void 0;
          if (opts3.input) delete opts3.input;
        }
        if (Buffer.isBuffer(input)) {
          inBuffer = input;
          opts3.method = Utils.Constants.BUFFER;
          input = void 0;
        }
      }
      Object.assign(opts3, options);
      const filetools = new Utils(opts3);
      const applyDirAttributes = (dirEntries) => {
        dirEntries.filter((d3) => d3.attr).sort((a2, b) => b.path.length - a2.path.length).forEach((d3) => filetools.fs.chmodSync(d3.path, d3.attr));
      };
      if (typeof opts3.decoder !== "object" || typeof opts3.decoder.encode !== "function" || typeof opts3.decoder.decode !== "function") {
        opts3.decoder = Utils.decoder;
      }
      if (input && "string" === typeof input) {
        if (filetools.fs.existsSync(input)) {
          opts3.method = Utils.Constants.FILE;
          opts3.filename = input;
          inBuffer = filetools.fs.readFileSync(input);
        } else {
          throw Utils.Errors.INVALID_FILENAME();
        }
      }
      const _zip = new ZipFile(inBuffer, opts3);
      const { canonical, sanitize: sanitize2, 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: join5, normalize: normalize11, sep: sep2 } = pth.posix;
        return join5(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 relativePath2 = (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, err2) {
              if (err2) {
                callback2(data, err2);
                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
         * @param {boolean} withsubfolders
         * @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(localPath, zipPath, zipName, comment) {
          if (filetools.fs.existsSync(localPath)) {
            zipPath = zipPath ? fixPath(zipPath) : "";
            const p = pth.win32.basename(pth.win32.normalize(localPath));
            zipPath += zipName ? zipName : p;
            const _attr = filetools.fs.statSync(localPath);
            const data = _attr.isFile() ? filetools.fs.readFileSync(localPath) : Buffer.alloc(0);
            if (_attr.isDirectory()) zipPath += filetools.sep;
            this.addFile(zipPath, data, comment, _attr);
          } else {
            throw Utils.Errors.FILE_NOT_FOUND(localPath);
          }
        },
        /**
         * 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 localPath = pth.resolve(options2.localPath);
          const { comment } = options2;
          let { zipPath, zipName } = options2;
          const self2 = this;
          filetools.fs.stat(localPath, function(err2, stats) {
            if (err2) return callback2(err2, false);
            zipPath = zipPath ? fixPath(zipPath) : "";
            const p = pth.win32.basename(pth.win32.normalize(localPath));
            zipPath += zipName ? zipName : p;
            if (stats.isFile()) {
              filetools.fs.readFile(localPath, function(err3, data) {
                if (err3) return callback2(err3, 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(localPath, zipPath, filter14) {
          filter14 = filenameFilter(filter14);
          zipPath = zipPath ? fixPath(zipPath) : "";
          localPath = pth.normalize(localPath);
          if (filetools.fs.existsSync(localPath)) {
            const items = filetools.findFiles(localPath);
            const self2 = this;
            if (items.length) {
              for (const filepath of items) {
                const p = pth.join(zipPath, relativePath2(localPath, filepath));
                if (filter14(p)) {
                  self2.addLocalFile(filepath, pth.dirname(p));
                }
              }
            }
          } else {
            throw Utils.Errors.FILE_NOT_FOUND(localPath);
          }
        },
        /**
         * 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(localPath, callback2, zipPath, filter14) {
          filter14 = filenameFilter(filter14);
          zipPath = zipPath ? fixPath(zipPath) : "";
          localPath = pth.normalize(localPath);
          var self2 = this;
          filetools.fs.open(localPath, "r", function(err2) {
            if (err2 && err2.code === "ENOENT") {
              callback2(void 0, Utils.Errors.FILE_NOT_FOUND(localPath));
            } else if (err2) {
              callback2(void 0, err2);
            } else {
              var items = filetools.findFiles(localPath);
              var i4 = -1;
              var next2 = function() {
                i4 += 1;
                if (i4 < items.length) {
                  var filepath = items[i4];
                  var p = relativePath2(localPath, 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 };
          const 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(relativePath2(localPath, entry)));
          const fileNameFix = (entry) => pth.win32.basename(pth.win32.normalize(namefix(entry)));
          filetools.fs.open(localPath, "r", function(err2) {
            if (err2 && err2.code === "ENOENT") {
              callback2(void 0, Utils.Errors.FILE_NOT_FOUND(localPath));
            } else if (err2) {
              callback2(void 0, err2);
            } else {
              filetools.findFilesAsync(localPath, function(err3, fileEntries) {
                if (err3) return callback2(err3);
                fileEntries = fileEntries.filter((dir) => filter14(relPathFix(dir)));
                if (!fileEntries.length) callback2(void 0, false);
                setImmediate(
                  fileEntries.reverse().reduce(function(next2, entry) {
                    return function(err4, done) {
                      if (err4 || done === false) return setImmediate(next2, err4, 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(localPath, props3) {
          return new Promise((resolve4, reject3) => {
            this.addLocalFolderAsync2(Object.assign({ localPath }, props3), (err2, done) => {
              if (err2) reject3(err2);
              if (done) resolve4(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(opts3);
            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, overwrite2, keepOriginalPermission, outFileName) {
          overwrite2 = get_Bool(false, overwrite2);
          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 = sanitize2(targetPath, outFileName && !item.isDirectory ? canonical(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(maintainEntryPath ? child.entryName : child.entryName.substring(item.entryName.length));
              var childName = sanitize2(targetPath, name);
              const fileAttr2 = keepOriginalPermission ? child.header.fileAttr : void 0;
              filetools.writeFileTo(childName, content2, overwrite2, fileAttr2);
            });
            return true;
          }
          var content = item.getData(_zip.password);
          if (!content) throw Utils.Errors.CANT_EXTRACT_FILE();
          if (filetools.fs.existsSync(target2) && !overwrite2) {
            throw Utils.Errors.CANT_OVERRIDE();
          }
          const fileAttr = keepOriginalPermission ? entry.header.fileAttr : void 0;
          filetools.writeFileTo(target2, content, overwrite2, fileAttr);
          return true;
        },
        /**
         * Test the archive
         * @param {string} [pass]
         */
        test: function(pass) {
          if (!_zip) {
            return false;
          }
          for (var entry of _zip.entries) {
            try {
              if (entry.isDirectory) {
                continue;
              }
              var content = entry.getData(pass);
              if (!content) {
                return false;
              }
            } catch (err2) {
              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, overwrite2, keepOriginalPermission, pass) {
          keepOriginalPermission = get_Bool(false, keepOriginalPermission);
          pass = get_Str(keepOriginalPermission, pass);
          overwrite2 = get_Bool(false, overwrite2);
          if (!_zip) throw Utils.Errors.NO_ZIP();
          const dirEntries = [];
          _zip.entries.forEach(function(entry) {
            var entryName = sanitize2(targetPath, canonical(entry.entryName));
            if (entry.isDirectory) {
              filetools.makeDir(entryName);
              if (keepOriginalPermission) dirEntries.push({ path: entryName, attr: entry.header.fileAttr });
              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, overwrite2, fileAttr);
            try {
              filetools.fs.utimesSync(entryName, entry.header.time, entry.header.time);
            } catch (err2) {
            }
          });
          applyDirAttributes(dirEntries);
        },
        /**
         * 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, overwrite2, keepOriginalPermission, callback2) {
          callback2 = get_Fun(overwrite2, keepOriginalPermission, callback2);
          keepOriginalPermission = get_Bool(false, keepOriginalPermission);
          overwrite2 = get_Bool(false, overwrite2);
          if (!callback2) {
            return new Promise((resolve4, reject3) => {
              this.extractAllToAsync(targetPath, overwrite2, keepOriginalPermission, function(err2) {
                if (err2) {
                  reject3(err2);
                } else {
                  resolve4(this);
                }
              });
            });
          }
          if (!_zip) {
            callback2(Utils.Errors.NO_ZIP());
            return;
          }
          targetPath = pth.resolve(targetPath);
          const getPath2 = (entry) => sanitize2(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);
            }
          });
          const deferredDirAttr = [];
          for (const entry of dirEntries) {
            const dirPath = getPath2(entry);
            const dirAttr = keepOriginalPermission ? entry.header.fileAttr : void 0;
            try {
              filetools.makeDir(dirPath);
            } catch (er) {
              callback2(getError("Unable to create folder", dirPath));
              continue;
            }
            if (dirAttr) deferredDirAttr.push({ path: dirPath, attr: dirAttr });
            try {
              filetools.fs.utimesSync(dirPath, entry.header.time, entry.header.time);
            } catch (er) {
            }
          }
          const done = (err2) => {
            if (!err2) {
              try {
                applyDirAttributes(deferredDirAttr);
              } catch (er) {
                return callback2(getError("Unable to set folder permissions", er.path || ""));
              }
            }
            callback2(err2);
          };
          fileEntries.reverse().reduce(function(next2, entry) {
            return function(err2) {
              if (err2) {
                next2(err2);
              } else {
                const entryName = pth.normalize(canonical(entry.entryName));
                const filePath = sanitize2(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, overwrite2, fileAttr, function(succ) {
                      if (!succ) {
                        return next2(getError("Unable to write file", filePath));
                      }
                      filetools.fs.utimes(filePath, entry.header.time, entry.header.time, function() {
                        next2();
                      });
                    });
                  }
                });
              }
            };
          }, done)();
        },
        /**
         * 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 && opts3.filename) {
            targetFileName = opts3.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: overwrite2, perm } = Object.assign({ overwrite: true }, props3);
          return new Promise((resolve4, reject3) => {
            if (!targetFileName && opts3.filename) targetFileName = opts3.filename;
            if (!targetFileName) reject3("ADM-ZIP: ZIP File Name Missing");
            this.toBufferPromise().then((zipData) => {
              const ret2 = (done) => done ? resolve4(done) : reject3("ADM-ZIP: Wasn't able to write zip file");
              filetools.writeFileToAsync(targetFileName, zipData, overwrite2, perm, ret2);
            }, reject3);
          });
        },
        /**
         * @returns {Promise<Buffer>} A promise to the Buffer.
         */
        toBufferPromise: function() {
          return new Promise((resolve4, reject3) => {
            _zip.toAsyncBuffer(resolve4, 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();
        }
      };
    };
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/temp-dir/2.0.0/4198b35b752c049d4a3d393f440171b7cd6505e7cfe07700ea9fdea5db17538a/node_modules/temp-dir/index.js
var require_temp_dir = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/temp-dir/2.0.0/4198b35b752c049d4a3d393f440171b7cd6505e7cfe07700ea9fdea5db17538a/node_modules/temp-dir/index.js"(exports2, module2) {
    "use strict";
    var fs131 = __require("fs");
    var os20 = __require("os");
    var tempDirectorySymbol = /* @__PURE__ */ Symbol.for("__RESOLVED_TEMP_DIRECTORY__");
    if (!global[tempDirectorySymbol]) {
      Object.defineProperty(global, tempDirectorySymbol, {
        value: fs131.realpathSync(os20.tmpdir())
      });
    }
    module2.exports = global[tempDirectorySymbol];
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/is-stream/3.0.0/1172e239beab4f8075b8ee098e2c3ecfe5a0818d863da9dc4268b6563cc63496/node_modules/is-stream/index.js
var init_is_stream2 = __esm({
  "../../../../../setup-pnpm/store/v11/links/@/is-stream/3.0.0/1172e239beab4f8075b8ee098e2c3ecfe5a0818d863da9dc4268b6563cc63496/node_modules/is-stream/index.js"() {
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/tempy/3.0.0/3d67cef696bf4252940e546ecc39f835e45f7d4463663a59cd65519fd5d12c64/node_modules/tempy/index.js
import fs24 from "node:fs";
import path38 from "node:path";
import stream from "node:stream";
import { promisify as promisify13 } from "node:util";
function temporaryDirectory({ prefix = "" } = {}) {
  const directory = getPath(prefix);
  fs24.mkdirSync(directory);
  return directory;
}
var import_temp_dir, import_temp_dir2, pipeline, getPath;
var init_tempy = __esm({
  "../../../../../setup-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 = promisify13(stream.pipeline);
    getPath = (prefix = "") => path38.join(import_temp_dir.default, prefix + uniqueString());
  }
});

// ../fetching/binary-fetcher/lib/index.js
import fsPromises from "node:fs/promises";
import path39 from "node:path";
import util12 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 (err2) {
      const detail = util12.types.isNativeError(err2) ? `: ${err2.message}` : "";
      throw new PnpmError("INVALID_ARCHIVE_FILTER", `Invalid archive filter regex for "${name}"${detail}: ${pattern}`);
    }
  }
  const fetchBinary = async (cafs, resolution, opts3) => {
    if (ctx.offline) {
      throw new PnpmError("CANNOT_DOWNLOAD_BINARY_OFFLINE", `Cannot download binary "${resolution.url}" because offline mode is enabled.`);
    }
    const manifest = {
      name: opts3.pkg.name,
      version: opts3.pkg.version,
      bin: resolution.bin
    };
    const archiveFilter = opts3.pkg.name != null ? archiveFilters.get(opts3.pkg.name) : void 0;
    let fetchResult;
    switch (resolution.archive) {
      case "tarball": {
        fetchResult = await ctx.fetchFromRemoteTarball(cafs, {
          tarball: resolution.url,
          integrity: resolution.integrity
        }, {
          ...opts3,
          appendManifest: manifest,
          ignoreFilePattern: archiveFilter?.pattern ?? opts3.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: opts3.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 = path39.join(temporaryDirectory(), "pnpm.zip");
  try {
    await downloadWithIntegrityCheck(fetchFromRegistry, assetInfo, tmp);
    await extractZipToTarget(tmp, assetInfo.basename, targetDir, assetInfo.ignoreEntry);
  } finally {
    try {
      await fsPromises.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 (err2) {
    if (!(err2 instanceof Error) || !("expected" in err2) || !("found" in err2)) {
      throw err2;
    }
    throw new PnpmError("TARBALL_INTEGRITY", `Got unexpected checksum for "${url7}". Wanted "${err2.expected}". Got "${err2.found}".`);
  }
  await fsPromises.writeFile(tmpPath, data);
}
async function extractZipToTarget(zipPath, basename2, targetDir, ignoreEntry) {
  const zip = new import_adm_zip.default(zipPath);
  const nodeDir = basename2 === "" ? targetDir : path39.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 = path39.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 clone4 = new RegExp(regex2.source, safeFlags);
  return (input) => clone4.test(input);
}
function validatePathSecurity(basePath, targetPath) {
  if (path39.isAbsolute(targetPath)) {
    throw new PnpmError("PATH_TRAVERSAL", `Refusing to extract path "${targetPath}" - absolute paths are not allowed`);
  }
  const normalizedTarget = path39.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_lib47 = __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_lib18(), 1);
    init_tempy();
  }
});

// ../../../../../setup-pnpm/store/v11/links/@lazy-node/types-path/1.0.3/5b3236ffe4e645c8815128ca5ca39ed7883290536aa4e64064e2a7c00a2b2d36/node_modules/@lazy-node/types-path/index.js
var require_types_path = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@lazy-node/types-path/1.0.3/5b3236ffe4e645c8815128ca5ca39ed7883290536aa4e64064e2a7c00a2b2d36/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");
    }
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/upath2/3.1.23/d78683e1e704e2cad269ade12950ee543845eb4b58f4c5df63cdc2f69cc6846c/node_modules/upath2/lib/type.js
var require_type2 = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/upath2/3.1.23/d78683e1e704e2cad269ade12950ee543845eb4b58f4c5df63cdc2f69cc6846c/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;
    } });
  }
});

// ../../../../../setup-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({
  "../../../../../setup-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;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/path-strip-sep/1.0.21/49eea8ad5a5efd3cca1c3fe4f834c18b0c005d5b0dfebebda9f5626e36caaec1/node_modules/path-strip-sep/index.js
var require_path_strip_sep = __commonJS({
  "../../../../../setup-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;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/upath2/3.1.23/d78683e1e704e2cad269ade12950ee543845eb4b58f4c5df63cdc2f69cc6846c/node_modules/upath2/lib/util.js
var require_util11 = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/upath2/3.1.23/d78683e1e704e2cad269ade12950ee543845eb4b58f4c5df63cdc2f69cc6846c/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;
    }
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/upath2/3.1.23/d78683e1e704e2cad269ade12950ee543845eb4b58f4c5df63cdc2f69cc6846c/node_modules/upath2/lib/fix.js
var require_fix = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/upath2/3.1.23/d78683e1e704e2cad269ade12950ee543845eb4b58f4c5df63cdc2f69cc6846c/node_modules/upath2/lib/fix.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2._fix_special = _fix_special;
    function _fix_special(who, path240, returnOldIfNoPreset) {
      var _a2;
      let m;
      if ((_a2 = m = path240 === null || path240 === void 0 ? void 0 : path240.match(/^(\w+:)(?:\.[\/\\]?)?$/)) === null || _a2 === void 0 ? void 0 : _a2.length) {
        return m[1] + who.sep;
      } else if (returnOldIfNoPreset === true) {
        return path240;
      }
    }
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/upath2/3.1.23/d78683e1e704e2cad269ade12950ee543845eb4b58f4c5df63cdc2f69cc6846c/node_modules/upath2/core.js
var require_core4 = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/upath2/3.1.23/d78683e1e704e2cad269ade12950ee543845eb4b58f4c5df63cdc2f69cc6846c/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_util11();
    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(path240, id) {
        var _a2;
        this.sep = "/";
        this.node = path_1.default;
        let _static = (0, util_1.getStatic)(this);
        this.fn = (0, util_1.defaults)(this.__proto__, _static.fn, path240);
        this.delimiter = (_a2 = path240.delimiter) !== null && _a2 !== void 0 ? _a2 : _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: path240
        });
        this.fn[id] = this[id] = this;
        this.name = id;
      }
      /**
       * 連接多個路徑片段
       *
       * @template T 第一個路徑類型
       * @template U 後續路徑類型
       * @param {T} path 第一個路徑
       * @param {...U[]} paths 後續路徑
       * @returns {string} 連接後的路徑
       */
      join(path240, ...paths3) {
        path240 = (0, fix_1._fix_special)(this, path240, true);
        return (0, util_1._replace_sep)(this, _this_origin(this).join(path240, ...paths3));
      }
      /**
       * 規範化路徑
       *
       * @template T 路徑類型
       * @param {T} path 要規範化的路徑
       * @returns {string} 規範化後的路徑
       */
      normalize(path240) {
        let ret2 = (0, fix_1._fix_special)(this, path240);
        if (ret2 === null || ret2 === void 0 ? void 0 : ret2.length) {
          return ret2;
        }
        return (0, util_1._replace_sep)(this, _this_origin(this).normalize(path240));
      }
      /**
       * 計算相對路徑
       *
       * @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(path240, ...paths3) {
        path240 = (0, fix_1._fix_special)(this, path240, true);
        return (0, util_1._replace_sep)(this, _this_origin(this).resolve(path240, ...paths3));
      }
      /**
       * 解析路徑物件
       *
       * @template T 路徑類型
       * @param {T} path 要解析的路徑
       * @returns {ParsedPath} 解析後的路徑物件
       */
      parse(path240) {
        path240 = this.normalize(path240);
        let ret2 = _this_origin(this).parse(path240);
        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(path240, ext) {
        return _this_origin(this).basename(path240, ext);
      }
      /**
       * 獲取路徑的目錄部分
       *
       * @template T 路徑類型
       * @param {T} path 路徑
       * @returns {string} 目錄部分
       */
      dirname(path240) {
        let r;
        if (false) {
          if ((0, path_is_network_drive_1.matchNetworkDriveRoot)(path240)) {
            r = path240;
          } else {
            let m = (0, path_is_network_drive_1.matchNetworkDrive02)(path240);
            if (m === null || m === void 0 ? void 0 : m.length) {
              return `\\\\${m[1]}`;
            }
            r = _this_origin(this).dirname(path240);
          }
        } else {
          r = _this_origin(this).dirname(path240);
        }
        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(path240) {
        return _this_origin(this).extname(path240);
      }
      /**
       * 檢查路徑是否為絕對路徑
       *
       * @template T 路徑類型
       * @param {T} path 路徑
       * @returns {boolean} 是否為絕對路徑
       */
      isAbsolute(path240) {
        return _this_origin(this).isAbsolute(path240);
      }
      /**
       * 轉換為命名空間路徑
       *
       * @param {string} path 路徑
       * @returns {string} 命名空間路徑
       */
      toNamespacedPath(path240) {
        return _this_origin(this).toNamespacedPath(path240);
      }
    };
    exports2.PathWrap = PathWrap;
    (function(PathWrap2) {
      let __proto__ = {};
      for (let i4 in Object.getOwnPropertyDescriptors(PathWrap2.prototype)) {
        __proto__[i4] = PathWrap2.prototype[i4];
      }
      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`);
    }
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/upath2/3.1.23/d78683e1e704e2cad269ade12950ee543845eb4b58f4c5df63cdc2f69cc6846c/node_modules/upath2/lib/fs.js
var require_fs6 = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/upath2/3.1.23/d78683e1e704e2cad269ade12950ee543845eb4b58f4c5df63cdc2f69cc6846c/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;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/upath2/3.1.23/d78683e1e704e2cad269ade12950ee543845eb4b58f4c5df63cdc2f69cc6846c/node_modules/upath2/index.js
var require_upath2 = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/upath2/3.1.23/d78683e1e704e2cad269ade12950ee543845eb4b58f4c5df63cdc2f69cc6846c/node_modules/upath2/index.js"(exports2, module2) {
    "use strict";
    var core_1 = require_core4();
    require_fs6();
    module2.exports = core_1.upath;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/yocto-queue/0.1.0/4c43f079397c00ac34489fcc138889c92b389bfbfd9885817a164db2f94bca55/node_modules/yocto-queue/index.js
var require_yocto_queue = __commonJS({
  "../../../../../setup-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;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/p-limit/3.1.0/fa96fc3e665099292f8a1d3459fe28356450e99b29f7900cedee53902679fc6b/node_modules/p-limit/index.js
var require_p_limit = __commonJS({
  "../../../../../setup-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 pLimit2 = (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 run2 = async (fn, resolve4, ...args) => {
        activeCount++;
        const result2 = (async () => fn(...args))();
        resolve4(result2);
        try {
          await result2;
        } catch {
        }
        next2();
      };
      const enqueue = (fn, resolve4, ...args) => {
        queue2.enqueue(run2.bind(null, fn, resolve4, ...args));
        (async () => {
          await Promise.resolve();
          if (activeCount < concurrency && queue2.size > 0) {
            queue2.dequeue()();
          }
        })();
      };
      const generator = (fn, ...args) => new Promise((resolve4) => {
        enqueue(fn, resolve4, ...args);
      });
      Object.defineProperties(generator, {
        activeCount: {
          get: () => activeCount
        },
        pendingCount: {
          get: () => queue2.size
        },
        clearQueue: {
          value: () => {
            queue2.clear();
          }
        }
      });
      return generator;
    };
    module2.exports = pLimit2;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/p-locate/5.0.0/08fc2f1ccece64042b1517dfe3d1518af686d92175d00f96598ee32913c9a3d3/node_modules/p-locate/index.js
var require_p_locate = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/p-locate/5.0.0/08fc2f1ccece64042b1517dfe3d1518af686d92175d00f96598ee32913c9a3d3/node_modules/p-locate/index.js"(exports2, module2) {
    "use strict";
    var pLimit2 = require_p_limit();
    var EndError = class extends Error {
      constructor(value) {
        super();
        this.value = value;
      }
    };
    var testElement = async (element, tester) => tester(await element);
    var finder = async (element) => {
      const values = await Promise.all(element);
      if (values[1] === true) {
        throw new EndError(values[0]);
      }
      return false;
    };
    var pLocate = async (iterable, tester, options) => {
      options = {
        concurrency: Infinity,
        preserveOrder: true,
        ...options
      };
      const limit = pLimit2(options.concurrency);
      const items = [...iterable].map((element) => [element, limit(testElement, element, tester)]);
      const checkLimit = pLimit2(options.preserveOrder ? 1 : Infinity);
      try {
        await Promise.all(items.map((element) => checkLimit(finder, element)));
      } catch (error) {
        if (error instanceof EndError) {
          return error.value;
        }
        throw error;
      }
    };
    module2.exports = pLocate;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/locate-path/6.0.0/cfe3170135e7e8af5471ebdc6c4ca55d1bffa9650758890ca82965755749c031/node_modules/locate-path/index.js
var require_locate_path = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/locate-path/6.0.0/cfe3170135e7e8af5471ebdc6c4ca55d1bffa9650758890ca82965755749c031/node_modules/locate-path/index.js"(exports2, module2) {
    "use strict";
    var path240 = __require("path");
    var fs131 = __require("fs");
    var { promisify: promisify15 } = __require("util");
    var pLocate = require_p_locate();
    var fsStat = promisify15(fs131.stat);
    var fsLStat = promisify15(fs131.lstat);
    var typeMappings = {
      directory: "isDirectory",
      file: "isFile"
    };
    function checkType({ type: type4 }) {
      if (type4 in typeMappings) {
        return;
      }
      throw new Error(`Invalid type specified: ${type4}`);
    }
    var matchType = (type4, stat2) => type4 === void 0 || stat2[typeMappings[type4]]();
    module2.exports = async (paths3, options) => {
      options = {
        cwd: process.cwd(),
        type: "file",
        allowSymlinks: true,
        ...options
      };
      checkType(options);
      const statFn = options.allowSymlinks ? fsStat : fsLStat;
      return pLocate(paths3, async (path_) => {
        try {
          const stat2 = await statFn(path240.resolve(options.cwd, path_));
          return matchType(options.type, stat2);
        } catch {
          return false;
        }
      }, options);
    };
    module2.exports.sync = (paths3, options) => {
      options = {
        cwd: process.cwd(),
        allowSymlinks: true,
        type: "file",
        ...options
      };
      checkType(options);
      const statFn = options.allowSymlinks ? fs131.statSync : fs131.lstatSync;
      for (const path_ of paths3) {
        try {
          const stat2 = statFn(path240.resolve(options.cwd, path_));
          if (matchType(options.type, stat2)) {
            return path_;
          }
        } catch {
        }
      }
    };
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/path-exists/4.0.0/cac00b7570ea3af629ef9cea69fd59c8ad3d1562ec41ab0cf0ad193e511f229c/node_modules/path-exists/index.js
var require_path_exists2 = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/path-exists/4.0.0/cac00b7570ea3af629ef9cea69fd59c8ad3d1562ec41ab0cf0ad193e511f229c/node_modules/path-exists/index.js"(exports2, module2) {
    "use strict";
    var fs131 = __require("fs");
    var { promisify: promisify15 } = __require("util");
    var pAccess = promisify15(fs131.access);
    module2.exports = async (path240) => {
      try {
        await pAccess(path240);
        return true;
      } catch (_) {
        return false;
      }
    };
    module2.exports.sync = (path240) => {
      try {
        fs131.accessSync(path240);
        return true;
      } catch (_) {
        return false;
      }
    };
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/find-up/5.0.0/a6ffdd9962f1028194cab99ad8a1fad1c7ec80787c1db8993b79dd275223c7a0/node_modules/find-up/index.js
var require_find_up = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/find-up/5.0.0/a6ffdd9962f1028194cab99ad8a1fad1c7ec80787c1db8993b79dd275223c7a0/node_modules/find-up/index.js"(exports2, module2) {
    "use strict";
    var path240 = __require("path");
    var locatePath = require_locate_path();
    var pathExists3 = require_path_exists2();
    var stop = /* @__PURE__ */ Symbol("findUp.stop");
    module2.exports = async (name, options = {}) => {
      let directory = path240.resolve(options.cwd || "");
      const { root } = path240.parse(directory);
      const paths3 = [].concat(name);
      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;
      };
      while (true) {
        const foundPath = await runMatcher({ ...options, cwd: directory });
        if (foundPath === stop) {
          return;
        }
        if (foundPath) {
          return path240.resolve(directory, foundPath);
        }
        if (directory === root) {
          return;
        }
        directory = path240.dirname(directory);
      }
    };
    module2.exports.sync = (name, options = {}) => {
      let directory = path240.resolve(options.cwd || "");
      const { root } = path240.parse(directory);
      const paths3 = [].concat(name);
      const runMatcher = (locateOptions) => {
        if (typeof name !== "function") {
          return locatePath.sync(paths3, locateOptions);
        }
        const foundPath = name(locateOptions.cwd);
        if (typeof foundPath === "string") {
          return locatePath.sync([foundPath], locateOptions);
        }
        return foundPath;
      };
      while (true) {
        const foundPath = runMatcher({ ...options, cwd: directory });
        if (foundPath === stop) {
          return;
        }
        if (foundPath) {
          return path240.resolve(directory, foundPath);
        }
        if (directory === root) {
          return;
        }
        directory = path240.dirname(directory);
      }
    };
    module2.exports.exists = pathExists3;
    module2.exports.sync.exists = pathExists3.sync;
    module2.exports.stop = stop;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/pkg-dir/5.0.0/200336ca495d7cdcd39e85a5e9da0aedfb76c3467a5a3ddf94a77243abb27903/node_modules/pkg-dir/index.js
var require_pkg_dir = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/pkg-dir/5.0.0/200336ca495d7cdcd39e85a5e9da0aedfb76c3467a5a3ddf94a77243abb27903/node_modules/pkg-dir/index.js"(exports2, module2) {
    "use strict";
    var path240 = __require("path");
    var findUp2 = require_find_up();
    var pkgDir = async (cwd) => {
      const filePath = await findUp2("package.json", { cwd });
      return filePath && path240.dirname(filePath);
    };
    module2.exports = pkgDir;
    module2.exports.sync = (cwd) => {
      const filePath = findUp2.sync("package.json", { cwd });
      return filePath && path240.dirname(filePath);
    };
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/find-yarn-workspace-root2/1.2.53/021c7486c74bd46f7cd047ed4d2127f330b4c69168e6dd02b7c5f058f1653fec/node_modules/find-yarn-workspace-root2/core.js
var require_core5 = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/find-yarn-workspace-root2/1.2.53/021c7486c74bd46f7cd047ed4d2127f330b4c69168e6dd02b7c5f058f1653fec/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 relativePath2;
      if (workspaces) {
        done = true;
        relativePath2 = (0, upath2_1.relative)(current, initial);
        if (relativePath2 === "" || isMatchWorkspaces(relativePath2, workspaces)) {
          found = current;
        } else {
          found = null;
        }
      }
      return {
        done,
        found,
        relativePath: relativePath2
      };
    }
    function isMatchWorkspaces(relativePath2, workspaces) {
      let ls = (0, micromatch_12.default)([relativePath2], 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;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/find-yarn-workspace-root2/1.2.53/021c7486c74bd46f7cd047ed4d2127f330b4c69168e6dd02b7c5f058f1653fec/node_modules/find-yarn-workspace-root2/index.js
var require_find_yarn_workspace_root2 = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/find-yarn-workspace-root2/1.2.53/021c7486c74bd46f7cd047ed4d2127f330b4c69168e6dd02b7c5f058f1653fec/node_modules/find-yarn-workspace-root2/index.js"(exports2, module2) {
    "use strict";
    var core_1 = require_core5();
    module2.exports = core_1.findWorkspaceRoot;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/load-yaml-file/1.0.0/cb2737c0b3c43387fe3c9844350abfb5a1b98563755e03cc1a066161cbcfebdd/node_modules/load-yaml-file/index.js
function parse6(data) {
  return jsYaml.load(stripBom(data));
}
async function loadYamlFile(path240) {
  return parse6(await import_graceful_fs4.default.promises.readFile(path240, "utf8"));
}
var import_graceful_fs4;
var init_load_yaml_file = __esm({
  "../../../../../setup-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();
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/which-pm/4.0.0/27c3056bd68cd1568a134c7a4e55c24c1c93d5dc1273197b8d3589477d9a60d5/node_modules/which-pm/index.js
import path40 from "node:path";
import fs26 from "node:fs";
async function whichPM(pkgPath) {
  const modulesPath = path40.join(pkgPath, "node_modules");
  const exists = fs26.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 (err2) {
    if (err2.code !== "ENOENT") throw err2;
  }
  if (fs26.existsSync(path40.join(pkgPath, "bun.lockb"))) return { name: "bun" };
  const modulesExists = fs26.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({
  "../../../../../setup-pnpm/store/v11/links/@/which-pm/4.0.0/27c3056bd68cd1568a134c7a4e55c24c1c93d5dc1273197b8d3589477d9a60d5/node_modules/which-pm/index.js"() {
    init_load_yaml_file();
  }
});

// ../../../../../setup-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: () => findUp,
  findUpSync: () => findUpSync
});
import process18 from "node:process";
import fsPromises2 from "node:fs/promises";
import { fileURLToPath as fileURLToPath6 } from "node:url";
import fs27 from "node:fs";
import path41 from "node:path";
async function findUp(name, {
  cwd = process18.cwd(),
  type: type4 = "file",
  stopAt
} = {}) {
  let directory = path41.resolve(toPath2(cwd) ?? "");
  const { root } = path41.parse(directory);
  stopAt = path41.resolve(directory, toPath2(stopAt ?? root));
  const isAbsoluteName = path41.isAbsolute(name);
  while (directory) {
    const filePath = isAbsoluteName ? name : path41.join(directory, name);
    try {
      const stats = await fsPromises2.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 = process18.cwd(),
  type: type4 = "file",
  stopAt
} = {}) {
  let directory = path41.resolve(toPath2(cwd) ?? "");
  const { root } = path41.parse(directory);
  stopAt = path41.resolve(directory, toPath2(stopAt) ?? root);
  const isAbsoluteName = path41.isAbsolute(name);
  while (directory) {
    const filePath = isAbsoluteName ? name : path41.join(directory, name);
    try {
      const stats = fs27.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 toPath2;
var init_find_up_simple = __esm({
  "../../../../../setup-pnpm/store/v11/links/@/find-up-simple/1.0.1/62bcb40e509bff1d2c668288360dd2a2aac56ce918e0afa2fe7de56a6d707c7c/node_modules/find-up-simple/index.js"() {
    toPath2 = (urlOrPath) => urlOrPath instanceof URL ? fileURLToPath6(urlOrPath) : urlOrPath;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/preferred-pm/5.0.0/7e961bacabf083b1a87c8bc37019796643a53087beb3222507aa5aec4291c236/node_modules/preferred-pm/index.js
import fs28 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 (fs28.existsSync(path42.join(pkgPath, "package-lock.json"))) {
    return {
      name: "npm",
      version: ">=5"
    };
  }
  if (fs28.existsSync(path42.join(pkgPath, "yarn.lock"))) {
    return {
      name: "yarn",
      version: "*"
    };
  }
  if (fs28.existsSync(path42.join(pkgPath, "pnpm-lock.yaml"))) {
    return {
      name: "pnpm",
      version: ">=3"
    };
  }
  if (fs28.existsSync(path42.join(pkgPath, "shrinkwrap.yaml"))) {
    return {
      name: "pnpm",
      version: "1 || 2"
    };
  }
  if (fs28.existsSync(path42.join(pkgPath, "bun.lockb")) || fs28.existsSync(path42.join(pkgPath, "bun.lock"))) {
    return {
      name: "bun",
      version: "*"
    };
  }
  const { findUp: findUp2 } = await Promise.resolve().then(() => (init_find_up_simple(), find_up_simple_exports));
  if (await findUp2("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 (fs28.existsSync(path42.join(workspaceRoot, "package-lock.json"))) {
        return {
          name: "npm",
          version: ">=7"
        };
      }
      return {
        name: "yarn",
        version: "*"
      };
    }
  } catch (err2) {
  }
  const pm2 = await whichPM(pkgPath);
  return pm2 && { name: pm2.name, version: pm2.version || "*" };
}
var import_find_yarn_workspace_root2;
var init_preferred_pm = __esm({
  "../../../../../setup-pnpm/store/v11/links/@/preferred-pm/5.0.0/7e961bacabf083b1a87c8bc37019796643a53087beb3222507aa5aec4291c236/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 fs29 from "node:fs";
import path43 from "node:path";
import util13 from "node:util";
async function preparePackage(opts3, gitRootDir, subDir) {
  const pkgDir = safeJoinPath(gitRootDir, subDir);
  const manifest = await safeReadPackageJsonFromDir(pkgDir);
  if (manifest?.scripts == null || !packageShouldBeBuilt(manifest, pkgDir))
    return { shouldBeBuilt: false, pkgDir };
  if (opts3.ignoreScripts)
    return { shouldBeBuilt: true, pkgDir };
  const depPath = `${manifest.name}@${opts3.pkgResolutionId}`;
  if (!opts3.allowBuild?.(depPath)) {
    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:
  ${depPath}: 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(opts3.unsafePerm),
    userAgent: opts3.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 (err2) {
    assert3(util13.types.isNativeError(err2));
    Object.assign(err2, {
      code: "ERR_PNPM_PREPARE_PACKAGE"
    });
    throw err2;
  }
  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 !fs29.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 (!fs29.existsSync(joined) || !fs29.lstatSync(joined).isDirectory()) {
    throw new PnpmError("INVALID_PATH", `Path "${sub}" is not a directory`);
  }
  return joined;
}
var PREPUBLISH_SCRIPTS;
var init_lib48 = __esm({
  "../exec/prepare-package/lib/index.js"() {
    "use strict";
    init_lib2();
    init_lib21();
    init_lib5();
    init_rimraf();
    init_preferred_pm();
    PREPUBLISH_SCRIPTS = [
      "prepublish",
      "prepack",
      "publish"
    ];
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/retry/0.13.1/da3887dc7922b11021a709669c43b300202cf471fcfdc381dd497790db4447da/node_modules/retry/lib/retry_operation.js
var require_retry_operation2 = __commonJS({
  "../../../../../setup-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(err2) {
      if (this._timeout) {
        clearTimeout(this._timeout);
      }
      if (!err2) {
        return false;
      }
      var currentTime = (/* @__PURE__ */ new Date()).getTime();
      if (err2 && currentTime - this._operationStart >= this._maxRetryTime) {
        this._errors.push(err2);
        this._errors.unshift(new Error("RetryOperation timeout occurred"));
        return false;
      }
      this._errors.push(err2);
      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 i4 = 0; i4 < this._errors.length; i4++) {
        var error = this._errors[i4];
        var message = error.message;
        var count2 = (counts[message] || 0) + 1;
        counts[message] = count2;
        if (count2 >= mainErrorCount) {
          mainError = error;
          mainErrorCount = count2;
        }
      }
      return mainError;
    };
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/retry/0.13.1/da3887dc7922b11021a709669c43b300202cf471fcfdc381dd497790db4447da/node_modules/retry/lib/retry.js
var require_retry3 = __commonJS({
  "../../../../../setup-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 opts3 = {
        retries: 10,
        factor: 2,
        minTimeout: 1 * 1e3,
        maxTimeout: Infinity,
        randomize: false
      };
      for (var key in options) {
        opts3[key] = options[key];
      }
      if (opts3.minTimeout > opts3.maxTimeout) {
        throw new Error("minTimeout is greater than maxTimeout");
      }
      var timeouts = [];
      for (var i4 = 0; i4 < opts3.retries; i4++) {
        timeouts.push(this.createTimeout(i4, opts3));
      }
      if (options && options.forever && !timeouts.length) {
        timeouts.push(this.createTimeout(i4, opts3));
      }
      timeouts.sort(function(a2, b) {
        return a2 - b;
      });
      return timeouts;
    };
    exports2.createTimeout = function(attempt, opts3) {
      var random2 = opts3.randomize ? Math.random() + 1 : 1;
      var timeout = Math.round(random2 * Math.max(opts3.minTimeout, 1) * Math.pow(opts3.factor, attempt));
      timeout = Math.min(timeout, opts3.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 i4 = 0; i4 < methods.length; i4++) {
        var method2 = methods[i4];
        var original = obj[method2];
        obj[method2] = function retryWrapper(original2) {
          var op = exports2.operation(options);
          var args = Array.prototype.slice.call(arguments, 1);
          var callback2 = args.pop();
          args.push(function(err2) {
            if (op.retry(err2)) {
              return;
            }
            if (err2) {
              arguments[0] = op.mainError();
            }
            callback2.apply(this, arguments);
          });
          op.attempt(function() {
            original2.apply(obj, args);
          });
        }.bind(obj, original);
        obj[method2].options = options;
      }
    };
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/retry/0.13.1/da3887dc7922b11021a709669c43b300202cf471fcfdc381dd497790db4447da/node_modules/retry/index.js
var require_retry4 = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/retry/0.13.1/da3887dc7922b11021a709669c43b300202cf471fcfdc381dd497790db4447da/node_modules/retry/index.js"(exports2, module2) {
    module2.exports = require_retry3();
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/graceful-git/5.0.0/38cf8df4e664cad6304c1529790e1880dba612ca1019f4310612c66cbd466431/node_modules/graceful-git/index.js
async function gracefulGit(args, opts3) {
  opts3 = opts3 || {};
  const operation5 = import_retry2.default.operation(Object.assign({}, RETRY_OPTIONS, opts3));
  return new Promise((resolve4, reject3) => {
    operation5.attempt((currentAttempt) => {
      noRetry(args, opts3).then(resolve4).catch((err2) => {
        if (operation5.retry(err2)) {
          return;
        }
        reject3(operation5.mainError());
      });
    });
  });
}
async function noRetry(args, opts3) {
  opts3 = opts3 || {};
  return safeExeca("git", args, { cwd: opts3.cwd || process.cwd() });
}
var import_retry2, RETRY_OPTIONS;
var init_graceful_git = __esm({
  "../../../../../setup-pnpm/store/v11/links/@/graceful-git/5.0.0/38cf8df4e664cad6304c1529790e1880dba612ca1019f4310612c66cbd466431/node_modules/graceful-git/index.js"() {
    init_lib25();
    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: path240 }) {
  const normalizedRepo = normalizeGitRepoForPkgResolutionId(repo);
  let id = `${normalizedRepo.includes("://") ? "" : "https://"}${normalizedRepo}#${commit}`;
  if (!id.startsWith("git+"))
    id = `git+${id}`;
  if (path240) {
    id += `&path:${path240}`;
  }
  return id;
}
function normalizeGitRepoForPkgResolutionId(repo) {
  if (repo.includes("://"))
    return repo;
  const scp = /^([^@\s]+@[^:\s]+):(.+)$/.exec(repo);
  return scp == null ? repo : `ssh://${scp[1]}/${scp[2]}`;
}
var init_createGitHostedPkgId = __esm({
  "../resolving/git-resolver/lib/createGitHostedPkgId.js"() {
    "use strict";
  }
});

// ../../../../../setup-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({
  "../../../../../setup-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: path240, fragment, hashformat }) => `https://${domain}/${user}/${project}/${treepath}/${maybeEncode(committish || "master")}/${path240}${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: path240 }) => `https://${domain}/${user}/${project}/raw/${maybeEncode(committish) || "master"}/${path240}`,
      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: path240 }) => `https://${maybeJoin(auth, "@")}raw.githubusercontent.com/${user}/${project}/${maybeEncode(committish) || "master"}/${path240}`,
      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 path240 = url7.pathname.slice(1);
        if (path240.includes("/-/") || path240.includes("/archive.tar.gz")) {
          return;
        }
        const segments = path240.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: path240, hashformat }) => `https://${domain}/${project}${maybeJoin("/", maybeEncode(committish))}${maybeJoin("#", hashformat(path240))}`,
      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: path240 }) => `https://gist.githubusercontent.com/${user}/${project}/raw${maybeJoin("/", maybeEncode(committish))}/${path240}`,
      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;
  }
});

// ../../../../../setup-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({
  "../../../../../setup-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, opts3 = {}) {
        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 = opts3;
      }
      hash() {
        return this.committish ? `#${this.committish}` : "";
      }
      ssh(opts3) {
        return this._fill(this.sshtemplate, opts3);
      }
      _fill(template, opts3) {
        if (typeof template === "function") {
          const options = { ...this, ...this.opts, ...opts3 };
          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(opts3) {
        return this._fill(this.sshurltemplate, opts3);
      }
      browse(path240, fragment, opts3) {
        if (typeof path240 !== "string") {
          return this._fill(this.browsetemplate, path240);
        }
        if (typeof fragment !== "string") {
          opts3 = fragment;
          fragment = null;
        }
        return this._fill(this.browsefiletemplate, { ...opts3, fragment, path: path240 });
      }
      docs(opts3) {
        return this._fill(this.docstemplate, opts3);
      }
      bugs(opts3) {
        return this._fill(this.bugstemplate, opts3);
      }
      https(opts3) {
        return this._fill(this.httpstemplate, opts3);
      }
      git(opts3) {
        return this._fill(this.gittemplate, opts3);
      }
      shortcut(opts3) {
        return this._fill(this.shortcuttemplate, opts3);
      }
      path(opts3) {
        return this._fill(this.pathtemplate, opts3);
      }
      tarball(opts3) {
        return this._fill(this.tarballtemplate, { ...opts3, noCommittish: false });
      }
      file(path240, opts3) {
        return this._fill(this.filetemplate, { ...opts3, path: path240 });
      }
      getDefaultRepresentation() {
        return this.default;
      }
      toString(opts3) {
        if (this.default && typeof this[this.default] === "function") {
          return this[this.default](opts3);
        }
        return this.sshurl(opts3);
      }
    };
    module2.exports = GitHost;
  }
});

// ../../../../../setup-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({
  "../../../../../setup-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, opts3) {
      if (typeof giturl !== "string") {
        return;
      }
      const key = giturl + JSON.stringify(opts3 || {});
      if (!cache.has(key)) {
        cache.set(key, fromUrl(giturl, opts3));
      }
      return cache.get(key);
    };
    function fromUrl(giturl, opts3) {
      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 (err2) {
        if (err2 instanceof URIError) {
          return;
        } else {
          throw err2;
        }
      }
      return new GitHost(gitHostName, user, auth, project, committish, defaultRepresentation, opts3);
    }
    var correctProtocol = (arg) => {
      const firstColon = arg.indexOf(":");
      const proto3 = arg.slice(0, firstColon + 1);
      if (knownProtocols.includes(proto3)) {
        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 (err2) {
      }
      if (result2) {
        return result2;
      }
      const correctedUrl = correctUrl2(giturl);
      try {
        result2 = new url7.URL(correctedUrl);
      } catch (err2) {
      }
      return result2;
    };
  }
});

// ../resolving/git-resolver/lib/parseBareSpecifier.js
import urlLib, { URL as URL4 } from "node:url";
function parseBareSpecifier2(bareSpecifier, opts3) {
  const hosted = import_hosted_git_info.default.fromUrl(bareSpecifier);
  if (hosted != null) {
    return () => fromHostedGit(hosted, opts3);
  }
  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 URL4(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_lib23();
    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(opts3) {
  return async function resolveGit(wantedDependency, resolveOpts) {
    const parsedSpecFunc = parseBareSpecifier2(wantedDependency.bareSpecifier, opts3);
    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("	");
    if (commit && refName)
      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_lib49 = __esm({
  "../resolving/git-resolver/lib/index.js"() {
    "use strict";
    init_lib2();
    init_graceful_git();
    import_semver17 = __toESM(require_semver2(), 1);
    init_createGitHostedPkgId();
    init_parseBareSpecifier2();
  }
});

// ../fetching/git-fetcher/lib/index.js
import assert4 from "node:assert";
import path44 from "node:path";
import { URL as URL5 } from "node:url";
import util14 from "node:util";
function createGitFetcher(createOpts) {
  const allowedHosts = new Set(createOpts?.gitShallowHosts ?? []);
  const ignoreScripts = createOpts.ignoreScripts ?? false;
  const gitFetcher = async (cafs, resolution, opts3) => {
    if (!isValidCommitHash(resolution.commit)) {
      throw new PnpmError("INVALID_GIT_COMMIT", `Invalid git commit hash "${resolution.commit}" for repository "${resolution.repo}". Expected a 40-character hexadecimal SHA.`);
    }
    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: opts3.allowBuild,
        ignoreScripts: createOpts.ignoreScripts,
        pkgResolutionId: createGitHostedPkgId(resolution),
        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 (err2) {
      assert4(util14.types.isNativeError(err2));
      err2.message = `Failed to prepare git-hosted package fetched from "${resolution.repo}": ${err2.message}`;
      throw err2;
    }
    await rimraf(path44.join(tempLocation, ".git"));
    const files = await packlist(pkgDir);
    return addFilesFromDir({
      storeDir: cafs.storeDir,
      storeIndex: createOpts.storeIndex,
      dir: pkgDir,
      files,
      filesIndexFile: opts3.filesIndexFile,
      readManifest: opts3.readManifest,
      pkg: opts3.pkg
    });
  };
  return {
    git: gitFetcher
  };
}
function isValidCommitHash(commit) {
  return /^[0-9a-f]{40}$/i.test(commit);
}
function shouldUseShallow(repoUrl, allowedHosts) {
  try {
    const { host } = new URL5(repoUrl);
    if (allowedHosts.has(host)) {
      return true;
    }
  } catch {
  }
  return false;
}
function prefixGitArgs() {
  return process.platform === "win32" ? ["-c", "core.longpaths=true"] : [];
}
async function execGit(args, opts3) {
  const fullArgs = prefixGitArgs().concat(args || []);
  const { stdout } = await safeExeca("git", fullArgs, opts3);
  return stdout;
}
var init_lib50 = __esm({
  "../fetching/git-fetcher/lib/index.js"() {
    "use strict";
    init_lib2();
    init_lib48();
    init_lib18();
    init_lib3();
    init_lib49();
    init_lib4();
    init_rimraf();
    init_lib25();
  }
});

// ../fetching/tarball-fetcher/lib/gitHostedTarballFetcher.js
import assert5 from "node:assert";
import util15 from "node:util";
function createGitHostedTarballFetcher(fetchRemoteTarball, fetcherOpts) {
  const fetch3 = async (cafs, resolution, opts3) => {
    const rawFilesIndexFile = `${opts3.filesIndexFile}	raw`;
    const { filesMap, manifest, requiresBuild, integrity } = await fetchRemoteTarball(cafs, resolution, {
      ...opts3,
      filesIndexFile: rawFilesIndexFile
    });
    fetcherOpts.storeIndex.flush();
    try {
      const prepareResult = await prepareGitHostedPkg(filesMap, cafs, rawFilesIndexFile, opts3.filesIndexFile, fetcherOpts, opts3, 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 (err2) {
      assert5(util15.types.isNativeError(err2));
      err2.message = `Failed to prepare git-hosted package fetched from "${resolution.tarball}": ${err2.message}`;
      throw err2;
    }
  };
  return fetch3;
}
async function prepareGitHostedPkg(filesMap, cafs, rawFilesIndexFile, filesIndexFile, opts3, fetcherOpts, resolution) {
  const tempLocation = await cafs.tempDir();
  cafs.importPackage(tempLocation, {
    filesResponse: {
      filesMap,
      resolvedFrom: "remote",
      requiresBuild: false
    },
    force: true
  });
  const { shouldBeBuilt, pkgDir } = await preparePackage({
    ...opts3,
    allowBuild: fetcherOpts.allowBuild,
    pkgResolutionId: createGitHostedTarballPkgResolutionId(resolution)
  }, tempLocation, resolution.path ?? "");
  const files = await packlist(pkgDir);
  const { storeIndex } = opts3;
  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 (opts3.ignoreScripts) {
      storeIndex.delete(rawFilesIndexFile);
      return {
        filesMap,
        ignoredBuild: true
      };
    }
  }
  storeIndex.delete(rawFilesIndexFile);
  return {
    ...await addFilesFromDir({
      storeDir: cafs.storeDir,
      storeIndex: opts3.storeIndex,
      dir: pkgDir,
      files,
      filesIndexFile,
      pkg: fetcherOpts.pkg,
      readManifest: fetcherOpts.readManifest
    }),
    ignoredBuild: Boolean(opts3.ignoreScripts)
  };
}
function createGitHostedTarballPkgResolutionId(resolution) {
  let pkgResolutionId = resolution.tarball;
  if (resolution.path) {
    pkgResolutionId += `#path:${resolution.path}`;
  }
  return pkgResolutionId;
}
var init_gitHostedTarballFetcher = __esm({
  "../fetching/tarball-fetcher/lib/gitHostedTarballFetcher.js"() {
    "use strict";
    init_lib48();
    init_lib18();
    init_lib3();
    init_lib4();
  }
});

// ../fetching/tarball-fetcher/lib/localTarballFetcher.js
import path45 from "node:path";
function createLocalTarballFetcher(storeIndex) {
  const fetch3 = (cafs, resolution, opts3) => {
    const tarball = resolvePath(opts3.lockfileDir, resolution.tarball.slice(5));
    const buffer3 = lib_default.readFileSync(tarball);
    return addFilesFromTarball({
      storeDir: cafs.storeDir,
      storeIndex,
      buffer: buffer3,
      filesIndexFile: opts3.filesIndexFile,
      integrity: resolution.integrity,
      readManifest: opts3.readManifest,
      url: tarball,
      pkg: opts3.pkg,
      appendManifest: opts3.appendManifest,
      ignoreFilePattern: opts3.ignoreFilePattern
    });
  };
  return fetch3;
}
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_lib14();
    init_lib4();
    isAbsolutePath = /^\/|^[A-Z]:/i;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/lodash.throttle/4.1.1/e8d70d06aacdab4c5ae4b206f2a419585999a791c84c119e8934d8ecb21e5859/node_modules/lodash.throttle/index.js
var require_lodash = __commonJS({
  "../../../../../setup-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 cancel2() {
        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 = cancel2;
      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(opts3) {
        const message = `Actual size (${opts3.receivedSize}) of tarball (${opts3.tarballUrl}) did not match the one specified in 'Content-Length' header (${opts3.expectedSize})`;
        super("BAD_TARBALL_SIZE", message, {
          attempts: opts3?.attempts
        });
        this.expectedSize = opts3.expectedSize;
        this.receivedSize = opts3.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 util16 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, opts3) {
    const authHeaderValue = opts3.getAuthHeaderByURI(url7, { pkgName: opts3.pkg?.name });
    const op = retry4.operation(retryOpts);
    return new Promise((resolve4, reject3) => {
      op.attempt(async (attempt) => {
        try {
          resolve4(await fetch3(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 fetch3(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 (opts3.onStart != null) {
          opts3.onStart(size, currentAttempt);
        }
        const onProgress = size != null && size >= BIG_TARBALL_SIZE && opts3.onProgress ? (0, import_lodash.default)(opts3.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 (err2) {
        const error = util16.types.isNativeError(err2) ? err2 : new Error(String(err2), { cause: err2 });
        Object.assign(error, {
          attempts: currentAttempt,
          resource: url7
        });
        throw error;
      }
      return addFilesFromTarball({
        buffer: data,
        storeDir: opts3.cafs.storeDir,
        storeIndex: opts3.storeIndex,
        readManifest: opts3.readManifest,
        integrity: opts3.integrity,
        filesIndexFile: opts3.filesIndexFile,
        url: url7,
        pkg: opts3.pkg,
        appendManifest: opts3.appendManifest,
        ignoreFilePattern: opts3.ignoreFilePattern
      });
    }
  };
}
function isContentEncoded(header) {
  if (header == null)
    return false;
  return header.split(",").map((coding) => coding.trim().toLowerCase()).some((coding) => coding !== "" && coding !== "identity");
}
var retry4, 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();
    retry4 = __toESM(require_retry2(), 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, opts3) {
  const download = createDownloader(fetchFromRegistry, {
    retry: opts3.retry,
    timeout: opts3.timeout,
    fetchMinSpeedKiBps: opts3.fetchMinSpeedKiBps
  });
  const remoteTarballFetcher = fetchFromTarball.bind(null, {
    download,
    getAuthHeaderByURI: getAuthHeader,
    offline: opts3.offline,
    storeIndex: opts3.storeIndex
  });
  remoteTarballFetcher.resolutionNeedsFetch = (resolution) => {
    return getExpectedIntegrity(resolution) == null;
  };
  return {
    localTarball: createLocalTarballFetcher(opts3.storeIndex),
    remoteTarball: remoteTarballFetcher,
    gitHostedTarball: createGitHostedTarballFetcher(remoteTarballFetcher, opts3)
  };
}
async function fetchFromTarball(ctx, cafs, resolution, opts3) {
  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: getExpectedIntegrity(resolution),
    readManifest: opts3.readManifest,
    onProgress: opts3.onProgress,
    onStart: opts3.onStart,
    registry: resolution.registry,
    filesIndexFile: opts3.filesIndexFile,
    pkg: opts3.pkg,
    appendManifest: opts3.appendManifest,
    ignoreFilePattern: opts3.ignoreFilePattern
  });
}
function getExpectedIntegrity(resolution) {
  const integrity = resolution.integrity;
  return typeof integrity === "string" && integrity.length > 0 ? integrity : void 0;
}
var init_lib51 = __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();
  }
});

// ../network/auth-header/lib/getAuthHeadersFromConfig.js
import { spawnSync as spawnSync2 } from "node:child_process";
function getAuthHeadersFromCreds(configByUri) {
  const authHeaders = {
    authHeaderValueByURI: {},
    scopedAuthHeaderValueByURI: {}
  };
  for (const [uri, registryConfig] of Object.entries(configByUri)) {
    const normalizedUri = normalizeAuthKey(uri);
    const header = credsToHeader(registryConfig[DEFAULT_REGISTRY_SCOPE]);
    if (header) {
      authHeaders.authHeaderValueByURI[normalizedUri] = header;
    }
    for (const scope of getRegistryScopes(registryConfig)) {
      if (scope === DEFAULT_REGISTRY_SCOPE)
        continue;
      const scopedCreds = registryConfig[scope];
      const scopedHeader = credsToHeader(scopedCreds);
      if (scopedHeader) {
        authHeaders.scopedAuthHeaderValueByURI[normalizedUri] ??= {};
        authHeaders.scopedAuthHeaderValueByURI[normalizedUri][scope] = scopedHeader;
      }
    }
  }
  return authHeaders;
}
function getAuthHeadersByScope(authHeaders) {
  const result2 = {};
  for (const [registryURI, authHeader] of Object.entries(authHeaders.authHeaderValueByURI)) {
    result2[registryURI] ??= {};
    result2[registryURI][DEFAULT_REGISTRY_SCOPE] = authHeader;
  }
  for (const [registryURI, scopedAuthHeaders] of Object.entries(authHeaders.scopedAuthHeaderValueByURI)) {
    result2[registryURI] ??= {};
    for (const [scope, authHeader] of Object.entries(scopedAuthHeaders)) {
      result2[registryURI][scope] = authHeader;
    }
  }
  return result2;
}
function getRegistryScopes(registryConfig) {
  return Object.keys(registryConfig).filter((scope) => scope.startsWith("@"));
}
function normalizeAuthKey(uri) {
  if (!uri)
    return uri;
  return uri.endsWith("/") ? uri : `${uri}/`;
}
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, timeoutMs = TOKEN_HELPER_TIMEOUT) {
  const [cmd, ...args] = tokenHelper;
  const shell = process.platform === "win32" && /\.(?:bat|cmd)$/i.test(cmd);
  const spawnResult = spawnSync2(cmd, args, { stdio: "pipe", shell, timeout: timeoutMs });
  if (spawnResult.error != null && spawnResult.error.code === "ETIMEDOUT") {
    throw new PnpmError("TOKEN_HELPER_TIMEOUT", `Token helper "${cmd}" timed out after ${timeoutMs} ms`);
  }
  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 TOKEN_HELPER_TIMEOUT;
var init_getAuthHeadersFromConfig = __esm({
  "../network/auth-header/lib/getAuthHeadersFromConfig.js"() {
    "use strict";
    init_lib2();
    init_lib9();
    TOKEN_HELPER_TIMEOUT = 6e4;
  }
});

// ../network/auth-header/lib/helpers/removePort.js
function removePort2(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
var lib_exports5 = {};
__export(lib_exports5, {
  createGetAuthHeaderByURI: () => createGetAuthHeaderByURI,
  getAuthHeadersByScope: () => getAuthHeadersByScope,
  getAuthHeadersFromCreds: () => getAuthHeadersFromCreds
});
function createGetAuthHeaderByURI(configByUri) {
  const authHeaders = getAuthHeadersFromCreds(configByUri);
  const registryURIs = Object.keys(authHeaders.authHeaderValueByURI);
  const scopedAuthHeaderValueByScope = getScopedAuthHeaderValueByScope(authHeaders.scopedAuthHeaderValueByURI);
  if (registryURIs.length === 0 && Object.keys(scopedAuthHeaderValueByScope).length === 0)
    return (uri) => basicAuth(new URL(uri));
  return getAuthHeaderByURI.bind(null, authHeaders, {
    maxParts: getMaxParts(registryURIs),
    scopedAuthHeaderValueByScope
  });
}
function getMaxParts(uris) {
  return uris.reduce((max4, uri) => {
    const parts = uri.split("/").length;
    return parts > max4 ? parts : max4;
  }, 0);
}
function getScopedAuthHeaderValueByScope(authHeaders) {
  const result2 = {};
  for (const [uri, scopedAuthHeaders] of Object.entries(authHeaders)) {
    const parts = uri.split("/").length;
    for (const [scope, authHeader] of Object.entries(scopedAuthHeaders)) {
      const scopedAuthHeaderLookup = result2[scope] ??= {
        authHeaderValueByURI: {},
        maxParts: 0
      };
      scopedAuthHeaderLookup.authHeaderValueByURI[uri] = authHeader;
      if (parts > scopedAuthHeaderLookup.maxParts) {
        scopedAuthHeaderLookup.maxParts = parts;
      }
    }
  }
  return result2;
}
function getAuthHeaderByURI(authHeaders, lookup, uri, opts3) {
  if (!uri.endsWith("/")) {
    uri += "/";
  }
  const parsedUri = new URL(uri);
  const basic = basicAuth(parsedUri);
  if (basic)
    return basic;
  const scope = getScope2(opts3?.pkgName);
  const scopedAuthHeaderLookup = scope ? lookup.scopedAuthHeaderValueByScope[scope] : void 0;
  if (scopedAuthHeaderLookup) {
    const scopedAuth = getAuthHeaderByNerfedURI(scopedAuthHeaderLookup.authHeaderValueByURI, scopedAuthHeaderLookup.maxParts, uri);
    if (scopedAuth)
      return scopedAuth;
  }
  return getAuthHeaderByNerfedURI(authHeaders.authHeaderValueByURI, lookup.maxParts, uri);
}
function getAuthHeaderByNerfedURI(authHeaders, maxParts, uri) {
  const parsedUri = new URL(uri);
  const nerfed = (0, import_config8.nerfDart)(uri);
  const parts = nerfed.split("/");
  for (let i4 = Math.min(parts.length, maxParts) - 1; i4 >= 3; i4--) {
    const key = `${parts.slice(0, i4).join("/")}/`;
    if (authHeaders[key])
      return authHeaders[key];
  }
  const urlWithoutPort = removePort2(parsedUri);
  if (urlWithoutPort !== uri) {
    return getAuthHeaderByNerfedURI(authHeaders, maxParts, urlWithoutPort);
  }
  return void 0;
}
function getScope2(pkgName) {
  if (!pkgName?.startsWith("@"))
    return void 0;
  const index2 = pkgName.indexOf("/");
  if (index2 <= 1)
    return void 0;
  return pkgName.slice(0, index2);
}
function basicAuth(uri) {
  if (!uri.username && !uri.password)
    return void 0;
  const auth64 = btoa(`${uri.username}:${uri.password}`);
  return `Basic ${auth64}`;
}
var import_config8;
var init_lib52 = __esm({
  "../network/auth-header/lib/index.js"() {
    "use strict";
    import_config8 = __toESM(require_dist(), 1);
    init_getAuthHeadersFromConfig();
    init_removePort();
  }
});

// ../engine/runtime/bun-resolver/lib/index.js
async function resolveBunRuntime(ctx, wantedDependency, opts3) {
  if (wantedDependency.alias !== "bun" || !wantedDependency.bareSpecifier?.startsWith("runtime:"))
    return null;
  if (opts3?.currentPkg && !opts3.update) {
    return {
      id: opts3.currentPkg.id,
      resolution: opts3.currentPkg.resolution,
      resolvedVia: "github.com/oven-sh/bun"
    };
  }
  const versionSpec = normalizeRuntimeSpec2(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, opts3) {
  const manifestSpec = query.wantedDependency.bareSpecifier;
  if (query.wantedDependency.alias !== "bun" || !manifestSpec?.startsWith("runtime:"))
    return void 0;
  const versionSpec = query.compatible ? normalizeRuntimeSpec2(manifestSpec.substring("runtime:".length)) : "latest";
  try {
    const npmResolution = await ctx.resolveFromNpm({ alias: "bun", bareSpecifier: versionSpec }, query.compatible ? opts3 : { ...opts3, 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 (err2) {
    if (opts3.publishedBy && err2.code === "ERR_PNPM_NO_MATCHING_VERSION") {
      return {};
    }
    throw err2;
  }
}
function normalizeRuntimeSpec2(versionSpec) {
  versionSpec = versionSpec.trim();
  return versionSpec === "" ? "latest" : versionSpec;
}
async function readBunAssets(fetch3, version2) {
  const integritiesFileUrl = `https://github.com/oven-sh/bun/releases/download/bun-v${version2}/SHASUMS256.txt`;
  const shasumsFileItems = await fetchShasumsFile(fetch3, integritiesFileUrl);
  const pattern = /^bun-([^-.]+)-([^-.]+)(-musl)?\.zip$/;
  const assets = [];
  for (const { integrity, fileName } of shasumsFileItems) {
    const match = pattern.exec(fileName);
    if (!match)
      continue;
    let [, platform5, arch2, musl] = match;
    if (platform5 === "windows") {
      platform5 = "win32";
    }
    if (arch2 === "aarch64") {
      arch2 = "arm64";
    }
    const url7 = `https://github.com/oven-sh/bun/releases/download/bun-v${version2}/${fileName}`;
    const resolution = {
      type: "binary",
      archive: "zip",
      bin: getBunBinLocationForCurrentOS(platform5),
      integrity,
      url: url7,
      prefix: fileName.replace(/\.zip$/, "")
    };
    const target2 = {
      os: platform5,
      cpu: arch2
    };
    if (musl != null) {
      target2.libc = "musl";
    }
    assets.push({
      targets: [target2],
      resolution
    });
  }
  return assets;
}
function getBunBinLocationForCurrentOS(platform5 = process.platform) {
  return platform5 === "win32" ? "bun.exe" : "bun";
}
var import_util5;
var init_lib53 = __esm({
  "../engine/runtime/bun-resolver/lib/index.js"() {
    "use strict";
    init_lib45();
    init_lib2();
    init_lib38();
    import_util5 = __toESM(require_dist4(), 1);
  }
});

// ../engine/runtime/deno-resolver/lib/index.js
async function resolveDenoRuntime(ctx, wantedDependency, opts3) {
  if (wantedDependency.alias !== "deno" || !wantedDependency.bareSpecifier?.startsWith("runtime:"))
    return null;
  if (opts3?.currentPkg && !opts3.update) {
    return {
      id: opts3.currentPkg.id,
      resolution: opts3.currentPkg.resolution,
      resolvedVia: "github.com/denoland/deno"
    };
  }
  const versionSpec = normalizeRuntimeSpec3(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 sha2562 = await fetchSha256(ctx.fetchFromRegistry, asset.browser_download_url);
    const base64 = Buffer.from(sha2562, "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, opts3) {
  const manifestSpec = query.wantedDependency.bareSpecifier;
  if (query.wantedDependency.alias !== "deno" || !manifestSpec?.startsWith("runtime:"))
    return void 0;
  const versionSpec = query.compatible ? normalizeRuntimeSpec3(manifestSpec.substring("runtime:".length)) : "latest";
  try {
    const npmResolution = await ctx.resolveFromNpm({ alias: "deno", bareSpecifier: versionSpec }, query.compatible ? opts3 : { ...opts3, 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 (err2) {
    if (opts3.publishedBy && err2.code === "ERR_PNPM_NO_MATCHING_VERSION") {
      return {};
    }
    throw err2;
  }
}
function normalizeRuntimeSpec3(versionSpec) {
  versionSpec = versionSpec.trim();
  return versionSpec === "" ? "latest" : versionSpec;
}
function parseAssetName(name) {
  const m = ASSET_REGEX.exec(name);
  if (!m?.groups)
    return null;
  const os20 = OS_MAP[m.groups.os];
  const cpu = CPU_MAP[m.groups.cpu];
  const targets = [{ os: os20, cpu }];
  if (os20 === "win32" && cpu === "x64") {
    targets.push({ os: "win32", cpu: "arm64" });
  }
  return targets;
}
function getDenoBinLocationForCurrentOS(platform5 = process.platform) {
  return platform5 === "win32" ? "deno.exe" : "deno";
}
async function fetchSha256(fetch3, url7) {
  const response = await fetch3(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_lib54 = __esm({
  "../engine/runtime/deno-resolver/lib/index.js"() {
    "use strict";
    init_lib2();
    init_lib38();
    import_util6 = __toESM(require_dist4(), 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_lib55 = __esm({
  "../hooks/types/lib/index.js"() {
    "use strict";
    init_customResolverCache();
  }
});

// ../resolving/local-resolver/lib/parseBareSpecifier.js
import os5 from "node:os";
import path46 from "node:path";
function parseLocalScheme(wd, projectDir, lockfileDir, opts3) {
  if (wd.bareSpecifier.startsWith("link:") || wd.bareSpecifier.startsWith("workspace:")) {
    return fromLocal(wd, projectDir, lockfileDir, "directory", opts3);
  }
  if (wd.bareSpecifier.startsWith("file:")) {
    const type4 = isFilename.test(wd.bareSpecifier) ? "file" : "directory";
    return fromLocal(wd, projectDir, lockfileDir, type4, opts3);
  }
  if (wd.bareSpecifier.startsWith("path:")) {
    throw new PathIsUnsupportedProtocolError(wd.bareSpecifier, "path:");
  }
  return null;
}
function parseLocalPath(wd, projectDir, lockfileDir, opts3) {
  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, opts3);
  }
  return null;
}
function fromLocal({ bareSpecifier, injected }, projectDir, lockfileDir, type4, opts3) {
  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(os5.homedir(), spec.slice(2));
    normalizedBareSpecifier = `${protocol}${spec}`;
  } else {
    fetchSpec = resolvePath2(projectDir, spec);
    if (isAbsolute3(spec)) {
      normalizedBareSpecifier = `${protocol}${spec}`;
    } else {
      normalizedBareSpecifier = `${protocol}${path46.relative(projectDir, fetchSpec)}`;
    }
  }
  function normalizeRelativeOrAbsolute(relativeTo, fromPath) {
    let specPath;
    if (opts3.preserveAbsolutePaths && isAbsolute3(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 isAbsolute3(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 existsSync4 } from "node:fs";
import path47 from "node:path";
async function resolveFromLocalScheme(ctx, wantedDependency, opts3) {
  const spec = parseLocalScheme(wantedDependency, opts3.projectDir, opts3.lockfileDir ?? opts3.projectDir, {
    preserveAbsolutePaths: ctx.preserveAbsolutePaths ?? false
  });
  return resolveSpec(spec, opts3);
}
async function resolveFromLocalPath(ctx, wantedDependency, opts3) {
  const spec = parseLocalPath(wantedDependency, opts3.projectDir, opts3.lockfileDir ?? opts3.projectDir, {
    preserveAbsolutePaths: ctx.preserveAbsolutePaths ?? false
  });
  return resolveSpec(spec, opts3);
}
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, opts3) {
  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 (opts3.currentPkg?.resolution && spec.type === "directory" && !opts3.update) {
    return {
      id: opts3.currentPkg.id,
      resolution: opts3.currentPkg.resolution,
      resolvedVia: "local-filesystem"
    };
  }
  let localDependencyManifest;
  try {
    localDependencyManifest = await readProjectManifestOnly(spec.fetchSpec);
  } catch (internalErr) {
    if (!existsSync4(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: opts3.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_lib56 = __esm({
  "../resolving/local-resolver/lib/index.js"() {
    "use strict";
    init_lib34();
    init_lib2();
    init_lib3();
    init_lib15();
    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_lib57 = __esm({
  "../resolving/tarball-resolver/lib/index.js"() {
    "use strict";
  }
});

// ../resolving/default-resolver/lib/index.js
async function resolveFromCustomResolvers(customResolvers, wantedDependency, opts3) {
  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: opts3.lockfileDir,
        projectDir: opts3.projectDir,
        preferredVersions: opts3.preferredVersions ?? {},
        currentPkg: opts3.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, opts3) => {
      const resolution = await _resolveFromCustomResolvers?.(wantedDependency, opts3) ?? await resolveFromNpm(wantedDependency, opts3) ?? await resolveFromJsr(wantedDependency, opts3) ?? (wantedDependency.bareSpecifier && (await resolveFromGit(wantedDependency, opts3) ?? await resolveFromTarball(fetchFromRegistry, wantedDependency) ?? await _resolveFromLocalScheme(wantedDependency, opts3))) ?? await _resolveNodeRuntime(wantedDependency, opts3) ?? await _resolveDenoRuntime(wantedDependency, opts3) ?? await _resolveBunRuntime(wantedDependency, opts3) ?? // 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, opts3) ?? (wantedDependency.bareSpecifier ? await _resolveFromLocalPath(wantedDependency, opts3) : 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, opts3) => {
      const info = await resolveLatestFromNpm(query, opts3) ?? await resolveLatestFromJsr(query, opts3) ?? await resolveLatestFromGit(query) ?? await resolveLatestFromTarball(query) ?? await resolveLatestFromLocal(query) ?? await _resolveLatestNodeRuntime(query, opts3) ?? await _resolveLatestDenoRuntime(query, opts3) ?? await _resolveLatestBunRuntime(query, opts3) ?? await resolveLatestFromNamedRegistry(query, opts3);
      return info;
    },
    clearCache
  };
}
function createResolutionVerifiers(fetchFromRegistry, opts3) {
  const fetchOpts = {
    fetch: fetchFromRegistry,
    retry: opts3.retry ?? {},
    timeout: opts3.timeout ?? 6e4,
    fetchWarnTimeoutMs: opts3.fetchWarnTimeoutMs ?? 1e4
  };
  const getAuthHeaderValueByURI = createGetAuthHeaderByURI(opts3.configByUri ?? {});
  const verifiers = [];
  const npmVerifier = createNpmResolutionVerifier({
    minimumReleaseAge: opts3.minimumReleaseAge,
    minimumReleaseAgeStrict: opts3.minimumReleaseAgeStrict,
    minimumReleaseAgeExclude: opts3.minimumReleaseAgeExclude,
    ignoreMissingTimeField: opts3.ignoreMissingTimeField,
    trustPolicy: opts3.trustPolicy,
    trustPolicyExclude: opts3.trustPolicyExclude,
    trustPolicyIgnoreAfter: opts3.trustPolicyIgnoreAfter,
    registries: opts3.registries,
    namedRegistries: opts3.namedRegistries,
    fetchOpts,
    getAuthHeaderValueByURI,
    cacheDir: opts3.cacheDir,
    metaCache: opts3.metaCache,
    now: opts3.now
  });
  verifiers.push(npmVerifier);
  return verifiers;
}
var init_lib58 = __esm({
  "../resolving/default-resolver/lib/index.js"() {
    "use strict";
    init_lib53();
    init_lib54();
    init_lib46();
    init_lib2();
    init_lib55();
    init_lib52();
    init_lib49();
    init_lib56();
    init_lib38();
    init_lib57();
  }
});

// ../installing/client/lib/index.js
function createClient(opts3) {
  const fetchFromRegistry = createFetchFromRegistry(opts3);
  const getAuthHeader = createGetAuthHeaderByURI(opts3.configByUri);
  const metaCache = createDefaultPackageMetaCache();
  const { resolve: resolve4, clearCache: clearResolutionCache } = createResolver(fetchFromRegistry, getAuthHeader, { ...opts3, metaCache, customResolvers: opts3.customResolvers });
  return {
    fetchers: createFetchers(fetchFromRegistry, getAuthHeader, opts3),
    resolve: resolve4,
    clearResolutionCache,
    resolutionVerifiers: createResolutionVerifiers(fetchFromRegistry, { ...opts3, metaCache })
  };
}
function createResolver2(opts3) {
  const fetchFromRegistry = createFetchFromRegistry(opts3);
  const getAuthHeader = createGetAuthHeaderByURI(opts3.configByUri);
  return createResolver(fetchFromRegistry, getAuthHeader, { ...opts3, customResolvers: opts3.customResolvers });
}
function makeResolutionStrict(resolve4) {
  return (async (wantedDependency, opts3) => {
    const result2 = await resolve4(wantedDependency, opts3);
    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, opts3) {
  const tarballFetchers = createTarballFetcher(fetchFromRegistry, getAuthHeader, opts3);
  return {
    ...tarballFetchers,
    ...createGitFetcher(opts3),
    ...createDirectoryFetcher({ resolveSymlinks: opts3.resolveSymlinksInInjectedDirs, includeOnlyPackageFiles: opts3.includeOnlyPackageFiles }),
    ...createBinaryFetcher({
      fetch: fetchFromRegistry,
      fetchFromRemoteTarball: tarballFetchers.remoteTarball,
      offline: opts3.offline,
      storeIndex: opts3.storeIndex,
      archiveFilters: { node: NODE_EXTRAS_IGNORE_PATTERN }
    })
  };
}
var init_lib59 = __esm({
  "../installing/client/lib/index.js"() {
    "use strict";
    init_lib46();
    init_lib2();
    init_lib47();
    init_lib19();
    init_lib50();
    init_lib51();
    init_lib52();
    init_lib23();
    init_lib58();
    init_lib38();
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/imurmurhash/0.1.4/2f82bfc2313c21ec7e7d0ea2caff82f687c1db8ccf14306261d1d9e7afe19b75/node_modules/imurmurhash/imurmurhash.js
var require_imurmurhash = __commonJS({
  "../../../../../setup-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, i4, top, len;
        len = key.length;
        this.len += len;
        k1 = this.k1;
        i4 = 0;
        switch (this.rem) {
          case 0:
            k1 ^= len > i4 ? key.charCodeAt(i4++) & 65535 : 0;
          case 1:
            k1 ^= len > i4 ? (key.charCodeAt(i4++) & 65535) << 8 : 0;
          case 2:
            k1 ^= len > i4 ? (key.charCodeAt(i4++) & 65535) << 16 : 0;
          case 3:
            k1 ^= len > i4 ? (key.charCodeAt(i4) & 255) << 24 : 0;
            k1 ^= len > i4 ? (key.charCodeAt(i4++) & 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 (i4 >= len) {
              break;
            }
            k1 = key.charCodeAt(i4++) & 65535 ^ (key.charCodeAt(i4++) & 65535) << 8 ^ (key.charCodeAt(i4++) & 65535) << 16;
            top = key.charCodeAt(i4++);
            k1 ^= (top & 255) << 24 ^ (top & 65280) >> 8;
          }
          k1 = 0;
          switch (this.rem) {
            case 3:
              k1 ^= (key.charCodeAt(i4 + 2) & 65535) << 16;
            case 2:
              k1 ^= (key.charCodeAt(i4 + 1) & 65535) << 8;
            case 1:
              k1 ^= key.charCodeAt(i4) & 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;
      }
    })();
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/write-file-atomic/6.0.0/28f3e5f0396af400017247951525818d08d4d02421346b37e52a20b30a7b1f88/node_modules/write-file-atomic/lib/index.js
var require_lib20 = __commonJS({
  "../../../../../setup-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 fs131 = __require("fs");
    var MurmurHash3 = require_imurmurhash();
    var { onExit: onExit2 } = require_cjs();
    var path240 = __require("path");
    var { promisify: promisify15 } = __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 {
          fs131.unlinkSync(typeof tmpfile === "function" ? tmpfile() : tmpfile);
        } catch {
        }
      };
    }
    function serializeActiveFile(absoluteName) {
      return new Promise((resolve4) => {
        if (!activeFiles[absoluteName]) {
          activeFiles[absoluteName] = [];
        }
        activeFiles[absoluteName].push(resolve4);
        if (activeFiles[absoluteName].length === 1) {
          resolve4();
        }
      });
    }
    function isChownErrOk(err2) {
      if (err2.code === "ENOSYS") {
        return true;
      }
      const nonroot = !process.getuid || process.getuid() !== 0;
      if (nonroot) {
        if (err2.code === "EINVAL" || err2.code === "EPERM") {
          return true;
        }
      }
      return false;
    }
    async function writeFileAsync(filename, data, options = {}) {
      if (typeof options === "string") {
        options = { encoding: options };
      }
      let fd2;
      let tmpfile;
      const removeOnExitHandler = onExit2(cleanupOnExit2(() => tmpfile));
      const absoluteName = path240.resolve(filename);
      try {
        await serializeActiveFile(absoluteName);
        const truename = await promisify15(fs131.realpath)(filename).catch(() => filename);
        tmpfile = getTmpname(truename);
        if (!options.mode || !options.chown) {
          const stats = await promisify15(fs131.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 };
            }
          }
        }
        fd2 = await promisify15(fs131.open)(tmpfile, "w", options.mode);
        if (options.tmpfileCreated) {
          await options.tmpfileCreated(tmpfile);
        }
        if (ArrayBuffer.isView(data)) {
          await promisify15(fs131.write)(fd2, data, 0, data.length, 0);
        } else if (data != null) {
          await promisify15(fs131.write)(fd2, String(data), 0, String(options.encoding || "utf8"));
        }
        if (options.fsync !== false) {
          await promisify15(fs131.fsync)(fd2);
        }
        await promisify15(fs131.close)(fd2);
        fd2 = null;
        if (options.chown) {
          await promisify15(fs131.chown)(tmpfile, options.chown.uid, options.chown.gid).catch((err2) => {
            if (!isChownErrOk(err2)) {
              throw err2;
            }
          });
        }
        if (options.mode) {
          await promisify15(fs131.chmod)(tmpfile, options.mode).catch((err2) => {
            if (!isChownErrOk(err2)) {
              throw err2;
            }
          });
        }
        await promisify15(fs131.rename)(tmpfile, truename);
      } finally {
        if (fd2) {
          await promisify15(fs131.close)(fd2).catch(
            /* istanbul ignore next */
            () => {
            }
          );
        }
        removeOnExitHandler();
        await promisify15(fs131.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 (err2) {
          return callback2(err2);
        }
      }
      return promise2;
    }
    function writeFileSync2(filename, data, options) {
      if (typeof options === "string") {
        options = { encoding: options };
      } else if (!options) {
        options = {};
      }
      try {
        filename = fs131.realpathSync(filename);
      } catch (ex) {
      }
      const tmpfile = getTmpname(filename);
      if (!options.mode || !options.chown) {
        try {
          const stats = fs131.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 fd2;
      const cleanup2 = cleanupOnExit2(tmpfile);
      const removeOnExitHandler = onExit2(cleanup2);
      let threw = true;
      try {
        fd2 = fs131.openSync(tmpfile, "w", options.mode || 438);
        if (options.tmpfileCreated) {
          options.tmpfileCreated(tmpfile);
        }
        if (ArrayBuffer.isView(data)) {
          fs131.writeSync(fd2, data, 0, data.length, 0);
        } else if (data != null) {
          fs131.writeSync(fd2, String(data), 0, String(options.encoding || "utf8"));
        }
        if (options.fsync !== false) {
          fs131.fsyncSync(fd2);
        }
        fs131.closeSync(fd2);
        fd2 = null;
        if (options.chown) {
          try {
            fs131.chownSync(tmpfile, options.chown.uid, options.chown.gid);
          } catch (err2) {
            if (!isChownErrOk(err2)) {
              throw err2;
            }
          }
        }
        if (options.mode) {
          try {
            fs131.chmodSync(tmpfile, options.mode);
          } catch (err2) {
            if (!isChownErrOk(err2)) {
              throw err2;
            }
          }
        }
        fs131.renameSync(tmpfile, filename);
        threw = false;
      } finally {
        if (fd2) {
          try {
            fs131.closeSync(fd2);
          } catch (ex) {
          }
        }
        removeOnExitHandler();
        if (threw) {
          cleanup2();
        }
      }
    }
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/sort-keys/6.0.1/a3f42f700d138c550c7d458b121d3c960af5d0522ddb275564c561c4ed38b9cd/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: compare3, 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 index2 of array.keys()) {
      if (!(index2 in array)) {
        continue;
      }
      const item = array[index2];
      const indexKey = String(index2);
      const itemPath = buildPath(currentPath, indexKey);
      const contextDepth = currentDepth + 1;
      const context = {
        key: indexKey,
        value: item,
        path: itemPath,
        depth: contextDepth
      };
      if (Array.isArray(item)) {
        result2[index2] = shouldProcessDeep(context) ? deepSortArray(item, itemPath, contextDepth) : item;
        continue;
      }
      if (isPlainObject(item)) {
        result2[index2] = shouldProcessDeep(context) ? _sortKeys(item, itemPath, contextDepth + 1) : item;
        continue;
      }
      result2[index2] = 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(compare3);
    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({
  "../../../../../setup-pnpm/store/v11/links/@/sort-keys/6.0.1/a3f42f700d138c550c7d458b121d3c960af5d0522ddb275564c561c4ed38b9cd/node_modules/sort-keys/index.js"() {
    init_is_plain_obj();
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/write-json-file/7.0.0/028993697ed5a91ddc0d90c5d5e92f1d10d325c0b14af5b5f5b9f6b44ba9da78/node_modules/write-json-file/index.js
import path48 from "node:path";
import fs30, { promises as fsPromises3 } from "node:fs";
async function writeJsonFile(filePath, data, options) {
  await fsPromises3.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({
  "../../../../../setup-pnpm/store/v11/links/@/write-json-file/7.0.0/028993697ed5a91ddc0d90c5d5e92f1d10d325c0b14af5b5f5b9f6b44ba9da78/node_modules/write-json-file/index.js"() {
    import_write_file_atomic3 = __toESM(require_lib20(), 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 fsPromises3.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(config2) {
  const stateFile = path49.join(config2.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: resolve4 } = createResolver2({
    ...config2,
    configByUri: config2.configByUri,
    retry: {
      retries: 0
    }
  });
  const resolution = await resolve4({ alias: packageManager.name, bareSpecifier: "latest" }, {
    lockfileDir: config2.lockfileDir ?? config2.dir,
    preferredVersions: {},
    projectDir: config2.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_lib24();
    init_lib6();
    init_lib59();
    init_load_json_file();
    init_write_json_file();
    UPDATE_CHECK_FREQUENCY = 24 * 60 * 60 * 1e3;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@inquirer/core/11.2.1/3e87a9fe1392787dec658f7ee3fb37e8f277f5c986499113cf99a0c7a7f3286e/node_modules/@inquirer/core/dist/lib/key.js
function isKeybinding(value) {
  return keybindingLookup.has(value);
}
function getDefaultKeybindings() {
  const env4 = process.env["INQUIRER_KEYBINDINGS"];
  if (!env4)
    return [];
  return Array.from(new Set(env4.toLowerCase().split(/[\s,]+/).filter(isKeybinding)));
}
var keybindings, keybindingLookup, isUpKey, isDownKey, isSpaceKey, isBackspaceKey, isTabKey, isNumberKey, isEnterKey;
var init_key = __esm({
  "../../../../../setup-pnpm/store/v11/links/@inquirer/core/11.2.1/3e87a9fe1392787dec658f7ee3fb37e8f277f5c986499113cf99a0c7a7f3286e/node_modules/@inquirer/core/dist/lib/key.js"() {
    keybindings = ["emacs", "vim"];
    keybindingLookup = new Set(keybindings);
    isUpKey = (key, keybindings2 = []) => (
      // The up key
      key.name === "up" || // Vim keybinding: hjkl keys map to left/down/up/right
      keybindings2.includes("vim") && key.name === "k" || // Emacs keybinding: Ctrl+P means "previous" in Emacs navigation conventions
      keybindings2.includes("emacs") && key.ctrl && key.name === "p"
    );
    isDownKey = (key, keybindings2 = []) => (
      // The down key
      key.name === "down" || // Vim keybinding: hjkl keys map to left/down/up/right
      keybindings2.includes("vim") && key.name === "j" || // Emacs keybinding: Ctrl+N means "next" in Emacs navigation conventions
      keybindings2.includes("emacs") && key.ctrl && key.name === "n"
    );
    isSpaceKey = (key) => key.name === "space";
    isBackspaceKey = (key) => key.name === "backspace";
    isTabKey = (key) => key.name === "tab";
    isNumberKey = (key) => "1234567890".includes(key.name);
    isEnterKey = (key) => key.name === "enter" || key.name === "return";
  }
});

// ../../../../../setup-pnpm/store/v11/links/@inquirer/core/11.2.1/3e87a9fe1392787dec658f7ee3fb37e8f277f5c986499113cf99a0c7a7f3286e/node_modules/@inquirer/core/dist/lib/errors.js
var AbortPromptError, CancelPromptError, ExitPromptError, HookError, ValidationError;
var init_errors = __esm({
  "../../../../../setup-pnpm/store/v11/links/@inquirer/core/11.2.1/3e87a9fe1392787dec658f7ee3fb37e8f277f5c986499113cf99a0c7a7f3286e/node_modules/@inquirer/core/dist/lib/errors.js"() {
    AbortPromptError = class extends Error {
      name = "AbortPromptError";
      message = "Prompt was aborted";
      constructor(options) {
        super();
        this.cause = options?.cause;
      }
    };
    CancelPromptError = class extends Error {
      name = "CancelPromptError";
      message = "Prompt was canceled";
    };
    ExitPromptError = class extends Error {
      name = "ExitPromptError";
    };
    HookError = class extends Error {
      name = "HookError";
    };
    ValidationError = class extends Error {
      name = "ValidationError";
    };
  }
});

// ../../../../../setup-pnpm/store/v11/links/@inquirer/core/11.2.1/3e87a9fe1392787dec658f7ee3fb37e8f277f5c986499113cf99a0c7a7f3286e/node_modules/@inquirer/core/dist/lib/hook-engine.js
import { AsyncLocalStorage, AsyncResource } from "node:async_hooks";
function createStore(rl) {
  const store = {
    rl,
    hooks: [],
    hooksCleanup: [],
    hooksEffect: [],
    index: 0,
    handleChange() {
    }
  };
  return store;
}
function withHooks(rl, cb) {
  const store = createStore(rl);
  return hookStorage.run(store, () => {
    function cycle(render3) {
      store.handleChange = () => {
        store.index = 0;
        render3();
      };
      store.handleChange();
    }
    return cb(cycle);
  });
}
function getStore() {
  const store = hookStorage.getStore();
  if (!store) {
    throw new HookError("[Inquirer] Hook functions can only be called from within a prompt");
  }
  return store;
}
function readline() {
  return getStore().rl;
}
function withUpdates(fn) {
  const wrapped = (...args) => {
    const store = getStore();
    let shouldUpdate = false;
    const oldHandleChange = store.handleChange;
    store.handleChange = () => {
      shouldUpdate = true;
    };
    const returnValue = fn(...args);
    if (shouldUpdate) {
      oldHandleChange();
    }
    store.handleChange = oldHandleChange;
    return returnValue;
  };
  return AsyncResource.bind(wrapped);
}
function withPointer(cb) {
  const store = getStore();
  const { index: index2 } = store;
  const pointer = {
    get() {
      return store.hooks[index2];
    },
    set(value) {
      store.hooks[index2] = value;
    },
    initialized: index2 in store.hooks
  };
  const returnValue = cb(pointer);
  store.index++;
  return returnValue;
}
function handleChange() {
  getStore().handleChange();
}
var hookStorage, effectScheduler;
var init_hook_engine = __esm({
  "../../../../../setup-pnpm/store/v11/links/@inquirer/core/11.2.1/3e87a9fe1392787dec658f7ee3fb37e8f277f5c986499113cf99a0c7a7f3286e/node_modules/@inquirer/core/dist/lib/hook-engine.js"() {
    init_errors();
    hookStorage = new AsyncLocalStorage();
    effectScheduler = {
      queue(cb) {
        const store = getStore();
        const { index: index2 } = store;
        store.hooksEffect.push(() => {
          store.hooksCleanup[index2]?.();
          const cleanFn = cb(readline());
          if (cleanFn != null && typeof cleanFn !== "function") {
            throw new ValidationError("useEffect return value must be a cleanup function or nothing.");
          }
          store.hooksCleanup[index2] = cleanFn;
        });
      },
      run() {
        const store = getStore();
        withUpdates(() => {
          store.hooksEffect.forEach((effect) => {
            effect();
          });
          store.hooksEffect.length = 0;
        })();
      },
      clearAll() {
        const store = getStore();
        store.hooksCleanup.forEach((cleanFn) => {
          cleanFn?.();
        });
        store.hooksEffect.length = 0;
        store.hooksCleanup.length = 0;
      }
    };
  }
});

// ../../../../../setup-pnpm/store/v11/links/@inquirer/core/11.2.1/3e87a9fe1392787dec658f7ee3fb37e8f277f5c986499113cf99a0c7a7f3286e/node_modules/@inquirer/core/dist/lib/use-state.js
import { AsyncResource as AsyncResource2 } from "node:async_hooks";
function isFactory(value) {
  return typeof value === "function";
}
function useState(defaultValue) {
  return withPointer((pointer) => {
    const setState = AsyncResource2.bind(function setState2(newValue) {
      if (pointer.get() !== newValue) {
        pointer.set(newValue);
        handleChange();
      }
    });
    if (pointer.initialized) {
      return [pointer.get(), setState];
    }
    const value = isFactory(defaultValue) ? defaultValue() : defaultValue;
    pointer.set(value);
    return [value, setState];
  });
}
var init_use_state = __esm({
  "../../../../../setup-pnpm/store/v11/links/@inquirer/core/11.2.1/3e87a9fe1392787dec658f7ee3fb37e8f277f5c986499113cf99a0c7a7f3286e/node_modules/@inquirer/core/dist/lib/use-state.js"() {
    init_hook_engine();
  }
});

// ../../../../../setup-pnpm/store/v11/links/@inquirer/core/11.2.1/3e87a9fe1392787dec658f7ee3fb37e8f277f5c986499113cf99a0c7a7f3286e/node_modules/@inquirer/core/dist/lib/use-effect.js
function useEffect(cb, depArray) {
  withPointer((pointer) => {
    const oldDeps = pointer.get();
    const hasChanged = !Array.isArray(oldDeps) || depArray.some((dep, i4) => !Object.is(dep, oldDeps[i4]));
    if (hasChanged) {
      effectScheduler.queue(cb);
    }
    pointer.set(depArray);
  });
}
var init_use_effect = __esm({
  "../../../../../setup-pnpm/store/v11/links/@inquirer/core/11.2.1/3e87a9fe1392787dec658f7ee3fb37e8f277f5c986499113cf99a0c7a7f3286e/node_modules/@inquirer/core/dist/lib/use-effect.js"() {
    init_hook_engine();
  }
});

// ../../../../../setup-pnpm/store/v11/links/@inquirer/figures/2.0.7/b69b05fab29cbfb1e7df41885d318fd9525bf31572bc1e1901cd1bad25a58795/node_modules/@inquirer/figures/dist/index.js
import process19 from "node:process";
function isUnicodeSupported2() {
  if (!process19.platform.startsWith("win")) {
    return process19.env["TERM"] !== "linux";
  }
  return Boolean(process19.env["CI"]) || // CI environments generally support unicode
  Boolean(process19.env["WT_SESSION"]) || // Windows Terminal
  Boolean(process19.env["TERMINUS_SUBLIME"]) || // Terminus (<0.2.27)
  process19.env["ConEmuTask"] === "{cmd::Cmder}" || // ConEmu and cmder
  process19.env["TERM_PROGRAM"] === "Terminus-Sublime" || process19.env["TERM_PROGRAM"] === "vscode" || process19.env["TERM"] === "xterm-256color" || process19.env["TERM"] === "alacritty" || process19.env["TERMINAL_EMULATOR"] === "JetBrains-JediTerm";
}
var common3, specialMainSymbols2, specialFallbackSymbols2, mainSymbols2, fallbackSymbols2, shouldUseMain2, figures2, dist_default, replacements2;
var init_dist4 = __esm({
  "../../../../../setup-pnpm/store/v11/links/@inquirer/figures/2.0.7/b69b05fab29cbfb1e7df41885d318fd9525bf31572bc1e1901cd1bad25a58795/node_modules/@inquirer/figures/dist/index.js"() {
    common3 = {
      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"
    };
    specialMainSymbols2 = {
      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"
    };
    specialFallbackSymbols2 = {
      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"
    };
    mainSymbols2 = {
      ...common3,
      ...specialMainSymbols2
    };
    fallbackSymbols2 = {
      ...common3,
      ...specialFallbackSymbols2
    };
    shouldUseMain2 = isUnicodeSupported2();
    figures2 = shouldUseMain2 ? mainSymbols2 : fallbackSymbols2;
    dist_default = figures2;
    replacements2 = Object.entries(specialMainSymbols2);
  }
});

// ../../../../../setup-pnpm/store/v11/links/@inquirer/core/11.2.1/3e87a9fe1392787dec658f7ee3fb37e8f277f5c986499113cf99a0c7a7f3286e/node_modules/@inquirer/core/dist/lib/theme.js
import { styleText } from "node:util";
function getDefaultTheme() {
  return {
    ...defaultTheme,
    keybindings: getDefaultKeybindings()
  };
}
var defaultTheme;
var init_theme = __esm({
  "../../../../../setup-pnpm/store/v11/links/@inquirer/core/11.2.1/3e87a9fe1392787dec658f7ee3fb37e8f277f5c986499113cf99a0c7a7f3286e/node_modules/@inquirer/core/dist/lib/theme.js"() {
    init_dist4();
    init_key();
    defaultTheme = {
      prefix: {
        idle: styleText("blue", "?"),
        done: styleText("green", dist_default.tick)
      },
      spinner: {
        interval: 80,
        frames: ["\u280B", "\u2819", "\u2839", "\u2838", "\u283C", "\u2834", "\u2826", "\u2827", "\u2807", "\u280F"].map((frame) => styleText("yellow", frame))
      },
      keybindings: [],
      style: {
        answer: (text) => styleText("cyan", text),
        message: (text) => styleText("bold", text),
        error: (text) => styleText("red", `> ${text}`),
        defaultAnswer: (text) => styleText("dim", `(${text})`),
        help: (text) => styleText("dim", text),
        highlight: (text) => styleText("cyan", text),
        key: (text) => styleText("cyan", styleText("bold", `<${text}>`))
      }
    };
  }
});

// ../../../../../setup-pnpm/store/v11/links/@inquirer/core/11.2.1/3e87a9fe1392787dec658f7ee3fb37e8f277f5c986499113cf99a0c7a7f3286e/node_modules/@inquirer/core/dist/lib/make-theme.js
function isPlainObject2(value) {
  if (typeof value !== "object" || value === null)
    return false;
  let proto3 = value;
  while (Object.getPrototypeOf(proto3) !== null) {
    proto3 = Object.getPrototypeOf(proto3);
  }
  return Object.getPrototypeOf(value) === proto3;
}
function deepMerge(...objects) {
  const output = {};
  for (const obj of objects) {
    for (const [key, value] of Object.entries(obj)) {
      const prevValue = output[key];
      output[key] = isPlainObject2(prevValue) && isPlainObject2(value) ? deepMerge(prevValue, value) : value;
    }
  }
  return output;
}
function makeTheme(...themes) {
  const themesToMerge = [
    getDefaultTheme(),
    ...themes.filter((theme) => theme != null)
  ];
  return deepMerge(...themesToMerge);
}
var init_make_theme = __esm({
  "../../../../../setup-pnpm/store/v11/links/@inquirer/core/11.2.1/3e87a9fe1392787dec658f7ee3fb37e8f277f5c986499113cf99a0c7a7f3286e/node_modules/@inquirer/core/dist/lib/make-theme.js"() {
    init_theme();
  }
});

// ../../../../../setup-pnpm/store/v11/links/@inquirer/core/11.2.1/3e87a9fe1392787dec658f7ee3fb37e8f277f5c986499113cf99a0c7a7f3286e/node_modules/@inquirer/core/dist/lib/use-prefix.js
function usePrefix({ status = "idle", theme }) {
  const [showLoader, setShowLoader] = useState(false);
  const [tick, setTick] = useState(0);
  const { prefix, spinner } = makeTheme(theme);
  useEffect(() => {
    if (status === "loading") {
      let tickInterval;
      let inc3 = -1;
      const delayTimeout = setTimeout(() => {
        setShowLoader(true);
        tickInterval = setInterval(() => {
          inc3 = inc3 + 1;
          setTick(inc3 % spinner.frames.length);
        }, spinner.interval);
      }, 300);
      return () => {
        clearTimeout(delayTimeout);
        clearInterval(tickInterval);
      };
    } else {
      setShowLoader(false);
    }
  }, [status]);
  if (showLoader) {
    return spinner.frames[tick];
  }
  const iconName = status === "loading" ? "idle" : status;
  return typeof prefix === "string" ? prefix : prefix[iconName] ?? prefix["idle"];
}
var init_use_prefix = __esm({
  "../../../../../setup-pnpm/store/v11/links/@inquirer/core/11.2.1/3e87a9fe1392787dec658f7ee3fb37e8f277f5c986499113cf99a0c7a7f3286e/node_modules/@inquirer/core/dist/lib/use-prefix.js"() {
    init_use_state();
    init_use_effect();
    init_make_theme();
  }
});

// ../../../../../setup-pnpm/store/v11/links/@inquirer/core/11.2.1/3e87a9fe1392787dec658f7ee3fb37e8f277f5c986499113cf99a0c7a7f3286e/node_modules/@inquirer/core/dist/lib/use-memo.js
function useMemo(fn, dependencies) {
  return withPointer((pointer) => {
    const prev = pointer.get();
    if (!prev || prev.dependencies.length !== dependencies.length || prev.dependencies.some((dep, i4) => dep !== dependencies[i4])) {
      const value = fn();
      pointer.set({ value, dependencies });
      return value;
    }
    return prev.value;
  });
}
var init_use_memo = __esm({
  "../../../../../setup-pnpm/store/v11/links/@inquirer/core/11.2.1/3e87a9fe1392787dec658f7ee3fb37e8f277f5c986499113cf99a0c7a7f3286e/node_modules/@inquirer/core/dist/lib/use-memo.js"() {
    init_hook_engine();
  }
});

// ../../../../../setup-pnpm/store/v11/links/@inquirer/core/11.2.1/3e87a9fe1392787dec658f7ee3fb37e8f277f5c986499113cf99a0c7a7f3286e/node_modules/@inquirer/core/dist/lib/use-ref.js
function useRef(val) {
  return useState({ current: val })[0];
}
var init_use_ref = __esm({
  "../../../../../setup-pnpm/store/v11/links/@inquirer/core/11.2.1/3e87a9fe1392787dec658f7ee3fb37e8f277f5c986499113cf99a0c7a7f3286e/node_modules/@inquirer/core/dist/lib/use-ref.js"() {
    init_use_state();
  }
});

// ../../../../../setup-pnpm/store/v11/links/@inquirer/core/11.2.1/3e87a9fe1392787dec658f7ee3fb37e8f277f5c986499113cf99a0c7a7f3286e/node_modules/@inquirer/core/dist/lib/use-keypress.js
function useKeypress(userHandler) {
  const signal = useRef(userHandler);
  signal.current = userHandler;
  useEffect((rl) => {
    let ignore2 = false;
    const handler83 = withUpdates((_input, event) => {
      if (ignore2)
        return;
      void signal.current(event, rl);
    });
    rl.input.on("keypress", handler83);
    return () => {
      ignore2 = true;
      rl.input.removeListener("keypress", handler83);
    };
  }, []);
}
var init_use_keypress = __esm({
  "../../../../../setup-pnpm/store/v11/links/@inquirer/core/11.2.1/3e87a9fe1392787dec658f7ee3fb37e8f277f5c986499113cf99a0c7a7f3286e/node_modules/@inquirer/core/dist/lib/use-keypress.js"() {
    init_use_ref();
    init_use_effect();
    init_hook_engine();
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/cli-width/4.1.0/05d7ce5fb90e3662c73fce3d95401494067b7dd58c781b2602b5a3ba1a15b453/node_modules/cli-width/index.js
var require_cli_width = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/cli-width/4.1.0/05d7ce5fb90e3662c73fce3d95401494067b7dd58c781b2602b5a3ba1a15b453/node_modules/cli-width/index.js"(exports2, module2) {
    "use strict";
    module2.exports = cliWidth2;
    function normalizeOpts(options) {
      const defaultOpts = {
        defaultWidth: 0,
        output: process.stdout,
        tty: __require("tty")
      };
      if (!options) {
        return defaultOpts;
      }
      Object.keys(defaultOpts).forEach(function(key) {
        if (!options[key]) {
          options[key] = defaultOpts[key];
        }
      });
      return options;
    }
    function cliWidth2(options) {
      const opts3 = normalizeOpts(options);
      if (opts3.output.getWindowSize) {
        return opts3.output.getWindowSize()[0] || opts3.defaultWidth;
      }
      if (opts3.tty.getWindowSize) {
        return opts3.tty.getWindowSize()[1] || opts3.defaultWidth;
      }
      if (opts3.output.columns) {
        return opts3.output.columns;
      }
      if (process.env.CLI_WIDTH) {
        const width = parseInt(process.env.CLI_WIDTH, 10);
        if (!isNaN(width) && width !== 0) {
          return width;
        }
      }
      return opts3.defaultWidth;
    }
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/fast-string-truncated-width/3.0.3/5e16650deba0731567b17e8a4a9273e5b04fa18f3f27351a1f8f22294279d082/node_modules/fast-string-truncated-width/dist/utils.js
var getCodePointsLength, isFullWidth, isWideNotCJKTNotEmoji;
var init_utils2 = __esm({
  "../../../../../setup-pnpm/store/v11/links/@/fast-string-truncated-width/3.0.3/5e16650deba0731567b17e8a4a9273e5b04fa18f3f27351a1f8f22294279d082/node_modules/fast-string-truncated-width/dist/utils.js"() {
    getCodePointsLength = /* @__PURE__ */ (() => {
      const SURROGATE_PAIR_RE = /[\uD800-\uDBFF][\uDC00-\uDFFF]/g;
      return (input) => {
        let surrogatePairsNr = 0;
        SURROGATE_PAIR_RE.lastIndex = 0;
        while (SURROGATE_PAIR_RE.test(input)) {
          surrogatePairsNr += 1;
        }
        return input.length - surrogatePairsNr;
      };
    })();
    isFullWidth = (x3) => {
      return x3 === 12288 || x3 >= 65281 && x3 <= 65376 || x3 >= 65504 && x3 <= 65510;
    };
    isWideNotCJKTNotEmoji = (x3) => {
      return x3 === 8987 || x3 === 9001 || x3 >= 12272 && x3 <= 12287 || x3 >= 12289 && x3 <= 12350 || x3 >= 12441 && x3 <= 12543 || x3 >= 12549 && x3 <= 12591 || x3 >= 12593 && x3 <= 12686 || x3 >= 12688 && x3 <= 12771 || x3 >= 12783 && x3 <= 12830 || x3 >= 12832 && x3 <= 12871 || x3 >= 12880 && x3 <= 19903 || x3 >= 65040 && x3 <= 65049 || x3 >= 65072 && x3 <= 65106 || x3 >= 65108 && x3 <= 65126 || x3 >= 65128 && x3 <= 65131 || x3 >= 127488 && x3 <= 127490 || x3 >= 127504 && x3 <= 127547 || x3 >= 127552 && x3 <= 127560 || x3 >= 131072 && x3 <= 196605 || x3 >= 196608 && x3 <= 262141;
    };
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/fast-string-truncated-width/3.0.3/5e16650deba0731567b17e8a4a9273e5b04fa18f3f27351a1f8f22294279d082/node_modules/fast-string-truncated-width/dist/index.js
var ANSI_RE, CONTROL_RE, CJKT_WIDE_RE, TAB_RE, EMOJI_RE, LATIN_RE, MODIFIER_RE, NO_TRUNCATION, getStringTruncatedWidth, dist_default2;
var init_dist5 = __esm({
  "../../../../../setup-pnpm/store/v11/links/@/fast-string-truncated-width/3.0.3/5e16650deba0731567b17e8a4a9273e5b04fa18f3f27351a1f8f22294279d082/node_modules/fast-string-truncated-width/dist/index.js"() {
    init_utils2();
    ANSI_RE = /[\u001b\u009b][[()#;?]*(?:[0-9]{1,4}(?:;[0-9]{0,4})*)?[0-9A-ORZcf-nqry=><]|\u001b\]8;[^;]*;.*?(?:\u0007|\u001b\u005c)/y;
    CONTROL_RE = /[\x00-\x08\x0A-\x1F\x7F-\x9F]{1,1000}/y;
    CJKT_WIDE_RE = /(?:(?![\uFF61-\uFF9F\uFF00-\uFFEF])[\p{Script=Han}\p{Script=Hiragana}\p{Script=Katakana}\p{Script=Hangul}\p{Script=Tangut}]){1,1000}/yu;
    TAB_RE = /\t{1,1000}/y;
    EMOJI_RE = /[\u{1F1E6}-\u{1F1FF}]{2}|\u{1F3F4}[\u{E0061}-\u{E007A}]{2}[\u{E0030}-\u{E0039}\u{E0061}-\u{E007A}]{1,3}\u{E007F}|(?:\p{Emoji}\uFE0F\u20E3?|\p{Emoji_Modifier_Base}\p{Emoji_Modifier}?|\p{Emoji_Presentation})(?:\u200D(?:\p{Emoji_Modifier_Base}\p{Emoji_Modifier}?|\p{Emoji_Presentation}|\p{Emoji}\uFE0F\u20E3?))*/yu;
    LATIN_RE = /(?:[\x20-\x7E\xA0-\xFF](?!\uFE0F)){1,1000}/y;
    MODIFIER_RE = /\p{M}+/gu;
    NO_TRUNCATION = { limit: Infinity, ellipsis: "" };
    getStringTruncatedWidth = (input, truncationOptions = {}, widthOptions = {}) => {
      const LIMIT = truncationOptions.limit ?? Infinity;
      const ELLIPSIS = truncationOptions.ellipsis ?? "";
      const ELLIPSIS_WIDTH = truncationOptions?.ellipsisWidth ?? (ELLIPSIS ? getStringTruncatedWidth(ELLIPSIS, NO_TRUNCATION, widthOptions).width : 0);
      const ANSI_WIDTH = 0;
      const CONTROL_WIDTH = widthOptions.controlWidth ?? 0;
      const TAB_WIDTH = widthOptions.tabWidth ?? 8;
      const EMOJI_WIDTH = widthOptions.emojiWidth ?? 2;
      const FULL_WIDTH_WIDTH = 2;
      const REGULAR_WIDTH = widthOptions.regularWidth ?? 1;
      const WIDE_WIDTH = widthOptions.wideWidth ?? FULL_WIDTH_WIDTH;
      const PARSE_BLOCKS = [
        [LATIN_RE, REGULAR_WIDTH],
        [ANSI_RE, ANSI_WIDTH],
        [CONTROL_RE, CONTROL_WIDTH],
        [TAB_RE, TAB_WIDTH],
        [EMOJI_RE, EMOJI_WIDTH],
        [CJKT_WIDE_RE, WIDE_WIDTH]
      ];
      let indexPrev = 0;
      let index2 = 0;
      let length = input.length;
      let lengthExtra = 0;
      let truncationEnabled = false;
      let truncationIndex = length;
      let truncationLimit = Math.max(0, LIMIT - ELLIPSIS_WIDTH);
      let unmatchedStart = 0;
      let unmatchedEnd = 0;
      let width = 0;
      let widthExtra = 0;
      outer: while (true) {
        if (unmatchedEnd > unmatchedStart || index2 >= length && index2 > indexPrev) {
          const unmatched = input.slice(unmatchedStart, unmatchedEnd) || input.slice(indexPrev, index2);
          lengthExtra = 0;
          for (const char of unmatched.replaceAll(MODIFIER_RE, "")) {
            const codePoint = char.codePointAt(0) || 0;
            if (isFullWidth(codePoint)) {
              widthExtra = FULL_WIDTH_WIDTH;
            } else if (isWideNotCJKTNotEmoji(codePoint)) {
              widthExtra = WIDE_WIDTH;
            } else {
              widthExtra = REGULAR_WIDTH;
            }
            if (width + widthExtra > truncationLimit) {
              truncationIndex = Math.min(truncationIndex, Math.max(unmatchedStart, indexPrev) + lengthExtra);
            }
            if (width + widthExtra > LIMIT) {
              truncationEnabled = true;
              break outer;
            }
            lengthExtra += char.length;
            width += widthExtra;
          }
          unmatchedStart = unmatchedEnd = 0;
        }
        if (index2 >= length) {
          break outer;
        }
        for (let i4 = 0, l = PARSE_BLOCKS.length; i4 < l; i4++) {
          const [BLOCK_RE, BLOCK_WIDTH] = PARSE_BLOCKS[i4];
          BLOCK_RE.lastIndex = index2;
          if (BLOCK_RE.test(input)) {
            lengthExtra = BLOCK_RE === CJKT_WIDE_RE ? getCodePointsLength(input.slice(index2, BLOCK_RE.lastIndex)) : BLOCK_RE === EMOJI_RE ? 1 : BLOCK_RE.lastIndex - index2;
            widthExtra = lengthExtra * BLOCK_WIDTH;
            if (width + widthExtra > truncationLimit) {
              truncationIndex = Math.min(truncationIndex, index2 + Math.floor((truncationLimit - width) / BLOCK_WIDTH));
            }
            if (width + widthExtra > LIMIT) {
              truncationEnabled = true;
              break outer;
            }
            width += widthExtra;
            unmatchedStart = indexPrev;
            unmatchedEnd = index2;
            index2 = indexPrev = BLOCK_RE.lastIndex;
            continue outer;
          }
        }
        index2 += 1;
      }
      return {
        width: truncationEnabled ? truncationLimit : width,
        index: truncationEnabled ? truncationIndex : length,
        truncated: truncationEnabled,
        ellipsed: truncationEnabled && LIMIT >= ELLIPSIS_WIDTH
      };
    };
    dist_default2 = getStringTruncatedWidth;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/fast-string-width/3.0.2/378e142101ffa5bddf52b373c8b45b521bca18993a6dcb9848fd99b62a701708/node_modules/fast-string-width/dist/index.js
var NO_TRUNCATION2, fastStringWidth, dist_default3;
var init_dist6 = __esm({
  "../../../../../setup-pnpm/store/v11/links/@/fast-string-width/3.0.2/378e142101ffa5bddf52b373c8b45b521bca18993a6dcb9848fd99b62a701708/node_modules/fast-string-width/dist/index.js"() {
    init_dist5();
    NO_TRUNCATION2 = {
      limit: Infinity,
      ellipsis: "",
      ellipsisWidth: 0
    };
    fastStringWidth = (input, options = {}) => {
      return dist_default2(input, NO_TRUNCATION2, options).width;
    };
    dist_default3 = fastStringWidth;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/fast-wrap-ansi/0.2.2/d6d9890ab532acfc4e08e1ab9e00aa00b53ead91b46161e22c2a36be0788426a/node_modules/fast-wrap-ansi/lib/main.js
function wrapAnsi(string, columns, options) {
  return String(string).normalize().split(CRLF_OR_LF).map((line) => exec(line, columns, options)).join("\n");
}
var ESC, CSI, END_CODE, ANSI_ESCAPE_BELL, ANSI_CSI, ANSI_OSC, ANSI_SGR_TERMINATOR, ANSI_ESCAPE_LINK, GROUP_REGEX, getClosingCode, wrapAnsiCode, wrapAnsiHyperlink, wrapWord, stringVisibleTrimSpacesRight, exec, CRLF_OR_LF;
var init_main2 = __esm({
  "../../../../../setup-pnpm/store/v11/links/@/fast-wrap-ansi/0.2.2/d6d9890ab532acfc4e08e1ab9e00aa00b53ead91b46161e22c2a36be0788426a/node_modules/fast-wrap-ansi/lib/main.js"() {
    init_dist6();
    ESC = "\x1B";
    CSI = "\x9B";
    END_CODE = 39;
    ANSI_ESCAPE_BELL = "\x07";
    ANSI_CSI = "[";
    ANSI_OSC = "]";
    ANSI_SGR_TERMINATOR = "m";
    ANSI_ESCAPE_LINK = `${ANSI_OSC}8;;`;
    GROUP_REGEX = new RegExp(`(?:\\${ANSI_CSI}(?<code>\\d+)m|\\${ANSI_ESCAPE_LINK}(?<uri>.*)${ANSI_ESCAPE_BELL})`, "y");
    getClosingCode = (openingCode) => {
      if (openingCode >= 30 && openingCode <= 37)
        return 39;
      if (openingCode >= 90 && openingCode <= 97)
        return 39;
      if (openingCode >= 40 && openingCode <= 47)
        return 49;
      if (openingCode >= 100 && openingCode <= 107)
        return 49;
      if (openingCode === 1 || openingCode === 2)
        return 22;
      if (openingCode === 3)
        return 23;
      if (openingCode === 4)
        return 24;
      if (openingCode === 7)
        return 27;
      if (openingCode === 8)
        return 28;
      if (openingCode === 9)
        return 29;
      if (openingCode === 0)
        return 0;
      return void 0;
    };
    wrapAnsiCode = (code) => `${ESC}${ANSI_CSI}${code}${ANSI_SGR_TERMINATOR}`;
    wrapAnsiHyperlink = (url7) => `${ESC}${ANSI_ESCAPE_LINK}${url7}${ANSI_ESCAPE_BELL}`;
    wrapWord = (rows, word, columns) => {
      const characters = word[Symbol.iterator]();
      let isInsideEscape = false;
      let isInsideLinkEscape = false;
      let lastRow = rows.at(-1);
      let visible = lastRow === void 0 ? 0 : dist_default3(lastRow);
      let currentCharacter = characters.next();
      let nextCharacter = characters.next();
      let rawCharacterIndex = 0;
      while (!currentCharacter.done) {
        const character = currentCharacter.value;
        const characterLength = dist_default3(character);
        if (visible + characterLength <= columns) {
          rows[rows.length - 1] += character;
        } else {
          rows.push(character);
          visible = 0;
        }
        if (character === ESC || character === CSI) {
          isInsideEscape = true;
          isInsideLinkEscape = word.startsWith(ANSI_ESCAPE_LINK, rawCharacterIndex + 1);
        }
        if (isInsideEscape) {
          if (isInsideLinkEscape) {
            if (character === ANSI_ESCAPE_BELL) {
              isInsideEscape = false;
              isInsideLinkEscape = false;
            }
          } else if (character === ANSI_SGR_TERMINATOR) {
            isInsideEscape = false;
          }
        } else {
          visible += characterLength;
          if (visible === columns && !nextCharacter.done) {
            rows.push("");
            visible = 0;
          }
        }
        currentCharacter = nextCharacter;
        nextCharacter = characters.next();
        rawCharacterIndex += character.length;
      }
      lastRow = rows.at(-1);
      if (!visible && lastRow !== void 0 && lastRow.length && rows.length > 1) {
        rows[rows.length - 2] += rows.pop();
      }
    };
    stringVisibleTrimSpacesRight = (string) => {
      const words = string.split(" ");
      let last = words.length;
      while (last) {
        if (dist_default3(words[last - 1])) {
          break;
        }
        last--;
      }
      if (last === words.length) {
        return string;
      }
      return words.slice(0, last).join(" ") + words.slice(last).join("");
    };
    exec = (string, columns, options = {}) => {
      if (options.trim !== false && string.trim() === "") {
        return "";
      }
      let returnValue = "";
      let escapeCode;
      let escapeUrl;
      const words = string.split(" ");
      let rows = [""];
      let rowLength = 0;
      for (let index2 = 0; index2 < words.length; index2++) {
        const word = words[index2];
        if (options.trim !== false) {
          const row = rows.at(-1) ?? "";
          const trimmed = row.trimStart();
          if (row.length !== trimmed.length) {
            rows[rows.length - 1] = trimmed;
            rowLength = dist_default3(trimmed);
          }
        }
        if (index2 !== 0) {
          if (rowLength >= columns && (options.wordWrap === false || options.trim === false)) {
            rows.push("");
            rowLength = 0;
          }
          if (rowLength || options.trim === false) {
            rows[rows.length - 1] += " ";
            rowLength++;
          }
        }
        const wordLength = dist_default3(word);
        if (options.hard && wordLength > columns) {
          const remainingColumns = columns - rowLength;
          const breaksStartingThisLine = 1 + Math.floor((wordLength - remainingColumns - 1) / columns);
          const breaksStartingNextLine = Math.floor((wordLength - 1) / columns);
          if (breaksStartingNextLine < breaksStartingThisLine) {
            rows.push("");
          }
          wrapWord(rows, word, columns);
          rowLength = dist_default3(rows.at(-1) ?? "");
          continue;
        }
        if (rowLength + wordLength > columns && rowLength && wordLength) {
          if (options.wordWrap === false && rowLength < columns) {
            wrapWord(rows, word, columns);
            rowLength = dist_default3(rows.at(-1) ?? "");
            continue;
          }
          rows.push("");
          rowLength = 0;
        }
        if (rowLength + wordLength > columns && options.wordWrap === false) {
          wrapWord(rows, word, columns);
          rowLength = dist_default3(rows.at(-1) ?? "");
          continue;
        }
        rows[rows.length - 1] += word;
        rowLength += wordLength;
      }
      if (options.trim !== false) {
        rows = rows.map((row) => stringVisibleTrimSpacesRight(row));
      }
      const preString = rows.join("\n");
      let inSurrogate = false;
      for (let i4 = 0; i4 < preString.length; i4++) {
        const character = preString[i4];
        returnValue += character;
        if (!inSurrogate) {
          inSurrogate = character >= "\uD800" && character <= "\uDBFF";
          if (inSurrogate) {
            continue;
          }
        } else {
          inSurrogate = false;
        }
        if (character === ESC || character === CSI) {
          GROUP_REGEX.lastIndex = i4 + 1;
          const groupsResult = GROUP_REGEX.exec(preString);
          const groups = groupsResult?.groups;
          if (groups?.code !== void 0) {
            const code = Number.parseFloat(groups.code);
            escapeCode = code === END_CODE ? void 0 : code;
          } else if (groups?.uri !== void 0) {
            escapeUrl = groups.uri.length === 0 ? void 0 : groups.uri;
          }
        }
        if (preString[i4 + 1] === "\n") {
          if (escapeUrl) {
            returnValue += wrapAnsiHyperlink("");
          }
          const closingCode = escapeCode ? getClosingCode(escapeCode) : void 0;
          if (escapeCode && closingCode) {
            returnValue += wrapAnsiCode(closingCode);
          }
        } else if (character === "\n") {
          if (escapeCode && getClosingCode(escapeCode)) {
            returnValue += wrapAnsiCode(escapeCode);
          }
          if (escapeUrl) {
            returnValue += wrapAnsiHyperlink(escapeUrl);
          }
        }
      }
      return returnValue;
    };
    CRLF_OR_LF = /\r?\n/;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@inquirer/core/11.2.1/3e87a9fe1392787dec658f7ee3fb37e8f277f5c986499113cf99a0c7a7f3286e/node_modules/@inquirer/core/dist/lib/utils.js
function breakLines(content, width) {
  return content.split("\n").flatMap((line) => wrapAnsi(line, width, { trim: false, wordWrap: false }).split("\n").map((str2) => str2.trimEnd())).join("\n");
}
function readlineWidth() {
  return (0, import_cli_width.default)({ defaultWidth: 80, output: readline().output });
}
var import_cli_width;
var init_utils3 = __esm({
  "../../../../../setup-pnpm/store/v11/links/@inquirer/core/11.2.1/3e87a9fe1392787dec658f7ee3fb37e8f277f5c986499113cf99a0c7a7f3286e/node_modules/@inquirer/core/dist/lib/utils.js"() {
    import_cli_width = __toESM(require_cli_width(), 1);
    init_main2();
    init_hook_engine();
  }
});

// ../../../../../setup-pnpm/store/v11/links/@inquirer/core/11.2.1/3e87a9fe1392787dec658f7ee3fb37e8f277f5c986499113cf99a0c7a7f3286e/node_modules/@inquirer/core/dist/lib/pagination/use-pagination.js
function usePointerPosition({ active, renderedItems, pageSize, loop }) {
  const state = useRef({
    lastPointer: active,
    lastActive: void 0
  });
  const { lastPointer, lastActive } = state.current;
  const middle = Math.floor(pageSize / 2);
  const renderedLength = renderedItems.reduce((acc, item) => acc + item.length, 0);
  const defaultPointerPosition = renderedItems.slice(0, active).reduce((acc, item) => acc + item.length, 0);
  let pointer = defaultPointerPosition;
  if (renderedLength > pageSize) {
    if (loop) {
      pointer = lastPointer;
      if (
        // First render, skip this logic.
        lastActive != null && // Only move the pointer down when the user moves down.
        lastActive < active && // Check user didn't move up across page boundary.
        active - lastActive < pageSize
      ) {
        pointer = Math.min(
          // Furthest allowed position for the pointer is the middle of the list
          middle,
          Math.abs(active - lastActive) === 1 ? Math.min(
            // Move the pointer at most the height of the last active item.
            lastPointer + (renderedItems[lastActive]?.length ?? 0),
            // If the user moved by one item, move the pointer to the natural position of the active item as
            // long as it doesn't move the cursor up.
            Math.max(defaultPointerPosition, lastPointer)
          ) : (
            // Otherwise, move the pointer down by the difference between the active and last active item.
            lastPointer + active - lastActive
          )
        );
      }
    } else {
      const spaceUnderActive = renderedItems.slice(active).reduce((acc, item) => acc + item.length, 0);
      pointer = spaceUnderActive < pageSize - middle ? (
        // If the active item is near the end of the list, progressively move the cursor towards the end.
        pageSize - spaceUnderActive
      ) : (
        // Otherwise, progressively move the pointer to the middle of the list.
        Math.min(defaultPointerPosition, middle)
      );
    }
  }
  state.current.lastPointer = pointer;
  state.current.lastActive = active;
  return pointer;
}
function usePagination({ items, active, renderItem, pageSize, loop = true }) {
  const width = readlineWidth();
  const bound = (num) => (num % items.length + items.length) % items.length;
  const renderedItems = items.map((item, index2) => {
    if (item == null)
      return [];
    return breakLines(renderItem({ item, index: index2, isActive: index2 === active }), width).split("\n");
  });
  const renderedLength = renderedItems.reduce((acc, item) => acc + item.length, 0);
  const renderItemAtIndex = (index2) => renderedItems[index2] ?? [];
  const pointer = usePointerPosition({ active, renderedItems, pageSize, loop });
  const activeItem = renderItemAtIndex(active).slice(0, pageSize);
  const activeItemPosition = pointer + activeItem.length <= pageSize ? pointer : pageSize - activeItem.length;
  const pageBuffer = Array.from({ length: pageSize });
  pageBuffer.splice(activeItemPosition, activeItem.length, ...activeItem);
  const itemVisited = /* @__PURE__ */ new Set([active]);
  let bufferPointer = activeItemPosition + activeItem.length;
  let itemPointer = bound(active + 1);
  while (bufferPointer < pageSize && !itemVisited.has(itemPointer) && (loop && renderedLength > pageSize ? itemPointer !== active : itemPointer > active)) {
    const lines = renderItemAtIndex(itemPointer);
    const linesToAdd = lines.slice(0, pageSize - bufferPointer);
    pageBuffer.splice(bufferPointer, linesToAdd.length, ...linesToAdd);
    itemVisited.add(itemPointer);
    bufferPointer += linesToAdd.length;
    itemPointer = bound(itemPointer + 1);
  }
  bufferPointer = activeItemPosition - 1;
  itemPointer = bound(active - 1);
  while (bufferPointer >= 0 && !itemVisited.has(itemPointer) && (loop && renderedLength > pageSize ? itemPointer !== active : itemPointer < active)) {
    const lines = renderItemAtIndex(itemPointer);
    const linesToAdd = lines.slice(Math.max(0, lines.length - bufferPointer - 1));
    pageBuffer.splice(bufferPointer - linesToAdd.length + 1, linesToAdd.length, ...linesToAdd);
    itemVisited.add(itemPointer);
    bufferPointer -= linesToAdd.length;
    itemPointer = bound(itemPointer - 1);
  }
  return pageBuffer.filter((line) => typeof line === "string").join("\n");
}
var init_use_pagination = __esm({
  "../../../../../setup-pnpm/store/v11/links/@inquirer/core/11.2.1/3e87a9fe1392787dec658f7ee3fb37e8f277f5c986499113cf99a0c7a7f3286e/node_modules/@inquirer/core/dist/lib/pagination/use-pagination.js"() {
    init_use_ref();
    init_utils3();
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/mute-stream/3.0.0/c9e7a87f43c96632fd4785c811d0f11ac7d56537b741b07f04cb1fbe09e93e82/node_modules/mute-stream/lib/index.js
var require_lib21 = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/mute-stream/3.0.0/c9e7a87f43c96632fd4785c811d0f11ac7d56537b741b07f04cb1fbe09e93e82/node_modules/mute-stream/lib/index.js"(exports2, module2) {
    var Stream = __require("stream");
    var MuteStream2 = class extends Stream {
      #isTTY = null;
      constructor(opts3 = {}) {
        super(opts3);
        this.writable = this.readable = true;
        this.muted = false;
        this.on("pipe", this._onpipe);
        this.replace = opts3.replace;
        this._prompt = opts3.prompt || null;
        this._hadControl = false;
      }
      #destSrc(key, def) {
        if (this._dest) {
          return this._dest[key];
        }
        if (this._src) {
          return this._src[key];
        }
        return def;
      }
      #proxy(method2, ...args) {
        if (typeof this._dest?.[method2] === "function") {
          this._dest[method2](...args);
        }
        if (typeof this._src?.[method2] === "function") {
          this._src[method2](...args);
        }
      }
      get isTTY() {
        if (this.#isTTY !== null) {
          return this.#isTTY;
        }
        return this.#destSrc("isTTY", false);
      }
      // basically just get replace the getter/setter with a regular value
      set isTTY(val) {
        this.#isTTY = val;
      }
      get rows() {
        return this.#destSrc("rows");
      }
      get columns() {
        return this.#destSrc("columns");
      }
      mute() {
        this.muted = true;
      }
      unmute() {
        this.muted = false;
      }
      _onpipe(src2) {
        this._src = src2;
      }
      pipe(dest, options) {
        this._dest = dest;
        return super.pipe(dest, options);
      }
      pause() {
        if (this._src) {
          return this._src.pause();
        }
      }
      resume() {
        if (this._src) {
          return this._src.resume();
        }
      }
      write(c3) {
        if (this.muted) {
          if (!this.replace) {
            return true;
          }
          if (c3.match(/^\u001b/)) {
            if (c3.indexOf(this._prompt) === 0) {
              c3 = c3.slice(this._prompt.length);
              c3 = c3.replace(/./g, this.replace);
              c3 = this._prompt + c3;
            }
            this._hadControl = true;
            return this.emit("data", c3);
          } else {
            if (this._prompt && this._hadControl && c3.indexOf(this._prompt) === 0) {
              this._hadControl = false;
              this.emit("data", this._prompt);
              c3 = c3.slice(this._prompt.length);
            }
            c3 = c3.toString().replace(/./g, this.replace);
          }
        }
        this.emit("data", c3);
      }
      end(c3) {
        if (this.muted) {
          if (c3 && this.replace) {
            c3 = c3.toString().replace(/./g, this.replace);
          } else {
            c3 = null;
          }
        }
        if (c3) {
          this.emit("data", c3);
        }
        this.emit("end");
      }
      destroy(...args) {
        return this.#proxy("destroy", ...args);
      }
      destroySoon(...args) {
        return this.#proxy("destroySoon", ...args);
      }
      close(...args) {
        return this.#proxy("close", ...args);
      }
    };
    module2.exports = MuteStream2;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@inquirer/ansi/2.0.7/bfade824d61eadb55969f60cea50f7cd5fe1493dcbda84d95f87de2576400b86/node_modules/@inquirer/ansi/dist/index.js
var ESC2, cursorLeft, cursorHide, cursorShow, cursorUp, cursorDown, cursorTo, eraseLine, eraseLines;
var init_dist7 = __esm({
  "../../../../../setup-pnpm/store/v11/links/@inquirer/ansi/2.0.7/bfade824d61eadb55969f60cea50f7cd5fe1493dcbda84d95f87de2576400b86/node_modules/@inquirer/ansi/dist/index.js"() {
    ESC2 = "\x1B[";
    cursorLeft = ESC2 + "G";
    cursorHide = ESC2 + "?25l";
    cursorShow = ESC2 + "?25h";
    cursorUp = (rows = 1) => rows > 0 ? `${ESC2}${rows}A` : "";
    cursorDown = (rows = 1) => rows > 0 ? `${ESC2}${rows}B` : "";
    cursorTo = (x3, y) => {
      if (typeof y === "number" && !Number.isNaN(y)) {
        return `${ESC2}${y + 1};${x3 + 1}H`;
      }
      return `${ESC2}${x3 + 1}G`;
    };
    eraseLine = ESC2 + "2K";
    eraseLines = (lines) => lines > 0 ? (eraseLine + cursorUp(1)).repeat(lines - 1) + eraseLine + cursorLeft : "";
  }
});

// ../../../../../setup-pnpm/store/v11/links/@inquirer/core/11.2.1/3e87a9fe1392787dec658f7ee3fb37e8f277f5c986499113cf99a0c7a7f3286e/node_modules/@inquirer/core/dist/lib/screen-manager.js
import { stripVTControlCharacters as stripVTControlCharacters2 } from "node:util";
var height, lastLine, ScreenManager;
var init_screen_manager = __esm({
  "../../../../../setup-pnpm/store/v11/links/@inquirer/core/11.2.1/3e87a9fe1392787dec658f7ee3fb37e8f277f5c986499113cf99a0c7a7f3286e/node_modules/@inquirer/core/dist/lib/screen-manager.js"() {
    init_utils3();
    init_dist7();
    height = (content) => content.split("\n").length;
    lastLine = (content) => content.split("\n").pop() ?? "";
    ScreenManager = class {
      // These variables are keeping information to allow correct prompt re-rendering
      height = 0;
      extraLinesUnderPrompt = 0;
      cursorPos;
      rl;
      constructor(rl) {
        this.rl = rl;
        this.cursorPos = rl.getCursorPos();
      }
      write(content) {
        this.rl.output.unmute();
        this.rl.output.write(content);
        this.rl.output.mute();
      }
      render(content, bottomContent = "") {
        const promptLine = lastLine(content);
        const rawPromptLine = stripVTControlCharacters2(promptLine);
        let prompt = rawPromptLine;
        if (this.rl.line.length > 0) {
          prompt = prompt.slice(0, -this.rl.line.length);
        }
        this.rl.setPrompt(prompt);
        this.cursorPos = this.rl.getCursorPos();
        const width = readlineWidth();
        content = breakLines(content, width);
        bottomContent = breakLines(bottomContent, width);
        if (rawPromptLine.length % width === 0) {
          content += "\n";
        }
        let output = content + (bottomContent ? "\n" + bottomContent : "");
        const promptLineUpDiff = Math.floor(rawPromptLine.length / width) - this.cursorPos.rows;
        const bottomContentHeight = promptLineUpDiff + (bottomContent ? height(bottomContent) : 0);
        if (bottomContentHeight > 0)
          output += cursorUp(bottomContentHeight);
        output += cursorTo(this.cursorPos.cols);
        this.write(cursorDown(this.extraLinesUnderPrompt) + eraseLines(this.height) + output);
        this.extraLinesUnderPrompt = bottomContentHeight;
        this.height = height(output);
      }
      checkCursorPos() {
        const cursorPos = this.rl.getCursorPos();
        if (cursorPos.cols !== this.cursorPos.cols) {
          this.write(cursorTo(cursorPos.cols));
          this.cursorPos = cursorPos;
        }
      }
      done({ clearContent }) {
        this.rl.setPrompt("");
        let output = cursorDown(this.extraLinesUnderPrompt);
        output += clearContent ? eraseLines(this.height) : "\n";
        output += cursorLeft;
        output += cursorShow;
        this.write(output);
        this.rl.close();
      }
    };
  }
});

// ../../../../../setup-pnpm/store/v11/links/@inquirer/core/11.2.1/3e87a9fe1392787dec658f7ee3fb37e8f277f5c986499113cf99a0c7a7f3286e/node_modules/@inquirer/core/dist/lib/promise-polyfill.js
var PromisePolyfill;
var init_promise_polyfill = __esm({
  "../../../../../setup-pnpm/store/v11/links/@inquirer/core/11.2.1/3e87a9fe1392787dec658f7ee3fb37e8f277f5c986499113cf99a0c7a7f3286e/node_modules/@inquirer/core/dist/lib/promise-polyfill.js"() {
    PromisePolyfill = class extends Promise {
      // Available starting from Node 22
      // https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Promise/withResolvers
      static withResolver() {
        let resolve4;
        let reject3;
        const promise2 = new Promise((res, rej) => {
          resolve4 = res;
          reject3 = rej;
        });
        return { promise: promise2, resolve: resolve4, reject: reject3 };
      }
    };
  }
});

// ../../../../../setup-pnpm/store/v11/links/@inquirer/core/11.2.1/3e87a9fe1392787dec658f7ee3fb37e8f277f5c986499113cf99a0c7a7f3286e/node_modules/@inquirer/core/dist/lib/create-prompt.js
import * as readline2 from "node:readline";
import { AsyncResource as AsyncResource3 } from "node:async_hooks";
import path50 from "node:path";
function getCallSites() {
  const savedPrepareStackTrace = Error.prepareStackTrace;
  let result2 = [];
  try {
    Error.prepareStackTrace = (_, callSites) => {
      const callSitesWithoutCurrent = callSites.slice(1);
      result2 = callSitesWithoutCurrent;
      return callSitesWithoutCurrent;
    };
    new Error().stack;
  } catch {
    return result2;
  }
  Error.prepareStackTrace = savedPrepareStackTrace;
  return result2;
}
function createPrompt(view) {
  const callSites = getCallSites();
  const prompt = (config2, context = {}) => {
    const { input = process.stdin, signal } = context;
    const cleanups = /* @__PURE__ */ new Set();
    const output = new import_mute_stream.default();
    output.pipe(context.output ?? process.stdout);
    const rl = readline2.createInterface({
      terminal: true,
      input,
      output
    });
    output.mute();
    const screen = new ScreenManager(rl);
    const { promise: promise2, resolve: resolve4, reject: reject3 } = PromisePolyfill.withResolver();
    const cancel2 = () => reject3(new CancelPromptError());
    if (signal) {
      const abort = () => reject3(new AbortPromptError({ cause: signal.reason }));
      if (signal.aborted) {
        abort();
        return Object.assign(promise2, { cancel: cancel2 });
      }
      signal.addEventListener("abort", abort);
      cleanups.add(() => signal.removeEventListener("abort", abort));
    }
    cleanups.add(onExit((code, signal2) => {
      reject3(new ExitPromptError(`User force closed the prompt with ${code} ${signal2}`));
    }));
    const sigint = () => reject3(new ExitPromptError(`User force closed the prompt with SIGINT`));
    rl.on("SIGINT", sigint);
    cleanups.add(() => rl.removeListener("SIGINT", sigint));
    return withHooks(rl, (cycle) => {
      const hooksCleanup = AsyncResource3.bind(() => effectScheduler.clearAll());
      rl.on("close", hooksCleanup);
      cleanups.add(() => rl.removeListener("close", hooksCleanup));
      const startCycle = () => {
        const checkCursorPos = () => screen.checkCursorPos();
        rl.input.on("keypress", checkCursorPos);
        cleanups.add(() => rl.input.removeListener("keypress", checkCursorPos));
        let pendingDone = null;
        cycle(() => {
          let effectsSettled = false;
          try {
            const nextView = view(config2, (value) => {
              if (effectsSettled) {
                resolve4(value);
              } else {
                pendingDone = { value };
              }
            });
            if (nextView === void 0) {
              let callerFilename = callSites[1]?.getFileName();
              if (callerFilename && !callerFilename.startsWith("file://")) {
                callerFilename = path50.resolve(callerFilename);
              }
              throw new Error(`Prompt functions must return a string.
    at ${callerFilename}`);
            }
            const [content, bottomContent] = typeof nextView === "string" ? [nextView] : nextView;
            screen.render(content, bottomContent);
            effectScheduler.run();
          } catch (error) {
            reject3(error);
          }
          effectsSettled = true;
          if (pendingDone !== null) {
            const { value } = pendingDone;
            pendingDone = null;
            resolve4(value);
          }
        });
      };
      if ("readableFlowing" in input) {
        nativeSetImmediate(startCycle);
      } else {
        startCycle();
      }
      return Object.assign(promise2.then((answer) => {
        effectScheduler.clearAll();
        return answer;
      }, (error) => {
        effectScheduler.clearAll();
        throw error;
      }).finally(() => {
        cleanups.forEach((cleanup2) => cleanup2());
        screen.done({ clearContent: Boolean(context.clearPromptOnDone) });
        output.end();
      }).then(() => promise2), { cancel: cancel2 });
    });
  };
  return prompt;
}
var import_mute_stream, nativeSetImmediate;
var init_create_prompt = __esm({
  "../../../../../setup-pnpm/store/v11/links/@inquirer/core/11.2.1/3e87a9fe1392787dec658f7ee3fb37e8f277f5c986499113cf99a0c7a7f3286e/node_modules/@inquirer/core/dist/lib/create-prompt.js"() {
    import_mute_stream = __toESM(require_lib21(), 1);
    init_mjs();
    init_screen_manager();
    init_promise_polyfill();
    init_hook_engine();
    init_errors();
    nativeSetImmediate = globalThis.setImmediate;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@inquirer/core/11.2.1/3e87a9fe1392787dec658f7ee3fb37e8f277f5c986499113cf99a0c7a7f3286e/node_modules/@inquirer/core/dist/lib/Separator.js
import { styleText as styleText2 } from "node:util";
var Separator;
var init_Separator = __esm({
  "../../../../../setup-pnpm/store/v11/links/@inquirer/core/11.2.1/3e87a9fe1392787dec658f7ee3fb37e8f277f5c986499113cf99a0c7a7f3286e/node_modules/@inquirer/core/dist/lib/Separator.js"() {
    init_dist4();
    Separator = class {
      separator = styleText2("dim", Array.from({ length: 15 }).join(dist_default.line));
      type = "separator";
      constructor(separator) {
        if (separator) {
          this.separator = separator;
        }
      }
      static isSeparator(choice) {
        return Boolean(choice && typeof choice === "object" && "type" in choice && choice.type === "separator");
      }
    };
  }
});

// ../../../../../setup-pnpm/store/v11/links/@inquirer/core/11.2.1/3e87a9fe1392787dec658f7ee3fb37e8f277f5c986499113cf99a0c7a7f3286e/node_modules/@inquirer/core/dist/index.js
var init_dist8 = __esm({
  "../../../../../setup-pnpm/store/v11/links/@inquirer/core/11.2.1/3e87a9fe1392787dec658f7ee3fb37e8f277f5c986499113cf99a0c7a7f3286e/node_modules/@inquirer/core/dist/index.js"() {
    init_key();
    init_errors();
    init_use_prefix();
    init_use_state();
    init_use_effect();
    init_use_memo();
    init_use_ref();
    init_use_keypress();
    init_make_theme();
    init_use_pagination();
    init_create_prompt();
    init_Separator();
  }
});

// ../../../../../setup-pnpm/store/v11/links/@inquirer/checkbox/5.2.1/71d5b1bf6d2672e02a1e29a2232a87dbae3e854152927ca4f09859624b5d647f/node_modules/@inquirer/checkbox/dist/index.js
import { styleText as styleText3 } from "node:util";
function isSelectable(item) {
  return !Separator.isSeparator(item) && !item.disabled;
}
function isNavigable(item) {
  return !Separator.isSeparator(item);
}
function isChecked(item) {
  return !Separator.isSeparator(item) && item.checked;
}
function toggle(item) {
  return isSelectable(item) ? { ...item, checked: !item.checked } : item;
}
function check(checked) {
  return function(item) {
    return isSelectable(item) ? { ...item, checked } : item;
  };
}
function normalizeChoices(choices) {
  return choices.map((choice) => {
    if (Separator.isSeparator(choice))
      return choice;
    if (typeof choice !== "object" || choice === null || !("value" in choice)) {
      const name2 = String(choice);
      return {
        value: choice,
        name: name2,
        short: name2,
        checkedName: name2,
        disabled: false,
        checked: false
      };
    }
    const name = choice.name ?? String(choice.value);
    const normalizedChoice = {
      value: choice.value,
      name,
      short: choice.short ?? name,
      checkedName: choice.checkedName ?? name,
      disabled: choice.disabled ?? false,
      checked: choice.checked ?? false
    };
    if (choice.description) {
      normalizedChoice.description = choice.description;
    }
    return normalizedChoice;
  });
}
var checkboxTheme, dist_default4;
var init_dist9 = __esm({
  "../../../../../setup-pnpm/store/v11/links/@inquirer/checkbox/5.2.1/71d5b1bf6d2672e02a1e29a2232a87dbae3e854152927ca4f09859624b5d647f/node_modules/@inquirer/checkbox/dist/index.js"() {
    init_dist8();
    init_dist7();
    init_dist4();
    init_dist8();
    checkboxTheme = {
      icon: {
        checked: styleText3("green", dist_default.circleFilled),
        unchecked: dist_default.circle,
        cursor: dist_default.pointer,
        disabledChecked: styleText3("green", dist_default.circleDouble),
        disabledUnchecked: "-"
      },
      style: {
        disabled: (text) => styleText3("dim", text),
        renderSelectedChoices: (selectedChoices) => selectedChoices.map((choice) => choice.short).join(", "),
        description: (text) => styleText3("cyan", text),
        keysHelpTip: (keys4) => keys4.map(([key, action]) => `${styleText3("bold", key)} ${styleText3("dim", action)}`).join(styleText3("dim", " \u2022 "))
      },
      i18n: { disabledError: "This option is disabled and cannot be toggled." }
    };
    dist_default4 = createPrompt((config2, done) => {
      const { pageSize = 7, loop = true, required, validate: validate2 = () => true } = config2;
      const shortcuts = { all: "a", invert: "i", ...config2.shortcuts };
      const theme = makeTheme(checkboxTheme, config2.theme);
      const { keybindings: keybindings2 } = theme;
      const [status, setStatus2] = useState("idle");
      const prefix = usePrefix({ status, theme });
      const [items, setItems] = useState(normalizeChoices(config2.choices));
      const bounds = useMemo(() => {
        const first = items.findIndex(isNavigable);
        const last = items.findLastIndex(isNavigable);
        if (first === -1) {
          throw new ValidationError("[checkbox prompt] No selectable choices. All choices are disabled.");
        }
        return { first, last };
      }, [items]);
      const [active, setActive] = useState(bounds.first);
      const [errorMsg, setError] = useState();
      useKeypress(async (key) => {
        if (isEnterKey(key)) {
          const selection = items.filter(isChecked);
          const isValid = await validate2([...selection]);
          if (required && !selection.length) {
            setError("At least one choice must be selected");
          } else if (isValid === true) {
            setStatus2("done");
            done(selection.map((choice) => choice.value));
          } else {
            setError(isValid || "You must select a valid value");
          }
        } else if (isUpKey(key, keybindings2) || isDownKey(key, keybindings2)) {
          if (errorMsg) {
            setError(void 0);
          }
          if (loop || isUpKey(key, keybindings2) && active !== bounds.first || isDownKey(key, keybindings2) && active !== bounds.last) {
            const offset = isUpKey(key, keybindings2) ? -1 : 1;
            let next2 = active;
            do {
              next2 = (next2 + offset + items.length) % items.length;
            } while (!isNavigable(items[next2]));
            setActive(next2);
          }
        } else if (isSpaceKey(key)) {
          const activeItem = items[active];
          if (activeItem && !Separator.isSeparator(activeItem)) {
            if (activeItem.disabled) {
              setError(theme.i18n.disabledError);
            } else {
              setError(void 0);
              setItems(items.map((choice, i4) => i4 === active ? toggle(choice) : choice));
            }
          }
        } else if (key.name === shortcuts.all) {
          const selectAll = items.some((choice) => isSelectable(choice) && !choice.checked);
          setItems(items.map(check(selectAll)));
        } else if (key.name === shortcuts.invert) {
          setItems(items.map(toggle));
        } else if (isNumberKey(key)) {
          const selectedIndex = Number(key.name) - 1;
          let selectableIndex = -1;
          const position3 = items.findIndex((item) => {
            if (Separator.isSeparator(item))
              return false;
            selectableIndex++;
            return selectableIndex === selectedIndex;
          });
          const selectedItem = items[position3];
          if (selectedItem && isSelectable(selectedItem)) {
            setActive(position3);
            setItems(items.map((choice, i4) => i4 === position3 ? toggle(choice) : choice));
          }
        }
      });
      const message = theme.style.message(config2.message, status);
      let description;
      const page = usePagination({
        items,
        active,
        renderItem({ item, isActive }) {
          if (Separator.isSeparator(item)) {
            return ` ${item.separator}`;
          }
          const cursor = isActive ? theme.icon.cursor : " ";
          if (item.disabled) {
            const disabledLabel = typeof item.disabled === "string" ? item.disabled : "(disabled)";
            const checkbox2 = item.checked ? theme.icon.disabledChecked : theme.icon.disabledUnchecked;
            return theme.style.disabled(`${cursor}${checkbox2} ${item.name} ${disabledLabel}`);
          }
          if (isActive) {
            description = item.description;
          }
          const checkbox = item.checked ? theme.icon.checked : theme.icon.unchecked;
          const name = item.checked ? item.checkedName : item.name;
          const color = isActive ? theme.style.highlight : (x3) => x3;
          return color(`${cursor}${checkbox} ${name}`);
        },
        pageSize,
        loop
      });
      if (status === "done") {
        const selection = items.filter(isChecked);
        const answer = theme.style.answer(theme.style.renderSelectedChoices(selection, items));
        return [prefix, message, answer].filter(Boolean).join(" ");
      }
      const keys4 = [
        ["\u2191\u2193", "navigate"],
        ["space", "select"]
      ];
      if (shortcuts.all)
        keys4.push([shortcuts.all, "all"]);
      if (shortcuts.invert)
        keys4.push([shortcuts.invert, "invert"]);
      keys4.push(["\u23CE", "submit"]);
      const helpLine = theme.style.keysHelpTip(keys4);
      const lines = [
        [prefix, message].filter(Boolean).join(" "),
        page,
        " ",
        description ? theme.style.description(description) : "",
        errorMsg ? theme.style.error(errorMsg) : "",
        helpLine
      ].filter(Boolean).join("\n").trimEnd();
      return `${lines}${cursorHide}`;
    });
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/safer-buffer/2.1.2/7aea9b095994aca14d0c650f31af95178b10047e65f9fd03884a27cdb72c2c20/node_modules/safer-buffer/safer.js
var require_safer = __commonJS({
  "../../../../../setup-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 Buffer6 = 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 Buffer6) {
      if (!Buffer6.hasOwnProperty(key)) continue;
      if (key === "allocUnsafe" || key === "allocUnsafeSlow") continue;
      Safer[key] = Buffer6[key];
    }
    safer.Buffer.prototype = Buffer6.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 Buffer6(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 = Buffer6(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;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/iconv-lite/0.7.3/b8dff172719028b16b33941a2dd4a120b3cb74b894c3dec3bb0a13a3f8733d46/node_modules/iconv-lite/lib/bom-handling.js
var require_bom_handling = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/iconv-lite/0.7.3/b8dff172719028b16b33941a2dd4a120b3cb74b894c3dec3bb0a13a3f8733d46/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();
    };
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/iconv-lite/0.7.3/b8dff172719028b16b33941a2dd4a120b3cb74b894c3dec3bb0a13a3f8733d46/node_modules/iconv-lite/lib/helpers/merge-exports.js
var require_merge_exports = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/iconv-lite/0.7.3/b8dff172719028b16b33941a2dd4a120b3cb74b894c3dec3bb0a13a3f8733d46/node_modules/iconv-lite/lib/helpers/merge-exports.js"(exports2, module2) {
    "use strict";
    var hasOwn2 = typeof Object.hasOwn === "undefined" ? Function.call.bind(Object.prototype.hasOwnProperty) : Object.hasOwn;
    function mergeModules(target2, module3) {
      for (var key in module3) {
        if (hasOwn2(module3, key)) {
          target2[key] = module3[key];
        }
      }
    }
    module2.exports = mergeModules;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/iconv-lite/0.7.3/b8dff172719028b16b33941a2dd4a120b3cb74b894c3dec3bb0a13a3f8733d46/node_modules/iconv-lite/encodings/internal.js
var require_internal = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/iconv-lite/0.7.3/b8dff172719028b16b33941a2dd4a120b3cb74b894c3dec3bb0a13a3f8733d46/node_modules/iconv-lite/encodings/internal.js"(exports2, module2) {
    "use strict";
    var Buffer6 = 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 (Buffer6.from("eda0bdedb2a9", "hex").toString() !== "\u{1F4A9}") {
          this.decoder = InternalDecoderCesu8;
          this.defaultCharUnicode = iconv.defaultCharUnicode;
        }
      }
    }
    InternalCodec.prototype.encoder = InternalEncoder;
    InternalCodec.prototype.decoder = InternalDecoder;
    var StringDecoder4 = __require("string_decoder").StringDecoder;
    function InternalDecoder(options, codec) {
      this.decoder = new StringDecoder4(codec.enc);
    }
    InternalDecoder.prototype.write = function(buf) {
      if (!Buffer6.isBuffer(buf)) {
        buf = Buffer6.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 Buffer6.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 Buffer6.from(str2, "base64");
    };
    InternalEncoderBase64.prototype.end = function() {
      return Buffer6.from(this.prevStr, "base64");
    };
    function InternalEncoderCesu8(options, codec) {
    }
    InternalEncoderCesu8.prototype.write = function(str2) {
      var buf = Buffer6.alloc(str2.length * 3);
      var bufIdx = 0;
      for (var i4 = 0; i4 < str2.length; i4++) {
        var charCode = str2.charCodeAt(i4);
        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 i4 = 0; i4 < buf.length; i4++) {
        var curByte = buf[i4];
        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 Buffer6.from(str2, this.enc);
    };
    InternalEncoderUtf8.prototype.end = function() {
      if (this.highSurrogate) {
        var str2 = this.highSurrogate;
        this.highSurrogate = "";
        return Buffer6.from(str2, this.enc);
      }
    };
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/iconv-lite/0.7.3/b8dff172719028b16b33941a2dd4a120b3cb74b894c3dec3bb0a13a3f8733d46/node_modules/iconv-lite/encodings/utf32.js
var require_utf32 = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/iconv-lite/0.7.3/b8dff172719028b16b33941a2dd4a120b3cb74b894c3dec3bb0a13a3f8733d46/node_modules/iconv-lite/encodings/utf32.js"(exports2) {
    "use strict";
    var Buffer6 = 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 = Buffer6.from(str2, "ucs2");
      var dst = Buffer6.alloc(src2.length * 2 + 4);
      var write32 = this.isLE ? dst.writeUInt32LE : dst.writeUInt32BE;
      var offset = 0;
      for (var i4 = 0; i4 < src2.length; i4 += 2) {
        var code = src2.readUInt16LE(i4);
        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 = Buffer6.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 i4 = 0;
      var codepoint = 0;
      var dst = Buffer6.alloc(src2.length + 4);
      var offset = 0;
      var isLE2 = this.isLE;
      var overflow = this.overflow;
      var badChar = this.badChar;
      if (overflow.length > 0) {
        for (; i4 < src2.length && overflow.length < 4; i4++) {
          overflow.push(src2[i4]);
        }
        if (overflow.length === 4) {
          if (isLE2) {
            codepoint = overflow[0] | overflow[1] << 8 | overflow[2] << 16 | overflow[3] << 24;
          } else {
            codepoint = overflow[3] | overflow[2] << 8 | overflow[1] << 16 | overflow[0] << 24;
          }
          overflow.length = 0;
          offset = _writeCodepoint(dst, offset, codepoint, badChar);
        }
      }
      for (; i4 < src2.length - 3; i4 += 4) {
        if (isLE2) {
          codepoint = src2[i4] | src2[i4 + 1] << 8 | src2[i4 + 2] << 16 | src2[i4 + 3] << 24;
        } else {
          codepoint = src2[i4 + 3] | src2[i4 + 2] << 8 | src2[i4 + 1] << 16 | src2[i4] << 24;
        }
        offset = _writeCodepoint(dst, offset, codepoint, badChar);
      }
      for (; i4 < src2.length; i4++) {
        overflow.push(src2[i4]);
      }
      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() {
      if (this.overflow.length === 0) {
        return;
      }
      this.overflow.length = 0;
      return String.fromCharCode(this.badChar);
    };
    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 i4 = 0; i4 < this.initialBufs.length; i4++) {
          resStr += this.decoder.write(this.initialBufs[i4]);
        }
        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 i4 = 0; i4 < this.initialBufs.length; i4++) {
          resStr += this.decoder.write(this.initialBufs[i4]);
        }
        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 i4 = 0; i4 < bufs.length; i4++) {
          var buf = bufs[i4];
          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";
    }
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/iconv-lite/0.7.3/b8dff172719028b16b33941a2dd4a120b3cb74b894c3dec3bb0a13a3f8733d46/node_modules/iconv-lite/encodings/utf16.js
var require_utf16 = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/iconv-lite/0.7.3/b8dff172719028b16b33941a2dd4a120b3cb74b894c3dec3bb0a13a3f8733d46/node_modules/iconv-lite/encodings/utf16.js"(exports2) {
    "use strict";
    var Buffer6 = 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 = Buffer6.from(str2, "ucs2");
      for (var i4 = 0; i4 < buf.length; i4 += 2) {
        var tmp = buf[i4];
        buf[i4] = buf[i4 + 1];
        buf[i4 + 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 = Buffer6.alloc(buf.length + 1);
      var i4 = 0;
      var j2 = 0;
      if (this.overflowByte !== -1) {
        buf2[0] = buf[0];
        buf2[1] = this.overflowByte;
        i4 = 1;
        j2 = 2;
      }
      for (; i4 < buf.length - 1; i4 += 2, j2 += 2) {
        buf2[j2] = buf[i4 + 1];
        buf2[j2 + 1] = buf[i4];
      }
      this.overflowByte = i4 == 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 i4 = 0; i4 < this.initialBufs.length; i4++) {
          resStr += this.decoder.write(this.initialBufs[i4]);
        }
        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 i4 = 0; i4 < this.initialBufs.length; i4++) {
          resStr += this.decoder.write(this.initialBufs[i4]);
        }
        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 i4 = 0; i4 < bufs.length; i4++) {
          var buf = bufs[i4];
          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";
    }
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/iconv-lite/0.7.3/b8dff172719028b16b33941a2dd4a120b3cb74b894c3dec3bb0a13a3f8733d46/node_modules/iconv-lite/encodings/utf7.js
var require_utf7 = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/iconv-lite/0.7.3/b8dff172719028b16b33941a2dd4a120b3cb74b894c3dec3bb0a13a3f8733d46/node_modules/iconv-lite/encodings/utf7.js"(exports2) {
    "use strict";
    var Buffer6 = 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 Buffer6.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 (i4 = 0; i4 < 256; i4++) {
      base64Chars[i4] = base64Regex.test(String.fromCharCode(i4));
    }
    var i4;
    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 i5 = 0; i5 < buf.length; i5++) {
        if (!inBase64) {
          if (buf[i5] == plusChar) {
            res += this.iconv.decode(buf.slice(lastI, i5), "ascii");
            lastI = i5 + 1;
            inBase64 = true;
          }
        } else {
          if (!base64Chars[buf[i5]]) {
            if (i5 == lastI && buf[i5] == minusChar) {
              res += "+";
            } else {
              var b64str = base64Accum + this.iconv.decode(buf.slice(lastI, i5), "ascii");
              res += this.iconv.decode(Buffer6.from(b64str, "base64"), "utf16-be");
            }
            if (buf[i5] != minusChar) {
              i5--;
            }
            lastI = i5 + 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(Buffer6.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(Buffer6.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 = Buffer6.alloc(6);
      this.base64AccumIdx = 0;
    }
    Utf7IMAPEncoder.prototype.write = function(str2) {
      var inBase64 = this.inBase64;
      var base64Accum = this.base64Accum;
      var base64AccumIdx = this.base64AccumIdx;
      var buf = Buffer6.alloc(str2.length * 5 + 10);
      var bufIdx = 0;
      for (var i5 = 0; i5 < str2.length; i5++) {
        var uChar = str2.charCodeAt(i5);
        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 = Buffer6.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 i5 = 0; i5 < buf.length; i5++) {
        if (!inBase64) {
          if (buf[i5] == andChar) {
            res += this.iconv.decode(buf.slice(lastI, i5), "ascii");
            lastI = i5 + 1;
            inBase64 = true;
          }
        } else {
          if (!base64IMAPChars[buf[i5]]) {
            if (i5 == lastI && buf[i5] == minusChar) {
              res += "&";
            } else {
              var b64str = base64Accum + this.iconv.decode(buf.slice(lastI, i5), "ascii").replace(/,/g, "/");
              res += this.iconv.decode(Buffer6.from(b64str, "base64"), "utf16-be");
            }
            if (buf[i5] != minusChar) {
              i5--;
            }
            lastI = i5 + 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(Buffer6.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(Buffer6.from(this.base64Accum, "base64"), "utf16-be");
      }
      this.inBase64 = false;
      this.base64Accum = "";
      return res;
    };
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/iconv-lite/0.7.3/b8dff172719028b16b33941a2dd4a120b3cb74b894c3dec3bb0a13a3f8733d46/node_modules/iconv-lite/encodings/sbcs-codec.js
var require_sbcs_codec = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/iconv-lite/0.7.3/b8dff172719028b16b33941a2dd4a120b3cb74b894c3dec3bb0a13a3f8733d46/node_modules/iconv-lite/encodings/sbcs-codec.js"(exports2) {
    "use strict";
    var Buffer6 = 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 i4 = 0; i4 < 128; i4++) {
          asciiString += String.fromCharCode(i4);
        }
        codecOptions.chars = asciiString + codecOptions.chars;
      }
      this.decodeBuf = Buffer6.from(codecOptions.chars, "ucs2");
      var encodeBuf = Buffer6.alloc(65536, iconv.defaultCharSingleByte.charCodeAt(0));
      for (var i4 = 0; i4 < codecOptions.chars.length; i4++) {
        encodeBuf[codecOptions.chars.charCodeAt(i4)] = i4;
      }
      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 = Buffer6.alloc(str2.length);
      for (var i4 = 0; i4 < str2.length; i4++) {
        buf[i4] = this.encodeBuf[str2.charCodeAt(i4)];
      }
      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 = Buffer6.alloc(buf.length * 2);
      var idx1 = 0;
      var idx2 = 0;
      for (var i4 = 0; i4 < buf.length; i4++) {
        idx1 = buf[i4] * 2;
        idx2 = i4 * 2;
        newBuf[idx2] = decodeBuf[idx1];
        newBuf[idx2 + 1] = decodeBuf[idx1 + 1];
      }
      return newBuf.toString("ucs2");
    };
    SBCSDecoder.prototype.end = function() {
    };
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/iconv-lite/0.7.3/b8dff172719028b16b33941a2dd4a120b3cb74b894c3dec3bb0a13a3f8733d46/node_modules/iconv-lite/encodings/sbcs-data.js
var require_sbcs_data = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/iconv-lite/0.7.3/b8dff172719028b16b33941a2dd4a120b3cb74b894c3dec3bb0a13a3f8733d46/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",
      iso88598i: "iso88598",
      iso88598e: "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"
    };
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/iconv-lite/0.7.3/b8dff172719028b16b33941a2dd4a120b3cb74b894c3dec3bb0a13a3f8733d46/node_modules/iconv-lite/encodings/sbcs-data-generated.js
var require_sbcs_data_generated = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/iconv-lite/0.7.3/b8dff172719028b16b33941a2dd4a120b3cb74b894c3dec3bb0a13a3f8733d46/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"
      }
    };
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/iconv-lite/0.7.3/b8dff172719028b16b33941a2dd4a120b3cb74b894c3dec3bb0a13a3f8733d46/node_modules/iconv-lite/encodings/dbcs-codec.js
var require_dbcs_codec = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/iconv-lite/0.7.3/b8dff172719028b16b33941a2dd4a120b3cb74b894c3dec3bb0a13a3f8733d46/node_modules/iconv-lite/encodings/dbcs-codec.js"(exports2) {
    "use strict";
    var Buffer6 = 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 (i4 = 0; i4 < 256; i4++) {
      UNASSIGNED_NODE[i4] = UNASSIGNED;
    }
    var i4;
    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 i5 = 0; i5 < mappingTable.length; i5++) {
        this._addDecodeChunk(mappingTable[i5]);
      }
      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 i5 = 129; i5 <= 254; i5++) {
          var secondByteNode = this.decodeTables[NODE_START - firstByteNode[i5]];
          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 i5 = 0; i5 < codecOptions.encodeSkipVals.length; i5++) {
          var val = codecOptions.encodeSkipVals[i5];
          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 i5 = bytes.length - 1; i5 > 0; i5--) {
        var val = node[bytes[i5]];
        if (val == UNASSIGNED) {
          node[bytes[i5]] = 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 i5 = 0; i5 < 256; i5++) {
        var uCode = node[i5];
        var mbCode = prefix + i5;
        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 = Buffer6.alloc(str2.length * (this.gb18030 ? 4 : 3));
      var leadSurrogate = this.leadSurrogate;
      var seqObj = this.seqObj;
      var nextChar = -1;
      var i5 = 0;
      var j2 = 0;
      while (true) {
        if (nextChar === -1) {
          if (i5 == str2.length) break;
          var uCode = str2.charCodeAt(i5++);
        } 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 = Buffer6.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 = Buffer6.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 i5 = 0, j2 = 0; i5 < buf.length; i5++) {
        var curByte = i5 >= 0 ? buf[i5] : prevBytes[i5 + prevOffset];
        var uCode = this.decodeTables[nodeIdx][curByte];
        if (uCode >= 0) {
        } else if (uCode === UNASSIGNED) {
          uCode = this.defaultCharUnicode.charCodeAt(0);
          i5 = seqStart;
        } else if (uCode === GB18030_CODE) {
          if (i5 >= 3) {
            var ptr = (buf[i5 - 3] - 129) * 12600 + (buf[i5 - 2] - 48) * 1260 + (buf[i5 - 1] - 129) * 10 + (curByte - 48);
          } else {
            var ptr = (prevBytes[i5 - 3 + prevOffset] - 129) * 12600 + ((i5 - 2 >= 0 ? buf[i5 - 2] : prevBytes[i5 - 2 + prevOffset]) - 48) * 1260 + ((i5 - 1 >= 0 ? buf[i5 - 1] : prevBytes[i5 - 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 = i5 + 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;
    }
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/iconv-lite/0.7.3/b8dff172719028b16b33941a2dd4a120b3cb74b894c3dec3bb0a13a3f8733d46/node_modules/iconv-lite/encodings/tables/shiftjis.json
var require_shiftjis = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/iconv-lite/0.7.3/b8dff172719028b16b33941a2dd4a120b3cb74b894c3dec3bb0a13a3f8733d46/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"]
    ];
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/iconv-lite/0.7.3/b8dff172719028b16b33941a2dd4a120b3cb74b894c3dec3bb0a13a3f8733d46/node_modules/iconv-lite/encodings/tables/eucjp.json
var require_eucjp = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/iconv-lite/0.7.3/b8dff172719028b16b33941a2dd4a120b3cb74b894c3dec3bb0a13a3f8733d46/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"]
    ];
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/iconv-lite/0.7.3/b8dff172719028b16b33941a2dd4a120b3cb74b894c3dec3bb0a13a3f8733d46/node_modules/iconv-lite/encodings/tables/cp936.json
var require_cp936 = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/iconv-lite/0.7.3/b8dff172719028b16b33941a2dd4a120b3cb74b894c3dec3bb0a13a3f8733d46/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"]
    ];
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/iconv-lite/0.7.3/b8dff172719028b16b33941a2dd4a120b3cb74b894c3dec3bb0a13a3f8733d46/node_modules/iconv-lite/encodings/tables/gbk-added.json
var require_gbk_added = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/iconv-lite/0.7.3/b8dff172719028b16b33941a2dd4a120b3cb74b894c3dec3bb0a13a3f8733d46/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"]
    ];
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/iconv-lite/0.7.3/b8dff172719028b16b33941a2dd4a120b3cb74b894c3dec3bb0a13a3f8733d46/node_modules/iconv-lite/encodings/tables/gb18030-ranges.json
var require_gb18030_ranges = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/iconv-lite/0.7.3/b8dff172719028b16b33941a2dd4a120b3cb74b894c3dec3bb0a13a3f8733d46/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] };
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/iconv-lite/0.7.3/b8dff172719028b16b33941a2dd4a120b3cb74b894c3dec3bb0a13a3f8733d46/node_modules/iconv-lite/encodings/tables/cp949.json
var require_cp949 = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/iconv-lite/0.7.3/b8dff172719028b16b33941a2dd4a120b3cb74b894c3dec3bb0a13a3f8733d46/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"]
    ];
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/iconv-lite/0.7.3/b8dff172719028b16b33941a2dd4a120b3cb74b894c3dec3bb0a13a3f8733d46/node_modules/iconv-lite/encodings/tables/cp950.json
var require_cp950 = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/iconv-lite/0.7.3/b8dff172719028b16b33941a2dd4a120b3cb74b894c3dec3bb0a13a3f8733d46/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"]
    ];
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/iconv-lite/0.7.3/b8dff172719028b16b33941a2dd4a120b3cb74b894c3dec3bb0a13a3f8733d46/node_modules/iconv-lite/encodings/tables/big5-added.json
var require_big5_added = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/iconv-lite/0.7.3/b8dff172719028b16b33941a2dd4a120b3cb74b894c3dec3bb0a13a3f8733d46/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"]
    ];
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/iconv-lite/0.7.3/b8dff172719028b16b33941a2dd4a120b3cb74b894c3dec3bb0a13a3f8733d46/node_modules/iconv-lite/encodings/dbcs-data.js
var require_dbcs_data = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/iconv-lite/0.7.3/b8dff172719028b16b33941a2dd4a120b3cb74b894c3dec3bb0a13a3f8733d46/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"
    };
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/iconv-lite/0.7.3/b8dff172719028b16b33941a2dd4a120b3cb74b894c3dec3bb0a13a3f8733d46/node_modules/iconv-lite/encodings/index.js
var require_encodings = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/iconv-lite/0.7.3/b8dff172719028b16b33941a2dd4a120b3cb74b894c3dec3bb0a13a3f8733d46/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 (i4 = 0; i4 < modules.length; i4++) {
      module2 = modules[i4];
      mergeModules(exports2, module2);
    }
    var module2;
    var i4;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/iconv-lite/0.7.3/b8dff172719028b16b33941a2dd4a120b3cb74b894c3dec3bb0a13a3f8733d46/node_modules/iconv-lite/lib/streams.js
var require_streams = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/iconv-lite/0.7.3/b8dff172719028b16b33941a2dd4a120b3cb74b894c3dec3bb0a13a3f8733d46/node_modules/iconv-lite/lib/streams.js"(exports2, module2) {
    "use strict";
    var Buffer6 = 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, Buffer6.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 (!Buffer6.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
      };
    };
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/iconv-lite/0.7.3/b8dff172719028b16b33941a2dd4a120b3cb74b894c3dec3bb0a13a3f8733d46/node_modules/iconv-lite/lib/index.js
var require_lib22 = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/iconv-lite/0.7.3/b8dff172719028b16b33941a2dd4a120b3cb74b894c3dec3bb0a13a3f8733d46/node_modules/iconv-lite/lib/index.js"(exports2, module2) {
    "use strict";
    var Buffer6 = 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 encode3(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 ? Buffer6.concat([res, trail]) : res;
    };
    module2.exports.decode = function decode3(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 = Buffer6.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.");
    }
  }
});

// ../../../../../setup-pnpm/store/v11/links/@inquirer/confirm/6.1.1/0de0ed9505a088966f0951dd4cd707b3fffcbe202ab03db0b44be8d49be10251/node_modules/@inquirer/confirm/dist/index.js
function getBooleanValue(value, defaultValue) {
  let answer = defaultValue !== false;
  if (/^(y|yes)/i.test(value))
    answer = true;
  else if (/^(n|no)/i.test(value))
    answer = false;
  return answer;
}
function boolToString(value) {
  return value ? "Yes" : "No";
}
var dist_default5;
var init_dist10 = __esm({
  "../../../../../setup-pnpm/store/v11/links/@inquirer/confirm/6.1.1/0de0ed9505a088966f0951dd4cd707b3fffcbe202ab03db0b44be8d49be10251/node_modules/@inquirer/confirm/dist/index.js"() {
    init_dist8();
    dist_default5 = createPrompt((config2, done) => {
      const { transformer = boolToString } = config2;
      const [status, setStatus2] = useState("idle");
      const [value, setValue] = useState("");
      const theme = makeTheme(config2.theme);
      const prefix = usePrefix({ status, theme });
      useKeypress((key, rl) => {
        if (status !== "idle")
          return;
        if (isEnterKey(key)) {
          const answer = getBooleanValue(value, config2.default);
          setValue(transformer(answer));
          setStatus2("done");
          done(answer);
        } else if (isTabKey(key)) {
          const answer = boolToString(!getBooleanValue(value, config2.default));
          rl.clearLine(0);
          rl.write(answer);
          setValue(answer);
        } else {
          setValue(rl.line);
        }
      });
      let formattedValue = value;
      let defaultValue = "";
      if (status === "done") {
        formattedValue = theme.style.answer(value);
      } else {
        defaultValue = ` ${theme.style.defaultAnswer(config2.default === false ? "y/N" : "Y/n")}`;
      }
      const message = theme.style.message(config2.message, status);
      return `${prefix} ${message}${defaultValue} ${formattedValue}`;
    });
  }
});

// ../../../../../setup-pnpm/store/v11/links/@inquirer/input/5.1.2/936121cdd2c44d47525693a6a18dc8125c7a7f7d6703da092b56a597d89cade6/node_modules/@inquirer/input/dist/index.js
var inputTheme, dist_default6;
var init_dist11 = __esm({
  "../../../../../setup-pnpm/store/v11/links/@inquirer/input/5.1.2/936121cdd2c44d47525693a6a18dc8125c7a7f7d6703da092b56a597d89cade6/node_modules/@inquirer/input/dist/index.js"() {
    init_dist8();
    inputTheme = {
      validationFailureMode: "keep"
    };
    dist_default6 = createPrompt((config2, done) => {
      const { prefill = "tab" } = config2;
      const theme = makeTheme(inputTheme, config2.theme);
      const [status, setStatus2] = useState("idle");
      const [defaultValue, setDefaultValue] = useState(String(config2.default ?? ""));
      const [errorMsg, setError] = useState();
      const [value, setValue] = useState("");
      const prefix = usePrefix({ status, theme });
      async function validate2(value2) {
        const { required, pattern, patternError = "Invalid input" } = config2;
        if (required && !value2) {
          return "You must provide a value";
        }
        if (pattern && !pattern.test(value2)) {
          return patternError;
        }
        if (typeof config2.validate === "function") {
          return await config2.validate(value2) || "You must provide a valid value";
        }
        return true;
      }
      useKeypress(async (key, rl) => {
        if (status !== "idle") {
          return;
        }
        if (isEnterKey(key)) {
          const answer = value || defaultValue;
          setStatus2("loading");
          const isValid = await validate2(answer);
          if (isValid === true) {
            setValue(answer);
            setStatus2("done");
            done(answer);
          } else {
            if (theme.validationFailureMode === "clear") {
              setValue("");
            } else {
              rl.write(value);
            }
            setError(isValid);
            setStatus2("idle");
          }
        } else if (isBackspaceKey(key) && !value) {
          setDefaultValue("");
        } else if (isTabKey(key) && !value) {
          setDefaultValue("");
          rl.clearLine(0);
          rl.write(defaultValue);
          setValue(defaultValue);
        } else {
          setValue(rl.line);
          setError(void 0);
        }
      });
      useEffect((rl) => {
        if (prefill === "editable" && defaultValue) {
          rl.write(defaultValue);
          setValue(defaultValue);
        }
      }, []);
      const message = theme.style.message(config2.message, status);
      let formattedValue = value;
      if (typeof config2.transformer === "function") {
        formattedValue = config2.transformer(value, { isFinal: status === "done" });
      } else if (status === "done") {
        formattedValue = theme.style.answer(value);
      }
      let defaultStr;
      if (defaultValue && status !== "done" && !value) {
        defaultStr = theme.style.defaultAnswer(defaultValue);
      }
      let error = "";
      if (errorMsg) {
        error = theme.style.error(errorMsg);
      }
      return [
        [prefix, message, defaultStr, formattedValue].filter((v) => v !== void 0).join(" "),
        error
      ];
    });
  }
});

// ../../../../../setup-pnpm/store/v11/links/@inquirer/password/5.1.1/5b1273ec425ec439ed5f6fd40516ee28f49415d0893d20bf0e0fdead2ca6929d/node_modules/@inquirer/password/dist/index.js
var passwordTheme, dist_default7;
var init_dist12 = __esm({
  "../../../../../setup-pnpm/store/v11/links/@inquirer/password/5.1.1/5b1273ec425ec439ed5f6fd40516ee28f49415d0893d20bf0e0fdead2ca6929d/node_modules/@inquirer/password/dist/index.js"() {
    init_dist8();
    init_dist7();
    passwordTheme = {
      style: {
        maskedText: "[input is masked]"
      }
    };
    dist_default7 = createPrompt((config2, done) => {
      const { validate: validate2 = () => true } = config2;
      const theme = makeTheme(passwordTheme, config2.theme);
      const [status, setStatus2] = useState("idle");
      const [errorMsg, setError] = useState();
      const [value, setValue] = useState("");
      const prefix = usePrefix({ status, theme });
      useKeypress(async (key, rl) => {
        if (status !== "idle") {
          return;
        }
        if (isEnterKey(key)) {
          const answer = value;
          setStatus2("loading");
          const isValid = await validate2(answer);
          if (isValid === true) {
            setValue(answer);
            setStatus2("done");
            done(answer);
          } else {
            rl.write(value);
            setError(isValid || "You must provide a valid value");
            setStatus2("idle");
          }
        } else {
          setValue(rl.line);
          setError(void 0);
        }
      });
      const message = theme.style.message(config2.message, status);
      let formattedValue = "";
      let helpTip;
      if (config2.mask) {
        const maskChar = typeof config2.mask === "string" ? config2.mask : "*";
        formattedValue = maskChar.repeat(value.length);
      } else if (status !== "done") {
        helpTip = `${theme.style.help(theme.style.maskedText)}${cursorHide}`;
      }
      if (status === "done") {
        formattedValue = theme.style.answer(formattedValue);
      }
      let error = "";
      if (errorMsg) {
        error = theme.style.error(errorMsg);
      }
      return [[prefix, message, config2.mask ? formattedValue : helpTip].join(" "), error];
    });
  }
});

// ../../../../../setup-pnpm/store/v11/links/@inquirer/select/5.2.1/ad519e1c4b04ef43390c3e2f5bf558a87f1710bfb9ee7c0ace732e1f5a1564ae/node_modules/@inquirer/select/dist/index.js
import { styleText as styleText4 } from "node:util";
function isSelectable2(item) {
  return !Separator.isSeparator(item) && !item.disabled;
}
function isNavigable2(item) {
  return !Separator.isSeparator(item);
}
function normalizeChoices2(choices) {
  return choices.map((choice) => {
    if (Separator.isSeparator(choice))
      return choice;
    if (typeof choice !== "object" || choice === null || !("value" in choice)) {
      const name2 = String(choice);
      return {
        value: choice,
        name: name2,
        short: name2,
        disabled: false
      };
    }
    const name = choice.name ?? String(choice.value);
    const normalizedChoice = {
      value: choice.value,
      name,
      short: choice.short ?? name,
      disabled: choice.disabled ?? false
    };
    if (choice.description) {
      normalizedChoice.description = choice.description;
    }
    return normalizedChoice;
  });
}
var selectTheme, dist_default8;
var init_dist13 = __esm({
  "../../../../../setup-pnpm/store/v11/links/@inquirer/select/5.2.1/ad519e1c4b04ef43390c3e2f5bf558a87f1710bfb9ee7c0ace732e1f5a1564ae/node_modules/@inquirer/select/dist/index.js"() {
    init_dist8();
    init_dist7();
    init_dist4();
    selectTheme = {
      icon: { cursor: dist_default.pointer },
      style: {
        disabled: (text) => styleText4("dim", text),
        description: (text) => styleText4("cyan", text),
        keysHelpTip: (keys4) => keys4.map(([key, action]) => `${styleText4("bold", key)} ${styleText4("dim", action)}`).join(styleText4("dim", " \u2022 "))
      },
      i18n: { disabledError: "This option is disabled and cannot be selected." },
      indexMode: "hidden"
    };
    dist_default8 = createPrompt((config2, done) => {
      const { loop = true, pageSize = 7 } = config2;
      const theme = makeTheme(selectTheme, config2.theme);
      const { keybindings: keybindings2 } = theme;
      const [status, setStatus2] = useState("idle");
      const prefix = usePrefix({ status, theme });
      const searchTimeoutRef = useRef();
      const searchEnabled = !keybindings2.includes("vim");
      const items = useMemo(() => normalizeChoices2(config2.choices), [config2.choices]);
      const bounds = useMemo(() => {
        const first = items.findIndex(isNavigable2);
        const last = items.findLastIndex(isNavigable2);
        if (first === -1) {
          throw new ValidationError("[select prompt] No selectable choices. All choices are disabled.");
        }
        return { first, last };
      }, [items]);
      const defaultItemIndex = useMemo(() => {
        if (!("default" in config2))
          return -1;
        return items.findIndex((item) => isSelectable2(item) && item.value === config2.default);
      }, [config2.default, items]);
      const [active, setActive] = useState(defaultItemIndex === -1 ? bounds.first : defaultItemIndex);
      const selectedChoice = items[active];
      if (selectedChoice == null || Separator.isSeparator(selectedChoice)) {
        throw new Error("Active index does not point to a choice");
      }
      const [errorMsg, setError] = useState();
      useKeypress((key, rl) => {
        clearTimeout(searchTimeoutRef.current);
        if (errorMsg) {
          setError(void 0);
        }
        if (isEnterKey(key)) {
          if (selectedChoice.disabled) {
            setError(theme.i18n.disabledError);
          } else {
            setStatus2("done");
            done(selectedChoice.value);
          }
        } else if (isUpKey(key, keybindings2) || isDownKey(key, keybindings2)) {
          rl.clearLine(0);
          if (loop || isUpKey(key, keybindings2) && active !== bounds.first || isDownKey(key, keybindings2) && active !== bounds.last) {
            const offset = isUpKey(key, keybindings2) ? -1 : 1;
            let next2 = active;
            do {
              next2 = (next2 + offset + items.length) % items.length;
            } while (!isNavigable2(items[next2]));
            setActive(next2);
          }
        } else if (isNumberKey(key) && !Number.isNaN(Number(rl.line))) {
          const selectedIndex = Number(rl.line) - 1;
          let selectableIndex = -1;
          const position3 = items.findIndex((item2) => {
            if (Separator.isSeparator(item2))
              return false;
            selectableIndex++;
            return selectableIndex === selectedIndex;
          });
          const item = items[position3];
          if (item != null && isSelectable2(item)) {
            setActive(position3);
          }
          searchTimeoutRef.current = setTimeout(() => {
            rl.clearLine(0);
          }, 700);
        } else if (isBackspaceKey(key)) {
          rl.clearLine(0);
        } else if (searchEnabled) {
          const searchTerm = rl.line.toLowerCase();
          const matchIndex = items.findIndex((item) => {
            if (Separator.isSeparator(item) || !isSelectable2(item))
              return false;
            return item.name.toLowerCase().startsWith(searchTerm);
          });
          if (matchIndex !== -1) {
            setActive(matchIndex);
          }
          searchTimeoutRef.current = setTimeout(() => {
            rl.clearLine(0);
          }, 700);
        }
      });
      useEffect(() => () => {
        clearTimeout(searchTimeoutRef.current);
      }, []);
      const message = theme.style.message(config2.message, status);
      const helpLine = theme.style.keysHelpTip([
        ["\u2191\u2193", "navigate"],
        ["\u23CE", "select"]
      ]);
      let separatorCount = 0;
      const page = usePagination({
        items,
        active,
        renderItem({ item, isActive, index: index2 }) {
          if (Separator.isSeparator(item)) {
            separatorCount++;
            return ` ${item.separator}`;
          }
          const cursor = isActive ? theme.icon.cursor : " ";
          const indexLabel = theme.indexMode === "number" ? `${index2 + 1 - separatorCount}. ` : "";
          if (item.disabled) {
            const disabledLabel = typeof item.disabled === "string" ? item.disabled : "(disabled)";
            const disabledCursor = isActive ? theme.icon.cursor : "-";
            return theme.style.disabled(`${disabledCursor} ${indexLabel}${item.name} ${disabledLabel}`);
          }
          const color = isActive ? theme.style.highlight : (x3) => x3;
          return color(`${cursor} ${indexLabel}${item.name}`);
        },
        pageSize,
        loop
      });
      if (status === "done") {
        return [prefix, message, theme.style.answer(selectedChoice.short)].filter(Boolean).join(" ");
      }
      const { description } = selectedChoice;
      const lines = [
        [prefix, message].filter(Boolean).join(" "),
        page,
        " ",
        description ? theme.style.description(description) : "",
        errorMsg ? theme.style.error(errorMsg) : "",
        helpLine
      ].filter(Boolean).join("\n").trimEnd();
      return `${lines}${cursorHide}`;
    });
  }
});

// ../../../../../setup-pnpm/store/v11/links/@inquirer/prompts/8.5.2/20312654628665d76cdf2b0f1b7f4093a8dc4b8eefd4299fbd7d331749b8ece7/node_modules/@inquirer/prompts/dist/index.js
var init_dist14 = __esm({
  "../../../../../setup-pnpm/store/v11/links/@inquirer/prompts/8.5.2/20312654628665d76cdf2b0f1b7f4093a8dc4b8eefd4299fbd7d331749b8ece7/node_modules/@inquirer/prompts/dist/index.js"() {
    init_dist9();
    init_dist10();
    init_dist11();
    init_dist12();
    init_dist13();
  }
});

// ../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/mergeCatalogs.js
function mergeCatalogs(...catalogsList) {
  const result2 = /* @__PURE__ */ Object.create(null);
  for (const catalogs of catalogsList) {
    if (catalogs == null)
      continue;
    for (const catalogName of Object.keys(catalogs)) {
      const catalog = catalogs[catalogName];
      if (catalog == null)
        continue;
      const target2 = result2[catalogName] ?? /* @__PURE__ */ Object.create(null);
      for (const dependencyName of Object.keys(catalog)) {
        Object.defineProperty(target2, dependencyName, {
          value: catalog[dependencyName],
          writable: true,
          enumerable: true,
          configurable: true
        });
      }
      Object.defineProperty(result2, catalogName, {
        value: target2,
        writable: true,
        enumerable: true,
        configurable: true
      });
    }
  }
  return result2;
}
var init_mergeCatalogs = __esm({
  "../catalogs/config/lib/mergeCatalogs.js"() {
    "use strict";
  }
});

// ../catalogs/config/lib/index.js
var init_lib60 = __esm({
  "../catalogs/config/lib/index.js"() {
    "use strict";
    init_getCatalogsFromWorkspaceManifest();
    init_mergeCatalogs();
  }
});

// ../network/git-utils/lib/index.js
import fs31 from "node:fs";
import path51 from "node:path";
async function isGitRepo(opts3 = {}) {
  try {
    await safeExeca("git", ["rev-parse", "--git-dir"], { cwd: opts3.cwd });
  } catch {
    return false;
  }
  return true;
}
async function getCurrentBranch(opts3 = {}) {
  const branch = readBranchFromHeadFile(opts3.cwd);
  if (branch !== void 0)
    return branch;
  try {
    const { stdout } = await safeExeca("git", ["symbolic-ref", "--short", "HEAD"], { cwd: opts3.cwd });
    return stdout;
  } catch {
    return null;
  }
}
async function isWorkingTreeClean(opts3 = {}) {
  try {
    const { stdout: status } = await safeExeca("git", ["status", "--porcelain"], { cwd: opts3.cwd });
    if (status !== "") {
      return false;
    }
    return true;
  } catch {
    return false;
  }
}
async function isRemoteHistoryClean(opts3 = {}) {
  let history;
  try {
    const { stdout } = await safeExeca("git", ["rev-list", "--count", "--left-only", "@{u}...HEAD"], { cwd: opts3.cwd });
    history = stdout;
  } catch {
    history = null;
  }
  if (history && history !== "0") {
    return false;
  }
  return true;
}
function readBranchFromHeadFile(cwd) {
  const baseDir = cwd ?? process.cwd();
  const dotGitPath = path51.join(baseDir, ".git");
  let gitDir;
  try {
    const stat2 = fs31.statSync(dotGitPath);
    if (stat2.isDirectory()) {
      gitDir = dotGitPath;
    } else if (stat2.isFile()) {
      const content = fs31.readFileSync(dotGitPath, "utf8").trim();
      const match = content.match(/^gitdir:\s*(.+)/);
      if (!match)
        return void 0;
      gitDir = path51.isAbsolute(match[1]) ? match[1] : path51.resolve(baseDir, match[1]);
    } else {
      return void 0;
    }
  } catch {
    return void 0;
  }
  try {
    const head2 = fs31.readFileSync(path51.join(gitDir, "HEAD"), "utf8").trim();
    const match = head2.match(/^ref:\s*refs\/heads\/(.+)/);
    if (match)
      return match[1];
    return null;
  } catch {
    return void 0;
  }
}
var init_lib61 = __esm({
  "../network/git-utils/lib/index.js"() {
    "use strict";
    init_lib25();
  }
});

// ../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_lib62 = __esm({
  "../text/naming-cases/lib/index.js"() {
    "use strict";
  }
});

// ../../../../../setup-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({
  "../../../../../setup-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 index2 = 0; index2 < string.length; index2++) {
        const character = string[index2];
        isLastLastCharPreserved = index2 > 2 ? string[index2 - 3] === "-" : true;
        if (isLastCharLower && UPPERCASE.test(character)) {
          string = string.slice(0, index2) + "-" + string.slice(index2);
          isLastCharLower = false;
          isLastLastCharUpper = isLastCharUpper;
          isLastCharUpper = true;
          index2++;
        } else if (isLastCharUpper && isLastLastCharUpper && LOWERCASE.test(character) && (!isLastLastCharPreserved || preserveConsecutiveUppercase2)) {
          string = string.slice(0, index2 - 1) + "-" + string.slice(index2 - 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 index2 = 0; index2 < characters.length; index2++) {
        const character = characters[index2];
        const isUpperCase = UPPERCASE.test(character);
        const nextCharIsUpperCase = index2 + 1 < characters.length && UPPERCASE.test(characters[index2 + 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)
      );
    };
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/ci-info/4.4.0/78b376724aeb79a8381e1f03b9a81ad6402765a8d23354588ff1d993999d0ab8/node_modules/ci-info/vendors.json
var require_vendors = __commonJS({
  "../../../../../setup-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"
      }
    ];
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/ci-info/4.4.0/78b376724aeb79a8381e1f03b9a81ad6402765a8d23354588ff1d993999d0ab8/node_modules/ci-info/index.js
var require_ci_info = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/ci-info/4.4.0/78b376724aeb79a8381e1f03b9a81ad6402765a8d23354588ff1d993999d0ab8/node_modules/ci-info/index.js"(exports2) {
    "use strict";
    var vendors = require_vendors();
    var env4 = process.env;
    Object.defineProperty(exports2, "_vendors", {
      value: vendors.map(function(v) {
        return v.constant;
      })
    });
    exports2.name = null;
    exports2.isPR = null;
    exports2.id = null;
    if (env4.CI !== "false") {
      vendors.forEach(function(vendor) {
        const envs = Array.isArray(vendor.env) ? vendor.env : [vendor.env];
        const isCI4 = envs.every(function(obj) {
          return checkEnv(obj);
        });
        exports2[vendor.constant] = isCI4;
        if (!isCI4) {
          return;
        }
        exports2.name = vendor.name;
        exports2.isPR = checkPR(vendor);
        exports2.id = vendor.constant;
      });
    }
    exports2.isCI = !!(env4.CI !== "false" && // Bypass all checks if CI env is explicitly set to 'false'
    (env4.BUILD_ID || // Jenkins, Cloudbees
    env4.BUILD_NUMBER || // Jenkins, TeamCity
    env4.CI || // Travis CI, CircleCI, Cirrus CI, Gitlab CI, Appveyor, CodeShip, dsari, Cloudflare Pages/Workers
    env4.CI_APP_ID || // Appflow
    env4.CI_BUILD_ID || // Appflow
    env4.CI_BUILD_NUMBER || // Appflow
    env4.CI_NAME || // Codeship and others
    env4.CONTINUOUS_INTEGRATION || // Travis CI, Cirrus CI
    env4.RUN_ID || // TaskCluster, dsari
    exports2.name || false));
    function checkEnv(obj) {
      if (typeof obj === "string") return !!env4[obj];
      if ("env" in obj) {
        return env4[obj.env] && env4[obj.env].includes(obj.includes);
      }
      if ("any" in obj) {
        return obj.any.some(function(k2) {
          return !!env4[k2];
        });
      }
      return Object.keys(obj).every(function(k2) {
        return env4[k2] === obj[k2];
      });
    }
    function checkPR(vendor) {
      switch (typeof vendor.pr) {
        case "string":
          return !!env4[vendor.pr];
        case "object":
          if ("env" in vendor.pr) {
            if ("any" in vendor.pr) {
              return vendor.pr.any.some(function(key) {
                return env4[vendor.pr.env] === key;
              });
            } else {
              return vendor.pr.env in env4 && env4[vendor.pr.env] !== vendor.pr.ne;
            }
          } else if ("any" in vendor.pr) {
            return vendor.pr.any.some(function(key) {
              return !!env4[key];
            });
          } else {
            return checkEnv(vendor.pr);
          }
        default:
          return null;
      }
    }
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/lodash.kebabcase/4.1.1/519a528f48565ef00ec4aae84101a038b116d9ae2797ca0453cbe2cc8c6517fd/node_modules/lodash.kebabcase/index.js
var require_lodash2 = __commonJS({
  "../../../../../setup-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 index2 = -1, length = array ? array.length : 0;
      if (initAccum && length) {
        accumulator = array[++index2];
      }
      while (++index2 < length) {
        accumulator = iteratee(accumulator, array[index2], index2, 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, index2) {
      return result2 + (index2 ? "-" : "") + 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;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/normalize-registry-url/2.0.1/2e85a448e1657a128fce3a08f2d40976795b216e6b01c63c906dfba8bbd60302/node_modules/normalize-registry-url/index.js
var require_normalize_registry_url = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/normalize-registry-url/2.0.1/2e85a448e1657a128fce3a08f2d40976795b216e6b01c63c906dfba8bbd60302/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("/")) return registry;
      return `${registry}/`;
    };
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/path-absolute/2.0.0/f2b738a953841aeecc7605b3344e7fb07922fd917b50ed3ed6c9c377ee7e6df5/node_modules/path-absolute/index.js
import os6 from "node:os";
import path52 from "node:path";
function pathAbsolute(filepath, cwd) {
  const home = getHomedir();
  if (isHomepath(filepath)) {
    return path52.join(home, filepath.substr(2));
  }
  if (path52.isAbsolute(filepath)) {
    return filepath;
  }
  if (cwd) {
    return path52.join(cwd, filepath);
  }
  return path52.resolve(filepath);
}
function getHomedir() {
  const home = os6.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({
  "../../../../../setup-pnpm/store/v11/links/@/path-absolute/2.0.0/f2b738a953841aeecc7605b3344e7fb07922fd917b50ed3ed6c9c377ee7e6df5/node_modules/path-absolute/index.js"() {
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/realpath-missing/2.0.0/1df589cef309cadda526424ec014de249398ac32a74d7c9d9d791e03d934fa17/node_modules/realpath-missing/index.js
import fs32 from "node:fs";
async function realpathMissing(path240) {
  try {
    return await fs32.promises.realpath(path240);
  } catch (err2) {
    if (err2.code === "ENOENT") {
      return path240;
    }
    throw err2;
  }
}
var init_realpath_missing = __esm({
  "../../../../../setup-pnpm/store/v11/links/@/realpath-missing/2.0.0/1df589cef309cadda526424ec014de249398ac32a74d7c9d9d791e03d934fa17/node_modules/realpath-missing/index.js"() {
  }
});

// ../../../../../setup-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 fs131 = customFS || defaultFS;
  const tempFile = pathTemp(dir);
  try {
    fs131.writeFileSync(tempFile, "", "utf8");
    fs131.unlinkSync(tempFile);
    return true;
  } catch (err2) {
    if (err2.code === "EACCES" || err2.code === "EPERM" || err2.code === "EROFS") {
      return false;
    }
    throw err2;
  }
}
var init_can_write_to_dir = __esm({
  "../../../../../setup-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 fs33 } from "node:fs";
import path53 from "node:path";
import util17 from "node:util";
async function checkGlobalBinDir(globalBinDir, { env: env4, shouldAllowWrite }) {
  if (!env4[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, env4)) {
    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, env4) {
  const dirs2 = env4[import_path_name2.default]?.split(path53.delimiter) ?? [];
  if (dirs2.some((dir) => areDirsEqual(globalBinDir, dir)))
    return true;
  const realGlobalBinDir = await fs33.realpath(globalBinDir);
  return dirs2.some((dir) => areDirsEqual(realGlobalBinDir, dir));
}
function canWriteToDirAndExists(dir) {
  try {
    return canWriteToDirSync(dir);
  } catch (err2) {
    if (util17.types.isNativeError(err2) && "code" in err2 && err2.code === "ENOENT")
      return false;
    throw err2;
  }
}
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) => path53.relative(dir1, dir2) === "";
  }
});

// ../config/reader/lib/concurrency.js
import os7 from "node:os";
function getAvailableParallelism(cache = true) {
  if (cache && Number(cacheAvailableParallelism) > 0) {
    return cacheAvailableParallelism;
  }
  cacheAvailableParallelism = Math.max(1, os7.availableParallelism?.() ?? os7.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 path54 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: path54,
      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: path54,
      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: path54,
      umask: Number,
      version: Boolean
    };
  }
});

// ../config/reader/lib/configFileKey.js
var pnpmConfigFileKeys, structuredConfigFileKeys, excludedPnpmKeys, setOfPnpmConfigFilesKeys, setOfStructuredConfigFilesKeys, setOfExcludedPnpmKeys, isConfigFileKey;
var init_configFileKey = __esm({
  "../config/reader/lib/configFileKey.js"() {
    "use strict";
    init_npmConfigTypes();
    pnpmConfigFileKeys = [
      "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",
      "frozen-store",
      "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",
      "node-experimental-package-map",
      "node-package-map-type",
      "noproxy",
      "npm-path",
      "npmrc-auth-file",
      "package-import-method",
      "pnpr-server",
      "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"
    ];
    structuredConfigFileKeys = [
      "named-registries",
      "registries"
    ];
    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",
      "hoisting-limits",
      "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);
    setOfStructuredConfigFilesKeys = new Set(structuredConfigFileKeys);
    setOfExcludedPnpmKeys = new Set(excludedPnpmKeys);
    isConfigFileKey = (kebabKey) => setOfPnpmConfigFilesKeys.has(kebabKey) || setOfStructuredConfigFilesKeys.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 = (config2) => DEPS_BUILD_CONFIG_KEYS.some((key) => config2[key] != null);
  }
});

// ../config/reader/lib/dirs.js
import os8 from "node:os";
import path55 from "node:path";
function getGlobalConfigPath(configDir) {
  return path55.join(configDir, GLOBAL_CONFIG_YAML_FILENAME);
}
function getCacheDir(opts3) {
  if (opts3.env.XDG_CACHE_HOME) {
    return path55.join(opts3.env.XDG_CACHE_HOME, "pnpm");
  }
  if (opts3.platform === "darwin") {
    return path55.join(os8.homedir(), "Library/Caches/pnpm");
  }
  if (opts3.platform !== "win32") {
    return path55.join(os8.homedir(), ".cache/pnpm");
  }
  if (opts3.env.LOCALAPPDATA) {
    return path55.join(opts3.env.LOCALAPPDATA, "pnpm-cache");
  }
  return path55.join(os8.homedir(), ".pnpm-cache");
}
function getStateDir(opts3) {
  if (opts3.env.XDG_STATE_HOME) {
    return path55.join(opts3.env.XDG_STATE_HOME, "pnpm");
  }
  if (opts3.platform !== "win32") {
    return path55.join(os8.homedir(), ".local/state/pnpm");
  }
  if (opts3.env.LOCALAPPDATA) {
    return path55.join(opts3.env.LOCALAPPDATA, "pnpm-state");
  }
  return path55.join(os8.homedir(), ".pnpm-state");
}
function getDataDir(opts3) {
  if (opts3.env.PNPM_HOME) {
    return opts3.env.PNPM_HOME;
  }
  if (opts3.env.XDG_DATA_HOME) {
    return path55.join(opts3.env.XDG_DATA_HOME, "pnpm");
  }
  if (opts3.platform === "darwin") {
    return path55.join(os8.homedir(), "Library/pnpm");
  }
  if (opts3.platform !== "win32") {
    return path55.join(os8.homedir(), ".local/share/pnpm");
  }
  if (opts3.env.LOCALAPPDATA) {
    return path55.join(opts3.env.LOCALAPPDATA, "pnpm");
  }
  return path55.join(os8.homedir(), ".pnpm");
}
function getConfigDir(opts3) {
  if (opts3.env.XDG_CONFIG_HOME) {
    return path55.join(opts3.env.XDG_CONFIG_HOME, "pnpm");
  }
  if (opts3.platform === "darwin") {
    return path55.join(os8.homedir(), "Library/Preferences/pnpm");
  }
  if (opts3.platform !== "win32") {
    return path55.join(os8.homedir(), ".config/pnpm");
  }
  if (opts3.env.LOCALAPPDATA) {
    return path55.join(opts3.env.LOCALAPPDATA, "pnpm/config");
  }
  return path55.join(os8.homedir(), ".config/pnpm");
}
var init_dirs = __esm({
  "../config/reader/lib/dirs.js"() {
    "use strict";
    init_lib();
  }
});

// ../config/reader/lib/env.js
import path56 from "node:path";
import url3 from "node:url";
function* parseEnvVars(getSchema, env4) {
  for (const envKey in env4) {
    const suffix = getEnvKeySuffix(envKey);
    if (!suffix)
      continue;
    const envValue = env4[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, env4);
    yield { key, value };
  }
}
function parseValueBySchema(schema2, envVar, env4) {
  if (Array.isArray(schema2)) {
    return parseValueByTypeUnion(schema2, envVar, env4);
  } else if (typeof schema2 === "function") {
    return parseValueByConstructor(schema2, envVar);
  } else if (schema2 && typeof schema2 === "object") {
    return parseValueByModule(schema2, envVar, env4);
  }
  const _typeGuard = schema2;
  throw new Error(`Invalid schema: ${JSON.stringify(_typeGuard)}`);
}
function parseValueByTypeUnion(schema2, envVar, env4) {
  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, env4);
        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, env4) {
  if (schema2 === path56) {
    const homePrefix = /^~[/\\]/;
    if (env4.HOME && homePrefix.test(envVar)) {
      return path56.join(env4.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 fs34 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, scope } = parsedCreds;
      rawCredsMap[registry] ??= {};
      rawCredsMap[registry][scope ?? DEFAULT_REGISTRY_SCOPE] ??= {};
      rawCredsMap[registry][scope ?? DEFAULT_REGISTRY_SCOPE][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 ? fs34.readFileSync(value, "utf8") : value.replace(/\\n/g, "\n");
    }
  }
  for (const uri in rawCredsMap) {
    const scopedCreds = getScopedCreds(rawCredsMap[uri]);
    if (Object.keys(scopedCreds).length > 0) {
      networkConfigs.configByUri ??= {};
      networkConfigs.configByUri[uri] ??= {};
      Object.assign(networkConfigs.configByUri[uri], scopedCreds);
    }
  }
  return networkConfigs;
}
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 { ...splitScopeFromRegistry(registry), credsField };
}
function getScopedCreds(rawCredsByScope = {}) {
  const scopedCreds = {};
  for (const [scope, rawCreds] of Object.entries(rawCredsByScope)) {
    const creds = parseCreds(rawCreds);
    if (creds) {
      scopedCreds[scope] = creds;
    }
  }
  return scopedCreds;
}
function splitScopeFromRegistry(registry) {
  const colonScope = splitScopeFromRegistryByColon(registry);
  if (colonScope)
    return colonScope;
  return splitScopeFromRegistryByPath(registry);
}
function splitScopeFromRegistryByColon(registry) {
  if (!registry.startsWith("//"))
    return void 0;
  const scopeSeparatorIndex = registry.lastIndexOf(":@");
  if (scopeSeparatorIndex === -1)
    return void 0;
  const scope = registry.slice(scopeSeparatorIndex + 1);
  if (!isPackageScope(scope))
    return void 0;
  return {
    registry: normalizeRegistryKey(registry.slice(0, scopeSeparatorIndex)),
    scope
  };
}
function splitScopeFromRegistryByPath(registry) {
  if (!registry.startsWith("//"))
    return { registry };
  const trimmed = registry.endsWith("/") ? registry.slice(0, -1) : registry;
  const lastSlashIndex = trimmed.lastIndexOf("/");
  if (lastSlashIndex === -1)
    return { registry };
  const scope = trimmed.slice(lastSlashIndex + 1);
  if (!isPackageScope(scope))
    return { registry };
  return {
    registry: trimmed.slice(0, lastSlashIndex + 1),
    scope
  };
}
function isPackageScope(scope) {
  return scope.startsWith("@") && scope.length > 1 && !scope.includes("/") && !scope.includes(":");
}
function normalizeRegistryKey(registry) {
  return registry.endsWith("/") ? registry : `${registry}/`;
}
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";
    init_lib9();
    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)?$/;
  }
});

// ../../../../../setup-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({
  "../../../../../setup-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, env4) {
      return replaceWith(settingValue, env4, (orig) => {
        throw new Error(`Failed to replace env in config: ${orig}`);
      });
    }
    exports2.envReplace = envReplace2;
    function envReplaceLossy2(settingValue, env4) {
      const unresolved = [];
      const value = replaceWith(settingValue, env4, (orig) => {
        unresolved.push(orig);
        return "";
      });
      return { value, unresolved };
    }
    exports2.envReplaceLossy = envReplaceLossy2;
    function replaceWith(settingValue, env4, 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 = getEnvValue2(env4, name);
        if (envValue === void 0)
          return `${halfEscape}${onUnresolved(orig)}`;
        return `${halfEscape}${envValue}`;
      });
    }
    function getEnvValue2(env4, name) {
      const matched = name.match(ENV_VALUE);
      if (!matched)
        return env4[name];
      const [, variableName, colon, fallback] = matched;
      const v = env4[variableName];
      if (v === void 0)
        return fallback;
      return !v && colon ? fallback : v;
    }
  }
});

// ../../../../../setup-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({
  "../../../../../setup-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;
    } });
  }
});

// ../../../../../setup-pnpm/store/v11/links/@pnpm/logger/1100.0.0/952a318e01cd01c3b43df7852eec32ba1e302a5d5192561691e22394516f7a59/node_modules/@pnpm/logger/lib/LogBase.js
var init_LogBase2 = __esm({
  "../../../../../setup-pnpm/store/v11/links/@pnpm/logger/1100.0.0/952a318e01cd01c3b43df7852eec32ba1e302a5d5192561691e22394516f7a59/node_modules/@pnpm/logger/lib/LogBase.js"() {
  }
});

// ../../../../../setup-pnpm/store/v11/links/@pnpm/logger/1100.0.0/952a318e01cd01c3b43df7852eec32ba1e302a5d5192561691e22394516f7a59/node_modules/@pnpm/logger/lib/logger.js
function globalWarn2(message) {
  globalLogger2.warn(message);
}
var import_bole4, logger2, globalLogger2;
var init_logger2 = __esm({
  "../../../../../setup-pnpm/store/v11/links/@pnpm/logger/1100.0.0/952a318e01cd01c3b43df7852eec32ba1e302a5d5192561691e22394516f7a59/node_modules/@pnpm/logger/lib/logger.js"() {
    import_bole4 = __toESM(require_bole(), 1);
    import_bole4.default.setFastTime();
    logger2 = (0, import_bole4.default)("pnpm");
    globalLogger2 = (0, import_bole4.default)("pnpm:global");
  }
});

// ../../../../../setup-pnpm/store/v11/links/@pnpm/logger/1100.0.0/952a318e01cd01c3b43df7852eec32ba1e302a5d5192561691e22394516f7a59/node_modules/@pnpm/logger/lib/LogLevel.js
var init_LogLevel2 = __esm({
  "../../../../../setup-pnpm/store/v11/links/@pnpm/logger/1100.0.0/952a318e01cd01c3b43df7852eec32ba1e302a5d5192561691e22394516f7a59/node_modules/@pnpm/logger/lib/LogLevel.js"() {
  }
});

// ../../../../../setup-pnpm/store/v11/links/@pnpm/logger/1100.0.0/952a318e01cd01c3b43df7852eec32ba1e302a5d5192561691e22394516f7a59/node_modules/@pnpm/logger/lib/ndjsonParse.js
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, import_split22.default)(parseRow, opts2);
}
var import_split22, opts2;
var init_ndjsonParse2 = __esm({
  "../../../../../setup-pnpm/store/v11/links/@pnpm/logger/1100.0.0/952a318e01cd01c3b43df7852eec32ba1e302a5d5192561691e22394516f7a59/node_modules/@pnpm/logger/lib/ndjsonParse.js"() {
    import_split22 = __toESM(require_split2(), 1);
    opts2 = { strict: true };
  }
});

// ../../../../../setup-pnpm/store/v11/links/@pnpm/logger/1100.0.0/952a318e01cd01c3b43df7852eec32ba1e302a5d5192561691e22394516f7a59/node_modules/@pnpm/logger/lib/streamParser.js
function createStreamParser2() {
  const sp = parse7();
  import_bole5.default.output([
    {
      level: "debug",
      stream: sp
    }
  ]);
  return sp;
}
var import_bole5, streamParser2;
var init_streamParser2 = __esm({
  "../../../../../setup-pnpm/store/v11/links/@pnpm/logger/1100.0.0/952a318e01cd01c3b43df7852eec32ba1e302a5d5192561691e22394516f7a59/node_modules/@pnpm/logger/lib/streamParser.js"() {
    import_bole5 = __toESM(require_bole(), 1);
    init_ndjsonParse2();
    streamParser2 = createStreamParser2();
  }
});

// ../../../../../setup-pnpm/store/v11/links/@pnpm/logger/1100.0.0/952a318e01cd01c3b43df7852eec32ba1e302a5d5192561691e22394516f7a59/node_modules/@pnpm/logger/lib/writeToConsole.js
var import_bole6;
var init_writeToConsole2 = __esm({
  "../../../../../setup-pnpm/store/v11/links/@pnpm/logger/1100.0.0/952a318e01cd01c3b43df7852eec32ba1e302a5d5192561691e22394516f7a59/node_modules/@pnpm/logger/lib/writeToConsole.js"() {
    import_bole6 = __toESM(require_bole(), 1);
  }
});

// ../../../../../setup-pnpm/store/v11/links/@pnpm/logger/1100.0.0/952a318e01cd01c3b43df7852eec32ba1e302a5d5192561691e22394516f7a59/node_modules/@pnpm/logger/lib/index.js
var init_lib63 = __esm({
  "../../../../../setup-pnpm/store/v11/links/@pnpm/logger/1100.0.0/952a318e01cd01c3b43df7852eec32ba1e302a5d5192561691e22394516f7a59/node_modules/@pnpm/logger/lib/index.js"() {
    init_LogBase2();
    init_logger2();
    init_LogLevel2();
    init_streamParser2();
    init_writeToConsole2();
  }
});

// ../config/reader/lib/getOptionsFromRootManifest.js
import path57 from "node:path";
function getOptionsFromPnpmSettings(manifestDir, pnpmSettings, manifestOrOpts) {
  const opts3 = isGetOptionsFromPnpmSettingsOptions(manifestOrOpts) ? manifestOrOpts : manifestOrOpts == null ? {} : { manifest: manifestOrOpts };
  const settings = replaceEnvInSettings(pnpmSettings, {
    expandRequestDestinationEnv: opts3.expandRequestDestinationEnv ?? false
  });
  if (settings.overrides) {
    assertValidOverrides(settings.overrides);
    if (Object.keys(settings.overrides).length === 0) {
      delete settings.overrides;
    } else {
      warnAboutDeprecatedVersionReferences(settings.overrides);
      if (opts3.manifest) {
        settings.overrides = map_default(createVersionReferencesReplacer(opts3.manifest), settings.overrides);
      }
    }
  }
  if (pnpmSettings.patchedDependencies) {
    settings.patchedDependencies = { ...pnpmSettings.patchedDependencies };
    for (const [dep, patchFile] of Object.entries(pnpmSettings.patchedDependencies)) {
      if (manifestDir == null || path57.isAbsolute(patchFile))
        continue;
      settings.patchedDependencies[dep] = path57.join(manifestDir, patchFile);
    }
  }
  translateUpdateSettings(pnpmSettings, settings);
  translateAuditSettings(pnpmSettings, settings);
  return settings;
}
function translateUpdateSettings(pnpmSettings, settings) {
  delete settings.update;
  const update2 = pnpmSettings.update;
  if (update2 == null)
    return;
  assertObjectSetting(update2, "update");
  if (pnpmSettings.updateConfig != null) {
    globalWarn2('Both the "update" and "updateConfig" settings are set. The deprecated "updateConfig" setting is ignored in favor of "update".');
  }
  const updateConfig = {};
  if (update2.ignoreDeps != null) {
    assertStringArray(update2.ignoreDeps, "update.ignoreDeps");
    updateConfig.ignoreDependencies = update2.ignoreDeps;
  }
  if (update2.changeset != null) {
    assertBoolean(update2.changeset, "update.changeset");
    updateConfig.changeset = update2.changeset;
  }
  if (update2.githubActions != null) {
    assertBoolean(update2.githubActions, "update.githubActions");
    updateConfig.githubActions = update2.githubActions;
  }
  if (update2.githubActionsServer != null) {
    assertString(update2.githubActionsServer, "update.githubActionsServer");
    updateConfig.githubActionsServer = update2.githubActionsServer;
  }
  settings.updateConfig = updateConfig;
}
function translateAuditSettings(pnpmSettings, settings) {
  delete settings.audit;
  const audit2 = pnpmSettings.audit;
  if (audit2 == null)
    return;
  assertObjectSetting(audit2, "audit");
  if (audit2.ignore != null) {
    assertStringArray(audit2.ignore, "audit.ignore");
    if (pnpmSettings.auditConfig != null) {
      globalWarn2('Both the "audit" and "auditConfig" settings are set. The deprecated "auditConfig" setting is ignored in favor of "audit".');
    }
    settings.auditConfig = { ...settings.auditConfig, ignoreGhsas: audit2.ignore };
  }
  if (audit2.level != null) {
    if (!AUDIT_LEVELS.has(audit2.level)) {
      throw new PnpmError("INVALID_SETTING", `The "audit.level" setting should be one of ${Array.from(AUDIT_LEVELS).join(", ")}, but got ${JSON.stringify(audit2.level)}`);
    }
    if (pnpmSettings.auditLevel != null) {
      globalWarn2('Both the "audit" and "auditLevel" settings are set. The deprecated "auditLevel" setting is ignored in favor of "audit".');
    }
    ;
    settings.auditLevel = audit2.level;
  }
}
function isGetOptionsFromPnpmSettingsOptions(value) {
  return value != null && ("expandRequestDestinationEnv" in value || "manifest" in value);
}
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 assertStringArray(value, settingName) {
  if (!Array.isArray(value) || value.some((item) => typeof item !== "string")) {
    throw new PnpmError("INVALID_SETTING", `The "${settingName}" setting should be an array of strings, but got ${renderReceivedType(value)}`);
  }
}
function assertBoolean(value, settingName) {
  if (typeof value !== "boolean") {
    throw new PnpmError("INVALID_SETTING", `The "${settingName}" setting should be a boolean, but got ${renderReceivedType(value)}`);
  }
}
function assertString(value, settingName) {
  if (typeof value !== "string") {
    throw new PnpmError("INVALID_SETTING", `The "${settingName}" setting should be a string, but got ${renderReceivedType(value)}`);
  }
}
function assertObjectSetting(value, settingName) {
  if (value == null || typeof value !== "object" || Array.isArray(value)) {
    throw new PnpmError("INVALID_SETTING", `The "${settingName}" setting should be an object, but got ${renderReceivedType(value)}`);
  }
}
function replaceEnvInSettings(settings, opts3) {
  const newSettings = {};
  for (const [key, value] of Object.entries(settings)) {
    const newKey = (0, import_config9.envReplace)(key, process.env);
    if (typeof value === "string") {
      if (REQUEST_DESTINATION_SCALAR_KEYS.has(newKey) && !opts3.expandRequestDestinationEnv && hasEnvPlaceholder(value))
        continue;
      newSettings[newKey] = (0, import_config9.envReplace)(value, process.env);
    } else if (newKey === "registries" || newKey === "namedRegistries") {
      newSettings[newKey] = opts3.expandRequestDestinationEnv ? replaceEnvInStringValues(value) : copyStringValuesWithoutEnvPlaceholders(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 copyStringValuesWithoutEnvPlaceholders(value) {
  if (value == null || typeof value !== "object" || Array.isArray(value))
    return value;
  const out = {};
  for (const [k2, v] of Object.entries(value)) {
    if (typeof v === "string" && hasEnvPlaceholder(v))
      continue;
    out[k2] = v;
  }
  return out;
}
function hasEnvPlaceholder(value) {
  return /\$\{[^}]+\}/.test(value);
}
function warnAboutDeprecatedVersionReferences(overrides) {
  const selectors = Object.keys(overrides).filter((selector) => overrides[selector][0] === "$");
  if (selectors.length === 0)
    return;
  globalWarn2(`The "$" version reference syntax in overrides is deprecated (used by: ${selectors.join(", ")}). Define the version in a catalog and reference it with the "catalog:" protocol instead. See https://pnpm.io/catalogs`);
}
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, REQUEST_DESTINATION_SCALAR_KEYS, AUDIT_LEVELS;
var init_getOptionsFromRootManifest = __esm({
  "../config/reader/lib/getOptionsFromRootManifest.js"() {
    "use strict";
    import_config9 = __toESM(require_dist5(), 1);
    init_lib2();
    init_lib63();
    init_es();
    REQUEST_DESTINATION_SCALAR_KEYS = /* @__PURE__ */ new Set(["pnprServer", "registry", "httpProxy", "httpsProxy", "noProxy", "proxy", "noproxy"]);
    AUDIT_LEVELS = /* @__PURE__ */ new Set(["info", "low", "moderate", "high", "critical"]);
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/ini/6.0.0/2fd7d766b38bed97ba2f9858e63a9f5aef58f7b49f16475d6820a9baed65a35c/node_modules/ini/lib/ini.js
var require_ini = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/ini/6.0.0/2fd7d766b38bed97ba2f9858e63a9f5aef58f7b49f16475d6820a9baed65a35c/node_modules/ini/lib/ini.js"(exports2, module2) {
    var { hasOwnProperty: hasOwnProperty2 } = Object.prototype;
    var encode3 = (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 = encode3(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 decode3 = (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 = unsafe2(match[1]);
          if (section === "__proto__") {
            p = /* @__PURE__ */ Object.create(null);
            continue;
          }
          p = out[section] = out[section] || /* @__PURE__ */ Object.create(null);
          continue;
        }
        const keyRaw = unsafe2(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] ? unsafe2(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 unsafe2 = (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 i4 = 0, l = val.length; i4 < l; i4++) {
          const c3 = val.charAt(i4);
          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: decode3,
      decode: decode3,
      stringify: encode3,
      encode: encode3,
      safe,
      unsafe: unsafe2
    };
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/read-ini-file/5.0.0/068ec83fb9ce95684b2076a4d488f1467dd140dea045076d4fe252f4a01769c0/node_modules/read-ini-file/index.js
import fs35 from "node:fs";
async function readIniFile(fp) {
  const data = await fs35.promises.readFile(fp, "utf8");
  return parse8(data);
}
function readIniFileSync(fp) {
  return parse8(fs35.readFileSync(fp, "utf8"));
}
var import_ini, parse8;
var init_read_ini_file = __esm({
  "../../../../../setup-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);
    parse8 = (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",
      "username"
    ];
    isIniConfigKey = (key) => key.startsWith("@") || key.startsWith("//") || NPM_AUTH_SETTINGS.includes(key);
    isNpmrcReadableKey = (key) => isIniConfigKey(key) || NETWORK_INI_KEYS.includes(key);
  }
});

// ../config/reader/lib/npmDefaults.js
import os9 from "node:os";
import path58 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: path58.resolve(os9.homedir(), ".npmrc"),
      maxsockets: 50
    };
  }
});

// ../config/reader/lib/loadNpmrcFiles.js
import fs36 from "node:fs";
import os10 from "node:os";
import path59 from "node:path";
function loadNpmrcConfig(opts3) {
  const warnings = [];
  const env4 = opts3.env ?? process.env;
  const localPrefix = opts3.dir ? path59.resolve(opts3.dir) : findLocalPrefix(process.cwd());
  const userConfigPath = normalizePath3(opts3.npmrcAuthFile) ?? path59.resolve(os10.homedir(), ".npmrc");
  const workspaceNpmrcDir = opts3.workspaceDir ?? localPrefix;
  const workspaceNpmrcPath = path59.resolve(workspaceNpmrcDir, ".npmrc");
  const workspaceIsTrustedAuthFile = userConfigPath === workspaceNpmrcPath;
  const workspaceNpmrc = readAndFilterNpmrc(workspaceNpmrcPath, warnings, env4, {
    expandAuthValueEnv: workspaceIsTrustedAuthFile,
    expandRequestDestinationEnv: workspaceIsTrustedAuthFile
  });
  const userConfig = readAndFilterNpmrc(userConfigPath, warnings, env4);
  const pnpmAuthConfig = readAndFilterNpmrc(path59.join(opts3.configDir, "auth.ini"), warnings, env4);
  const cliOptions = rescopeUnscopedCreds({ ...opts3.cliOptions }, "<command line>", warnings);
  const envScopedConfig = readUrlScopedEnvConfig(env4);
  const envJsonAuth = readJsonAuthEnv(env4);
  const globalConfigJsonAuth = readGlobalConfigAuth(opts3.globalConfigAuth);
  const jsonAuth = {
    auth: { ...globalConfigJsonAuth.auth, ...envJsonAuth.auth },
    registries: { ...globalConfigJsonAuth.registries, ...envJsonAuth.registries }
  };
  const pnpmBuiltinConfig = {
    ...readAndFilterNpmrc(path59.resolve(path59.join(opts3.moduleDirname, "pnpmrc")), warnings, env4),
    registry: "https://registry.npmjs.org/",
    "@jsr:registry": "https://npm.jsr.io/"
  };
  loadCAFile([
    cliOptions,
    workspaceNpmrc,
    pnpmAuthConfig,
    userConfig,
    opts3.defaultOptions
  ]);
  const mergedConfig = {};
  for (const source of [pnpmBuiltinConfig, opts3.defaultOptions, userConfig, pnpmAuthConfig, workspaceNpmrc, envScopedConfig, jsonAuth.auth, cliOptions]) {
    for (const [key, value] of Object.entries(source)) {
      if (isNpmrcReadableKey(key)) {
        mergedConfig[key] = value;
      }
    }
  }
  const trustedConfig = {};
  for (const source of [pnpmBuiltinConfig, opts3.defaultOptions, userConfig, pnpmAuthConfig, envScopedConfig, jsonAuth.auth, cliOptions]) {
    for (const [key, value] of Object.entries(source)) {
      if (isNpmrcReadableKey(key)) {
        trustedConfig[key] = value;
      }
    }
  }
  const rawConfig = {
    ...pnpmBuiltinConfig,
    ...opts3.defaultOptions,
    ...userConfig,
    ...pnpmAuthConfig,
    ...workspaceNpmrc,
    ...envScopedConfig,
    ...jsonAuth.auth,
    ...cliOptions
  };
  return {
    mergedConfig,
    rawConfig,
    trustedConfig,
    workspaceNpmrc,
    userConfig,
    localPrefix,
    warnings,
    jsonAuth
  };
}
function readUrlScopedEnvConfig(env4) {
  const npmScoped = {};
  const pnpmScoped = {};
  for (const envKey of Object.keys(env4)) {
    const value = env4[envKey];
    if (value == null || value === "")
      continue;
    const match = URL_SCOPED_ENV_RE.exec(envKey);
    if (match == null)
      continue;
    const key = match[1];
    if (key.endsWith(":tokenHelper"))
      continue;
    const target2 = envKey.slice(0, 5).toLowerCase() === "pnpm_" ? pnpmScoped : npmScoped;
    target2[key] = value;
  }
  return { ...npmScoped, ...pnpmScoped };
}
function readJsonAuthEnv(env4) {
  const value = readJsonAuthEnvValue(env4);
  if (value == null)
    return { auth: {}, registries: {} };
  let parsed;
  try {
    parsed = JSON.parse(value);
  } catch (err2) {
    throw new PnpmError("INVALID_AUTH_SETTING", `Failed to parse pnpm_config__auth as JSON: ${err2 instanceof Error ? err2.message : String(err2)}`);
  }
  return parseJsonAuth(parsed, "pnpm_config__auth");
}
function parseJsonAuth(parsed, source) {
  if (parsed === null || typeof parsed !== "object" || Array.isArray(parsed)) {
    throw new PnpmError("INVALID_AUTH_SETTING", `${source} must be a JSON object`);
  }
  const auth = {};
  const registries = {};
  for (const [index2, [url7, scopes]] of Object.entries(parsed).entries()) {
    const registry = parseJsonAuthRegistry(url7, index2 + 1, source);
    if (scopes === null || typeof scopes !== "object" || Array.isArray(scopes)) {
      throw new PnpmError("INVALID_AUTH_SETTING", `${source}[${registry.label}] must be an object keyed by scope`);
    }
    for (const [scope, rawCreds] of Object.entries(scopes)) {
      if (!isJsonAuthScope(scope)) {
        throw new PnpmError("INVALID_AUTH_SETTING", `${source}[${registry.label}][${JSON.stringify(scope)}]: scope must be "@" or a package scope like "@org"`);
      }
      if (rawCreds === null || typeof rawCreds !== "object" || Array.isArray(rawCreds)) {
        throw new PnpmError("INVALID_AUTH_SETTING", `${source}[${registry.label}][${JSON.stringify(scope)}] must be an auth object`);
      }
      const token = jsonAuthToken(rawCreds, registry, scope, source);
      auth[`${registry.nerfed}:${scope === "@" ? "" : `${scope}:`}_authToken`] = token;
      registries[scope === "@" ? "default" : scope] = registry.normalized;
    }
  }
  return { auth, registries };
}
function readGlobalConfigAuth(globalConfigAuth) {
  if (globalConfigAuth == null)
    return { auth: {}, registries: {} };
  return parseJsonAuth(globalConfigAuth, "_auth");
}
function parseJsonAuthRegistry(url7, entryNumber, source) {
  const label = jsonAuthRegistryLabel(url7, entryNumber);
  let parsed;
  try {
    parsed = new URL(url7);
  } catch {
    throw new PnpmError("INVALID_AUTH_SETTING", `${source}[${label}]: key must be an http(s) registry URL`);
  }
  if (parsed.protocol !== "https:" && parsed.protocol !== "http:" || parsed.hostname === "") {
    throw new PnpmError("INVALID_AUTH_SETTING", `${source}[${label}]: key must be an http(s) registry URL`);
  }
  if (parsed.username !== "" || parsed.password !== "" || parsed.search !== "" || parsed.hash !== "") {
    throw new PnpmError("INVALID_AUTH_SETTING", `${source}[${label}]: registry URL must not include credentials, query, or fragment`);
  }
  const normalized = (0, import_normalize_registry_url2.default)(parsed.href);
  const nerfed = (0, import_config11.nerfDart)(normalized);
  if (nerfed === "") {
    throw new PnpmError("INVALID_AUTH_SETTING", `${source}[${label}]: key must be an http(s) registry URL`);
  }
  return { label, nerfed, normalized };
}
function jsonAuthRegistryLabel(url7, entryNumber) {
  const entryLabel = `entry ${entryNumber}`;
  try {
    const parsed = new URL(url7);
    if ((parsed.protocol === "https:" || parsed.protocol === "http:") && parsed.hostname !== "") {
      return `${entryLabel} (${parsed.protocol}//${parsed.host})`;
    }
  } catch {
  }
  return entryLabel;
}
function readJsonAuthEnvValue(env4) {
  return env4.pnpm_config__auth !== "" && env4.pnpm_config__auth != null ? env4.pnpm_config__auth : env4.PNPM_CONFIG__AUTH !== "" && env4.PNPM_CONFIG__AUTH != null ? env4.PNPM_CONFIG__AUTH : void 0;
}
function isJsonAuthScope(scope) {
  return scope === "@" || scope.startsWith("@") && scope.length > 1 && !scope.includes("/") && !scope.includes(":");
}
function jsonAuthToken(creds, registry, scope, source) {
  for (const field of Object.keys(creds)) {
    if (field !== "authToken") {
      throw new PnpmError("INVALID_AUTH_SETTING", `${source}[${registry.label}][${JSON.stringify(scope)}][${JSON.stringify(field)}]: unsupported auth field (only "authToken" is supported)`);
    }
  }
  const token = creds.authToken;
  if (typeof token !== "string") {
    throw new PnpmError("INVALID_AUTH_SETTING", `${source}[${registry.label}][${JSON.stringify(scope)}]: "authToken" must be a string`);
  }
  return token;
}
function readAndFilterNpmrc(filePath, warnings, env4, opts3 = {}) {
  let raw;
  try {
    raw = readIniFileSync(filePath);
  } catch (err2) {
    if (isErrorWithCode(err2, "ENOENT") || isErrorWithCode(err2, "EISDIR")) {
      return {};
    }
    warnings.push(`Issue while reading "${filePath}". ${err2 instanceof Error ? err2.message : String(err2)}`);
    return {};
  }
  const npmrcDir = path59.dirname(filePath);
  const result2 = {};
  const expandAuthValueEnv = opts3.expandAuthValueEnv ?? true;
  const expandRequestDestinationEnv = opts3.expandRequestDestinationEnv ?? true;
  for (const [rawKey, rawValue] of Object.entries(raw)) {
    if (!expandRequestDestinationEnv && hasEnvPlaceholder2(rawKey) && isRequestDestinationKey(rawKey)) {
      warnIgnoredRequestDestinationEnv(filePath, rawKey, warnings);
      continue;
    }
    if (!expandAuthValueEnv && hasEnvPlaceholder2(rawKey) && isAuthValueKey(rawKey)) {
      warnIgnoredAuthValueEnv(filePath, rawKey, warnings);
      continue;
    }
    const key = substituteEnv(rawKey, env4, warnings);
    if (!expandRequestDestinationEnv && hasEnvPlaceholder2(rawKey) && isRequestDestinationKey(key)) {
      warnIgnoredRequestDestinationEnv(filePath, rawKey, warnings);
      continue;
    }
    if (!expandAuthValueEnv && hasEnvPlaceholder2(rawKey) && isAuthValueKey(key)) {
      warnIgnoredAuthValueEnv(filePath, rawKey, warnings);
      continue;
    }
    let value = rawValue;
    if (typeof rawValue === "string") {
      if (!expandRequestDestinationEnv && hasEnvPlaceholder2(rawValue) && isRequestDestinationValueKey(key)) {
        warnIgnoredRequestDestinationEnv(filePath, key, warnings);
        continue;
      }
      if (!expandAuthValueEnv && hasEnvPlaceholder2(rawValue) && isAuthValueKey(key)) {
        warnIgnoredAuthValueEnv(filePath, key, warnings);
        continue;
      }
      value = substituteEnv(rawValue, env4, warnings);
    }
    if (isNpmrcReadableKey(key)) {
      if (key === "cafile" && typeof value === "string" && value !== "" && !path59.isAbsolute(value)) {
        value = path59.resolve(npmrcDir, value);
      }
      result2[key] = value;
    }
  }
  return rescopeUnscopedCreds(result2, filePath, warnings);
}
function isRequestDestinationKey(key) {
  return isRegistryKey(key) || key.startsWith("//");
}
function isRequestDestinationValueKey(key) {
  return isRegistryKey(key) || key === "https-proxy" || key === "http-proxy" || key === "proxy";
}
function isRegistryKey(key) {
  return key === "registry" || key.startsWith("@") && key.endsWith(":registry");
}
function isAuthValueKey(key) {
  return AUTH_VALUE_KEYS.includes(key) || AUTH_VALUE_KEY_SUFFIXES.some((suffix) => key.endsWith(suffix));
}
function hasEnvPlaceholder2(value) {
  return /\$\{[^}]+\}/.test(value);
}
function configSetExample(key) {
  return SHELL_SAFE_KEY.test(key) ? ` (for example, run: pnpm config set "${key}" <value>)` : "";
}
function warnIgnoredRequestDestinationEnv(filePath, key, warnings) {
  warnings.push(`Ignored project-level request destination "${key}" in "${filePath}": environment variables are not expanded in registry or proxy URLs that come from a project .npmrc, because that file is committed to the repository and a malicious value could redirect requests or leak secrets. Move this setting to a trusted source that pnpm still expands \u2014 put it in your user-level ~/.npmrc, or set it with pnpm config set${configSetExample(key)}. If the value is not secret, you can also write it literally in the project .npmrc. See ${DOCS_URL}`);
}
function warnIgnoredAuthValueEnv(filePath, key, warnings) {
  warnings.push(`Ignored project-level auth setting "${key}" in "${filePath}": environment variables are not expanded in registry credentials that come from a project .npmrc, because that file is committed to the repository and could leak the secret to an attacker-controlled registry. Move this credential to a trusted source that pnpm still expands \u2014 put the line in your user-level ~/.npmrc, or set it with pnpm config set${configSetExample(key)}. See ${DOCS_URL}`);
}
function rescopeUnscopedCreds(source, sourceLabel, warnings) {
  if (!UNSCOPED_RESCOPABLE_KEYS.some((key) => key in source)) {
    return source;
  }
  const rawRegistry = typeof source.registry === "string" && source.registry !== "" ? source.registry : null;
  const fallbackRegistry = rawRegistry ?? npmDefaults.registry;
  let nerfedRegistry;
  try {
    nerfedRegistry = (0, import_config11.nerfDart)((0, import_normalize_registry_url2.default)(fallbackRegistry));
  } catch {
    const dropped = UNSCOPED_RESCOPABLE_KEYS.filter((key) => key in source);
    for (const key of dropped)
      delete source[key];
    warnings.push(`Unscoped per-registry settings (${dropped.join(", ")}) in "${sourceLabel}" were ignored: the source's "registry" value (${JSON.stringify(source.registry)}) is not a parseable URL, so pnpm cannot pin them anywhere safe. Write them URL-scoped (e.g. "//registry.example.com/:_authToken=...") to send them to a specific registry.`);
    return source;
  }
  const rescoped = [];
  for (const key of UNSCOPED_RESCOPABLE_KEYS) {
    if (!(key in source))
      continue;
    const scopedKey = `${nerfedRegistry}:${key}`;
    if (!(scopedKey in source)) {
      source[scopedKey] = source[key];
    }
    delete source[key];
    rescoped.push(key);
  }
  if (rescoped.length > 0) {
    warnings.push(`Unscoped per-registry settings (${rescoped.join(", ")}) in "${sourceLabel}" are deprecated. pnpm pinned them to "${nerfedRegistry}" for this run, but a future release will stop supporting unscoped per-registry settings. Write them as "${nerfedRegistry}:${rescoped[0]}=..." instead.`);
  }
  return source;
}
function substituteEnv(value, env4, warnings) {
  const { value: substituted, unresolved } = (0, import_config10.envReplaceLossy)(value, env4);
  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 = path59.join(os10.homedir(), p.slice(2));
  }
  return path59.resolve(p);
}
function isErrorWithCode(err2, code) {
  return err2 != null && typeof err2 === "object" && "code" in err2 && err2.code === code;
}
function findLocalPrefix(startDir) {
  let name = path59.resolve(startDir);
  let walkedUp = false;
  while (path59.basename(name) === "node_modules") {
    name = path59.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 = fs36.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 dirname3 = path59.dirname(name);
    if (dirname3 === name) {
      return original;
    }
    return findPrefixUp(dirname3, original);
  } catch (err2) {
    if (name === original) {
      if (isErrorWithCode(err2, "ENOENT")) {
        return original;
      }
      throw err2;
    }
    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 = fs36.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, import_config11, import_normalize_registry_url2, URL_SCOPED_ENV_RE, UNSCOPED_RESCOPABLE_KEYS, AUTH_VALUE_KEYS, AUTH_VALUE_KEY_SUFFIXES, DOCS_URL, SHELL_SAFE_KEY;
var init_loadNpmrcFiles = __esm({
  "../config/reader/lib/loadNpmrcFiles.js"() {
    "use strict";
    import_config10 = __toESM(require_dist5(), 1);
    import_config11 = __toESM(require_dist(), 1);
    init_lib2();
    import_normalize_registry_url2 = __toESM(require_normalize_registry_url(), 1);
    init_read_ini_file();
    init_localConfig();
    init_npmDefaults();
    URL_SCOPED_ENV_RE = /^p?npm_config_(\/\/.+)$/i;
    UNSCOPED_RESCOPABLE_KEYS = [
      "_authToken",
      "_auth",
      "username",
      "_password",
      "tokenHelper",
      "cert",
      "key"
    ];
    AUTH_VALUE_KEYS = ["_authToken", "_auth", "_password", "username", "tokenHelper", "cert", "key"];
    AUTH_VALUE_KEY_SUFFIXES = AUTH_VALUE_KEYS.map((key) => `:${key}`);
    DOCS_URL = "https://pnpm.io/npmrc";
    SHELL_SAFE_KEY = /^[\w@.:/-]+$/;
  }
});

// ../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 join4 } from "node:path";
function transformPathKeys(config2, homedir) {
  for (const key of PATH_KEYS) {
    if (config2[key]) {
      config2[key] = transformPath(config2[key], homedir);
    }
  }
}
var REGEX, transformPath, PATH_KEYS;
var init_transformPath = __esm({
  "../config/reader/lib/transformPath.js"() {
    "use strict";
    REGEX = /^~[/\\]/;
    transformPath = (path240, homedir) => REGEX.test(path240) ? join4(homedir, path240.replace(REGEX, "")) : path240;
    PATH_KEYS = [
      "cacheDir",
      "globalBinDir",
      "globalDir",
      "pnpmHomeDir",
      "storeDir"
    ];
  }
});

// ../config/reader/lib/types.js
import path60 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: [Boolean, "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,
      "hoisting-limits": ["none", "workspaces", "dependencies"],
      "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-experimental-package-map": Boolean,
      "node-package-map-type": ["standard", "loose"],
      "node-linker": ["pnp", "isolated", "hoisted"],
      noproxy: String,
      "npm-path": String,
      "npmrc-auth-file": path60,
      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,
      "frozen-store": 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,
      "pnpr-server": [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/packageManagerRegistries.js
function getPackageManagerRegistries(config2) {
  return {
    default: DEFAULT_PACKAGE_MANAGER_REGISTRY,
    ...config2.packageManagerRegistries
  };
}
function getPackageManagerBootstrapConfig(config2) {
  return {
    ca: config2.packageManagerNetworkConfig?.ca,
    cert: config2.packageManagerNetworkConfig?.cert,
    configByUri: config2.packageManagerNetworkConfig?.configByUri ?? {},
    httpProxy: config2.packageManagerNetworkConfig?.httpProxy,
    httpsProxy: config2.packageManagerNetworkConfig?.httpsProxy,
    key: config2.packageManagerNetworkConfig?.key,
    localAddress: config2.packageManagerNetworkConfig?.localAddress,
    noProxy: config2.packageManagerNetworkConfig?.noProxy,
    registries: getPackageManagerRegistries(config2),
    strictSsl: config2.packageManagerNetworkConfig?.strictSsl
  };
}
var DEFAULT_PACKAGE_MANAGER_REGISTRY;
var init_packageManagerRegistries = __esm({
  "../config/reader/lib/packageManagerRegistries.js"() {
    "use strict";
    DEFAULT_PACKAGE_MANAGER_REGISTRY = "https://registry.npmjs.org/";
  }
});

// ../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(opts3) {
  return createProjectConfigRecordFromConfigSet(opts3.packageConfigs);
}
function createProjectConfigFromRaw(config2) {
  if (typeof config2 !== "object" || !config2 || Array.isArray(config2)) {
    throw new ProjectConfigIsNotAnObjectError(config2);
  }
  if ("hoist" in config2 && config2.hoist !== void 0 && typeof config2.hoist !== "boolean") {
    throw new ProjectConfigInvalidValueTypeError("boolean", config2.hoist);
  }
  if ("modulesDir" in config2 && config2.modulesDir !== void 0 && typeof config2.modulesDir !== "string") {
    throw new ProjectConfigInvalidValueTypeError("string", config2.modulesDir);
  }
  if ("saveExact" in config2 && config2.saveExact !== void 0 && typeof config2.saveExact !== "boolean") {
    throw new ProjectConfigInvalidValueTypeError("boolean", config2.saveExact);
  }
  if ("savePrefix" in config2 && config2.savePrefix !== void 0 && typeof config2.savePrefix !== "string") {
    throw new ProjectConfigInvalidValueTypeError("string", config2.savePrefix);
  }
  if ("overrides" in config2 && config2.overrides !== void 0 && (typeof config2.overrides !== "object" || config2.overrides === null || Array.isArray(config2.overrides))) {
    throw new ProjectConfigInvalidValueTypeError("object", config2.overrides);
  }
  for (const key in config2) {
    if (config2[key] !== void 0 && !PROJECT_CONFIG_FIELDS.includes(key)) {
      throw new ProjectConfigUnsupportedFieldError(key);
    }
  }
  const result2 = config2;
  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 fs37 from "node:fs";
import os11 from "node:os";
import path61 from "node:path";
import { stripVTControlCharacters as stripVTControlCharacters3 } from "node:util";
async function getConfig(opts3) {
  if (opts3.onlyInheritDlxSettingsFromLocal) {
    const { onlyInheritDlxSettingsFromLocal: _, ...localOpts } = opts3;
    const globalCfgOpts = {
      ...localOpts,
      ignoreLocalSettings: true,
      cliOptions: {
        ...localOpts.cliOptions,
        dir: os11.homedir()
      }
    };
    const [final, localSrc] = await Promise.all([getConfig(globalCfgOpts), getConfig(localOpts)]);
    inheritDlxConfig(final, localSrc);
    final.warnings.push(...localSrc.warnings);
    return final;
  }
  const env4 = opts3.env ?? process.env;
  const packageManager2 = opts3.packageManager ?? { name: "pnpm", version: "undefined" };
  const cliOptions = opts3.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,
    "node-experimental-package-map": false,
    "node-package-map-type": "standard",
    "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,
    "frozen-store": false,
    "workspace-concurrency": getDefaultWorkspaceConcurrency(),
    "workspace-prefix": opts3.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(env4, "npmrc_auth_file") ?? readEnvVar(env4, "userconfig") ?? globalYamlConfigForNpmrcAuthFile?.npmrcAuthFile ?? readNpmEnvVar(env4, "userconfig");
  const npmrcResult = loadNpmrcConfig({
    cliOptions,
    defaultOptions: defaultOptions4,
    dir: cliOptions.dir,
    workspaceDir: opts3.workspaceDir,
    npmrcAuthFile,
    configDir,
    moduleDirname: import.meta.dirname,
    env: opts3.env,
    // Only the global config yaml may supply `_auth` (deleted from
    // `globalYamlConfig` below so it isn't flagged as an unknown setting).
    globalConfigAuth: globalYamlConfigForNpmrcAuthFile?._auth
  });
  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 = fs37.realpathSync(betterPathResolve(cliOptions.dir ?? npmrcResult.localPrefix));
  if (cwd.includes(path61.delimiter)) {
    warnings.push(`Directory "${cwd}" contains the path delimiter character (${path61.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 = opts3.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);
  let globalYamlRegistries;
  const globalYamlConfig = globalYamlConfigForNpmrcAuthFile;
  if (globalYamlConfig) {
    delete globalYamlConfig._auth;
    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 = getGlobalConfigPath(configDir);
      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,
      expandRequestDestinationEnv: true,
      projectManifest: void 0,
      workspaceDir: void 0,
      workspaceManifest: globalYamlConfig
    });
    globalYamlRegistries = pnpmConfig.registries;
  }
  const networkConfigs = getNetworkConfigs(pnpmConfig.authConfig);
  const registriesFromNpmrc = {
    default: (0, import_normalize_registry_url3.default)(pnpmConfig.authConfig.registry),
    ...networkConfigs.registries
  };
  const trustedAuthConfig = pickIniConfig(npmrcResult.trustedConfig);
  const trustedNetworkConfigs = getNetworkConfigs(trustedAuthConfig);
  const cliScopedRegistries = {};
  for (const [key, value] of Object.entries(cliOptions)) {
    if (key.startsWith("@") && key.endsWith(":registry") && typeof value === "string") {
      cliScopedRegistries[key.slice(0, -":registry".length)] = (0, import_normalize_registry_url3.default)(value);
    }
  }
  pnpmConfig.registries = { ...registriesFromNpmrc };
  if (explicitlySetKeys.has("registry") && typeof pnpmConfig.registry === "string") {
    pnpmConfig.registries.default = (0, import_normalize_registry_url3.default)(pnpmConfig.registry);
  }
  pnpmConfig.packageManagerRegistries = {
    default: (0, import_normalize_registry_url3.default)(trustedAuthConfig.registry),
    ...trustedNetworkConfigs.registries,
    // `_auth` routes apply here too so bootstrap (self-download / version
    // switching) resolves the same way as regular installs.
    ...npmrcResult.jsonAuth.registries,
    ...cliScopedRegistries
  };
  if (explicitlySetKeys.has("registry") && typeof pnpmConfig.registry === "string") {
    pnpmConfig.packageManagerRegistries.default = (0, import_normalize_registry_url3.default)(pnpmConfig.registry);
  }
  pnpmConfig.packageManagerNetworkConfig = createPackageManagerNetworkConfig(npmrcResult.trustedConfig, trustedNetworkConfigs.configByUri ?? {}, env4);
  pnpmConfig.configByUri = { ...networkConfigs.configByUri };
  const trustedConfig = npmrcResult.trustedConfig;
  for (const [key, value] of Object.entries(pnpmConfig.authConfig)) {
    if (!key.endsWith("tokenHelper") && key !== "tokenHelper")
      continue;
    if (!(key in trustedConfig) || trustedConfig[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: env4, platform: process.platform });
  let globalDirRoot;
  if (pnpmConfig.globalDir) {
    globalDirRoot = pnpmConfig.globalDir;
  } else {
    globalDirRoot = path61.join(pnpmConfig.pnpmHomeDir, "global");
  }
  pnpmConfig.globalPkgDir = path61.join(globalDirRoot, GLOBAL_LAYOUT_VERSION);
  pnpmConfig.dir = cwd;
  if (cliOptions["global"]) {
    delete pnpmConfig.workspaceDir;
    pnpmConfig.bin = pnpmConfig.globalBinDir ?? path61.join(pnpmConfig.pnpmHomeDir, "bin");
    if (pnpmConfig.bin) {
      fs37.mkdirSync(pnpmConfig.bin, { recursive: true });
      await checkGlobalBinDir(pnpmConfig.bin, { env: env4, shouldAllowWrite: opts3.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 (opts3.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 (opts3.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 (opts3.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 (opts3.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 (opts3.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 = path61.join(pnpmConfig.dir, "node_modules", ".bin");
  }
  pnpmConfig.packageManager = packageManager2;
  pnpmConfig.rootProjectManifestDir = pnpmConfig.lockfileDir ?? pnpmConfig.workspaceDir ?? pnpmConfig.dir;
  let workspaceManifestRegistries;
  if (!opts3.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,
          skipSettings: opts3.forSelfUpdate ? SELF_UPDATE_SKIPPED_SETTINGS : void 0,
          workspaceDir: pnpmConfig.workspaceDir,
          workspaceManifest
        });
        if (workspaceManifest.registries != null) {
          workspaceManifestRegistries = pnpmConfig.registries;
        }
      }
    } else if (cliOptions["global"]) {
      const workspaceManifest = await readWorkspaceManifest(pnpmConfig.globalPkgDir);
      if (workspaceManifest) {
        addSettingsFromWorkspaceManifestToConfig(pnpmConfig, {
          configFromCliOpts,
          projectManifest: pnpmConfig.rootProjectManifest,
          workspaceDir: pnpmConfig.globalPkgDir,
          workspaceManifest
        });
        if (workspaceManifest.registries != null) {
          workspaceManifestRegistries = pnpmConfig.registries;
        }
      }
    }
  }
  pnpmConfig.registries = {
    ...registriesFromNpmrc,
    ...globalYamlRegistries,
    ...workspaceManifestRegistries,
    // `_auth` routes win over repo-controlled yaml on conflicting scopes.
    ...npmrcResult.jsonAuth.registries,
    // CLI per-scope registries last, so `--@scope:registry=...` wins over
    // both yaml and `_auth` ("CLI > _auth > yaml").
    ...cliScopedRegistries
  };
  if (explicitlySetKeys.has("registry") && typeof pnpmConfig.registry === "string") {
    pnpmConfig.registries.default = (0, import_normalize_registry_url3.default)(pnpmConfig.registry);
  }
  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_url3.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], env4)) {
    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_url3.default)(value);
      pnpmConfig.packageManagerRegistries.default = (0, import_normalize_registry_url3.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 (opts3.cliOptions["save-peer"]) {
    if (opts3.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 (opts3.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 = [path61.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 ? path61.join(pnpmConfig.modulesDir, ".pnpm") : "node_modules/.pnpm";
    pnpmConfig.extraEnv["NODE_PATH"] = pathAbsolute(path61.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, os11.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, prodAllProjectsGraph, prodOnlySelectedProjectDirs, rootProjectManifest, rootProjectManifestDir, cliOptions: ctxCliOptions, explicitlySetKeys: ctxExplicitlySetKeys, packageManager: ctxPackageManager, wantedPackageManager, ...config2 } = pnpmConfig;
  const context = {
    hooks,
    finders,
    allProjects,
    selectedProjectsGraph,
    allProjectsGraph,
    prodAllProjectsGraph,
    prodOnlySelectedProjectDirs,
    rootProjectManifest,
    rootProjectManifestDir,
    cliOptions: ctxCliOptions,
    explicitlySetKeys: ctxExplicitlySetKeys,
    packageManager: ctxPackageManager,
    wantedPackageManager
  };
  return { config: config2, context, warnings };
}
function getProcessEnv(env4) {
  return process.env[env4] ?? process.env[env4.toUpperCase()] ?? process.env[env4.toLowerCase()];
}
function createPackageManagerNetworkConfig(trustedConfig, configByUri, env4) {
  const httpsProxy = getProxyValue(trustedConfig["https-proxy"] ?? trustedConfig.proxy, getEnvValue(env4, "https_proxy"));
  const httpProxy = getProxyValue(trustedConfig["http-proxy"], httpsProxy ?? getEnvValue(env4, "http_proxy") ?? getEnvValue(env4, "proxy"));
  return {
    ca: trustedConfig.ca,
    cert: trustedConfig.cert,
    configByUri,
    httpProxy,
    httpsProxy,
    key: trustedConfig.key,
    localAddress: trustedConfig["local-address"],
    noProxy: trustedConfig["no-proxy"] ?? trustedConfig.noproxy ?? getEnvValue(env4, "no_proxy"),
    strictSsl: trustedConfig["strict-ssl"]
  };
}
function getEnvValue(env4, key) {
  return env4[key] ?? env4[key.toUpperCase()] ?? env4[key.toLowerCase()];
}
function getProxyValue(value, fallback) {
  if (value === false || value === null)
    return void 0;
  if (typeof value === "string" && value.length > 0)
    return value;
  return fallback;
}
function readEnvVar(env4, key) {
  const value = env4[`pnpm_config_${key}`] ?? env4[`PNPM_CONFIG_${key.toUpperCase()}`];
  return value !== "" ? value : void 0;
}
function readNpmEnvVar(env4, key) {
  const value = env4[`npm_config_${key}`] ?? env4[`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);
      const conflictWarning = getPackageManagerConflictWarning(legacyPm, {
        name: pmFromDevEngines.name,
        ...splitPackageManagerVersion(pmFromDevEngines.version)
      });
      if (conflictWarning) {
        warnings.push(conflictWarning);
      }
    }
    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) {
  const separatorIndex = packageManager2.startsWith("@") ? packageManager2.indexOf("@", 1) : packageManager2.indexOf("@");
  if (separatorIndex === -1)
    return { name: packageManager2, version: void 0, hash: void 0 };
  const name = packageManager2.slice(0, separatorIndex);
  const pmReference = packageManager2.slice(separatorIndex + 1);
  if (pmReference.includes(":"))
    return { name, version: void 0, hash: void 0 };
  return { name, ...splitPackageManagerVersion(pmReference) };
}
function splitPackageManagerVersion(reference) {
  if (reference == null)
    return { version: void 0, hash: void 0 };
  const hashIndex = reference.indexOf("+");
  if (hashIndex === -1)
    return { version: reference, hash: void 0 };
  return { version: reference.slice(0, hashIndex), hash: reference.slice(hashIndex + 1) };
}
function getPackageManagerConflictWarning(legacy, devEngines) {
  const ignoredSuffix = '. "packageManager" will be ignored';
  const genericWarning = `Cannot use both "packageManager" and "devEngines.packageManager" in package.json${ignoredSuffix}`;
  if (legacy.name !== devEngines.name) {
    return `"packageManager" (${sanitizeManifestValue(legacy.name)}) and "devEngines.packageManager" (${sanitizeManifestValue(devEngines.name)}) specify different package managers in package.json${ignoredSuffix}`;
  }
  if (legacy.version !== devEngines.version) {
    if (legacy.version == null || devEngines.version == null)
      return genericWarning;
    return `"packageManager" and "devEngines.packageManager" specify different versions of ${sanitizeManifestValue(legacy.name)} in package.json${ignoredSuffix}`;
  }
  if (legacy.hash !== devEngines.hash) {
    if (legacy.hash != null && devEngines.hash != null && legacy.version != null) {
      return `"packageManager" and "devEngines.packageManager" specify ${sanitizeManifestValue(legacy.name)}@${sanitizeManifestValue(legacy.version)} with different integrity hashes in package.json${ignoredSuffix}`;
    }
    return genericWarning;
  }
  return void 0;
}
function sanitizeManifestValue(value) {
  return stripVTControlCharacters3(value).replace(/[\u0000-\u001f\u007f]/g, " ");
}
function shouldPersistLockfile(pm2) {
  if (pm2.onFail === "ignore")
    return false;
  if (pm2.fromDevEngines === true)
    return true;
  if (pm2.version == null || import_semver18.default.valid(pm2.version) == null)
    return false;
  return import_semver18.default.major(pm2.version) >= 12;
}
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;
    if (!import_semver18.default.validRange(nodeRuntime.version))
      continue;
    const minVersion = import_semver18.default.minVersion(nodeRuntime.version);
    if (minVersion != null) {
      return minVersion.version;
    }
  }
  return void 0;
}
function addSettingsFromWorkspaceManifestToConfig(pnpmConfig, { configFromCliOpts, expandRequestDestinationEnv, projectManifest, skipSettings, workspaceManifest, workspaceDir }) {
  const newSettings = Object.assign(getOptionsFromPnpmSettings(workspaceDir, workspaceManifest, { manifest: projectManifest, expandRequestDestinationEnv }), configFromCliOpts);
  for (const [key, value] of Object.entries(newSettings)) {
    if (!isCamelCase(key))
      continue;
    if (skipSettings?.has(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_url3, import_semver18, MIGRATED_PNPM_FIELD_KEYS, SELF_UPDATE_SKIPPED_SETTINGS;
var init_lib64 = __esm({
  "../config/reader/lib/index.js"() {
    "use strict";
    init_lib60();
    init_lib27();
    init_lib();
    init_lib2();
    init_lib61();
    init_lib11();
    init_lib62();
    init_lib15();
    init_lib43();
    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_url3 = __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_dirs();
    init_getNetworkConfigs();
    init_getOptionsFromRootManifest();
    init_packageManagerRegistries();
    init_projectConfig();
    init_configFileKey();
    init_localConfig();
    MIGRATED_PNPM_FIELD_KEYS = /* @__PURE__ */ new Set([
      "allowBuilds",
      "allowedDeprecatedVersions",
      "allowUnusedPatches",
      "audit",
      "auditConfig",
      "configDependencies",
      "executionEnv",
      "ignoredOptionalDependencies",
      "neverBuiltDependencies",
      "onlyBuiltDependencies",
      "onlyBuiltDependenciesFile",
      "overrides",
      "packageExtensions",
      "patchedDependencies",
      "peerDependencyRules",
      "requiredScripts",
      "supportedArchitectures",
      "update",
      "updateConfig"
    ]);
    SELF_UPDATE_SKIPPED_SETTINGS = /* @__PURE__ */ new Set([
      "ci",
      "minimumReleaseAge",
      "minimumReleaseAgeExclude",
      "minimumReleaseAgeIgnoreMissingTime",
      "minimumReleaseAgeStrict",
      "trustPolicy",
      "trustPolicyExclude",
      "trustPolicyIgnoreAfter"
    ]);
  }
});

// ../registry-access/client/lib/addUser.js
async function addUser(opts3) {
  const url7 = new URL(`-/user/org.couchdb.user:${encodeURIComponent(opts3.username)}`, opts3.registryUrl).href;
  const response = await opts3.fetch(url7, {
    method: "PUT",
    headers: {
      "content-type": "application/json",
      accept: "application/json",
      "npm-auth-type": "web",
      ...opts3.otp != null ? { "npm-otp": opts3.otp } : {}
    },
    body: JSON.stringify({
      _id: `org.couchdb.user:${opts3.username}`,
      name: opts3.username,
      password: opts3.password,
      email: opts3.email,
      type: "user"
    })
  });
  if (!response.ok) {
    const text = await response.text();
    throw new AddUserHttpError(response.status, text, response.headers);
  }
  const body = await response.json();
  if (!body?.token) {
    throw new AddUserNoTokenError();
  }
  return { token: body.token };
}
var AddUserHttpError, AddUserNoTokenError;
var init_addUser = __esm({
  "../registry-access/client/lib/addUser.js"() {
    "use strict";
    AddUserHttpError = class extends Error {
      status;
      responseText;
      responseJson;
      responseHeaders;
      constructor(status, responseText, responseHeaders) {
        super(`addUser failed (HTTP ${status}): ${responseText}`);
        this.name = "AddUserHttpError";
        this.status = status;
        this.responseText = responseText;
        this.responseHeaders = responseHeaders;
        try {
          this.responseJson = JSON.parse(responseText);
        } catch {
          this.responseJson = void 0;
        }
      }
    };
    AddUserNoTokenError = class extends Error {
      constructor() {
        super("The registry returned a successful response but no token");
        this.name = "AddUserNoTokenError";
      }
    };
  }
});

// ../registry-access/client/lib/setDistTag.js
async function setDistTag(opts3) {
  const encodedName = (0, import_npm_package_arg2.default)(opts3.packageName).escapedName;
  const url7 = new URL(`-/package/${encodedName}/dist-tags/${encodeURIComponent(opts3.distTag)}`, opts3.registryUrl).href;
  const response = await opts3.fetchFromRegistry(url7, {
    authHeaderValue: opts3.authHeader,
    method: "PUT",
    headers: {
      "content-type": "application/json",
      "npm-auth-type": opts3.authType ?? "web",
      ...opts3.otp ? { "npm-otp": opts3.otp } : {}
    },
    body: JSON.stringify(opts3.version)
  });
  if (response.ok)
    return;
  const body = await response.text();
  if (response.status === 401) {
    throw parseAuthError(body, opts3.distTag);
  }
  const action = `set dist-tag "${opts3.distTag}" on`;
  if (response.status === 403) {
    throw new PnpmError("FORBIDDEN", `You do not have permission to ${action} this package. ${body}`);
  }
  throw new PnpmError("REGISTRY_ERROR", `Failed to ${action} package: ${response.status} ${response.statusText}. ${body}`);
}
function parseAuthError(body, distTag) {
  const parsed = tryParseJson(body);
  if (parsed != null && typeof parsed === "object" && "authUrl" in parsed && "doneUrl" in parsed) {
    return new SyntheticOtpError({
      authUrl: typeof parsed.authUrl === "string" ? parsed.authUrl : void 0,
      doneUrl: typeof parsed.doneUrl === "string" ? parsed.doneUrl : void 0
    });
  }
  if (/one-time pass/i.test(body)) {
    return new SyntheticOtpError(void 0);
  }
  return new PnpmError("UNAUTHORIZED", `You must be logged in to set dist-tag "${distTag}" on packages. ${body}`);
}
function tryParseJson(body) {
  try {
    return JSON.parse(body);
  } catch {
    return void 0;
  }
}
var import_npm_package_arg2;
var init_setDistTag = __esm({
  "../registry-access/client/lib/setDistTag.js"() {
    "use strict";
    init_lib2();
    init_lib22();
    import_npm_package_arg2 = __toESM(require_npa(), 1);
  }
});

// ../registry-access/client/lib/index.js
var init_lib65 = __esm({
  "../registry-access/client/lib/index.js"() {
    "use strict";
    init_addUser();
    init_setDistTag();
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/ansi-regex/5.0.1/76c207fb4c174310b90a92e59359db860ee2acc81117e822787bbf6cfbe69c45/node_modules/ansi-regex/index.js
var require_ansi_regex = __commonJS({
  "../../../../../setup-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");
    };
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/strip-ansi/6.0.1/b780933dd84d36bca6262271187fcc44f9d907bd6963c018f00a50a19cff84b3/node_modules/strip-ansi/index.js
var require_strip_ansi = __commonJS({
  "../../../../../setup-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;
  }
});

// ../../../../../setup-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({
  "../../../../../setup-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;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/emoji-regex/8.0.0/40f3b57febcd8177353dcf953ef4a5dc6cd0ba03563cf9cd473d9f5a2d0dbebf/node_modules/emoji-regex/index.js
var require_emoji_regex = __commonJS({
  "../../../../../setup-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;
    };
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/string-width/4.2.3/8a83f39756ea40270d3928824234b7d89d0dab6c62b7d51c8698d0396183bc30/node_modules/string-width/index.js
var require_string_width = __commonJS({
  "../../../../../setup-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 i4 = 0; i4 < string.length; i4++) {
        const code = string.codePointAt(i4);
        if (code <= 31 || code >= 127 && code <= 159) {
          continue;
        }
        if (code >= 768 && code <= 879) {
          continue;
        }
        if (code > 65535) {
          i4++;
        }
        width += isFullwidthCodePoint2(code) ? 2 : 1;
      }
      return width;
    };
    module2.exports = stringWidth2;
    module2.exports.default = stringWidth2;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/astral-regex/2.0.0/84572dd9a104efb84ce6eae0947f1c9b00623edc5ef16eebc54f2817c00c82e4/node_modules/astral-regex/index.js
var require_astral_regex = __commonJS({
  "../../../../../setup-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;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/slice-ansi/4.0.0/6e081b863d4919c869de5c60f331162f5fab64b759c81c029f883af54c1f90d8/node_modules/slice-ansi/index.js
var require_slice_ansi = __commonJS({
  "../../../../../setup-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 ansiStyles4 = require_ansi_styles();
    var ESCAPES2 = [
      "\x1B",
      "\x9B"
    ];
    var wrapAnsi2 = (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 = ansiStyles4.codes.get(Number.parseInt(ansiCode, 10));
        if (item) {
          const indexEscape = ansiCodes.indexOf(item.toString());
          if (indexEscape === -1) {
            output.push(wrapAnsi2(isEscapes ? item : ansiCodeOrigin));
          } else {
            ansiCodes.splice(indexEscape, 1);
          }
        } else if (isEscapes) {
          output.push(wrapAnsi2(0));
          break;
        } else {
          output.push(wrapAnsi2(ansiCodeOrigin));
        }
      }
      if (isEscapes) {
        output = output.filter((element, index2) => output.indexOf(element) === index2);
        if (endAnsiCode !== void 0) {
          const fistEscapeCode = wrapAnsi2(ansiStyles4.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 [index2, character] of characters.entries()) {
        let leftEscape = false;
        if (ESCAPES2.includes(character)) {
          const code = /\d[^m]*/.exec(string.slice(index2, index2 + 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;
    };
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/table/6.9.0/dc30f807b53eaa7dc641d0e347812bc2b7d8aea0978f2c84ac5c2d5de139972b/node_modules/table/dist/src/getBorderCharacters.js
var require_getBorderCharacters = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/table/6.9.0/dc30f807b53eaa7dc641d0e347812bc2b7d8aea0978f2c84ac5c2d5de139972b/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;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/table/6.9.0/dc30f807b53eaa7dc641d0e347812bc2b7d8aea0978f2c84ac5c2d5de139972b/node_modules/table/dist/src/utils.js
var require_utils12 = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/table/6.9.0/dc30f807b53eaa7dc641d0e347812bc2b7d8aea0978f2c84ac5c2d5de139972b/node_modules/table/dist/src/utils.js"(exports2) {
    "use strict";
    var __importDefault2 = exports2 && exports2.__importDefault || function(mod2) {
      return mod2 && mod2.__esModule ? mod2 : { "default": mod2 };
    };
    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 _a2, _b2;
      return (_b2 = (_a2 = input.match(/\s+/g)) === null || _a2 === void 0 ? void 0 : _a2.length) !== null && _b2 !== void 0 ? _b2 : 0;
    };
    exports2.countSpaceSequence = countSpaceSequence;
    var distributeUnevenly = (sum, length) => {
      const result2 = Array.from({ length }).fill(Math.floor(sum / length));
      return result2.map((element, index2) => {
        return element + (index2 < sum % length ? 1 : 0);
      });
    };
    exports2.distributeUnevenly = distributeUnevenly;
    var sequence = (start, end) => {
      return Array.from({ length: end - start + 1 }, (_, index2) => {
        return index2 + start;
      });
    };
    exports2.sequence = sequence;
    var sumArray = (array) => {
      return array.reduce((accumulator, element) => {
        return accumulator + element;
      }, 0);
    };
    exports2.sumArray = sumArray;
    var extractTruncates = (config2) => {
      return config2.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;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/table/6.9.0/dc30f807b53eaa7dc641d0e347812bc2b7d8aea0978f2c84ac5c2d5de139972b/node_modules/table/dist/src/alignString.js
var require_alignString = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/table/6.9.0/dc30f807b53eaa7dc641d0e347812bc2b7d8aea0978f2c84ac5c2d5de139972b/node_modules/table/dist/src/alignString.js"(exports2) {
    "use strict";
    var __importDefault2 = exports2 && exports2.__importDefault || function(mod2) {
      return mod2 && mod2.__esModule ? mod2 : { "default": mod2 };
    };
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.alignString = void 0;
    var string_width_1 = __importDefault2(require_string_width());
    var utils_1 = require_utils12();
    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;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/table/6.9.0/dc30f807b53eaa7dc641d0e347812bc2b7d8aea0978f2c84ac5c2d5de139972b/node_modules/table/dist/src/alignTableData.js
var require_alignTableData = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/table/6.9.0/dc30f807b53eaa7dc641d0e347812bc2b7d8aea0978f2c84ac5c2d5de139972b/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, config2) => {
      return rows.map((row, rowIndex) => {
        return row.map((cell, cellIndex) => {
          var _a2;
          const { width, alignment } = config2.columns[cellIndex];
          const containingRange = (_a2 = config2.spanningCellManager) === null || _a2 === void 0 ? void 0 : _a2.getContainingRange({
            col: cellIndex,
            row: rowIndex
          }, { mapped: true });
          if (containingRange) {
            return cell;
          }
          return (0, alignString_1.alignString)(cell, width, alignment);
        });
      });
    };
    exports2.alignTableData = alignTableData;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/table/6.9.0/dc30f807b53eaa7dc641d0e347812bc2b7d8aea0978f2c84ac5c2d5de139972b/node_modules/table/dist/src/wrapString.js
var require_wrapString = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/table/6.9.0/dc30f807b53eaa7dc641d0e347812bc2b7d8aea0978f2c84ac5c2d5de139972b/node_modules/table/dist/src/wrapString.js"(exports2) {
    "use strict";
    var __importDefault2 = exports2 && exports2.__importDefault || function(mod2) {
      return mod2 && mod2.__esModule ? mod2 : { "default": mod2 };
    };
    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;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/table/6.9.0/dc30f807b53eaa7dc641d0e347812bc2b7d8aea0978f2c84ac5c2d5de139972b/node_modules/table/dist/src/wrapWord.js
var require_wrapWord = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/table/6.9.0/dc30f807b53eaa7dc641d0e347812bc2b7d8aea0978f2c84ac5c2d5de139972b/node_modules/table/dist/src/wrapWord.js"(exports2) {
    "use strict";
    var __importDefault2 = exports2 && exports2.__importDefault || function(mod2) {
      return mod2 && mod2.__esModule ? mod2 : { "default": mod2 };
    };
    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 wrapWord2 = (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 = wrapWord2;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/table/6.9.0/dc30f807b53eaa7dc641d0e347812bc2b7d8aea0978f2c84ac5c2d5de139972b/node_modules/table/dist/src/wrapCell.js
var require_wrapCell = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/table/6.9.0/dc30f807b53eaa7dc641d0e347812bc2b7d8aea0978f2c84ac5c2d5de139972b/node_modules/table/dist/src/wrapCell.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.wrapCell = void 0;
    var utils_1 = require_utils12();
    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;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/table/6.9.0/dc30f807b53eaa7dc641d0e347812bc2b7d8aea0978f2c84ac5c2d5de139972b/node_modules/table/dist/src/calculateCellHeight.js
var require_calculateCellHeight = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/table/6.9.0/dc30f807b53eaa7dc641d0e347812bc2b7d8aea0978f2c84ac5c2d5de139972b/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;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/table/6.9.0/dc30f807b53eaa7dc641d0e347812bc2b7d8aea0978f2c84ac5c2d5de139972b/node_modules/table/dist/src/calculateRowHeights.js
var require_calculateRowHeights = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/table/6.9.0/dc30f807b53eaa7dc641d0e347812bc2b7d8aea0978f2c84ac5c2d5de139972b/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_utils12();
    var calculateRowHeights = (rows, config2) => {
      const rowHeights = [];
      for (const [rowIndex, row] of rows.entries()) {
        let rowHeight = 1;
        row.forEach((cell, cellIndex) => {
          var _a2;
          const containingRange = (_a2 = config2.spanningCellManager) === null || _a2 === void 0 ? void 0 : _a2.getContainingRange({
            col: cellIndex,
            row: rowIndex
          });
          if (!containingRange) {
            const cellHeight = (0, calculateCellHeight_1.calculateCellHeight)(cell, config2.columns[cellIndex].width, config2.columns[cellIndex].wrapWord);
            rowHeight = Math.max(rowHeight, cellHeight);
            return;
          }
          const { topLeft, bottomRight, height: height2 } = 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 _a3;
              return !((_a3 = config2.drawHorizontalLine) === null || _a3 === void 0 ? void 0 : _a3.call(config2, horizontalBorderIndex, rows.length));
            }).length;
            const cellHeight = height2 - totalOccupiedSpanningCellHeight - totalHorizontalBorderHeight + totalHiddenHorizontalBorderHeight;
            rowHeight = Math.max(rowHeight, cellHeight);
          }
        });
        rowHeights.push(rowHeight);
      }
      return rowHeights;
    };
    exports2.calculateRowHeights = calculateRowHeights;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/table/6.9.0/dc30f807b53eaa7dc641d0e347812bc2b7d8aea0978f2c84ac5c2d5de139972b/node_modules/table/dist/src/drawContent.js
var require_drawContent = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/table/6.9.0/dc30f807b53eaa7dc641d0e347812bc2b7d8aea0978f2c84ac5c2d5de139972b/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;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/table/6.9.0/dc30f807b53eaa7dc641d0e347812bc2b7d8aea0978f2c84ac5c2d5de139972b/node_modules/table/dist/src/drawBorder.js
var require_drawBorder = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/table/6.9.0/dc30f807b53eaa7dc641d0e347812bc2b7d8aea0978f2c84ac5c2d5de139972b/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 (index2, size) => {
        const drawBorderParameters = {
          ...parameters,
          horizontalBorderIndex: index2
        };
        if (index2 === 0) {
          return (0, exports2.drawBorderTop)(columnWidths, drawBorderParameters);
        } else if (index2 === size) {
          return (0, exports2.drawBorderBottom)(columnWidths, drawBorderParameters);
        }
        return (0, exports2.drawBorderJoin)(columnWidths, drawBorderParameters);
      };
    };
    exports2.createTableBorderGetter = createTableBorderGetter;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/table/6.9.0/dc30f807b53eaa7dc641d0e347812bc2b7d8aea0978f2c84ac5c2d5de139972b/node_modules/table/dist/src/drawRow.js
var require_drawRow = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/table/6.9.0/dc30f807b53eaa7dc641d0e347812bc2b7d8aea0978f2c84ac5c2d5de139972b/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, config2) => {
      const { border, drawVerticalLine, rowIndex, spanningCellManager } = config2;
      return (0, drawContent_1.drawContent)({
        contents: row,
        drawSeparator: drawVerticalLine,
        elementType: "cell",
        rowIndex,
        separatorGetter: (index2, columnCount) => {
          if (index2 === 0) {
            return border.bodyLeft;
          }
          if (index2 === columnCount) {
            return border.bodyRight;
          }
          return border.bodyJoin;
        },
        spanningCellManager
      }) + "\n";
    };
    exports2.drawRow = drawRow;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/ajv/8.20.0/c6b8e08046f415c29cce032dd0b2d6bb3a5ea0224f64b7de77f78cf4b40ba41e/node_modules/ajv/dist/runtime/equal.js
var require_equal = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/ajv/8.20.0/c6b8e08046f415c29cce032dd0b2d6bb3a5ea0224f64b7de77f78cf4b40ba41e/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;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/table/6.9.0/dc30f807b53eaa7dc641d0e347812bc2b7d8aea0978f2c84ac5c2d5de139972b/node_modules/table/dist/src/generated/validators.js
var require_validators = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/table/6.9.0/dc30f807b53eaa7dc641d0e347812bc2b7d8aea0978f2c84ac5c2d5de139972b/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;
    }
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/table/6.9.0/dc30f807b53eaa7dc641d0e347812bc2b7d8aea0978f2c84ac5c2d5de139972b/node_modules/table/dist/src/validateConfig.js
var require_validateConfig = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/table/6.9.0/dc30f807b53eaa7dc641d0e347812bc2b7d8aea0978f2c84ac5c2d5de139972b/node_modules/table/dist/src/validateConfig.js"(exports2) {
    "use strict";
    var __importDefault2 = exports2 && exports2.__importDefault || function(mod2) {
      return mod2 && mod2.__esModule ? mod2 : { "default": mod2 };
    };
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.validateConfig = void 0;
    var validators_1 = __importDefault2(require_validators());
    var validateConfig = (schemaId, config2) => {
      const validate2 = validators_1.default[schemaId];
      if (!validate2(config2) && validate2.errors) {
        const errors2 = validate2.errors.map((error) => {
          return {
            message: error.message,
            params: error.params,
            schemaPath: error.schemaPath
          };
        });
        console.log("config", config2);
        console.log("errors", errors2);
        throw new Error("Invalid config.");
      }
    };
    exports2.validateConfig = validateConfig;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/table/6.9.0/dc30f807b53eaa7dc641d0e347812bc2b7d8aea0978f2c84ac5c2d5de139972b/node_modules/table/dist/src/makeStreamConfig.js
var require_makeStreamConfig = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/table/6.9.0/dc30f807b53eaa7dc641d0e347812bc2b7d8aea0978f2c84ac5c2d5de139972b/node_modules/table/dist/src/makeStreamConfig.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.makeStreamConfig = void 0;
    var utils_1 = require_utils12();
    var validateConfig_1 = require_validateConfig();
    var makeColumnsConfig = (columnCount, columns = {}, columnDefault) => {
      return Array.from({ length: columnCount }).map((_, index2) => {
        return {
          alignment: "left",
          paddingLeft: 1,
          paddingRight: 1,
          truncate: Number.POSITIVE_INFINITY,
          verticalAlignment: "top",
          wrapWord: false,
          ...columnDefault,
          ...columns[index2]
        };
      });
    };
    var makeStreamConfig = (config2) => {
      (0, validateConfig_1.validateConfig)("streamConfig.json", config2);
      if (config2.columnDefault.width === void 0) {
        throw new Error("Must provide config.columnDefault.width when creating a stream.");
      }
      return {
        drawVerticalLine: () => {
          return true;
        },
        ...config2,
        border: (0, utils_1.makeBorderConfig)(config2.border),
        columns: makeColumnsConfig(config2.columnCount, config2.columns, config2.columnDefault)
      };
    };
    exports2.makeStreamConfig = makeStreamConfig;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/table/6.9.0/dc30f807b53eaa7dc641d0e347812bc2b7d8aea0978f2c84ac5c2d5de139972b/node_modules/table/dist/src/mapDataUsingRowHeights.js
var require_mapDataUsingRowHeights = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/table/6.9.0/dc30f807b53eaa7dc641d0e347812bc2b7d8aea0978f2c84ac5c2d5de139972b/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_utils12();
    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, config2) => {
      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 _a2;
          const containingRange = (_a2 = config2.spanningCellManager) === null || _a2 === void 0 ? void 0 : _a2.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, config2.columns[cellIndex].width, config2.columns[cellIndex].wrapWord);
          const paddedCellLines = (0, exports2.padCellVertically)(cellLines, outputRowHeight, config2.columns[cellIndex].verticalAlignment);
          paddedCellLines.forEach((cellLine, cellLineIndex) => {
            outputRow[cellLineIndex][cellIndex] = cellLine;
          });
        });
        return outputRow;
      });
      return (0, utils_1.flatten)(mappedRows);
    };
    exports2.mapDataUsingRowHeights = mapDataUsingRowHeights;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/table/6.9.0/dc30f807b53eaa7dc641d0e347812bc2b7d8aea0978f2c84ac5c2d5de139972b/node_modules/table/dist/src/padTableData.js
var require_padTableData = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/table/6.9.0/dc30f807b53eaa7dc641d0e347812bc2b7d8aea0978f2c84ac5c2d5de139972b/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, config2) => {
      return rows.map((cells, rowIndex) => {
        return cells.map((cell, cellIndex) => {
          var _a2;
          const containingRange = (_a2 = config2.spanningCellManager) === null || _a2 === void 0 ? void 0 : _a2.getContainingRange({
            col: cellIndex,
            row: rowIndex
          }, { mapped: true });
          if (containingRange) {
            return cell;
          }
          const { paddingLeft, paddingRight } = config2.columns[cellIndex];
          return (0, exports2.padString)(cell, paddingLeft, paddingRight);
        });
      });
    };
    exports2.padTableData = padTableData;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/table/6.9.0/dc30f807b53eaa7dc641d0e347812bc2b7d8aea0978f2c84ac5c2d5de139972b/node_modules/table/dist/src/stringifyTableData.js
var require_stringifyTableData = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/table/6.9.0/dc30f807b53eaa7dc641d0e347812bc2b7d8aea0978f2c84ac5c2d5de139972b/node_modules/table/dist/src/stringifyTableData.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.stringifyTableData = void 0;
    var utils_1 = require_utils12();
    var stringifyTableData = (rows) => {
      return rows.map((cells) => {
        return cells.map((cell) => {
          return (0, utils_1.normalizeString)(String(cell));
        });
      });
    };
    exports2.stringifyTableData = stringifyTableData;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/lodash.truncate/4.4.2/5be401af008ba6ee54f536d112893474ce418e03c4ac7aa27684595e7649a180/node_modules/lodash.truncate/index.js
var require_lodash3 = __commonJS({
  "../../../../../setup-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 index2 = -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 (++index2 < length) {
        result2[index2] = array[index2 + 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 index2 = result2.lastIndexOf(separator);
        if (index2 > -1) {
          result2 = result2.slice(0, index2);
        }
      }
      return result2 + omission;
    }
    module2.exports = truncate;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/table/6.9.0/dc30f807b53eaa7dc641d0e347812bc2b7d8aea0978f2c84ac5c2d5de139972b/node_modules/table/dist/src/truncateTableData.js
var require_truncateTableData = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/table/6.9.0/dc30f807b53eaa7dc641d0e347812bc2b7d8aea0978f2c84ac5c2d5de139972b/node_modules/table/dist/src/truncateTableData.js"(exports2) {
    "use strict";
    var __importDefault2 = exports2 && exports2.__importDefault || function(mod2) {
      return mod2 && mod2.__esModule ? mod2 : { "default": mod2 };
    };
    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;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/table/6.9.0/dc30f807b53eaa7dc641d0e347812bc2b7d8aea0978f2c84ac5c2d5de139972b/node_modules/table/dist/src/createStream.js
var require_createStream = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/table/6.9.0/dc30f807b53eaa7dc641d0e347812bc2b7d8aea0978f2c84ac5c2d5de139972b/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_utils12();
    var prepareData = (data, config2) => {
      let rows = (0, stringifyTableData_1.stringifyTableData)(data);
      rows = (0, truncateTableData_1.truncateTableData)(rows, (0, utils_1.extractTruncates)(config2));
      const rowHeights = (0, calculateRowHeights_1.calculateRowHeights)(rows, config2);
      rows = (0, mapDataUsingRowHeights_1.mapDataUsingRowHeights)(rows, rowHeights, config2);
      rows = (0, alignTableData_1.alignTableData)(rows, config2);
      rows = (0, padTableData_1.padTableData)(rows, config2);
      return rows;
    };
    var create = (row, columnWidths, config2) => {
      const rows = prepareData([row], config2);
      const body = rows.map((literalRow) => {
        return (0, drawRow_1.drawRow)(literalRow, config2);
      }).join("");
      let output;
      output = "";
      output += (0, drawBorder_1.drawBorderTop)(columnWidths, config2);
      output += body;
      output += (0, drawBorder_1.drawBorderBottom)(columnWidths, config2);
      output = output.trimEnd();
      process.stdout.write(output);
    };
    var append = (row, columnWidths, config2) => {
      const rows = prepareData([row], config2);
      const body = rows.map((literalRow) => {
        return (0, drawRow_1.drawRow)(literalRow, config2);
      }).join("");
      let output = "";
      const bottom = (0, drawBorder_1.drawBorderBottom)(columnWidths, config2);
      if (bottom !== "\n") {
        output = "\r\x1B[K";
      }
      output += (0, drawBorder_1.drawBorderJoin)(columnWidths, config2);
      output += body;
      output += bottom;
      output = output.trimEnd();
      process.stdout.write(output);
    };
    var createStream = (userConfig) => {
      const config2 = (0, makeStreamConfig_1.makeStreamConfig)(userConfig);
      const columnWidths = Object.values(config2.columns).map((column) => {
        return column.width + column.paddingLeft + column.paddingRight;
      });
      let empty4 = true;
      return {
        write: (row) => {
          if (row.length !== config2.columnCount) {
            throw new Error("Row cell count does not match the config.columnCount.");
          }
          if (empty4) {
            empty4 = false;
            create(row, columnWidths, config2);
          } else {
            append(row, columnWidths, config2);
          }
        }
      };
    };
    exports2.createStream = createStream;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/table/6.9.0/dc30f807b53eaa7dc641d0e347812bc2b7d8aea0978f2c84ac5c2d5de139972b/node_modules/table/dist/src/calculateOutputColumnWidths.js
var require_calculateOutputColumnWidths = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/table/6.9.0/dc30f807b53eaa7dc641d0e347812bc2b7d8aea0978f2c84ac5c2d5de139972b/node_modules/table/dist/src/calculateOutputColumnWidths.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.calculateOutputColumnWidths = void 0;
    var calculateOutputColumnWidths = (config2) => {
      return config2.columns.map((col) => {
        return col.paddingLeft + col.width + col.paddingRight;
      });
    };
    exports2.calculateOutputColumnWidths = calculateOutputColumnWidths;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/table/6.9.0/dc30f807b53eaa7dc641d0e347812bc2b7d8aea0978f2c84ac5c2d5de139972b/node_modules/table/dist/src/drawTable.js
var require_drawTable = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/table/6.9.0/dc30f807b53eaa7dc641d0e347812bc2b7d8aea0978f2c84ac5c2d5de139972b/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_utils12();
    var drawTable = (rows, outputColumnWidths, rowHeights, config2) => {
      const { drawHorizontalLine, singleLine } = config2;
      const contents = (0, utils_1.groupBySizes)(rows, rowHeights).map((group, groupIndex) => {
        return group.map((row) => {
          return (0, drawRow_1.drawRow)(row, {
            ...config2,
            rowIndex: groupIndex
          });
        }).join("");
      });
      return (0, drawContent_1.drawContent)({
        contents,
        drawSeparator: (index2, size) => {
          if (index2 === 0 || index2 === size) {
            return drawHorizontalLine(index2, size);
          }
          return !singleLine && drawHorizontalLine(index2, size);
        },
        elementType: "row",
        rowIndex: -1,
        separatorGetter: (0, drawBorder_1.createTableBorderGetter)(outputColumnWidths, {
          ...config2,
          rowCount: contents.length
        }),
        spanningCellManager: config2.spanningCellManager
      });
    };
    exports2.drawTable = drawTable;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/table/6.9.0/dc30f807b53eaa7dc641d0e347812bc2b7d8aea0978f2c84ac5c2d5de139972b/node_modules/table/dist/src/injectHeaderConfig.js
var require_injectHeaderConfig = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/table/6.9.0/dc30f807b53eaa7dc641d0e347812bc2b7d8aea0978f2c84ac5c2d5de139972b/node_modules/table/dist/src/injectHeaderConfig.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.injectHeaderConfig = void 0;
    var injectHeaderConfig = (rows, config2) => {
      var _a2;
      let spanningCellConfig = (_a2 = config2.spanningCells) !== null && _a2 !== void 0 ? _a2 : [];
      const headerConfig = config2.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;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/table/6.9.0/dc30f807b53eaa7dc641d0e347812bc2b7d8aea0978f2c84ac5c2d5de139972b/node_modules/table/dist/src/calculateMaximumColumnWidths.js
var require_calculateMaximumColumnWidths = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/table/6.9.0/dc30f807b53eaa7dc641d0e347812bc2b7d8aea0978f2c84ac5c2d5de139972b/node_modules/table/dist/src/calculateMaximumColumnWidths.js"(exports2) {
    "use strict";
    var __importDefault2 = exports2 && exports2.__importDefault || function(mod2) {
      return mod2 && mod2.__esModule ? mod2 : { "default": mod2 };
    };
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.calculateMaximumColumnWidths = exports2.calculateMaximumCellWidth = void 0;
    var string_width_1 = __importDefault2(require_string_width());
    var utils_1 = require_utils12();
    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;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/table/6.9.0/dc30f807b53eaa7dc641d0e347812bc2b7d8aea0978f2c84ac5c2d5de139972b/node_modules/table/dist/src/alignSpanningCell.js
var require_alignSpanningCell = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/table/6.9.0/dc30f807b53eaa7dc641d0e347812bc2b7d8aea0978f2c84ac5c2d5de139972b/node_modules/table/dist/src/alignSpanningCell.js"(exports2) {
    "use strict";
    var __importDefault2 = exports2 && exports2.__importDefault || function(mod2) {
      return mod2 && mod2.__esModule ? mod2 : { "default": mod2 };
    };
    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_utils12();
    var wrapCell_1 = require_wrapCell();
    var wrapRangeContent = (rangeConfig, rangeWidth, context) => {
      const { topLeft, paddingRight, paddingLeft, truncate, wrapWord: wrapWord2, 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, wrapWord2).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;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/table/6.9.0/dc30f807b53eaa7dc641d0e347812bc2b7d8aea0978f2c84ac5c2d5de139972b/node_modules/table/dist/src/calculateSpanningCellWidth.js
var require_calculateSpanningCellWidth = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/table/6.9.0/dc30f807b53eaa7dc641d0e347812bc2b7d8aea0978f2c84ac5c2d5de139972b/node_modules/table/dist/src/calculateSpanningCellWidth.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.calculateSpanningCellWidth = void 0;
    var utils_1 = require_utils12();
    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;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/table/6.9.0/dc30f807b53eaa7dc641d0e347812bc2b7d8aea0978f2c84ac5c2d5de139972b/node_modules/table/dist/src/makeRangeConfig.js
var require_makeRangeConfig = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/table/6.9.0/dc30f807b53eaa7dc641d0e347812bc2b7d8aea0978f2c84ac5c2d5de139972b/node_modules/table/dist/src/makeRangeConfig.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.makeRangeConfig = void 0;
    var utils_1 = require_utils12();
    var makeRangeConfig = (spanningCellConfig, columnsConfig) => {
      var _a2;
      const { topLeft, bottomRight } = (0, utils_1.calculateRangeCoordinate)(spanningCellConfig);
      const cellConfig = {
        ...columnsConfig[topLeft.col],
        ...spanningCellConfig,
        paddingRight: (_a2 = spanningCellConfig.paddingRight) !== null && _a2 !== void 0 ? _a2 : columnsConfig[bottomRight.col].paddingRight
      };
      return {
        ...cellConfig,
        bottomRight,
        topLeft
      };
    };
    exports2.makeRangeConfig = makeRangeConfig;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/table/6.9.0/dc30f807b53eaa7dc641d0e347812bc2b7d8aea0978f2c84ac5c2d5de139972b/node_modules/table/dist/src/spanningCellManager.js
var require_spanningCellManager = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/table/6.9.0/dc30f807b53eaa7dc641d0e347812bc2b7d8aea0978f2c84ac5c2d5de139972b/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_utils12();
    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((index2) => {
          return !(drawHorizontalLine === null || drawHorizontalLine === void 0 ? void 0 : drawHorizontalLine(index2, 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((config2) => {
        return (0, makeRangeConfig_1.makeRangeConfig)(config2, columnsConfig);
      });
      const rangeCache = {};
      let rowHeights = [];
      let rowIndexMapping = [];
      return {
        getContainingRange: (cell, options) => {
          var _a2;
          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);
          (_a2 = rangeCache[hash2]) !== null && _a2 !== void 0 ? _a2 : 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((height2, index2) => {
            return Array.from({ length: height2 }, () => {
              return index2;
            });
          }));
        }
      };
    };
    exports2.createSpanningCellManager = createSpanningCellManager;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/table/6.9.0/dc30f807b53eaa7dc641d0e347812bc2b7d8aea0978f2c84ac5c2d5de139972b/node_modules/table/dist/src/validateSpanningCellConfig.js
var require_validateSpanningCellConfig = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/table/6.9.0/dc30f807b53eaa7dc641d0e347812bc2b7d8aea0978f2c84ac5c2d5de139972b/node_modules/table/dist/src/validateSpanningCellConfig.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.validateSpanningCellConfig = void 0;
    var utils_1 = require_utils12();
    var inRange2 = (start, end, value) => {
      return start <= value && value <= end;
    };
    var validateSpanningCellConfig = (rows, configs) => {
      const [nRow, nCol] = [rows.length, rows[0].length];
      configs.forEach((config2, configIndex) => {
        const { colSpan, rowSpan } = config2;
        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 (!inRange2(0, nCol - 1, topLeft.col) || !inRange2(0, nRow - 1, topLeft.row) || !inRange2(0, nCol - 1, bottomRight.col) || !inRange2(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;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/table/6.9.0/dc30f807b53eaa7dc641d0e347812bc2b7d8aea0978f2c84ac5c2d5de139972b/node_modules/table/dist/src/makeTableConfig.js
var require_makeTableConfig = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/table/6.9.0/dc30f807b53eaa7dc641d0e347812bc2b7d8aea0978f2c84ac5c2d5de139972b/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_utils12();
    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, config2 = {}, injectedSpanningCellConfig) => {
      var _a2, _b2, _c, _d, _e;
      (0, validateConfig_1.validateConfig)("config.json", config2);
      (0, validateSpanningCellConfig_1.validateSpanningCellConfig)(rows, (_a2 = config2.spanningCells) !== null && _a2 !== void 0 ? _a2 : []);
      const spanningCellConfigs = (_b2 = injectedSpanningCellConfig !== null && injectedSpanningCellConfig !== void 0 ? injectedSpanningCellConfig : config2.spanningCells) !== null && _b2 !== void 0 ? _b2 : [];
      const columnsConfig = makeColumnsConfig(rows, config2.columns, config2.columnDefault, spanningCellConfigs);
      const drawVerticalLine = (_c = config2.drawVerticalLine) !== null && _c !== void 0 ? _c : (() => {
        return true;
      });
      const drawHorizontalLine = (_d = config2.drawHorizontalLine) !== null && _d !== void 0 ? _d : (() => {
        return true;
      });
      return {
        ...config2,
        border: (0, utils_1.makeBorderConfig)(config2.border),
        columns: columnsConfig,
        drawHorizontalLine,
        drawVerticalLine,
        singleLine: (_e = config2.singleLine) !== null && _e !== void 0 ? _e : false,
        spanningCellManager: (0, spanningCellManager_1.createSpanningCellManager)({
          columnsConfig,
          drawHorizontalLine,
          drawVerticalLine,
          rows,
          spanningCellConfigs
        })
      };
    };
    exports2.makeTableConfig = makeTableConfig;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/table/6.9.0/dc30f807b53eaa7dc641d0e347812bc2b7d8aea0978f2c84ac5c2d5de139972b/node_modules/table/dist/src/validateTableData.js
var require_validateTableData = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/table/6.9.0/dc30f807b53eaa7dc641d0e347812bc2b7d8aea0978f2c84ac5c2d5de139972b/node_modules/table/dist/src/validateTableData.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.validateTableData = void 0;
    var utils_1 = require_utils12();
    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;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/table/6.9.0/dc30f807b53eaa7dc641d0e347812bc2b7d8aea0978f2c84ac5c2d5de139972b/node_modules/table/dist/src/table.js
var require_table = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/table/6.9.0/dc30f807b53eaa7dc641d0e347812bc2b7d8aea0978f2c84ac5c2d5de139972b/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_utils12();
    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 config2 = (0, makeTableConfig_1.makeTableConfig)(injectedRows, userConfig, injectedSpanningCellConfig);
      rows = (0, truncateTableData_1.truncateTableData)(injectedRows, (0, utils_1.extractTruncates)(config2));
      const rowHeights = (0, calculateRowHeights_1.calculateRowHeights)(rows, config2);
      config2.spanningCellManager.setRowHeights(rowHeights);
      config2.spanningCellManager.setRowIndexMapping(rowHeights);
      rows = (0, mapDataUsingRowHeights_1.mapDataUsingRowHeights)(rows, rowHeights, config2);
      rows = (0, alignTableData_1.alignTableData)(rows, config2);
      rows = (0, padTableData_1.padTableData)(rows, config2);
      const outputColumnWidths = (0, calculateOutputColumnWidths_1.calculateOutputColumnWidths)(config2);
      return (0, drawTable_1.drawTable)(rows, outputColumnWidths, rowHeights, config2);
    };
    exports2.table = table9;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/table/6.9.0/dc30f807b53eaa7dc641d0e347812bc2b7d8aea0978f2c84ac5c2d5de139972b/node_modules/table/dist/src/types/api.js
var require_api2 = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/table/6.9.0/dc30f807b53eaa7dc641d0e347812bc2b7d8aea0978f2c84ac5c2d5de139972b/node_modules/table/dist/src/types/api.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, "__esModule", { value: true });
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/table/6.9.0/dc30f807b53eaa7dc641d0e347812bc2b7d8aea0978f2c84ac5c2d5de139972b/node_modules/table/dist/src/index.js
var require_src = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/table/6.9.0/dc30f807b53eaa7dc641d0e347812bc2b7d8aea0978f2c84ac5c2d5de139972b/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);
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/render-help/2.0.0/c346e721eface4da62b9ef9d4f09324db51114fd88793e9c23379b73b95a1f05/node_modules/render-help/lib/index.js
function renderHelp(config2) {
  const width = config2.width ?? process.stdout.columns ?? 80;
  let outputSections = [];
  if (config2.usages.length > 0) {
    const [firstUsage, ...restUsages] = config2.usages;
    let usageOutput = `Usage: ${firstUsage}`;
    for (let usage of restUsages) {
      usageOutput += `
       ${usage}`;
    }
    outputSections.push(usageOutput);
  }
  if (config2.aliases && config2.aliases.length) {
    outputSections.push(`${config2.aliases.length === 1 ? "Alias" : "Aliases"}: ${config2.aliases.join(", ")}`);
  }
  if (config2.description)
    outputSections.push(`${config2.description}`);
  if (config2.descriptionLists) {
    for (let { title, list: list2 } of config2.descriptionLists) {
      outputSections.push(`${title}:
` + renderDescriptionList(list2, width));
    }
  }
  if (config2.url) {
    outputSections.push(`Visit ${config2.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_lib66 = __esm({
  "../../../../../setup-pnpm/store/v11/links/@/render-help/2.0.0/c346e721eface4da62b9ef9d4f09324db51114fd88793e9c23379b73b95a1f05/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
    };
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/write-ini-file/5.0.0/cd3d23cbd6e3487b6de152907b74cb8d49ba3ef375729197f630a7c98ff0d5a0/node_modules/write-ini-file/index.js
import path62 from "node:path";
import fs38 from "node:fs";
async function writeIniFile(fp, data, opts3) {
  await fs38.promises.mkdir(path62.dirname(fp), { recursive: true });
  return main3(import_write_file_atomic4.default, fp, data, opts3);
}
var import_write_file_atomic4, import_ini2, main3;
var init_write_ini_file = __esm({
  "../../../../../setup-pnpm/store/v11/links/@/write-ini-file/5.0.0/cd3d23cbd6e3487b6de152907b74cb8d49ba3ef375729197f630a7c98ff0d5a0/node_modules/write-ini-file/index.js"() {
    import_write_file_atomic4 = __toESM(require_lib10(), 1);
    import_ini2 = __toESM(require_ini(), 1);
    main3 = (fn, fp, data, opts3) => {
      if (!fp) {
        throw new TypeError("Expected a filepath");
      }
      if (data === void 0) {
        throw new TypeError("Expected data to stringify");
      }
      opts3 = opts3 || {};
      const encodedData = import_ini2.default.encode(data, opts3);
      return fn(fp, encodedData, { mode: opts3.mode });
    };
  }
});

// ../auth/commands/lib/shared.js
import util18 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 (err2) {
    if (util18.types.isNativeError(err2) && "code" in err2 && err2.code === "ENOENT")
      return {};
    throw err2;
  }
}
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 path63 from "node:path";
import readline3 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 the login token with a package scope and record the scope-to-registry mapping.",
            name: "--scope <scope>"
          }
        ]
      }
    ],
    url: docsUrl("login"),
    usages: ["pnpm login [--registry <url>] [--scope <scope>]"]
  });
}
async function handler(opts3) {
  return login({ opts: opts3 });
}
async function login({ context = DEFAULT_CONTEXT, opts: opts3 }) {
  const { process: process25, readIniFile: readIniFile2, writeIniFile: writeIniFile2 } = context;
  const registry = (0, import_normalize_registry_url4.default)(opts3.registry ?? "https://registry.npmjs.org/");
  if (!process25.stdin.isTTY || !process25.stdout.isTTY) {
    throw new LoginNonInteractiveError();
  }
  const fetchOptions = {
    method: "GET",
    retry: {
      factor: opts3.fetchRetryFactor,
      maxTimeout: opts3.fetchRetryMaxtimeout,
      minTimeout: opts3.fetchRetryMintimeout,
      retries: opts3.fetchRetries
    },
    timeout: opts3.fetchTimeout
  };
  let token;
  try {
    token = await webLogin({ context, fetchOptions, registry });
  } catch (err2) {
    if (err2 instanceof WebLoginError && (err2.httpStatus === 404 || err2.httpStatus === 405)) {
      token = await classicLogin({ context, fetchOptions, registry });
    } else {
      throw err2;
    }
  }
  const configPath = path63.join(opts3.configDir, "auth.ini");
  const settings = await safeReadIniFile(readIniFile2, configPath);
  const registryConfigKey = getRegistryConfigKey(registry);
  const scopeKey = normalizeScope(opts3.scope);
  const authConfigKey = scopeKey == null ? registryConfigKey : `${registryConfigKey}:${scopeKey}`;
  settings[`${authConfigKey}:_authToken`] = token;
  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: fetch3, globalInfo: globalInfo3, globalWarn: globalWarn3 } = context;
  const loginUrl = new URL("-/v1/login", registry).href;
  const response = await fetch3(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();
  }
  globalInfo3(formatAuthUrlMessage(body.loginUrl, globalWarn3));
  const pollPromise = pollForWebAuthToken({ context, doneUrl: body.doneUrl, fetchOptions });
  return promptBrowserOpen({
    authUrl: body.loginUrl,
    context,
    pollPromise
  });
}
async function classicLogin({ context, fetchOptions, registry }) {
  const { enquirer, fetch: fetch3, globalInfo: globalInfo3, globalWarn: globalWarn3 } = context;
  let username;
  let password;
  let email;
  try {
    username = await enquirer.input({ message: "Username:" });
    password = await enquirer.password({ message: "Password:" });
    email = await enquirer.input({ message: "Email (this IS public):" });
  } catch (err2) {
    if (err2 instanceof Error && err2.name === "ExitPromptError") {
      throw new PnpmError("LOGIN_CANCELED", "Login canceled");
    }
    throw err2;
  }
  if (!username || !password || !email) {
    throw new LoginMissingCredentialsError();
  }
  const token = await withOtpHandling({
    context,
    fetchOptions,
    operation: async (otp) => {
      try {
        const result2 = await addUser({
          username,
          password,
          email,
          otp,
          registryUrl: registry,
          fetch: fetch3
        });
        return result2.token;
      } catch (err2) {
        if (err2 instanceof AddUserHttpError) {
          if (err2.status === 401 && err2.responseHeaders.get("www-authenticate")?.includes("otp")) {
            throw SyntheticOtpError.fromUnknownBody(globalWarn3, err2.responseJson);
          }
          throw new ClassicLoginError(err2.status, err2.responseText);
        }
        if (err2 instanceof AddUserNoTokenError) {
          throw new LoginNoTokenError();
        }
        throw err2;
      }
    }
  });
  globalInfo3(`Logged in as ${username}`);
  return token;
}
var import_normalize_registry_url4, commandNames, DEFAULT_CONTEXT, LoginNonInteractiveError, LoginInvalidResponseError, LoginMissingCredentialsError, LoginNoTokenError, ClassicLoginError, WebLoginError;
var init_login = __esm({
  "../auth/commands/lib/login.js"() {
    "use strict";
    init_dist14();
    init_lib41();
    init_lib64();
    init_lib2();
    init_lib3();
    init_lib23();
    init_lib22();
    init_lib65();
    import_normalize_registry_url4 = __toESM(require_normalize_registry_url(), 1);
    init_read_ini_file();
    init_lib66();
    init_write_ini_file();
    init_shared2();
    commandNames = ["login", "adduser"];
    DEFAULT_CONTEXT = {
      Date,
      setTimeout,
      createReadlineInterface: readline3.createInterface.bind(null, { input: process.stdin }),
      enquirer: { input: dist_default6, password: dist_default7 },
      fetch: fetch2,
      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 path64 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(opts3) {
  return logout({ opts: opts3 });
}
async function logout({ context = DEFAULT_CONTEXT2, opts: opts3 }) {
  const { globalWarn: globalWarn3, readIniFile: readIniFile2 } = context;
  const registry = (0, import_normalize_registry_url5.default)(opts3.registry ?? "https://registry.npmjs.org/");
  const registryConfigKey = getRegistryConfigKey(registry);
  const tokenKey = `${registryConfigKey}:_authToken`;
  const token = opts3.authConfig?.[tokenKey];
  if (!token) {
    throw new LogoutNotLoggedInError(registry);
  }
  const revokedOnRegistry = await tryRevokeToken({ context, opts: opts3, registry, token });
  const configPath = path64.join(opts3.configDir, "auth.ini");
  const authIniSettings = await safeReadIniFile(readIniFile2, configPath);
  if (tokenKey in authIniSettings) {
    await removeTokenFromAuthIni({ context, configPath, authIniSettings, tokenKey });
  } else if (revokedOnRegistry) {
    globalWarn3(`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: fetch3, globalInfo: globalInfo3 }, opts: opts3, registry, token }) {
  const revokeUrl = new URL(`-/user/token/${encodeURIComponent(token)}`, registry).href;
  try {
    const response = await fetch3(revokeUrl, {
      method: "DELETE",
      headers: {
        authorization: `Bearer ${token}`
      },
      retry: {
        factor: opts3.fetchRetryFactor,
        maxTimeout: opts3.fetchRetryMaxtimeout,
        minTimeout: opts3.fetchRetryMintimeout,
        retries: opts3.fetchRetries
      },
      timeout: opts3.fetchTimeout
    });
    if (!response.ok) {
      globalInfo3(`Registry returned HTTP ${response.status} when revoking token`);
      return false;
    }
    return true;
  } catch {
    globalInfo3("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_url5, commandNames2, DEFAULT_CONTEXT2, LogoutNotLoggedInError, LogoutFailedError;
var init_logout = __esm({
  "../auth/commands/lib/logout.js"() {
    "use strict";
    init_lib41();
    init_lib64();
    init_lib2();
    init_lib3();
    init_lib23();
    import_normalize_registry_url5 = __toESM(require_normalize_registry_url(), 1);
    init_read_ini_file();
    init_lib66();
    init_write_ini_file();
    init_shared2();
    commandNames2 = ["logout"];
    DEFAULT_CONTEXT2 = {
      fetch: fetch2,
      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_lib67 = __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 open3 = 1;
  for (let i4 = depPath.length - 2; i4 >= 0; i4--) {
    if (depPath[i4] === "(") {
      open3--;
    } else if (depPath[i4] === ")") {
      open3++;
    } else if (!open3) {
      if (depPath.substring(i4 + 1).startsWith("(patch_hash=")) {
        return {
          patchHashIndex: i4 + 1,
          peersIndex: depPath.indexOf("(", i4 + 2)
        };
      }
      return {
        patchHashIndex: -1,
        peersIndex: i4 + 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 removePeersSuffix(relDepPath) {
  const { peersIndex } = indexOfDepPathSuffix(relDepPath);
  if (peersIndex !== -1) {
    return relDepPath.substring(0, peersIndex);
  }
  return relDepPath;
}
function getPkgIdWithPatchHash(depPath) {
  return removePeersSuffix(depPath);
}
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 parse9(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 index2 = depPath.indexOf("@", 1);
    if (index2 === -1)
      return depPath;
    return `${depPath.substring(0, index2)}@${depPath.slice(index2 + 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_lib68 = __esm({
  "../deps/path/lib/index.js"() {
    "use strict";
    init_lib34();
    import_semver19 = __toESM(require_semver2(), 1);
    RUNTIME_DEP_PATH_RE = /^(?:node|bun|deno)@runtime:/;
  }
});

// ../building/policy/lib/index.js
function isBuildExplicitlyDisallowed(depPath, allowBuild) {
  return allowBuild?.(depPath) === false;
}
function createAllowBuildFunction(opts3) {
  if (opts3.dangerouslyAllowAllBuilds)
    return () => true;
  if (opts3.allowBuilds != null) {
    const allowedPackageBuilds = /* @__PURE__ */ new Set();
    const disallowedPackageBuilds = /* @__PURE__ */ new Set();
    const allowedDepPathBuilds = /* @__PURE__ */ new Set();
    const disallowedDepPathBuilds = /* @__PURE__ */ new Set();
    const allowedGitRepoBuilds = /* @__PURE__ */ new Set();
    const disallowedGitRepoBuilds = /* @__PURE__ */ new Set();
    for (const [pkg, value] of Object.entries(opts3.allowBuilds)) {
      switch (value) {
        case true:
          addAllowBuildRule(pkg, {
            depPaths: allowedDepPathBuilds,
            gitRepos: allowedGitRepoBuilds,
            packageSpecs: allowedPackageBuilds
          });
          break;
        case false:
          addAllowBuildRule(pkg, {
            depPaths: disallowedDepPathBuilds,
            gitRepos: disallowedGitRepoBuilds,
            packageSpecs: disallowedPackageBuilds
          });
          break;
      }
    }
    const expandedAllowed = expandPackageVersionSpecs(Array.from(allowedPackageBuilds));
    const expandedDisallowed = expandPackageVersionSpecs(Array.from(disallowedPackageBuilds));
    return (depPath, context) => {
      const pkgIdWithPatchHash = getPkgIdWithPatchHash(depPath);
      if (disallowedDepPathBuilds.has(pkgIdWithPatchHash)) {
        return false;
      }
      const gitRepoKey = getGitRepoAllowBuildKeyFromDepPath(pkgIdWithPatchHash);
      if (gitRepoKey != null && disallowedGitRepoBuilds.has(gitRepoKey)) {
        return false;
      }
      const { name, version: version2, nonSemverVersion } = parse9(depPath);
      const nameAtVersion2 = name != null && version2 != null ? `${name}@${version2}` : void 0;
      if (name != null && expandedDisallowed.has(name) || nameAtVersion2 != null && expandedDisallowed.has(nameAtVersion2)) {
        return false;
      }
      if (allowedDepPathBuilds.has(pkgIdWithPatchHash)) {
        return true;
      }
      if (gitRepoKey != null && allowedGitRepoBuilds.has(gitRepoKey)) {
        return true;
      }
      const trustPackageIdentity = context?.trustPackageIdentity ?? (name != null && version2 != null && nonSemverVersion == null);
      if (!trustPackageIdentity)
        return void 0;
      if (name != null && expandedAllowed.has(name) || nameAtVersion2 != null && expandedAllowed.has(nameAtVersion2)) {
        return true;
      }
      return void 0;
    };
  }
  return void 0;
}
function allowBuildKeyFromIgnoredBuild(depPath) {
  const pkgIdWithPatchHash = getPkgIdWithPatchHash(depPath);
  const parsed = parse9(pkgIdWithPatchHash);
  if (parsed.nonSemverVersion != null || parsed.name == null)
    return pkgIdWithPatchHash;
  return parsed.name;
}
function addAllowBuildRule(pkg, target2) {
  if (isGitRepoAllowBuildKey(pkg)) {
    target2.gitRepos.add(pkg);
    return;
  }
  if (isDepPathAllowBuildKey(pkg)) {
    target2.depPaths.add(removePeersSuffix(pkg));
  } else {
    target2.packageSpecs.add(pkg);
  }
}
function isGitRepoAllowBuildKey(pkg) {
  return !pkg.includes("#") && isGitRepoDepPath(pkg);
}
function getGitRepoAllowBuildKeyFromDepPath(depPath) {
  if (!isGitRepoDepPath(depPath))
    return void 0;
  const refStart = depPath.indexOf("#");
  return refStart === -1 ? depPath : depPath.slice(0, refStart);
}
function isGitRepoDepPath(depPath) {
  return depPath.startsWith("git+") || depPath.includes("@git+");
}
function isDepPathAllowBuildKey(pkg) {
  if (removePeersSuffix(pkg) !== pkg)
    return true;
  if (pkg.includes("||"))
    return false;
  const parsed = parse9(pkg);
  if (parsed.nonSemverVersion != null)
    return isSourceLikeDepPathVersion(parsed.nonSemverVersion);
  if (parsed.name != null || pkg.startsWith("@"))
    return false;
  return pkg.includes("/") || pkg.includes(":");
}
function isSourceLikeDepPathVersion(version2) {
  return version2.includes(":") || version2.includes("/") || version2.includes("#");
}
var init_lib69 = __esm({
  "../building/policy/lib/index.js"() {
    "use strict";
    init_lib37();
    init_lib68();
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/object-hash/3.0.0/3cf2efaf98680b1d4a359a0a8b21b5ac630665e570398969c96958d6ec5c5aae/node_modules/object-hash/index.js
var require_object_hash = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/object-hash/3.0.0/3cf2efaf98680b1d4a359a0a8b21b5ac630665e570398969c96958d6ec5c5aae/node_modules/object-hash/index.js"(exports2, module2) {
    "use strict";
    var crypto14 = __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 = crypto14.getHashes ? crypto14.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 i4 = 0; i4 < hashes.length; ++i4) {
        if (hashes[i4].toLowerCase() === options.algorithm.toLowerCase()) {
          options.algorithm = hashes[i4];
        }
      }
      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 = crypto14.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(err2) {
          return write("error:" + err2.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_lib70 = __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, opts3) => hashUnknown(object, {
      ...withoutSortingOptions,
      ...opts3
    });
    hashObject = (object) => hashUnknown(object, withSortingOptions);
  }
});

// ../lockfile/utils/lib/nameVerFromPkgSnapshot.js
function nameVerFromPkgSnapshot(depPath, pkgSnapshot) {
  const pkgInfo = parse9(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_lib68();
  }
});

// ../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_lib68();
  }
});

// ../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";
  }
});

// ../resolving/tarball-url/lib/index.js
function getNpmTarballUrl(pkgName, pkgVersion, opts3) {
  const registry = normalizeRegistry(opts3?.registry);
  const scopelessName = getScopelessName(pkgName);
  return `${registry}${pkgName}/-/${scopelessName}-${removeBuildMetadataFromVersion(pkgVersion)}.tgz`;
}
function isCanonicalRegistryTarballUrl(tarball, pkg, registry) {
  const expectedTarball = getNpmTarballUrl(pkg.name, pkg.version, { registry });
  const actualTarball = tarball.replace(/%2f/gi, "/");
  return removeProtocol(expectedTarball) === removeProtocol(actualTarball);
}
function normalizeRegistry(registry) {
  if (!registry)
    return "https://registry.npmjs.org/";
  return registry.endsWith("/") ? registry : `${registry}/`;
}
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];
}
function removeProtocol(url7) {
  return url7.replace(/^https?:\/\//i, "");
}
var init_lib71 = __esm({
  "../resolving/tarball-url/lib/index.js"() {
    "use strict";
  }
});

// ../lockfile/utils/lib/pkgSnapshotToResolution.js
import url4 from "node:url";
function pkgSnapshotToResolution(depPath, pkgSnapshot, registries) {
  const resolution = pkgSnapshot.resolution;
  if (resolution.tarball != null && typeof resolution.tarball !== "string") {
    throw new PnpmError("INVALID_TARBALL_RESOLUTION", `Cannot install package "${depPath}": its lockfile entry has a non-string "tarball" field.`);
  }
  if (Boolean(resolution.type) || resolution.tarball?.startsWith("file:") || resolution.gitHosted === true) {
    return pkgSnapshot.resolution;
  }
  const nonSemverVersion = parse9(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 (!resolution.tarball) {
    tarball = getTarball(registry);
  } else {
    tarball = new url4.URL(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 getNpmTarballUrl(name, version2, { registry: registry2 });
  }
}
var init_pkgSnapshotToResolution = __esm({
  "../lockfile/utils/lib/pkgSnapshotToResolution.js"() {
    "use strict";
    init_lib68();
    init_lib2();
    init_lib71();
    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 && !gitHosted && !tarball.startsWith("file:") && isCanonicalRegistryTarballUrl(tarball, pkg, registry)) {
    return { integrity: resolution["integrity"] };
  }
  const { path: path240 } = resolution;
  return {
    integrity: resolution["integrity"],
    tarball,
    ...gitHosted ? { gitHosted: true } : {},
    ...path240 == null ? {} : { path: path240 }
  };
}
var init_toLockfileResolution = __esm({
  "../lockfile/utils/lib/toLockfileResolution.js"() {
    "use strict";
    init_lib29();
    init_lib71();
  }
});

// ../lockfile/types/lib/lockfileFileTypes.js
var init_lockfileFileTypes = __esm({
  "../lockfile/types/lib/lockfileFileTypes.js"() {
    "use strict";
  }
});

// ../lockfile/types/lib/index.js
var init_lib72 = __esm({
  "../lockfile/types/lib/index.js"() {
    "use strict";
    init_lockfileFileTypes();
  }
});

// ../lockfile/utils/lib/index.js
var init_lib73 = __esm({
  "../lockfile/utils/lib/index.js"() {
    "use strict";
    init_lib68();
    init_nameVerFromPkgSnapshot();
    init_packageIdFromSnapshot();
    init_packageIsIndependent();
    init_pkgSnapshotToResolution();
    init_refIsLocalTarball();
    init_toLockfileResolution();
    init_lib72();
    init_lib29();
  }
});

// ../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, opts3) {
  const ownPin = readSnapshotRuntimePin(depsGraph[depPath]?.children);
  let result2 = engineName(ownPin ?? opts3.nodeVersion);
  if (opts3.includeDepGraphHash) {
    const depGraphHash = calcDepGraphHash(depsGraph, cache, /* @__PURE__ */ new Set(), depPath, opts3.supportedArchitectures);
    result2 += `;deps=${depGraphHash}`;
  }
  if (opts3.patchFileHash) {
    result2 += `;patch=${opts3.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, opts3 = {}) {
  let builtDepPaths;
  let entries;
  if (opts3.allowBuild != null) {
    const pkgMetaList = Array.from(pkgMetaIterator);
    builtDepPaths = computeBuiltDepPaths(pkgMetaList, opts3.allowBuild);
    entries = pkgMetaList;
  } else {
    entries = pkgMetaIterator;
  }
  const ctx = {
    graph,
    cache: {},
    builtDepPaths,
    buildRequiredCache: builtDepPaths !== void 0 ? {} : void 0,
    supportedArchitectures: opts3.supportedArchitectures,
    nodeVersion: opts3.nodeVersion,
    lockfileDir: opts3.lockfileDir
  };
  for (const pkgMeta of entries) {
    yield {
      hash: calcGraphNodeHash(ctx, pkgMeta),
      pkgMeta
    };
  }
}
function calcGraphNodeHash({ graph, cache, builtDepPaths, buildRequiredCache, supportedArchitectures, nodeVersion, lockfileDir }, 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 isLocalDirectory = isLocalDirectoryResolution(graph[depPath]?.resolution);
  const project = isLocalDirectory ? lockfileDir : void 0;
  const hexDigest = project == null ? hashObjectWithoutSorting({ engine, deps }, { encoding: "hex" }) : hashObjectWithoutSorting({ engine, deps, project }, { encoding: "hex" });
  return formatGlobalVirtualStorePath(name, isLocalDirectory ? LOCAL_DIRECTORY_SEGMENT : version2, hexDigest);
}
function isLocalDirectoryResolution(resolution) {
  return resolution != null && "type" in resolution && resolution.type === "directory";
}
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) {
  assertNoPathTraversal(version2);
  const prefix = name.startsWith("@") ? "" : "@/";
  return `${prefix}${name}/${version2}/${hexDigest}`;
}
function assertNoPathTraversal(version2) {
  if (version2.split(/[/\\]/).includes("..")) {
    const error = new Error(`Refusing to build a virtual-store path with the traversal version segment ${JSON.stringify(version2)}`);
    error.code = "ERR_PNPM_INVALID_DEPENDENCY_NAME";
    throw error;
  }
}
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,
        resolution: pkgSnapshot.resolution,
        fullPkgId: createFullPkgId(getPkgIdWithPatchHash(depPath), pkgSnapshot.resolution, supportedArchitectures)
      };
    }
  }
  return graph;
}
function computeBuiltDepPaths(entries, allowBuild) {
  const builtDepPaths = /* @__PURE__ */ new Set();
  for (const entry of entries) {
    if (allowBuild(entry.depPath) === true) {
      builtDepPaths.add(entry.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, LOCAL_DIRECTORY_SEGMENT;
var init_lib74 = __esm({
  "../deps/graph-hasher/lib/index.js"() {
    "use strict";
    init_lib70();
    init_lib68();
    init_lib26();
    init_lib73();
    init_lib29();
    import_detect_libc2 = __toESM(require_detect_libc(), 1);
    LOCAL_DIRECTORY_SEGMENT = "directory";
  }
});

// ../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_lib75 = __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_url6.default, registries);
  return {
    ...DEFAULT_REGISTRIES,
    ...normalizeRegistries2
  };
}
var import_normalize_registry_url6, DEFAULT_REGISTRIES;
var init_lib76 = __esm({
  "../config/normalize-registries/lib/index.js"() {
    "use strict";
    import_normalize_registry_url6 = __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 path65 from "node:path";
async function readModulesManifest(modulesDir) {
  const modulesYamlPath = path65.join(modulesDir, MODULES_FILENAME);
  let modulesRaw;
  try {
    modulesRaw = await readYamlFile(modulesYamlPath);
    if (!modulesRaw)
      return modulesRaw;
  } catch (err2) {
    if (err2.code !== "ENOENT") {
      throw err2;
    }
    return null;
  }
  const modules = {
    ...modulesRaw,
    ignoredBuilds: modulesRaw.ignoredBuilds ? new Set(modulesRaw.ignoredBuilds) : void 0
  };
  if (!modules.virtualStoreDir) {
    modules.virtualStoreDir = path65.join(modulesDir, ".pnpm");
  } else if (!path65.isAbsolute(modules.virtualStoreDir)) {
    modules.virtualStoreDir = path65.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 = path65.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 = path65.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_lib77 = __esm({
  "../installing/modules-yaml/lib/index.js"() {
    "use strict";
    init_lib14();
    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(opts3, obj) {
  const compare3 = compareWithPriority.bind(null, opts3.priority);
  return sortKeys(obj, {
    compare: compare3,
    deep: opts3.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_lib78 = __esm({
  "../object/key-sorting/lib/index.js"() {
    "use strict";
    import_util7 = __toESM(require_dist4(), 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_lib78();
    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, index2) => [key, index2]));
  }
});

// ../lockfile/fs/lib/lockfileFormatConverters.js
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 = parse9(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 && isGitHostedTarballUrl(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_lib68();
    init_lib73();
    init_lib9();
    init_es();
    LOCAL_TARBALL_RE = /\.(?:tgz|tar\.gz|tar)$/i;
  }
});

// ../lockfile/fs/lib/lockfileName.js
async function getWantedLockfileName(opts3 = {}) {
  if (opts3.useGitBranchLockfile && !opts3.mergeGitBranchLockfiles) {
    const currentBranchName = await getCurrentBranch({ cwd: opts3.cwd });
    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_lib61();
  }
});

// ../lockfile/fs/lib/logger.js
var lockfileLogger;
var init_logger3 = __esm({
  "../lockfile/fs/lib/logger.js"() {
    "use strict";
    init_lib3();
    lockfileLogger = logger("lockfile");
  }
});

// ../lockfile/fs/lib/yamlDocuments.js
import { constants as constants4 } from "node:fs";
import { lstat, open as open2, readFile as readFile2 } from "node:fs/promises";
import { StringDecoder as StringDecoder3 } from "node:string_decoder";
import util19 from "node:util";
async function streamReadFirstYamlDocument(filePath, readBufferSize = READ_BUFFER_SIZE) {
  let fileHandle;
  let buffer3 = "";
  let firstChunk = true;
  try {
    fileHandle = await open2(filePath, constants4.O_RDONLY);
    const decoder2 = new StringDecoder3("utf8");
    const readBuffer = Buffer.allocUnsafe(normalizeReadBufferSize(readBufferSize));
    let position3 = 0;
    while (true) {
      const { bytesRead } = await fileHandle.read(readBuffer, 0, readBuffer.length, position3);
      if (bytesRead === 0)
        break;
      position3 += bytesRead;
      let chunk = decoder2.write(readBuffer.subarray(0, bytesRead));
      if (firstChunk && chunk.length > 0) {
        chunk = stripBom(chunk);
        firstChunk = false;
      }
      buffer3 += chunk;
      buffer3 = buffer3.replace(/\r\n/g, "\n");
      if (canRejectDocumentStart(buffer3)) {
        return null;
      }
      const sep2 = buffer3.indexOf(YAML_DOCUMENT_SEPARATOR, YAML_DOCUMENT_START.length);
      if (sep2 !== -1) {
        return buffer3.slice(YAML_DOCUMENT_START.length, sep2);
      }
    }
    const remainder = decoder2.end();
    if (remainder.length > 0) {
      buffer3 += firstChunk ? stripBom(remainder) : remainder;
      buffer3 = buffer3.replace(/\r\n/g, "\n");
    }
    return null;
  } catch (err2) {
    if (util19.types.isNativeError(err2) && "code" in err2 && err2.code === "ENOENT") {
      return null;
    }
    throw err2;
  } finally {
    await fileHandle?.close().catch(() => {
    });
  }
}
async function readLockfileToString(filePath) {
  try {
    return stripBom(await readFile2(filePath, "utf8")).replace(/\r\n/g, "\n");
  } catch (err2) {
    if (util19.types.isNativeError(err2) && "code" in err2 && err2.code === "ENOENT") {
      return null;
    }
    throw err2;
  }
}
async function readLockfileToStringNoFollow(filePath) {
  let fileHandle;
  try {
    fileHandle = await openLockfileNoFollow(filePath);
    return await fileHandle.readFile("utf8");
  } catch (err2) {
    if (util19.types.isNativeError(err2) && "code" in err2 && err2.code === "ENOENT") {
      return null;
    }
    throw err2;
  } finally {
    await fileHandle?.close().catch(() => {
    });
  }
}
async function openLockfileNoFollow(filePath) {
  await ensureLockfileIsNotSymlink(filePath);
  try {
    return await open2(filePath, LOCKFILE_READ_FLAGS);
  } catch (err2) {
    if (util19.types.isNativeError(err2) && "code" in err2 && err2.code === "ELOOP") {
      throw symlinkedLockfileError(filePath);
    }
    throw err2;
  }
}
async function ensureLockfileIsNotSymlink(filePath) {
  let stat2;
  try {
    stat2 = await lstat(filePath);
  } catch (err2) {
    if (util19.types.isNativeError(err2) && "code" in err2 && err2.code === "ENOENT") {
      return;
    }
    throw err2;
  }
  if (stat2.isSymbolicLink()) {
    throw symlinkedLockfileError(filePath);
  }
}
function symlinkedLockfileError(filePath) {
  return new PnpmError("LOCKFILE_IS_SYMLINK", `Refusing to write symlinked lockfile at ${filePath}`);
}
function canRejectDocumentStart(buffer3) {
  if (buffer3.length < YAML_DOCUMENT_START.length)
    return false;
  if (buffer3 === "---\r")
    return false;
  return !buffer3.startsWith(YAML_DOCUMENT_START);
}
function normalizeReadBufferSize(readBufferSize) {
  const size = Number.isFinite(readBufferSize) ? Math.floor(readBufferSize) : READ_BUFFER_SIZE;
  return size > 0 ? size : READ_BUFFER_SIZE;
}
function extractEnvDocument(content) {
  content = content.replace(/\r\n/g, "\n");
  if (!content.startsWith(YAML_DOCUMENT_START))
    return null;
  const sep2 = content.indexOf(YAML_DOCUMENT_SEPARATOR, YAML_DOCUMENT_START.length);
  if (sep2 === -1)
    return null;
  return content.slice(YAML_DOCUMENT_START.length, sep2);
}
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, READ_BUFFER_SIZE, LOCKFILE_READ_FLAGS;
var init_yamlDocuments = __esm({
  "../lockfile/fs/lib/yamlDocuments.js"() {
    "use strict";
    init_lib2();
    init_strip_bom();
    YAML_DOCUMENT_SEPARATOR = "\n---\n";
    YAML_DOCUMENT_START = "---\n";
    READ_BUFFER_SIZE = 64 * 1024;
    LOCKFILE_READ_FLAGS = constants4.O_RDONLY | (process.platform === "win32" ? 0 : constants4.O_NOFOLLOW);
  }
});

// ../lockfile/fs/lib/write.js
import { randomUUID } from "node:crypto";
import { promises as fs39 } from "node:fs";
import path66 from "node:path";
function lockfileYamlDump(obj) {
  return jsYaml.dump(obj, LOCKFILE_YAML_FORMAT);
}
async function writeWantedLockfile(pkgPath, wantedLockfile, opts3) {
  const wantedLockfileName = opts3?.lockfileName ?? await getWantedLockfileName(opts3);
  return writeLockfile(wantedLockfileName, pkgPath, wantedLockfile);
}
async function writeCurrentLockfile(virtualStoreDir, currentLockfile) {
  if (isEmptyLockfile(currentLockfile)) {
    await rimraf(path66.join(virtualStoreDir, "lock.yaml"));
    return void 0;
  }
  await fs39.mkdir(virtualStoreDir, { recursive: true });
  return writeLockfile("lock.yaml", virtualStoreDir, currentLockfile);
}
async function writeLockfile(lockfileFilename, pkgPath, wantedLockfile) {
  const lockfilePath = path66.join(pkgPath, lockfileFilename);
  const lockfileToStringify = convertToLockfileFile(wantedLockfile);
  const yamlDoc = yamlStringify(lockfileToStringify);
  await writeLockfileDoc(lockfilePath, lockfileFilename, yamlDoc);
  return convertToLockfileObject(stripUndefinedDeep(lockfileToStringify));
}
async function writeLockfileDoc(lockfilePath, lockfileName, mainDoc) {
  if (lockfileName !== WANTED_LOCKFILE) {
    await (0, import_write_file_atomic5.default)(lockfilePath, mainDoc);
    return;
  }
  const existing = await readLockfileToString(lockfilePath);
  const envDoc = existing == null ? null : extractEnvDocument(existing);
  const content = envDoc == null ? mainDoc : `${YAML_DOCUMENT_START}${envDoc}${YAML_DOCUMENT_SEPARATOR}${mainDoc}`;
  if (existing === content)
    return;
  await writeWantedLockfileAtomic(lockfilePath, content);
}
async function writeWantedLockfileAtomic(lockfilePath, content) {
  await ensureLockfileIsNotSymlink(lockfilePath);
  const targetStat = await fs39.lstat(lockfilePath).catch((error) => {
    if (error.code === "ENOENT")
      return void 0;
    throw error;
  });
  const tempPath2 = path66.join(path66.dirname(lockfilePath), `.${path66.basename(lockfilePath)}.${process.pid}.${randomUUID()}.tmp`);
  let tempFile;
  try {
    tempFile = await fs39.open(tempPath2, "wx", targetStat?.mode);
    await tempFile.writeFile(content);
    if (targetStat != null) {
      await tempFile.chown(targetStat.uid, targetStat.gid).catch(ignoreUnprivilegedChown);
      await tempFile.chmod(targetStat.mode);
    }
    await tempFile.sync();
    await tempFile.close();
    tempFile = void 0;
    await ensureLockfileIsNotSymlink(lockfilePath);
    await fs39.rename(tempPath2, lockfilePath);
  } finally {
    await tempFile?.close().catch(() => {
    });
    await fs39.rm(tempPath2, { force: true }).catch(() => {
    });
  }
}
function ignoreUnprivilegedChown(error) {
  const tolerated = error.code === "ENOSYS" || (process.getuid == null || process.getuid() !== 0) && (error.code === "EINVAL" || error.code === "EPERM");
  if (!tolerated)
    throw error;
}
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(opts3) {
  const wantedLockfileName = opts3.wantedLockfileName ?? await getWantedLockfileName(opts3);
  const wantedLockfilePath = path66.join(opts3.wantedLockfileDir, wantedLockfileName);
  const currentLockfilePath = path66.join(opts3.currentLockfileDir, "lock.yaml");
  const wantedLockfileToStringify = convertToLockfileFile(opts3.wantedLockfile);
  const yamlDoc = yamlStringify(wantedLockfileToStringify);
  if (opts3.wantedLockfile === opts3.currentLockfile) {
    await Promise.all([
      writeLockfileDoc(wantedLockfilePath, wantedLockfileName, yamlDoc),
      (async () => {
        if (isEmptyLockfile(opts3.wantedLockfile)) {
          await rimraf(currentLockfilePath);
        } else {
          await fs39.mkdir(path66.dirname(currentLockfilePath), { recursive: true });
          await (0, import_write_file_atomic5.default)(currentLockfilePath, yamlDoc);
        }
      })()
    ]);
    const normalized = convertToLockfileObject(stripUndefinedDeep(wantedLockfileToStringify));
    return {
      wantedLockfile: normalized,
      currentLockfile: isEmptyLockfile(opts3.wantedLockfile) ? void 0 : normalized
    };
  }
  lockfileLogger.debug({
    message: `\`${WANTED_LOCKFILE}\` differs from \`${path66.relative(opts3.wantedLockfileDir, currentLockfilePath)}\``,
    prefix: opts3.wantedLockfileDir
  });
  const currentLockfileToStringify = convertToLockfileFile(opts3.currentLockfile);
  const currentYamlDoc = yamlStringify(currentLockfileToStringify);
  const currentIsEmpty = isEmptyLockfile(opts3.currentLockfile);
  await Promise.all([
    writeLockfileDoc(wantedLockfilePath, wantedLockfileName, yamlDoc),
    (async () => {
      if (currentIsEmpty) {
        await rimraf(currentLockfilePath);
      } else {
        await fs39.mkdir(path66.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_lib10(), 1);
    init_lockfileFormatConverters();
    init_lockfileName();
    init_logger3();
    init_sortLockfileKeys();
    init_yamlDocuments();
    LOCKFILE_YAML_FORMAT = {
      blankLines: true,
      lineWidth: -1,
      noCompatMode: true,
      noRefs: true,
      sortKeys: false
    };
  }
});

// ../lockfile/fs/lib/envLockfile.js
import path67 from "node:path";
function createEnvLockfile() {
  return {
    lockfileVersion: LOCKFILE_VERSION,
    importers: {
      ".": {
        configDependencies: {}
      }
    },
    packages: {},
    snapshots: {}
  };
}
async function readEnvLockfile(rootDir) {
  const lockfilePath = path67.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 = path67.join(rootDir, WANTED_LOCKFILE);
  const sorted = sortLockfileKeys(lockfile);
  const envYaml = lockfileYamlDump(sorted);
  const existing = await readLockfileToStringNoFollow(lockfilePath);
  const mainDoc = existing == null ? "" : extractMainDocument(existing);
  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_lib10(), 1);
    init_sortLockfileKeys();
    init_write();
    init_yamlDocuments();
  }
});

// ../lockfile/fs/lib/existsWantedLockfile.js
import fs40 from "node:fs";
import path68 from "node:path";
async function existsNonEmptyWantedLockfile(pkgPath, opts3 = {
  useGitBranchLockfile: false,
  mergeGitBranchLockfiles: false
}) {
  const wantedLockfile = await getWantedLockfileName(opts3);
  return new Promise((resolve4, reject3) => {
    fs40.access(path68.join(pkgPath, wantedLockfile), (err2) => {
      if (err2 == null) {
        resolve4(true);
        return;
      }
      if (err2.code === "ENOENT") {
        resolve4(false);
        return;
      }
      reject3(err2);
    });
  });
}
var init_existsWantedLockfile = __esm({
  "../lockfile/fs/lib/existsWantedLockfile.js"() {
    "use strict";
    init_lockfileName();
  }
});

// ../lockfile/fs/lib/getLockfileImporterId.js
import path69 from "node:path";
function getLockfileImporterId(lockfileDir, prefix) {
  return (0, import_normalize_path4.default)(path69.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 fs41, { promises as fsp } from "node:fs";
import path70 from "node:path";
async function getGitBranchLockfileNames(lockfileDir) {
  const files = await fsp.readdir(lockfileDir);
  return files.filter((file) => GIT_BRANCH_LOCKFILE_NAME.test(file));
}
function getGitBranchLockfileNamesSync(lockfileDir) {
  const files = fs41.readdirSync(lockfileDir);
  return files.filter((file) => GIT_BRANCH_LOCKFILE_NAME.test(file));
}
async function cleanGitBranchLockfiles(lockfileDir) {
  const gitBranchLockfiles = await getGitBranchLockfileNames(lockfileDir);
  await Promise.all(gitBranchLockfiles.map(async (file) => {
    const filepath = path70.join(lockfileDir, file);
    await fsp.unlink(filepath);
  }));
}
var GIT_BRANCH_LOCKFILE_NAME;
var init_gitBranchLockfile = __esm({
  "../lockfile/fs/lib/gitBranchLockfile.js"() {
    "use strict";
    GIT_BRANCH_LOCKFILE_NAME = /^pnpm-lock\..+\.yaml$/;
  }
});

// ../../../../../setup-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({
  "../../../../../setup-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_lib79 = __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_errors2 = __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_lib79();
    init_js_yaml();
    init_lockfileFormatConverters();
    MERGE_CONFLICT_PARENT = "|||||||";
    MERGE_CONFLICT_END = ">>>>>>>";
    MERGE_CONFLICT_THEIRS = "=======";
    MERGE_CONFLICT_OURS = "<<<<<<<";
  }
});

// ../lockfile/fs/lib/read.js
import fs42, { promises as fsp2 } from "node:fs";
import path71 from "node:path";
import util20 from "node:util";
async function readCurrentLockfile(pnpmInternalDir, opts3) {
  const lockfilePath = path71.join(pnpmInternalDir, "lock.yaml");
  return (await _read(lockfilePath, pnpmInternalDir, opts3)).lockfile;
}
async function readWantedLockfileAndAutofixConflicts(pkgPath, opts3) {
  return _readWantedLockfile(pkgPath, {
    ...opts3,
    autofixMergeConflicts: true
  });
}
async function readWantedLockfile(pkgPath, opts3) {
  return (await _readWantedLockfile(pkgPath, opts3)).lockfile;
}
async function readWantedLockfileFile(pkgPath, opts3) {
  return (await _readWantedLockfile(pkgPath, opts3)).lockfileFile;
}
function wantedLockfileHasMergeConflictsSync(pkgPath, lockfileName = WANTED_LOCKFILE) {
  try {
    const lockfileRawContent = stripBom(fs42.readFileSync(path71.join(pkgPath, lockfileName), "utf8"));
    return isDiff(extractMainDocument(lockfileRawContent));
  } catch (err2) {
    if (util20.types.isNativeError(err2) && "code" in err2 && err2.code === "ENOENT") {
      return false;
    }
    throw err2;
  }
}
async function _read(lockfilePath, prefix, opts3) {
  let lockfileRawContent;
  try {
    lockfileRawContent = stripBom(await fsp2.readFile(lockfilePath, "utf8"));
  } catch (err2) {
    if (!(util20.types.isNativeError(err2) && "code" in err2 && err2.code === "ENOENT")) {
      throw err2;
    }
    return {
      lockfile: null,
      lockfileFile: null,
      hadConflicts: false
    };
  }
  lockfileRawContent = extractMainDocument(lockfileRawContent);
  if (!lockfileRawContent.trim()) {
    return {
      lockfile: null,
      lockfileFile: null,
      hadConflicts: false
    };
  }
  let lockfile;
  let lockfileFile;
  let hadConflicts;
  try {
    lockfileFile = jsYaml.load(lockfileRawContent);
    lockfile = convertToLockfileObject(lockfileFile);
    hadConflicts = false;
  } catch (err2) {
    if (!opts3.autofixMergeConflicts || !isDiff(lockfileRawContent)) {
      throw new PnpmError("BROKEN_LOCKFILE", `The lockfile at "${lockfilePath}" is broken: ${formatLockfileError(err2)}`);
    }
    hadConflicts = true;
    lockfile = autofixMergeConflicts(lockfileRawContent);
    lockfileFile = convertToLockfileFile(lockfile);
    lockfileLogger.info({
      message: `Merge conflict detected in ${WANTED_LOCKFILE} and successfully merged`,
      prefix
    });
  }
  if (lockfile) {
    const lockfileSemver = comverToSemver((lockfile.lockfileVersion ?? 0).toString());
    if (!opts3.wantedVersions || opts3.wantedVersions.length === 0 || opts3.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, lockfileFile, hadConflicts };
    }
  }
  if (opts3.ignoreIncompatible) {
    lockfileLogger.warn({
      message: `Ignoring not compatible lockfile at ${lockfilePath}`,
      prefix
    });
    return { lockfile: null, lockfileFile: null, hadConflicts: false };
  }
  throw new LockfileBreakingChangeError(lockfilePath);
}
function formatLockfileError(err2) {
  if (isYamlException(err2)) {
    const reason = typeof err2.reason === "string" ? err2.reason : "Unable to parse YAML";
    const line = err2.mark?.line;
    const column = err2.mark?.column;
    const position3 = typeof line === "number" && Number.isFinite(line) && typeof column === "number" && Number.isFinite(column) ? ` (${line + 1}:${column + 1})` : "";
    return `${reason}${position3}`;
  }
  return util20.types.isNativeError(err2) ? err2.message : String(err2);
}
function isYamlException(err2) {
  return typeof err2 === "object" && err2 !== null && "name" in err2 && err2.name === "YAMLException";
}
function createLockfileObject(importerIds, opts3) {
  const importers = {};
  for (const importerId of importerIds) {
    importers[importerId] = {
      dependencies: {},
      specifiers: {}
    };
  }
  return {
    importers,
    lockfileVersion: opts3.lockfileVersion || LOCKFILE_VERSION,
    settings: {
      autoInstallPeers: opts3.autoInstallPeers,
      excludeLinksFromLockfile: opts3.excludeLinksFromLockfile,
      peersSuffixMaxLength: opts3.peersSuffixMaxLength
    }
  };
}
async function _readWantedLockfile(pkgPath, opts3) {
  const lockfileNames = [WANTED_LOCKFILE];
  if (opts3.useGitBranchLockfile) {
    const gitBranchLockfileName = await getWantedLockfileName(opts3);
    if (gitBranchLockfileName !== WANTED_LOCKFILE) {
      lockfileNames.unshift(gitBranchLockfileName);
    }
  }
  let result2 = { lockfile: null, lockfileFile: null, hadConflicts: false };
  for (const lockfileName of lockfileNames) {
    result2 = await _read(path71.join(pkgPath, lockfileName), pkgPath, { ...opts3, autofixMergeConflicts: true });
    if (result2.lockfile) {
      if (opts3.mergeGitBranchLockfiles) {
        result2.lockfile = await _mergeGitBranchLockfiles(result2.lockfile, pkgPath, pkgPath, opts3);
        result2.lockfileFile = result2.lockfile ? convertToLockfileFile(result2.lockfile) : null;
      }
      break;
    }
  }
  return result2;
}
async function _mergeGitBranchLockfiles(lockfile, lockfileDir, prefix, opts3) {
  if (!lockfile) {
    return lockfile;
  }
  const gitBranchLockfiles = (await _readGitBranchLockfiles(lockfileDir, prefix, opts3)).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, opts3) {
  const files = await getGitBranchLockfileNames(lockfileDir);
  return Promise.all(files.map((file) => _read(path71.join(lockfileDir, file), prefix, opts3)));
}
var import_semver21;
var init_read = __esm({
  "../lockfile/fs/lib/read.js"() {
    "use strict";
    init_lib();
    init_lib2();
    init_lib79();
    init_comver_to_semver();
    init_js_yaml();
    import_semver21 = __toESM(require_semver2(), 1);
    init_strip_bom();
    init_errors2();
    init_gitBranchLockfile();
    init_gitMergeFile();
    init_lockfileFormatConverters();
    init_lockfileName();
    init_logger3();
    init_yamlDocuments();
  }
});

// ../lockfile/fs/lib/index.js
var init_lib80 = __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_lib72();
  }
});

// ../installing/read-projects-context/lib/index.js
import { promises as fs43 } from "node:fs";
import path72 from "node:path";
import util21 from "node:util";
async function readProjectsContext(projects, opts3) {
  const modulesDirOpt = opts3.modulesDir ?? "node_modules";
  const rootModulesDir = await realpathMissing(pathAbsolute(modulesDirOpt, opts3.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(opts3.lockfileDir, project.rootDir);
      return {
        ...project,
        binsDir: project.binsDir ?? path72.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(path240) {
  try {
    return await fs43.realpath(path240);
  } catch (err2) {
    if (util21.types.isNativeError(err2) && "code" in err2 && err2.code === "ENOENT") {
      return path240;
    }
    throw err2;
  }
}
var init_lib81 = __esm({
  "../installing/read-projects-context/lib/index.js"() {
    "use strict";
    init_lib76();
    init_lib77();
    init_lib80();
    init_path_absolute();
    init_realpath_missing();
  }
});

// ../fetching/pick-fetcher/lib/index.js
async function pickFetcher(fetcherByHostingType, resolution, opts3) {
  if (opts3?.customFetchers && opts3.customFetchers.length > 0) {
    for (const customFetcher of opts3.customFetchers) {
      if (customFetcher.canFetch && customFetcher.fetch) {
        const canFetch = await customFetcher.canFetch(opts3.packageId, resolution);
        if (canFetch) {
          const resolutionNeedsFetch = typeof customFetcher.resolutionNeedsFetch === "function" ? customFetcher.resolutionNeedsFetch.bind(customFetcher) : void 0;
          return Object.assign(async (cafs, resolution2, fetchOpts) => {
            const result2 = await customFetcher.fetch(cafs, resolution2, fetchOpts, fetcherByHostingType);
            if (isCustomFetcherDelegation(result2)) {
              const delegate = result2.delegate;
              const fetch3 = pickBuiltinFetcher(fetcherByHostingType, delegate);
              return fetch3(cafs, delegate, fetchOpts);
            }
            return result2;
          }, { resolutionNeedsFetch });
        }
      }
    }
  }
  return pickBuiltinFetcher(fetcherByHostingType, resolution);
}
function isCustomFetcherDelegation(result2) {
  return result2 != null && typeof result2 === "object" && "delegate" in result2 && !("filesMap" in result2);
}
function pickBuiltinFetcher(fetcherByHostingType, resolution) {
  const fetcherType = classifyResolution(resolution);
  if (fetcherType === "custom") {
    throw new PnpmError("UNSUPPORTED_RESOLUTION_TYPE", `Cannot fetch dependency with custom resolution type "${resolution.type}". Custom resolutions must be handled by custom fetchers.`);
  }
  const fetch3 = fetcherByHostingType[fetcherType];
  if (!fetch3) {
    throw new Error(`Fetching for dependency type "${resolution.type ?? "tarball"}" is not supported`);
  }
  return fetch3;
}
var init_lib82 = __esm({
  "../fetching/pick-fetcher/lib/index.js"() {
    "use strict";
    init_lib2();
    init_lib29();
  }
});

// ../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 fs44, {} from "node:fs";
import path73 from "node:path";
import util22 from "node:util";
function addFilesFromDir2(addBuffer, dirname3, opts3 = {}) {
  const filesIndex = /* @__PURE__ */ new Map();
  let manifest;
  let files;
  const resolvedRoot = fs44.realpathSync(dirname3);
  if (opts3.files) {
    files = [];
    for (const file of opts3.files) {
      const absolutePath = path73.join(dirname3, file);
      const stat2 = getStatIfContained(absolutePath, resolvedRoot);
      if (!stat2) {
        continue;
      }
      files.push({
        absolutePath,
        relativePath: file,
        stat: stat2
      });
    }
  } else {
    files = findFilesInDir(dirname3, resolvedRoot, opts3);
  }
  for (const { absolutePath, relativePath: relativePath2, stat: stat2 } of files) {
    const buffer3 = lib_default.readFileSync(absolutePath);
    if (opts3.readManifest && relativePath2 === "package.json") {
      manifest = parseJsonBufferSync(buffer3);
    }
    const mode = stat2.mode & 511;
    filesIndex.set(relativePath2, {
      mode,
      size: stat2.size,
      ...addBuffer(buffer3, mode)
    });
  }
  return { manifest, filesIndex };
}
function getStatIfContained(absolutePath, rootDir) {
  let lstat2;
  try {
    lstat2 = fs44.lstatSync(absolutePath);
  } catch (err2) {
    if (util22.types.isNativeError(err2) && "code" in err2 && err2.code === "ENOENT") {
      return null;
    }
    throw err2;
  }
  if (lstat2.isSymbolicLink()) {
    return getSymlinkStatIfContained(absolutePath, rootDir)?.stat ?? null;
  }
  return lstat2;
}
function getSymlinkStatIfContained(absolutePath, rootDir) {
  let realPath;
  try {
    realPath = fs44.realpathSync(absolutePath);
  } catch (err2) {
    if (util22.types.isNativeError(err2) && "code" in err2 && err2.code === "ENOENT") {
      return null;
    }
    throw err2;
  }
  if (!isSubdir(rootDir, realPath)) {
    return null;
  }
  return { stat: fs44.statSync(realPath), realPath };
}
function findFilesInDir(dir, rootDir, opts3) {
  const files = [];
  const ctx = {
    filesList: files,
    includeNodeModules: opts3.includeNodeModules ?? false,
    rootDir,
    visited: /* @__PURE__ */ new Set([rootDir])
  };
  findFiles2(ctx, dir, "", rootDir);
  return files;
}
function findFiles2(ctx, dir, relativeDir, currentRealPath) {
  const files = fs44.readdirSync(dir, { withFileTypes: true });
  for (const file of files) {
    const relativeSubdir = `${relativeDir}${relativeDir ? "/" : ""}${file.name}`;
    const absolutePath = path73.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 = path73.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 = fs44.statSync(absolutePath);
    } catch (err2) {
      if (util22.types.isNativeError(err2) && "code" in err2 && err2.code === "ENOENT") {
        continue;
      }
      throw err2;
    }
    ctx.filesList.push({
      relativePath: relativeSubdir,
      absolutePath,
      stat: stat2
    });
  }
}
var init_addFilesFromDir = __esm({
  "../store/cafs/lib/addFilesFromDir.js"() {
    "use strict";
    init_lib14();
    init_is_subdir();
    init_parseJson();
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/is-gzip/2.0.0/82a8e17050fa38e95e62aa7580ddf517da43682e2ea1a94728382ef43c644d04/node_modules/is-gzip/index.js
var require_is_gzip = __commonJS({
  "../../../../../setup-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 path74 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 = path74.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 i4 = offset;
    const checksumStart = offset + 148;
    const checksumEnd = offset + 156;
    const blockEnd = offset + 512;
    for (; i4 < checksumStart; i4++) {
      sum += buffer3[i4];
    }
    for (i4 = checksumEnd; i4 < blockEnd; i4++) {
      sum += buffer3[i4];
    }
    return sum;
  }
  function parsePaxHeader(offset, length, global3) {
    const end = offset + length;
    let i4 = offset;
    while (i4 < end) {
      const lineStart = i4;
      while (i4 < end && buffer3[i4] !== SPACE) {
        i4++;
      }
      const strLen = buffer3.toString("utf-8", lineStart, i4);
      const len = parseInt(strLen, 10);
      if (!len) {
        throw new Error(`Invalid length in PAX record: ${strLen}`);
      }
      i4++;
      const lineEnd = lineStart + len;
      const record = buffer3.toString("utf-8", i4, lineEnd - 1);
      i4 = 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 max4 = length + offset;
    for (let char = buffer3[end]; char !== 0 && end !== max4; 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(index2, len, defaultValue) {
  if (typeof index2 !== "number")
    return defaultValue;
  index2 = ~~index2;
  if (index2 >= len)
    return len;
  if (index2 >= 0)
    return index2;
  index2 += len;
  if (index2 >= 0)
    return index2;
  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 [relativePath2, { mode, offset, size }] of files) {
    if (ignore2?.(relativePath2))
      continue;
    const fileBuffer = tarContent.subarray(offset, offset + size);
    if (readManifest && relativePath2 === "package.json") {
      manifestBuffer = fileBuffer;
    }
    filesIndex.set(relativePath2, {
      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 path75 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 = path75.sep;
    modeIsExecutable = (mode) => (mode & 73) !== 0;
  }
});

// ../store/cafs/lib/checkPkgFilesIntegrity.js
import crypto5 from "node:crypto";
import util23 from "node:util";
function verifyFileIntegrity(filename, integrity) {
  global["verifiedFileIntegrity"]++;
  let data;
  try {
    data = lib_default.readFileSync(filename);
  } catch (err2) {
    if (util23.types.isNativeError(err2) && "code" in err2 && err2.code === "ENOENT") {
      return false;
    }
    throw err2;
  }
  try {
    return crypto5.hash(integrity.algorithm, data, "hex") === integrity.digest;
  } catch {
    return false;
  }
}
var init_checkPkgFilesIntegrity = __esm({
  "../store/cafs/lib/checkPkgFilesIntegrity.js"() {
    "use strict";
    init_lib2();
    init_lib14();
    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 path76 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 = path76.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_lib14();
    dirs = /* @__PURE__ */ new Set();
  }
});

// ../store/cafs/lib/writeBufferToCafs.js
import fs45 from "node:fs";
import path77 from "node:path";
import util24 from "node:util";
import workerThreads from "node:worker_threads";
function writeBufferToCafs(locker, storeDir, buffer3, fileDest, mode, integrity) {
  fileDest = path77.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 = fs45.statSync(fileDest, { throwIfNoEntry: false });
  if (existingFile) {
    if (verifyFileIntegrity(fileDest, integrity)) {
      return Date.now();
    }
    return writeFileAtomic7(fileDest, buffer3, mode);
  }
  try {
    writeFileExclusive(fileDest, buffer3, mode);
  } catch (err2) {
    if (util24.types.isNativeError(err2) && "code" in err2 && err2.code === "EEXIST") {
      if (verifyFileIntegrity(fileDest, integrity)) {
        return Date.now();
      }
      return writeFileAtomic7(fileDest, buffer3, mode);
    }
    throw err2;
  }
  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 (err2) {
    if (!(util24.types.isNativeError(err2) && "code" in err2 && err2.code === "ENOENT") || !fs45.existsSync(fileDest))
      throw err2;
  }
}
function pathTemp2(file) {
  const basename2 = removeSuffix2(path77.basename(file));
  return path77.join(path77.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 crypto6 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 = crypto6.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_lib83 = __esm({
  "../store/cafs/lib/index.js"() {
    "use strict";
    init_addFilesFromDir();
    init_addFilesFromTarball();
    init_checkPkgFilesIntegrity();
    init_getFilePathInCafs();
    init_normalizeBundledManifest();
    init_writeBufferToCafs();
    init_lib9();
    HASH_ALGORITHM = "sha512";
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/p-defer/4.0.1/840dd3780d5233de542b9dbb564939ed9be51a2e6fed10febe8d325383bb7b3d/node_modules/p-defer/index.js
function pDefer() {
  const deferred = {};
  deferred.promise = new Promise((resolve4, reject3) => {
    deferred.resolve = resolve4;
    deferred.reject = reject3;
  });
  return deferred;
}
var init_p_defer = __esm({
  "../../../../../setup-pnpm/store/v11/links/@/p-defer/4.0.1/840dd3780d5233de542b9dbb564939ed9be51a2e6fed10febe8d325383bb7b3d/node_modules/p-defer/index.js"() {
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/eventemitter3/5.0.4/575196c5129a96010821b0b9286f8861735eb3295e2600aa424f0150b72adea4/node_modules/eventemitter3/index.js
var require_eventemitter3 = __commonJS({
  "../../../../../setup-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 i4 = 0, l = handlers.length, ee = new Array(l); i4 < l; i4++) {
        ee[i4] = handlers[i4].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, i4;
      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 (i4 = 1, args = new Array(len - 1); i4 < len; i4++) {
          args[i4 - 1] = arguments[i4];
        }
        listeners.fn.apply(listeners.context, args);
      } else {
        var length = listeners.length, j2;
        for (i4 = 0; i4 < length; i4++) {
          if (listeners[i4].once) this.removeListener(event, listeners[i4].fn, void 0, true);
          switch (len) {
            case 1:
              listeners[i4].fn.call(listeners[i4].context);
              break;
            case 2:
              listeners[i4].fn.call(listeners[i4].context, a1);
              break;
            case 3:
              listeners[i4].fn.call(listeners[i4].context, a1, a2);
              break;
            case 4:
              listeners[i4].fn.call(listeners[i4].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[i4].fn.apply(listeners[i4].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 i4 = 0, events = [], length = listeners.length; i4 < length; i4++) {
          if (listeners[i4].fn !== fn || once11 && !listeners[i4].once || context && listeners[i4].context !== context) {
            events.push(listeners[i4]);
          }
        }
        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;
    }
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/eventemitter3/5.0.4/575196c5129a96010821b0b9286f8861735eb3295e2600aa424f0150b72adea4/node_modules/eventemitter3/index.mjs
var import_index2;
var init_eventemitter3 = __esm({
  "../../../../../setup-pnpm/store/v11/links/@/eventemitter3/5.0.4/575196c5129a96010821b0b9286f8861735eb3295e2600aa424f0150b72adea4/node_modules/eventemitter3/index.mjs"() {
    import_index2 = __toESM(require_eventemitter3(), 1);
  }
});

// ../../../../../setup-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((resolve4, 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(resolve4, reject3);
    if (milliseconds === Number.POSITIVE_INFINITY) {
      return;
    }
    const timeoutError = new TimeoutError();
    timer = customTimers.setTimeout.call(void 0, () => {
      if (fallback) {
        try {
          resolve4(fallback());
        } catch (error) {
          reject3(error);
        }
        return;
      }
      if (typeof promise2.cancel === "function") {
        promise2.cancel();
      }
      if (message === false) {
        resolve4();
      } 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({
  "../../../../../setup-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");
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/p-queue/9.3.3/798d42cccfe90118851896aa734ef54c5028bacda3bf78e56454fea26c132ff3/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({
  "../../../../../setup-pnpm/store/v11/links/@/p-queue/9.3.3/798d42cccfe90118851896aa734ef54c5028bacda3bf78e56454fea26c132ff3/node_modules/p-queue/dist/lower-bound.js"() {
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/p-queue/9.3.3/798d42cccfe90118851896aa734ef54c5028bacda3bf78e56454fea26c132ff3/node_modules/p-queue/dist/priority-queue.js
var compactionThreshold, PriorityQueue;
var init_priority_queue = __esm({
  "../../../../../setup-pnpm/store/v11/links/@/p-queue/9.3.3/798d42cccfe90118851896aa734ef54c5028bacda3bf78e56454fea26c132ff3/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(run2, options) {
        const { priority = 0, id } = options ?? {};
        const { size } = this;
        const element = {
          priority,
          id,
          run: run2
        };
        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 index2 = lowerBound(this.#queue, element, (a2, b) => b.priority - a2.priority);
        this.#queue.splice(index2, 0, element);
      }
      setPriority(id, priority) {
        const index2 = this.#queue.findIndex((element, index3) => index3 >= this.#head && element.id === id);
        if (index2 === -1) {
          throw new ReferenceError(`No promise function with the id "${id}" exists in the queue.`);
        }
        const [item] = this.#queue.splice(index2, 1);
        this.enqueue(item.run, { priority, id });
      }
      remove(idOrRun) {
        const index2 = this.#queue.findIndex((element, index3) => {
          if (index3 < this.#head) {
            return false;
          }
          if (typeof idOrRun === "string") {
            return element.id === idOrRun;
          }
          return element.run === idOrRun;
        });
        if (index2 !== -1) {
          this.#queue.splice(index2, 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 index2 = this.#head; index2 < this.#queue.length; index2++) {
          const element = this.#queue[index2];
          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;
      }
    };
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/p-queue/9.3.3/798d42cccfe90118851896aa734ef54c5028bacda3bf78e56454fea26c132ff3/node_modules/p-queue/dist/index.js
var PQueue;
var init_dist15 = __esm({
  "../../../../../setup-pnpm/store/v11/links/@/p-queue/9.3.3/798d42cccfe90118851896aa734ef54c5028bacda3bf78e56454fea26c132ff3/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;
      /*
      Timestamp when the current interval window ends. Kept accurate at every window transition: `#initializeIntervalIfNeeded` sets it when a window starts and `#onInterval` advances it as the recurring timer rolls into each new window. This is the source of truth for whether a task added after the queue goes idle belongs to a fresh window, so it must not go stale.
      */
      #intervalEnd = 0;
      // Recurring timer that drives windows while the queue is actively processing. Absent (`undefined`) once the queue goes idle.
      #intervalId;
      // One-shot timer used while idle to resume at the next window boundary, since `#intervalId` is cleared when idle.
      #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) {
            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();
            }
            if (canInitializeInterval) {
              this.#initializeIntervalIfNeeded();
            }
            this.emit("active");
            job();
            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.#intervalId !== void 0) {
            if (this.#intervalCount === 0 && this.#pending === 0) {
              this.#clearIntervalTimer();
            } else {
              this.#intervalEnd = Date.now() + this.#interval;
            }
          }
          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()
        };
        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})`);
        }
        return new Promise((resolve4, reject3) => {
          const taskSymbol = /* @__PURE__ */ Symbol(`task-${options.id}`);
          let cleanupQueueAbortHandler = () => void 0;
          const run2 = 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;
              }
              let operation5 = function_({ signal: options.signal });
              if (options.timeout !== void 0) {
                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;
              resolve4(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(run2, options);
          const removeQueuedTask = () => {
            if (this.#queue instanceof PriorityQueue) {
              this.#queue.remove(run2);
              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", "active"], () => 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(events, filter14) {
        const eventList = Array.isArray(events) ? events : [events];
        return new Promise((resolve4) => {
          const listener = () => {
            if (filter14 && !filter14()) {
              return;
            }
            for (const event of eventList) {
              this.off(event, listener);
            }
            resolve4();
          };
          for (const event of eventList) {
            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
        }));
      }
    };
  }
});

// ../../../../../setup-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({
  "../../../../../setup-pnpm/store/v11/links/@/p-reflect/3.1.0/6f95dcbf2829f016a4a665ec47811ad42cf4e3ca630bc671584a7e2cc839145d/node_modules/p-reflect/index.js"() {
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/promise-share/2.0.1/49c9a9052af012e839bac1af677bd64fa26e25833bcec109ea012b813632820c/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({
  "../../../../../setup-pnpm/store/v11/links/@/promise-share/2.0.1/49c9a9052af012e839bac1af677bd64fa26e25833bcec109ea012b813632820c/node_modules/promise-share/index.js"() {
    init_p_reflect();
  }
});

// ../installing/package-requester/lib/packageRequester.js
import { createReadStream as createReadStream2, promises as fs46 } from "node:fs";
import path78 from "node:path";
function getLibcFamilySync2() {
  if (currentLibc2 === void 0) {
    currentLibc2 = (0, import_detect_libc3.familySync)();
  }
  return currentLibc2;
}
function createPackageRequester(opts3) {
  opts3 = opts3 || {};
  const networkConcurrency = opts3.networkConcurrency ?? Math.min(96, Math.max(calcMaxWorkers() * 3, 64));
  const requestsQueue = new PQueue({
    concurrency: networkConcurrency
  });
  const fetch3 = fetcher.bind(null, opts3.fetchers, opts3.cafs, opts3.customFetchers);
  const readPkgFromCafs2 = readPkgFromCafs.bind(null, {
    storeDir: opts3.storeDir,
    verifyStoreIntegrity: opts3.verifyStoreIntegrity,
    strictStorePkgContentCheck: opts3.strictStorePkgContentCheck,
    frozenStore: opts3.frozenStore
  });
  const fetchPackageToStore = fetchToStore.bind(null, {
    readPkgFromCafs: readPkgFromCafs2,
    fetch: fetch3,
    fetchingLocker: /* @__PURE__ */ new Map(),
    requestsQueue: Object.assign(requestsQueue, {
      counter: 0,
      concurrency: networkConcurrency
    }),
    storeDir: opts3.storeDir,
    virtualStoreDirMaxLength: opts3.virtualStoreDirMaxLength,
    strictStorePkgContentCheck: opts3.strictStorePkgContentCheck
  });
  const requestPackage = resolveAndFetch.bind(null, {
    engineStrict: opts3.engineStrict,
    nodeVersion: opts3.nodeVersion,
    pnpmVersion: opts3.pnpmVersion,
    force: opts3.force,
    fetchPackageToStore,
    requestsQueue,
    resolve: opts3.resolve,
    storeDir: opts3.storeDir,
    fetchers: opts3.fetchers,
    customFetchers: opts3.customFetchers
  });
  return Object.assign(requestPackage, {
    fetchPackageToStore,
    getFilesIndexFilePath: getFilesIndexFilePath.bind(null, {
      storeDir: opts3.storeDir,
      virtualStoreDirMaxLength: opts3.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;
  if (!updated && typeof previousIntegrity === "string" && !resolution.type && !resolution.integrity) {
    resolution.integrity = previousIntegrity;
  }
  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
  }));
  const fetcherForResolution = resolution.type === "variations" ? void 0 : await pickFetcher(ctx.fetchers, resolution, {
    customFetchers: ctx.customFetchers,
    packageId: id
  });
  const resolutionNeedsFetchHook = fetcherForResolution?.resolutionNeedsFetch;
  const resolutionNeedsFetch = typeof resolutionNeedsFetchHook === "function" ? resolutionNeedsFetchHook(resolution) : false;
  if ((options.skipFetch === true || isInstallable === false) && !resolutionNeedsFetch && !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,
    populateMissingIntegrity: resolutionNeedsFetch,
    pickedFetcher: fetcherForResolution,
    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 (resolution.type !== "variations" && fetchedResult.integrity != null && getExpectedIntegrity2(resolution) == null) {
      resolution.integrity = fetchedResult.integrity;
    }
  }
  let fetching = fetchResult.fetching;
  if (resolutionNeedsFetch) {
    let populating;
    fetching = () => {
      populating ??= fetchResult.fetching().then((fetchedResult) => {
        if (fetchedResult.integrity != null && getExpectedIntegrity2(resolution) == null) {
          resolution.integrity = fetchedResult.integrity;
        }
        return fetchedResult;
      }).catch((err2) => {
        populating = void 0;
        throw err2;
      });
      return populating;
    };
  }
  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,
    filesIndexFile: fetchResult.filesIndexFile,
    resolutionNeedsFetch
  };
}
function getFilesIndexFilePath(ctx, opts3) {
  const targetRelative = depPathToFilename(opts3.pkg.id, ctx.virtualStoreDirMaxLength);
  const target2 = path78.join(ctx.storeDir, targetRelative);
  const built = !opts3.ignoreScripts;
  let resolution;
  if (opts3.pkg.resolution.type === "variations") {
    resolution = findResolution(opts3.pkg.resolution.variants, opts3.supportedArchitectures);
  } else {
    resolution = opts3.pkg.resolution;
  }
  return {
    target: target2,
    filesIndexFile: pickStoreIndexKey(resolution, opts3.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, opts3) {
  if (!opts3.pkg.name) {
    opts3.fetchRawManifest = true;
  }
  if (!ctx.fetchingLocker.has(opts3.pkg.id)) {
    const fetching = pDefer();
    const { filesIndexFile, target: target2, resolution } = getFilesIndexFilePath(ctx, opts3);
    doFetchToStore(filesIndexFile, fetching, target2, resolution);
    ctx.fetchingLocker.set(opts3.pkg.id, {
      fetching: removeKeyOnFail(fetching.promise),
      filesIndexFile,
      fetchRawManifest: opts3.fetchRawManifest
    });
    fetching.promise.then((cache) => {
      progressLogger.debug({
        packageId: opts3.pkg.id,
        requester: opts3.lockfileDir,
        status: cache.files.resolvedFrom === "remote" ? "fetched" : "found_in_store"
      });
      if (cache.files.resolvedFrom !== "remote") {
        return;
      }
      const tmp = ctx.fetchingLocker.get(opts3.pkg.id);
      if (tmp == null)
        return;
      ctx.fetchingLocker.set(opts3.pkg.id, {
        ...tmp,
        fetching: Promise.resolve({
          ...cache,
          files: {
            ...cache.files,
            resolvedFrom: "store"
          }
        })
      });
    }).catch(() => {
      ctx.fetchingLocker.delete(opts3.pkg.id);
    });
  }
  const result2 = ctx.fetchingLocker.get(opts3.pkg.id);
  if (opts3.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 (err2) {
      ctx.fetchingLocker.delete(opts3.pkg.id);
      if (opts3.onFetchError) {
        throw opts3.onFetchError(err2);
      }
      throw err2;
    }
  }
  async function doFetchToStore(filesIndexFile, fetching, target2, resolution) {
    try {
      const isLocalTarballDep = opts3.pkg.id.startsWith("file:");
      const isLocalPkg = resolution.type === "directory";
      const populateMissingIntegrity = opts3.populateMissingIntegrity === true;
      if (!populateMissingIntegrity) {
        assertFetchableResolution(opts3.pkg.id, resolution);
      }
      let refetchingStoredPackage = false;
      if (!opts3.force && !populateMissingIntegrity && (!isLocalTarballDep || await tarballIsUpToDate(opts3.pkg.resolution, target2, opts3.lockfileDir)) && !isLocalPkg) {
        const { verified: verified2, files, bundledManifest } = await ctx.readPkgFromCafs(filesIndexFile, {
          readManifest: opts3.fetchRawManifest,
          expectedPkg: opts3.pkg
        });
        if (verified2) {
          fetching.resolve({
            files,
            bundledManifest
          });
          return;
        }
        refetchingStoredPackage = files?.filesMap != null;
      }
      if (refetchingStoredPackage) {
        packageRequestLogger.warn({
          message: `Refetching ${target2} to store. It was either modified or had no integrity checksums`,
          prefix: opts3.lockfileDir
        });
      }
      const priority = (++ctx.requestsQueue.counter % ctx.requestsQueue.concurrency === 0 ? -1 : 1) * 1e3;
      const fetchedPackage = await ctx.requestsQueue.add(async () => ctx.fetch(opts3.pkg.id, resolution, {
        allowBuild: opts3.allowBuild,
        filesIndexFile,
        lockfileDir: opts3.lockfileDir,
        readManifest: opts3.fetchRawManifest,
        onProgress: (downloaded) => {
          fetchingProgressLogger.debug({
            downloaded,
            packageId: opts3.pkg.id,
            status: "in_progress"
          });
        },
        onStart: (size, attempt) => {
          fetchingProgressLogger.debug({
            attempt,
            packageId: opts3.pkg.id,
            size,
            status: "started"
          });
        },
        pkg: {
          name: opts3.pkg.name,
          version: opts3.pkg.version
        }
      }, opts3.pickedFetcher), { priority });
      const integrity = getExpectedIntegrity2(opts3.pkg.resolution) ?? fetchedPackage.integrity;
      if (isLocalTarballDep && integrity) {
        await fs46.mkdir(target2, { recursive: true });
        await lib_default.writeFile(path78.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 (err2) {
      fetching.reject(err2);
    }
  }
}
async function readBundledManifest(pkgJsonPath) {
  return normalizeBundledManifest(await loadJsonFile(pkgJsonPath));
}
function getExpectedIntegrity2(resolution) {
  const integrity = resolution.integrity;
  return typeof integrity === "string" && integrity.length > 0 ? integrity : void 0;
}
function assertFetchableResolution(depPath, resolution) {
  if (classifyResolution(resolution) !== "remoteTarball")
    return;
  if (getExpectedIntegrity2(resolution) != null)
    return;
  throw new PnpmError("MISSING_TARBALL_INTEGRITY", `Cannot fetch package "${depPath}" from the lockfile: it has no "integrity" field, so the downloaded tarball cannot be verified. Run a fresh install to repair the lockfile.`);
}
async function tarballIsUpToDate(resolution, pkgInStoreLocation, lockfileDir) {
  let currentIntegrity;
  try {
    currentIntegrity = await lib_default.readFile(path78.join(pkgInStoreLocation, TARBALL_INTEGRITY_FILENAME), "utf8");
  } catch (err2) {
    return false;
  }
  if (resolution.integrity && currentIntegrity !== resolution.integrity)
    return false;
  const tarball = path78.join(lockfileDir, resolution.tarball.slice(5));
  const tarballStream = createReadStream2(tarball);
  try {
    return Boolean(await import_ssri4.default.checkStream(tarballStream, currentIntegrity));
  } catch (err2) {
    return false;
  }
}
async function fetcher(fetcherByHostingType, cafs, customFetchers, packageId, resolution, opts3, pickedFetcher) {
  try {
    const fetch3 = pickedFetcher ?? await pickFetcher(fetcherByHostingType, resolution, {
      customFetchers,
      packageId
    });
    const result2 = await fetch3(cafs, resolution, opts3);
    return result2;
  } catch (err2) {
    packageRequestLogger.warn({
      message: `Fetching ${packageId} failed!`,
      prefix: opts3.lockfileDir
    });
    throw err2;
  }
}
var import_detect_libc3, import_ssri4, currentLibc2, TARBALL_INTEGRITY_FILENAME, packageRequestLogger;
var init_packageRequester = __esm({
  "../installing/package-requester/lib/packageRequester.js"() {
    "use strict";
    init_lib40();
    init_lib6();
    init_lib68();
    init_lib2();
    init_lib82();
    init_lib14();
    init_lib3();
    init_lib29();
    init_lib83();
    init_lib30();
    init_lib4();
    import_detect_libc3 = __toESM(require_detect_libc(), 1);
    init_load_json_file();
    init_p_defer();
    init_dist15();
    init_promise_share();
    init_es();
    import_ssri4 = __toESM(require_lib18(), 1);
    TARBALL_INTEGRITY_FILENAME = "tarball-integrity";
    packageRequestLogger = logger("package-requester");
  }
});

// ../installing/package-requester/lib/index.js
var init_lib84 = __esm({
  "../installing/package-requester/lib/index.js"() {
    "use strict";
    init_packageRequester();
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/fs-extra/11.4.0/e439e6fd4e4e9f79a9b4208fa39fea4dd6d7c4364cffe6989d0b5179d7e3aec7/node_modules/fs-extra/lib/fs/index.js
var require_fs7 = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/fs-extra/11.4.0/e439e6fd4e4e9f79a9b4208fa39fea4dd6d7c4364cffe6989d0b5179d7e3aec7/node_modules/fs-extra/lib/fs/index.js"(exports2) {
    "use strict";
    var u2 = require_universalify().fromCallback;
    var fs131 = 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 fs131[key] === "function";
    });
    Object.assign(exports2, fs131);
    api2.forEach((method2) => {
      exports2[method2] = u2(fs131[method2]);
    });
    exports2.exists = function(filename, callback2) {
      if (typeof callback2 === "function") {
        return fs131.exists(filename, callback2);
      }
      return new Promise((resolve4) => {
        return fs131.exists(filename, resolve4);
      });
    };
    exports2.read = function(fd2, buffer3, offset, length, position3, callback2) {
      if (typeof callback2 === "function") {
        return fs131.read(fd2, buffer3, offset, length, position3, callback2);
      }
      return new Promise((resolve4, reject3) => {
        fs131.read(fd2, buffer3, offset, length, position3, (err2, bytesRead, buffer4) => {
          if (err2) return reject3(err2);
          resolve4({ bytesRead, buffer: buffer4 });
        });
      });
    };
    exports2.write = function(fd2, buffer3, ...args) {
      if (typeof args[args.length - 1] === "function") {
        return fs131.write(fd2, buffer3, ...args);
      }
      return new Promise((resolve4, reject3) => {
        fs131.write(fd2, buffer3, ...args, (err2, bytesWritten, buffer4) => {
          if (err2) return reject3(err2);
          resolve4({ bytesWritten, buffer: buffer4 });
        });
      });
    };
    exports2.readv = function(fd2, buffers, ...args) {
      if (typeof args[args.length - 1] === "function") {
        return fs131.readv(fd2, buffers, ...args);
      }
      return new Promise((resolve4, reject3) => {
        fs131.readv(fd2, buffers, ...args, (err2, bytesRead, buffers2) => {
          if (err2) return reject3(err2);
          resolve4({ bytesRead, buffers: buffers2 });
        });
      });
    };
    exports2.writev = function(fd2, buffers, ...args) {
      if (typeof args[args.length - 1] === "function") {
        return fs131.writev(fd2, buffers, ...args);
      }
      return new Promise((resolve4, reject3) => {
        fs131.writev(fd2, buffers, ...args, (err2, bytesWritten, buffers2) => {
          if (err2) return reject3(err2);
          resolve4({ bytesWritten, buffers: buffers2 });
        });
      });
    };
    if (typeof fs131.realpath.native === "function") {
      exports2.realpath.native = u2(fs131.realpath.native);
    } else {
      process.emitWarning(
        "fs.realpath.native is not a function. Is fs being monkey-patched?",
        "Warning",
        "fs-extra-WARN0003"
      );
    }
  }
});

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

// ../../../../../setup-pnpm/store/v11/links/@/fs-extra/11.4.0/e439e6fd4e4e9f79a9b4208fa39fea4dd6d7c4364cffe6989d0b5179d7e3aec7/node_modules/fs-extra/lib/mkdirs/make-dir.js
var require_make_dir2 = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/fs-extra/11.4.0/e439e6fd4e4e9f79a9b4208fa39fea4dd6d7c4364cffe6989d0b5179d7e3aec7/node_modules/fs-extra/lib/mkdirs/make-dir.js"(exports2, module2) {
    "use strict";
    var fs131 = require_fs7();
    var { checkPath } = require_utils13();
    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 fs131.mkdir(dir, {
        mode: getMode(options),
        recursive: true
      });
    };
    module2.exports.makeDirSync = (dir, options) => {
      checkPath(dir);
      return fs131.mkdirSync(dir, {
        mode: getMode(options),
        recursive: true
      });
    };
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/fs-extra/11.4.0/e439e6fd4e4e9f79a9b4208fa39fea4dd6d7c4364cffe6989d0b5179d7e3aec7/node_modules/fs-extra/lib/mkdirs/index.js
var require_mkdirs2 = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/fs-extra/11.4.0/e439e6fd4e4e9f79a9b4208fa39fea4dd6d7c4364cffe6989d0b5179d7e3aec7/node_modules/fs-extra/lib/mkdirs/index.js"(exports2, module2) {
    "use strict";
    var u2 = require_universalify().fromPromise;
    var { makeDir: _makeDir, makeDirSync } = require_make_dir2();
    var makeDir = u2(_makeDir);
    module2.exports = {
      mkdirs: makeDir,
      mkdirsSync: makeDirSync,
      // alias
      mkdirp: makeDir,
      mkdirpSync: makeDirSync,
      ensureDir: makeDir,
      ensureDirSync: makeDirSync
    };
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/fs-extra/11.4.0/e439e6fd4e4e9f79a9b4208fa39fea4dd6d7c4364cffe6989d0b5179d7e3aec7/node_modules/fs-extra/lib/path-exists/index.js
var require_path_exists3 = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/fs-extra/11.4.0/e439e6fd4e4e9f79a9b4208fa39fea4dd6d7c4364cffe6989d0b5179d7e3aec7/node_modules/fs-extra/lib/path-exists/index.js"(exports2, module2) {
    "use strict";
    var u2 = require_universalify().fromPromise;
    var fs131 = require_fs7();
    function pathExists3(path240) {
      return fs131.access(path240).then(() => true).catch(() => false);
    }
    module2.exports = {
      pathExists: u2(pathExists3),
      pathExistsSync: fs131.existsSync
    };
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/fs-extra/11.4.0/e439e6fd4e4e9f79a9b4208fa39fea4dd6d7c4364cffe6989d0b5179d7e3aec7/node_modules/fs-extra/lib/util/utimes.js
var require_utimes2 = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/fs-extra/11.4.0/e439e6fd4e4e9f79a9b4208fa39fea4dd6d7c4364cffe6989d0b5179d7e3aec7/node_modules/fs-extra/lib/util/utimes.js"(exports2, module2) {
    "use strict";
    var fs131 = require_fs7();
    var u2 = require_universalify().fromPromise;
    async function utimesMillis(path240, atime, mtime) {
      const fd2 = await fs131.open(path240, "r+");
      let error = null;
      try {
        await fs131.futimes(fd2, atime, mtime);
      } catch (futimesErr) {
        error = futimesErr;
      } finally {
        try {
          await fs131.close(fd2);
        } catch (closeErr) {
          if (!error) error = closeErr;
        }
      }
      if (error) {
        throw error;
      }
    }
    function utimesMillisSync(path240, atime, mtime) {
      const fd2 = fs131.openSync(path240, "r+");
      let error = null;
      try {
        fs131.futimesSync(fd2, atime, mtime);
      } catch (futimesErr) {
        error = futimesErr;
      } finally {
        try {
          fs131.closeSync(fd2);
        } catch (closeErr) {
          if (!error) error = closeErr;
        }
      }
      if (error) {
        throw error;
      }
    }
    module2.exports = {
      utimesMillis: u2(utimesMillis),
      utimesMillisSync
    };
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/fs-extra/11.4.0/e439e6fd4e4e9f79a9b4208fa39fea4dd6d7c4364cffe6989d0b5179d7e3aec7/node_modules/fs-extra/lib/util/stat.js
var require_stat2 = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/fs-extra/11.4.0/e439e6fd4e4e9f79a9b4208fa39fea4dd6d7c4364cffe6989d0b5179d7e3aec7/node_modules/fs-extra/lib/util/stat.js"(exports2, module2) {
    "use strict";
    var fs131 = require_fs7();
    var path240 = __require("path");
    var u2 = require_universalify().fromPromise;
    function getStats2(src2, dest, opts3) {
      const statFunc = opts3.dereference ? (file) => fs131.stat(file, { bigint: true }) : (file) => fs131.lstat(file, { bigint: true });
      return Promise.all([
        statFunc(src2),
        statFunc(dest).catch((err2) => {
          if (err2.code === "ENOENT") return null;
          throw err2;
        })
      ]).then(([srcStat, destStat]) => ({ srcStat, destStat }));
    }
    function getStatsSync(src2, dest, opts3) {
      let destStat;
      const statFunc = opts3.dereference ? (file) => fs131.statSync(file, { bigint: true }) : (file) => fs131.lstatSync(file, { bigint: true });
      const srcStat = statFunc(src2);
      try {
        destStat = statFunc(dest);
      } catch (err2) {
        if (err2.code === "ENOENT") return { srcStat, destStat: null };
        throw err2;
      }
      return { srcStat, destStat };
    }
    async function checkPaths(src2, dest, funcName, opts3) {
      const { srcStat, destStat } = await getStats2(src2, dest, opts3);
      if (destStat) {
        if (areIdentical(srcStat, destStat)) {
          const srcBaseName = path240.basename(src2);
          const destBaseName = path240.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, opts3) {
      const { srcStat, destStat } = getStatsSync(src2, dest, opts3);
      if (destStat) {
        if (areIdentical(srcStat, destStat)) {
          const srcBaseName = path240.basename(src2);
          const destBaseName = path240.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 = path240.resolve(path240.dirname(src2));
      const destParent = path240.resolve(path240.dirname(dest));
      if (destParent === srcParent || destParent === path240.parse(destParent).root) return;
      let destStat;
      try {
        destStat = await fs131.stat(destParent, { bigint: true });
      } catch (err2) {
        if (err2.code === "ENOENT") return checkParentPaths(src2, srcStat, destParent, funcName);
        throw err2;
      }
      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 = path240.resolve(path240.dirname(src2));
      const destParent = path240.resolve(path240.dirname(dest));
      if (destParent === srcParent || destParent === path240.parse(destParent).root) return;
      let destStat;
      try {
        destStat = fs131.statSync(destParent, { bigint: true });
      } catch (err2) {
        if (err2.code === "ENOENT") return checkParentPathsSync(src2, srcStat, destParent, funcName);
        throw err2;
      }
      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 = path240.resolve(src2).split(path240.sep).filter((i4) => i4);
      const destArr = path240.resolve(dest).split(path240.sep).filter((i4) => i4);
      return srcArr.every((cur, i4) => destArr[i4] === cur);
    }
    function errMsg(src2, dest, funcName) {
      return `Cannot ${funcName} '${src2}' to a subdirectory of itself, '${dest}'.`;
    }
    module2.exports = {
      // checkPaths
      checkPaths: u2(checkPaths),
      checkPathsSync,
      // checkParent
      checkParentPaths: u2(checkParentPaths),
      checkParentPathsSync,
      // Misc
      isSrcSubdir,
      areIdentical
    };
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/fs-extra/11.4.0/e439e6fd4e4e9f79a9b4208fa39fea4dd6d7c4364cffe6989d0b5179d7e3aec7/node_modules/fs-extra/lib/util/async.js
var require_async8 = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/fs-extra/11.4.0/e439e6fd4e4e9f79a9b4208fa39fea4dd6d7c4364cffe6989d0b5179d7e3aec7/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,
            (err2) => err2 ?? new Error("unknown error")
          )
        );
      }
      await Promise.all(
        promises.map(
          (promise2) => promise2.then((possibleErr) => {
            if (possibleErr !== null) throw possibleErr;
          })
        )
      );
    }
    module2.exports = {
      asyncIteratorConcurrentProcess
    };
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/fs-extra/11.4.0/e439e6fd4e4e9f79a9b4208fa39fea4dd6d7c4364cffe6989d0b5179d7e3aec7/node_modules/fs-extra/lib/copy/copy.js
var require_copy3 = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/fs-extra/11.4.0/e439e6fd4e4e9f79a9b4208fa39fea4dd6d7c4364cffe6989d0b5179d7e3aec7/node_modules/fs-extra/lib/copy/copy.js"(exports2, module2) {
    "use strict";
    var fs131 = require_fs7();
    var path240 = __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, opts3 = {}) {
      if (typeof opts3 === "function") {
        opts3 = { filter: opts3 };
      }
      opts3.clobber = "clobber" in opts3 ? !!opts3.clobber : true;
      opts3.overwrite = "overwrite" in opts3 ? !!opts3.overwrite : opts3.clobber;
      if (opts3.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", opts3);
      await stat2.checkParentPaths(src2, srcStat, dest, "copy");
      const include = await runFilter(src2, dest, opts3);
      if (!include) return;
      const destParent = path240.dirname(dest);
      const dirExists = await pathExists3(destParent);
      if (!dirExists) {
        await mkdirs(destParent);
      }
      await getStatsAndPerformCopy(destStat, src2, dest, opts3);
    }
    async function runFilter(src2, dest, opts3) {
      if (!opts3.filter) return true;
      return opts3.filter(src2, dest);
    }
    async function getStatsAndPerformCopy(destStat, src2, dest, opts3) {
      const statFn = opts3.dereference ? fs131.stat : fs131.lstat;
      const srcStat = await statFn(src2);
      if (srcStat.isDirectory()) return onDir(srcStat, destStat, src2, dest, opts3);
      if (srcStat.isFile() || srcStat.isCharacterDevice() || srcStat.isBlockDevice()) return onFile(srcStat, destStat, src2, dest, opts3);
      if (srcStat.isSymbolicLink()) return onLink(destStat, src2, dest, opts3);
      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, opts3) {
      if (!destStat) return copyFile(srcStat, src2, dest, opts3);
      if (opts3.overwrite) {
        await fs131.unlink(dest);
        return copyFile(srcStat, src2, dest, opts3);
      }
      if (opts3.errorOnExist) {
        throw new Error(`'${dest}' already exists`);
      }
    }
    async function copyFile(srcStat, src2, dest, opts3) {
      await fs131.copyFile(src2, dest);
      if (opts3.preserveTimestamps) {
        if (fileIsNotWritable(srcStat.mode)) {
          await makeFileWritable(dest, srcStat.mode);
        }
        const updatedSrcStat = await fs131.stat(src2);
        await utimesMillis(dest, updatedSrcStat.atime, updatedSrcStat.mtime);
      }
      return fs131.chmod(dest, srcStat.mode);
    }
    function fileIsNotWritable(srcMode) {
      return (srcMode & 128) === 0;
    }
    function makeFileWritable(dest, srcMode) {
      return fs131.chmod(dest, srcMode | 128);
    }
    async function onDir(srcStat, destStat, src2, dest, opts3) {
      if (!destStat) {
        await fs131.mkdir(dest);
      }
      await asyncIteratorConcurrentProcess(await fs131.opendir(src2), async (item) => {
        const srcItem = path240.join(src2, item.name);
        const destItem = path240.join(dest, item.name);
        const include = await runFilter(srcItem, destItem, opts3);
        if (include) {
          const { destStat: destStat2 } = await stat2.checkPaths(srcItem, destItem, "copy", opts3);
          await getStatsAndPerformCopy(destStat2, srcItem, destItem, opts3);
        }
      });
      if (!destStat) {
        await fs131.chmod(dest, srcStat.mode);
      }
    }
    async function onLink(destStat, src2, dest, opts3) {
      let resolvedSrc = await fs131.readlink(src2);
      if (opts3.dereference) {
        resolvedSrc = path240.resolve(process.cwd(), resolvedSrc);
      }
      if (!destStat) {
        return fs131.symlink(resolvedSrc, dest);
      }
      let resolvedDest = null;
      try {
        resolvedDest = await fs131.readlink(dest);
      } catch (e) {
        if (e.code === "EINVAL" || e.code === "UNKNOWN") return fs131.symlink(resolvedSrc, dest);
        throw e;
      }
      if (opts3.dereference) {
        resolvedDest = path240.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 fs131.unlink(dest);
      return fs131.symlink(resolvedSrc, dest);
    }
    module2.exports = copy2;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/fs-extra/11.4.0/e439e6fd4e4e9f79a9b4208fa39fea4dd6d7c4364cffe6989d0b5179d7e3aec7/node_modules/fs-extra/lib/copy/copy-sync.js
var require_copy_sync2 = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/fs-extra/11.4.0/e439e6fd4e4e9f79a9b4208fa39fea4dd6d7c4364cffe6989d0b5179d7e3aec7/node_modules/fs-extra/lib/copy/copy-sync.js"(exports2, module2) {
    "use strict";
    var fs131 = require_graceful_fs();
    var path240 = __require("path");
    var mkdirsSync = require_mkdirs2().mkdirsSync;
    var utimesMillisSync = require_utimes2().utimesMillisSync;
    var stat2 = require_stat2();
    function copySync2(src2, dest, opts3) {
      if (typeof opts3 === "function") {
        opts3 = { filter: opts3 };
      }
      opts3 = opts3 || {};
      opts3.clobber = "clobber" in opts3 ? !!opts3.clobber : true;
      opts3.overwrite = "overwrite" in opts3 ? !!opts3.overwrite : opts3.clobber;
      if (opts3.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", opts3);
      stat2.checkParentPathsSync(src2, srcStat, dest, "copy");
      if (opts3.filter && !opts3.filter(src2, dest)) return;
      const destParent = path240.dirname(dest);
      if (!fs131.existsSync(destParent)) mkdirsSync(destParent);
      return getStats2(destStat, src2, dest, opts3);
    }
    function getStats2(destStat, src2, dest, opts3) {
      const statSync4 = opts3.dereference ? fs131.statSync : fs131.lstatSync;
      const srcStat = statSync4(src2);
      if (srcStat.isDirectory()) return onDir(srcStat, destStat, src2, dest, opts3);
      else if (srcStat.isFile() || srcStat.isCharacterDevice() || srcStat.isBlockDevice()) return onFile(srcStat, destStat, src2, dest, opts3);
      else if (srcStat.isSymbolicLink()) return onLink(destStat, src2, dest, opts3);
      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, opts3) {
      if (!destStat) return copyFile(srcStat, src2, dest, opts3);
      return mayCopyFile(srcStat, src2, dest, opts3);
    }
    function mayCopyFile(srcStat, src2, dest, opts3) {
      if (opts3.overwrite) {
        fs131.unlinkSync(dest);
        return copyFile(srcStat, src2, dest, opts3);
      } else if (opts3.errorOnExist) {
        throw new Error(`'${dest}' already exists`);
      }
    }
    function copyFile(srcStat, src2, dest, opts3) {
      fs131.copyFileSync(src2, dest);
      if (opts3.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 fs131.chmodSync(dest, srcMode);
    }
    function setDestTimestamps(src2, dest) {
      const updatedSrcStat = fs131.statSync(src2);
      return utimesMillisSync(dest, updatedSrcStat.atime, updatedSrcStat.mtime);
    }
    function onDir(srcStat, destStat, src2, dest, opts3) {
      if (!destStat) return mkDirAndCopy(srcStat.mode, src2, dest, opts3);
      return copyDir(src2, dest, opts3);
    }
    function mkDirAndCopy(srcMode, src2, dest, opts3) {
      fs131.mkdirSync(dest);
      copyDir(src2, dest, opts3);
      return setDestMode(dest, srcMode);
    }
    function copyDir(src2, dest, opts3) {
      const dir = fs131.opendirSync(src2);
      try {
        let dirent;
        while ((dirent = dir.readSync()) !== null) {
          copyDirItem(dirent.name, src2, dest, opts3);
        }
      } finally {
        dir.closeSync();
      }
    }
    function copyDirItem(item, src2, dest, opts3) {
      const srcItem = path240.join(src2, item);
      const destItem = path240.join(dest, item);
      if (opts3.filter && !opts3.filter(srcItem, destItem)) return;
      const { destStat } = stat2.checkPathsSync(srcItem, destItem, "copy", opts3);
      return getStats2(destStat, srcItem, destItem, opts3);
    }
    function onLink(destStat, src2, dest, opts3) {
      let resolvedSrc = fs131.readlinkSync(src2);
      if (opts3.dereference) {
        resolvedSrc = path240.resolve(process.cwd(), resolvedSrc);
      }
      if (!destStat) {
        return fs131.symlinkSync(resolvedSrc, dest);
      } else {
        let resolvedDest;
        try {
          resolvedDest = fs131.readlinkSync(dest);
        } catch (err2) {
          if (err2.code === "EINVAL" || err2.code === "UNKNOWN") return fs131.symlinkSync(resolvedSrc, dest);
          throw err2;
        }
        if (opts3.dereference) {
          resolvedDest = path240.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) {
      fs131.unlinkSync(dest);
      return fs131.symlinkSync(resolvedSrc, dest);
    }
    module2.exports = copySync2;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/fs-extra/11.4.0/e439e6fd4e4e9f79a9b4208fa39fea4dd6d7c4364cffe6989d0b5179d7e3aec7/node_modules/fs-extra/lib/copy/index.js
var require_copy4 = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/fs-extra/11.4.0/e439e6fd4e4e9f79a9b4208fa39fea4dd6d7c4364cffe6989d0b5179d7e3aec7/node_modules/fs-extra/lib/copy/index.js"(exports2, module2) {
    "use strict";
    var u2 = require_universalify().fromPromise;
    module2.exports = {
      copy: u2(require_copy3()),
      copySync: require_copy_sync2()
    };
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/fs-extra/11.4.0/e439e6fd4e4e9f79a9b4208fa39fea4dd6d7c4364cffe6989d0b5179d7e3aec7/node_modules/fs-extra/lib/remove/index.js
var require_remove2 = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/fs-extra/11.4.0/e439e6fd4e4e9f79a9b4208fa39fea4dd6d7c4364cffe6989d0b5179d7e3aec7/node_modules/fs-extra/lib/remove/index.js"(exports2, module2) {
    "use strict";
    var fs131 = require_graceful_fs();
    var u2 = require_universalify().fromCallback;
    function remove(path240, callback2) {
      fs131.rm(path240, { recursive: true, force: true }, callback2);
    }
    function removeSync(path240) {
      fs131.rmSync(path240, { recursive: true, force: true });
    }
    module2.exports = {
      remove: u2(remove),
      removeSync
    };
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/fs-extra/11.4.0/e439e6fd4e4e9f79a9b4208fa39fea4dd6d7c4364cffe6989d0b5179d7e3aec7/node_modules/fs-extra/lib/empty/index.js
var require_empty2 = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/fs-extra/11.4.0/e439e6fd4e4e9f79a9b4208fa39fea4dd6d7c4364cffe6989d0b5179d7e3aec7/node_modules/fs-extra/lib/empty/index.js"(exports2, module2) {
    "use strict";
    var u2 = require_universalify().fromPromise;
    var fs131 = require_fs7();
    var path240 = __require("path");
    var mkdir2 = require_mkdirs2();
    var remove = require_remove2();
    var emptyDir = u2(async function emptyDir2(dir) {
      let items;
      try {
        items = await fs131.readdir(dir);
      } catch {
        return mkdir2.mkdirs(dir);
      }
      return Promise.all(items.map((item) => remove.remove(path240.join(dir, item))));
    });
    function emptyDirSync(dir) {
      let items;
      try {
        items = fs131.readdirSync(dir);
      } catch {
        return mkdir2.mkdirsSync(dir);
      }
      items.forEach((item) => {
        item = path240.join(dir, item);
        remove.removeSync(item);
      });
    }
    module2.exports = {
      emptyDirSync,
      emptydirSync: emptyDirSync,
      emptyDir,
      emptydir: emptyDir
    };
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/fs-extra/11.4.0/e439e6fd4e4e9f79a9b4208fa39fea4dd6d7c4364cffe6989d0b5179d7e3aec7/node_modules/fs-extra/lib/ensure/file.js
var require_file2 = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/fs-extra/11.4.0/e439e6fd4e4e9f79a9b4208fa39fea4dd6d7c4364cffe6989d0b5179d7e3aec7/node_modules/fs-extra/lib/ensure/file.js"(exports2, module2) {
    "use strict";
    var u2 = require_universalify().fromPromise;
    var path240 = __require("path");
    var fs131 = require_fs7();
    var mkdir2 = require_mkdirs2();
    async function createFile(file) {
      let stats;
      try {
        stats = await fs131.stat(file);
      } catch {
      }
      if (stats && stats.isFile()) return;
      const dir = path240.dirname(file);
      let dirStats = null;
      try {
        dirStats = await fs131.stat(dir);
      } catch (err2) {
        if (err2.code === "ENOENT") {
          await mkdir2.mkdirs(dir);
          await fs131.writeFile(file, "");
          return;
        } else {
          throw err2;
        }
      }
      if (dirStats.isDirectory()) {
        await fs131.writeFile(file, "");
      } else {
        await fs131.readdir(dir);
      }
    }
    function createFileSync(file) {
      let stats;
      try {
        stats = fs131.statSync(file);
      } catch {
      }
      if (stats && stats.isFile()) return;
      const dir = path240.dirname(file);
      try {
        if (!fs131.statSync(dir).isDirectory()) {
          fs131.readdirSync(dir);
        }
      } catch (err2) {
        if (err2 && err2.code === "ENOENT") mkdir2.mkdirsSync(dir);
        else throw err2;
      }
      fs131.writeFileSync(file, "");
    }
    module2.exports = {
      createFile: u2(createFile),
      createFileSync
    };
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/fs-extra/11.4.0/e439e6fd4e4e9f79a9b4208fa39fea4dd6d7c4364cffe6989d0b5179d7e3aec7/node_modules/fs-extra/lib/ensure/link.js
var require_link2 = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/fs-extra/11.4.0/e439e6fd4e4e9f79a9b4208fa39fea4dd6d7c4364cffe6989d0b5179d7e3aec7/node_modules/fs-extra/lib/ensure/link.js"(exports2, module2) {
    "use strict";
    var u2 = require_universalify().fromPromise;
    var path240 = __require("path");
    var fs131 = 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 fs131.lstat(dstpath, { bigint: true });
      } catch {
      }
      let srcStat;
      try {
        srcStat = await fs131.lstat(srcpath, { bigint: true });
      } catch (err2) {
        err2.message = err2.message.replace("lstat", "ensureLink");
        throw err2;
      }
      if (dstStat && areIdentical(srcStat, dstStat)) return;
      const dir = path240.dirname(dstpath);
      const dirExists = await pathExists3(dir);
      if (!dirExists) {
        await mkdir2.mkdirs(dir);
      }
      await fs131.link(srcpath, dstpath);
    }
    function createLinkSync(srcpath, dstpath) {
      let dstStat;
      try {
        dstStat = fs131.lstatSync(dstpath, { bigint: true });
      } catch {
      }
      try {
        const srcStat = fs131.lstatSync(srcpath, { bigint: true });
        if (dstStat && areIdentical(srcStat, dstStat)) return;
      } catch (err2) {
        err2.message = err2.message.replace("lstat", "ensureLink");
        throw err2;
      }
      const dir = path240.dirname(dstpath);
      const dirExists = fs131.existsSync(dir);
      if (dirExists) return fs131.linkSync(srcpath, dstpath);
      mkdir2.mkdirsSync(dir);
      return fs131.linkSync(srcpath, dstpath);
    }
    module2.exports = {
      createLink: u2(createLink),
      createLinkSync
    };
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/fs-extra/11.4.0/e439e6fd4e4e9f79a9b4208fa39fea4dd6d7c4364cffe6989d0b5179d7e3aec7/node_modules/fs-extra/lib/ensure/symlink-paths.js
var require_symlink_paths2 = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/fs-extra/11.4.0/e439e6fd4e4e9f79a9b4208fa39fea4dd6d7c4364cffe6989d0b5179d7e3aec7/node_modules/fs-extra/lib/ensure/symlink-paths.js"(exports2, module2) {
    "use strict";
    var path240 = __require("path");
    var fs131 = require_fs7();
    var { pathExists: pathExists3 } = require_path_exists3();
    var u2 = require_universalify().fromPromise;
    async function symlinkPaths(srcpath, dstpath) {
      if (path240.isAbsolute(srcpath)) {
        try {
          await fs131.lstat(srcpath);
        } catch (err2) {
          err2.message = err2.message.replace("lstat", "ensureSymlink");
          throw err2;
        }
        return {
          toCwd: srcpath,
          toDst: srcpath
        };
      }
      const dstdir = path240.dirname(dstpath);
      const relativeToDst = path240.join(dstdir, srcpath);
      const exists = await pathExists3(relativeToDst);
      if (exists) {
        return {
          toCwd: relativeToDst,
          toDst: srcpath
        };
      }
      try {
        await fs131.lstat(srcpath);
      } catch (err2) {
        err2.message = err2.message.replace("lstat", "ensureSymlink");
        throw err2;
      }
      return {
        toCwd: srcpath,
        toDst: path240.relative(dstdir, srcpath)
      };
    }
    function symlinkPathsSync(srcpath, dstpath) {
      if (path240.isAbsolute(srcpath)) {
        const exists2 = fs131.existsSync(srcpath);
        if (!exists2) throw new Error("absolute srcpath does not exist");
        return {
          toCwd: srcpath,
          toDst: srcpath
        };
      }
      const dstdir = path240.dirname(dstpath);
      const relativeToDst = path240.join(dstdir, srcpath);
      const exists = fs131.existsSync(relativeToDst);
      if (exists) {
        return {
          toCwd: relativeToDst,
          toDst: srcpath
        };
      }
      const srcExists = fs131.existsSync(srcpath);
      if (!srcExists) throw new Error("relative srcpath does not exist");
      return {
        toCwd: srcpath,
        toDst: path240.relative(dstdir, srcpath)
      };
    }
    module2.exports = {
      symlinkPaths: u2(symlinkPaths),
      symlinkPathsSync
    };
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/fs-extra/11.4.0/e439e6fd4e4e9f79a9b4208fa39fea4dd6d7c4364cffe6989d0b5179d7e3aec7/node_modules/fs-extra/lib/ensure/symlink-type.js
var require_symlink_type2 = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/fs-extra/11.4.0/e439e6fd4e4e9f79a9b4208fa39fea4dd6d7c4364cffe6989d0b5179d7e3aec7/node_modules/fs-extra/lib/ensure/symlink-type.js"(exports2, module2) {
    "use strict";
    var fs131 = require_fs7();
    var u2 = require_universalify().fromPromise;
    async function symlinkType(srcpath, type4) {
      if (type4) return type4;
      let stats;
      try {
        stats = await fs131.lstat(srcpath);
      } catch {
        return "file";
      }
      return stats && stats.isDirectory() ? "dir" : "file";
    }
    function symlinkTypeSync(srcpath, type4) {
      if (type4) return type4;
      let stats;
      try {
        stats = fs131.lstatSync(srcpath);
      } catch {
        return "file";
      }
      return stats && stats.isDirectory() ? "dir" : "file";
    }
    module2.exports = {
      symlinkType: u2(symlinkType),
      symlinkTypeSync
    };
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/fs-extra/11.4.0/e439e6fd4e4e9f79a9b4208fa39fea4dd6d7c4364cffe6989d0b5179d7e3aec7/node_modules/fs-extra/lib/ensure/symlink.js
var require_symlink2 = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/fs-extra/11.4.0/e439e6fd4e4e9f79a9b4208fa39fea4dd6d7c4364cffe6989d0b5179d7e3aec7/node_modules/fs-extra/lib/ensure/symlink.js"(exports2, module2) {
    "use strict";
    var u2 = require_universalify().fromPromise;
    var path240 = __require("path");
    var fs131 = 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 fs131.lstat(dstpath);
      } catch {
      }
      if (stats && stats.isSymbolicLink()) {
        let srcStat;
        if (path240.isAbsolute(srcpath)) {
          srcStat = await fs131.stat(srcpath, { bigint: true });
        } else {
          const dstdir = path240.dirname(dstpath);
          const relativeToDst = path240.join(dstdir, srcpath);
          try {
            srcStat = await fs131.stat(relativeToDst, { bigint: true });
          } catch {
            srcStat = await fs131.stat(srcpath, { bigint: true });
          }
        }
        let dstStat;
        try {
          dstStat = await fs131.stat(dstpath, { bigint: true });
        } catch (err2) {
          if (err2.code !== "ENOENT") throw err2;
        }
        if (dstStat && areIdentical(srcStat, dstStat)) return;
      }
      const relative2 = await symlinkPaths(srcpath, dstpath);
      srcpath = relative2.toDst;
      const toType = await symlinkType(relative2.toCwd, type4);
      const dir = path240.dirname(dstpath);
      if (!await pathExists3(dir)) {
        await mkdirs(dir);
      }
      return fs131.symlink(srcpath, dstpath, toType);
    }
    function createSymlinkSync2(srcpath, dstpath, type4) {
      let stats;
      try {
        stats = fs131.lstatSync(dstpath);
      } catch {
      }
      if (stats && stats.isSymbolicLink()) {
        let srcStat;
        if (path240.isAbsolute(srcpath)) {
          srcStat = fs131.statSync(srcpath, { bigint: true });
        } else {
          const dstdir = path240.dirname(dstpath);
          const relativeToDst = path240.join(dstdir, srcpath);
          try {
            srcStat = fs131.statSync(relativeToDst, { bigint: true });
          } catch {
            srcStat = fs131.statSync(srcpath, { bigint: true });
          }
        }
        let dstStat;
        try {
          dstStat = fs131.statSync(dstpath, { bigint: true });
        } catch (err2) {
          if (err2.code !== "ENOENT") throw err2;
        }
        if (dstStat && areIdentical(srcStat, dstStat)) return;
      }
      const relative2 = symlinkPathsSync(srcpath, dstpath);
      srcpath = relative2.toDst;
      type4 = symlinkTypeSync(relative2.toCwd, type4);
      const dir = path240.dirname(dstpath);
      const exists = fs131.existsSync(dir);
      if (exists) return fs131.symlinkSync(srcpath, dstpath, type4);
      mkdirsSync(dir);
      return fs131.symlinkSync(srcpath, dstpath, type4);
    }
    module2.exports = {
      createSymlink: u2(createSymlink),
      createSymlinkSync: createSymlinkSync2
    };
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/fs-extra/11.4.0/e439e6fd4e4e9f79a9b4208fa39fea4dd6d7c4364cffe6989d0b5179d7e3aec7/node_modules/fs-extra/lib/ensure/index.js
var require_ensure2 = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/fs-extra/11.4.0/e439e6fd4e4e9f79a9b4208fa39fea4dd6d7c4364cffe6989d0b5179d7e3aec7/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
    };
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/fs-extra/11.4.0/e439e6fd4e4e9f79a9b4208fa39fea4dd6d7c4364cffe6989d0b5179d7e3aec7/node_modules/fs-extra/lib/json/jsonfile.js
var require_jsonfile3 = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/fs-extra/11.4.0/e439e6fd4e4e9f79a9b4208fa39fea4dd6d7c4364cffe6989d0b5179d7e3aec7/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
    };
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/fs-extra/11.4.0/e439e6fd4e4e9f79a9b4208fa39fea4dd6d7c4364cffe6989d0b5179d7e3aec7/node_modules/fs-extra/lib/output-file/index.js
var require_output_file2 = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/fs-extra/11.4.0/e439e6fd4e4e9f79a9b4208fa39fea4dd6d7c4364cffe6989d0b5179d7e3aec7/node_modules/fs-extra/lib/output-file/index.js"(exports2, module2) {
    "use strict";
    var u2 = require_universalify().fromPromise;
    var fs131 = require_fs7();
    var path240 = __require("path");
    var mkdir2 = require_mkdirs2();
    var pathExists3 = require_path_exists3().pathExists;
    async function outputFile(file, data, encoding = "utf-8") {
      const dir = path240.dirname(file);
      if (!await pathExists3(dir)) {
        await mkdir2.mkdirs(dir);
      }
      return fs131.writeFile(file, data, encoding);
    }
    function outputFileSync(file, ...args) {
      const dir = path240.dirname(file);
      if (!fs131.existsSync(dir)) {
        mkdir2.mkdirsSync(dir);
      }
      fs131.writeFileSync(file, ...args);
    }
    module2.exports = {
      outputFile: u2(outputFile),
      outputFileSync
    };
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/fs-extra/11.4.0/e439e6fd4e4e9f79a9b4208fa39fea4dd6d7c4364cffe6989d0b5179d7e3aec7/node_modules/fs-extra/lib/json/output-json.js
var require_output_json2 = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/fs-extra/11.4.0/e439e6fd4e4e9f79a9b4208fa39fea4dd6d7c4364cffe6989d0b5179d7e3aec7/node_modules/fs-extra/lib/json/output-json.js"(exports2, module2) {
    "use strict";
    var { stringify: stringify2 } = require_utils8();
    var { outputFile } = require_output_file2();
    async function outputJson(file, data, options = {}) {
      const str2 = stringify2(data, options);
      await outputFile(file, str2, options);
    }
    module2.exports = outputJson;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/fs-extra/11.4.0/e439e6fd4e4e9f79a9b4208fa39fea4dd6d7c4364cffe6989d0b5179d7e3aec7/node_modules/fs-extra/lib/json/output-json-sync.js
var require_output_json_sync2 = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/fs-extra/11.4.0/e439e6fd4e4e9f79a9b4208fa39fea4dd6d7c4364cffe6989d0b5179d7e3aec7/node_modules/fs-extra/lib/json/output-json-sync.js"(exports2, module2) {
    "use strict";
    var { stringify: stringify2 } = require_utils8();
    var { outputFileSync } = require_output_file2();
    function outputJsonSync(file, data, options) {
      const str2 = stringify2(data, options);
      outputFileSync(file, str2, options);
    }
    module2.exports = outputJsonSync;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/fs-extra/11.4.0/e439e6fd4e4e9f79a9b4208fa39fea4dd6d7c4364cffe6989d0b5179d7e3aec7/node_modules/fs-extra/lib/json/index.js
var require_json3 = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/fs-extra/11.4.0/e439e6fd4e4e9f79a9b4208fa39fea4dd6d7c4364cffe6989d0b5179d7e3aec7/node_modules/fs-extra/lib/json/index.js"(exports2, module2) {
    "use strict";
    var u2 = require_universalify().fromPromise;
    var jsonFile = require_jsonfile3();
    jsonFile.outputJson = u2(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;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/fs-extra/11.4.0/e439e6fd4e4e9f79a9b4208fa39fea4dd6d7c4364cffe6989d0b5179d7e3aec7/node_modules/fs-extra/lib/move/move.js
var require_move3 = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/fs-extra/11.4.0/e439e6fd4e4e9f79a9b4208fa39fea4dd6d7c4364cffe6989d0b5179d7e3aec7/node_modules/fs-extra/lib/move/move.js"(exports2, module2) {
    "use strict";
    var fs131 = require_fs7();
    var path240 = __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, opts3 = {}) {
      const overwrite2 = opts3.overwrite || opts3.clobber || false;
      const { srcStat, isChangingCase = false } = await stat2.checkPaths(src2, dest, "move", opts3);
      await stat2.checkParentPaths(src2, srcStat, dest, "move");
      const destParent = path240.dirname(dest);
      const parsedParentPath = path240.parse(destParent);
      if (parsedParentPath.root !== destParent) {
        await mkdirp(destParent);
      }
      return doRename(src2, dest, overwrite2, isChangingCase);
    }
    async function doRename(src2, dest, overwrite2, isChangingCase) {
      if (!isChangingCase) {
        if (overwrite2) {
          await remove(dest);
        } else if (await pathExists3(dest)) {
          throw new Error("dest already exists.");
        }
      }
      try {
        await fs131.rename(src2, dest);
      } catch (err2) {
        if (err2.code !== "EXDEV") {
          throw err2;
        }
        await moveAcrossDevice(src2, dest, overwrite2);
      }
    }
    async function moveAcrossDevice(src2, dest, overwrite2) {
      const opts3 = {
        overwrite: overwrite2,
        errorOnExist: true,
        preserveTimestamps: true
      };
      await copy2(src2, dest, opts3);
      return remove(src2);
    }
    module2.exports = move;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/fs-extra/11.4.0/e439e6fd4e4e9f79a9b4208fa39fea4dd6d7c4364cffe6989d0b5179d7e3aec7/node_modules/fs-extra/lib/move/move-sync.js
var require_move_sync2 = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/fs-extra/11.4.0/e439e6fd4e4e9f79a9b4208fa39fea4dd6d7c4364cffe6989d0b5179d7e3aec7/node_modules/fs-extra/lib/move/move-sync.js"(exports2, module2) {
    "use strict";
    var fs131 = require_graceful_fs();
    var path240 = __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, opts3) {
      opts3 = opts3 || {};
      const overwrite2 = opts3.overwrite || opts3.clobber || false;
      const { srcStat, isChangingCase = false } = stat2.checkPathsSync(src2, dest, "move", opts3);
      stat2.checkParentPathsSync(src2, srcStat, dest, "move");
      if (!isParentRoot(dest)) mkdirpSync(path240.dirname(dest));
      return doRename(src2, dest, overwrite2, isChangingCase);
    }
    function isParentRoot(dest) {
      const parent = path240.dirname(dest);
      const parsedPath = path240.parse(parent);
      return parsedPath.root === parent;
    }
    function doRename(src2, dest, overwrite2, isChangingCase) {
      if (isChangingCase) return rename(src2, dest, overwrite2);
      if (overwrite2) {
        removeSync(dest);
        return rename(src2, dest, overwrite2);
      }
      if (fs131.existsSync(dest)) throw new Error("dest already exists.");
      return rename(src2, dest, overwrite2);
    }
    function rename(src2, dest, overwrite2) {
      try {
        fs131.renameSync(src2, dest);
      } catch (err2) {
        if (err2.code !== "EXDEV") throw err2;
        return moveAcrossDevice(src2, dest, overwrite2);
      }
    }
    function moveAcrossDevice(src2, dest, overwrite2) {
      const opts3 = {
        overwrite: overwrite2,
        errorOnExist: true,
        preserveTimestamps: true
      };
      copySync2(src2, dest, opts3);
      return removeSync(src2);
    }
    module2.exports = moveSync;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/fs-extra/11.4.0/e439e6fd4e4e9f79a9b4208fa39fea4dd6d7c4364cffe6989d0b5179d7e3aec7/node_modules/fs-extra/lib/move/index.js
var require_move4 = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/fs-extra/11.4.0/e439e6fd4e4e9f79a9b4208fa39fea4dd6d7c4364cffe6989d0b5179d7e3aec7/node_modules/fs-extra/lib/move/index.js"(exports2, module2) {
    "use strict";
    var u2 = require_universalify().fromPromise;
    module2.exports = {
      move: u2(require_move3()),
      moveSync: require_move_sync2()
    };
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/fs-extra/11.4.0/e439e6fd4e4e9f79a9b4208fa39fea4dd6d7c4364cffe6989d0b5179d7e3aec7/node_modules/fs-extra/lib/index.js
var require_lib23 = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/fs-extra/11.4.0/e439e6fd4e4e9f79a9b4208fa39fea4dd6d7c4364cffe6989d0b5179d7e3aec7/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()
    };
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/make-empty-dir/4.0.0/3607722a2f7d328bdf182e4db3290941113e732fd2d785b1a5837ab89bb24489/node_modules/make-empty-dir/index.js
import fs47 from "node:fs";
import path79 from "node:path";
async function makeEmptyDir(dir, opts3) {
  if (opts3 && opts3.recursive) {
    await fs47.promises.mkdir(path79.dirname(dir), { recursive: true });
  }
  try {
    await fs47.promises.mkdir(dir);
    return "created";
  } catch (err2) {
    if (err2.code === "EEXIST") {
      await removeContentsOfDir(dir);
      return "emptied";
    }
    throw err2;
  }
}
async function removeContentsOfDir(dir) {
  const items = await fs47.promises.readdir(dir);
  for (const item of items) {
    await rimraf(path79.join(dir, item));
  }
}
function makeEmptyDirSync(dir, opts3) {
  if (opts3 && opts3.recursive) {
    fs47.mkdirSync(path79.dirname(dir), { recursive: true });
  }
  try {
    fs47.mkdirSync(dir);
    return "created";
  } catch (err2) {
    if (err2.code === "EEXIST") {
      removeContentsOfDirSync(dir);
      return "emptied";
    }
    throw err2;
  }
}
function removeContentsOfDirSync(dir) {
  const items = fs47.readdirSync(dir);
  for (const item of items) {
    rimrafSync(path79.join(dir, item));
  }
}
var init_make_empty_dir = __esm({
  "../../../../../setup-pnpm/store/v11/links/@/make-empty-dir/4.0.0/3607722a2f7d328bdf182e4db3290941113e732fd2d785b1a5837ab89bb24489/node_modules/make-empty-dir/index.js"() {
    init_rimraf();
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/truncate-utf8-bytes/1.0.2/a125ab6f857e769c1c35dafd31e6b108b9a2517e088148da14ad32169c2567ee/node_modules/truncate-utf8-bytes/lib/truncate.js
var require_truncate2 = __commonJS({
  "../../../../../setup-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, byteLength2) {
      if (typeof string !== "string") {
        throw new Error("Input must be string");
      }
      var charLength = string.length;
      var curByteLength = 0;
      var codePoint;
      var segment;
      for (var i4 = 0; i4 < charLength; i4 += 1) {
        codePoint = string.charCodeAt(i4);
        segment = string[i4];
        if (isHighSurrogate(codePoint) && isLowSurrogate(string.charCodeAt(i4 + 1))) {
          i4 += 1;
          segment += string[i4];
        }
        curByteLength += getLength(segment);
        if (curByteLength === byteLength2) {
          return string.slice(0, i4 + 1);
        } else if (curByteLength > byteLength2) {
          return string.slice(0, i4 - segment.length + 1);
        }
      }
      return string;
    };
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/truncate-utf8-bytes/1.0.2/a125ab6f857e769c1c35dafd31e6b108b9a2517e088148da14ad32169c2567ee/node_modules/truncate-utf8-bytes/index.js
var require_truncate_utf8_bytes = __commonJS({
  "../../../../../setup-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);
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/sanitize-filename/1.6.4/5f553bde92425a76e0b51eddf2a9a22faa7626146298aecdcafaf8de748aa2e6/node_modules/sanitize-filename/index.js
var require_sanitize_filename = __commonJS({
  "../../../../../setup-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 sanitize2(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 = sanitize2(input, replacement);
      if (replacement === "") {
        return output;
      }
      return sanitize2(output, "");
    };
  }
});

// ../fs/indexed-pkg-importer/lib/importIndexedDir.js
import fs48 from "node:fs";
import path80 from "node:path";
import util25 from "node:util";
function importIndexedDir(importer, newDir, filenames, opts3) {
  if (!opts3.keepModulesDir) {
    if (opts3.safeToSkip) {
      try {
        fs48.mkdirSync(newDir, { recursive: true });
        tryImportIndexedDir(importer, newDir, filenames);
        return;
      } catch (err2) {
        if (util25.types.isNativeError(err2) && "code" in err2 && err2.code === "EEXIST" && allFilesMatch(newDir, filenames)) {
          return;
        }
      }
    } else if (tryExclusiveImport(importer, newDir, filenames)) {
      return;
    }
  }
  const stage = fastPathTemp(newDir);
  try {
    makeEmptyDirSync(stage, { recursive: true });
    tryImportIndexedDir({ importFile: importer.importFile, importFileAtomic: importer.importFile }, stage, filenames);
    if (opts3.keepModulesDir) {
      moveOrMergeModulesDirs(path80.join(newDir, "node_modules"), path80.join(stage, "node_modules"));
    }
  } catch (err2) {
    try {
      rimrafSync(stage);
    } catch {
    }
    if (util25.types.isNativeError(err2) && "code" in err2 && err2.code === "EEXIST") {
      const { uniqueFileMap, conflictingFileNames } = getUniqueFileMap(filenames);
      if (conflictingFileNames.size === 0)
        throw err2;
      filenameConflictsLogger.debug({
        conflicts: Object.fromEntries(conflictingFileNames),
        writingTo: newDir
      });
      globalWarn(`Not all files were linked to "${path80.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, opts3);
      return;
    }
    if (util25.types.isNativeError(err2) && "code" in err2 && err2.code === "ENOENT") {
      if (retryWithSanitizedFilenames(importer, newDir, filenames, opts3))
        return;
      throw err2;
    }
    throw err2;
  }
  if (opts3.safeToSkip) {
    try {
      fs48.renameSync(stage, newDir);
      return;
    } catch (err2) {
      if (util25.types.isNativeError(err2) && "code" in err2 && (err2.code === "ENOTEMPTY" || err2.code === "EEXIST" || err2.code === "EPERM")) {
        if (allFilesMatch(newDir, filenames)) {
          try {
            rimrafSync(stage);
          } catch {
          }
          return;
        }
      }
    }
  }
  try {
    renameOverwriteSync(stage, newDir);
  } catch (renameErr) {
    try {
      rimrafSync(stage);
    } catch {
    }
    throw renameErr;
  }
}
function tryExclusiveImport(importer, newDir, filenames) {
  fs48.mkdirSync(path80.dirname(newDir), { recursive: true });
  try {
    fs48.mkdirSync(newDir);
  } catch (err2) {
    if (util25.types.isNativeError(err2) && "code" in err2 && err2.code === "EEXIST")
      return false;
    throw err2;
  }
  try {
    tryImportIndexedDir(importer, newDir, filenames);
    return true;
  } catch {
    try {
      rimrafSync(newDir);
    } catch {
    }
    return false;
  }
}
function allFilesMatch(dir, filenames) {
  for (const [f, src2] of filenames) {
    const target2 = path80.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, opts3) {
  const { sanitizedFilenames, invalidFilenames } = sanitizeFilenames(filenames);
  if (invalidFilenames.length === 0)
    return false;
  globalWarn(`The package linked to "${path80.relative(process.cwd(), newDir)}" had files with invalid names: ${invalidFilenames.join(", ")}. They were renamed.`);
  importIndexedDir(importer, newDir, sanitizedFilenames, opts3);
  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 = path80.dirname(f);
    if (dir === ".")
      continue;
    allDirs.add(dir);
  }
  Array.from(allDirs).sort((d1, d22) => d1.length - d22.length).forEach((dir) => fs48.mkdirSync(path80.join(newDir, dir), { recursive: true }));
  let packageJsonSrc;
  for (const [f, src2] of filenames) {
    if (f === "package.json") {
      packageJsonSrc = src2;
      continue;
    }
    importFile(src2, path80.join(newDir, f));
  }
  if (packageJsonSrc !== void 0) {
    importFileAtomic(packageJsonSrc, path80.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 (err2) {
    switch (util25.types.isNativeError(err2) && "code" in err2 && err2.code) {
      case "ENOENT":
        return;
      case "ENOTEMPTY":
      case "EPERM":
        mergeModulesDirs(src2, dest);
        return;
      default:
        throw err2;
    }
  }
}
function renameEvenAcrossDevices(src2, dest) {
  try {
    lib_default.renameSync(src2, dest);
  } catch (err2) {
    if (!(util25.types.isNativeError(err2) && "code" in err2 && err2.code === "EXDEV"))
      throw err2;
    import_fs_extra2.default.copySync(src2, dest);
  }
}
function mergeModulesDirs(src2, dest) {
  const srcFiles = fs48.readdirSync(src2);
  const destFiles = new Set(fs48.readdirSync(dest));
  const filesToMove = srcFiles.filter((file) => !destFiles.has(file));
  for (const file of filesToMove) {
    renameEvenAcrossDevices(path80.join(src2, file), path80.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_lib14();
    init_lib3();
    init_rimraf();
    import_fs_extra2 = __toESM(require_lib23(), 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/removeQuarantine.js
import { execFileSync as execFileSync2 } from "node:child_process";
import path81 from "node:path";
function isNativeBinary(filePath) {
  return NATIVE_BINARY_EXTENSIONS.has(path81.extname(filePath).toLowerCase());
}
function removeQuarantine(filePaths) {
  if (process.platform !== "darwin")
    return;
  for (const chunk of chunkByArgSize(filePaths)) {
    removeQuarantineFromChunk(chunk);
  }
}
function removeQuarantineFromChunk(filePaths) {
  try {
    execFileSync2("/usr/bin/xattr", ["-d", QUARANTINE_ATTR, ...filePaths], {
      stdio: ["ignore", "ignore", "pipe"]
    });
  } catch (err2) {
    const realErrors = getStderr(err2).split("\n").filter((line) => line.trim() !== "" && !line.includes("No such xattr") && !line.includes("No such file"));
    if (realErrors.length > 0) {
      globalWarn(`Failed to remove the macOS quarantine attribute:
${realErrors.join("\n")}`);
    }
  }
}
function chunkByArgSize(filePaths) {
  const chunks = [];
  let chunk = [];
  let chunkBytes = 0;
  for (const filePath of filePaths) {
    const bytes = Buffer.byteLength(filePath) + 1;
    if (chunk.length > 0 && chunkBytes + bytes > MAX_ARG_BYTES) {
      chunks.push(chunk);
      chunk = [];
      chunkBytes = 0;
    }
    chunk.push(filePath);
    chunkBytes += bytes;
  }
  if (chunk.length > 0)
    chunks.push(chunk);
  return chunks;
}
function getStderr(err2) {
  if (typeof err2 === "object" && err2 !== null && "stderr" in err2) {
    const stderr = err2.stderr;
    if (stderr != null)
      return stderr.toString();
  }
  return err2 instanceof Error ? err2.message : String(err2);
}
var QUARANTINE_ATTR, NATIVE_BINARY_EXTENSIONS, MAX_ARG_BYTES;
var init_removeQuarantine = __esm({
  "../fs/indexed-pkg-importer/lib/removeQuarantine.js"() {
    "use strict";
    init_lib3();
    QUARANTINE_ATTR = "com.apple.quarantine";
    NATIVE_BINARY_EXTENSIONS = /* @__PURE__ */ new Set([".node", ".dylib", ".so"]);
    MAX_ARG_BYTES = 1e5;
  }
});

// ../fs/indexed-pkg-importer/lib/index.js
import assert6 from "node:assert";
import { constants as constants5, existsSync as existsSync5 } from "node:fs";
import path82 from "node:path";
import util26 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, opts3) => auto(to, opts3);
  function initialAuto(to, opts3) {
    if (process.platform !== "win32") {
      try {
        if (!tryClonePkg(to, opts3))
          return void 0;
        packageImportMethodLogger.debug({ method: "clone" });
        auto = createClonePkg();
        return "clone";
      } catch {
      }
    }
    try {
      if (!hardlinkPkg(lib_default.linkSync, to, opts3))
        return void 0;
      packageImportMethodLogger.debug({ method: "hardlink" });
      auto = hardlinkPkg.bind(null, linkOrCopy);
      return "hardlink";
    } catch (err2) {
      assert6(util26.types.isNativeError(err2));
      if (err2.message.startsWith("EXDEV: cross-device link not permitted")) {
        globalWarn(err2.message);
        globalInfo("Falling back to copying packages from store");
        packageImportMethodLogger.debug({ method: "copy" });
        auto = copyPkg;
        return auto(to, opts3);
      }
      packageImportMethodLogger.debug({ method: "hardlink" });
      auto = hardlinkPkg.bind(null, linkOrCopy);
      return auto(to, opts3);
    }
  }
}
function createCloneOrCopyImporter() {
  let auto = initialAuto;
  return (to, opts3) => auto(to, opts3);
  function initialAuto(to, opts3) {
    try {
      if (!tryClonePkg(to, opts3))
        return void 0;
      packageImportMethodLogger.debug({ method: "clone" });
      auto = createClonePkg();
      return "clone";
    } catch {
    }
    packageImportMethodLogger.debug({ method: "copy" });
    auto = copyPkg;
    return auto(to, opts3);
  }
}
function tryClonePkg(to, opts3) {
  if (opts3.resolvedFrom !== "store" || opts3.force || !pkgExistsAtTargetDir(to, opts3.filesMap)) {
    const clone4 = createCloneFunction();
    importIndexedDir({ importFile: clone4, importFileAtomic: clone4 }, to, opts3.filesMap, opts3);
    removeQuarantineFromNativeBinaries(to, opts3);
    return "clone";
  }
  return void 0;
}
function createClonePkg() {
  const clone4 = createCloneFunction();
  const withFallback = (fallback) => (src2, dest) => {
    try {
      clone4(src2, dest);
    } catch (err2) {
      if (util26.types.isNativeError(err2) && "code" in err2 && err2.code === "ENOTSUP") {
        fallback(src2, dest);
        return;
      }
      throw err2;
    }
  };
  const importer = {
    importFile: withFallback(resilientCopyFileSync),
    importFileAtomic: withFallback(atomicCopyFileSync)
  };
  return (to, opts3) => {
    if (opts3.resolvedFrom !== "store" || opts3.force || !pkgExistsAtTargetDir(to, opts3.filesMap)) {
      importIndexedDir(importer, to, opts3.filesMap, opts3);
      removeQuarantineFromNativeBinaries(to, opts3);
      return "clone";
    }
    return void 0;
  };
}
function pkgExistsAtTargetDir(targetDir, filesMap) {
  return existsSync5(path82.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 (err2) {
        if (!util26.types.isNativeError(err2) || !("code" in err2) || err2.code !== "EEXIST")
          throw err2;
      }
    };
  } else {
    _cloneFunction = (src2, dest) => {
      try {
        lib_default.copyFileSync(src2, dest, constants5.COPYFILE_FICLONE_FORCE);
      } catch (err2) {
        if (!(util26.types.isNativeError(err2) && "code" in err2 && err2.code === "EEXIST"))
          throw err2;
      }
    };
  }
  return _cloneFunction;
}
function hardlinkPkg(importFile, to, opts3) {
  if (opts3.force || shouldRelinkPkg(to, opts3)) {
    importIndexedDir({ importFile, importFileAtomic: importFile }, to, opts3.filesMap, opts3);
    removeQuarantineFromNativeBinaries(to, opts3);
    return "hardlink";
  }
  return void 0;
}
function shouldRelinkPkg(to, opts3) {
  if (opts3.disableRelinkLocalDirDeps && opts3.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 opts3.resolvedFrom !== "store" || !pkgLinkedToStore(opts3.filesMap, to);
}
function linkOrCopy(existingPath2, newPath) {
  try {
    lib_default.linkSync(existingPath2, newPath);
  } catch (err2) {
    if (util26.types.isNativeError(err2) && "code" in err2 && err2.code === "EEXIST")
      return;
    resilientCopyFileSync(existingPath2, newPath);
  }
}
function resilientCopyFileSync(src2, dest) {
  try {
    lib_default.copyFileSync(src2, dest);
  } catch (err2) {
    if (util26.types.isNativeError(err2) && "code" in err2 && err2.code === "ENOTSUP") {
      const srcMode = lib_default.statSync(src2).mode;
      lib_default.writeFileSync(dest, lib_default.readFileSync(src2), { mode: srcMode });
    } else {
      throw err2;
    }
  }
}
function pkgLinkedToStore(filesMap, linkedPkgDir) {
  const filename = pickFileFromFilesMap(filesMap);
  const linkedFile = path82.join(linkedPkgDir, filename);
  let stats0;
  try {
    stats0 = lib_default.statSync(linkedFile);
  } catch (err2) {
    if (util26.types.isNativeError(err2) && "code" in err2 && err2.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, opts3) {
  if (opts3.resolvedFrom !== "store" || opts3.force || !pkgExistsAtTargetDir(to, opts3.filesMap)) {
    importIndexedDir({ importFile: resilientCopyFileSync, importFileAtomic: atomicCopyFileSync }, to, opts3.filesMap, opts3);
    removeQuarantineFromNativeBinaries(to, opts3);
    return "copy";
  }
  return void 0;
}
function atomicCopyFileSync(src2, dest) {
  const tmp = fastPathTemp(dest);
  try {
    resilientCopyFileSync(src2, tmp);
  } catch (err2) {
    try {
      lib_default.unlinkSync(tmp);
    } catch {
    }
    throw err2;
  }
  renameOverwriteSync(tmp, dest);
}
function removeQuarantineFromNativeBinaries(to, opts3) {
  if (process.platform !== "darwin" || opts3.resolvedFrom !== "store")
    return;
  const nativeBinaries = [];
  for (const file of opts3.filesMap.keys()) {
    if (isNativeBinary(file)) {
      nativeBinaries.push(path82.join(to, file));
    }
  }
  removeQuarantine(nativeBinaries);
}
var _cloneFunction;
var init_lib85 = __esm({
  "../fs/indexed-pkg-importer/lib/index.js"() {
    "use strict";
    init_lib6();
    init_lib14();
    init_lib3();
    init_path_temp();
    init_rename_overwrite();
    init_importIndexedDir();
    init_removeQuarantine();
  }
});

// ../store/create-cafs-store/lib/index.js
import { promises as fs49 } from "node:fs";
import path83 from "node:path";
function createPackageImporterAsync(opts3) {
  const cachedImporterCreator = opts3.importIndexedPackage ? () => opts3.importIndexedPackage : memoize(createIndexedPkgImporter);
  const packageImportMethod = opts3.packageImportMethod;
  const gfm = getFlatMap.bind(null, opts3.storeDir);
  return async (to, opts4) => {
    const { filesMap, isBuilt } = gfm(opts4.filesResponse, opts4.sideEffectsCacheKey);
    const willBeBuilt = !isBuilt && opts4.requiresBuild;
    const pkgImportMethod = willBeBuilt ? "clone-or-copy" : opts4.filesResponse.packageImportMethod ?? packageImportMethod;
    const impPkg = cachedImporterCreator(pkgImportMethod);
    const importMethod = await impPkg(to, {
      disableRelinkLocalDirDeps: opts4.disableRelinkLocalDirDeps,
      filesMap,
      resolvedFrom: opts4.filesResponse.resolvedFrom,
      force: opts4.force,
      keepModulesDir: Boolean(opts4.keepModulesDir),
      safeToSkip: opts4.safeToSkip
    });
    return { importMethod, isBuilt };
  };
}
function createPackageImporter(opts3) {
  const cachedImporterCreator = opts3.importIndexedPackage ? () => opts3.importIndexedPackage : memoize(createIndexedPkgImporter);
  const packageImportMethod = opts3.packageImportMethod;
  const gfm = getFlatMap.bind(null, opts3.storeDir);
  return (to, opts4) => {
    const { filesMap, isBuilt } = gfm(opts4.filesResponse, opts4.sideEffectsCacheKey);
    const willBeBuilt = !isBuilt && opts4.requiresBuild;
    const pkgImportMethod = willBeBuilt ? "clone-or-copy" : opts4.filesResponse.packageImportMethod ?? packageImportMethod;
    const impPkg = cachedImporterCreator(pkgImportMethod);
    const importMethod = impPkg(to, {
      disableRelinkLocalDirDeps: opts4.disableRelinkLocalDirDeps,
      filesMap,
      resolvedFrom: opts4.filesResponse.resolvedFrom,
      force: opts4.force,
      keepModulesDir: Boolean(opts4.keepModulesDir),
      safeToSkip: opts4.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, opts3) {
  const baseTempDir = path83.join(storeDir, "tmp");
  const importPackage2 = createPackageImporter({
    importIndexedPackage: opts3?.importPackage,
    packageImportMethod: opts3?.packageImportMethod,
    storeDir
  });
  return {
    ...createCafs(storeDir, opts3),
    storeDir,
    importPackage: importPackage2,
    tempDir: async () => {
      await fs49.mkdir(baseTempDir, { recursive: true });
      return fs49.mkdtemp(path83.join(baseTempDir, "_tmp_"));
    }
  };
}
var init_lib86 = __esm({
  "../store/create-cafs-store/lib/index.js"() {
    "use strict";
    init_lib85();
    init_lib83();
    init_distribution();
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/pretty-bytes/7.1.1/3f0c019e40f65cefa2508448deeee5f4de4296a90649714c3754e80021fac4af/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 exponent = 0;
  if (number >= 1) {
    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(number.toPrecision(minPrecision));
  }
  const numberString = toLocaleString(number, options.locale, localeOptions);
  const result2 = prefix + numberString + separator + UNITS[exponent];
  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({
  "../../../../../setup-pnpm/store/v11/links/@/pretty-bytes/7.1.1/3f0c019e40f65cefa2508448deeee5f4de4296a90649714c3754e80021fac4af/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 fs50 } from "node:fs";
import path84 from "node:path";
import util27 from "node:util";
function getProjectsRegistryDir(storeDir) {
  return path84.join(storeDir, PROJECTS_DIR);
}
async function registerProject(storeDir, projectDir) {
  if (isSubdir(projectDir, storeDir)) {
    return;
  }
  const registryDir = getProjectsRegistryDir(storeDir);
  await fs50.mkdir(registryDir, { recursive: true });
  const linkPath = path84.join(registryDir, createShortHash(projectDir));
  await symlinkDir(projectDir, linkPath);
}
async function getRegisteredProjects(storeDir) {
  const registryDir = getProjectsRegistryDir(storeDir);
  let entries;
  try {
    entries = await fs50.readdir(registryDir, { withFileTypes: true });
  } catch (err2) {
    if (util27.types.isNativeError(err2) && "code" in err2 && err2.code === "ENOENT") {
      return [];
    }
    throw err2;
  }
  const projects = [];
  await Promise.all(entries.map(async (entry) => {
    if (entry.name.startsWith("."))
      return;
    if (!entry.isSymbolicLink())
      return;
    const linkPath = path84.join(registryDir, entry.name);
    let target2;
    try {
      target2 = await fs50.readlink(linkPath);
    } catch (err2) {
      if (util27.types.isNativeError(err2) && "code" in err2 && (err2.code === "ENOENT" || err2.code === "EINVAL")) {
        return;
      }
      const message = util27.types.isNativeError(err2) ? err2.message : String(err2);
      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 = path84.isAbsolute(target2) ? target2 : path84.resolve(path84.dirname(linkPath), target2);
    try {
      await fs50.stat(absoluteTarget);
      projects.push(absoluteTarget);
    } catch (err2) {
      if (util27.types.isNativeError(err2) && "code" in err2 && err2.code === "ENOENT") {
        await fs50.unlink(linkPath);
        globalInfo(`Removed stale project registry entry: ${absoluteTarget}`);
        return;
      }
      const message = util27.types.isNativeError(err2) ? err2.message : String(err2);
      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_lib34();
    init_lib2();
    init_lib3();
    init_is_subdir();
    init_dist3();
    PROJECTS_DIR = "projects";
  }
});

// ../store/controller/lib/storeController/pruneGlobalVirtualStore.js
import crypto7 from "node:crypto";
import { promises as fs51 } from "node:fs";
import path85 from "node:path";
import util28 from "node:util";
async function pruneGlobalVirtualStore(storeDir) {
  const linksDir = path85.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 fs51.readdir(dir, { withFileTypes: true });
    } catch {
      return;
    }
    const subdirs = [];
    for (const entry of entries) {
      if (!entry.isDirectory())
        continue;
      const entryPath = path85.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 fs51.readdir(dir, { withFileTypes: true });
  } catch {
    return;
  }
  await Promise.all(entries.map(async (entry) => {
    const entryPath = path85.join(dir, entry.name);
    if (entry.isSymbolicLink()) {
      try {
        const target2 = await fs51.readlink(entryPath);
        const absoluteTarget = path85.isAbsolute(target2) ? target2 : path85.resolve(dir, target2);
        if (isSubdir(linksDir, absoluteTarget)) {
          const relPath = path85.relative(linksDir, absoluteTarget);
          const parts = relPath.split(path85.sep);
          const nodeModulesIdx = parts.indexOf("node_modules");
          if (nodeModulesIdx !== -1) {
            const relativePath2 = parts.slice(0, nodeModulesIdx).join(path85.sep);
            reachable.add(relativePath2);
            const pkgNodeModules = path85.join(linksDir, relativePath2, "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 fs51.realpath(p);
  } catch {
    realPath = p;
  }
  return crypto7.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 = path85.join(linksDir, scope);
    const pkgNames = await getSubdirsSafely(scopePath);
    let removedPkgs = 0;
    await Promise.all(pkgNames.map(async (pkgName) => {
      const pkgDir = path85.join(scopePath, pkgName);
      const removedVersions = await removeUnreachableVersions(pkgDir, path85.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 = path85.join(pkgDir, version2);
    const hashes = await getSubdirsSafely(versionDir);
    let removedHashes = 0;
    await Promise.all(hashes.map(async (hash2) => {
      const relativePath2 = path85.join(pkgPath, version2, hash2);
      if (!reachable.has(relativePath2)) {
        await rimraf(path85.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 fs51.stat(p);
    return true;
  } catch {
    return false;
  }
}
async function getSubdirsSafely(dir) {
  let entries;
  try {
    entries = await fs51.readdir(dir, { withFileTypes: true });
  } catch (err2) {
    if (util28.types.isNativeError(err2) && "code" in err2 && err2.code === "ENOENT") {
      return [];
    }
    throw err2;
  }
  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 fs52 } from "node:fs";
import path86 from "node:path";
import util29 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(path86.join(cacheDir, metadataDir));
    } catch (err2) {
      if (!(util29.types.isNativeError(err2) && "code" in err2 && err2.code === "ENOENT")) {
        throw err2;
      }
    }
  }));
  await rimraf(path86.join(storeDir, "tmp"));
  globalInfo("Removed all cached metadata files");
  const cafsDir = path86.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 = path86.join(cafsDir, dir);
    await Promise.all((await fs52.readdir(subdir)).map(async (fileName) => {
      const filePath = path86.join(subdir, fileName);
      const stat2 = await fs52.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 fs52.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 fs52.readdir(dir, { withFileTypes: true });
  } catch (err2) {
    if (util29.types.isNativeError(err2) && "code" in err2 && err2.code === "ENOENT") {
      return [];
    }
    throw err2;
  }
  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 fs53 from "node:fs";
import path87 from "node:path";
function createPackageStore(resolve4, fetchers, initOpts) {
  const storeDir = initOpts.storeDir;
  if (!fs53.existsSync(path87.join(storeDir, "files"))) {
    if (initOpts.frozenStore) {
      throw new PnpmError("FROZEN_STORE_INCOMPLETE", `frozenStore is enabled but the store at ${storeDir} is missing its content directory (${path87.join(storeDir, "files")}). The store must be fully seeded before it can be used read-only.`);
    }
    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: resolve4,
    fetchers,
    cafs,
    ignoreFile: initOpts.ignoreFile,
    networkConcurrency: initOpts.networkConcurrency,
    storeDir: initOpts.storeDir,
    verifyStoreIntegrity: initOpts.verifyStoreIntegrity,
    virtualStoreDirMaxLength: initOpts.virtualStoreDirMaxLength,
    strictStorePkgContentCheck: initOpts.strictStorePkgContentCheck,
    customFetchers: initOpts.customFetchers,
    frozenStore: initOpts.frozenStore
  });
  return {
    close: async () => {
      initOpts.storeIndex.flush();
    },
    fetchPackage: packageRequester.fetchPackageToStore,
    getFilesIndexFilePath: packageRequester.getFilesIndexFilePath,
    importPackage: initOpts.importPackage ? createPackageImporterAsync({ importIndexedPackage: initOpts.importPackage, storeDir: cafs.storeDir }) : (targetDir, opts3) => importPackage({
      ...opts3,
      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, opts3) {
    await addFilesFromDir({
      storeDir: cafs.storeDir,
      storeIndex: initOpts.storeIndex,
      dir: builtPkgLocation,
      sideEffectsCacheKey: opts3.sideEffectsCacheKey,
      filesIndexFile: opts3.filesIndexFile,
      pkg: {}
    });
  }
}
var init_storeController = __esm({
  "../store/controller/lib/storeController/index.js"() {
    "use strict";
    init_lib2();
    init_lib84();
    init_lib86();
    init_lib4();
    init_prune();
  }
});

// ../store/controller-types/lib/index.js
var init_lib87 = __esm({
  "../store/controller-types/lib/index.js"() {
    "use strict";
    init_lib29();
  }
});

// ../store/controller/lib/index.js
var init_lib88 = __esm({
  "../store/controller/lib/index.js"() {
    "use strict";
    init_storeController();
    init_projectRegistry();
    init_lib87();
  }
});

// ../installing/context/lib/readLockfiles.js
import path88 from "node:path";
async function readLockfiles(opts3) {
  const wantedLockfileVersion = LOCKFILE_VERSION;
  const lockfileOpts = {
    ignoreIncompatible: opts3.force || opts3.ci === true && !opts3.frozenLockfile,
    wantedVersions: [LOCKFILE_VERSION],
    useGitBranchLockfile: opts3.useGitBranchLockfile,
    mergeGitBranchLockfiles: opts3.mergeGitBranchLockfiles
  };
  const fileReads = [];
  let lockfileHadConflicts = false;
  let wantedLockfileFileExists = false;
  if (opts3.useLockfile) {
    wantedLockfileFileExists = await existsNonEmptyWantedLockfile(opts3.lockfileDir, lockfileOpts);
    if (!opts3.frozenLockfile) {
      fileReads.push((async () => {
        try {
          const { lockfile, hadConflicts } = await readWantedLockfileAndAutofixConflicts(opts3.lockfileDir, lockfileOpts);
          lockfileHadConflicts = hadConflicts;
          return lockfile;
        } catch (err2) {
          logger.warn({
            message: `Ignoring broken lockfile at ${opts3.lockfileDir}: ${err2.message}`,
            prefix: opts3.lockfileDir
          });
          return void 0;
        }
      })());
    } else {
      fileReads.push(readWantedLockfile(opts3.lockfileDir, lockfileOpts));
    }
  } else {
    if (await existsNonEmptyWantedLockfile(opts3.lockfileDir, lockfileOpts)) {
      logger.warn({
        message: `A ${WANTED_LOCKFILE} file exists. The current configuration prohibits to read or write a lockfile`,
        prefix: opts3.lockfileDir
      });
    }
    fileReads.push(Promise.resolve(void 0));
  }
  fileReads.push((async () => {
    try {
      return await readCurrentLockfile(opts3.internalPnpmDir, lockfileOpts);
    } catch (err2) {
      logger.warn({
        message: `Ignoring broken lockfile at ${opts3.internalPnpmDir}: ${err2.message}`,
        prefix: opts3.lockfileDir
      });
      return void 0;
    }
  })());
  const files = await Promise.all(fileReads);
  if (opts3.frozenLockfile && wantedLockfileFileExists && files[0] == null) {
    throw new PnpmError("BROKEN_LOCKFILE", `The lockfile at "${path88.join(opts3.lockfileDir, WANTED_LOCKFILE)}" is broken: it is empty`);
  }
  const sopts = {
    autoInstallPeers: opts3.autoInstallPeers,
    excludeLinksFromLockfile: opts3.excludeLinksFromLockfile,
    lockfileVersion: wantedLockfileVersion,
    peersSuffixMaxLength: opts3.peersSuffixMaxLength
  };
  const importerIds = opts3.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 existsWantedLockfile = files[0] != null;
  const existsCurrentLockfile = files[1] != null;
  const wantedLockfile = files[0] ?? (currentLockfile && clone_default(currentLockfile)) ?? createLockfileObject(importerIds, sopts);
  let wantedLockfileIsModified = !existsWantedLockfile && existsCurrentLockfile;
  for (const importerId of importerIds) {
    if (!wantedLockfile.importers[importerId]) {
      wantedLockfileIsModified = true;
      wantedLockfile.importers[importerId] = {
        specifiers: {}
      };
    }
  }
  return {
    currentLockfile,
    currentLockfileIsUpToDate: equals_default(currentLockfile, wantedLockfile),
    existsCurrentLockfile,
    existsWantedLockfile,
    existsNonEmptyWantedLockfile: existsWantedLockfile && !isEmptyLockfile(wantedLockfile),
    wantedLockfile,
    wantedLockfileIsModified,
    lockfileHadConflicts
  };
}
var init_readLockfiles = __esm({
  "../installing/context/lib/readLockfiles.js"() {
    "use strict";
    init_lib();
    init_lib2();
    init_lib80();
    init_lib3();
    init_es();
  }
});

// ../installing/context/lib/index.js
import { promises as fs54 } from "node:fs";
import path89 from "node:path";
async function getContext(opts3) {
  const modulesDir = opts3.modulesDir ?? "node_modules";
  const importersContext = await readProjectsContext(opts3.allProjects, { lockfileDir: opts3.lockfileDir, modulesDir });
  const virtualStoreDir = pathAbsolute(opts3.virtualStoreDir ?? path89.join(modulesDir, ".pnpm"), opts3.lockfileDir);
  if (!opts3.frozenStore) {
    await fs54.mkdir(opts3.storeDir, { recursive: true });
    await registerProject(opts3.storeDir, opts3.lockfileDir);
  }
  for (const project of opts3.allProjects) {
    packageManifestLogger.debug({
      initial: project.manifest,
      prefix: project.rootDir
    });
  }
  if (opts3.readPackageHook != null) {
    await Promise.all(importersContext.projects.map(async (project) => {
      project.originalManifest = project.manifest;
      project.manifest = await opts3.readPackageHook(clone_default(project.manifest), project.rootDir);
    }));
  }
  const extraBinPaths = [
    ...opts3.extraBinPaths || []
  ];
  const internalPnpmDir = path89.join(importersContext.rootModulesDir, ".pnpm");
  const hoistedModulesDir = path89.join(opts3.enableGlobalVirtualStore ? internalPnpmDir : virtualStoreDir, "node_modules");
  if (opts3.hoistPattern?.length) {
    extraBinPaths.unshift(path89.join(hoistedModulesDir, ".bin"));
  }
  const ctx = {
    extraBinPaths,
    extraNodePaths: getExtraNodePaths({
      extendNodePath: opts3.extendNodePath,
      nodeLinker: opts3.nodeLinker,
      hoistPattern: importersContext.currentHoistPattern ?? opts3.hoistPattern,
      hoistedModulesDir
    }),
    hoistedDependencies: importersContext.hoistedDependencies,
    hoistedModulesDir,
    hoistPattern: opts3.hoistPattern,
    currentHoistPattern: importersContext.currentHoistPattern,
    include: opts3.include ?? importersContext.include,
    lockfileDir: opts3.lockfileDir,
    modulesFile: importersContext.modules,
    pendingBuilds: importersContext.pendingBuilds,
    projects: Object.fromEntries(importersContext.projects.map((project) => [project.rootDir, project])),
    publicHoistPattern: opts3.publicHoistPattern,
    currentPublicHoistPattern: importersContext.currentPublicHoistPattern,
    registries: opts3.registries,
    rootModulesDir: importersContext.rootModulesDir,
    skipped: importersContext.skipped,
    storeDir: opts3.storeDir,
    virtualStoreDir,
    virtualStoreDirMaxLength: importersContext.virtualStoreDirMaxLength ?? opts3.virtualStoreDirMaxLength,
    workspacePackages: opts3.workspacePackages ?? arrayOfWorkspacePackagesToMap(opts3.allProjects),
    ...await readLockfiles({
      autoInstallPeers: opts3.autoInstallPeers,
      ci: opts3.ci,
      excludeLinksFromLockfile: opts3.excludeLinksFromLockfile,
      peersSuffixMaxLength: opts3.peersSuffixMaxLength,
      force: opts3.force,
      frozenLockfile: opts3.frozenLockfile === true,
      lockfileDir: opts3.lockfileDir,
      projects: importersContext.projects,
      registry: opts3.registries.default,
      useLockfile: opts3.useLockfile,
      useGitBranchLockfile: opts3.useGitBranchLockfile,
      mergeGitBranchLockfiles: opts3.mergeGitBranchLockfiles,
      internalPnpmDir
    })
  };
  contextLogger.debug({
    currentLockfileExists: ctx.existsCurrentLockfile,
    storeDir: opts3.storeDir,
    virtualStoreDir
  });
  return ctx;
}
async function getContextForSingleImporter(manifest, opts3) {
  const { currentHoistPattern, hoistedDependencies, projects, include, modules, pendingBuilds, registries, skipped, rootModulesDir } = await readProjectsContext([
    {
      rootDir: opts3.dir
    }
  ], {
    lockfileDir: opts3.lockfileDir,
    modulesDir: opts3.modulesDir
  });
  const storeDir = opts3.storeDir;
  const importer = projects[0];
  const modulesDir = importer.modulesDir;
  const importerId = importer.id;
  const virtualStoreDir = pathAbsolute(opts3.virtualStoreDir ?? "node_modules/.pnpm", opts3.lockfileDir);
  if (!opts3.frozenStore) {
    await fs54.mkdir(storeDir, { recursive: true });
    await registerProject(storeDir, opts3.lockfileDir);
  }
  const extraBinPaths = [
    ...opts3.extraBinPaths || []
  ];
  const internalPnpmDir = path89.join(rootModulesDir, ".pnpm");
  const hoistedModulesDir = path89.join(opts3.enableGlobalVirtualStore ? internalPnpmDir : virtualStoreDir, "node_modules");
  if (opts3.hoistPattern?.length) {
    extraBinPaths.unshift(path89.join(hoistedModulesDir, ".bin"));
  }
  const ctx = {
    extraBinPaths,
    extraNodePaths: getExtraNodePaths({
      extendNodePath: opts3.extendNodePath,
      nodeLinker: opts3.nodeLinker,
      hoistPattern: currentHoistPattern ?? opts3.hoistPattern,
      hoistedModulesDir
    }),
    hoistedDependencies,
    hoistedModulesDir,
    hoistPattern: opts3.hoistPattern,
    importerId,
    include: opts3.include ?? include,
    lockfileDir: opts3.lockfileDir,
    manifest: await opts3.readPackageHook?.(manifest) ?? manifest,
    modulesDir,
    modulesFile: modules,
    pendingBuilds,
    prefix: opts3.dir,
    publicHoistPattern: opts3.publicHoistPattern,
    registries: {
      ...opts3.registries,
      ...registries
    },
    rootModulesDir,
    skipped,
    storeDir,
    virtualStoreDir,
    ...await readLockfiles({
      autoInstallPeers: opts3.autoInstallPeers,
      ci: opts3.ci,
      excludeLinksFromLockfile: opts3.excludeLinksFromLockfile,
      peersSuffixMaxLength: opts3.peersSuffixMaxLength,
      force: opts3.force,
      frozenLockfile: false,
      lockfileDir: opts3.lockfileDir,
      projects: [{ id: importerId, rootDir: opts3.dir }],
      registry: opts3.registries.default,
      useLockfile: opts3.useLockfile,
      useGitBranchLockfile: opts3.useGitBranchLockfile,
      mergeGitBranchLockfiles: opts3.mergeGitBranchLockfiles,
      internalPnpmDir
    })
  };
  packageManifestLogger.debug({
    initial: manifest,
    prefix: opts3.dir
  });
  contextLogger.debug({
    currentLockfileExists: ctx.existsCurrentLockfile,
    storeDir: opts3.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_lib89 = __esm({
  "../installing/context/lib/index.js"() {
    "use strict";
    init_lib6();
    init_lib81();
    init_lib88();
    init_path_absolute();
    init_es();
    init_readLockfiles();
  }
});

// ../lockfile/walker/lib/index.js
function lockfileWalkerGroupImporterSteps(lockfile, importerIds, opts3) {
  const walked = new Set(opts3?.skipped != null ? Array.from(opts3?.skipped) : []);
  return importerIds.map((importerId) => {
    const projectSnapshot = lockfile.importers[importerId];
    const entryNodes = Object.entries({
      ...opts3?.include?.devDependencies === false ? {} : projectSnapshot.devDependencies,
      ...opts3?.include?.dependencies === false ? {} : projectSnapshot.dependencies,
      ...opts3?.include?.optionalDependencies === false ? {} : projectSnapshot.optionalDependencies
    }).map(([pkgName, reference]) => refToRelative(reference, pkgName)).filter((nodeId) => nodeId !== null);
    return {
      importerId,
      step: step({
        includeOptionalDependencies: opts3?.include?.optionalDependencies !== false,
        lockfile,
        walked
      }, entryNodes)
    };
  });
}
function lockfileWalker(lockfile, importerIds, opts3) {
  const walked = new Set(opts3?.skipped != null ? Array.from(opts3?.skipped) : []);
  const entryNodes = [];
  const directDeps = [];
  for (const importerId of importerIds) {
    const projectSnapshot = lockfile.importers[importerId];
    Object.entries({
      ...opts3?.include?.devDependencies === false ? {} : projectSnapshot.devDependencies,
      ...opts3?.include?.dependencies === false ? {} : projectSnapshot.dependencies,
      ...opts3?.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: opts3?.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(opts3, nextPkg) {
  return Object.entries({
    ...nextPkg.dependencies,
    ...opts3.includeOptionalDependencies ? nextPkg.optionalDependencies : {}
  }).map(([pkgName, reference]) => refToRelative(reference, pkgName)).filter((nodeId) => nodeId !== null);
}
var init_lib90 = __esm({
  "../lockfile/walker/lib/index.js"() {
    "use strict";
    init_lib68();
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/can-link/3.0.0/bae417759b91f431851e4811843beef52513ed66982ee97d7bcd9c27ccf8c2bb/node_modules/can-link/index.js
import defaultFS2 from "node:fs";
async function canLink(existingPath2, newPath, customFS) {
  const fs131 = customFS || defaultFS2;
  try {
    await fs131.promises.link(existingPath2, newPath);
    fs131.promises.unlink(newPath).catch(() => {
    });
    return true;
  } catch (err2) {
    if (err2.code === "EXDEV" || err2.code === "EACCES" || err2.code === "EPERM") {
      return false;
    }
    throw err2;
  }
}
var init_can_link = __esm({
  "../../../../../setup-pnpm/store/v11/links/@/can-link/3.0.0/bae417759b91f431851e4811843beef52513ed66982ee97d7bcd9c27ccf8c2bb/node_modules/can-link/index.js"() {
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/next-path/1.0.0/de08de603a106249d809dfd48fcc251f85b935bfa3517816c69f157ad1243460/node_modules/next-path/index.js
var require_next_path = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/next-path/1.0.0/de08de603a106249d809dfd48fcc251f85b935bfa3517816c69f157ad1243460/node_modules/next-path/index.js"(exports2, module2) {
    "use strict";
    var path240 = __require("path");
    var nextPath2 = (from5, to) => {
      const diff2 = path240.relative(from5, to);
      const sepIndex = diff2.indexOf(path240.sep);
      const next2 = sepIndex >= 0 ? diff2.substring(0, sepIndex) : diff2;
      return path240.join(from5, next2);
    };
    module2.exports = nextPath2;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/root-link-target/4.0.0/0d12f51c3375d006ca143eed15964c8223b5e04c31b06dfc634e410c28e0c56f/node_modules/root-link-target/index.js
import path90 from "node:path";
async function rootLinkTarget(filePath) {
  filePath = path90.resolve(filePath);
  const end = path90.dirname(filePath);
  let dir = path90.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({
  "../../../../../setup-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);
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/touch/3.1.1/12ecbce42e84b3507a93f09e9839abf0c0444e94b859aaf14db9c066cb13b6a2/node_modules/touch/index.js
var require_touch = __commonJS({
  "../../../../../setup-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 fs131 = __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 = (fd2, options, cb) => {
      if (typeof options === "function")
        cb = options, options = {};
      const p = new Promise((res, rej) => {
        new Touch(validOpts(options, null, fd2)).on("done", res).on("error", rej);
      });
      return cb ? p.then((res) => cb(null, res), cb) : p;
    };
    module2.exports.ftouchSync = (fd2, opt) => (new TouchSync(validOpts(opt, null, fd2)), void 0);
    var validOpts = (options, path240, fd2) => {
      options = Object.create(options || {});
      options.fd = fd2;
      options.path = path240;
      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)
          fs131.close(this.fd, () => {
          });
      }
      open() {
        fs131.open(this.path, this.oflags, (er, fd2) => this.onopen(er, fd2));
      }
      onopen(er, fd2) {
        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 = fd2;
          if (this.ref)
            this.statref();
          else if (!this.atime || !this.mtime)
            this.fstat();
          else
            this.futimes();
        }
      }
      statref() {
        fs131.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;
        fs131[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;
        fs131[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, fs131.openSync(this.path, this.oflags));
        } catch (er) {
          this.onopen(er);
        }
      }
      statref() {
        let threw = true;
        try {
          this.onstatref(fs131.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(fs131[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 {
          fs131[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 {
            fs131.closeSync(this.fd);
          } catch (er) {
          }
      }
    };
  }
});

// ../store/path/lib/index.js
import { promises as fs55 } from "node:fs";
import os12 from "node:os";
import path91 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(`${path91.sep}${STORE_VERSION}`)) {
    return storeBasePath;
  }
  return path91.join(storeBasePath, STORE_VERSION);
}
async function storePathRelativeToHome(pkgRoot, relStore, homedir) {
  const tempFile = pathTemp(pkgRoot);
  if (path91.parse(pkgRoot).root !== pkgRoot)
    await fs55.mkdir(path91.dirname(tempFile), { recursive: true });
  await (0, import_touch.default)(tempFile);
  const storeInHomeDir = path91.join(homedir, relStore, STORE_VERSION);
  if (await canLinkToSubdir(tempFile, homedir)) {
    await fs55.unlink(tempFile);
    return storeInHomeDir;
  }
  try {
    let mountpoint = await rootLinkTarget(tempFile);
    const mountpointParent = path91.join(mountpoint, "..");
    if (!dirsAreEqual(mountpointParent, mountpoint) && await canLinkToSubdir(tempFile, mountpointParent)) {
      mountpoint = mountpointParent;
    }
    if (dirsAreEqual(pkgRoot, mountpoint)) {
      return storeInHomeDir;
    }
    return path91.join(mountpoint, ".pnpm-store", STORE_VERSION);
  } catch {
    return storeInHomeDir;
  } finally {
    await fs55.unlink(tempFile);
  }
}
async function canLinkToSubdir(fileToLink, dir) {
  let result2 = false;
  const tmpDir = pathTemp(dir);
  try {
    await fs55.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 path91.relative(dir1, dir2) === ".";
}
function getHomedir2() {
  const home = os12.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_lib91 = __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 fs56 } from "node:fs";
async function createNewStoreController(opts3) {
  const fullMetadata = shouldFetchFullMetadata(opts3);
  if (!opts3.frozenStore) {
    await fs56.mkdir(opts3.storeDir, { recursive: true });
  }
  const storeIndex = opts3.frozenStore ? new ReadOnlyStoreIndex(opts3.storeDir) : new StoreIndex(opts3.storeDir);
  const { resolve: resolve4, fetchers, clearResolutionCache, resolutionVerifiers } = createClient({
    customResolvers: opts3.hooks?.customResolvers,
    customFetchers: opts3.hooks?.customFetchers,
    unsafePerm: opts3.unsafePerm,
    ca: opts3.ca,
    cacheDir: opts3.cacheDir,
    storeDir: opts3.storeDir,
    cert: opts3.cert,
    frozenStore: opts3.frozenStore,
    fetchWarnTimeoutMs: opts3.fetchWarnTimeoutMs,
    fetchMinSpeedKiBps: opts3.fetchMinSpeedKiBps,
    fullMetadata,
    filterMetadata: fullMetadata,
    httpProxy: opts3.httpProxy,
    httpsProxy: opts3.httpsProxy,
    ignoreScripts: opts3.ignoreScripts,
    key: opts3.key,
    localAddress: opts3.localAddress,
    nodeDownloadMirrors: opts3.nodeDownloadMirrors,
    noProxy: opts3.noProxy,
    offline: opts3.offline,
    preferOffline: opts3.preferOffline,
    configByUri: opts3.configByUri,
    registries: opts3.registries,
    namedRegistries: opts3.namedRegistries,
    retry: {
      factor: opts3.fetchRetryFactor,
      maxTimeout: opts3.fetchRetryMaxtimeout,
      minTimeout: opts3.fetchRetryMintimeout,
      retries: opts3.fetchRetries
    },
    strictSsl: opts3.strictSsl ?? true,
    timeout: opts3.fetchTimeout,
    userAgent: opts3.userAgent,
    maxSockets: opts3.maxSockets ?? (opts3.networkConcurrency != null ? opts3.networkConcurrency * 3 : void 0),
    gitShallowHosts: opts3.gitShallowHosts,
    resolveSymlinksInInjectedDirs: opts3.resolveSymlinksInInjectedDirs,
    includeOnlyPackageFiles: !opts3.deployAllFiles,
    saveWorkspaceProtocol: opts3.saveWorkspaceProtocol,
    preserveAbsolutePaths: opts3.preserveAbsolutePaths,
    ignoreMissingTimeField: opts3.minimumReleaseAgeIgnoreMissingTime,
    minimumReleaseAge: opts3.minimumReleaseAge,
    minimumReleaseAgeStrict: opts3.minimumReleaseAgeStrict,
    minimumReleaseAgeExclude: opts3.minimumReleaseAgeExclude,
    trustPolicy: opts3.trustPolicy,
    trustPolicyExclude: opts3.trustPolicyExclude,
    trustPolicyIgnoreAfter: opts3.trustPolicyIgnoreAfter,
    storeIndex
  });
  return {
    ctrl: createPackageStore(resolve4, fetchers, {
      cafsLocker: opts3.cafsLocker,
      engineStrict: opts3.engineStrict,
      force: opts3.force,
      nodeVersion: opts3.nodeVersion,
      pnpmVersion: packageManager.version,
      ignoreFile: opts3.ignoreFile,
      importPackage: opts3.hooks?.importPackage,
      networkConcurrency: opts3.networkConcurrency,
      packageImportMethod: opts3.packageImportMethod,
      cacheDir: opts3.cacheDir,
      storeDir: opts3.storeDir,
      verifyStoreIntegrity: typeof opts3.verifyStoreIntegrity === "boolean" ? opts3.verifyStoreIntegrity : true,
      virtualStoreDirMaxLength: opts3.virtualStoreDirMaxLength,
      strictStorePkgContentCheck: opts3.strictStorePkgContentCheck,
      clearResolutionCache,
      customFetchers: opts3.hooks?.customFetchers,
      frozenStore: opts3.frozenStore,
      storeIndex
    }),
    dir: opts3.storeDir,
    resolutionVerifiers
  };
}
function shouldFetchFullMetadata(opts3) {
  return opts3.fetchFullMetadata ?? (opts3.supportedArchitectures?.libc != null || opts3.trustPolicy === "no-downgrade" || opts3.resolutionMode === "time-based" && !opts3.registrySupportsTimeField);
}
var init_createNewStoreController = __esm({
  "../store/connection-manager/lib/createNewStoreController.js"() {
    "use strict";
    init_lib24();
    init_lib59();
    init_lib88();
    init_lib30();
  }
});

// ../store/connection-manager/lib/index.js
async function createStoreController(opts3) {
  const storeDir = await getStorePath({
    pkgRoot: opts3.workspaceDir ?? opts3.dir,
    storePath: opts3.storeDir,
    pnpmHomeDir: opts3.pnpmHomeDir
  });
  return createNewStoreController(Object.assign(opts3, {
    storeDir
  }));
}
var init_lib92 = __esm({
  "../store/connection-manager/lib/index.js"() {
    "use strict";
    init_lib91();
    init_createNewStoreController();
  }
});

// ../building/after-install/lib/extendBuildOptions.js
import path92 from "node:path";
async function extendBuildOptions(opts3) {
  if (opts3) {
    for (const key in opts3) {
      if (opts3[key] === void 0) {
        delete opts3[key];
      }
    }
  }
  const defaultOpts = await defaults(opts3);
  const extendedOpts = {
    ...defaultOpts,
    ...opts3,
    storeDir: defaultOpts.storeDir
  };
  extendedOpts.registries = normalizeRegistries(extendedOpts.registries);
  if (extendedOpts.enableGlobalVirtualStore && extendedOpts.virtualStoreDir == null) {
    extendedOpts.virtualStoreDir = extendedOpts.globalVirtualStoreDir ?? path92.join(extendedOpts.storeDir, "links");
  }
  return extendedOpts;
}
var defaults;
var init_extendBuildOptions = __esm({
  "../building/after-install/lib/extendBuildOptions.js"() {
    "use strict";
    init_lib76();
    init_load_json_file();
    defaults = async (opts3) => {
      const packageManager2 = opts3.packageManager ?? await loadJsonFile(path92.join(import.meta.dirname, "../package.json"));
      const dir = opts3.dir ?? process.cwd();
      const lockfileDir = opts3.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: opts3.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 fs57 from "node:fs";
import path93 from "node:path";
import util30 from "node:util";
function findPackages2(packages, searched, opts3) {
  return Object.keys(packages).filter((relativeDepPath) => {
    const pkgLockfile = packages[relativeDepPath];
    const pkgInfo = nameVerFromPkgSnapshot(relativeDepPath, pkgLockfile);
    if (!pkgInfo.name) {
      logger2.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: opts3.prefix
      });
      return false;
    }
    return matches(searched, pkgInfo, getPkgIdWithPatchHash(relativeDepPath));
  });
}
function matches(searched, manifest, pkgIdWithPatchHash) {
  return searched.some((searchedPkg) => {
    if (typeof searchedPkg === "string") {
      return manifest.name === searchedPkg;
    }
    if ("pkgIdWithPatchHash" in searchedPkg) {
      return searchedPkg.pkgIdWithPatchHash === pkgIdWithPatchHash;
    }
    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") {
    streamParser2.on("data", reporter);
  }
  const opts3 = await extendBuildOptions(maybeOpts);
  const ctx = await getContext({ ...opts3, allProjects: projects });
  if (ctx.currentLockfile?.packages == null)
    return {};
  const packages = ctx.currentLockfile.packages;
  const searched = pkgSpecs.map((arg) => {
    if (matchesDepPath(packages, arg)) {
      return { pkgIdWithPatchHash: removePeersSuffix(arg) };
    }
    const { fetchSpec, name, raw, type: type4 } = (0, import_npm_package_arg3.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
  }, opts3);
  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: `${opts3.packageManager.name}@${opts3.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: opts3.allowBuilds
  });
  return {
    ignoredBuilds: ignoredPkgs
  };
}
function matchesDepPath(packages, pkgSpec) {
  const normalizedPkgSpec = removePeersSuffix(pkgSpec);
  return Object.keys(packages).some((depPath) => removePeersSuffix(depPath) === normalizedPkgSpec);
}
async function buildProjects(projects, maybeOpts) {
  const reporter = maybeOpts?.reporter;
  if (reporter != null && typeof reporter === "function") {
    streamParser2.on("data", reporter);
  }
  const opts3 = await extendBuildOptions(maybeOpts);
  const ctx = await getContext({ ...opts3, allProjects: projects });
  let idsToRebuild = [];
  if (opts3.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
  }, opts3);
  ctx.pendingBuilds = ctx.pendingBuilds.filter((depPath) => !pkgsThatWereRebuilt.has(depPath));
  const store = await createStoreController(opts3);
  const scriptsOpts = {
    extraBinPaths: ctx.extraBinPaths,
    extraNodePaths: ctx.extraNodePaths,
    extraEnv: opts3.extraEnv,
    preferSymlinkedExecutables: opts3.preferSymlinkedExecutables,
    scriptsPrependNodePath: opts3.scriptsPrependNodePath,
    scriptShell: opts3.scriptShell,
    shellEmulator: opts3.shellEmulator,
    storeController: store.ctrl,
    unsafePerm: opts3.unsafePerm || false,
    userAgent: opts3.userAgent
  };
  await runLifecycleHooksConcurrently(["preinstall", "install", "postinstall", "prepublish", "prepare"], Object.values(ctx.projects), opts3.childConcurrency || 5, scriptsOpts);
  for (const { id, manifest } of Object.values(ctx.projects)) {
    if (manifest?.scripts != null && (!opts3.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: `${opts3.packageManager.name}@${opts3.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, opts3) {
  let currentShouldBeBuilt = false;
  for (const { depPath, next: next2 } of step2.dependencies) {
    if (nodesToBuildAndTransitive.has(depPath)) {
      currentShouldBeBuilt = true;
    }
    const childShouldBeBuilt = getSubgraphToBuild(next2(), nodesToBuildAndTransitive, opts3) || opts3.pkgsToRebuild.has(depPath);
    if (childShouldBeBuilt) {
      nodesToBuildAndTransitive.add(depPath);
      currentShouldBeBuilt = true;
    }
  }
  for (const depPath of step2.missing) {
    logger2.debug({ message: `No entry for "${depPath}" in ${WANTED_LOCKFILE}` });
  }
  return currentShouldBeBuilt;
}
async function _rebuild(ctx, opts3) {
  const depGraph = lockfileToDepGraph(ctx.currentLockfile, opts3.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: opts3.production,
      devDependencies: opts3.development,
      optionalDependencies: opts3.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) => {
    logger2.info({ message, prefix: opts3.dir });
  };
  const ignoredPkgs = /* @__PURE__ */ new Set();
  const _allowBuild = createAllowBuildFunction(opts3) ?? (() => void 0);
  const allowBuild = (depPath) => {
    switch (_allowBuild(depPath)) {
      case true:
        return true;
      case void 0: {
        ignoredPkgs.add(depPath);
        break;
      }
    }
    return false;
  };
  const builtDepPaths = /* @__PURE__ */ new Set();
  const storeIndex = opts3.skipIfHasSideEffectsCache ? opts3.frozenStore ? new ReadOnlyStoreIndex(opts3.storeDir) : new StoreIndex(opts3.storeDir) : void 0;
  const gvsDirByDepPath = /* @__PURE__ */ new Map();
  if (opts3.enableGlobalVirtualStore) {
    const globalVirtualStoreDir = opts3.globalVirtualStoreDir ?? path93.join(opts3.storeDir, "links");
    for (const { hash: hash2, pkgMeta } of iterateHashedGraphNodes(depGraph, iteratePkgMeta(ctx.currentLockfile, depGraph), {
      allowBuild: _allowBuild,
      supportedArchitectures: opts3.supportedArchitectures,
      nodeVersion,
      lockfileDir: opts3.lockfileDir
    })) {
      const preferredGvsDir = path93.join(globalVirtualStoreDir, hash2);
      gvsDirByDepPath.set(pkgMeta.depPath, fs57.existsSync(preferredGvsDir) ? preferredGvsDir : findLinkedGvsDir(pkgMeta.name, Object.values(ctx.projects), globalVirtualStoreDir) ?? preferredGvsDir);
    }
  }
  const pkgModulesDir = (depPath) => gvsDirByDepPath.has(depPath) ? path93.join(gvsDirByDepPath.get(depPath), "node_modules") : path93.join(ctx.virtualStoreDir, depPathToFilename(depPath, opts3.virtualStoreDirMaxLength), "node_modules");
  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 = opts3.nodeLinker === "hoisted" ? (ctx.modulesFile?.hoistedLocations?.[depPath] ?? []).map((hoistedLocation) => path93.join(opts3.lockfileDir, hoistedLocation)) : [path93.join(pkgModulesDir(depPath), 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];
    const gvsDir = gvsDirByDepPath.get(depPath);
    if (gvsDir != null) {
      const inFlight = gvsBuildLocks.get(gvsDir);
      if (inFlight != null) {
        await inFlight.catch(() => {
        });
        pkgsThatWereRebuilt.add(depPath);
        return;
      }
    }
    let releaseGvsLock;
    if (gvsDir != null) {
      let resolveLock;
      gvsBuildLocks.set(gvsDir, new Promise((resolve4) => {
        resolveLock = resolve4;
      }));
      releaseGvsLock = () => {
        gvsBuildLocks.delete(gvsDir);
        resolveLock();
      };
    }
    try {
      const extraBinPaths = ctx.extraBinPaths;
      if (opts3.nodeLinker !== "hoisted") {
        const modules = pkgModulesDir(depPath);
        const binPath = path93.join(pkgRoot, "node_modules", ".bin");
        await linkBins(modules, binPath, { extraNodePaths: ctx.extraNodePaths, warn });
      } else {
        extraBinPaths.push(...binDirsInAllParentDirs(pkgRoot, opts3.lockfileDir));
      }
      const resolution = pkgSnapshot.resolution;
      let sideEffectsCacheKey;
      const pkgId = pkgInfo.nonSemverVersion ?? `${pkgInfo.name}@${pkgInfo.version}`;
      if (opts3.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: opts3.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(depPath) && await runPostinstallHooks({
        depPath,
        extraBinPaths,
        extraEnv: opts3.extraEnv,
        optional: pkgSnapshot.optional === true,
        pkgRoot,
        rootModulesDir: ctx.rootModulesDir,
        scriptsPrependNodePath: opts3.scriptsPrependNodePath,
        shellEmulator: opts3.shellEmulator,
        unsafePerm: opts3.unsafePerm || false,
        userAgent: opts3.userAgent
      });
      if (hasSideEffects && (opts3.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 opts3.storeController.upload(pkgRoot, {
            sideEffectsCacheKey,
            filesIndexFile
          });
        } catch (err2) {
          assert7(util30.types.isNativeError(err2));
          logger2.warn({
            error: err2,
            message: `An error occurred while uploading ${pkgRoot}`,
            prefix: opts3.lockfileDir
          });
        }
      }
      pkgsThatWereRebuilt.add(depPath);
    } catch (err2) {
      assert7(util30.types.isNativeError(err2));
      if (pkgSnapshot.optional) {
        skippedOptionalDependencyLogger.debug({
          details: err2.toString(),
          package: {
            id: pkgSnapshot.id ?? depPath,
            name: pkgInfo.name,
            version: pkgInfo.version
          },
          prefix: opts3.dir,
          reason: "build_failure"
        });
        return;
      }
      throw err2;
    } finally {
      releaseGvsLock?.();
    }
    if (pkgRoots.length > 1) {
      await hardLinkDir(pkgRoot, pkgRoots.slice(1));
    }
  }));
  await runGroups(opts3.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 = pkgModulesDir(depPath);
      const binPath = path93.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 = path93.join(rootDir, "node_modules");
      const binPath = path93.join(modules, ".bin");
      return linkBins(modules, binPath, {
        allowExoticManifests: true,
        warn
      });
    })));
  }
  return { pkgsThatWereRebuilt, ignoredPkgs };
}
function findLinkedGvsDir(pkgName, projects, globalVirtualStoreDir) {
  const normalizedGvsRoot = `${path93.resolve(globalVirtualStoreDir)}${path93.sep}`;
  for (const { rootDir } of projects) {
    const pkgLink = path93.join(rootDir, "node_modules", pkgName);
    try {
      const target2 = fs57.readlinkSync(pkgLink);
      const pkgRoot = path93.resolve(path93.dirname(pkgLink), target2);
      if (!pkgRoot.startsWith(normalizedGvsRoot))
        continue;
      return nthAncestorDir(pkgRoot, pkgName.split("/").length + 1);
    } catch (err2) {
      if (util30.types.isNativeError(err2) && "code" in err2 && (err2.code === "EINVAL" || err2.code === "ENOENT"))
        continue;
      throw err2;
    }
  }
  return void 0;
}
function nthAncestorDir(dir, levels) {
  let result2 = dir;
  for (let i4 = 0; i4 < levels; i4++) {
    result2 = path93.dirname(result2);
  }
  return result2;
}
function binDirsInAllParentDirs(pkgRoot, lockfileDir) {
  const binDirs = [];
  let dir = pkgRoot;
  do {
    if (!(path93.dirname(dir)[0] === "@")) {
      binDirs.push(path93.join(dir, "node_modules/.bin"));
    }
    dir = path93.dirname(dir);
  } while (path93.relative(dir, lockfileDir) !== "");
  binDirs.push(path93.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_npm_package_arg3, import_semver23, gvsBuildLocks, limitLinking;
var init_lib93 = __esm({
  "../building/after-install/lib/index.js"() {
    "use strict";
    init_lib16();
    init_lib17();
    init_lib69();
    init_lib();
    init_lib6();
    init_lib74();
    init_lib75();
    init_lib68();
    init_lib2();
    init_lib21();
    init_lib89();
    init_lib77();
    init_lib73();
    init_lib90();
    init_lib63();
    import_npm_package_arg3 = __toESM(require_npa(), 1);
    init_lib5();
    init_lib92();
    init_lib30();
    init_lib4();
    init_p_limit();
    init_lib20();
    import_semver23 = __toESM(require_semver2(), 1);
    init_extendBuildOptions();
    gvsBuildLocks = /* @__PURE__ */ new Map();
    limitLinking = pLimit(16);
  }
});

// ../cli/common-cli-options-help/lib/index.js
var OPTIONS, UNIVERSAL_OPTIONS, FILTERING, OUTPUT_OPTIONS;
var init_lib94 = __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 packages are saved on disk. Use a shared store only with trusted users and jobs",
        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 projectDirs = Object.keys(projectsGraph);
  const sorted = new Set(projectDirs);
  const graph = new Map(projectDirs.map((projectDir) => [
    projectDir,
    projectsGraph[projectDir].dependencies.filter((dep) => dep !== projectDir && sorted.has(dep))
  ]));
  return graphSequencer(graph, projectDirs);
}
function sortProjects(projectsGraph) {
  return sequenceGraph(projectsGraph).chunks;
}
function sortFilteredProjects(opts3) {
  const fullProjectsGraph = opts3.allProjectsGraph ?? opts3.selectedProjectsGraph;
  const prodAllProjectsGraph = opts3.prodAllProjectsGraph;
  if (!prodAllProjectsGraph) {
    return sequenceGraphByProject(opts3.selectedProjectsGraph, () => fullProjectsGraph).chunks;
  }
  const prodOnlySelectedProjectDirs = new Set(opts3.prodOnlySelectedProjectDirs);
  return sequenceGraphByProject(opts3.selectedProjectsGraph, (projectDir) => prodOnlySelectedProjectDirs.has(projectDir) ? prodAllProjectsGraph : fullProjectsGraph).chunks;
}
function sequenceGraphByProject(projectsGraph, fullProjectsGraphByProject) {
  const sortedProjectDirs = Object.keys(projectsGraph);
  const sorted = new Set(sortedProjectDirs);
  const graph = new Map(sortedProjectDirs.map((projectDir) => [
    projectDir,
    sortedDependencies(projectsGraph, fullProjectsGraphByProject(projectDir), projectDir, sorted)
  ]));
  return graphSequencer(graph, sortedProjectDirs);
}
function sortedDependencies(projectsGraph, fullProjectsGraph, projectDir, sorted) {
  const dependencies = /* @__PURE__ */ new Set();
  const visited = /* @__PURE__ */ new Set();
  const stack = [...projectsGraph[projectDir]?.dependencies ?? []];
  while (stack.length > 0) {
    const dependencyDir = stack.pop();
    if (dependencyDir === projectDir || visited.has(dependencyDir))
      continue;
    visited.add(dependencyDir);
    if (sorted.has(dependencyDir)) {
      dependencies.add(dependencyDir);
    } else {
      const transitiveDeps = fullProjectsGraph[dependencyDir]?.dependencies;
      if (transitiveDeps)
        stack.push(...transitiveDeps);
    }
  }
  return Array.from(dependencies);
}
var init_lib95 = __esm({
  "../workspace/projects-sorter/lib/index.js"() {
    "use strict";
    init_lib75();
  }
});

// ../building/commands/lib/build/recursive.js
import assert8 from "node:assert";
import util31 from "node:util";
async function recursiveRebuild(allProjects, params, opts3) {
  if (allProjects.length === 0) {
    return;
  }
  const pkgs = Object.values(opts3.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 = opts3.sort !== false ? sortFilteredProjects(opts3) : [Object.keys(opts3.selectedProjectsGraph).sort()];
  const store = await createStoreController(opts3);
  const rebuildOpts = Object.assign(opts3, {
    ownLifecycleHooksStdio: "pipe",
    pruneLockfileImporters: (opts3.ignoredPackages == null || opts3.ignoredPackages.size === 0) && pkgs.length === allProjects.length,
    storeController: store.ctrl,
    storeDir: store.dir
  });
  const result2 = {};
  const projectConfigRecord = createProjectConfigRecord(opts3) ?? {};
  async function getImporters2() {
    const importers = [];
    await Promise.all(chunks.map(async (prefixes, buildIndex) => {
      if (opts3.ignoredPackages != null) {
        prefixes = prefixes.filter((prefix) => !opts3.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, opts4) => buildSelectedPkgs(importers, params, opts4);
  if (opts3.lockfileDir) {
    const importers = await getImporters2();
    await rebuild(importers, {
      ...rebuildOpts,
      pending: opts3.pending === true
    });
    return;
  }
  const limitRebuild = pLimit(getWorkspaceConcurrency(opts3.workspaceConcurrency));
  for (const chunk of chunks) {
    await Promise.all(chunk.map(async (rootDir) => limitRebuild(async () => {
      try {
        if (opts3.ignoredPackages?.has(rootDir)) {
          return;
        }
        result2[rootDir] = { status: "running" };
        const { manifest } = opts3.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: opts3.pending === true
        });
        result2[rootDir].status = "passed";
      } catch (err2) {
        assert8(util31.types.isNativeError(err2));
        const errWithPrefix = Object.assign(err2, {
          prefix: rootDir
        });
        logger.info(errWithPrefix);
        if (!opts3.bail) {
          result2[rootDir] = {
            status: "failure",
            error: errWithPrefix,
            message: err2.message,
            prefix: rootDir
          };
          return;
        }
        throw err2;
      }
    })));
  }
  throwOnFail(result2);
}
var init_recursive = __esm({
  "../building/commands/lib/build/recursive.js"() {
    "use strict";
    init_lib93();
    init_lib41();
    init_lib64();
    init_lib3();
    init_lib92();
    init_lib95();
    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(opts3, params) {
  if (opts3.recursive && opts3.allProjects != null && opts3.selectedProjectsGraph != null && opts3.workspaceDir) {
    await recursiveRebuild(opts3.allProjects, params, { ...opts3, selectedProjectsGraph: opts3.selectedProjectsGraph, workspaceDir: opts3.workspaceDir });
    return;
  }
  const store = await createStoreController(opts3);
  const rebuildOpts = Object.assign(opts3, {
    sideEffectsCacheRead: opts3.sideEffectsCache ?? opts3.sideEffectsCacheReadonly,
    sideEffectsCacheWrite: opts3.sideEffectsCache,
    storeController: store.ctrl,
    storeDir: store.dir
  });
  if (params.length === 0) {
    await buildProjects([
      {
        buildIndex: 0,
        manifest: await readProjectManifestOnly2(rebuildOpts.dir, opts3),
        rootDir: rebuildOpts.dir
      }
    ], rebuildOpts);
    return;
  }
  await buildSelectedPkgs([
    {
      buildIndex: 0,
      manifest: await readProjectManifestOnly2(rebuildOpts.dir, opts3),
      rootDir: rebuildOpts.dir
    }
  ], params, rebuildOpts);
}
var commandNames3, overridableByScript;
var init_rebuild = __esm({
  "../building/commands/lib/build/rebuild.js"() {
    "use strict";
    init_lib93();
    init_lib94();
    init_lib41();
    init_lib64();
    init_lib92();
    init_es();
    init_lib66();
    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_lib96 = __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_lib96();
    init_lib2();
  }
});

// ../catalogs/resolver/lib/index.js
var init_lib97 = __esm({
  "../catalogs/resolver/lib/index.js"() {
    "use strict";
    init_matchCatalogResolveResult();
    init_resolveFromCatalog();
  }
});

// ../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_name3.default)(alias).validForOldPackages) {
      return {
        alias,
        bareSpecifier: rawWantedDependency.slice(versionDelimiter + 1)
      };
    }
    return {
      bareSpecifier: rawWantedDependency
    };
  }
  if ((0, import_validate_npm_package_name3.default)(rawWantedDependency).validForOldPackages) {
    return {
      alias: rawWantedDependency
    };
  }
  return {
    bareSpecifier: rawWantedDependency
  };
}
var import_validate_npm_package_name3;
var init_lib98 = __esm({
  "../resolving/parse-wanted-dependency/lib/index.js"() {
    "use strict";
    import_validate_npm_package_name3 = __toESM(require_lib19(), 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}`);
      }
    });
    const override = {
      selector,
      newBareSpecifier: resolvedCatalog ?? newBareSpecifier,
      ...result2
    };
    return markConvergeOverride(override);
  });
}
function markConvergeOverride(override) {
  const emptyRangeInParentChildSelector = override.parentPkg != null && (override.parentPkg.bareSpecifier === "" || override.targetPkg.bareSpecifier === "");
  if (emptyRangeInParentChildSelector) {
    throw new PnpmError("INVALID_CONVERGENCE_OVERRIDE", `Cannot use an empty range in the "${override.selector}" selector: convergence overrides ("pkg@") cannot be combined with parent>child selectors`);
  }
  if (override.targetPkg.bareSpecifier !== "")
    return override;
  if (import_semver24.default.valid(override.newBareSpecifier) == null) {
    throw new PnpmError("INVALID_CONVERGENCE_OVERRIDE", `The value of the convergence override "${override.selector}" must be an exact version, but got "${override.newBareSpecifier}"`);
  }
  override.converge = true;
  return override;
}
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 import_semver24, DELIMITER_REGEX;
var init_lib99 = __esm({
  "../config/parse-overrides/lib/index.js"() {
    "use strict";
    init_lib97();
    init_lib2();
    init_lib98();
    import_semver24 = __toESM(require_semver2(), 1);
    DELIMITER_REGEX = /[^ |@]>/;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/yaml/2.9.0/289eaaf5fca48540c4ef4ebdb3c27244c62a4ca2ac0a5d76c6d0eea0d1f3190b/node_modules/yaml/dist/nodes/identity.js
var require_identity = __commonJS({
  "../../../../../setup-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 isMap2 = (node) => !!node && typeof node === "object" && node[NODE_TYPE] === MAP;
    var isPair = (node) => !!node && typeof node === "object" && node[NODE_TYPE] === PAIR;
    var isScalar2 = (node) => !!node && typeof node === "object" && node[NODE_TYPE] === SCALAR;
    var isSeq2 = (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 isNode3(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) => (isScalar2(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 = isMap2;
    exports2.isNode = isNode3;
    exports2.isPair = isPair;
    exports2.isScalar = isScalar2;
    exports2.isSeq = isSeq2;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/yaml/2.9.0/289eaaf5fca48540c4ef4ebdb3c27244c62a4ca2ac0a5d76c6d0eea0d1f3190b/node_modules/yaml/dist/visit.js
var require_visit = __commonJS({
  "../../../../../setup-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, path240) {
      const ctrl = callVisitor(key, node, visitor, path240);
      if (identity5.isNode(ctrl) || identity5.isPair(ctrl)) {
        replaceNode(key, path240, ctrl);
        return visit_(key, ctrl, visitor, path240);
      }
      if (typeof ctrl !== "symbol") {
        if (identity5.isCollection(node)) {
          path240 = Object.freeze(path240.concat(node));
          for (let i4 = 0; i4 < node.items.length; ++i4) {
            const ci = visit_(i4, node.items[i4], visitor, path240);
            if (typeof ci === "number")
              i4 = ci - 1;
            else if (ci === BREAK)
              return BREAK;
            else if (ci === REMOVE) {
              node.items.splice(i4, 1);
              i4 -= 1;
            }
          }
        } else if (identity5.isPair(node)) {
          path240 = Object.freeze(path240.concat(node));
          const ck = visit_("key", node.key, visitor, path240);
          if (ck === BREAK)
            return BREAK;
          else if (ck === REMOVE)
            node.key = null;
          const cv = visit_("value", node.value, visitor, path240);
          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, path240) {
      const ctrl = await callVisitor(key, node, visitor, path240);
      if (identity5.isNode(ctrl) || identity5.isPair(ctrl)) {
        replaceNode(key, path240, ctrl);
        return visitAsync_(key, ctrl, visitor, path240);
      }
      if (typeof ctrl !== "symbol") {
        if (identity5.isCollection(node)) {
          path240 = Object.freeze(path240.concat(node));
          for (let i4 = 0; i4 < node.items.length; ++i4) {
            const ci = await visitAsync_(i4, node.items[i4], visitor, path240);
            if (typeof ci === "number")
              i4 = ci - 1;
            else if (ci === BREAK)
              return BREAK;
            else if (ci === REMOVE) {
              node.items.splice(i4, 1);
              i4 -= 1;
            }
          }
        } else if (identity5.isPair(node)) {
          path240 = Object.freeze(path240.concat(node));
          const ck = await visitAsync_("key", node.key, visitor, path240);
          if (ck === BREAK)
            return BREAK;
          else if (ck === REMOVE)
            node.key = null;
          const cv = await visitAsync_("value", node.value, visitor, path240);
          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, path240) {
      if (typeof visitor === "function")
        return visitor(key, node, path240);
      if (identity5.isMap(node))
        return visitor.Map?.(key, node, path240);
      if (identity5.isSeq(node))
        return visitor.Seq?.(key, node, path240);
      if (identity5.isPair(node))
        return visitor.Pair?.(key, node, path240);
      if (identity5.isScalar(node))
        return visitor.Scalar?.(key, node, path240);
      if (identity5.isAlias(node))
        return visitor.Alias?.(key, node, path240);
      return void 0;
    }
    function replaceNode(key, path240, node) {
      const parent = path240[path240.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;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/yaml/2.9.0/289eaaf5fca48540c4ef4ebdb3c27244c62a4ca2ac0a5d76c6d0eea0d1f3190b/node_modules/yaml/dist/doc/directives.js
var require_directives = __commonJS({
  "../../../../../setup-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(yaml5, tags) {
        this.docStart = null;
        this.docEnd = false;
        this.yaml = Object.assign({}, _Directives.defaultYaml, yaml5);
        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;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/yaml/2.9.0/289eaaf5fca48540c4ef4ebdb3c27244c62a4ca2ac0a5d76c6d0eea0d1f3190b/node_modules/yaml/dist/doc/anchors.js
var require_anchors = __commonJS({
  "../../../../../setup-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 i4 = 1; true; ++i4) {
        const name = `${prefix}${i4}`;
        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;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/yaml/2.9.0/289eaaf5fca48540c4ef4ebdb3c27244c62a4ca2ac0a5d76c6d0eea0d1f3190b/node_modules/yaml/dist/doc/applyReviver.js
var require_applyReviver = __commonJS({
  "../../../../../setup-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 i4 = 0, len = val.length; i4 < len; ++i4) {
            const v0 = val[i4];
            const v1 = applyReviver(reviver, val, String(i4), v0);
            if (v1 === void 0)
              delete val[i4];
            else if (v1 !== v0)
              val[i4] = 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;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/yaml/2.9.0/289eaaf5fca48540c4ef4ebdb3c27244c62a4ca2ac0a5d76c6d0eea0d1f3190b/node_modules/yaml/dist/nodes/toJS.js
var require_toJS = __commonJS({
  "../../../../../setup-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, i4) => toJS(v, String(i4), 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;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/yaml/2.9.0/289eaaf5fca48540c4ef4ebdb3c27244c62a4ca2ac0a5d76c6d0eea0d1f3190b/node_modules/yaml/dist/nodes/Node.js
var require_Node = __commonJS({
  "../../../../../setup-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;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/yaml/2.9.0/289eaaf5fca48540c4ef4ebdb3c27244c62a4ca2ac0a5d76c6d0eea0d1f3190b/node_modules/yaml/dist/nodes/Alias.js
var require_Alias = __commonJS({
  "../../../../../setup-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;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/yaml/2.9.0/289eaaf5fca48540c4ef4ebdb3c27244c62a4ca2ac0a5d76c6d0eea0d1f3190b/node_modules/yaml/dist/nodes/Scalar.js
var require_Scalar = __commonJS({
  "../../../../../setup-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;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/yaml/2.9.0/289eaaf5fca48540c4ef4ebdb3c27244c62a4ca2ac0a5d76c6d0eea0d1f3190b/node_modules/yaml/dist/doc/createNode.js
var require_createNode = __commonJS({
  "../../../../../setup-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;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/yaml/2.9.0/289eaaf5fca48540c4ef4ebdb3c27244c62a4ca2ac0a5d76c6d0eea0d1f3190b/node_modules/yaml/dist/nodes/Collection.js
var require_Collection = __commonJS({
  "../../../../../setup-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, path240, value) {
      let v = value;
      for (let i4 = path240.length - 1; i4 >= 0; --i4) {
        const k2 = path240[i4];
        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 = (path240) => path240 == null || typeof path240 === "object" && !!path240[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(path240, value) {
        if (isEmptyPath(path240))
          this.add(value);
        else {
          const [key, ...rest] = path240;
          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(path240) {
        const [key, ...rest] = path240;
        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(path240, keepScalar) {
        const [key, ...rest] = path240;
        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(path240) {
        const [key, ...rest] = path240;
        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(path240, value) {
        const [key, ...rest] = path240;
        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;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/yaml/2.9.0/289eaaf5fca48540c4ef4ebdb3c27244c62a4ca2ac0a5d76c6d0eea0d1f3190b/node_modules/yaml/dist/stringify/stringifyComment.js
var require_stringifyComment = __commonJS({
  "../../../../../setup-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;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/yaml/2.9.0/289eaaf5fca48540c4ef4ebdb3c27244c62a4ca2ac0a5d76c6d0eea0d1f3190b/node_modules/yaml/dist/stringify/foldFlowLines.js
var require_foldFlowLines = __commonJS({
  "../../../../../setup-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 split4 = void 0;
      let prev = void 0;
      let overflow = false;
      let i4 = -1;
      let escStart = -1;
      let escEnd = -1;
      if (mode === FOLD_BLOCK) {
        i4 = consumeMoreIndentedLines(text, i4, indent.length);
        if (i4 !== -1)
          end = i4 + endStep;
      }
      for (let ch; ch = text[i4 += 1]; ) {
        if (mode === FOLD_QUOTED && ch === "\\") {
          escStart = i4;
          switch (text[i4 + 1]) {
            case "x":
              i4 += 3;
              break;
            case "u":
              i4 += 5;
              break;
            case "U":
              i4 += 9;
              break;
            default:
              i4 += 1;
          }
          escEnd = i4;
        }
        if (ch === "\n") {
          if (mode === FOLD_BLOCK)
            i4 = consumeMoreIndentedLines(text, i4, indent.length);
          end = i4 + indent.length + endStep;
          split4 = void 0;
        } else {
          if (ch === " " && prev && prev !== " " && prev !== "\n" && prev !== "	") {
            const next2 = text[i4 + 1];
            if (next2 && next2 !== " " && next2 !== "\n" && next2 !== "	")
              split4 = i4;
          }
          if (i4 >= end) {
            if (split4) {
              folds.push(split4);
              end = split4 + endStep;
              split4 = void 0;
            } else if (mode === FOLD_QUOTED) {
              while (prev === " " || prev === "	") {
                prev = ch;
                ch = text[i4 += 1];
                overflow = true;
              }
              const j2 = i4 > escEnd + 1 ? i4 - 2 : escStart - 1;
              if (escapedFolds[j2])
                return text;
              folds.push(j2);
              escapedFolds[j2] = true;
              end = j2 + endStep;
              split4 = 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 i5 = 0; i5 < folds.length; ++i5) {
        const fold = folds[i5];
        const end2 = folds[i5 + 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, i4, indent) {
      let end = i4;
      let start = i4 + 1;
      let ch = text[start];
      while (ch === " " || ch === "	") {
        if (i4 < start + indent) {
          ch = text[++i4];
        } else {
          do {
            ch = text[++i4];
          } while (ch && ch !== "\n");
          end = i4;
          start = i4 + 1;
          ch = text[start];
        }
      }
      return end;
    }
    exports2.FOLD_BLOCK = FOLD_BLOCK;
    exports2.FOLD_FLOW = FOLD_FLOW;
    exports2.FOLD_QUOTED = FOLD_QUOTED;
    exports2.foldFlowLines = foldFlowLines;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/yaml/2.9.0/289eaaf5fca48540c4ef4ebdb3c27244c62a4ca2ac0a5d76c6d0eea0d1f3190b/node_modules/yaml/dist/stringify/stringifyString.js
var require_stringifyString = __commonJS({
  "../../../../../setup-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 i4 = 0, start = 0; i4 < strLen; ++i4) {
        if (str2[i4] === "\n") {
          if (i4 - start > limit)
            return true;
          start = i4 + 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 i4 = 0, ch = json2[i4]; ch; ch = json2[++i4]) {
        if (ch === " " && json2[i4 + 1] === "\\" && json2[i4 + 2] === "n") {
          str2 += json2.slice(start, i4) + "\\ ";
          i4 += 1;
          start = i4;
          ch = "\\";
        }
        if (ch === "\\")
          switch (json2[i4 + 1]) {
            case "u":
              {
                str2 += json2.slice(start, i4);
                const code = json2.substr(i4 + 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(i4, 6);
                }
                i4 += 5;
                start = i4 + 1;
              }
              break;
            case "n":
              if (implicitKey || json2[i4 + 2] === '"' || json2.length < minMultiLineLength) {
                i4 += 1;
              } else {
                str2 += json2.slice(start, i4) + "\n\n";
                while (json2[i4 + 2] === "\\" && json2[i4 + 3] === "n" && json2[i4 + 4] !== '"') {
                  str2 += "\n";
                  i4 += 2;
                }
                str2 += indent;
                if (json2[i4 + 2] === " ")
                  str2 += "\\";
                i4 += 1;
                start = i4 + 1;
              }
              break;
            default:
              i4 += 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;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/yaml/2.9.0/289eaaf5fca48540c4ef4ebdb3c27244c62a4ca2ac0a5d76c6d0eea0d1f3190b/node_modules/yaml/dist/stringify/stringify.js
var require_stringify3 = __commonJS({
  "../../../../../setup-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 stringify2(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 = stringify2;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/yaml/2.9.0/289eaaf5fca48540c4ef4ebdb3c27244c62a4ca2ac0a5d76c6d0eea0d1f3190b/node_modules/yaml/dist/stringify/stringifyPair.js
var require_stringifyPair = __commonJS({
  "../../../../../setup-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 stringify2 = 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 = stringify2.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 = stringify2.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;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/yaml/2.9.0/289eaaf5fca48540c4ef4ebdb3c27244c62a4ca2ac0a5d76c6d0eea0d1f3190b/node_modules/yaml/dist/log.js
var require_log = __commonJS({
  "../../../../../setup-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;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/yaml/2.9.0/289eaaf5fca48540c4ef4ebdb3c27244c62a4ca2ac0a5d76c6d0eea0d1f3190b/node_modules/yaml/dist/schema/yaml-1.1/merge.js
var require_merge3 = __commonJS({
  "../../../../../setup-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;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/yaml/2.9.0/289eaaf5fca48540c4ef4ebdb3c27244c62a4ca2ac0a5d76c6d0eea0d1f3190b/node_modules/yaml/dist/nodes/addPairToJSMap.js
var require_addPairToJSMap = __commonJS({
  "../../../../../setup-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 stringify2 = 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 = stringify2.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;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/yaml/2.9.0/289eaaf5fca48540c4ef4ebdb3c27244c62a4ca2ac0a5d76c6d0eea0d1f3190b/node_modules/yaml/dist/nodes/Pair.js
var require_Pair = __commonJS({
  "../../../../../setup-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;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/yaml/2.9.0/289eaaf5fca48540c4ef4ebdb3c27244c62a4ca2ac0a5d76c6d0eea0d1f3190b/node_modules/yaml/dist/stringify/stringifyCollection.js
var require_stringifyCollection = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/yaml/2.9.0/289eaaf5fca48540c4ef4ebdb3c27244c62a4ca2ac0a5d76c6d0eea0d1f3190b/node_modules/yaml/dist/stringify/stringifyCollection.js"(exports2) {
    "use strict";
    var identity5 = require_identity();
    var stringify2 = require_stringify3();
    var stringifyComment = require_stringifyComment();
    function stringifyCollection(collection, ctx, options) {
      const flow = ctx.inFlow ?? collection.flow;
      const stringify3 = flow ? stringifyFlowCollection : stringifyBlockCollection;
      return stringify3(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 i4 = 0; i4 < items.length; ++i4) {
        const item = items[i4];
        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 = stringify2.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 i4 = 1; i4 < lines.length; ++i4) {
          const line = lines[i4];
          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 i4 = 0; i4 < items.length; ++i4) {
        const item = items[i4];
        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 = stringify2.stringify(item, itemCtx, () => comment = null);
        reqNewline || (reqNewline = lines.length > linesAtValue || str2.includes("\n"));
        if (i4 < 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;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/yaml/2.9.0/289eaaf5fca48540c4ef4ebdb3c27244c62a4ca2ac0a5d76c6d0eea0d1f3190b/node_modules/yaml/dist/nodes/YAMLMap.js
var require_YAMLMap = __commonJS({
  "../../../../../setup-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 add2 = (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)
            add2(key, value);
        } else if (obj && typeof obj === "object") {
          for (const key of Object.keys(obj))
            add2(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, overwrite2) {
        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 sortEntries2 = this.schema?.sortMapEntries;
        if (prev) {
          if (!overwrite2)
            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 (sortEntries2) {
          const i4 = this.items.findIndex((item) => sortEntries2(_pair, item) < 0);
          if (i4 === -1)
            this.items.push(_pair);
          else
            this.items.splice(i4, 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;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/yaml/2.9.0/289eaaf5fca48540c4ef4ebdb3c27244c62a4ca2ac0a5d76c6d0eea0d1f3190b/node_modules/yaml/dist/schema/common/map.js
var require_map2 = __commonJS({
  "../../../../../setup-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;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/yaml/2.9.0/289eaaf5fca48540c4ef4ebdb3c27244c62a4ca2ac0a5d76c6d0eea0d1f3190b/node_modules/yaml/dist/nodes/YAMLSeq.js
var require_YAMLSeq = __commonJS({
  "../../../../../setup-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 i4 = 0;
        for (const item of this.items)
          seq2.push(toJS.toJS(item, String(i4++), 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 i4 = 0;
          for (let it of obj) {
            if (typeof replacer2 === "function") {
              const key = obj instanceof Set ? it : String(i4++);
              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;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/yaml/2.9.0/289eaaf5fca48540c4ef4ebdb3c27244c62a4ca2ac0a5d76c6d0eea0d1f3190b/node_modules/yaml/dist/schema/common/seq.js
var require_seq2 = __commonJS({
  "../../../../../setup-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;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/yaml/2.9.0/289eaaf5fca48540c4ef4ebdb3c27244c62a4ca2ac0a5d76c6d0eea0d1f3190b/node_modules/yaml/dist/schema/common/string.js
var require_string2 = __commonJS({
  "../../../../../setup-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;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/yaml/2.9.0/289eaaf5fca48540c4ef4ebdb3c27244c62a4ca2ac0a5d76c6d0eea0d1f3190b/node_modules/yaml/dist/schema/common/null.js
var require_null2 = __commonJS({
  "../../../../../setup-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;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/yaml/2.9.0/289eaaf5fca48540c4ef4ebdb3c27244c62a4ca2ac0a5d76c6d0eea0d1f3190b/node_modules/yaml/dist/schema/core/bool.js
var require_bool2 = __commonJS({
  "../../../../../setup-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;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/yaml/2.9.0/289eaaf5fca48540c4ef4ebdb3c27244c62a4ca2ac0a5d76c6d0eea0d1f3190b/node_modules/yaml/dist/stringify/stringifyNumber.js
var require_stringifyNumber = __commonJS({
  "../../../../../setup-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 i4 = n2.indexOf(".");
        if (i4 < 0) {
          i4 = n2.length;
          n2 += ".";
        }
        let d3 = minFractionDigits - (n2.length - i4 - 1);
        while (d3-- > 0)
          n2 += "0";
      }
      return n2;
    }
    exports2.stringifyNumber = stringifyNumber;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/yaml/2.9.0/289eaaf5fca48540c4ef4ebdb3c27244c62a4ca2ac0a5d76c6d0eea0d1f3190b/node_modules/yaml/dist/schema/core/float.js
var require_float2 = __commonJS({
  "../../../../../setup-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;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/yaml/2.9.0/289eaaf5fca48540c4ef4ebdb3c27244c62a4ca2ac0a5d76c6d0eea0d1f3190b/node_modules/yaml/dist/schema/core/int.js
var require_int2 = __commonJS({
  "../../../../../setup-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;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/yaml/2.9.0/289eaaf5fca48540c4ef4ebdb3c27244c62a4ca2ac0a5d76c6d0eea0d1f3190b/node_modules/yaml/dist/schema/core/schema.js
var require_schema2 = __commonJS({
  "../../../../../setup-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_string2();
    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;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/yaml/2.9.0/289eaaf5fca48540c4ef4ebdb3c27244c62a4ca2ac0a5d76c6d0eea0d1f3190b/node_modules/yaml/dist/schema/json/schema.js
var require_schema3 = __commonJS({
  "../../../../../setup-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;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/yaml/2.9.0/289eaaf5fca48540c4ef4ebdb3c27244c62a4ca2ac0a5d76c6d0eea0d1f3190b/node_modules/yaml/dist/schema/yaml-1.1/binary.js
var require_binary2 = __commonJS({
  "../../../../../setup-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 i4 = 0; i4 < str2.length; ++i4)
            buffer3[i4] = str2.charCodeAt(i4);
          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 i4 = 0; i4 < buf.length; ++i4)
            s += String.fromCharCode(buf[i4]);
          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 i4 = 0, o2 = 0; i4 < n2; ++i4, o2 += lineWidth) {
            lines[i4] = 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;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/yaml/2.9.0/289eaaf5fca48540c4ef4ebdb3c27244c62a4ca2ac0a5d76c6d0eea0d1f3190b/node_modules/yaml/dist/schema/yaml-1.1/pairs.js
var require_pairs2 = __commonJS({
  "../../../../../setup-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 i4 = 0; i4 < seq2.items.length; ++i4) {
          let item = seq2.items[i4];
          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[i4] = 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 i4 = 0;
      if (iterable && Symbol.iterator in Object(iterable))
        for (let it of iterable) {
          if (typeof replacer2 === "function")
            it = replacer2.call(iterable, String(i4++), 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;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/yaml/2.9.0/289eaaf5fca48540c4ef4ebdb3c27244c62a4ca2ac0a5d76c6d0eea0d1f3190b/node_modules/yaml/dist/schema/yaml-1.1/omap.js
var require_omap2 = __commonJS({
  "../../../../../setup-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;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/yaml/2.9.0/289eaaf5fca48540c4ef4ebdb3c27244c62a4ca2ac0a5d76c6d0eea0d1f3190b/node_modules/yaml/dist/schema/yaml-1.1/bool.js
var require_bool3 = __commonJS({
  "../../../../../setup-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;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/yaml/2.9.0/289eaaf5fca48540c4ef4ebdb3c27244c62a4ca2ac0a5d76c6d0eea0d1f3190b/node_modules/yaml/dist/schema/yaml-1.1/float.js
var require_float3 = __commonJS({
  "../../../../../setup-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;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/yaml/2.9.0/289eaaf5fca48540c4ef4ebdb3c27244c62a4ca2ac0a5d76c6d0eea0d1f3190b/node_modules/yaml/dist/schema/yaml-1.1/int.js
var require_int3 = __commonJS({
  "../../../../../setup-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;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/yaml/2.9.0/289eaaf5fca48540c4ef4ebdb3c27244c62a4ca2ac0a5d76c6d0eea0d1f3190b/node_modules/yaml/dist/schema/yaml-1.1/set.js
var require_set2 = __commonJS({
  "../../../../../setup-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;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/yaml/2.9.0/289eaaf5fca48540c4ef4ebdb3c27244c62a4ca2ac0a5d76c6d0eea0d1f3190b/node_modules/yaml/dist/schema/yaml-1.1/timestamp.js
var require_timestamp2 = __commonJS({
  "../../../../../setup-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 d3 = parseSexagesimal(tz, false);
          if (Math.abs(d3) < 30)
            d3 *= 60;
          date -= 6e4 * d3;
        }
        return new Date(date);
      },
      stringify: ({ value }) => value?.toISOString().replace(/(T00:00:00)?\.000Z$/, "") ?? ""
    };
    exports2.floatTime = floatTime;
    exports2.intTime = intTime;
    exports2.timestamp = timestamp2;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/yaml/2.9.0/289eaaf5fca48540c4ef4ebdb3c27244c62a4ca2ac0a5d76c6d0eea0d1f3190b/node_modules/yaml/dist/schema/yaml-1.1/schema.js
var require_schema4 = __commonJS({
  "../../../../../setup-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_string2();
    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;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/yaml/2.9.0/289eaaf5fca48540c4ef4ebdb3c27244c62a4ca2ac0a5d76c6d0eea0d1f3190b/node_modules/yaml/dist/schema/tags.js
var require_tags = __commonJS({
  "../../../../../setup-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_string2();
    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;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/yaml/2.9.0/289eaaf5fca48540c4ef4ebdb3c27244c62a4ca2ac0a5d76c6d0eea0d1f3190b/node_modules/yaml/dist/schema/Schema.js
var require_Schema = __commonJS({
  "../../../../../setup-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_string2();
    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;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/yaml/2.9.0/289eaaf5fca48540c4ef4ebdb3c27244c62a4ca2ac0a5d76c6d0eea0d1f3190b/node_modules/yaml/dist/stringify/stringifyDocument.js
var require_stringifyDocument = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/yaml/2.9.0/289eaaf5fca48540c4ef4ebdb3c27244c62a4ca2ac0a5d76c6d0eea0d1f3190b/node_modules/yaml/dist/stringify/stringifyDocument.js"(exports2) {
    "use strict";
    var identity5 = require_identity();
    var stringify2 = 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 = stringify2.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 = stringify2.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(stringify2.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;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/yaml/2.9.0/289eaaf5fca48540c4ef4ebdb3c27244c62a4ca2ac0a5d76c6d0eea0d1f3190b/node_modules/yaml/dist/doc/Document.js
var require_Document = __commonJS({
  "../../../../../setup-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(path240, value) {
        if (assertCollection(this.contents))
          this.contents.addIn(path240, 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(path240) {
        if (Collection.isEmptyPath(path240)) {
          if (this.contents == null)
            return false;
          this.contents = null;
          return true;
        }
        return assertCollection(this.contents) ? this.contents.deleteIn(path240) : 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(path240, keepScalar) {
        if (Collection.isEmptyPath(path240))
          return !keepScalar && identity5.isScalar(this.contents) ? this.contents.value : this.contents;
        return identity5.isCollection(this.contents) ? this.contents.getIn(path240, 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(path240) {
        if (Collection.isEmptyPath(path240))
          return this.contents !== void 0;
        return identity5.isCollection(this.contents) ? this.contents.hasIn(path240) : 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(path240, value) {
        if (Collection.isEmptyPath(path240)) {
          this.contents = value;
        } else if (this.contents == null) {
          this.contents = Collection.collectionFromPath(this.schema, Array.from(path240), value);
        } else if (assertCollection(this.contents)) {
          this.contents.setIn(path240, 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;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/yaml/2.9.0/289eaaf5fca48540c4ef4ebdb3c27244c62a4ca2ac0a5d76c6d0eea0d1f3190b/node_modules/yaml/dist/errors.js
var require_errors6 = __commonJS({
  "../../../../../setup-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, lc2) => (error) => {
      if (error.pos[0] === -1)
        return;
      error.linePos = error.pos.map((pos) => lc2.linePos(pos));
      const { line, col } = error.linePos[0];
      error.message += ` at line ${line}, column ${col}`;
      let ci = col - 1;
      let lineStr = src2.substring(lc2.lineStarts[line - 1], lc2.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(lc2.lineStarts[line - 2], lc2.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;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/yaml/2.9.0/289eaaf5fca48540c4ef4ebdb3c27244c62a4ca2ac0a5d76c6d0eea0d1f3190b/node_modules/yaml/dist/compose/resolve-props.js
var require_resolve_props = __commonJS({
  "../../../../../setup-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;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/yaml/2.9.0/289eaaf5fca48540c4ef4ebdb3c27244c62a4ca2ac0a5d76c6d0eea0d1f3190b/node_modules/yaml/dist/compose/util-contains-newline.js
var require_util_contains_newline = __commonJS({
  "../../../../../setup-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;
  }
});

// ../../../../../setup-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({
  "../../../../../setup-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;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/yaml/2.9.0/289eaaf5fca48540c4ef4ebdb3c27244c62a4ca2ac0a5d76c6d0eea0d1f3190b/node_modules/yaml/dist/compose/util-map-includes.js
var require_util_map_includes = __commonJS({
  "../../../../../setup-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;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/yaml/2.9.0/289eaaf5fca48540c4ef4ebdb3c27244c62a4ca2ac0a5d76c6d0eea0d1f3190b/node_modules/yaml/dist/compose/resolve-block-map.js
var require_resolve_block_map = __commonJS({
  "../../../../../setup-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;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/yaml/2.9.0/289eaaf5fca48540c4ef4ebdb3c27244c62a4ca2ac0a5d76c6d0eea0d1f3190b/node_modules/yaml/dist/compose/resolve-block-seq.js
var require_resolve_block_seq = __commonJS({
  "../../../../../setup-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;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/yaml/2.9.0/289eaaf5fca48540c4ef4ebdb3c27244c62a4ca2ac0a5d76c6d0eea0d1f3190b/node_modules/yaml/dist/compose/resolve-end.js
var require_resolve_end = __commonJS({
  "../../../../../setup-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;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/yaml/2.9.0/289eaaf5fca48540c4ef4ebdb3c27244c62a4ca2ac0a5d76c6d0eea0d1f3190b/node_modules/yaml/dist/compose/resolve-flow-collection.js
var require_resolve_flow_collection = __commonJS({
  "../../../../../setup-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 isMap2 = fc.start.source === "{";
      const fcName = isMap2 ? "flow map" : "flow sequence";
      const NodeClass = tag?.nodeClass ?? (isMap2 ? 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 i4 = 0; i4 < fc.items.length; ++i4) {
        const collItem = fc.items[i4];
        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 (i4 === 0 && props3.comma)
              onError(props3.comma, "UNEXPECTED_TOKEN", `Unexpected , in ${fcName}`);
            else if (i4 < 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 (!isMap2 && 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 (i4 === 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 (!isMap2 && !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 (!isMap2 && !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 (isMap2) {
            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 = isMap2 ? "}" : "]";
      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;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/yaml/2.9.0/289eaaf5fca48540c4ef4ebdb3c27244c62a4ca2ac0a5d76c6d0eea0d1f3190b/node_modules/yaml/dist/compose/compose-collection.js
var require_compose_collection = __commonJS({
  "../../../../../setup-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;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/yaml/2.9.0/289eaaf5fca48540c4ef4ebdb3c27244c62a4ca2ac0a5d76c6d0eea0d1f3190b/node_modules/yaml/dist/compose/resolve-block-scalar.js
var require_resolve_block_scalar = __commonJS({
  "../../../../../setup-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 i4 = lines.length - 1; i4 >= 0; --i4) {
        const content = lines[i4][1];
        if (content === "" || content === "\r")
          chompStart = i4;
        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 i4 = 0; i4 < chompStart; ++i4) {
        const [indent, content] = lines[i4];
        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 = i4;
          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 i4 = lines.length - 1; i4 >= chompStart; --i4) {
        if (lines[i4][0].length > trimIndent)
          chompStart = i4 + 1;
      }
      let value = "";
      let sep2 = "";
      let prevMoreIndented = false;
      for (let i4 = 0; i4 < contentStart; ++i4)
        value += lines[i4][0].slice(trimIndent) + "\n";
      for (let i4 = contentStart; i4 < chompStart; ++i4) {
        let [indent, content] = lines[i4];
        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 i4 = chompStart; i4 < lines.length; ++i4)
            value += "\n" + lines[i4][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 i4 = 1; i4 < source.length; ++i4) {
        const ch = source[i4];
        if (!chomp && (ch === "-" || ch === "+"))
          chomp = ch;
        else {
          const n2 = Number(ch);
          if (!indent && n2)
            indent = n2;
          else if (error === -1)
            error = offset + i4;
        }
      }
      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 i4 = 1; i4 < props3.length; ++i4) {
        const token = props3[i4];
        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 split4 = source.split(/\n( *)/);
      const first = split4[0];
      const m = first.match(/^( *)/);
      const line0 = m?.[1] ? [m[1], first.slice(m[1].length)] : ["", first];
      const lines = [line0];
      for (let i4 = 1; i4 < split4.length; i4 += 2)
        lines.push([split4[i4], split4[i4 + 1]]);
      return lines;
    }
    exports2.resolveBlockScalar = resolveBlockScalar;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/yaml/2.9.0/289eaaf5fca48540c4ef4ebdb3c27244c62a4ca2ac0a5d76c6d0eea0d1f3190b/node_modules/yaml/dist/compose/resolve-flow-scalar.js
var require_resolve_flow_scalar = __commonJS({
  "../../../../../setup-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 i4 = 1; i4 < source.length - 1; ++i4) {
        const ch = source[i4];
        if (ch === "\r" && source[i4 + 1] === "\n")
          continue;
        if (ch === "\n") {
          const { fold, offset } = foldNewline(source, i4);
          res += fold;
          i4 = offset;
        } else if (ch === "\\") {
          let next2 = source[++i4];
          const cc = escapeCodes[next2];
          if (cc)
            res += cc;
          else if (next2 === "\n") {
            next2 = source[i4 + 1];
            while (next2 === " " || next2 === "	")
              next2 = source[++i4 + 1];
          } else if (next2 === "\r" && source[i4 + 1] === "\n") {
            next2 = source[++i4 + 1];
            while (next2 === " " || next2 === "	")
              next2 = source[++i4 + 1];
          } else if (next2 === "x" || next2 === "u" || next2 === "U") {
            const length = next2 === "x" ? 2 : next2 === "u" ? 4 : 8;
            res += parseCharCode(source, i4 + 1, length, onError);
            i4 += length;
          } else {
            const raw = source.substr(i4 - 1, 2);
            onError(i4 - 1, "BAD_DQ_ESCAPE", `Invalid escape sequence ${raw}`);
            res += raw;
          }
        } else if (ch === " " || ch === "	") {
          const wsStart = i4;
          let next2 = source[i4 + 1];
          while (next2 === " " || next2 === "	")
            next2 = source[++i4 + 1];
          if (next2 !== "\n" && !(next2 === "\r" && source[i4 + 2] === "\n"))
            res += i4 > wsStart ? source.slice(wsStart, i4 + 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;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/yaml/2.9.0/289eaaf5fca48540c4ef4ebdb3c27244c62a4ca2ac0a5d76c6d0eea0d1f3190b/node_modules/yaml/dist/compose/compose-scalar.js
var require_compose_scalar = __commonJS({
  "../../../../../setup-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;
  }
});

// ../../../../../setup-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({
  "../../../../../setup-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 i4 = pos - 1; i4 >= 0; --i4) {
          let st = before[i4];
          switch (st.type) {
            case "space":
            case "comment":
            case "newline":
              offset -= st.source.length;
              continue;
          }
          st = before[++i4];
          while (st?.type === "space") {
            offset += st.source.length;
            st = before[++i4];
          }
          break;
        }
      }
      return offset;
    }
    exports2.emptyScalarPosition = emptyScalarPosition;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/yaml/2.9.0/289eaaf5fca48540c4ef4ebdb3c27244c62a4ca2ac0a5d76c6d0eea0d1f3190b/node_modules/yaml/dist/compose/compose-node.js
var require_compose_node = __commonJS({
  "../../../../../setup-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;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/yaml/2.9.0/289eaaf5fca48540c4ef4ebdb3c27244c62a4ca2ac0a5d76c6d0eea0d1f3190b/node_modules/yaml/dist/compose/compose-doc.js
var require_compose_doc = __commonJS({
  "../../../../../setup-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 opts3 = Object.assign({ _directives: directives }, options);
      const doc = new Document.Document(void 0, opts3);
      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;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/yaml/2.9.0/289eaaf5fca48540c4ef4ebdb3c27244c62a4ca2ac0a5d76c6d0eea0d1f3190b/node_modules/yaml/dist/compose/composer.js
var require_composer = __commonJS({
  "../../../../../setup-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 i4 = 0; i4 < prelude.length; ++i4) {
        const source = prelude[i4];
        switch (source[0]) {
          case "#":
            comment += (comment === "" ? "" : afterEmptyLine ? "\n\n" : "\n") + (source.substring(1) || " ");
            atComment = true;
            afterEmptyLine = false;
            break;
          case "%":
            if (prelude[i4 + 1]?.[0] !== "#")
              i4 += 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 i4 = 0; i4 < this.errors.length; ++i4)
            doc.errors.push(this.errors[i4]);
          for (let i4 = 0; i4 < this.warnings.length; ++i4)
            doc.warnings.push(this.warnings[i4]);
        } 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 opts3 = Object.assign({ _directives: this.directives }, this.options);
          const doc = new Document.Document(void 0, opts3);
          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;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/yaml/2.9.0/289eaaf5fca48540c4ef4ebdb3c27244c62a4ca2ac0a5d76c6d0eea0d1f3190b/node_modules/yaml/dist/parse/cst-scalar.js
var require_cst_scalar = __commonJS({
  "../../../../../setup-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;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/yaml/2.9.0/289eaaf5fca48540c4ef4ebdb3c27244c62a4ca2ac0a5d76c6d0eea0d1f3190b/node_modules/yaml/dist/parse/cst-stringify.js
var require_cst_stringify = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/yaml/2.9.0/289eaaf5fca48540c4ef4ebdb3c27244c62a4ca2ac0a5d76c6d0eea0d1f3190b/node_modules/yaml/dist/parse/cst-stringify.js"(exports2) {
    "use strict";
    var stringify2 = (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 = stringify2;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/yaml/2.9.0/289eaaf5fca48540c4ef4ebdb3c27244c62a4ca2ac0a5d76c6d0eea0d1f3190b/node_modules/yaml/dist/parse/cst-visit.js
var require_cst_visit = __commonJS({
  "../../../../../setup-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, path240) => {
      let item = cst;
      for (const [field, index2] of path240) {
        const tok = item?.[field];
        if (tok && "items" in tok) {
          item = tok.items[index2];
        } else
          return void 0;
      }
      return item;
    };
    visit.parentCollection = (cst, path240) => {
      const parent = visit.itemAtPath(cst, path240.slice(0, -1));
      const field = path240[path240.length - 1][0];
      const coll = parent?.[field];
      if (coll && "items" in coll)
        return coll;
      throw new Error("Parent collection not found");
    };
    function _visit(path240, item, visitor) {
      let ctrl = visitor(item, path240);
      if (typeof ctrl === "symbol")
        return ctrl;
      for (const field of ["key", "value"]) {
        const token = item[field];
        if (token && "items" in token) {
          for (let i4 = 0; i4 < token.items.length; ++i4) {
            const ci = _visit(Object.freeze(path240.concat([[field, i4]])), token.items[i4], visitor);
            if (typeof ci === "number")
              i4 = ci - 1;
            else if (ci === BREAK)
              return BREAK;
            else if (ci === REMOVE) {
              token.items.splice(i4, 1);
              i4 -= 1;
            }
          }
          if (typeof ctrl === "function" && field === "key")
            ctrl = ctrl(item, path240);
        }
      }
      return typeof ctrl === "function" ? ctrl(item, path240) : ctrl;
    }
    exports2.visit = visit;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/yaml/2.9.0/289eaaf5fca48540c4ef4ebdb3c27244c62a4ca2ac0a5d76c6d0eea0d1f3190b/node_modules/yaml/dist/parse/cst.js
var require_cst = __commonJS({
  "../../../../../setup-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 isScalar2 = (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 = isScalar2;
    exports2.prettyToken = prettyToken;
    exports2.tokenType = tokenType;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/yaml/2.9.0/289eaaf5fca48540c4ef4ebdb3c27244c62a4ca2ac0a5d76c6d0eea0d1f3190b/node_modules/yaml/dist/parse/lexer.js
var require_lexer = __commonJS({
  "../../../../../setup-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 i4 = this.pos;
        let ch = this.buffer[i4];
        while (ch === " " || ch === "	")
          ch = this.buffer[++i4];
        if (!ch || ch === "#" || ch === "\n")
          return true;
        if (ch === "\r")
          return this.buffer[i4 + 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 i4 = this.pos;
        while (true) {
          const ch = this.buffer[++i4];
          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 i5 = this.pos; ch = this.buffer[i5]; ++i5) {
          switch (ch) {
            case " ":
              indent += 1;
              break;
            case "\n":
              nl = i5;
              indent = 0;
              break;
            case "\r": {
              const next2 = this.buffer[i5 + 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 i4 = nl + 1;
        ch = this.buffer[i4];
        while (ch === " ")
          ch = this.buffer[++i4];
        if (ch === "	") {
          while (ch === "	" || ch === " " || ch === "\r" || ch === "\n")
            ch = this.buffer[++i4];
          nl = i4 - 1;
        } else if (!this.blockScalarKeep) {
          do {
            let i5 = nl - 1;
            let ch2 = this.buffer[i5];
            if (ch2 === "\r")
              ch2 = this.buffer[--i5];
            const lastChar = i5;
            while (ch2 === " ")
              ch2 = this.buffer[--i5];
            if (ch2 === "\n" && i5 >= this.pos && i5 + 1 + indent > lastChar)
              nl = i5;
            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 i4 = this.pos - 1;
        let ch;
        while (ch = this.buffer[++i4]) {
          if (ch === ":") {
            const next2 = this.buffer[i4 + 1];
            if (isEmpty4(next2) || inFlow && flowIndicatorChars.has(next2))
              break;
            end = i4;
          } else if (isEmpty4(ch)) {
            let next2 = this.buffer[i4 + 1];
            if (ch === "\r") {
              if (next2 === "\n") {
                i4 += 1;
                ch = "\n";
                next2 = this.buffer[i4 + 1];
              } else
                end = i4;
            }
            if (next2 === "#" || inFlow && flowIndicatorChars.has(next2))
              break;
            if (ch === "\n") {
              const cs = this.continueScalar(i4 + 1);
              if (cs === -1)
                break;
              i4 = Math.max(i4, cs - 2);
            }
          } else {
            if (inFlow && flowIndicatorChars.has(ch))
              break;
            end = i4;
          }
        }
        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(i4, allowEmpty) {
        const s = this.buffer.slice(this.pos, i4);
        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 i4 = this.pos + 2;
          let ch = this.buffer[i4];
          while (!isEmpty4(ch) && ch !== ">")
            ch = this.buffer[++i4];
          return yield* this.pushToIndex(ch === ">" ? i4 + 1 : i4, false);
        } else {
          let i4 = this.pos + 1;
          let ch = this.buffer[i4];
          while (ch) {
            if (tagChars.has(ch))
              ch = this.buffer[++i4];
            else if (ch === "%" && hexDigits.has(this.buffer[i4 + 1]) && hexDigits.has(this.buffer[i4 + 2])) {
              ch = this.buffer[i4 += 3];
            } else
              break;
          }
          return yield* this.pushToIndex(i4, 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 i4 = this.pos - 1;
        let ch;
        do {
          ch = this.buffer[++i4];
        } while (ch === " " || allowTabs && ch === "	");
        const n2 = i4 - this.pos;
        if (n2 > 0) {
          yield this.buffer.substr(this.pos, n2);
          this.pos = i4;
        }
        return n2;
      }
      *pushUntil(test) {
        let i4 = this.pos;
        let ch = this.buffer[i4];
        while (!test(ch))
          ch = this.buffer[++i4];
        return yield* this.pushToIndex(i4, false);
      }
    };
    exports2.Lexer = Lexer;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/yaml/2.9.0/289eaaf5fca48540c4ef4ebdb3c27244c62a4ca2ac0a5d76c6d0eea0d1f3190b/node_modules/yaml/dist/parse/line-counter.js
var require_line_counter = __commonJS({
  "../../../../../setup-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;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/yaml/2.9.0/289eaaf5fca48540c4ef4ebdb3c27244c62a4ca2ac0a5d76c6d0eea0d1f3190b/node_modules/yaml/dist/parse/parser.js
var require_parser = __commonJS({
  "../../../../../setup-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 i4 = 0; i4 < list2.length; ++i4)
        if (list2[i4].type === type4)
          return true;
      return false;
    }
    function findNonEmptyIndex(list2) {
      for (let i4 = 0; i4 < list2.length; ++i4) {
        switch (list2[i4].type) {
          case "space":
          case "comment":
          case "newline":
            break;
          default:
            return i4;
        }
      }
      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 i4 = prev.length;
      loop: while (--i4 >= 0) {
        switch (prev[i4].type) {
          case "doc-start":
          case "explicit-key-ind":
          case "map-value-ind":
          case "seq-item-ind":
          case "newline":
            break loop;
        }
      }
      while (prev[++i4]?.type === "space") {
      }
      return prev.splice(i4, prev.length);
    }
    function arrayPushArray(target2, source) {
      if (source.length < 1e5)
        Array.prototype.push.apply(target2, source);
      else
        for (let i4 = 0; i4 < source.length; ++i4)
          target2.push(source[i4]);
    }
    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 i4 = 0; i4 < it.sep.length; ++i4) {
              const st = it.sep[i4];
              switch (st.type) {
                case "newline":
                  nl.push(i4);
                  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 fs131 = this.flowScalar(this.type);
              if (atNextItem || it.value) {
                map26.items.push({ start, key: fs131, sep: [] });
                this.onKeyLine = true;
              } else if (it.sep) {
                this.stack.push(fs131);
              } else {
                Object.assign(it, { key: fs131, 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 fs131 = this.flowScalar(this.type);
              if (!it || it.value)
                fc.items.push({ start: [], key: fs131, sep: [] });
              else if (it.sep)
                this.stack.push(fs131);
              else
                Object.assign(it, { key: fs131, 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;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/yaml/2.9.0/289eaaf5fca48540c4ef4ebdb3c27244c62a4ca2ac0a5d76c6d0eea0d1f3190b/node_modules/yaml/dist/public-api.js
var require_public_api = __commonJS({
  "../../../../../setup-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 parse12(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 stringify2(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 = parse12;
    exports2.parseAllDocuments = parseAllDocuments;
    exports2.parseDocument = parseDocument;
    exports2.stringify = stringify2;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/yaml/2.9.0/289eaaf5fca48540c4ef4ebdb3c27244c62a4ca2ac0a5d76c6d0eea0d1f3190b/node_modules/yaml/dist/index.js
var require_dist6 = __commonJS({
  "../../../../../setup-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 i4 = 0; i4 < Math.max(seq2.items.length, target2.length); i4++) {
    const existingItem = seq2.items[i4];
    const targetItem = target2[i4];
    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_lib100 = __esm({
  "../yaml/document-sync/lib/index.js"() {
    "use strict";
    init_patchDocument();
  }
});

// ../workspace/workspace-manifest-writer/lib/index.js
import fs58 from "node:fs";
import path94 from "node:path";
import util32 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 fs58.promises.mkdir(dir, { recursive: true });
  await (0, import_write_file_atomic7.default)(path94.join(dir, fileName), manifestStr);
}
async function readManifestRaw2(file) {
  try {
    return (await fs58.promises.readFile(file)).toString();
  } catch (err2) {
    if (util32.types.isNativeError(err2) && "code" in err2 && err2.code === "ENOENT") {
      return void 0;
    }
    throw err2;
  }
}
async function updateWorkspaceManifest(dir, opts3) {
  const fileName = opts3.fileName ?? DEFAULT_FILENAME;
  const workspaceManifestStr = await readManifestRaw2(path94.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 = opts3.updatedCatalogs != null && addCatalogs(manifest, opts3.updatedCatalogs);
  if (opts3.cleanupUnusedCatalogs) {
    shouldBeUpdated = removePackagesFromWorkspaceCatalog(manifest, opts3.allProjects ?? []) || shouldBeUpdated;
  }
  const updatedFields = { ...opts3.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 (opts3.updatedOverrides) {
    manifest.overrides ??= {};
    for (const [key, value] of Object.entries(opts3.updatedOverrides)) {
      if (!equals_default(manifest.overrides[key], value)) {
        shouldBeUpdated = true;
        manifest.overrides[key] = value;
      }
    }
  }
  if (opts3.addedMinimumReleaseAgeExcludes?.length) {
    const existing = manifest.minimumReleaseAgeExclude ?? [];
    const merged = mergePackageVersionSpecs([...existing, ...opts3.addedMinimumReleaseAgeExcludes]);
    if (!equals_default(existing, merged)) {
      shouldBeUpdated = true;
      manifest.minimumReleaseAgeExclude = merged;
    }
  }
  if (!shouldBeUpdated) {
    return;
  }
  if (Object.keys(manifest).length === 0) {
    await fs58.promises.rm(path94.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 (!isPlainObject3(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 (!isPlainObject3(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 i4 = start + 1; i4 < keys4.length; i4++) {
    if ((0, import_util8.lexCompare)(keys4[i4 - 1], keys4[i4]) > 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 isPlainObject3(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 i4 = 1; i4 < items.length; i4++) {
    const key = keyOf(items[i4]);
    if (key == null || key.spaceBefore)
      continue;
    if (usesBlankLineStyle) {
      key.spaceBefore = true;
      continue;
    }
    if (originalKeySet.has(key.value))
      continue;
    const nextKey = items[i4 + 1] ? keyOf(items[i4 + 1]) : null;
    const prevKey = items[i4 - 1] ? keyOf(items[i4 - 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_lib101 = __esm({
  "../workspace/workspace-manifest-writer/lib/index.js"() {
    "use strict";
    init_lib99();
    init_lib37();
    init_lib();
    import_util8 = __toESM(require_dist4(), 1);
    init_lib43();
    init_lib100();
    init_es();
    import_write_file_atomic7 = __toESM(require_lib10(), 1);
    import_yaml3 = __toESM(require_dist6(), 1);
    DEFAULT_FILENAME = WORKSPACE_MANIFEST_FILENAME;
  }
});

// ../config/writer/lib/index.js
async function writeSettings(opts3) {
  await updateWorkspaceManifest(opts3.workspaceDir, {
    updatedFields: opts3.updatedSettings,
    updatedOverrides: opts3.updatedOverrides,
    addedMinimumReleaseAgeExcludes: opts3.addedMinimumReleaseAgeExcludes
  });
}
var init_lib102 = __esm({
  "../config/writer/lib/index.js"() {
    "use strict";
    init_lib101();
  }
});

// ../global/packages/lib/cacheKey.js
function createGlobalCacheKey(opts3) {
  const sortedAliases = [...opts3.aliases].sort(import_util9.lexCompare);
  const sortedRegistries = Object.entries(opts3.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_lib34();
    import_util9 = __toESM(require_dist4(), 1);
  }
});

// ../global/packages/lib/globalPackageDir.js
import crypto8 from "node:crypto";
import fs59 from "node:fs";
import path95 from "node:path";
import util33 from "node:util";
function getHashLink(globalDir, hash2) {
  return path95.join(globalDir, hash2);
}
function createInstallDir(globalDir) {
  fs59.mkdirSync(globalDir, { recursive: true });
  for (let i4 = 0; i4 < 10; i4++) {
    const name = `${process.pid.toString(16)}-${Date.now().toString(16)}-${crypto8.randomBytes(8).toString("hex")}`;
    const dir = path95.join(globalDir, name);
    try {
      fs59.mkdirSync(dir);
      return dir;
    } catch (err2) {
      if (util33.types.isNativeError(err2) && "code" in err2 && err2.code === "EEXIST")
        continue;
      throw err2;
    }
  }
  throw new Error("Could not create a unique global install directory");
}
var init_globalPackageDir = __esm({
  "../global/packages/lib/globalPackageDir.js"() {
    "use strict";
  }
});

// ../global/packages/lib/scanGlobalPackages.js
import fs60 from "node:fs";
import path96 from "node:path";
import util34 from "node:util";
function isValidGlobalDependencyAlias(alias) {
  if (alias.length === 0)
    return false;
  if (/^[._-]/.test(alias))
    return false;
  if (alias.trim() !== alias)
    return false;
  if (RESERVED_ALIASES.has(alias.toLowerCase()))
    return false;
  if (isUrlFriendly(alias))
    return true;
  const scoped = /^@([^/]+)\/([^/]+)$/.exec(alias);
  if (scoped) {
    const [, scope, name] = scoped;
    return !name.startsWith(".") && isUrlFriendly(scope) && isUrlFriendly(name);
  }
  return false;
}
function pickValidDependencies(dependencies) {
  const result2 = {};
  for (const [alias, spec] of Object.entries(dependencies)) {
    if (isValidGlobalDependencyAlias(alias)) {
      result2[alias] = spec;
    }
  }
  return result2;
}
function scanGlobalPackages(globalDir) {
  let entries;
  try {
    entries = fs60.readdirSync(globalDir, { withFileTypes: true });
  } catch (err2) {
    if (util34.types.isNativeError(err2) && "code" in err2 && err2.code === "ENOENT") {
      return [];
    }
    throw err2;
  }
  const result2 = [];
  for (const entry of entries) {
    if (!entry.isSymbolicLink())
      continue;
    const linkPath = path96.join(globalDir, entry.name);
    let installDir;
    try {
      installDir = fs60.realpathSync(linkPath);
    } catch {
      continue;
    }
    let pkgJson2;
    try {
      pkgJson2 = readPackageJsonFromDirRawSync(installDir);
    } catch {
      continue;
    }
    if (!pkgJson2.dependencies)
      continue;
    const dependencies = pickValidDependencies(pkgJson2.dependencies);
    if (Object.keys(dependencies).length === 0)
      continue;
    result2.push({
      hash: entry.name,
      installDir,
      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(path96.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 = path96.resolve(globalDir);
  let entries;
  try {
    entries = fs60.readdirSync(globalDir, { withFileTypes: true });
  } catch {
    return;
  }
  const referenced = /* @__PURE__ */ new Set();
  for (const entry of entries) {
    if (!entry.isSymbolicLink())
      continue;
    try {
      referenced.add(fs60.realpathSync(path96.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 = path96.join(globalDir, entry.name);
    if (referenced.has(dirPath))
      continue;
    try {
      const stat2 = fs60.statSync(dirPath);
      if (now - Math.max(stat2.birthtimeMs, stat2.ctimeMs) < SAFETY_WINDOW_MS)
        continue;
    } catch {
      continue;
    }
    fs60.rmSync(dirPath, { recursive: true, force: true });
  }
}
async function getInstalledBinNames(info) {
  const bins = /* @__PURE__ */ new Set();
  const aliases = Object.keys(info.dependencies);
  const modulesDir = path96.join(info.installDir, "node_modules");
  await Promise.all(aliases.map(async (alias) => {
    const depDir = path96.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 RESERVED_ALIASES, isUrlFriendly;
var init_scanGlobalPackages = __esm({
  "../global/packages/lib/scanGlobalPackages.js"() {
    "use strict";
    init_lib7();
    init_lib5();
    RESERVED_ALIASES = /* @__PURE__ */ new Set(["node_modules", "favicon.ico"]);
    isUrlFriendly = (segment) => encodeURIComponent(segment) === segment;
  }
});

// ../global/packages/lib/index.js
var init_lib103 = __esm({
  "../global/packages/lib/index.js"() {
    "use strict";
    init_cacheKey();
    init_globalPackageDir();
    init_scanGlobalPackages();
  }
});

// ../global/commands/lib/checkGlobalBinConflicts.js
import fs61 from "node:fs";
import path97 from "node:path";
async function checkGlobalBinConflicts(opts3) {
  const binsToSkip = /* @__PURE__ */ new Set();
  const newBinOwners = /* @__PURE__ */ new Map();
  await Promise.all(opts3.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) => binSlotExists(opts3.globalBinDir, name)));
  if (conflicting.size === 0)
    return binsToSkip;
  const existingPackages = scanGlobalPackages(opts3.globalDir);
  for (const existingPkg of existingPackages) {
    if (opts3.shouldSkip(existingPkg))
      continue;
    const modulesDir = path97.join(existingPkg.installDir, "node_modules");
    for (const alias of Object.keys(existingPkg.dependencies)) {
      const depDir = path97.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;
}
function binSlotExists(globalBinDir, name) {
  if (fs61.existsSync(path97.join(globalBinDir, name)))
    return true;
  return process.platform === "win32" && fs61.existsSync(path97.join(globalBinDir, `${name}.exe`));
}
var init_checkGlobalBinConflicts = __esm({
  "../global/commands/lib/checkGlobalBinConflicts.js"() {
    "use strict";
    init_lib7();
    init_lib2();
    init_lib103();
    init_lib5();
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/cmd-extension/2.0.0/097570cd6df7f312030b5c3d573963575f7e8b5500eebbf732719aa30b61b8f7/node_modules/cmd-extension/index.js
import path98 from "node:path";
var _cmdExtension, cmdExtension;
var init_cmd_extension = __esm({
  "../../../../../setup-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(path98.delimiter).find((ext) => ext.toUpperCase() === ".CMD");
    }
    cmdExtension = _cmdExtension || ".cmd";
  }
});

// ../bins/remover/lib/removeBins.js
import path99 from "node:path";
async function removeOnWin(cmd) {
  removalLogger.debug(cmd);
  await Promise.all([
    rimraf(cmd),
    rimraf(`${cmd}.ps1`),
    rimraf(`${cmd}${cmdExtension}`),
    // The `node` bin is linked as a real `<cmd>.exe` (see the node
    // special-case in `@pnpm/bins.linker`), so it must be removed too —
    // otherwise a stale `node.exe` survives on PATH after uninstall.
    rimraf(`${cmd}.exe`)
  ]);
}
async function removeOnNonWin(p) {
  removalLogger.debug(p);
  return rimraf(p);
}
async function removeBinsOfDependency(dependencyDir, opts3) {
  const uninstalledPkgJson = await safeReadPackageJsonFromDir(dependencyDir);
  if (!uninstalledPkgJson)
    return;
  const cmds = await getBinsFromPackageManifest(uninstalledPkgJson, dependencyDir);
  if (!opts3.dryRun) {
    await Promise.all(cmds.map((cmd) => path99.join(opts3.binsDir, cmd.name)).map(removeBin));
  }
  return uninstalledPkgJson;
}
var import_is_windows8, removeBin;
var init_removeBins = __esm({
  "../bins/remover/lib/removeBins.js"() {
    "use strict";
    init_lib7();
    init_lib6();
    init_lib5();
    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_lib104 = __esm({
  "../bins/remover/lib/index.js"() {
    "use strict";
    init_removeBins();
  }
});

// ../global/commands/lib/binOwnership.js
async function getBinNamesOfOtherGroups(globalDir, excludeHashes) {
  const others = scanGlobalPackages(globalDir).filter((pkg) => !excludeHashes.has(pkg.hash));
  const names = /* @__PURE__ */ new Set();
  await Promise.all(others.map(async (pkg) => {
    for (const name of await getInstalledBinNames(pkg)) {
      names.add(name);
    }
  }));
  return names;
}
var init_binOwnership = __esm({
  "../global/commands/lib/binOwnership.js"() {
    "use strict";
    init_lib103();
  }
});

// ../../../../../setup-pnpm/store/v11/links/@yarnpkg/extensions/2.0.6/d2397c120328e425b50ed6a10a79426578ecf522863132b798f048f4584b6140/node_modules/@yarnpkg/extensions/lib/index.js
var require_lib24 = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@yarnpkg/extensions/2.0.6/d2397c120328e425b50ed6a10a79426578ecf522863132b798f048f4584b6140/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_lib27();
  }
});

// ../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_semver25.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_semver25;
var init_createPackageExtender = __esm({
  "../hooks/read-package-hook/lib/createPackageExtender.js"() {
    "use strict";
    init_lib98();
    import_semver25 = __toESM(require_semver2(), 1);
  }
});

// ../hooks/read-package-hook/lib/isIntersectingRange.js
function isIntersectingRange(range1, range2) {
  return !range1 || range2 === range1 || import_semver26.default.validRange(range2) != null && import_semver26.default.validRange(range1) != null && import_semver26.default.intersects(range2, range1);
}
var import_semver26;
var init_isIntersectingRange = __esm({
  "../hooks/read-package-hook/lib/isIntersectingRange.js"() {
    "use strict";
    import_semver26 = __toESM(require_semver2(), 1);
  }
});

// ../hooks/read-package-hook/lib/createVersionsOverrider.js
import path100 from "node:path";
function createDependencyOverrider(overrides, rootDir) {
  const { genericVersionOverrides, convergeVersions } = splitOverrides(overrides, rootDir);
  if (genericVersionOverrides.length === 0 && convergeVersions.size === 0)
    return void 0;
  return (name, bareSpecifier, dir) => {
    const versionOverride = pickVersionOverride({ versionOverrides: [], genericVersionOverrides }, name, bareSpecifier);
    if (versionOverride) {
      return versionOverride.newBareSpecifier === "-" ? "-" : resolveOverriddenBareSpecifier(versionOverride, dir);
    }
    return convergeBareSpecifier(convergeVersions, name, bareSpecifier);
  };
}
function createVersionsOverrider(overrides, rootDir, opts3) {
  const { versionOverrides, genericVersionOverrides, convergeVersions } = splitOverrides(overrides, rootDir);
  return ((manifest, dir) => {
    const versionOverridesWithParent = versionOverrides.filter(({ parentPkg }) => {
      return parentPkg.name === manifest.name && (!parentPkg.bareSpecifier || import_semver27.default.satisfies(manifest.version, parentPkg.bareSpecifier));
    });
    overrideDepsOfPkg({ manifest, dir }, versionOverridesWithParent, genericVersionOverrides, {
      convergeVersions,
      convergeDeclaredRanges: opts3?.convergeDeclaredRanges
    });
    return manifest;
  });
}
function splitOverrides(overrides, rootDir) {
  const [convergeOverrides, explicitOverrides] = partition_default(({ converge: converge3 }) => converge3 === true, overrides);
  const [versionOverrides, genericVersionOverrides] = partition_default(({ parentPkg }) => parentPkg != null, explicitOverrides.map((override) => ({
    ...override,
    localTarget: createLocalTarget(override, rootDir)
  })));
  return {
    versionOverrides,
    genericVersionOverrides,
    convergeVersions: new Map(convergeOverrides.map((override) => [override.targetPkg.name, override.newBareSpecifier]))
  };
}
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 = !path100.isAbsolute(pkgPath);
  const absolutePath = specifiedViaRelativePath ? path100.join(rootDir, pkgPath) : pkgPath;
  return { absolutePath, specifiedViaRelativePath, protocol };
}
function overrideDepsOfPkg({ manifest, dir }, versionOverrides, genericVersionOverrides, convergeOpts) {
  const { dependencies, optionalDependencies, devDependencies, peerDependencies } = manifest;
  const _overrideDeps = overrideDeps.bind(null, { versionOverrides, genericVersionOverrides, dir, convergeOpts });
  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, convergeOpts }, deps, peerDeps) {
  for (const [name, bareSpecifier] of Object.entries(peerDeps ?? deps)) {
    const versionOverride = pickVersionOverride({ versionOverrides, genericVersionOverrides }, name, bareSpecifier);
    if (!versionOverride) {
      convergeDep(convergeOpts, { deps, peerDeps }, name, bareSpecifier);
      continue;
    }
    if (versionOverride.newBareSpecifier === "-") {
      if (peerDeps) {
        delete peerDeps[versionOverride.targetPkg.name];
      } else {
        delete deps[versionOverride.targetPkg.name];
      }
      continue;
    }
    const newBareSpecifier = resolveOverriddenBareSpecifier(versionOverride, dir);
    if (peerDeps == null || !isValidPeerRange(newBareSpecifier)) {
      deps[versionOverride.targetPkg.name] = newBareSpecifier;
    } else if (isValidPeerRange(newBareSpecifier)) {
      peerDeps[versionOverride.targetPkg.name] = newBareSpecifier;
    }
  }
}
function convergeDep(convergeOpts, { deps, peerDeps }, name, bareSpecifier) {
  recordConvergeDeclaredRange(convergeOpts, name, bareSpecifier);
  const convergeVersion = convergeBareSpecifier(convergeOpts.convergeVersions, name, bareSpecifier);
  if (convergeVersion == null)
    return;
  if (peerDeps == null) {
    deps[name] = convergeVersion;
  } else {
    peerDeps[name] = convergeVersion;
  }
}
function recordConvergeDeclaredRange({ convergeVersions, convergeDeclaredRanges }, name, bareSpecifier) {
  if (convergeDeclaredRanges == null)
    return;
  if (!convergeVersions.has(name) || import_semver27.default.validRange(bareSpecifier, true) == null)
    return;
  let ranges = convergeDeclaredRanges.get(name);
  if (ranges == null) {
    ranges = /* @__PURE__ */ new Set();
    convergeDeclaredRanges.set(name, ranges);
  }
  ranges.add(bareSpecifier);
}
function convergeBareSpecifier(convergeVersions, name, bareSpecifier) {
  const convergeVersion = convergeVersions.get(name);
  if (convergeVersion == null || import_semver27.default.validRange(bareSpecifier, true) == null)
    return void 0;
  return import_semver27.default.satisfies(convergeVersion, bareSpecifier, true) ? convergeVersion : void 0;
}
function pickVersionOverride({ versionOverrides, genericVersionOverrides }, name, bareSpecifier) {
  const matches2 = (override) => override.targetPkg.name === name && isIntersectingRange(override.targetPkg.bareSpecifier, bareSpecifier);
  return pickMostSpecificVersionOverride(versionOverrides.filter(matches2)) ?? pickMostSpecificVersionOverride(genericVersionOverrides.filter(matches2));
}
function resolveOverriddenBareSpecifier(versionOverride, dir) {
  return versionOverride.localTarget ? `${versionOverride.localTarget.protocol}${resolveLocalOverride(versionOverride.localTarget, dir)}` : versionOverride.newBareSpecifier;
}
function resolveLocalOverride({ specifiedViaRelativePath, absolutePath }, pkgDir) {
  return specifiedViaRelativePath && pkgDir ? (0, import_normalize_path5.default)(path100.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_semver27;
var init_createVersionsOverrider = __esm({
  "../hooks/read-package-hook/lib/createVersionsOverrider.js"() {
    "use strict";
    init_lib10();
    import_normalize_path5 = __toESM(require_normalize_path(), 1);
    init_es();
    import_semver27 = __toESM(require_semver2(), 1);
    init_isIntersectingRange();
  }
});

// ../hooks/read-package-hook/lib/createReadPackageHook.js
function getEffectivePackageExtensions({ ignoreCompatibilityDb, packageExtensions }) {
  const effectivePackageExtensions = {};
  if (!ignoreCompatibilityDb) {
    mergePackageExtensions(effectivePackageExtensions, import_extensions.packageExtensions);
  }
  if (!isEmpty_default(packageExtensions ?? {})) {
    mergePackageExtensions(effectivePackageExtensions, Object.entries(packageExtensions));
  }
  return isEmpty_default(effectivePackageExtensions) ? void 0 : effectivePackageExtensions;
}
function createReadPackageHook({ ignoreCompatibilityDb, lockfileDir, overrides, convergeDeclaredRanges, ignoredOptionalDependencies, packageExtensions, readPackageHook }) {
  const hooks = [];
  const effectivePackageExtensions = getEffectivePackageExtensions({
    ignoreCompatibilityDb,
    packageExtensions
  });
  if (effectivePackageExtensions != null) {
    hooks.push(createPackageExtender(effectivePackageExtensions));
  }
  if (Array.isArray(readPackageHook)) {
    hooks.push(...readPackageHook);
  } else if (readPackageHook) {
    hooks.push(readPackageHook);
  }
  if (!isEmpty_default(overrides ?? {})) {
    hooks.push(createVersionsOverrider(overrides, lockfileDir, { convergeDeclaredRanges }));
  }
  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;
}
function mergePackageExtensions(target2, entries) {
  for (const [selector, packageExtension] of entries) {
    target2[selector] = mergePackageExtension(target2[selector], packageExtension);
  }
}
function mergePackageExtension(previous, next2) {
  if (previous == null)
    return clonePackageExtension(next2);
  const merged = clonePackageExtension(previous);
  for (const field of PACKAGE_EXTENSION_FIELDS) {
    if (next2[field] == null)
      continue;
    merged[field] = {
      ...next2[field],
      ...merged[field]
    };
  }
  return merged;
}
function clonePackageExtension(packageExtension) {
  const cloned = {};
  for (const field of PACKAGE_EXTENSION_FIELDS) {
    if (packageExtension[field] == null)
      continue;
    cloned[field] = { ...packageExtension[field] };
  }
  return cloned;
}
var import_extensions, PACKAGE_EXTENSION_FIELDS;
var init_createReadPackageHook = __esm({
  "../hooks/read-package-hook/lib/createReadPackageHook.js"() {
    "use strict";
    import_extensions = __toESM(require_lib24(), 1);
    init_es();
    init_createOptionalDependenciesRemover();
    init_createPackageExtender();
    init_createVersionsOverrider();
    PACKAGE_EXTENSION_FIELDS = [
      "dependencies",
      "optionalDependencies",
      "peerDependencies",
      "peerDependenciesMeta"
    ];
  }
});

// ../hooks/read-package-hook/lib/index.js
var init_lib105 = __esm({
  "../hooks/read-package-hook/lib/index.js"() {
    "use strict";
    init_createReadPackageHook();
    init_createVersionsOverrider();
  }
});

// ../fs/symlink-dependency/lib/safeJoinModulesDir.js
import path101 from "node:path";
function safeJoinModulesDir(modulesDir, alias) {
  if (!(0, import_validate_npm_package_name4.default)(alias).validForOldPackages) {
    throw invalidDependencyNameError(modulesDir, alias);
  }
  const link2 = path101.join(modulesDir, alias);
  const resolvedDir = path101.resolve(modulesDir);
  const resolvedLink = path101.resolve(link2);
  if (resolvedLink === resolvedDir || !resolvedLink.startsWith(resolvedDir + path101.sep)) {
    throw invalidDependencyNameError(modulesDir, alias, resolvedLink);
  }
  return link2;
}
function invalidDependencyNameError(modulesDir, alias, resolvedLink) {
  const detail = resolvedLink ? ` (it resolves to ${resolvedLink})` : "";
  const error = new Error(`Refusing to place a dependency under ${modulesDir} with the invalid alias ${JSON.stringify(alias)}${detail}`);
  error.code = "ERR_PNPM_INVALID_DEPENDENCY_NAME";
  return error;
}
var import_validate_npm_package_name4;
var init_safeJoinModulesDir = __esm({
  "../fs/symlink-dependency/lib/safeJoinModulesDir.js"() {
    "use strict";
    import_validate_npm_package_name4 = __toESM(require_lib19(), 1);
  }
});

// ../fs/symlink-dependency/lib/symlinkDirectRootDependency.js
import { promises as fs62 } from "node:fs";
import util35 from "node:util";
async function symlinkDirectRootDependency(dependencyLocation, destModulesDir, importAs, opts3) {
  let destModulesDirReal;
  try {
    destModulesDirReal = await fs62.realpath(destModulesDir);
  } catch (err2) {
    if (util35.types.isNativeError(err2) && "code" in err2 && err2.code === "ENOENT") {
      await fs62.mkdir(destModulesDir, { recursive: true });
      destModulesDirReal = await fs62.realpath(destModulesDir);
    } else {
      throw err2;
    }
  }
  const dest = safeJoinModulesDir(destModulesDirReal, importAs);
  const { reused } = await symlinkDir(dependencyLocation, dest);
  if (reused)
    return;
  rootLogger.debug({
    added: {
      dependencyType: opts3.fromDependenciesField && DEP_TYPE_BY_DEPS_FIELD_NAME[opts3.fromDependenciesField],
      linkedFrom: dependencyLocation,
      name: importAs,
      realName: opts3.linkedPackage.name,
      version: opts3.linkedPackage.version
    },
    prefix: opts3.prefix
  });
}
var DEP_TYPE_BY_DEPS_FIELD_NAME;
var init_symlinkDirectRootDependency = __esm({
  "../fs/symlink-dependency/lib/symlinkDirectRootDependency.js"() {
    "use strict";
    init_lib6();
    init_dist3();
    init_safeJoinModulesDir();
    DEP_TYPE_BY_DEPS_FIELD_NAME = {
      dependencies: "prod",
      devDependencies: "dev",
      optionalDependencies: "optional"
    };
  }
});

// ../fs/symlink-dependency/lib/index.js
async function symlinkDependency(dependencyRealLocation, destModulesDir, importAs) {
  const link2 = safeJoinModulesDir(destModulesDir, importAs);
  linkLogger.debug({ target: dependencyRealLocation, link: link2 });
  return symlinkDir(dependencyRealLocation, link2);
}
var init_lib106 = __esm({
  "../fs/symlink-dependency/lib/index.js"() {
    "use strict";
    init_lib6();
    init_dist3();
    init_safeJoinModulesDir();
    init_safeJoinModulesDir();
    init_symlinkDirectRootDependency();
  }
});

// ../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_semver28.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_semver28, PatchKeyConflictError;
var init_getPatchInfo = __esm({
  "../patching/config/lib/getPatchInfo.js"() {
    "use strict";
    init_lib2();
    import_semver28 = __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 } = parse9(key);
    if (name && version2) {
      getGroup(name).exact[version2] = { ...info, key };
      continue;
    }
    if (name && nonSemverVersion) {
      if (!(0, import_semver29.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_semver29;
var init_groupPatchedDependencies = __esm({
  "../patching/config/lib/groupPatchedDependencies.js"() {
    "use strict";
    init_lib68();
    init_lib2();
    import_semver29 = __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) {
    globalWarn2(message);
    return;
  }
  throw new PnpmError("UNUSED_PATCH", message, {
    hint: 'Either remove them from "patchedDependencies" or update them to match packages in your dependencies.'
  });
}
var init_verifyPatches = __esm({
  "../patching/config/lib/verifyPatches.js"() {
    "use strict";
    init_lib2();
    init_lib63();
    init_allPatchKeys();
  }
});

// ../patching/types/lib/index.js
var init_lib107 = __esm({
  "../patching/types/lib/index.js"() {
    "use strict";
  }
});

// ../patching/config/lib/index.js
var init_lib108 = __esm({
  "../patching/config/lib/index.js"() {
    "use strict";
    init_getPatchInfo();
    init_groupPatchedDependencies();
    init_verifyPatches();
    init_lib107();
  }
});

// ../installing/deps-resolver/lib/depPathToRef.js
function depPathToRef(depPath, opts3) {
  if (opts3.alias === opts3.realName && depPath.startsWith(`${opts3.realName}@`)) {
    return depPath.substring(opts3.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/validateDependencyAlias.js
function isValidDependencyAlias(alias) {
  return typeof alias === "string" && (0, import_validate_npm_package_name5.default)(alias).validForOldPackages;
}
function assertValidDependencyAliases(deps, parentPkgDescription) {
  if (deps == null)
    return;
  for (const alias of Object.keys(deps)) {
    if (!isValidDependencyAlias(alias)) {
      throw new PnpmError("INVALID_DEPENDENCY_NAME", `${parentPkgDescription} contains a dependency with an invalid name: ${JSON.stringify(alias)}`, {
        hint: "A dependency name must be a valid npm package name \u2014 a single `name` or `@scope/name` consisting of URL-friendly characters, with no leading `.` or `_`, and not equal to reserved names such as `node_modules`."
      });
    }
  }
}
var import_validate_npm_package_name5;
var init_validateDependencyAlias = __esm({
  "../installing/deps-resolver/lib/validateDependencyAlias.js"() {
    "use strict";
    init_lib2();
    import_validate_npm_package_name5 = __toESM(require_lib19(), 1);
  }
});

// ../installing/deps-resolver/lib/getWantedDependencies.js
function getWantedDependencies(pkg, opts3) {
  assertValidDependencyAliases(pkg.dependencies, "The current package");
  assertValidDependencyAliases(pkg.devDependencies, "The current package");
  assertValidDependencyAliases(pkg.optionalDependencies, "The current package");
  assertValidDependencyAliases(pkg.peerDependencies, "The current package");
  let depsToInstall = filterDependenciesByType(pkg, opts3?.includeDirect ?? {
    dependencies: true,
    devDependencies: true,
    optionalDependencies: true
  });
  if (opts3?.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, opts3) {
  if (!deps)
    return [];
  return Object.entries(deps).map(([alias, bareSpecifier]) => {
    let depType;
    if (opts3.optionalDependencies[alias] != null)
      depType = "optional";
    else if (opts3.dependencies[alias] != null)
      depType = "prod";
    else if (opts3.devDependencies[alias] != null)
      depType = "dev";
    else if (opts3.peerDependencies[alias] != null)
      depType = "prod";
    return {
      alias,
      dev: depType === "dev",
      injected: opts3.dependenciesMeta[alias]?.injected,
      optional: depType === "optional",
      bareSpecifier,
      prevSpecifier: bareSpecifier
    };
  });
}
var init_getWantedDependencies = __esm({
  "../installing/deps-resolver/lib/getWantedDependencies.js"() {
    "use strict";
    init_lib11();
    init_validateDependencyAlias();
  }
});

// ../lockfile/preferred-versions/lib/index.js
function getPreferredVersionsFromLockfileAndManifests(snapshots, manifests) {
  const preferredVersions = /* @__PURE__ */ Object.create(null);
  for (const manifest of manifests) {
    const specs = getAllDependenciesFromManifest(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] ?? /* @__PURE__ */ Object.create(null);
      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 = /* @__PURE__ */ Object.create(null);
  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] ??= /* @__PURE__ */ Object.create(null);
      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_lib109 = __esm({
  "../lockfile/preferred-versions/lib/index.js"() {
    "use strict";
    init_lib73();
    init_lib11();
    init_lib29();
    import_version_selector_type4 = __toESM(require_version_selector_type(), 1);
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/path-exists/5.0.0/807a2a7b778216f41e07b2ae7c9f30106db072a3e29bc81492360ad57b4431cd/node_modules/path-exists/index.js
import fs63, { promises as fsPromises4 } from "node:fs";
async function pathExists2(path240) {
  try {
    await fsPromises4.access(path240);
    return true;
  } catch {
    return false;
  }
}
var init_path_exists = __esm({
  "../../../../../setup-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 index2 = npmAliasSpecifierValue.lastIndexOf("@");
  if (index2 === -1 || index2 === 0) {
    return { pkgName: npmAliasSpecifierValue, bareSpecifier: "*" };
  }
  const bareSpecifier = npmAliasSpecifierValue.slice(index2 + 1);
  const pkgName = npmAliasSpecifierValue.substring(0, index2);
  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) {
  const pkgDescription = pkg.name != null ? `Package "${pkg.name}${pkg.version != null ? `@${pkg.version}` : ""}"` : "Package";
  assertValidDependencyAliases(pkg.dependencies, pkgDescription);
  assertValidDependencyAliases(pkg.optionalDependencies, pkgDescription);
  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, opts3) {
  if (!deps)
    return [];
  return Object.entries(deps).map(([alias, bareSpecifier]) => ({
    alias,
    dev: !!opts3.devDependencies[alias],
    injected: opts3.dependenciesMeta[alias]?.injected,
    optional: !!opts3.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();
    init_validateDependencyAlias();
  }
});

// ../installing/deps-resolver/lib/hoistPeers.js
function hoistPeers(opts3, missingRequiredPeers) {
  const dependencies = {};
  for (const [peerName, { range }] of missingRequiredPeers) {
    const rootBareSpecifier = findWorkspaceRootDep(opts3.workspaceRootDeps, peerName)?.normalizedBareSpecifier;
    const overridden = opts3.autoInstallPeers || rootBareSpecifier ? opts3.overrideBareSpecifier?.(peerName, range) : void 0;
    if (overridden != null) {
      if (overridden !== "-") {
        dependencies[peerName] = overridden;
      }
      continue;
    }
    if (rootBareSpecifier) {
      dependencies[peerName] = rootBareSpecifier;
      continue;
    }
    if (opts3.allPreferredVersions[peerName]) {
      const versions = [];
      const nonVersions = [];
      for (const [spec, selector] of Object.entries(opts3.allPreferredVersions[peerName])) {
        const specType = typeof selector === "string" ? selector : selector.selectorType;
        if (specType === "version") {
          versions.push(spec);
        } else {
          nonVersions.push(spec);
        }
      }
      const rangeForMatch = getPeerVersionRange(range);
      const isSemverRange = import_semver30.default.validRange(rangeForMatch, { includePrerelease: true }) != null;
      const satisfyingVersion = isSemverRange ? import_semver30.default.maxSatisfying(versions, rangeForMatch, { includePrerelease: true }) : null;
      if (satisfyingVersion) {
        dependencies[peerName] = [satisfyingVersion, ...nonVersions].join(" || ");
      } else if (isSemverRange && versions.length > 0) {
        if (opts3.autoInstallPeers) {
          dependencies[peerName] = range;
        }
      } else {
        dependencies[peerName] = [import_semver30.default.maxSatisfying(versions, "*", { includePrerelease: true }), ...nonVersions].filter((spec) => spec != null).join(" || ");
      }
    } else if (opts3.autoInstallPeers) {
      dependencies[peerName] = range;
    }
  }
  return dependencies;
}
function getHoistableOptionalPeers(allMissingOptionalPeers, allPreferredVersions, workspaceRootDeps = []) {
  const optionalDependencies = {};
  for (const [missingOptionalPeerName, ranges] of Object.entries(allMissingOptionalPeers)) {
    if (!allPreferredVersions[missingOptionalPeerName])
      continue;
    const rootBareSpecifier = findWorkspaceRootDep(workspaceRootDeps, missingOptionalPeerName)?.normalizedBareSpecifier;
    const rootRange = rootBareSpecifier != null ? import_semver30.default.validRange(getPeerVersionRange(rootBareSpecifier)) : null;
    let maxSatisfyingVersion;
    for (const [version2, selector] of Object.entries(allPreferredVersions[missingOptionalPeerName])) {
      const specType = typeof selector === "string" ? selector : selector.selectorType;
      if (specType === "version" && (rootRange == null || import_semver30.default.satisfies(version2, rootRange)) && ranges.every((range) => import_semver30.default.satisfies(version2, range)) && (!maxSatisfyingVersion || import_semver30.default.gt(version2, maxSatisfyingVersion))) {
        maxSatisfyingVersion = version2;
      }
    }
    if (maxSatisfyingVersion) {
      optionalDependencies[missingOptionalPeerName] = maxSatisfyingVersion;
    }
  }
  return optionalDependencies;
}
function findWorkspaceRootDep(workspaceRootDeps, peerName) {
  let rootDepByPkgName;
  for (const rootDep of workspaceRootDeps) {
    if (!rootDep.normalizedBareSpecifier)
      continue;
    if (rootDep.alias === peerName)
      return rootDep;
    if (rootDep.pkgName === peerName && (rootDepByPkgName == null || (0, import_util10.lexCompare)(rootDep.alias, rootDepByPkgName.alias) < 0)) {
      rootDepByPkgName = rootDep;
    }
  }
  return rootDepByPkgName;
}
var import_util10, import_semver30;
var init_hoistPeers = __esm({
  "../installing/deps-resolver/lib/hoistPeers.js"() {
    "use strict";
    init_lib10();
    import_util10 = __toESM(require_dist4(), 1);
    import_semver30 = __toESM(require_semver2(), 1);
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/semver-range-intersect/0.3.1/62355b206a3d3bb7824814eb45059bb13baf842b2c19c3096d068b36f4bbabd9/node_modules/semver-range-intersect/dist/utils.js
var require_utils14 = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/semver-range-intersect/0.3.1/62355b206a3d3bb7824814eb45059bb13baf842b2c19c3096d068b36f4bbabd9/node_modules/semver-range-intersect/dist/utils.js"(exports2) {
    "use strict";
    var __importDefault2 = exports2 && exports2.__importDefault || function(mod2) {
      return mod2 && mod2.__esModule ? mod2 : { "default": mod2 };
    };
    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, index2, self2) {
      return self2.findIndex((comp) => equalComparator(comparator, comp)) === index2;
    }
    exports2.filterUniqueComparator = filterUniqueComparator;
    function filterOperator(operatorList) {
      return (comparator) => isValidOperator(comparator, operatorList);
    }
    exports2.filterOperator = filterOperator;
    function isIntersectRanges(semverRangeList) {
      return semverRangeList.every((rangeA, index2, rangeList) => rangeList.slice(index2 + 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;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/semver-range-intersect/0.3.1/62355b206a3d3bb7824814eb45059bb13baf842b2c19c3096d068b36f4bbabd9/node_modules/semver-range-intersect/dist/single-range.js
var require_single_range = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/semver-range-intersect/0.3.1/62355b206a3d3bb7824814eb45059bb13baf842b2c19c3096d068b36f4bbabd9/node_modules/semver-range-intersect/dist/single-range.js"(exports2) {
    "use strict";
    var __importDefault2 = exports2 && exports2.__importDefault || function(mod2) {
      return mod2 && mod2.__esModule ? mod2 : { "default": mod2 };
    };
    Object.defineProperty(exports2, "__esModule", { value: true });
    var semver_12 = __importDefault2(require_semver2());
    var utils_1 = require_utils14();
    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 (err2) {
            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;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/semver-range-intersect/0.3.1/62355b206a3d3bb7824814eb45059bb13baf842b2c19c3096d068b36f4bbabd9/node_modules/semver-range-intersect/dist/multi-range.js
var require_multi_range = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/semver-range-intersect/0.3.1/62355b206a3d3bb7824814eb45059bb13baf842b2c19c3096d068b36f4bbabd9/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_utils14();
    function normalizeSingleRangeList(singleRangeList) {
      return singleRangeList.reduce((singleRangeList2, singleRange) => {
        if (!singleRange) {
          return [...singleRangeList2, singleRange];
        }
        let insertFirst = false;
        const removeIndexList = [];
        const appendSingleRange = singleRangeList2.reduce((appendSingleRange2, insertedSingleRange, index2) => {
          if (insertedSingleRange && appendSingleRange2) {
            const mergedSingleRange = insertedSingleRange.merge(appendSingleRange2);
            if (mergedSingleRange) {
              if (String(mergedSingleRange) === String(insertedSingleRange)) {
                return;
              } else {
                removeIndexList.push(index2);
                if (insertedSingleRange instanceof single_range_1.SingleRange && appendSingleRange2 instanceof single_range_1.SingleRange) {
                  insertFirst = true;
                }
                return mergedSingleRange;
              }
            }
          }
          return appendSingleRange2;
        }, singleRange);
        const removedSingleRangeList = singleRangeList2.filter((_, index2) => !removeIndexList.includes(index2));
        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;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/semver-range-intersect/0.3.1/62355b206a3d3bb7824814eb45059bb13baf842b2c19c3096d068b36f4bbabd9/node_modules/semver-range-intersect/dist/index.js
var require_dist7 = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/semver-range-intersect/0.3.1/62355b206a3d3bb7824814eb45059bb13baf842b2c19c3096d068b36f4bbabd9/node_modules/semver-range-intersect/dist/index.js"(exports2) {
    "use strict";
    var __importDefault2 = exports2 && exports2.__importDefault || function(mod2) {
      return mod2 && mod2.__esModule ? mod2 : { "default": mod2 };
    };
    Object.defineProperty(exports2, "__esModule", { value: true });
    var semver_12 = __importDefault2(require_semver2());
    var multi_range_1 = require_multi_range();
    var utils_1 = require_utils14();
    function intersect3(...ranges) {
      const semverRangeList = (() => {
        try {
          return ranges.map((rangeStr) => new semver_12.default.Range(rangeStr));
        } catch (err2) {
          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_semver31.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_semver31.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_semver31;
var init_replaceVersionInBareSpecifier = __esm({
  "../installing/deps-resolver/lib/replaceVersionInBareSpecifier.js"() {
    "use strict";
    import_semver31 = __toESM(require_semver2(), 1);
  }
});

// ../installing/deps-resolver/lib/wantedDepIsLocallyAvailable.js
function wantedDepIsLocallyAvailable(workspacePackages, wantedDependency, opts3) {
  const spec = parseBareSpecifier(wantedDependency.bareSpecifier, wantedDependency.alias, opts3.defaultTag || "latest", opts3.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_semver32.default.maxSatisfying(localVersions, "*");
    case "version":
      return versions.has(spec.fetchSpec) ? spec.fetchSpec : null;
    case "range":
      return import_semver32.default.maxSatisfying(localVersions, spec.fetchSpec, true);
    default:
      return null;
  }
}
var import_semver32;
var init_wantedDepIsLocallyAvailable = __esm({
  "../installing/deps-resolver/lib/wantedDepIsLocallyAvailable.js"() {
    "use strict";
    init_lib38();
    import_semver32 = __toESM(require_semver2(), 1);
  }
});

// ../installing/deps-resolver/lib/resolveDependencies.js
import path102 from "node:path";
import util36 from "node:util";
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 = /* @__PURE__ */ Object.create(null);
  }
  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 = await getHoistableRootDeps(importers[rootImporterIndex], pkgAddressesByImportersWithoutPeers[rootImporterIndex]?.pkgAddresses ?? []);
  } else {
    workspaceRootDeps = [];
  }
  while (true) {
    const allMissingOptionalPeersByImporters = await Promise.all(pkgAddressesByImportersWithoutPeers.map(async (importerResolutionResult, index2) => {
      const { parentPkgAliases, preferredVersions, options } = importers[index2];
      const _hoistPeers = hoistPeers.bind(null, {
        autoInstallPeers: ctx.autoInstallPeers,
        allPreferredVersions: ctx.allPreferredVersions,
        workspaceRootDeps,
        overrideBareSpecifier: ctx.overrideBareSpecifier == null ? void 0 : (name, range) => ctx.overrideBareSpecifier(name, range, options.prefix)
      });
      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,
                hoistedPeerProvider: true
              });
            }
          }
        }
        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, index2) => {
      const { preferredVersions, parentPkgAliases, options } = importers[index2];
      if (Object.keys(allMissingOptionalPeers).length && ctx.allPreferredVersions) {
        const optionalDependencies = getHoistableOptionalPeers(allMissingOptionalPeers, ctx.allPreferredVersions, workspaceRootDeps);
        if (Object.keys(optionalDependencies).length) {
          hasNewMissingPeers = true;
          const wantedDependencies = getNonDevWantedDependencies({ optionalDependencies });
          const resolveDependenciesResult = await resolveDependencies(ctx, preferredVersions, wantedDependencies, {
            ...options,
            parentPkgAliases,
            publishedBy,
            updateToLatest: false
          });
          pkgAddressesByImportersWithoutPeers[index2].pkgAddresses.push(...resolveDependenciesResult.pkgAddresses);
          Object.assign(pkgAddressesByImportersWithoutPeers[index2], filterMissingPeers(await resolveDependenciesResult.resolvingPeers, parentPkgAliases));
        }
      }
    }));
    if (!hasNewMissingPeers)
      break;
  }
  return {
    pkgAddressesByImporters: pkgAddressesByImportersWithoutPeers.map(({ pkgAddresses }) => pkgAddresses),
    time
  };
}
async function getHoistableRootDeps(rootImporter, rootPkgAddresses) {
  const wantedSpecifierByAlias = /* @__PURE__ */ new Map();
  for (const wantedDep of rootImporter?.wantedDependencies ?? []) {
    if (wantedDep.alias && wantedDep.bareSpecifier) {
      wantedSpecifierByAlias.set(wantedDep.alias, wantedDep.bareSpecifier);
    }
  }
  const rootDir = rootImporter?.options.prefix;
  const rootDeps = rootPkgAddresses.map((pkgAddress) => ({
    alias: pkgAddress.alias,
    pkgName: pkgAddress.pkg.name,
    normalizedBareSpecifier: pkgAddress.normalizedBareSpecifier ?? wantedSpecifierByAlias.get(pkgAddress.alias)
  }));
  const coveredAliases = new Set(rootDeps.map(({ alias }) => alias));
  for (const [alias, bareSpecifier] of wantedSpecifierByAlias) {
    if (coveredAliases.has(alias))
      continue;
    rootDeps.push({
      alias,
      pkgName: unwrapPackageName(alias, bareSpecifier).pkgName,
      normalizedBareSpecifier: bareSpecifier
    });
  }
  return Promise.all(rootDeps.map(async (rootDep) => {
    if (rootDep.normalizedBareSpecifier == null || !isProjectRelativeSpecifier(rootDep.normalizedBareSpecifier)) {
      return rootDep;
    }
    return pinProjectRelativeDepToItsVersion(rootDep, rootDir);
  }));
}
function isProjectRelativeSpecifier(bareSpecifier) {
  return bareSpecifier.startsWith("link:") || bareSpecifier.startsWith("file:") || bareSpecifier.startsWith("workspace:.");
}
async function pinProjectRelativeDepToItsVersion(rootDep, rootDir) {
  const pathWithoutProtocol = rootDep.normalizedBareSpecifier.slice(rootDep.normalizedBareSpecifier.indexOf(":") + 1);
  const manifest = rootDir == null ? null : await readManifestOfLocalTarget(path102.resolve(rootDir, pathWithoutProtocol));
  if (manifest?.version == null || import_semver33.default.valid(manifest.version) == null) {
    return { ...rootDep, normalizedBareSpecifier: void 0 };
  }
  return {
    alias: rootDep.alias,
    pkgName: manifest.name ?? rootDep.pkgName,
    normalizedBareSpecifier: manifest.version
  };
}
async function readManifestOfLocalTarget(dir) {
  try {
    return await safeReadPackageJsonFromDir(dir);
  } catch (err2) {
    if (util36.types.isNativeError(err2) && "code" in err2 && err2.code === "ENOTDIR")
      return null;
    throw err2;
  }
}
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, d22) => d1.getTime() - d22.getTime());
  return { publishedBy: sortedDates[sortedDates.length - 1], newTime };
}
async function resolveDependencies(ctx, preferredVersions, wantedDependencies, options) {
  const extendedWantedDeps = getDepsToResolve(wantedDependencies, ctx.wantedLockfile, {
    preferredDependencies: options.preferredDependencies,
    preferredVersions,
    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, opts3) {
  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 (opts3.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) : wantedDependencyMatchesUpdateTarget(ctx, options.updateMatching, extendedWantedDep.wantedDependency)));
  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,
    updateChecksums: ctx.updateChecksums,
    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 (update2 === false && extendedWantedDep.infoFromLockfile != null) {
    resolveDependencyResult.previousDepPath = extendedWantedDep.infoFromLockfile.depPath;
    resolveDependencyResult.lockedPeerContext = extendedWantedDep.infoFromLockfile.lockedPeerContext;
  }
  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,
    childrenResolutionId: resolveDependencyResult.childrenResolutionId,
    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) => {
      if (!isCurrentChildrenResolution(ctx, resolveDependencyResult.pkgId, resolveDependencyResult.childrenResolutionId)) {
        setDependencyTreeNodeWithCurrentChildren(ctx, {
          parentDepth: options.currentDepth,
          parentIds: [...options.parentIds, resolveDependencyResult.pkgId],
          parentPkg: resolveDependencyResult
        });
        return resolveMissingPeersFromCurrentChildrenResolution(ctx, resolveDependencyResult.pkgId, postponedResolutionOpts.parentPkgAliases);
      }
      const { missingPeers, resolvedPeers } = await postponedResolution(postponedResolutionOpts);
      if (!isCurrentChildrenResolution(ctx, resolveDependencyResult.pkgId, resolveDependencyResult.childrenResolutionId)) {
        return resolveMissingPeersFromCurrentChildrenResolution(ctx, resolveDependencyResult.pkgId, postponedResolutionOpts.parentPkgAliases);
      }
      if (resolveDependencyResult.missingPeersOfChildren) {
        resolveDependencyResult.missingPeersOfChildren.resolved = true;
        resolveDependencyResult.missingPeersOfChildren.resolve(missingPeers);
      }
      return filterMissingPeers({ missingPeers, resolvedPeers }, postponedResolutionOpts.parentPkgAliases);
    }
  };
}
function wantedDependencyMatchesUpdateTarget(ctx, updateMatching, wantedDependency) {
  const { alias, bareSpecifier } = wantedDependency;
  const spec = alias && bareSpecifier ? parseBareSpecifier(bareSpecifier, alias, ctx.defaultTag ?? "latest", ctx.registries.default) : null;
  const name = spec?.name ?? alias;
  return name != null && updateMatching(name, void 0);
}
function createNodeIdForLinkedLocalPkg(lockfileDir, pkgDir) {
  return `link:${(0, import_normalize_path6.default)(path102.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
  };
}
function startPackageResolution(ctx, depth) {
  const activeCount = ctx.packageResolutionBarrier.activeByDepth.get(depth) ?? 0;
  ctx.packageResolutionBarrier.activeByDepth.set(depth, activeCount + 1);
  let finished7 = false;
  return () => {
    if (finished7)
      return;
    finished7 = true;
    const nextActiveCount = (ctx.packageResolutionBarrier.activeByDepth.get(depth) ?? 1) - 1;
    if (nextActiveCount > 0) {
      ctx.packageResolutionBarrier.activeByDepth.set(depth, nextActiveCount);
    } else {
      ctx.packageResolutionBarrier.activeByDepth.delete(depth);
    }
    const waiters = ctx.packageResolutionBarrier.waiters.splice(0);
    for (const resolve4 of waiters) {
      resolve4();
    }
  };
}
async function waitForPackageResolutionTurn(ctx, depth) {
  if (!hasActivePackageResolutionBeforeDepth(ctx, depth))
    return;
  await new Promise((resolve4) => ctx.packageResolutionBarrier.waiters.push(resolve4));
  return waitForPackageResolutionTurn(ctx, depth);
}
function hasActivePackageResolutionBeforeDepth(ctx, depth) {
  for (const [activeDepth, activeCount] of ctx.packageResolutionBarrier.activeByDepth) {
    if (activeDepth < depth && activeCount > 0)
      return true;
  }
  return false;
}
function claimChildrenResolution(ctx, opts3) {
  const owner = {
    depth: opts3.currentDepth,
    importerOrder: ctx.importerResolutionOrder[opts3.parentIds[0]] ?? Number.MAX_SAFE_INTEGER,
    parentPath: opts3.parentIds
  };
  const existing = ctx.childrenResolutionByPkgId[opts3.pkgId];
  if (existing == null || compareChildrenResolutionOwners(owner, existing.owner) < 0) {
    const previousMissingPeersOfChildren = existing?.missingPeersOfChildren;
    const missingPeersOfChildren2 = ctx.hoistPeers && !opts3.parentIds.includes(opts3.pkgId) ? createMissingPeersOfChildren() : void 0;
    const resolution = {
      id: ++ctx.childrenResolutionId,
      owner,
      missingPeersOfChildren: missingPeersOfChildren2
    };
    ctx.childrenResolutionByPkgId[opts3.pkgId] = resolution;
    if (missingPeersOfChildren2) {
      ctx.missingPeersOfChildrenByPkgId[opts3.pkgId] = {
        depth: owner.depth,
        missingPeersOfChildren: missingPeersOfChildren2
      };
    }
    if (previousMissingPeersOfChildren) {
      if (missingPeersOfChildren2) {
        missingPeersOfChildren2.get().then((missingPeers) => {
          previousMissingPeersOfChildren.resolved = true;
          previousMissingPeersOfChildren.resolve(missingPeers);
        }, previousMissingPeersOfChildren.reject);
      } else {
        previousMissingPeersOfChildren.resolved = true;
        previousMissingPeersOfChildren.resolve({});
      }
    }
    return {
      id: resolution.id,
      isOwner: true,
      missingPeersOfChildren: missingPeersOfChildren2
    };
  }
  let missingPeersOfChildren;
  if (ctx.hoistPeers && !opts3.parentIds.includes(opts3.pkgId) && existing.missingPeersOfChildren && existing.owner.depth >= opts3.currentDepth) {
    missingPeersOfChildren = existing.missingPeersOfChildren;
  }
  return {
    id: existing.id,
    isOwner: false,
    missingPeersOfChildren
  };
}
function compareChildrenResolutionOwners(owner1, owner2) {
  if (owner1.depth !== owner2.depth)
    return owner1.depth - owner2.depth;
  if (owner1.importerOrder !== owner2.importerOrder)
    return owner1.importerOrder - owner2.importerOrder;
  const pathLength = Math.min(owner1.parentPath.length, owner2.parentPath.length);
  for (let i4 = 0; i4 < pathLength; i4++) {
    const result2 = (0, import_util11.lexCompare)(owner1.parentPath[i4], owner2.parentPath[i4]);
    if (result2 !== 0)
      return result2;
  }
  return owner1.parentPath.length - owner2.parentPath.length;
}
function createMissingPeersOfChildren() {
  const p = pDefer();
  return {
    resolve: p.resolve,
    reject: p.reject,
    get: pShare(p.promise)
  };
}
function isCurrentChildrenResolution(ctx, pkgId, childrenResolutionId) {
  return childrenResolutionId != null && ctx.childrenResolutionByPkgId[pkgId]?.id === childrenResolutionId;
}
async function resolveMissingPeersFromCurrentChildrenResolution(ctx, pkgId, parentPkgAliases) {
  const missingPeersOfChildren = ctx.childrenResolutionByPkgId[pkgId]?.missingPeersOfChildren;
  if (missingPeersOfChildren == null) {
    return {
      missingPeers: {},
      resolvedPeers: {}
    };
  }
  const missingPeers = await missingPeersOfChildren.get();
  return filterMissingPeers({ missingPeers, resolvedPeers: {} }, parentPkgAliases);
}
function setDependencyTreeNodeWithCurrentChildren(ctx, { parentDepth, parentIds, parentPkg }) {
  ctx.dependenciesTree.set(parentPkg.nodeId, {
    children: () => buildTree(ctx, parentPkg.pkgId, parentIds, ctx.childrenByParentId[parentPkg.pkgId] ?? [], parentDepth + 1, parentPkg.installable),
    depth: parentDepth,
    installable: parentPkg.installable,
    lockedPeerContext: parentPkg.lockedPeerContext,
    previousDepPath: parentPkg.previousDepPath,
    resolvedPackage: ctx.resolvedPkgsById[parentPkg.pkgId]
  });
  ctx.nodeResolutionContextByNodeId.set(parentPkg.nodeId, {
    depth: parentDepth,
    installable: parentPkg.installable,
    parentIds,
    pkgId: parentPkg.pkgId
  });
}
function updateChildrenResolutionNodes(ctx, pkgId, currentNodeId) {
  for (const [nodeId, nodeContext] of ctx.nodeResolutionContextByNodeId) {
    if (nodeId === currentNodeId || nodeContext.pkgId !== pkgId)
      continue;
    const node = ctx.dependenciesTree.get(nodeId);
    if (node == null || node.depth === -1)
      continue;
    node.children = () => buildTree(ctx, pkgId, nodeContext.parentIds, ctx.childrenByParentId[pkgId] ?? [], nodeContext.depth + 1, nodeContext.installable);
  }
}
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;
}
async function resolveChildren(ctx, { parentPkg, childrenResolutionId, parentIds, dependencyLockfile, parentDepth, updateDepth, updateMatching, prefix, supportedArchitectures }, { parentPkgAliases, preferredVersions, publishedBy }) {
  if (!isCurrentChildrenResolution(ctx, parentPkg.pkgId, childrenResolutionId)) {
    setDependencyTreeNodeWithCurrentChildren(ctx, {
      parentDepth,
      parentIds,
      parentPkg
    });
    return {
      missingPeers: {},
      resolvedPeers: {}
    };
  }
  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
  });
  if (!isCurrentChildrenResolution(ctx, parentPkg.pkgId, childrenResolutionId)) {
    setDependencyTreeNodeWithCurrentChildren(ctx, {
      parentDepth,
      parentIds,
      parentPkg
    });
    return resolvingPeers;
  }
  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,
    dependencyNamesWhoseCurrentProviderMustWin: new Set(pkgAddresses.filter((child) => {
      const previousRef = dependencyLockfile?.dependencies?.[child.alias] ?? dependencyLockfile?.optionalDependencies?.[child.alias];
      if (previousRef == null || child.isLinkedDependency)
        return true;
      return child.previousDepPath !== refToRelative(previousRef, child.alias);
    }).map(({ alias }) => alias)),
    lockedPeerContext: parentPkg.lockedPeerContext,
    previousDepPath: parentPkg.previousDepPath,
    resolvedPackage: ctx.resolvedPkgsById[parentPkg.pkgId]
  });
  ctx.nodeResolutionContextByNodeId.set(parentPkg.nodeId, {
    depth: parentDepth,
    installable: parentPkg.installable,
    parentIds,
    pkgId: parentPkg.pkgId
  });
  updateChildrenResolutionNodes(ctx, parentPkg.pkgId, parentPkg.nodeId);
  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 preferredVersion = 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:"))) {
        const pinnedRef = resolvedDependencies[wantedDependency.alias];
        const pinned = pinnedRef.startsWith("file:") ? void 0 : getPinnedNameVer(wantedLockfile, pinnedRef, wantedDependency.alias);
        const higherDirectVersion = pinned == null ? void 0 : findHigherDirectDepVersion(options.preferredVersions, pinned.name, pinned.version, wantedDependency.bareSpecifier);
        if (higherDirectVersion != null) {
          proceed = true;
          preferredVersion = higherDirectVersion;
        } else {
          reference = pinnedRef;
        }
      } 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_semver33.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,
      preferredVersion,
      proceed,
      wantedDependency
    });
  }
  return extendedWantedDeps;
}
function referenceSatisfiesWantedSpec(opts3, wantedDep, preferredRef) {
  const depPath = refToRelative(preferredRef, wantedDep.alias);
  if (depPath === null)
    return false;
  const pkgSnapshot = opts3.lockfile.packages?.[depPath];
  if (pkgSnapshot == null) {
    logger.warn({
      message: `Could not find preferred package ${depPath} in lockfile`,
      prefix: opts3.prefix
    });
    return false;
  }
  const { version: version2 } = nameVerFromPkgSnapshot(depPath, pkgSnapshot);
  if (!import_semver33.default.validRange(wantedDep.bareSpecifier) && Object.values(opts3.lockfile.importers).filter((importer) => importer.specifiers[wantedDep.alias] === wantedDep.bareSpecifier).length) {
    return true;
  }
  return import_semver33.default.satisfies(version2, wantedDep.bareSpecifier, true);
}
function getPinnedNameVer(lockfile, reference, alias) {
  const depPath = refToRelative(reference, alias);
  if (depPath === null)
    return void 0;
  const pkgSnapshot = lockfile.packages?.[depPath];
  if (pkgSnapshot == null)
    return void 0;
  return nameVerFromPkgSnapshot(depPath, pkgSnapshot);
}
function findHigherDirectDepVersion(preferredVersions, pinnedName, pinnedVersion, bareSpecifier) {
  if (preferredVersions == null)
    return void 0;
  if (!import_semver33.default.valid(pinnedVersion))
    return void 0;
  if (import_semver33.default.validRange(bareSpecifier) === null)
    return void 0;
  const selectors = preferredVersions[pinnedName];
  if (selectors == null)
    return void 0;
  let best;
  for (const [candidate, selector] of Object.entries(selectors)) {
    if (typeof selector === "object" && selector.selectorType === "version" && selector.weight === DIRECT_DEP_SELECTOR_WEIGHT && import_semver33.default.valid(candidate) && import_semver33.default.gt(candidate, pinnedVersion) && import_semver33.default.satisfies(candidate, bareSpecifier, true) && (best == null || import_semver33.default.gt(candidate, best))) {
      best = candidate;
    }
  }
  return best;
}
function getLockedPeerContext(dependencyLockfile) {
  if (dependencyLockfile.peerDependencies == null)
    return void 0;
  const lockedPeerContext = {};
  for (const peerName of Object.keys(dependencyLockfile.peerDependencies)) {
    const ref = dependencyLockfile.dependencies?.[peerName] ?? dependencyLockfile.optionalDependencies?.[peerName];
    const depPath = ref == null ? null : refToRelative(ref, peerName);
    if (depPath != null)
      lockedPeerContext[peerName] = depPath;
  }
  return Object.keys(lockedPeerContext).length === 0 ? void 0 : lockedPeerContext;
}
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) {
    const lockedPeerContext = getLockedPeerContext(dependencyLockfile);
    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 {
      depPath,
      name,
      version: version2,
      dependencyLockfile,
      lockedPeerContext,
      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 = parse9(depPath);
    return {
      depPath,
      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(path102.join(ctx.virtualStoreDir, depPathToFilename(currentPkg.depPath, ctx.virtualStoreDirMaxLength), "node_modules", currentPkg.name, "package.json"))
  );
  if (!options.update && !options.proceed && options.currentDepth === Math.max(0, options.updateDepth) && currentPkg.resolution != null && depIsLinked) {
    return null;
  }
  let pkgResponse;
  if (!options.parentPkg.installable) {
    wantedDependency = {
      ...wantedDependency,
      optional: true
    };
  }
  const finishPackageResolution = startPackageResolution(ctx, options.currentDepth);
  try {
    await waitForPackageResolutionTurn(ctx, options.currentDepth);
    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,
        updateRequested: options.updateRequested,
        updateChecksums: options.updateChecksums,
        workspacePackages: ctx.workspacePackages,
        supportedArchitectures: options.supportedArchitectures,
        onFetchError: (err2) => {
          err2.prefix = options.prefix;
          err2.pkgsStack = getPkgsInfoFromIds(options.parentIds, ctx.resolvedPkgsById);
          return err2;
        },
        injectWorkspacePackages: ctx.injectWorkspacePackages,
        calcSpecifier: calcSpecifier2,
        pinnedVersion: options.pinnedVersion
      });
    } catch (err2) {
      const wantedDependencyDetails = {
        name: wantedDependency.alias,
        bareSpecifier: wantedDependency.bareSpecifier,
        version: wantedDependency.alias ? wantedDependency.bareSpecifier : void 0
      };
      if (wantedDependency.optional && err2.code !== "ERR_PNPM_TRUST_DOWNGRADE") {
        if (!wantedLockfileContainsSatisfyingEntry(ctx.wantedLockfile, wantedDependency)) {
          skippedOptionalDependencyLogger.debug({
            details: err2.toString(),
            package: wantedDependencyDetails,
            parents: getPkgsInfoFromIds(options.parentIds, ctx.resolvedPkgsById),
            prefix: options.prefix,
            reason: "resolution_failure"
          });
          return null;
        }
        if (err2.hint == null) {
          err2.hint = "This optional dependency is not skipped, because the lockfile contains a resolution for it. Skipping it would remove the locked entries, making the lockfile differ depending on which machine ran the install. If the version was intentionally removed from the registry, update the dependent package or remove the entries from the lockfile.";
        }
      }
      err2.package = wantedDependencyDetails;
      err2.prefix = options.prefix;
      err2.pkgsStack = getPkgsInfoFromIds(options.parentIds, ctx.resolvedPkgsById);
      throw err2;
    }
    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] = /* @__PURE__ */ Object.create(null);
      }
      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 ?? path102.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,
        wantedDependency
      };
    }
    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 packageIsNew = !ctx.resolvedPkgsById[pkgResponse.body.id];
    const parentImporterId = options.parentIds[0];
    const currentIsOptional = wantedDependency.optional || options.parentPkg.optional;
    const childrenResolution = claimChildrenResolution(ctx, {
      currentDepth: options.currentDepth,
      parentIds: options.parentIds,
      pkgId: pkgResponse.body.id
    });
    const isNew = childrenResolution.isOwner;
    if (packageIsNew) {
      if (pkg.deprecated && (!ctx.allowedDeprecatedVersions[pkg.name] || !import_semver33.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 (!isNew) {
        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,
            lockedPeerContext: currentPkg.lockedPeerContext,
            previousDepPath: currentPkg.depPath,
            nodeId,
            resolvedPackage: ctx.resolvedPkgsById[pkgResponse.body.id]
          });
        }
      }
    }
    const rootDir = pkgResponse.body.resolution.type === "directory" ? path102.resolve(ctx.lockfileDir, pkgResponse.body.resolution.directory) : options.prefix;
    const missingPeersOfChildren = childrenResolution.missingPeersOfChildren;
    const resolvedPkg = ctx.resolvedPkgsById[pkgResponse.body.id];
    return {
      alias: wantedDependency.alias ?? pkgResponse.body.alias ?? pkg.name,
      depIsLinked,
      resolvedVia: pkgResponse.body.resolvedVia,
      isNew,
      nodeId,
      wantedDependency,
      normalizedBareSpecifier: pkgResponse.body.normalizedBareSpecifier,
      missingPeersOfChildren,
      childrenResolutionId: childrenResolution.id,
      pkgId: pkgResponse.body.id,
      rootDir,
      missingPeers: getMissingPeers(resolvedPkg.peerDependencies),
      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
    };
  } finally {
    finishPackageResolution();
  }
}
function wantedLockfileContainsSatisfyingEntry(lockfile, wantedDependency) {
  if (!wantedDependency.alias)
    return false;
  const { pkgName, bareSpecifier } = unwrapPackageName(wantedDependency.alias, wantedDependency.bareSpecifier);
  if (import_semver33.default.validRange(bareSpecifier) == null)
    return false;
  return Object.keys(lockfile.packages ?? {}).some((depPath) => {
    const parsed = parse9(depPath);
    return parsed.name === pkgName && parsed.version != null && import_semver33.default.satisfies(parsed.version, bareSpecifier);
  });
}
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(peerDependencies) {
  const missingPeers = {};
  for (const [peerName, peerDep] of Object.entries(peerDependencies)) {
    missingPeers[peerName] = {
      range: peerDep.version,
      optional: peerDep.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,
    resolutionNeedsFetch: options.pkgResponse.resolutionNeedsFetch,
    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_util11, import_normalize_path6, import_semver33, dependencyResolvedLogger, omitDepsFields, NON_EXOTIC_RESOLVED_VIA;
var init_resolveDependencies = __esm({
  "../installing/deps-resolver/lib/resolveDependencies.js"() {
    "use strict";
    init_lib97();
    init_lib6();
    init_lib68();
    init_lib2();
    init_lib109();
    init_lib73();
    init_lib3();
    init_lib108();
    init_lib5();
    init_lib11();
    init_lib38();
    init_lib29();
    import_util11 = __toESM(require_dist4(), 1);
    import_normalize_path6 = __toESM(require_normalize_path(), 1);
    init_p_defer();
    init_path_exists();
    init_promise_share();
    init_es();
    import_semver33 = __toESM(require_semver2(), 1);
    init_getExactSinglePreferredVersions();
    init_getNonDevWantedDependencies();
    init_hoistPeers();
    init_mergePeers();
    init_nextNodeId();
    init_parentIdsContainSequence();
    init_replaceVersionInBareSpecifier();
    init_unwrapPackageName();
    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, opts3) {
  const wantedToBeSkippedPackageIds = /* @__PURE__ */ new Set();
  const autoInstallPeers = opts3.autoInstallPeers === true;
  const { publishedBy, publishedByExclude } = getPublishedByPolicy(opts3);
  const ctx = {
    allowBuild: opts3.allowBuild,
    autoInstallPeers,
    autoInstallPeersFromHighestMatch: opts3.autoInstallPeersFromHighestMatch === true,
    allowedDeprecatedVersions: opts3.allowedDeprecatedVersions,
    catalogResolver: resolveFromCatalog.bind(null, opts3.catalogs ?? {}),
    childrenByParentId: {},
    currentLockfile: opts3.currentLockfile,
    defaultTag: opts3.tag,
    dependenciesTree: /* @__PURE__ */ new Map(),
    dryRun: opts3.dryRun,
    engineStrict: opts3.engineStrict,
    force: opts3.force,
    forceFullResolution: opts3.forceFullResolution,
    updateChecksums: opts3.updateChecksums,
    ignoreScripts: opts3.ignoreScripts,
    injectWorkspacePackages: opts3.injectWorkspacePackages,
    linkWorkspacePackagesDepth: opts3.linkWorkspacePackagesDepth ?? -1,
    lockfileDir: opts3.lockfileDir,
    nodeVersion: opts3.nodeVersion,
    outdatedDependencies: {},
    patchedDependencies: opts3.patchedDependencies,
    pendingNodes: [],
    pnpmVersion: opts3.pnpmVersion,
    preferWorkspacePackages: opts3.preferWorkspacePackages,
    readPackageHook: opts3.hooks.readPackage,
    overrideBareSpecifier: opts3.overrideBareSpecifier,
    registries: opts3.registries,
    namedRegistryPrefixes: Array.from(/* @__PURE__ */ new Set([
      ...Object.keys(BUILTIN_NAMED_REGISTRIES),
      ...Object.keys(opts3.namedRegistries ?? {})
    ])).map((alias) => `${alias}:`),
    resolvedPkgsById: {},
    resolvePeersFromWorkspaceRoot: opts3.resolvePeersFromWorkspaceRoot,
    resolutionMode: opts3.resolutionMode,
    skipped: wantedToBeSkippedPackageIds,
    storeController: opts3.storeController,
    virtualStoreDir: opts3.virtualStoreDir,
    virtualStoreDirMaxLength: opts3.virtualStoreDirMaxLength,
    wantedLockfile: opts3.wantedLockfile,
    appliedPatches: /* @__PURE__ */ new Set(),
    updatedSet: /* @__PURE__ */ new Set(),
    workspacePackages: opts3.workspacePackages,
    missingPeersOfChildrenByPkgId: {},
    hoistPeers: autoInstallPeers || opts3.dedupePeerDependents,
    allPeerDepNames: /* @__PURE__ */ new Set(),
    maximumPublishedBy: publishedBy,
    publishedByExclude,
    packageResolutionBarrier: {
      activeByDepth: /* @__PURE__ */ new Map(),
      waiters: []
    },
    childrenResolutionByPkgId: {},
    childrenResolutionId: 0,
    importerResolutionOrder: Object.fromEntries(importers.map(({ id }, index2) => [id, index2])),
    nodeResolutionContextByNodeId: /* @__PURE__ */ new Map(),
    trustPolicy: opts3.trustPolicy,
    trustPolicyExclude: opts3.trustPolicyExclude ? createPackageVersionPolicyOrThrow(opts3.trustPolicyExclude, "trustPolicyExclude") : void 0,
    trustPolicyIgnoreAfter: opts3.trustPolicyIgnoreAfter,
    blockExoticSubdeps: opts3.blockExoticSubdeps,
    resolutionPolicyViolations: []
  };
  const resolveArgs = importers.map((importer) => {
    const projectSnapshot = opts3.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: opts3.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 }, i4) => [id, pkgAddressesByImporters[i4]]));
  for (const directDependencies of pkgAddressesByImporters) {
    for (const directDep of directDependencies) {
      const { alias, normalizedBareSpecifier, version: version2, saveCatalogName } = directDep;
      if (saveCatalogName == null) {
        continue;
      }
      const existingCatalog = opts3.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,
      lockedPeerContext: pendingNode.lockedPeerContext,
      previousDepPath: pendingNode.previousDepPath,
      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,
          wantedDependency: dep.wantedDependency
        };
      }),
      directNodeIdsByAlias: new Map(directNonLinkedDeps.map(({ alias, nodeId }) => [alias, nodeId])),
      hoistedPeerProviderNodeIds: new Set(directNonLinkedDeps.filter((dep) => dep.hoistedPeerProvider).map(({ nodeId }) => 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 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_lib97();
    init_lib37();
    init_lib3();
    init_lib38();
    init_es();
    init_resolveDependencies();
  }
});

// ../../../../../setup-pnpm/store/v11/links/@yarnpkg/core/4.9.0/6a7c2315c9bb0e5147cca18162297477edf5ba620bb7ef59e7ebbd0aa7f5ecdf/node_modules/@yarnpkg/core/lib/semverUtils.js
var require_semverUtils = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@yarnpkg/core/4.9.0/6a7c2315c9bb0e5147cca18162297477edf5ba620bb7ef59e7ebbd0aa7f5ecdf/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 = validRange4;
    exports2.clean = clean2;
    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 validRange4(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 clean2(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) => validRange4(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;
    }
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/bintrees/1.0.2/614e6be6b3552f19d02a4562ab466d605ce771f2013ab0d62c4dfab17116a120/node_modules/bintrees/lib/treebase.js
var require_treebase = __commonJS({
  "../../../../../setup-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 i4 = iter._ancestors.length - 1; i4 >= 0; --i4) {
        cur = iter._ancestors[i4];
        if (cmp(item, cur.data) < 0) {
          iter._cursor = cur;
          iter._ancestors.length = i4;
          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;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/bintrees/1.0.2/614e6be6b3552f19d02a4562ab466d605ce771f2013ab0d62c4dfab17116a120/node_modules/bintrees/lib/rbtree.js
var require_rbtree = __commonJS({
  "../../../../../setup-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;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/bintrees/1.0.2/614e6be6b3552f19d02a4562ab466d605ce771f2013ab0d62c4dfab17116a120/node_modules/bintrees/lib/bintree.js
var require_bintree = __commonJS({
  "../../../../../setup-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;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/bintrees/1.0.2/614e6be6b3552f19d02a4562ab466d605ce771f2013ab0d62c4dfab17116a120/node_modules/bintrees/index.js
var require_bintrees = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/bintrees/1.0.2/614e6be6b3552f19d02a4562ab466d605ce771f2013ab0d62c4dfab17116a120/node_modules/bintrees/index.js"(exports2, module2) {
    module2.exports = {
      RBTree: require_rbtree(),
      BinTree: require_bintree()
    };
  }
});

// ../../../../../setup-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 i4 = 0; i4 < minLength; ++i4) {
      const diff2 = cmp(a2[i4], b[i4]);
      if (diff2 === 0)
        continue;
      return diff2;
    }
    return lenA > lenB ? 1 : lenA < lenB ? -1 : 0;
  };
}
function arrayStartsWith(haystack, needle, cmp) {
  if (haystack.length < needle.length)
    return false;
  for (let i4 = 0; i4 < needle.length; ++i4)
    if (cmp(haystack[i4], needle[i4]) !== 0)
      return false;
  return true;
}
var import_bintrees, ShortTree;
var init_dist16 = __esm({
  "../../../../../setup-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(path240) {
        const iter = this.lowerBound(path240);
        const data = iter.data();
        if (data) {
          const cmp = this.arrayCmp(data, path240);
          if (cmp === 0)
            return false;
          else if (this.arrayStartsWith(data, path240))
            this.chopOff(path240);
        }
        const prev = this.lowerBound(path240).prev();
        if (prev && this.arrayStartsWith(path240, prev))
          return false;
        return super.insert(path240);
      }
      chopOff(path240) {
        const iter = this.lowerBound(path240);
        const found = [];
        do {
          const data = iter.data();
          if (data && this.arrayStartsWith(data, path240))
            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;
      }
    };
  }
});

// ../../../../../setup-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, i4) => nodeA !== b[i4]);
}
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 _b2 = offset === 0 ? b : [...b.slice(offset), ...b.slice(0, offset)];
  return arrayEqual(a2, _b2);
}
function simpleHash(text, hashCache) {
  const textLength = text.length;
  if (textLength === 0)
    return 4711;
  const quads = [];
  for (let i4 = 0; i4 < textLength; ++i4) {
    let byte = text.charCodeAt(i4) + i4 * 13;
    byte = byte % 256;
    const mod2 = i4 % 4;
    if (mod2 === 0)
      quads.push(byte);
    else
      quads[quads.length - 1] |= byte << (mod2 === 1 ? 8 : mod2 === 2 ? 16 : 24);
  }
  const hash2 = quads.reduce((prev, cur) => prev ^ cur, textLength * 13);
  hashCache.set(text, hash2);
  return hash2;
}
function nodeHash2(keys4, hashCache) {
  if (keys4.length === 0)
    return 31415;
  return keys4.map((key) => {
    var _a2;
    return (_a2 = hashCache.get(key)) !== null && _a2 !== void 0 ? _a2 : simpleHash(key, hashCache);
  }).reduce((prev, cur) => prev ^ cur, keys4.length * 13);
}
var RotatedArraySet;
var init_dist17 = __esm({
  "../../../../../setup-pnpm/store/v11/links/@/rotated-array-set/3.0.0/c09c9e498ee5cb5c526aa9e4720bbc26db9b17b566911b75e3df405f9215f1fa/node_modules/rotated-array-set/dist/index.js"() {
    RotatedArraySet = class {
      constructor(stringify2 = (t2) => `${t2}`) {
        this.stringify = stringify2;
        this.hashCache = /* @__PURE__ */ new Map();
        this.tree = /* @__PURE__ */ new Map();
      }
      makeNode(arr) {
        const keys4 = arr.map((t2) => this.stringify(t2));
        const hash2 = nodeHash2(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);
      }
    };
  }
});

// ../../../../../setup-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 i4 = 0;
  for (; i4 < minLen; ++i4) {
    const ca = a2.charCodeAt(i4);
    const cb = b.charCodeAt(i4);
    if (ca > cb)
      return 1;
    else if (ca < cb)
      return -1;
  }
  if (lenA === lenB)
    return 0;
  return lenA > lenB ? 1 : -1;
}
var init_dist18 = __esm({
  "../../../../../setup-pnpm/store/v11/links/@/fast-string-compare/3.0.0/297de306c3646778ca2761b80afc8636496d962689fa79ef606e94448ab233f2/node_modules/fast-string-compare/dist/index.js"() {
  }
});

// ../../../../../setup-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 i4 = 0; i4 < a2.length; ++i4) {
    const diff2 = compare(a2[i4], b[i4]);
    if (diff2 !== 0)
      return diff2;
  }
  return 0;
}
var init_util = __esm({
  "../../../../../setup-pnpm/store/v11/links/@/graph-cycles/3.0.0/71982412f573eb00eb9df3947dac50c9c9bad9a5689655503beddf0343c9887f/node_modules/graph-cycles/dist/util.js"() {
    init_dist18();
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/graph-cycles/3.0.0/71982412f573eb00eb9df3947dac50c9c9bad9a5689655503beddf0343c9887f/node_modules/graph-cycles/dist/types.js
var init_types2 = __esm({
  "../../../../../setup-pnpm/store/v11/links/@/graph-cycles/3.0.0/71982412f573eb00eb9df3947dac50c9c9bad9a5689655503beddf0343c9887f/node_modules/graph-cycles/dist/types.js"() {
  }
});

// ../../../../../setup-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 = (path240) => {
    if (path240.length === 0)
      return;
    entrypoints.insert(path240);
  };
  const recordCycle = (path240) => {
    if (cycles.add(path240)) {
      for (const node of path240)
        cycleNodes.add(node);
    }
  };
  const isPartOfCycle = (node) => cycleNodes.has(node);
  for (const [from5, _to] of graphMap.entries()) {
    const path240 = [from5];
    const visited = /* @__PURE__ */ new Set();
    let foundCycle = false;
    let createdCycle = false;
    const exitPaths = [];
    let to = _to;
    let nodeNextIndex = 0;
    const getLeaf = () => path240[path240.length - 1];
    const testNode = () => {
      const node = getLeaf();
      const shouldCheckCycles = !createdCycle;
      if (shouldCheckCycles && isPartOfCycle(node)) {
        recordCycleEntrypoint(path240.slice(0, -1));
        foundCycle = true;
        return true;
      }
      if (visited.has(node)) {
        const entrypointPath = path240.slice(0, path240.indexOf(node) + 1);
        if (entrypointPath.length > 1)
          recordCycleEntrypoint(entrypointPath.slice(0, -1));
        const cycle = path240.slice(path240.indexOf(node), -1);
        recordCycle(cycle);
        createdCycle = true;
        return true;
      }
      return false;
    };
    const walkDown = () => {
      var _a2;
      if (nodeNextIndex >= to.length)
        return false;
      const node = getLeaf();
      visited.add(node);
      const nextLeaf = to[nodeNextIndex];
      path240.push(nextLeaf);
      to = (_a2 = graphMap.get(nextLeaf)) !== null && _a2 !== void 0 ? _a2 : [];
      nodeNextIndex = 0;
      return true;
    };
    const walkUp = () => {
      var _a2;
      if (path240.length === 1)
        return true;
      const lastLeaf = getLeaf();
      path240.pop();
      const node = getLeaf();
      visited.delete(node);
      to = (_a2 = graphMap.get(node)) !== null && _a2 !== void 0 ? _a2 : [];
      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([...path240]);
      if (walkUp())
        break;
    }
    if (foundCycle || createdCycle)
      exitPaths.forEach((path241) => {
        while (path241.length > 0 && !isPartOfCycle(path241[path241.length - 1])) {
          dependencies.add(path241[path241.length - 1]);
          path241.pop();
        }
      });
    for (const path241 of exitPaths)
      allExitPaths.push(path241);
  }
  const trimmedEntrypoints = uniqArrays(entrypoints.values().map((path240) => {
    for (let i4 = 0; i4 < path240.length; ++i4) {
      if (isPartOfCycle(path240[i4])) {
        path240 = path240.slice(0, i4);
        break;
      }
    }
    return path240;
  }).filter((path240) => path240.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((path240) => {
    if (path240.length > 0 && allInclDeps.has(path240[path240.length - 1])) {
      const prePath = path240.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_dist19 = __esm({
  "../../../../../setup-pnpm/store/v11/links/@/graph-cycles/3.0.0/71982412f573eb00eb9df3947dac50c9c9bad9a5689655503beddf0343c9887f/node_modules/graph-cycles/dist/index.js"() {
    init_dist16();
    init_dist17();
    init_dist18();
    init_util();
    init_types2();
  }
});

// ../installing/deps-resolver/lib/depPathCompatibility.js
function nodeDepsCount(node) {
  return Object.keys(node.children).length + node.resolvedPeerNames.size;
}
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;
}
var init_depPathCompatibility = __esm({
  "../installing/deps-resolver/lib/depPathCompatibility.js"() {
    "use strict";
  }
});

// ../installing/deps-resolver/lib/dedupeInjectedDeps.js
import path103 from "node:path";
function dedupeInjectedDeps(opts3) {
  const injectedDepsByProjects = getInjectedDepsByProjects(opts3);
  const dedupeMap = getDedupeMap(injectedDepsByProjects, opts3);
  applyDedupeMap(dedupeMap, opts3);
}
function getInjectedDepsByProjects(opts3) {
  const injectedDepsByProjects = /* @__PURE__ */ new Map();
  for (const project of opts3.projects) {
    for (const [alias, nodeId] of project.directNodeIdsByAlias.entries()) {
      const depPath = opts3.pathsByNodeId.get(nodeId);
      if (!opts3.depGraph[depPath].id.startsWith("file:"))
        continue;
      const id = opts3.depGraph[depPath].id.substring(5);
      if (opts3.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, opts3) {
  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 node = opts3.depGraph[dep.depPath];
      const targetProjectDeps = opts3.dependenciesByProjectId[dep.id];
      if (!targetProjectDeps) {
        if (node.pkgIdWithPatchHash === dep.depPath) {
          dedupedInjectedDeps.set(alias, dep.id);
        }
        continue;
      }
      const children = Object.entries(node.children);
      const isSubset = children.every(([alias2, depPath]) => {
        const targetDepPath = targetProjectDeps.get(alias2);
        if (targetDepPath === depPath)
          return true;
        if (targetDepPath == null)
          return false;
        const targetNode = opts3.depGraph[targetDepPath];
        const injectedChildNode = opts3.depGraph[depPath];
        if (targetNode == null || injectedChildNode == null)
          return false;
        if (targetNode.pkgIdWithPatchHash !== injectedChildNode.pkgIdWithPatchHash)
          return false;
        return isCompatibleAndHasMoreDeps(opts3.depGraph, targetDepPath, depPath);
      });
      if (isSubset) {
        dedupedInjectedDeps.set(alias, dep.id);
      }
    }
    toDedupe.set(id, dedupedInjectedDeps);
  }
  return toDedupe;
}
function applyDedupeMap(dedupeMap, opts3) {
  for (const [id, aliases] of dedupeMap.entries()) {
    for (const [alias, dedupedProjectId] of aliases.entries()) {
      opts3.dependenciesByProjectId[id].delete(alias);
      const index2 = opts3.resolvedImporters[id].directDependencies.findIndex((dep) => dep.alias === alias);
      const prev = opts3.resolvedImporters[id].directDependencies[index2];
      const linkedDep = {
        ...prev,
        pkg: prev,
        isLinkedDependency: true,
        pkgId: `link:${(0, import_normalize_path7.default)(path103.relative(id, dedupedProjectId))}`,
        resolution: {
          type: "directory",
          directory: path103.join(opts3.lockfileDir, dedupedProjectId)
        }
      };
      opts3.resolvedImporters[id].directDependencies[index2] = linkedDep;
      opts3.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);
    init_depPathCompatibility();
  }
});

// ../installing/deps-resolver/lib/linkPathToPeerVersion.js
function linkPathToPeerVersion(relPath) {
  let i4 = 0;
  while (i4 < relPath.length && relPath[i4] === ".")
    i4++;
  let out = "";
  let lastWasPlus = true;
  for (; i4 < relPath.length; i4++) {
    const c3 = relPath.charCodeAt(i4);
    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[i4];
      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 path104 from "node:path";
async function resolvePeers(opts3) {
  const depGraph = {};
  const pathsByNodeId = /* @__PURE__ */ new Map();
  const pathsByNodeIdPromises = /* @__PURE__ */ new Map();
  const awaitedPeerNodeIdsByNodeId = /* @__PURE__ */ new Map();
  const peersCacheOwnerByNodeId = /* @__PURE__ */ new Map();
  const cycleBrokenNodeIds = /* @__PURE__ */ new Set();
  const depPathsByPkgId = /* @__PURE__ */ new Map();
  const nodeIdsByPreviousDepPath = opts3.resolvedPeerProviderPaths == null ? /* @__PURE__ */ new Map() : getNodeIdsByPreviousDepPath(opts3.dependenciesTree);
  const _createPkgsByName = createPkgsByName.bind(null, opts3.dependenciesTree);
  const workspaceRootProject = opts3.resolvePeersFromWorkspaceRoot && opts3.projects.length > 1 ? opts3.projects.find(({ id }) => id === ".") : void 0;
  const rootPkgsByName = workspaceRootProject == null ? {} : _createPkgsByName(workspaceRootProject);
  const peerDependencyIssuesByProjects = {};
  const finishingList = [];
  const peersCache = /* @__PURE__ */ new Map();
  const purePkgs = /* @__PURE__ */ new Set();
  for (const { directNodeIdsByAlias, hoistedPeerProviderNodeIds, declaredDirectDependencies, explicitlyRequestedDirectDependencies, topParents, rootDir, id } of opts3.projects) {
    const currentProviderSources = [{
      directNodeIdsByAlias,
      declaredDirectDependencies: declaredDirectDependencies ?? /* @__PURE__ */ new Set(),
      explicitlyRequestedDirectDependencies: explicitlyRequestedDirectDependencies ?? /* @__PURE__ */ new Set()
    }];
    if (workspaceRootProject != null && workspaceRootProject.id !== id) {
      currentProviderSources.push({
        directNodeIdsByAlias: workspaceRootProject.directNodeIdsByAlias,
        declaredDirectDependencies: workspaceRootProject.declaredDirectDependencies ?? /* @__PURE__ */ new Set(),
        explicitlyRequestedDirectDependencies: workspaceRootProject.explicitlyRequestedDirectDependencies ?? /* @__PURE__ */ new Set()
      });
    }
    const peerDependencyIssues = { bad: {}, missing: {} };
    const pkgsByName = Object.fromEntries(Object.entries({
      ...rootPkgsByName,
      ..._createPkgsByName({ directNodeIdsByAlias, topParents })
    }).filter(([peerName]) => opts3.allPeerDepNames.has(peerName)));
    for (const { nodeId } of Object.values(pkgsByName)) {
      if (nodeId && !pathsByNodeIdPromises.has(nodeId)) {
        pathsByNodeIdPromises.set(nodeId, pDefer());
      }
    }
    const ownDirectChildren = {};
    const hoistedProviderChildren = {};
    for (const [alias, nodeId] of directNodeIdsByAlias.entries()) {
      if (hoistedPeerProviderNodeIds?.has(nodeId)) {
        hoistedProviderChildren[alias] = nodeId;
      } else {
        ownDirectChildren[alias] = nodeId;
      }
    }
    const parentPkgsOfNode = /* @__PURE__ */ new Map();
    const projectPeersContext = {
      allPeerDepNames: opts3.allPeerDepNames,
      parentPkgsOfNode,
      dependenciesTree: opts3.dependenciesTree,
      depGraph,
      lockfileDir: opts3.lockfileDir,
      parentNodeIds: [],
      parentDepPathsChain: [],
      pathsByNodeId,
      pathsByNodeIdPromises,
      awaitedPeerNodeIdsByNodeId,
      peersCacheOwnerByNodeId,
      cycleBrokenNodeIds,
      depPathsByPkgId,
      nodeIdsByPreviousDepPath,
      resolvedPeerProviderPaths: opts3.resolvedPeerProviderPaths,
      currentProviderSources,
      peersCache,
      peerDependencyIssues,
      purePkgs,
      dedupePeers: opts3.dedupePeers,
      peersSuffixMaxLength: opts3.peersSuffixMaxLength,
      rootDir,
      virtualStoreDir: opts3.virtualStoreDir,
      virtualStoreDirMaxLength: opts3.virtualStoreDirMaxLength
    };
    const { finishing } = await resolvePeersOfChildren(ownDirectChildren, pkgsByName, projectPeersContext);
    if (finishing) {
      finishingList.push(finishing);
    }
    const prunedProviderChildren = {};
    for (const [alias, nodeId] of Object.entries(hoistedProviderChildren)) {
      if (parentPkgsOfNode.has(nodeId))
        continue;
      prunedProviderChildren[alias] = nodeId;
    }
    if (Object.keys(prunedProviderChildren).length > 0) {
      const { finishing: finishing2 } = await resolvePeersOfChildren(prunedProviderChildren, pkgsByName, projectPeersContext);
      if (finishing2) {
        finishingList.push(finishing2);
      }
    }
    if (Object.keys(peerDependencyIssues.bad).length > 0 || Object.keys(peerDependencyIssues.missing).length > 0) {
      peerDependencyIssuesByProjects[id] = {
        ...peerDependencyIssues,
        ...mergePeers(peerDependencyIssues.missing)
      };
    }
  }
  breakDepPathAwaitCycles({
    awaitedPeerNodeIdsByNodeId,
    peersCacheOwnerByNodeId,
    cycleBrokenNodeIds,
    pathsByNodeId,
    pathsByNodeIdPromises,
    dependenciesTree: opts3.dependenciesTree
  });
  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 opts3.projects) {
    dependenciesByProjectId[id] = /* @__PURE__ */ new Map();
    for (const [alias, nodeId] of directNodeIdsByAlias.entries()) {
      dependenciesByProjectId[id].set(alias, pathsByNodeId.get(nodeId));
    }
  }
  if (opts3.dedupeInjectedDeps) {
    dedupeInjectedDeps({
      dependenciesByProjectId,
      projects: opts3.projects,
      depGraph: depGraphWithResolvedChildren,
      pathsByNodeId,
      lockfileDir: opts3.lockfileDir,
      resolvedImporters: opts3.resolvedImporters,
      workspaceProjectIds: opts3.workspaceProjectIds
    });
  }
  if (opts3.dedupePeerDependents) {
    const duplicates = Array.from(depPathsByPkgId.values()).filter((item) => item.size > 1);
    const allDepPathsMap = deduplicateAll(depGraphWithResolvedChildren, duplicates);
    for (const { id } of opts3.projects) {
      for (const [alias, depPath] of dependenciesByProjectId[id].entries()) {
        dependenciesByProjectId[id].set(alias, allDepPathsMap[depPath] ?? depPath);
      }
    }
  }
  return {
    dependenciesGraph: depGraphWithResolvedChildren,
    dependenciesByProjectId,
    peerDependencyIssuesByProjects,
    pathsByNodeId
  };
}
function breakDepPathAwaitCycles(opts3) {
  const isSettled = (nodeId) => opts3.pathsByNodeId.has(nodeId) || opts3.cycleBrokenNodeIds.has(nodeId);
  const keysByNodeId = /* @__PURE__ */ new Map();
  const nodeIdsByKey = /* @__PURE__ */ new Map();
  function keyOf(nodeId) {
    let key = keysByNodeId.get(nodeId);
    if (key == null) {
      key = String(keysByNodeId.size);
      keysByNodeId.set(nodeId, key);
      nodeIdsByKey.set(key, nodeId);
    }
    return key;
  }
  const graphEntries = [];
  const awaitingNodeIds = /* @__PURE__ */ new Set([
    ...opts3.awaitedPeerNodeIdsByNodeId.keys(),
    ...opts3.peersCacheOwnerByNodeId.keys()
  ]);
  for (const nodeId of awaitingNodeIds) {
    if (isSettled(nodeId))
      continue;
    const cacheOwnerNodeId = opts3.peersCacheOwnerByNodeId.get(nodeId);
    const awaitedNodeIds = opts3.awaitedPeerNodeIdsByNodeId.get(nodeId) ?? (cacheOwnerNodeId == null ? void 0 : opts3.awaitedPeerNodeIdsByNodeId.get(cacheOwnerNodeId));
    if (awaitedNodeIds == null)
      continue;
    const liveTargets = [];
    for (const awaitedNodeId of awaitedNodeIds) {
      if (!isSettled(awaitedNodeId)) {
        liveTargets.push(keyOf(awaitedNodeId));
      }
    }
    if (liveTargets.length > 0) {
      graphEntries.push([keyOf(nodeId), liveTargets]);
    }
  }
  if (graphEntries.length === 0)
    return;
  const { cycles } = analyzeGraph(graphEntries);
  for (const key of new Set(cycles.flat())) {
    const nodeId = nodeIdsByKey.get(key);
    const { name, version: version2 } = opts3.dependenciesTree.get(nodeId).resolvedPackage;
    opts3.cycleBrokenNodeIds.add(nodeId);
    opts3.pathsByNodeIdPromises.get(nodeId)?.resolve(`${name}@${version2}`);
  }
}
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) => {
    const countDiff = nodeDepsCount(depGraph[depPath1]) - nodeDepsCount(depGraph[depPath2]);
    if (countDiff !== 0)
      return countDiff;
    return depPath1 < depPath2 ? -1 : depPath1 > depPath2 ? 1 : 0;
  };
  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 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)) {
      const childNode = ctx.dependenciesTree.get(nodeId2);
      if (ctx.allPeerDepNames.has(alias) || alias !== childNode.resolvedPackage.name && ctx.allPeerDepNames.has(childNode.resolvedPackage.name)) {
        parentPkgNodes.push({
          alias,
          node: childNode,
          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) || inheritedParentPkgBreaksPeerDiamond(ctx, parentPkgs, parentPkgs[newParentPkgName], newParentPkg, children)) {
          newParentPkg.occurrence = parentPkgs[newParentPkgName].occurrence + 1;
          parentPkgs[newParentPkgName] = newParentPkg;
        }
      } else {
        parentPkgs[newParentPkgName] = newParentPkg;
      }
    }
  }
  if (node.lockedPeerContext != null && ctx.resolvedPeerProviderPaths != null) {
    for (const [peerName, previousPeerDepPath] of Object.entries(node.lockedPeerContext)) {
      const peerNodeId = ctx.nodeIdsByPreviousDepPath.get(previousPeerDepPath);
      const peerDependency = resolvedPackage.peerDependencies[peerName];
      if (peerNodeId == null || peerDependency == null)
        continue;
      if (ctx.resolvedPeerProviderPaths?.get(peerNodeId) !== previousPeerDepPath)
        continue;
      if (parseDepPath(previousPeerDepPath).peerDepGraphHash !== "")
        continue;
      const currentPeerDepPath = ctx.pathsByNodeId.get(peerNodeId);
      if (currentPeerDepPath != null && currentPeerDepPath !== previousPeerDepPath)
        continue;
      if (hasCurrentPeerProviderThatMustWin(peerName, parentPkgs, ctx))
        continue;
      const lockedPeer = toPkgByName([{
        alias: peerName,
        node: ctx.dependenciesTree.get(peerNodeId),
        nodeId: peerNodeId,
        parentNodeIds
      }])[peerName];
      if (!semverUtils.satisfiesWithPrereleases(lockedPeer.version, getPeerVersionRange(peerDependency.version), true))
        continue;
      const peerPathPromise = ctx.pathsByNodeIdPromises.get(peerNodeId) ?? pDefer();
      ctx.pathsByNodeIdPromises.set(peerNodeId, peerPathPromise);
      ctx.pathsByNodeId.set(peerNodeId, previousPeerDepPath);
      peerPathPromise.resolve(previousPeerDepPath);
      if (parentPkgs === parentParentPkgs) {
        parentPkgs = { ...parentParentPkgs };
      }
      parentPkgs[peerName] = lockedPeer;
    }
  }
  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
      });
    }
    ctx.peersCacheOwnerByNodeId.set(nodeId, hit.ownerNodeId);
    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;
  const resolvedThroughCycle = ctx.parentDepPathsChain.includes(resolvedPackage.pkgIdWithPatchHash);
  if (resolvedThroughCycle) {
  } else if (isPure) {
    ctx.purePkgs.add(resolvedPackage.pkgIdWithPatchHash);
  } else {
    cache = {
      missingPeers: allMissingPeers,
      depPath: pDefer(),
      resolvedPeers: allResolvedPeers,
      ownerNodeId: nodeId
    };
    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();
    const pendingPeerAliases = new Set(pendingPeerNodes.map(({ alias }) => alias));
    for (const cycle of cycles) {
      if (cycle.includes(currentAlias) || cycle.some((alias) => pendingPeerAliases.has(alias))) {
        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.cycleBrokenNodeIds.add(pendingPeer.nodeId);
          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 };
          }
        }
        let awaitedPeerNodeIds = ctx.awaitedPeerNodeIdsByNodeId.get(nodeId);
        if (awaitedPeerNodeIds == null) {
          awaitedPeerNodeIds = /* @__PURE__ */ new Set();
          ctx.awaitedPeerNodeIdsByNodeId.set(nodeId, awaitedPeerNodeIds);
        }
        awaitedPeerNodeIds.add(pendingPeer.nodeId);
        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 = path104.join(ctx.virtualStoreDir, depPathToFilename(depPath, ctx.virtualStoreDirMaxLength), "node_modules");
      const dir = safeJoinModulesDir(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 getNodeIdsByPreviousDepPath(dependenciesTree) {
  const nodeIdsByPreviousDepPath = /* @__PURE__ */ new Map();
  for (const [nodeId, node] of dependenciesTree.entries()) {
    if (node.previousDepPath != null && !nodeIdsByPreviousDepPath.has(node.previousDepPath)) {
      nodeIdsByPreviousDepPath.set(node.previousDepPath, nodeId);
    }
  }
  return nodeIdsByPreviousDepPath;
}
function hasCurrentPeerProviderThatMustWin(peerName, parentPkgs, ctx) {
  const peerNodeId = parentPkgs[peerName]?.nodeId;
  if (peerNodeId == null)
    return false;
  for (const source of ctx.currentProviderSources) {
    for (const [alias, directNodeId] of source.directNodeIdsByAlias) {
      if (directNodeId === peerNodeId && (alias !== peerName || source.explicitlyRequestedDirectDependencies.has(alias) || source.declaredDirectDependencies.has(alias) && ctx.dependenciesTree.get(peerNodeId)?.previousDepPath == null))
        return true;
    }
  }
  for (const parentNodeId of ctx.parentNodeIds) {
    const parentNode = ctx.dependenciesTree.get(parentNodeId);
    if (parentNode == null)
      continue;
    const children = typeof parentNode.children === "function" ? parentNode.children() : parentNode.children;
    parentNode.children = children;
    if ([...parentNode.dependencyNamesWhoseCurrentProviderMustWin ?? []].some((alias) => children[alias] === peerNodeId))
      return true;
  }
  return false;
}
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 inheritedParentPkgBreaksPeerDiamond(ctx, parentPkgs, inheritedParentPkg, ownChildParentPkg, children) {
  if (inheritedParentPkg.nodeId == null || ownChildParentPkg.nodeId == null)
    return false;
  if (inheritedParentPkg.nodeId === ownChildParentPkg.nodeId)
    return false;
  const inheritedContext = ctx.parentPkgsOfNode.get(inheritedParentPkg.nodeId);
  if (inheritedContext == null)
    return false;
  const parentPkg = ctx.dependenciesTree.get(ownChildParentPkg.nodeId)?.resolvedPackage;
  if (parentPkg == null)
    return false;
  const conflictingPeers = /* @__PURE__ */ new Set();
  for (const peerName of Object.keys(parentPkg.peerDependencies)) {
    if (!ctx.allPeerDepNames.has(peerName))
      continue;
    const inheritedPeer = inheritedContext[peerName];
    const currentPeer = parentPkgs[peerName];
    if (inheritedPeer == null || currentPeer == null)
      continue;
    if (parentPeerDiffers(ctx.dependenciesTree, currentPeer, inheritedPeer)) {
      conflictingPeers.add(peerName);
    }
  }
  if (conflictingPeers.size === 0)
    return false;
  for (const childNodeId of Object.values(children)) {
    const childPeerDependencies = ctx.dependenciesTree.get(childNodeId)?.resolvedPackage?.peerDependencies;
    if (childPeerDependencies == null || childPeerDependencies[parentPkg.name] == null)
      continue;
    for (const peerName of conflictingPeers) {
      if (childPeerDependencies[peerName] != null)
        return true;
    }
  }
  return false;
}
function parentPeerDiffers(dependenciesTree, currentPeer, inheritedPeer) {
  if (inheritedPeer.pkgIdWithPatchHash != null) {
    if (currentPeer.nodeId == null || typeof currentPeer.nodeId === "string" && currentPeer.nodeId.startsWith("link:")) {
      return true;
    }
    return dependenciesTree.get(currentPeer.nodeId)?.resolvedPackage?.pkgIdWithPatchHash !== inheritedPeer.pkgIdWithPatchHash;
  }
  return currentPeer.version !== inheritedPeer.version;
}
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 i4 = parentNodeIds.length - 1; i4 >= 0; i4--) {
    const parentNode = dependenciesTree.get(parentNodeIds[i4]);
    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 = getPeerVersionRange(version2);
    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_semver34.default.gte(existing.version, pkg.version))
      return;
  }
  parentRefs[newAlias] = pkg;
}
var semverUtils, import_semver34;
var init_resolvePeers = __esm({
  "../installing/deps-resolver/lib/resolvePeers.js"() {
    "use strict";
    init_lib68();
    init_lib10();
    init_lib106();
    semverUtils = __toESM(require_semverUtils(), 1);
    init_dist19();
    init_p_defer();
    init_es();
    import_semver34 = __toESM(require_semver2(), 1);
    init_dedupeInjectedDeps();
    init_depPathCompatibility();
    init_linkPathToPeerVersion();
    init_mergePeers();
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/resolve-link-target/3.0.0/63776cb8be27067aa98a4b4c16d9067c7b08f7d7882ff72f496488f6d01e9296/node_modules/resolve-link-target/index.js
import fs64 from "node:fs";
import path105 from "node:path";
async function resolveLinkTarget(linkPath) {
  linkPath = path105.resolve(linkPath);
  const target2 = await fs64.promises.readlink(linkPath);
  return _resolveLink(linkPath, target2);
}
function _resolveLink(dest, target2) {
  if (path105.isAbsolute(target2)) {
    return path105.resolve(target2);
  }
  return path105.join(path105.dirname(dest), target2);
}
var init_resolve_link_target = __esm({
  "../../../../../setup-pnpm/store/v11/links/@/resolve-link-target/3.0.0/63776cb8be27067aa98a4b4c16d9067c7b08f7d7882ff72f496488f6d01e9296/node_modules/resolve-link-target/index.js"() {
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/is-inner-link/5.0.0/72b7eb44d56e1666d7ca026d99a5fb2fb1b7840dde1a66e0e9ee7e333683e310/node_modules/is-inner-link/index.js
import path106 from "node:path";
async function isInnerLink(parent, relativePathToLink) {
  const linkPath = path106.resolve(parent, relativePathToLink);
  const target2 = await resolveLinkTarget(linkPath);
  return {
    isInner: isSubdir(parent, target2),
    target: target2
  };
}
var init_is_inner_link = __esm({
  "../../../../../setup-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 path107 from "node:path";
async function safeIsInnerLink(projectModulesDir, depName, opts3) {
  try {
    const link2 = await isInnerLink(projectModulesDir, depName);
    if (link2.isInner)
      return true;
    if (isSubdir(opts3.virtualStoreDir, link2.target) || opts3.globalVirtualStoreDir !== opts3.virtualStoreDir && isSubdir(opts3.globalVirtualStoreDir, link2.target)) {
      return true;
    }
    return link2.target;
  } catch (err2) {
    if (err2.code === "ENOENT")
      return true;
    if (opts3.hideAlienModules) {
      logger.warn({
        message: `Moving ${depName} that was installed by a different package manager to "node_modules/.ignored"`,
        prefix: opts3.projectDir
      });
      const ignoredDir = path107.join(projectModulesDir, ".ignored", depName);
      await renameOverwrite(path107.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 (!isAcceptablePeerSpec(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 a valid semver range, a `workspace:`/`catalog:` spec, or a dependency specifier such as a named-registry (`<registry>:<version>`), `npm:`, `file:`, or git/URL spec"
      });
    }
  }
}
var init_validatePeerDependencies = __esm({
  "../installing/deps-resolver/lib/validatePeerDependencies.js"() {
    "use strict";
    init_lib10();
    init_lib2();
  }
});

// ../installing/deps-resolver/lib/toResolveImporter.js
async function toResolveImporter(opts3, project) {
  validatePeerDependencies(project);
  const allDeps = getWantedDependencies(project.manifest);
  const nonLinkedDependencies = await partitionLinkedPackages(allDeps, {
    lockfileOnly: opts3.lockfileOnly,
    modulesDir: project.modulesDir,
    projectDir: project.rootDir,
    virtualStoreDir: opts3.virtualStoreDir,
    globalVirtualStoreDir: opts3.globalVirtualStoreDir,
    workspacePackages: opts3.workspacePackages
  });
  const defaultUpdateDepth = project.update === true || project.updateMatching != null ? opts3.defaultUpdateDepth : -1;
  const existingDeps = nonLinkedDependencies.filter(({ alias }) => !project.wantedDependencies.some((wantedDep) => wantedDep.alias === alias));
  if (opts3.updateToLatest && opts3.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(project.updateMatching != null ? updateLocalTarballs : (dep) => ({ ...dep, updateDepth: -1 }))
    ];
  }
  return {
    ...project,
    hasRemovedDependencies: Boolean(project.removePackages?.length),
    preferredVersions: opts3.preferredVersions ?? (project.manifest && getPreferredVersionsFromPackage(project.manifest)) ?? {},
    wantedDependencies
  };
}
function prefIsLocalTarball(bareSpecifier) {
  return bareSpecifier.startsWith("file:") && bareSpecifier.endsWith(".tgz");
}
async function partitionLinkedPackages(dependencies, opts3) {
  const nonLinkedDependencies = [];
  const linkedAliases = /* @__PURE__ */ new Set();
  await Promise.all(dependencies.map(async (dependency) => {
    if (!dependency.alias || opts3.workspacePackages?.get(dependency.alias) != null || dependency.bareSpecifier.startsWith("workspace:")) {
      nonLinkedDependencies.push(dependency);
      return;
    }
    const isInnerLink2 = await safeIsInnerLink(opts3.modulesDir, dependency.alias, {
      hideAlienModules: !opts3.lockfileOnly,
      projectDir: opts3.projectDir,
      virtualStoreDir: opts3.virtualStoreDir,
      globalVirtualStoreDir: opts3.globalVirtualStoreDir
    });
    if (isInnerLink2 === true) {
      nonLinkedDependencies.push(dependency);
      return;
    }
    if (!dependency.bareSpecifier.startsWith("link:")) {
      logger.info({
        message: `${dependency.alias} is linked to ${opts3.modulesDir} from ${isInnerLink2}`,
        prefix: opts3.projectDir
      });
    }
    linkedAliases.add(dependency.alias);
  }));
  return nonLinkedDependencies;
}
function getPreferredVersionsFromPackage(pkg) {
  return getVersionSpecsByRealNames(getAllDependenciesFromManifest(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_lib11();
    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, opts3) {
  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: opts3?.warn ?? ((_msg) => void 0),
    dependenciesGraph: opts3?.dependenciesGraph
  });
  const prunedLockfile = {
    ...lockfile,
    packages: copiedPackages
  };
  if (isEmpty_default(prunedLockfile.packages)) {
    delete prunedLockfile.packages;
  }
  return prunedLockfile;
}
function copyPackageSnapshots(originalPackages, opts3) {
  const copiedSnapshots = {};
  const ctx = {
    copiedSnapshots,
    nonOptional: /* @__PURE__ */ new Set(),
    originalPackages,
    walked: /* @__PURE__ */ new Set(),
    warn: opts3.warn,
    dependenciesGraph: opts3.dependenciesGraph
  };
  copyDependencySubGraph(ctx, opts3.devDepPaths, {
    optional: false
  });
  copyDependencySubGraph(ctx, opts3.optionalDepPaths, {
    optional: true
  });
  copyDependencySubGraph(ctx, opts3.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, opts3) {
  for (const depPath of depPaths) {
    const key = `${depPath}:${opts3.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 (opts3.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, opts3);
    const newOptionalDependencies = resolvedDepsToDepPaths(depLockfile.optionalDependencies ?? {});
    copyDependencySubGraph(ctx, newOptionalDependencies, { optional: true });
  }
}
var init_lib110 = __esm({
  "../lockfile/pruner/lib/index.js"() {
    "use strict";
    init_lib();
    init_lib68();
    init_es();
    init_lib72();
  }
});

// ../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, opts3) {
  let lockfileResolution = toLockfileResolution({ name: pkg.name, version: pkg.version }, pkg.resolution, opts3.registry, opts3.lockfileIncludeTarballUrl);
  if ("tarball" in lockfileResolution && lockfileResolution.integrity == null && lockfileResolution.type === void 0) {
    const prevResolution = opts3.prevSnapshot?.resolution;
    if (prevResolution != null && "tarball" in prevResolution && prevResolution.type === void 0 && prevResolution.tarball === lockfileResolution.tarball && prevResolution.integrity != null) {
      lockfileResolution = { ...lockfileResolution, integrity: prevResolution.integrity };
    }
  }
  const newResolvedDeps = updateResolvedDeps(opts3.updatedDeps, opts3.depGraph);
  const newResolvedOptionalDeps = updateResolvedDeps(opts3.updatedOptionalDeps, opts3.depGraph);
  const result2 = {
    resolution: lockfileResolution
  };
  if (opts3.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_lib68();
    init_lib110();
    init_lib73();
    init_lib3();
    init_es();
    init_depPathToRef();
  }
});

// ../installing/deps-resolver/lib/updateProjectManifest.js
async function updateProjectManifest(importer, opts3) {
  if (!importer.manifest) {
    throw new Error("Cannot save because no package.json found");
  }
  const specsToUpsert = [];
  for (const rdd of opts3.directDependencies) {
    const wantedDep = rdd.wantedDependency;
    if (wantedDep?.updateSpec !== true)
      continue;
    specsToUpsert.push({
      alias: rdd.alias,
      peer: importer.peer,
      bareSpecifier: getBareSpecifierToSave(wantedDep, rdd, opts3.preserveWorkspaceProtocol),
      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];
}
function getBareSpecifierToSave(wantedDep, resolvedDep, preserveWorkspaceProtocol) {
  if (resolvedDep.catalogLookup != null) {
    return resolvedDep.catalogLookup.userSpecifiedBareSpecifier;
  }
  if (preserveWorkspaceProtocol && isWorkspaceLocalPathSpecifier(wantedDep.bareSpecifier)) {
    return wantedDep.bareSpecifier;
  }
  return resolvedDep.normalizedBareSpecifier ?? wantedDep.bareSpecifier;
}
function isWorkspaceLocalPathSpecifier(bareSpecifier) {
  if (!bareSpecifier.startsWith("workspace:"))
    return false;
  const pref = bareSpecifier.slice("workspace:".length);
  return pref.startsWith(".") || pref.startsWith("/") || pref.startsWith("~/") || /^[A-Z]:/i.test(pref);
}
var init_updateProjectManifest = __esm({
  "../installing/deps-resolver/lib/updateProjectManifest.js"() {
    "use strict";
    init_lib11();
  }
});

// ../installing/deps-resolver/lib/index.js
import path108 from "node:path";
async function resolveDependencies2(importers, opts3) {
  const _toResolveImporter = toResolveImporter.bind(null, {
    defaultUpdateDepth: opts3.defaultUpdateDepth,
    lockfileOnly: opts3.dryRun,
    preferredVersions: opts3.preferredVersions,
    virtualStoreDir: opts3.virtualStoreDir,
    globalVirtualStoreDir: opts3.globalVirtualStoreDir,
    workspacePackages: opts3.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, opts3);
  if (resolutionPolicyViolations.length > 0) {
    if (!opts3.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 opts3.handleResolutionPolicyViolations(resolutionPolicyViolations);
  }
  opts3.storeController.clearResolutionCache();
  if (opts3.patchedDependencies && (opts3.forceFullResolution || !Object.keys(opts3.wantedLockfile.packages ?? {})?.length) && Object.keys(opts3.wantedLockfile.importers).length === importers.length) {
    verifyPatches({
      patchedDependencies: opts3.patchedDependencies,
      appliedPatches,
      allowUnusedPatches: opts3.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(getAllDependenciesFromManifest(project.manifest)), resolvedImporter.directDependencies.map(({ alias }) => alias) || []), project.modulesDir) : [];
    for (const linkedDependency of resolvedImporter.linkedDependencies) {
      const target2 = !opts3.excludeLinksFromLockfile || isSubdir(opts3.lockfileDir, linkedDependency.resolution.directory) ? linkedDependency.resolution.directory : path108.join(project.modulesDir, linkedDependency.alias);
      const linkedDir = createNodeIdForLinkedLocalPkg(opts3.lockfileDir, target2);
      topParents.push({
        name: linkedDependency.alias,
        version: linkedDependency.version,
        linkedDir
      });
    }
    return {
      binsDir: project.binsDir,
      declaredDirectDependencies: /* @__PURE__ */ new Set([
        ...Object.keys(project.manifest == null ? {} : getAllDependenciesFromManifest(project.manifest)),
        ...project.wantedDependencies.flatMap(({ alias, isNew }) => isNew && alias != null ? [alias] : [])
      ]),
      directNodeIdsByAlias: resolvedImporter.directNodeIdsByAlias,
      hoistedPeerProviderNodeIds: resolvedImporter.hoistedPeerProviderNodeIds,
      explicitlyRequestedDirectDependencies: new Set(project.wantedDependencies.flatMap(({ alias, bareSpecifier, isNew, prevSpecifier, updateSpec }) => alias != null && (isNew === true || updateSpec === true || prevSpecifier != null && bareSpecifier !== prevSpecifier) ? [alias] : [])),
      id: project.id,
      linkedDependencies: resolvedImporter.linkedDependencies,
      manifest: project.manifest,
      modulesDir: project.modulesDir,
      rootDir: project.rootDir,
      topParents
    };
  }));
  const peerResolutionOpts = {
    allPeerDepNames,
    dependenciesTree,
    dedupePeerDependents: opts3.dedupePeerDependents,
    dedupePeers: opts3.dedupePeers,
    dedupeInjectedDeps: opts3.dedupeInjectedDeps,
    lockfileDir: opts3.lockfileDir,
    projects: projectsToLink,
    virtualStoreDir: opts3.virtualStoreDir,
    virtualStoreDirMaxLength: opts3.virtualStoreDirMaxLength,
    resolvePeersFromWorkspaceRoot: Boolean(opts3.resolvePeersFromWorkspaceRoot),
    resolvedImporters,
    peersSuffixMaxLength: opts3.peersSuffixMaxLength,
    workspaceProjectIds: /* @__PURE__ */ new Set([...opts3.allProjectIds, ...Object.keys(opts3.wantedLockfile.importers)])
  };
  const initiallyResolvedPeers = await resolvePeers(peerResolutionOpts);
  const { dependenciesGraph, dependenciesByProjectId, peerDependencyIssuesByProjects } = treeHasLockedPeerContexts(dependenciesTree) ? await resolvePeers({
    ...peerResolutionOpts,
    resolvedPeerProviderPaths: initiallyResolvedPeers.pathsByNodeId
  }) : initiallyResolvedPeers;
  const linkedDependenciesByProjectId = {};
  await Promise.all(projectsToResolve.map(async (project, index2) => {
    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: opts3.preserveWorkspaceProtocol,
        saveWorkspaceProtocol: opts3.saveWorkspaceProtocol
      });
    } else {
      updatedManifest = project.manifest;
      updatedOriginalManifest = project.originalManifest;
      packageManifestLogger.debug({
        prefix: project.rootDir,
        updated: project.manifest
      });
    }
    if (updatedManifest != null) {
      if (opts3.autoInstallPeers) {
        if (updatedManifest.peerDependencies) {
          const allDeps = getAllDependenciesFromManifest(updatedManifest);
          for (const [peerName, peerRange] of Object.entries(updatedManifest.peerDependencies)) {
            if (allDeps[peerName])
              continue;
            updatedManifest.dependencies ??= {};
            updatedManifest.dependencies[peerName] = peerRange;
          }
        }
      }
      const projectSnapshot = opts3.wantedLockfile.importers[project.id];
      opts3.wantedLockfile.importers[project.id] = addDirectDependenciesToLockfile(updatedManifest, projectSnapshot, resolvedImporter.linkedDependencies, resolvedImporter.directDependencies, opts3.excludeLinksFromLockfile);
    }
    importers[index2].manifest = updatedOriginalManifest ?? project.originalManifest ?? project.manifest;
    for (const [alias, depPath] of dependenciesByProjectId[project.id].entries()) {
      const projectSnapshot = opts3.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 i4 = 0; i4 < resolvedImporter.directDependencies.length; i4++) {
      const updateSpec = project.wantedDependencies[i4]?.updateSpec ?? false;
      if (!updateSpec)
        continue;
      const dep = resolvedImporter.directDependencies[i4];
      if (dep.catalogLookup == null)
        continue;
      if (dep.normalizedBareSpecifier == null)
        continue;
      updatedCatalogs ??= {};
      updatedCatalogs[dep.catalogLookup.catalogName] ??= {};
      updatedCatalogs[dep.catalogLookup.catalogName][dep.alias] = dep.normalizedBareSpecifier;
    }
  }
  if (opts3.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);
          }
        }
      }
    }
  }
  await waitForResolutionFetches(resolvedPkgsById);
  const newLockfile = updateLockfile({
    dependenciesGraph,
    lockfile: opts3.wantedLockfile,
    prefix: opts3.virtualStoreDir,
    registries: opts3.registries,
    lockfileIncludeTarballUrl: opts3.lockfileIncludeTarballUrl
  });
  if (time) {
    newLockfile.time = {
      ...opts3.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, opts3),
    outdatedDependencies,
    linkedDependenciesByProjectId,
    updatedCatalogs,
    newLockfile,
    peerDependencyIssuesByProjects,
    waitTillAllFetchingsFinish,
    wantedToBeSkippedPackageIds,
    resolutionPolicyViolations
  };
}
function treeHasLockedPeerContexts(dependenciesTree) {
  for (const node of dependenciesTree.values()) {
    if (node.lockedPeerContext != null)
      return true;
  }
  return false;
}
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(getAllDependenciesFromManifest(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];
    }
  }
}
async function waitForResolutionFetches(resolvedPkgsById) {
  const fetches = [];
  for (const pkg of Object.values(resolvedPkgsById)) {
    if (pkg.resolutionNeedsFetch && pkg.fetching != null) {
      fetches.push(pkg.fetching());
    }
  }
  if (fetches.length > 0) {
    await Promise.all(fetches);
  }
}
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) => path108.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, opts3) {
  const pkgMetaIter = iterateGraphPkgMetaEntries(graph, !opts3.enableGlobalVirtualStore);
  const allowBuild = opts3.enableGlobalVirtualStore ? opts3.allowBuild : void 0;
  const nodeVersion = findRuntimeNodeVersion(Object.keys(graph));
  for (const { pkgMeta: { depPath }, hash: hash2 } of iterateHashedGraphNodes(graph, pkgMetaIter, {
    allowBuild,
    supportedArchitectures: opts3.supportedArchitectures,
    nodeVersion,
    lockfileDir: opts3.lockfileDir
  })) {
    const modules = path108.join(opts3.globalVirtualStoreDir, hash2, "node_modules");
    const node = graph[depPath];
    Object.assign(node, {
      modules,
      dir: safeJoinModulesDir(modules, node.name)
    });
  }
  return graph;
}
var init_lib111 = __esm({
  "../installing/deps-resolver/lib/index.js"() {
    "use strict";
    init_lib6();
    init_lib74();
    init_lib68();
    init_lib2();
    init_lib106();
    init_lib108();
    init_lib5();
    init_lib11();
    init_lib9();
    init_is_subdir();
    init_es();
    init_depPathToRef();
    init_getCatalogSnapshots();
    init_getWantedDependencies();
    init_resolveDependencies();
    init_resolveDependencyTree();
    init_resolvePeers();
    init_toResolveImporter();
    init_updateLockfile();
    init_updateProjectManifest();
    init_validateDependencyAlias();
  }
});

// ../installing/deps-installer/lib/getPeerDependencyIssues.js
var init_getPeerDependencyIssues = __esm({
  "../installing/deps-installer/lib/getPeerDependencyIssues.js"() {
    "use strict";
    init_lib76();
    init_lib99();
    init_lib105();
    init_lib89();
    init_lib111();
    init_lib109();
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/chalk/4.1.2/c24cf7af43c10db55fbaf7d627c6e95c786c790072228a2fa3e9995dd55ce893/node_modules/chalk/source/util.js
var require_util12 = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/chalk/4.1.2/c24cf7af43c10db55fbaf7d627c6e95c786c790072228a2fa3e9995dd55ce893/node_modules/chalk/source/util.js"(exports2, module2) {
    "use strict";
    var stringReplaceAll3 = (string, substring, replacer2) => {
      let index2 = string.indexOf(substring);
      if (index2 === -1) {
        return string;
      }
      const substringLength = substring.length;
      let endIndex = 0;
      let returnValue = "";
      do {
        returnValue += string.substr(endIndex, index2 - endIndex) + substring + replacer2;
        endIndex = index2 + substringLength;
        index2 = string.indexOf(substring, endIndex);
      } while (index2 !== -1);
      returnValue += string.substr(endIndex);
      return returnValue;
    };
    var stringEncaseCRLFWithFirstIndex3 = (string, prefix, postfix, index2) => {
      let endIndex = 0;
      let returnValue = "";
      do {
        const gotCR = string[index2 - 1] === "\r";
        returnValue += string.substr(endIndex, (gotCR ? index2 - 1 : index2) - endIndex) + prefix + (gotCR ? "\r\n" : "\n") + postfix;
        endIndex = index2 + 1;
        index2 = string.indexOf("\n", endIndex);
      } while (index2 !== -1);
      returnValue += string.substr(endIndex);
      return returnValue;
    };
    module2.exports = {
      stringReplaceAll: stringReplaceAll3,
      stringEncaseCRLFWithFirstIndex: stringEncaseCRLFWithFirstIndex3
    };
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/chalk/4.1.2/c24cf7af43c10db55fbaf7d627c6e95c786c790072228a2fa3e9995dd55ce893/node_modules/chalk/source/templates.js
var require_templates2 = __commonJS({
  "../../../../../setup-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 u2 = c3[0] === "u";
      const bracket = c3[1] === "{";
      if (u2 && !bracket && c3.length === 5 || c3[0] === "x" && c3.length === 3) {
        return String.fromCharCode(parseInt(c3.slice(1), 16));
      }
      if (u2 && 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(chalk3, styles6) {
      const enabled = {};
      for (const layer of styles6) {
        for (const style of layer.styles) {
          enabled[style[0]] = layer.inverse ? null : style.slice(1);
        }
      }
      let current = chalk3;
      for (const [styleName, styles7] of Object.entries(enabled)) {
        if (!Array.isArray(styles7)) {
          continue;
        }
        if (!(styleName in current)) {
          throw new Error(`Unknown Chalk style: ${styleName}`);
        }
        current = styles7.length > 0 ? current[styleName](...styles7) : current[styleName];
      }
      return current;
    }
    module2.exports = (chalk3, temporary) => {
      const styles6 = [];
      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(styles6.length === 0 ? string : buildStyle(chalk3, styles6)(string));
          styles6.push({ inverse: inverse2, styles: parseStyle(style) });
        } else if (close) {
          if (styles6.length === 0) {
            throw new Error("Found extraneous } in Chalk template literal");
          }
          chunks.push(buildStyle(chalk3, styles6)(chunk.join("")));
          chunk = [];
          styles6.pop();
        } else {
          chunk.push(character);
        }
      });
      chunks.push(chunk.join(""));
      if (styles6.length > 0) {
        const errMessage = `Chalk template literal is missing ${styles6.length} closing bracket${styles6.length === 1 ? "" : "s"} (\`}\`)`;
        throw new Error(errMessage);
      }
      return chunks.join("");
    };
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/chalk/4.1.2/c24cf7af43c10db55fbaf7d627c6e95c786c790072228a2fa3e9995dd55ce893/node_modules/chalk/source/index.js
var require_source2 = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/chalk/4.1.2/c24cf7af43c10db55fbaf7d627c6e95c786c790072228a2fa3e9995dd55ce893/node_modules/chalk/source/index.js"(exports2, module2) {
    "use strict";
    var ansiStyles4 = require_ansi_styles();
    var { stdout: stdoutColor3, stderr: stderrColor3 } = require_supports_color();
    var {
      stringReplaceAll: stringReplaceAll3,
      stringEncaseCRLFWithFirstIndex: stringEncaseCRLFWithFirstIndex3
    } = require_util12();
    var { isArray } = Array;
    var levelMapping2 = [
      "ansi",
      "ansi",
      "ansi256",
      "ansi16m"
    ];
    var styles6 = /* @__PURE__ */ Object.create(null);
    var applyOptions3 = (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 = stdoutColor3 ? stdoutColor3.level : 0;
      object.level = options.level === void 0 ? colorLevel : options.level;
    };
    var ChalkClass = class {
      constructor(options) {
        return chalkFactory3(options);
      }
    };
    var chalkFactory3 = (options) => {
      const chalk4 = {};
      applyOptions3(chalk4, options);
      chalk4.template = (...arguments_) => chalkTag(chalk4.template, ...arguments_);
      Object.setPrototypeOf(chalk4, Chalk.prototype);
      Object.setPrototypeOf(chalk4.template, chalk4);
      chalk4.template.constructor = () => {
        throw new Error("`chalk.constructor()` is deprecated. Use `new chalk.Instance()` instead.");
      };
      chalk4.template.Instance = ChalkClass;
      return chalk4.template;
    };
    function Chalk(options) {
      return chalkFactory3(options);
    }
    for (const [styleName, style] of Object.entries(ansiStyles4)) {
      styles6[styleName] = {
        get() {
          const builder = createBuilder3(this, createStyler3(style.open, style.close, this._styler), this._isEmpty);
          Object.defineProperty(this, styleName, { value: builder });
          return builder;
        }
      };
    }
    styles6.visible = {
      get() {
        const builder = createBuilder3(this, this._styler, true);
        Object.defineProperty(this, "visible", { value: builder });
        return builder;
      }
    };
    var usedModels3 = ["rgb", "hex", "keyword", "hsl", "hsv", "hwb", "ansi", "ansi256"];
    for (const model of usedModels3) {
      styles6[model] = {
        get() {
          const { level } = this;
          return function(...arguments_) {
            const styler = createStyler3(ansiStyles4.color[levelMapping2[level]][model](...arguments_), ansiStyles4.color.close, this._styler);
            return createBuilder3(this, styler, this._isEmpty);
          };
        }
      };
    }
    for (const model of usedModels3) {
      const bgModel = "bg" + model[0].toUpperCase() + model.slice(1);
      styles6[bgModel] = {
        get() {
          const { level } = this;
          return function(...arguments_) {
            const styler = createStyler3(ansiStyles4.bgColor[levelMapping2[level]][model](...arguments_), ansiStyles4.bgColor.close, this._styler);
            return createBuilder3(this, styler, this._isEmpty);
          };
        }
      };
    }
    var proto3 = Object.defineProperties(() => {
    }, {
      ...styles6,
      level: {
        enumerable: true,
        get() {
          return this._generator.level;
        },
        set(level) {
          this._generator.level = level;
        }
      }
    });
    var createStyler3 = (open3, close, parent) => {
      let openAll;
      let closeAll;
      if (parent === void 0) {
        openAll = open3;
        closeAll = close;
      } else {
        openAll = parent.openAll + open3;
        closeAll = close + parent.closeAll;
      }
      return {
        open: open3,
        close,
        openAll,
        closeAll,
        parent
      };
    };
    var createBuilder3 = (self2, _styler, _isEmpty) => {
      const builder = (...arguments_) => {
        if (isArray(arguments_[0]) && isArray(arguments_[0].raw)) {
          return applyStyle3(builder, chalkTag(builder, ...arguments_));
        }
        return applyStyle3(builder, arguments_.length === 1 ? "" + arguments_[0] : arguments_.join(" "));
      };
      Object.setPrototypeOf(builder, proto3);
      builder._generator = self2;
      builder._styler = _styler;
      builder._isEmpty = _isEmpty;
      return builder;
    };
    var applyStyle3 = (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 = stringReplaceAll3(string, styler.close, styler.open);
          styler = styler.parent;
        }
      }
      const lfIndex = string.indexOf("\n");
      if (lfIndex !== -1) {
        string = stringEncaseCRLFWithFirstIndex3(string, closeAll, openAll, lfIndex);
      }
      return openAll + string + closeAll;
    };
    var template;
    var chalkTag = (chalk4, ...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 i4 = 1; i4 < firstString.length; i4++) {
        parts.push(
          String(arguments_[i4 - 1]).replace(/[{}\\]/g, "\\$&"),
          String(firstString.raw[i4])
        );
      }
      if (template === void 0) {
        template = require_templates2();
      }
      return template(chalk4, parts.join(""));
    };
    Object.defineProperties(Chalk.prototype, styles6);
    var chalk3 = Chalk();
    chalk3.supportsColor = stdoutColor3;
    chalk3.stderr = Chalk({ level: stderrColor3 ? stderrColor3.level : 0 });
    chalk3.stderr.supportsColor = stderrColor3;
    module2.exports = chalk3;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/slash/2.0.0/7e081a5f0090e902df791a5e0825a6779e59c0a002f1e02b56c93cca6ae8eee7/node_modules/slash/index.js
var require_slash = __commonJS({
  "../../../../../setup-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, "/");
    };
  }
});

// ../../../../../setup-pnpm/store/v11/links/@pnpm/patch-package/0.0.1/870da8e1b07850065f652558a182c836aaeda11b2fd012252b85bc375a38834b/node_modules/@pnpm/patch-package/dist/path.js
var require_path3 = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@pnpm/patch-package/0.0.1/870da8e1b07850065f652558a182c836aaeda11b2fd012252b85bc375a38834b/node_modules/@pnpm/patch-package/dist/path.js"(exports2) {
    "use strict";
    var __importDefault2 = exports2 && exports2.__importDefault || function(mod2) {
      return mod2 && mod2.__esModule ? mod2 : { "default": mod2 };
    };
    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 join5 = (...args) => (0, slash_1.default)(path_1.default.join(...args));
    exports2.join = join5;
    var path_2 = __require("path");
    Object.defineProperty(exports2, "dirname", { enumerable: true, get: function() {
      return path_2.dirname;
    } });
    var resolve4 = (...args) => (0, slash_1.default)(path_1.default.resolve(...args));
    exports2.resolve = resolve4;
    var relative2 = (...args) => (0, slash_1.default)(path_1.default.relative(...args));
    exports2.relative = relative2;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/klaw-sync/6.0.0/75e2f18cf9655975cd06931c2b639620e1b93111100fc230c73a85e373a49683/node_modules/klaw-sync/klaw-sync.js
var require_klaw_sync = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/klaw-sync/6.0.0/75e2f18cf9655975cd06931c2b639620e1b93111100fc230c73a85e373a49683/node_modules/klaw-sync/klaw-sync.js"(exports2, module2) {
    "use strict";
    var fs131 = require_graceful_fs();
    var path240 = __require("path");
    function klawSync(dir, opts3, ls) {
      if (!ls) {
        ls = [];
        dir = path240.resolve(dir);
        opts3 = opts3 || {};
        opts3.fs = opts3.fs || fs131;
        if (opts3.depthLimit > -1) opts3.rootDepth = dir.split(path240.sep).length + 1;
      }
      const paths3 = opts3.fs.readdirSync(dir).map((p) => dir + path240.sep + p);
      for (var i4 = 0; i4 < paths3.length; i4 += 1) {
        const pi = paths3[i4];
        const st = opts3.fs.statSync(pi);
        const item = { path: pi, stats: st };
        const isUnderDepthLimit = !opts3.rootDepth || pi.split(path240.sep).length - opts3.rootDepth < opts3.depthLimit;
        const filterResult = opts3.filter ? opts3.filter(item) : true;
        const isDir = st.isDirectory();
        const shouldAdd = filterResult && (isDir ? !opts3.nodir : !opts3.nofile);
        const shouldTraverse = isDir && isUnderDepthLimit && (opts3.traverseAll || filterResult);
        if (shouldAdd) ls.push(item);
        if (shouldTraverse) ls = klawSync(pi, opts3, ls);
      }
      return ls;
    }
    module2.exports = klawSync;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@pnpm/patch-package/0.0.1/870da8e1b07850065f652558a182c836aaeda11b2fd012252b85bc375a38834b/node_modules/@pnpm/patch-package/dist/patchFs.js
var require_patchFs2 = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@pnpm/patch-package/0.0.1/870da8e1b07850065f652558a182c836aaeda11b2fd012252b85bc375a38834b/node_modules/@pnpm/patch-package/dist/patchFs.js"(exports2) {
    "use strict";
    var __importDefault2 = exports2 && exports2.__importDefault || function(mod2) {
      return mod2 && mod2.__esModule ? mod2 : { "default": mod2 };
    };
    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: path240 }) => (0, path_1.relative)(patchesDir, path240)).filter((path240) => path240.endsWith(".patch"));
      } catch (e) {
        return [];
      }
    };
    exports2.getPatchFiles = getPatchFiles;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@pnpm/patch-package/0.0.1/870da8e1b07850065f652558a182c836aaeda11b2fd012252b85bc375a38834b/node_modules/@pnpm/patch-package/dist/assertNever.js
var require_assertNever = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@pnpm/patch-package/0.0.1/870da8e1b07850065f652558a182c836aaeda11b2fd012252b85bc375a38834b/node_modules/@pnpm/patch-package/dist/assertNever.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.assertNever = void 0;
    function assertNever2(x3) {
      throw new Error("Unexpected object: " + x3);
    }
    exports2.assertNever = assertNever2;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@pnpm/patch-package/0.0.1/870da8e1b07850065f652558a182c836aaeda11b2fd012252b85bc375a38834b/node_modules/@pnpm/patch-package/dist/patch/apply.js
var require_apply = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@pnpm/patch-package/0.0.1/870da8e1b07850065f652558a182c836aaeda11b2fd012252b85bc375a38834b/node_modules/@pnpm/patch-package/dist/patch/apply.js"(exports2) {
    "use strict";
    var __importDefault2 = exports2 && exports2.__importDefault || function(mod2) {
      return mod2 && mod2.__esModule ? mod2 : { "default": mod2 };
    };
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.executeEffects = void 0;
    var fs_extra_1 = __importDefault2(require_lib23());
    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: path240 }, { dryRun }) {
      const fileContents = fs_extra_1.default.readFileSync(path240).toString();
      const mode = fs_extra_1.default.statSync(path240).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 ${path240}`);
          }
        }
      }
      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(path240, 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;
    }
  }
});

// ../../../../../setup-pnpm/store/v11/links/@pnpm/patch-package/0.0.1/870da8e1b07850065f652558a182c836aaeda11b2fd012252b85bc375a38834b/node_modules/@pnpm/patch-package/dist/PackageDetails.js
var require_PackageDetails = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@pnpm/patch-package/0.0.1/870da8e1b07850065f652558a182c836aaeda11b2fd012252b85bc375a38834b/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((x3) => x3 !== 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 i4 = 0; i4 < parts.length; i4++) {
        if (parts[i4].startsWith("@")) {
          if (scope) {
            return null;
          }
          scope = parts[i4];
        } else {
          if (scope) {
            packageNames.push(`${scope}/${parts[i4]}`);
            scope = null;
          } else {
            packageNames.push(parts[i4]);
          }
        }
      }
      const path240 = (0, path_1.join)("node_modules", packageNames.join("/node_modules/"));
      return {
        packageNames,
        path: path240,
        name: packageNames[packageNames.length - 1],
        humanReadablePathSpecifier: packageNames.join(" => "),
        isNested: packageNames.length > 1,
        pathSpecifier: specifier
      };
    }
    exports2.getPatchDetailsFromCliString = getPatchDetailsFromCliString;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@pnpm/patch-package/0.0.1/870da8e1b07850065f652558a182c836aaeda11b2fd012252b85bc375a38834b/node_modules/@pnpm/patch-package/dist/patch/parse.js
var require_parse9 = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@pnpm/patch-package/0.0.1/870da8e1b07850065f652558a182c836aaeda11b2fd012252b85bc375a38834b/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 i4 = 0; i4 < lines.length; i4++) {
        const line = lines[i4];
        if (state === "parsing header") {
          if (line.startsWith("@@")) {
            state = "parsing hunks";
            currentFilePatch.hunks = [];
            i4--;
          } 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();
            i4--;
            continue;
          }
          const lineType = hunkLinetypes[line[0]] || null;
          switch (lineType) {
            case "header":
              commitHunk();
              currentHunk = emptyHunk(line);
              break;
            case null:
              state = "parsing header";
              commitFilePatch();
              i4--;
              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: toPath3, 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 path240 = diffLineFromPath || fromPath;
            if (!path240) {
              throw new Error("Bad parse state: no path given for file deletion");
            }
            result2.push({
              type: "file deletion",
              hunk: hunks && hunks[0] || null,
              path: path240,
              mode: parseFileMode(deletedFileMode),
              hash: beforeHash
            });
            break;
          }
          case "file creation": {
            const path240 = diffLineToPath || toPath3;
            if (!path240) {
              throw new Error("Bad parse state: no path given for file creation");
            }
            result2.push({
              type: "file creation",
              hunk: hunks && hunks[0] || null,
              path: path240,
              mode: parseFileMode(newFileMode),
              hash: afterHash
            });
            break;
          }
          case "patch":
          case "mode change":
            destinationFilePath = toPath3 || 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 parsePatchFile2(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 = parsePatchFile2;
    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;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@pnpm/patch-package/0.0.1/870da8e1b07850065f652558a182c836aaeda11b2fd012252b85bc375a38834b/node_modules/@pnpm/patch-package/dist/patch/reverse.js
var require_reverse = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@pnpm/patch-package/0.0.1/870da8e1b07850065f652558a182c836aaeda11b2fd012252b85bc375a38834b/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 i4 = 0; i4 < parts.length - 1; i4++) {
        if (parts[i4].type === "insertion" && parts[i4 + 1].type === "deletion") {
          const tmp = parts[i4];
          parts[i4] = parts[i4 + 1];
          parts[i4 + 1] = tmp;
          i4 += 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;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@pnpm/patch-package/0.0.1/870da8e1b07850065f652558a182c836aaeda11b2fd012252b85bc375a38834b/node_modules/@pnpm/patch-package/dist/patch/read.js
var require_read = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@pnpm/patch-package/0.0.1/870da8e1b07850065f652558a182c836aaeda11b2fd012252b85bc375a38834b/node_modules/@pnpm/patch-package/dist/patch/read.js"(exports2) {
    "use strict";
    var __importDefault2 = exports2 && exports2.__importDefault || function(mod2) {
      return mod2 && mod2.__esModule ? mod2 : { "default": mod2 };
    };
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.readPatch = void 0;
    var chalk_1 = __importDefault2(require_source2());
    var fs_extra_1 = require_lib23();
    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;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@pnpm/patch-package/0.0.1/870da8e1b07850065f652558a182c836aaeda11b2fd012252b85bc375a38834b/node_modules/@pnpm/patch-package/dist/packageIsDevDependency.js
var require_packageIsDevDependency = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@pnpm/patch-package/0.0.1/870da8e1b07850065f652558a182c836aaeda11b2fd012252b85bc375a38834b/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;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@pnpm/patch-package/0.0.1/870da8e1b07850065f652558a182c836aaeda11b2fd012252b85bc375a38834b/node_modules/@pnpm/patch-package/dist/applyPatches.js
var require_applyPatches = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@pnpm/patch-package/0.0.1/870da8e1b07850065f652558a182c836aaeda11b2fd012252b85bc375a38834b/node_modules/@pnpm/patch-package/dist/applyPatches.js"(exports2) {
    "use strict";
    var __importDefault2 = exports2 && exports2.__importDefault || function(mod2) {
      return mod2 && mod2.__esModule ? mod2 : { "default": mod2 };
    };
    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_lib23();
    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: path240, pathSpecifier, isDevOnly, patchFilename }) {
      const packageDir = (0, path_1.join)(appPath, path240);
      if (!(0, fs_extra_1.existsSync)(packageDir)) {
        if (process.env.NODE_ENV === "production" && isDevOnly) {
          return null;
        }
        let err2 = `${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") {
          err2 += `

  If this package is a dev dependency, rename the patch file to
  
    ${chalk_1.default.bold(patchFilename.replace(".patch", ".dev.patch"))}
`;
        }
        throw new PatchApplicationError(err2);
      }
      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: path240, pathSpecifier, isDevOnly, patchFilename } = packageDetails;
          const installedPackageVersion = getInstalledPackageVersion({
            appPath,
            path: path240,
            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: path240
              }));
            }
            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: path240
            }));
          } else {
            errors2.push(createPatchApplictionFailureError({
              packageName: name,
              actualVersion: installedPackageVersion,
              originalVersion: version2,
              patchFileName: filename,
              path: path240,
              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: path240 }) {
      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
  
    ${path240}

  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: path240, 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`)}
  
    ${path240}

  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: path240, 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`)}
  
    ${path240}

  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
import fs65 from "node:fs";
import path109 from "node:path";
import util37 from "node:util";
function applyPatchToDir(opts3) {
  assertPatchPathsStayInside(opts3);
  const cwd = process.cwd();
  process.chdir(opts3.patchedDir);
  let success = false;
  try {
    success = (0, import_applyPatches.applyPatch)({
      patchFilePath: opts3.patchFilePath
    });
  } catch (err2) {
    if (util37.types.isNativeError(err2) && "code" in err2 && err2.code === "ENOENT") {
      throw new PnpmError("PATCH_NOT_FOUND", `Patch file not found: ${opts3.patchFilePath}`);
    }
    const message = util37.types.isNativeError(err2) ? err2.message : String(err2);
    throw new PnpmError("INVALID_PATCH", `Applying patch "${opts3.patchFilePath}" failed: ${message}`);
  } finally {
    process.chdir(cwd);
  }
  if (!success) {
    throw new PnpmError("PATCH_FAILED", `Could not apply patch ${opts3.patchFilePath} to ${opts3.patchedDir}`);
  }
  return success;
}
function assertPatchPathsStayInside(opts3) {
  let patchContent;
  try {
    patchContent = fs65.readFileSync(opts3.patchFilePath, "utf8");
  } catch (err2) {
    if (util37.types.isNativeError(err2) && "code" in err2 && err2.code === "ENOENT") {
      throw new PnpmError("PATCH_NOT_FOUND", `Patch file not found: ${opts3.patchFilePath}`);
    }
    throw err2;
  }
  let effects;
  try {
    effects = (0, import_parse4.parsePatchFile)(patchContent);
  } catch {
    return;
  }
  const root = path109.resolve(opts3.patchedDir);
  const rootWithSep = root.endsWith(path109.sep) ? root : root + path109.sep;
  for (const effect of effects) {
    const candidates = effect.type === "rename" ? [effect.fromPath, effect.toPath] : [effect.path];
    for (const candidate of candidates) {
      if (!candidate)
        continue;
      if (path109.isAbsolute(candidate) || candidate.split(/[/\\]/).includes("..")) {
        throw new PatchPathEscapesError(opts3, candidate);
      }
      const resolved = path109.resolve(root, candidate);
      if (resolved !== root && !resolved.startsWith(rootWithSep)) {
        throw new PatchPathEscapesError(opts3, candidate);
      }
    }
  }
}
var import_applyPatches, import_parse4, PatchPathEscapesError;
var init_lib112 = __esm({
  "../patching/apply-patch/lib/index.js"() {
    "use strict";
    init_lib2();
    import_applyPatches = __toESM(require_applyPatches(), 1);
    import_parse4 = __toESM(require_parse9(), 1);
    PatchPathEscapesError = class extends PnpmError {
      constructor(opts3, badPath) {
        super("PATCH_FAILED", `Could not apply patch ${opts3.patchFilePath} to ${opts3.patchedDir}: patch path escapes target dir: ${badPath}`);
      }
    };
  }
});

// ../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_lib75();
    init_es();
  }
});

// ../building/during-install/lib/index.js
import assert9 from "node:assert";
import fs66 from "node:fs/promises";
import path110 from "node:path";
import util38 from "node:util";
async function buildModules(depGraph, rootDepPaths, opts3) {
  if (!rootDepPaths.length)
    return {};
  const warn = (message) => {
    logger.warn({ message, prefix: opts3.lockfileDir });
  };
  const nodeVersion = findRuntimeNodeVersion(Object.keys(depGraph));
  const buildDepOpts = {
    ...opts3,
    builtHoistedDeps: opts3.hoistedLocations ? {} : void 0,
    nodeVersion,
    warn
  };
  const chunks = buildSequence(depGraph, rootDepPaths);
  if (!chunks.length)
    return {};
  const ignoredBuilds = /* @__PURE__ */ new Set();
  const allowBuild = opts3.allowBuild ?? (() => void 0);
  const frozenStoreBlocked = opts3.frozenStore && opts3.enableGlobalVirtualStore ? /* @__PURE__ */ new Set() : void 0;
  const groups = chunks.map((chunk) => {
    chunk = chunk.filter((depPath) => {
      const node = depGraph[depPath];
      return (node.requiresBuild || node.patch != null) && !node.isBuilt;
    });
    if (opts3.depsToBuild != null) {
      chunk = chunk.filter((depPath) => opts3.depsToBuild.has(depPath));
    }
    if (frozenStoreBlocked != null) {
      chunk = chunk.filter((depPath) => {
        const node = depGraph[depPath];
        const willPatch = node.patch != null;
        const willRunScripts = !opts3.ignoreScripts && Boolean(node.requiresBuild) && allowBuild(node.depPath) === true;
        if (!willPatch && !willRunScripts)
          return true;
        if (node.optional) {
          skippedOptionalDependencyLogger.debug({
            details: `The read-only store (frozenStore) is missing the build output of ${node.name}@${node.version}.`,
            package: {
              id: node.dir,
              name: node.name,
              version: node.version
            },
            prefix: opts3.lockfileDir,
            reason: "build_failure"
          });
          return false;
        }
        frozenStoreBlocked.add(`${node.name}@${node.version}`);
        return true;
      });
    }
    return chunk.map((depPath) => () => {
      let ignoreScripts = Boolean(buildDepOpts.ignoreScripts);
      if (!ignoreScripts) {
        const node = depGraph[depPath];
        if (node.requiresBuild) {
          const allowed = allowBuild(node.depPath);
          switch (allowed) {
            case false:
              ignoreScripts = true;
              break;
            case void 0:
              ignoredBuilds.add(node.depPath);
              ignoreScripts = true;
              break;
          }
        }
      }
      return buildDependency(depPath, depGraph, {
        ...buildDepOpts,
        ignoreScripts
      });
    });
  });
  if (frozenStoreBlocked?.size) {
    throwFrozenStoreNeedsBuild(frozenStoreBlocked);
  }
  const patchErrors = [];
  const groupsWithPatchErrors = groups.map((group) => group.map((task) => async () => {
    try {
      await task();
    } catch (err2) {
      if (util38.types.isNativeError(err2) && "code" in err2 && err2.code === "ERR_PNPM_PATCH_FAILED") {
        patchErrors.push(err2);
      } else {
        throw err2;
      }
    }
  }));
  await runGroups(getWorkspaceConcurrency(opts3.childConcurrency), groupsWithPatchErrors);
  if (patchErrors.length > 0) {
    throw patchErrors[0];
  }
  return { ignoredBuilds };
}
function throwFrozenStoreNeedsBuild(blocked) {
  const list2 = Array.from(blocked).sort();
  throw new PnpmError("FROZEN_STORE_NEEDS_BUILD", `Cannot build the following ${list2.length === 1 ? "package" : "packages"} because the store is read-only (frozenStore is enabled): ${list2.join(", ")}`, {
    hint: "This read-only store was not seeded with these packages' build output. Rebuild the seed with their scripts enabled so the side-effects cache is populated, or remove them from onlyBuiltDependencies."
  });
}
async function buildDependency(depPath, depGraph, opts3) {
  const depNode = depGraph[depPath];
  if (!depNode.filesIndexFile)
    return;
  if (opts3.builtHoistedDeps) {
    if (opts3.builtHoistedDeps[depNode.depPath]) {
      await opts3.builtHoistedDeps[depNode.depPath].promise;
      return;
    }
    opts3.builtHoistedDeps[depNode.depPath] = pDefer();
  }
  let buildSucceeded = false;
  try {
    await linkBinsOfDependencies(depNode, depGraph, opts3);
    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 = !opts3.ignoreScripts && await runPostinstallHooks({
      depPath,
      extraBinPaths: opts3.extraBinPaths,
      extraEnv: opts3.extraEnv,
      initCwd: opts3.lockfileDir,
      optional: depNode.optional,
      pkgRoot: depNode.dir,
      rootModulesDir: opts3.rootModulesDir,
      scriptsPrependNodePath: opts3.scriptsPrependNodePath,
      scriptShell: opts3.scriptShell,
      shellEmulator: opts3.shellEmulator,
      unsafePerm: opts3.unsafePerm || false,
      userAgent: opts3.userAgent
    });
    if (opts3.enableGlobalVirtualStore) {
      await fs66.unlink(path110.join(depNode.dir, ".pnpm-needs-build")).catch(() => {
      });
    }
    if ((isPatched || hasSideEffects) && opts3.sideEffectsCacheWrite && !opts3.frozenStore) {
      try {
        const sideEffectsCacheKey = calcDepState(depGraph, opts3.depsStateCache, depPath, {
          patchFileHash: depNode.patch?.hash,
          includeDepGraphHash: hasSideEffects,
          nodeVersion: opts3.nodeVersion
        });
        await opts3.storeController.upload(depNode.dir, {
          sideEffectsCacheKey,
          filesIndexFile: depNode.filesIndexFile
        });
      } catch (err2) {
        assert9(util38.types.isNativeError(err2));
        logger.warn({
          error: err2,
          message: `An error occurred while uploading ${depNode.dir}`,
          prefix: opts3.lockfileDir
        });
      }
    }
    buildSucceeded = true;
  } catch (err2) {
    assert9(util38.types.isNativeError(err2));
    if (opts3.enableGlobalVirtualStore) {
      const hashDir = path110.dirname(depNode.modules);
      await fs66.rm(hashDir, { recursive: true, force: true });
    }
    if (depNode.optional) {
      skippedOptionalDependencyLogger.debug({
        details: err2.toString(),
        package: {
          id: depNode.dir,
          name: depNode.name,
          version: depNode.version
        },
        prefix: opts3.lockfileDir,
        reason: "build_failure"
      });
      return;
    }
    throw err2;
  } finally {
    if (buildSucceeded) {
      const hoistedLocationsOfDep = opts3.hoistedLocations?.[depNode.depPath];
      if (hoistedLocationsOfDep) {
        const currentHoistedLocation = path110.relative(opts3.lockfileDir, depNode.dir);
        const nonBuiltHoistedDeps = hoistedLocationsOfDep?.filter((hoistedLocation) => hoistedLocation !== currentHoistedLocation);
        await hardLinkDir(depNode.dir, nonBuiltHoistedDeps);
      }
    }
    if (opts3.builtHoistedDeps) {
      opts3.builtHoistedDeps[depNode.depPath].resolve();
    }
  }
}
async function linkBinsOfDependencies(depNode, depGraph, opts3) {
  const childrenToLink = opts3.optional ? depNode.children : pickBy_default((child, childAlias) => !depNode.optionalDependencies.has(childAlias), depNode.children);
  const binPath = path110.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: opts3.extraNodePaths,
    preferSymlinkedExecutables: opts3.preferSymlinkedExecutables
  });
  if (depNode.hasBundledDependencies) {
    const bundledModules = path110.join(depNode.dir, "node_modules");
    await linkBins(bundledModules, binPath, {
      extraNodePaths: opts3.extraNodePaths,
      preferSymlinkedExecutables: opts3.preferSymlinkedExecutables,
      warn: opts3.warn
    });
  }
}
var init_lib113 = __esm({
  "../building/during-install/lib/index.js"() {
    "use strict";
    init_lib16();
    init_lib64();
    init_lib6();
    init_lib74();
    init_lib2();
    init_lib21();
    init_lib3();
    init_lib112();
    init_lib5();
    init_lib4();
    init_p_defer();
    init_es();
    init_lib20();
    init_buildSequence();
  }
});

// ../deps/graph-builder/lib/iteratePkgsForVirtualStore.js
import path111 from "node:path";
function* iteratePkgsForVirtualStore(lockfile, opts3) {
  const nodeVersion = findRuntimeNodeVersion(Object.keys(lockfile.packages ?? {}));
  if (opts3.enableGlobalVirtualStore) {
    for (const { hash: hash2, pkgMeta } of hashDependencyPaths(lockfile, {
      allowBuild: opts3.allowBuild,
      supportedArchitectures: opts3.supportedArchitectures,
      nodeVersion,
      lockfileDir: opts3.lockfileDir
    })) {
      yield {
        dirInVirtualStore: path111.join(opts3.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, opts3.supportedArchitectures),
          supportedArchitectures: opts3.supportedArchitectures,
          nodeVersion,
          lockfileDir: opts3.lockfileDir
        };
        const hash2 = calcGraphNodeHash(graphNodeHashOpts, pkgMeta);
        dirInVirtualStore = path111.join(opts3.globalVirtualStoreDir, hash2);
      } else {
        dirInVirtualStore = path111.join(opts3.virtualStoreDir, depPathToFilename(depPath, opts3.virtualStoreDirMaxLength));
      }
      yield {
        dirInVirtualStore,
        pkgMeta
      };
    }
  }
}
function hashDependencyPaths(lockfile, opts3) {
  const graph = lockfileToDepGraph(lockfile, opts3.supportedArchitectures);
  return iterateHashedGraphNodes(graph, iteratePkgMeta(lockfile, graph), opts3);
}
var init_iteratePkgsForVirtualStore = __esm({
  "../deps/graph-builder/lib/iteratePkgsForVirtualStore.js"() {
    "use strict";
    init_lib74();
    init_lib68();
    init_lib73();
  }
});

// ../deps/graph-builder/lib/lockfileToDepGraph.js
import fs67 from "node:fs";
import path112 from "node:path";
async function lockfileToDepGraph2(lockfile, currentLockfile, opts3) {
  const { graph, locationByDepPath, injectionTargetsByDepPath } = await buildGraphFromPackages(lockfile, currentLockfile, opts3);
  const _getChildrenPaths = getChildrenPaths.bind(null, {
    force: opts3.force,
    graph,
    lockfileDir: opts3.lockfileDir,
    registries: opts3.registries,
    sideEffectsCacheRead: opts3.sideEffectsCacheRead,
    skipped: opts3.skipped,
    storeController: opts3.storeController,
    storeDir: opts3.storeDir,
    virtualStoreDir: opts3.virtualStoreDir,
    virtualStoreDirMaxLength: opts3.virtualStoreDirMaxLength,
    locationByDepPath
  });
  for (const node of Object.values(graph)) {
    const pkgSnapshot = lockfile.packages[node.depPath];
    const allDeps = {
      ...pkgSnapshot.dependencies,
      ...opts3.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 opts3.importerIds) {
    const projectSnapshot = lockfile.importers[importerId];
    const rootDeps = {
      ...opts3.include.devDependencies ? projectSnapshot.devDependencies : {},
      ...opts3.include.dependencies ? projectSnapshot.dependencies : {},
      ...opts3.include.optionalDependencies ? projectSnapshot.optionalDependencies : {}
    };
    directDependenciesByImporterId[importerId] = _getChildrenPaths(rootDeps, null, importerId);
  }
  return { graph, directDependenciesByImporterId, injectionTargetsByDepPath };
}
async function buildGraphFromPackages(lockfile, currentLockfile, opts3) {
  const currentPackages = currentLockfile?.packages ?? {};
  const graph = {};
  const locationByDepPath = {};
  const injectionTargetsByDepPath = /* @__PURE__ */ new Map();
  const _getPatchInfo = getPatchInfo.bind(null, opts3.patchedDependencies);
  const promises = [];
  const pkgSnapshotsWithLocations = iteratePkgsForVirtualStore(lockfile, opts3);
  for (const { dirInVirtualStore, pkgMeta } of pkgSnapshotsWithLocations) {
    promises.push((async () => {
      const { pkgIdWithPatchHash, name: pkgName, version: pkgVersion, depPath, pkgSnapshot } = pkgMeta;
      if (opts3.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 (!opts3.force && packageIsInstallable(packageId, pkg, {
        // An incompatibility inside an `optionalDependencies` subtree is
        // reported, not fatal — see `filterLockfileByImportersAndEngine`,
        // which classifies these dep paths.
        engineStrict: opts3.engineStrict && pkgSnapshot.optional !== true,
        lockfileDir: opts3.lockfileDir,
        nodeVersion: opts3.nodeVersion,
        optional: !opts3.requiredDepPaths.has(depPath),
        supportedArchitectures: opts3.supportedArchitectures
      }) === false) {
        opts3.skipped.add(depPath);
        return;
      }
      const isDirectoryDep = "directory" in pkgSnapshot.resolution && pkgSnapshot.resolution.directory != null;
      if (isDirectoryDep && opts3.ignoreLocalPackages) {
        logger.info({
          message: `Skipping local dependency ${pkgName}@${pkgVersion} (file: protocol)`,
          prefix: opts3.lockfileDir
        });
        return;
      }
      const depIsPresent = !isDirectoryDep && currentPackages[depPath] && equals_default(currentPackages[depPath].dependencies, pkgSnapshot.dependencies);
      const depIntegrityIsUnchanged = isIntegrityEqual(pkgSnapshot.resolution, currentPackages[depPath]?.resolution);
      const modules = path112.join(dirInVirtualStore, "node_modules");
      const dir = safeJoinModulesDir(modules, pkgName);
      locationByDepPath[depPath] = dir;
      if (isDirectoryDep) {
        injectionTargetsByDepPath.set(depPath, [dir]);
      }
      const mightNeedBuild = opts3.enableGlobalVirtualStore && opts3.allowBuild?.(depPath) === true;
      let dirExists;
      if (depIsPresent && depIntegrityIsUnchanged && isEmpty_default(currentPackages[depPath].optionalDependencies ?? {}) && isEmpty_default(pkgSnapshot.optionalDependencies ?? {}) && !opts3.includeUnchangedDeps) {
        dirExists = await pathExists2(dir);
        if (dirExists) {
          if (!(mightNeedBuild && fs67.existsSync(path112.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 && fs67.existsSync(path112.join(dir, ".pnpm-needs-build")))) {
            fetchResponse = {};
          }
        } else {
          brokenModulesLogger.debug({ missing: dir });
        }
      }
      if (!fetchResponse && opts3.enableGlobalVirtualStore && !isDirectoryDep && !opts3.force) {
        if (dirExists ?? await pathExists2(dir)) {
          if (!(mightNeedBuild && fs67.existsSync(path112.join(dir, ".pnpm-needs-build")))) {
            fetchResponse = {};
          }
        }
      }
      if (!fetchResponse) {
        const resolution = pkgSnapshotToResolution(depPath, pkgSnapshot, opts3.registries);
        progressLogger.debug({ packageId, requester: opts3.lockfileDir, status: "resolved" });
        try {
          fetchResponse = await opts3.storeController.fetchPackage({
            allowBuild: opts3.allowBuild,
            force: false,
            lockfileDir: opts3.lockfileDir,
            ignoreScripts: opts3.ignoreScripts,
            pkg: { name: pkgName, version: pkgVersion, id: packageId, resolution },
            supportedArchitectures: opts3.supportedArchitectures
          });
        } catch (err2) {
          if (pkgSnapshot.optional)
            return;
          throw err2;
        }
      }
      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] = path112.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] = path112.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_lib40();
    init_lib();
    init_lib6();
    init_lib68();
    init_lib106();
    init_lib73();
    init_lib3();
    init_lib108();
    init_path_exists();
    init_es();
    init_iteratePkgsForVirtualStore();
    brokenModulesLogger = logger("_broken_node_modules");
  }
});

// ../deps/graph-builder/lib/index.js
var init_lib114 = __esm({
  "../deps/graph-builder/lib/index.js"() {
    "use strict";
    init_lockfileToDepGraph();
  }
});

// ../installing/linking/direct-dep-linker/lib/linkDirectDeps.js
import fs68 from "node:fs";
import path113 from "node:path";
async function linkDirectDeps(projects, opts3) {
  if (opts3.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, path240) {
  return path113.relative(path1, path240) === "";
}
async function readLinkedDeps(modulesDir) {
  const deps = await readModulesDir(modulesDir) ?? [];
  return Promise.all(deps.map((alias) => resolveLinkTargetOrFile(path113.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 }) => fs68.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 = path113.join(modulesDir, alias);
    return {
      linkedTo,
      linkedFrom: await resolveLinkTargetOrFile(linkedTo)
    };
  }));
}
async function resolveLinkTargetOrFile(filePath) {
  try {
    return await resolveLinkTarget(filePath);
  } catch (err2) {
    if (err2.code !== "EINVAL" && err2.code !== "UNKNOWN")
      throw err2;
    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_lib8();
    init_lib106();
    init_rimraf();
    init_es();
    init_resolve_link_target();
  }
});

// ../installing/linking/direct-dep-linker/lib/index.js
var init_lib115 = __esm({
  "../installing/linking/direct-dep-linker/lib/index.js"() {
    "use strict";
    init_linkDirectDeps();
  }
});

// ../installing/linking/hoist/lib/index.js
import fs69 from "node:fs";
import path114 from "node:path";
async function hoist(opts3) {
  const result2 = getHoistedDependencies(opts3);
  if (!result2)
    return null;
  const { hoistedDependencies, hoistedAliasesWithBins, hoistedDependenciesByNodeId } = result2;
  await symlinkHoistedDependencies(hoistedDependenciesByNodeId, {
    graph: opts3.graph,
    directDepsByImporterId: opts3.directDepsByImporterId,
    privateHoistedModulesDir: opts3.privateHoistedModulesDir,
    publicHoistedModulesDir: opts3.publicHoistedModulesDir,
    virtualStoreDir: opts3.virtualStoreDir,
    virtualStoreDirMaxLength: opts3.virtualStoreDirMaxLength,
    hoistedWorkspacePackages: opts3.hoistedWorkspacePackages
  });
  await linkAllBins(opts3.privateHoistedModulesDir, {
    extraNodePaths: opts3.extraNodePath,
    hoistedAliasesWithBins,
    preferSymlinkedExecutables: opts3.preferSymlinkedExecutables
  });
  return hoistedDependencies;
}
function getHoistedDependencies(opts3) {
  if (Object.keys(opts3.graph ?? {}).length === 0)
    return null;
  const { directDeps, step: step2 } = graphWalker(opts3.graph, opts3.directDepsByImporterId);
  const hoistedWorkspaceDeps = Object.fromEntries(Object.entries(opts3.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(opts3.publicHoistPattern, opts3.privateHoistPattern);
  return hoistGraph(deps, opts3.directDepsByImporterId["."] ?? /* @__PURE__ */ new Map(), {
    getAliasHoistType,
    graph: opts3.graph,
    skipped: opts3.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, opts3) {
  const bin = path114.join(modulesDir, ".bin");
  const warn = (message, code) => {
    if (code === "BINARIES_CONFLICT")
      return;
    logger.info({ message, prefix: path114.join(modulesDir, "../..") });
  };
  try {
    await linkBinsOfPkgsByAliases(opts3.hoistedAliasesWithBins, bin, {
      allowExoticManifests: true,
      extraNodePaths: opts3.extraNodePaths,
      modulesDir,
      preferSymlinkedExecutables: opts3.preferSymlinkedExecutables,
      warn
    });
  } catch (err2) {
  }
}
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, opts3) {
  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_util13.lexCompare)(a2.nodeId, b.nodeId) : depthDiff;
  }).forEach((depNode) => {
    for (const [childAlias, childNodeId] of Object.entries(depNode.children)) {
      const hoist3 = opts3.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 = opts3.graph[childNodeId];
      if (node?.depPath == null || opts3.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, opts3) {
  const symlink = symlinkHoistedDependency.bind(null, {
    virtualStoreDir: opts3.virtualStoreDir,
    internalPnpmDir: path114.dirname(opts3.privateHoistedModulesDir)
  });
  const promises = [];
  for (const [hoistedDepNodeId, pkgAliases] of hoistedDependenciesByNodeId.entries()) {
    promises.push((async () => {
      const node = opts3.graph[hoistedDepNodeId];
      let depLocation;
      if (node) {
        depLocation = node.dir;
      } else {
        if (!opts3.directDepsByImporterId[hoistedDepNodeId]) {
          hoistLogger.debug({ hoistFailedFor: hoistedDepNodeId });
          return;
        }
        depLocation = opts3.hoistedWorkspacePackages[hoistedDepNodeId].dir;
      }
      await Promise.all(Object.entries(pkgAliases).map(async ([pkgAlias, hoistType]) => {
        const targetDir = hoistType === "public" ? opts3.publicHoistedModulesDir : opts3.privateHoistedModulesDir;
        const dest = path114.join(targetDir, pkgAlias);
        return symlink(depLocation, dest);
      }));
    })());
  }
  await Promise.all(promises);
}
async function symlinkHoistedDependency(opts3, depLocation, dest) {
  try {
    await symlinkDir(depLocation, dest, { overwrite: false });
    linkLogger.debug({ target: dest, link: depLocation });
    return;
  } catch (err2) {
    if (err2.code !== "EEXIST" && err2.code !== "EISDIR")
      throw err2;
  }
  let existingSymlink;
  try {
    existingSymlink = await resolveLinkTarget(dest);
  } catch {
    hoistLogger.debug({
      skipped: dest,
      reason: "a directory is present at the target location"
    });
    return;
  }
  if (!isSubdir(opts3.virtualStoreDir, existingSymlink) && !isSubdir(opts3.internalPnpmDir, existingSymlink)) {
    hoistLogger.debug({
      skipped: dest,
      existingSymlink,
      reason: "an external symlink is present at the target location"
    });
    return;
  }
  await fs69.promises.unlink(dest);
  await symlinkDir(depLocation, dest);
  linkLogger.debug({ target: dest, link: depLocation });
}
function graphWalker(graph, directDepsByImporterId, opts3) {
  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: opts3?.include?.optionalDependencies !== false,
      graph,
      visited,
      skipped: opts3?.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(opts3, nextPkg) {
  if (opts3.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_util13, hoistLogger;
var init_lib116 = __esm({
  "../installing/linking/hoist/lib/index.js"() {
    "use strict";
    init_lib16();
    init_lib27();
    init_lib();
    init_lib6();
    init_lib3();
    import_util13 = __toESM(require_dist4(), 1);
    init_is_subdir();
    init_resolve_link_target();
    init_dist3();
    hoistLogger = logger("hoist");
  }
});

// ../lockfile/filtering/lib/filterImporter.js
function filterImporter(importer, include, opts3) {
  const skipRuntimes = opts3?.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, opts3) {
  const importers = { ...lockfile.importers };
  for (const importerId of importerIds) {
    importers[importerId] = filterImporter(lockfile.importers[importerId], opts3.include, { skipRuntimes: opts3.skipRuntimes });
  }
  const packages = {};
  if (lockfile.packages != null) {
    pkgAllDeps(lockfileWalker({ ...lockfile, importers }, importerIds, { include: opts3.include, skipped: opts3.skipped }).step, packages, {
      failOnMissingDependencies: opts3.failOnMissingDependencies
    });
  }
  return {
    ...lockfile,
    importers,
    packages
  };
}
function pkgAllDeps(step2, pickedPackages, opts3) {
  for (const { pkgSnapshot, depPath, next: next2 } of step2.dependencies) {
    pickedPackages[depPath] = pkgSnapshot;
    pkgAllDeps(next2(), pickedPackages, opts3);
  }
  for (const depPath of step2.missing) {
    if (opts3.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_lib90();
    init_lib3();
    init_filterImporter();
    lockfileLogger2 = logger("lockfile");
  }
});

// ../lockfile/filtering/lib/filterLockfile.js
function filterLockfile(lockfile, opts3) {
  return filterLockfileByImporters(lockfile, Object.keys(lockfile.importers), {
    ...opts3,
    failOnMissingDependencies: false
  });
}
var init_filterLockfile = __esm({
  "../lockfile/filtering/lib/filterLockfile.js"() {
    "use strict";
    init_filterLockfileByImporters();
  }
});

// ../lockfile/filtering/lib/filterLockfileByImportersAndEngine.js
function filterLockfileByEngine(lockfile, opts3) {
  const importerIds = Object.keys(lockfile.importers);
  return filterLockfileByImportersAndEngine(lockfile, importerIds, opts3);
}
function filterLockfileByImportersAndEngine(lockfile, importerIds, opts3) {
  const importerIdSet = new Set(importerIds);
  const directDepEdges = toImporterDepPaths(lockfile, importerIds, {
    include: opts3.include,
    importerIdSet,
    skipRuntimes: opts3.skipRuntimes
  });
  const { packages, requiredDepPaths } = lockfile.packages != null ? pickPkgsWithAllDeps(lockfile, directDepEdges, importerIdSet, {
    currentEngine: opts3.currentEngine,
    engineStrict: opts3.engineStrict,
    failOnMissingDependencies: opts3.failOnMissingDependencies,
    include: opts3.include,
    includeIncompatiblePackages: opts3.includeIncompatiblePackages === true,
    lockfileDir: opts3.lockfileDir,
    skipped: opts3.skipped,
    skipRuntimes: opts3.skipRuntimes,
    supportedArchitectures: opts3.supportedArchitectures
  }) : { packages: {}, requiredDepPaths: /* @__PURE__ */ new Set() };
  const importers = map_default((importer) => {
    const newImporter = filterImporter(importer, opts3.include, { skipRuntimes: opts3.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),
    requiredDepPaths
  };
}
function pickPkgsWithAllDeps(lockfile, depEdges, importerIdSet, opts3) {
  const ctx = {
    lockfile,
    pickedPackages: {},
    importerIdSet,
    installed: /* @__PURE__ */ new Set(),
    requiredDepPaths: /* @__PURE__ */ new Set(),
    evaluated: [],
    edgesByDepPath: /* @__PURE__ */ new Map()
  };
  classifyDeps(ctx, depEdges, opts3);
  reportInstallability(ctx, opts3);
  pickSkippedDeps(ctx, depEdges, opts3);
  return { packages: ctx.pickedPackages, requiredDepPaths: ctx.requiredDepPaths };
}
function classifyDeps(ctx, depEdges, opts3) {
  const incompatible = /* @__PURE__ */ new Map();
  const queue2 = [...depEdges];
  for (let next2 = 0; next2 < queue2.length; next2++) {
    const { depPath, optional } = queue2[next2];
    if (!optional)
      ctx.requiredDepPaths.add(depPath);
    if (ctx.installed.has(depPath))
      continue;
    const pkgSnapshot = ctx.lockfile.packages[depPath];
    if (!pkgSnapshot)
      continue;
    if (!incompatible.has(depPath)) {
      ctx.evaluated.push(depPath);
      incompatible.set(depPath, !opts3.includeIncompatiblePackages && checkPackageInstallability(pkgSnapshot.id ?? depPath, toInstallabilityManifest(depPath, pkgSnapshot), {
        nodeVersion: opts3.currentEngine.nodeVersion,
        optional: true,
        supportedArchitectures: opts3.supportedArchitectures
      }) != null);
    }
    if (optional && incompatible.get(depPath))
      continue;
    ctx.installed.add(depPath);
    ctx.pickedPackages[depPath] = pkgSnapshot;
    const edges = nextDepEdges(ctx, pkgSnapshot, opts3);
    ctx.edgesByDepPath.set(depPath, edges);
    for (const edge of edges) {
      queue2.push(edge);
    }
  }
}
function reportInstallability(ctx, opts3) {
  for (const depPath of ctx.evaluated) {
    const pkgSnapshot = ctx.lockfile.packages[depPath];
    const installable = opts3.includeIncompatiblePackages || packageIsInstallable(pkgSnapshot.id ?? depPath, toInstallabilityManifest(depPath, pkgSnapshot), {
      // A subtree hanging off an `optionalDependencies` entry stays
      // best-effort: the dependency is installed so its dependent is not
      // left broken, but an incompatibility inside it does not fail the
      // install. Only a package no optional path reaches is fatal here.
      engineStrict: opts3.engineStrict && pkgSnapshot.optional !== true,
      lockfileDir: opts3.lockfileDir,
      nodeVersion: opts3.currentEngine.nodeVersion,
      optional: !ctx.installed.has(depPath) || !ctx.requiredDepPaths.has(depPath),
      supportedArchitectures: opts3.supportedArchitectures
    }) !== false;
    if (installable) {
      opts3.skipped.delete(depPath);
    } else {
      opts3.skipped.add(depPath);
    }
  }
}
function toInstallabilityManifest(depPath, pkgSnapshot) {
  return {
    ...nameVerFromPkgSnapshot(depPath, pkgSnapshot),
    cpu: pkgSnapshot.cpu,
    engines: pkgSnapshot.engines,
    os: pkgSnapshot.os,
    libc: pkgSnapshot.libc
  };
}
function pickSkippedDeps(ctx, depEdges, opts3) {
  const queue2 = depEdges.map(({ depPath }) => depPath);
  const visited = /* @__PURE__ */ new Set();
  for (let next2 = 0; next2 < queue2.length; next2++) {
    const depPath = queue2[next2];
    if (visited.has(depPath))
      continue;
    visited.add(depPath);
    const pkgSnapshot = ctx.lockfile.packages[depPath];
    if (!pkgSnapshot && !depPath.startsWith("link:")) {
      if (opts3.failOnMissingDependencies) {
        throw new LockfileMissingDependencyError(depPath);
      }
      lockfileLogger3.debug(`No entry for "${depPath}" in ${WANTED_LOCKFILE}`);
      continue;
    }
    if (!ctx.installed.has(depPath)) {
      if (!ctx.pickedPackages[depPath] && pkgSnapshot.optional === true) {
        opts3.skipped.add(depPath);
      }
      ctx.pickedPackages[depPath] = pkgSnapshot;
    }
    const edges = ctx.edgesByDepPath.get(depPath) ?? nextDepEdges(ctx, pkgSnapshot, opts3);
    ctx.edgesByDepPath.delete(depPath);
    for (const edge of edges) {
      queue2.push(edge.depPath);
    }
  }
}
function nextDepEdges(ctx, pkgSnapshot, opts3) {
  const { depEdges, importerIds } = parseDepRefs([
    ...toDepRefs(pkgSnapshot.dependencies, false),
    ...opts3.include.optionalDependencies ? toDepRefs(pkgSnapshot.optionalDependencies, true) : []
  ], ctx.lockfile);
  for (const importerId of importerIds) {
    ctx.importerIdSet.add(importerId);
  }
  return [
    ...depEdges,
    ...toImporterDepPaths(ctx.lockfile, importerIds, {
      include: opts3.include,
      importerIdSet: ctx.importerIdSet,
      skipRuntimes: opts3.skipRuntimes
    })
  ];
}
function toImporterDepPaths(lockfile, importerIds, opts3) {
  const importerDeps = importerIds.map((importerId) => lockfile.importers[importerId]).map((importer) => [
    ...opts3.include.dependencies ? toDepRefs(importer.dependencies, false) : [],
    ...opts3.include.devDependencies ? toDepRefs(importer.devDependencies, false) : [],
    ...opts3.include.optionalDependencies ? toDepRefs(importer.optionalDependencies, true) : []
  ]).map((refs) => opts3.skipRuntimes ? refs.filter(({ ref }) => !ref.startsWith("runtime:")) : refs);
  let { depEdges, importerIds: nextImporterIds } = parseDepRefs(unnest_default(importerDeps), lockfile);
  if (!nextImporterIds.length) {
    return depEdges;
  }
  nextImporterIds = nextImporterIds.filter((importerId) => !opts3.importerIdSet.has(importerId));
  for (const importerId of nextImporterIds) {
    opts3.importerIdSet.add(importerId);
  }
  return [
    ...depEdges,
    ...toImporterDepPaths(lockfile, nextImporterIds, opts3)
  ];
}
function toDepRefs(refsByPkgNames, optional) {
  if (refsByPkgNames == null)
    return [];
  return Object.entries(refsByPkgNames).map(([pkgName, ref]) => ({ pkgName, ref, optional }));
}
function parseDepRefs(depRefs, lockfile) {
  const acc = {
    depEdges: [],
    importerIds: []
  };
  for (const { pkgName, ref, optional } of depRefs) {
    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.depEdges.push({ depPath, optional });
  }
  return acc;
}
var lockfileLogger3;
var init_filterLockfileByImportersAndEngine = __esm({
  "../lockfile/filtering/lib/filterLockfileByImportersAndEngine.js"() {
    "use strict";
    init_lib40();
    init_lib();
    init_lib68();
    init_lib2();
    init_lib73();
    init_lib3();
    init_es();
    init_filterImporter();
    lockfileLogger3 = logger("lockfile");
  }
});

// ../lockfile/filtering/lib/index.js
var init_lib117 = __esm({
  "../lockfile/filtering/lib/index.js"() {
    "use strict";
    init_filterLockfile();
    init_filterLockfileByImporters();
    init_filterLockfileByImportersAndEngine();
  }
});

// ../installing/linking/modules-cleaner/lib/removeDirectDependency.js
import { promises as fs70 } from "node:fs";
import path115 from "node:path";
async function removeDirectDependency(dependency, opts3) {
  const dependencyDir = path115.join(opts3.modulesDir, dependency.name);
  const results = await Promise.all([
    removeBinsOfDependency(dependencyDir, opts3),
    !opts3.dryRun && removeBin(dependencyDir)
    // eslint-disable-line @typescript-eslint/no-explicit-any
  ]);
  await removeIfEmpty(opts3.binsDir);
  const uninstalledPkg = results[0];
  if (!opts3.muteLogs) {
    rootLogger.debug({
      prefix: opts3.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 fs70.readdir(dir);
    return fileNames.length === 0;
  } catch {
    return false;
  }
}
var init_removeDirectDependency = __esm({
  "../installing/linking/modules-cleaner/lib/removeDirectDependency.js"() {
    "use strict";
    init_lib104();
    init_lib6();
    init_rimraf();
  }
});

// ../installing/linking/modules-cleaner/lib/prune.js
import { promises as fs71 } from "node:fs";
import path116 from "node:path";
async function prune2(importers, opts3) {
  const wantedLockfile = filterLockfile(opts3.wantedLockfile, {
    include: opts3.include,
    skipped: opts3.skipped,
    skipRuntimes: opts3.skipRuntimes
  });
  const rootImporter = wantedLockfile.importers["."] ?? {};
  const wantedRootPkgs = mergeDependencies(rootImporter);
  await Promise.all(importers.map(async ({ binsDir, id, modulesDir, pruneDirectDependencies, removePackages, rootDir }) => {
    const currentImporter = opts3.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 || opts3.dedupeDirectDeps && id !== "." && wantedPkgs[depName] === wantedRootPkgs[depName]) {
        depsToRemove.add(depName);
      }
    }
    if (pruneDirectDependencies) {
      const publiclyHoistedDeps = getPubliclyHoistedDependencies(opts3.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: opts3.dryRun,
        modulesDir,
        rootDir
      });
    }));
    await Promise.all(Array.from(removedFromScopes).map((scope) => removeIfEmpty(path116.join(modulesDir, scope))));
    try {
      await removeIfEmpty(modulesDir);
    } catch {
    }
  }));
  const selectedImporterIds = importers.map((importer) => importer.id).sort();
  const currentPkgIdsByDepPaths = equals_default(selectedImporterIds, Object.keys(opts3.wantedLockfile.importers)) ? getPkgsDepPaths(opts3.currentLockfile.packages ?? {}, opts3.skipped) : getPkgsDepPathsOwnedOnlyByImporters(selectedImporterIds, opts3.currentLockfile, opts3.include, opts3.skipped);
  const wantedPkgIdsByDepPaths = getPkgsDepPaths(wantedLockfile.packages ?? {}, opts3.skipped);
  const orphanDepPaths = Object.keys(currentPkgIdsByDepPaths).filter((path240) => !wantedPkgIdsByDepPaths[path240]);
  const orphanPkgIds = new Set(orphanDepPaths.map((path240) => currentPkgIdsByDepPaths[path240]));
  statsLogger.debug({
    prefix: opts3.lockfileDir,
    removed: orphanPkgIds.size
  });
  if (!opts3.dryRun) {
    if (orphanDepPaths.length > 0 && opts3.currentLockfile.packages != null && (opts3.hoistedModulesDir != null || opts3.publicHoistedModulesDir != null)) {
      const prefix = path116.join(opts3.virtualStoreDir, "../..");
      await Promise.all(orphanDepPaths.map(async (orphanDepPath) => {
        if (opts3.hoistedDependencies[orphanDepPath]) {
          await Promise.all(Object.entries(opts3.hoistedDependencies[orphanDepPath]).map(([alias, hoistType]) => {
            const modulesDir = hoistType === "public" ? opts3.publicHoistedModulesDir : opts3.hoistedModulesDir;
            if (!modulesDir)
              return void 0;
            return removeDirectDependency({
              name: alias
            }, {
              binsDir: path116.join(modulesDir, ".bin"),
              modulesDir,
              muteLogs: true,
              rootDir: prefix
            });
          }));
        }
        delete opts3.hoistedDependencies[orphanDepPath];
      }));
    }
    if (opts3.pruneVirtualStore !== false) {
      const _tryRemovePkg = tryRemovePkg.bind(null, opts3.lockfileDir, opts3.virtualStoreDir);
      await Promise.all(orphanDepPaths.map((orphanDepPath) => depPathToFilename(orphanDepPath, opts3.virtualStoreDirMaxLength)).map(async (orphanDepPath) => _tryRemovePkg(orphanDepPath)));
      const neededPkgs = /* @__PURE__ */ new Set(["node_modules"]);
      for (const depPath of Object.keys(opts3.wantedLockfile.packages ?? {})) {
        if (opts3.skipped.has(depPath))
          continue;
        neededPkgs.add(depPathToFilename(depPath, opts3.virtualStoreDirMaxLength));
      }
      const availablePkgs = await readVirtualStoreDir(opts3.virtualStoreDir, opts3.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 fs71.readdir(virtualStoreDir);
  } catch (err2) {
    if (err2.code !== "ENOENT") {
      logger.warn({
        error: err2,
        message: `Failed to read virtualStoreDir at "${virtualStoreDir}"`,
        prefix: lockfileDir
      });
    }
    return [];
  }
}
async function tryRemovePkg(lockfileDir, virtualStoreDir, pkgDir) {
  const pathToRemove = path116.join(virtualStoreDir, pkgDir);
  removalLogger.debug(pathToRemove);
  try {
    await rimraf(pathToRemove);
  } catch (err2) {
    logger.warn({
      error: err2,
      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_lib68();
    init_lib8();
    init_lib117();
    init_lib73();
    init_lib3();
    init_lib9();
    init_rimraf();
    init_es();
    init_removeDirectDependency();
  }
});

// ../installing/linking/modules-cleaner/lib/removeObsoleteDependency.js
import { promises as fs72 } from "node:fs";
import path117 from "node:path";
import util39 from "node:util";
async function removeObsoleteDependency(modulesDir, alias) {
  if (!(0, import_validate_npm_package_name6.default)(alias).validForOldPackages)
    return;
  await rimraf(path117.join(modulesDir, alias));
  if (alias[0] === "@") {
    try {
      await fs72.rmdir(path117.join(modulesDir, alias.split("/")[0]));
    } catch (err2) {
      if (!util39.types.isNativeError(err2) || !("code" in err2) || err2.code !== "ENOENT" && err2.code !== "ENOTEMPTY") {
        throw err2;
      }
    }
  }
}
var import_validate_npm_package_name6;
var init_removeObsoleteDependency = __esm({
  "../installing/linking/modules-cleaner/lib/removeObsoleteDependency.js"() {
    "use strict";
    init_rimraf();
    import_validate_npm_package_name6 = __toESM(require_lib19(), 1);
  }
});

// ../installing/linking/modules-cleaner/lib/index.js
var init_lib118 = __esm({
  "../installing/linking/modules-cleaner/lib/index.js"() {
    "use strict";
    init_prune2();
    init_removeObsoleteDependency();
  }
});

// ../../../../../setup-pnpm/store/v11/links/@yarnpkg/pnp/4.1.7/396f67d96f1e39bc3f06accc4e14efe9cc4a1319615aea1bfaf01e4867bda5af/node_modules/@yarnpkg/pnp/lib/index.js
var require_lib25 = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@yarnpkg/pnp/4.1.7/396f67d96f1e39bc3f06accc4e14efe9cc4a1319615aea1bfaf01e4867bda5af/node_modules/@yarnpkg/pnp/lib/index.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, "__esModule", { value: true });
    var require$$0 = __require("zlib");
    var path240 = __require("path");
    var module$1 = __require("module");
    var url7 = __require("url");
    var nodeUtils = __require("util");
    var assert13 = __require("assert");
    var fs131 = __require("fs");
    var crypto14 = __require("crypto");
    var os20 = __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(path240);
    var assert__default = /* @__PURE__ */ _interopDefaultLegacy(assert13);
    var fs__default = /* @__PURE__ */ _interopDefaultLegacy(fs131);
    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, opts3) {
      const normalizedDestination = destinationFs.pathUtils.normalize(destination);
      const normalizedSource = sourceFs.pathUtils.normalize(source);
      const prelayout = [];
      const postlayout = [];
      const { atime, mtime } = opts3.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, { ...opts3, 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, opts3) {
      const destinationStat = opts3.didParentExist ? await maybeLStat(destinationFs, destination) : null;
      const sourceStat = await sourceFs.lstatPromise(source);
      const { atime, mtime } = opts3.stableTime ? { atime: defaultTime, mtime: defaultTime } : sourceStat;
      let updated;
      switch (true) {
        case sourceStat.isDirectory():
          {
            updated = await copyFolder(prelayout, postlayout, destinationFs, destination, destinationStat, sourceFs, source, sourceStat, opts3);
          }
          break;
        case sourceStat.isFile():
          {
            updated = await copyFile(prelayout, postlayout, destinationFs, destination, destinationStat, sourceFs, source, sourceStat, opts3);
          }
          break;
        case sourceStat.isSymbolicLink():
          {
            updated = await copySymlink(prelayout, postlayout, destinationFs, destination, destinationStat, sourceFs, source, sourceStat, opts3);
          }
          break;
        default: {
          throw new Error(`Unsupported file type (${sourceStat.mode})`);
        }
      }
      if (opts3.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, opts3) {
      if (destinationStat !== null && !destinationStat.isDirectory()) {
        if (opts3.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 (err2) {
            if (err2.code !== `EEXIST`) {
              throw err2;
            }
          }
        });
        updated = true;
      }
      const entries = await sourceFs.readdirPromise(source);
      const nextOpts = opts3.didParentExist && !destinationStat ? { ...opts3, didParentExist: false } : opts3;
      if (opts3.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, opts3, 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 (opts3.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 (err2) {
              if (err2.code === `EEXIST`) {
                tempPathCleaned = true;
                await destinationFs.unlinkPromise(tempPath2);
              } else {
                throw err2;
              }
            }
          }
        }
        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, opts3) {
      if (destinationStat !== null) {
        if (opts3.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, opts3) {
      if (opts3.linkStrategy?.type === `HardlinkFromIndex`) {
        return copyFileViaIndex(prelayout, postlayout, destinationFs, destination, destinationStat, sourceFs, source, sourceStat, opts3, opts3.linkStrategy);
      } else {
        return copyFileDirect(prelayout, postlayout, destinationFs, destination, destinationStat, sourceFs, source, sourceStat, opts3);
      }
    }
    async function copySymlink(prelayout, postlayout, destinationFs, destination, destinationStat, sourceFs, source, sourceStat, opts3) {
      if (destinationStat !== null) {
        if (opts3.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(path241, { algorithm = `sha512` } = {}) {
        const fd2 = await this.openPromise(path241, `r`);
        try {
          const CHUNK_SIZE = 65536;
          const chunk = Buffer.allocUnsafeSlow(CHUNK_SIZE);
          const hash2 = crypto14.createHash(algorithm);
          let bytesRead = 0;
          while ((bytesRead = await this.readPromise(fd2, chunk, 0, CHUNK_SIZE)) !== 0)
            hash2.update(bytesRead === CHUNK_SIZE ? chunk : chunk.slice(0, bytesRead));
          return hash2.digest(`hex`);
        } finally {
          await this.closePromise(fd2);
        }
      }
      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((resolve4) => setTimeout(resolve4, 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 u2 = 2; u2 <= parts.length; ++u2) {
          const subPath = parts.slice(0, u2).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 u2 = 2; u2 <= parts.length; ++u2) {
          const subPath = parts.slice(0, u2).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: overwrite2 = true, stableSort = false, stableTime = false, linkStrategy = null } = {}) {
        return await copyPromise(this, destination, baseFs, source, { overwrite: overwrite2, stableSort, stableTime, linkStrategy });
      }
      copySync(destination, source, { baseFs = this, overwrite: overwrite2 = 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: overwrite2 });
          }
        } else if (stat2.isFile()) {
          if (!exists || overwrite2) {
            if (exists)
              this.removeSync(destination);
            const content = baseFs.readFileSync(source);
            this.writeFileSync(destination, content);
          }
        } else if (stat2.isSymbolicLink()) {
          if (!exists || overwrite2) {
            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, opts3 = {}) {
        if (Buffer.isBuffer(content)) {
          return this.changeFileBufferPromise(p, content, opts3);
        } else {
          return this.changeFileTextPromise(p, content, opts3);
        }
      }
      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, opts3 = {}) {
        if (Buffer.isBuffer(content)) {
          return this.changeFileBufferSync(p, content, opts3);
        } else {
          return this.changeFileTextSync(p, content, opts3);
        }
      }
      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 fd2 = 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 (fd2 === null) {
          try {
            fd2 = 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((resolve4) => setTimeout(resolve4, interval));
              } else {
                throw new Error(`Couldn't acquire a lock in a reasonable time (via ${lockPath})`);
              }
            } else {
              throw error;
            }
          }
        }
        await this.writePromise(fd2, JSON.stringify([process.pid]));
        try {
          return await callback2();
        } finally {
          try {
            await this.closePromise(fd2);
            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 os20.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(path241) {
        return this.mapFromBase(this.baseFs.resolve(this.mapToBase(path241)));
      }
      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, opts3) {
        return Object.assign(await this.baseFs.opendirPromise(this.mapToBase(p), opts3), { path: p });
      }
      opendirSync(p, opts3) {
        return Object.assign(this.baseFs.opendirSync(this.mapToBase(p), opts3), { path: p });
      }
      async readPromise(fd2, buffer3, offset, length, position3) {
        return await this.baseFs.readPromise(fd2, buffer3, offset, length, position3);
      }
      readSync(fd2, buffer3, offset, length, position3) {
        return this.baseFs.readSync(fd2, buffer3, offset, length, position3);
      }
      async writePromise(fd2, buffer3, offset, length, position3) {
        if (typeof buffer3 === `string`) {
          return await this.baseFs.writePromise(fd2, buffer3, offset);
        } else {
          return await this.baseFs.writePromise(fd2, buffer3, offset, length, position3);
        }
      }
      writeSync(fd2, buffer3, offset, length, position3) {
        if (typeof buffer3 === `string`) {
          return this.baseFs.writeSync(fd2, buffer3, offset);
        } else {
          return this.baseFs.writeSync(fd2, buffer3, offset, length, position3);
        }
      }
      async closePromise(fd2) {
        return this.baseFs.closePromise(fd2);
      }
      closeSync(fd2) {
        this.baseFs.closeSync(fd2);
      }
      createReadStream(p, opts3) {
        return this.baseFs.createReadStream(p !== null ? this.mapToBase(p) : p, opts3);
      }
      createWriteStream(p, opts3) {
        return this.baseFs.createWriteStream(p !== null ? this.mapToBase(p) : p, opts3);
      }
      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, opts3) {
        return this.baseFs.statPromise(this.mapToBase(p), opts3);
      }
      statSync(p, opts3) {
        return this.baseFs.statSync(this.mapToBase(p), opts3);
      }
      async fstatPromise(fd2, opts3) {
        return this.baseFs.fstatPromise(fd2, opts3);
      }
      fstatSync(fd2, opts3) {
        return this.baseFs.fstatSync(fd2, opts3);
      }
      lstatPromise(p, opts3) {
        return this.baseFs.lstatPromise(this.mapToBase(p), opts3);
      }
      lstatSync(p, opts3) {
        return this.baseFs.lstatSync(this.mapToBase(p), opts3);
      }
      async fchmodPromise(fd2, mask) {
        return this.baseFs.fchmodPromise(fd2, mask);
      }
      fchmodSync(fd2, mask) {
        return this.baseFs.fchmodSync(fd2, 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(fd2, uid, gid) {
        return this.baseFs.fchownPromise(fd2, uid, gid);
      }
      fchownSync(fd2, uid, gid) {
        return this.baseFs.fchownSync(fd2, 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, opts3) {
        return this.baseFs.appendFilePromise(this.fsMapToBase(p), content, opts3);
      }
      appendFileSync(p, content, opts3) {
        return this.baseFs.appendFileSync(this.fsMapToBase(p), content, opts3);
      }
      async writeFilePromise(p, content, opts3) {
        return this.baseFs.writeFilePromise(this.fsMapToBase(p), content, opts3);
      }
      writeFileSync(p, content, opts3) {
        return this.baseFs.writeFileSync(this.fsMapToBase(p), content, opts3);
      }
      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, opts3) {
        return this.baseFs.mkdirPromise(this.mapToBase(p), opts3);
      }
      mkdirSync(p, opts3) {
        return this.baseFs.mkdirSync(this.mapToBase(p), opts3);
      }
      async rmdirPromise(p, opts3) {
        return this.baseFs.rmdirPromise(this.mapToBase(p), opts3);
      }
      rmdirSync(p, opts3) {
        return this.baseFs.rmdirSync(this.mapToBase(p), opts3);
      }
      async rmPromise(p, opts3) {
        return this.baseFs.rmPromise(this.mapToBase(p), opts3);
      }
      rmSync(p, opts3) {
        return this.baseFs.rmSync(this.mapToBase(p), opts3);
      }
      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, opts3) {
        return this.baseFs.readdirPromise(this.mapToBase(p), opts3);
      }
      readdirSync(p, opts3) {
        return this.baseFs.readdirSync(this.mapToBase(p), opts3);
      }
      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(fd2, len) {
        return this.baseFs.ftruncatePromise(fd2, len);
      }
      ftruncateSync(fd2, len) {
        return this.baseFs.ftruncateSync(fd2, 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((resolve4, reject3) => {
          this.realFs.open(npath2.fromPortablePath(p), flags, mode, this.makeCallback(resolve4, reject3));
        });
      }
      openSync(p, flags, mode) {
        return this.realFs.openSync(npath2.fromPortablePath(p), flags, mode);
      }
      async opendirPromise(p, opts3) {
        return await new Promise((resolve4, reject3) => {
          if (typeof opts3 !== `undefined`) {
            this.realFs.opendir(npath2.fromPortablePath(p), opts3, this.makeCallback(resolve4, reject3));
          } else {
            this.realFs.opendir(npath2.fromPortablePath(p), this.makeCallback(resolve4, reject3));
          }
        }).then((dir) => {
          const dirWithFixedPath = dir;
          Object.defineProperty(dirWithFixedPath, `path`, {
            value: p,
            configurable: true,
            writable: true
          });
          return dirWithFixedPath;
        });
      }
      opendirSync(p, opts3) {
        const dir = typeof opts3 !== `undefined` ? this.realFs.opendirSync(npath2.fromPortablePath(p), opts3) : this.realFs.opendirSync(npath2.fromPortablePath(p));
        const dirWithFixedPath = dir;
        Object.defineProperty(dirWithFixedPath, `path`, {
          value: p,
          configurable: true,
          writable: true
        });
        return dirWithFixedPath;
      }
      async readPromise(fd2, buffer3, offset = 0, length = 0, position3 = -1) {
        return await new Promise((resolve4, reject3) => {
          this.realFs.read(fd2, buffer3, offset, length, position3, (error, bytesRead) => {
            if (error) {
              reject3(error);
            } else {
              resolve4(bytesRead);
            }
          });
        });
      }
      readSync(fd2, buffer3, offset, length, position3) {
        return this.realFs.readSync(fd2, buffer3, offset, length, position3);
      }
      async writePromise(fd2, buffer3, offset, length, position3) {
        return await new Promise((resolve4, reject3) => {
          if (typeof buffer3 === `string`) {
            return this.realFs.write(fd2, buffer3, offset, this.makeCallback(resolve4, reject3));
          } else {
            return this.realFs.write(fd2, buffer3, offset, length, position3, this.makeCallback(resolve4, reject3));
          }
        });
      }
      writeSync(fd2, buffer3, offset, length, position3) {
        if (typeof buffer3 === `string`) {
          return this.realFs.writeSync(fd2, buffer3, offset);
        } else {
          return this.realFs.writeSync(fd2, buffer3, offset, length, position3);
        }
      }
      async closePromise(fd2) {
        await new Promise((resolve4, reject3) => {
          this.realFs.close(fd2, this.makeCallback(resolve4, reject3));
        });
      }
      closeSync(fd2) {
        this.realFs.closeSync(fd2);
      }
      createReadStream(p, opts3) {
        const realPath = p !== null ? npath2.fromPortablePath(p) : p;
        return this.realFs.createReadStream(realPath, opts3);
      }
      createWriteStream(p, opts3) {
        const realPath = p !== null ? npath2.fromPortablePath(p) : p;
        return this.realFs.createWriteStream(realPath, opts3);
      }
      async realpathPromise(p) {
        return await new Promise((resolve4, reject3) => {
          this.realFs.realpath(npath2.fromPortablePath(p), {}, this.makeCallback(resolve4, reject3));
        }).then((path241) => {
          return npath2.toPortablePath(path241);
        });
      }
      realpathSync(p) {
        return npath2.toPortablePath(this.realFs.realpathSync(npath2.fromPortablePath(p), {}));
      }
      async existsPromise(p) {
        return await new Promise((resolve4) => {
          this.realFs.exists(npath2.fromPortablePath(p), resolve4);
        });
      }
      accessSync(p, mode) {
        return this.realFs.accessSync(npath2.fromPortablePath(p), mode);
      }
      async accessPromise(p, mode) {
        return await new Promise((resolve4, reject3) => {
          this.realFs.access(npath2.fromPortablePath(p), mode, this.makeCallback(resolve4, reject3));
        });
      }
      existsSync(p) {
        return this.realFs.existsSync(npath2.fromPortablePath(p));
      }
      async statPromise(p, opts3) {
        return await new Promise((resolve4, reject3) => {
          if (opts3) {
            this.realFs.stat(npath2.fromPortablePath(p), opts3, this.makeCallback(resolve4, reject3));
          } else {
            this.realFs.stat(npath2.fromPortablePath(p), this.makeCallback(resolve4, reject3));
          }
        });
      }
      statSync(p, opts3) {
        if (opts3) {
          return this.realFs.statSync(npath2.fromPortablePath(p), opts3);
        } else {
          return this.realFs.statSync(npath2.fromPortablePath(p));
        }
      }
      async fstatPromise(fd2, opts3) {
        return await new Promise((resolve4, reject3) => {
          if (opts3) {
            this.realFs.fstat(fd2, opts3, this.makeCallback(resolve4, reject3));
          } else {
            this.realFs.fstat(fd2, this.makeCallback(resolve4, reject3));
          }
        });
      }
      fstatSync(fd2, opts3) {
        if (opts3) {
          return this.realFs.fstatSync(fd2, opts3);
        } else {
          return this.realFs.fstatSync(fd2);
        }
      }
      async lstatPromise(p, opts3) {
        return await new Promise((resolve4, reject3) => {
          if (opts3) {
            this.realFs.lstat(npath2.fromPortablePath(p), opts3, this.makeCallback(resolve4, reject3));
          } else {
            this.realFs.lstat(npath2.fromPortablePath(p), this.makeCallback(resolve4, reject3));
          }
        });
      }
      lstatSync(p, opts3) {
        if (opts3) {
          return this.realFs.lstatSync(npath2.fromPortablePath(p), opts3);
        } else {
          return this.realFs.lstatSync(npath2.fromPortablePath(p));
        }
      }
      async fchmodPromise(fd2, mask) {
        return await new Promise((resolve4, reject3) => {
          this.realFs.fchmod(fd2, mask, this.makeCallback(resolve4, reject3));
        });
      }
      fchmodSync(fd2, mask) {
        return this.realFs.fchmodSync(fd2, mask);
      }
      async chmodPromise(p, mask) {
        return await new Promise((resolve4, reject3) => {
          this.realFs.chmod(npath2.fromPortablePath(p), mask, this.makeCallback(resolve4, reject3));
        });
      }
      chmodSync(p, mask) {
        return this.realFs.chmodSync(npath2.fromPortablePath(p), mask);
      }
      async fchownPromise(fd2, uid, gid) {
        return await new Promise((resolve4, reject3) => {
          this.realFs.fchown(fd2, uid, gid, this.makeCallback(resolve4, reject3));
        });
      }
      fchownSync(fd2, uid, gid) {
        return this.realFs.fchownSync(fd2, uid, gid);
      }
      async chownPromise(p, uid, gid) {
        return await new Promise((resolve4, reject3) => {
          this.realFs.chown(npath2.fromPortablePath(p), uid, gid, this.makeCallback(resolve4, reject3));
        });
      }
      chownSync(p, uid, gid) {
        return this.realFs.chownSync(npath2.fromPortablePath(p), uid, gid);
      }
      async renamePromise(oldP, newP) {
        return await new Promise((resolve4, reject3) => {
          this.realFs.rename(npath2.fromPortablePath(oldP), npath2.fromPortablePath(newP), this.makeCallback(resolve4, reject3));
        });
      }
      renameSync(oldP, newP) {
        return this.realFs.renameSync(npath2.fromPortablePath(oldP), npath2.fromPortablePath(newP));
      }
      async copyFilePromise(sourceP, destP, flags = 0) {
        return await new Promise((resolve4, reject3) => {
          this.realFs.copyFile(npath2.fromPortablePath(sourceP), npath2.fromPortablePath(destP), flags, this.makeCallback(resolve4, reject3));
        });
      }
      copyFileSync(sourceP, destP, flags = 0) {
        return this.realFs.copyFileSync(npath2.fromPortablePath(sourceP), npath2.fromPortablePath(destP), flags);
      }
      async appendFilePromise(p, content, opts3) {
        return await new Promise((resolve4, reject3) => {
          const fsNativePath = typeof p === `string` ? npath2.fromPortablePath(p) : p;
          if (opts3) {
            this.realFs.appendFile(fsNativePath, content, opts3, this.makeCallback(resolve4, reject3));
          } else {
            this.realFs.appendFile(fsNativePath, content, this.makeCallback(resolve4, reject3));
          }
        });
      }
      appendFileSync(p, content, opts3) {
        const fsNativePath = typeof p === `string` ? npath2.fromPortablePath(p) : p;
        if (opts3) {
          this.realFs.appendFileSync(fsNativePath, content, opts3);
        } else {
          this.realFs.appendFileSync(fsNativePath, content);
        }
      }
      async writeFilePromise(p, content, opts3) {
        return await new Promise((resolve4, reject3) => {
          const fsNativePath = typeof p === `string` ? npath2.fromPortablePath(p) : p;
          if (opts3) {
            this.realFs.writeFile(fsNativePath, content, opts3, this.makeCallback(resolve4, reject3));
          } else {
            this.realFs.writeFile(fsNativePath, content, this.makeCallback(resolve4, reject3));
          }
        });
      }
      writeFileSync(p, content, opts3) {
        const fsNativePath = typeof p === `string` ? npath2.fromPortablePath(p) : p;
        if (opts3) {
          this.realFs.writeFileSync(fsNativePath, content, opts3);
        } else {
          this.realFs.writeFileSync(fsNativePath, content);
        }
      }
      async unlinkPromise(p) {
        return await new Promise((resolve4, reject3) => {
          this.realFs.unlink(npath2.fromPortablePath(p), this.makeCallback(resolve4, reject3));
        });
      }
      unlinkSync(p) {
        return this.realFs.unlinkSync(npath2.fromPortablePath(p));
      }
      async utimesPromise(p, atime, mtime) {
        return await new Promise((resolve4, reject3) => {
          this.realFs.utimes(npath2.fromPortablePath(p), atime, mtime, this.makeCallback(resolve4, reject3));
        });
      }
      utimesSync(p, atime, mtime) {
        this.realFs.utimesSync(npath2.fromPortablePath(p), atime, mtime);
      }
      async lutimesPromise(p, atime, mtime) {
        return await new Promise((resolve4, reject3) => {
          this.realFs.lutimes(npath2.fromPortablePath(p), atime, mtime, this.makeCallback(resolve4, reject3));
        });
      }
      lutimesSync(p, atime, mtime) {
        this.realFs.lutimesSync(npath2.fromPortablePath(p), atime, mtime);
      }
      async mkdirPromise(p, opts3) {
        return await new Promise((resolve4, reject3) => {
          this.realFs.mkdir(npath2.fromPortablePath(p), opts3, this.makeCallback(resolve4, reject3));
        });
      }
      mkdirSync(p, opts3) {
        return this.realFs.mkdirSync(npath2.fromPortablePath(p), opts3);
      }
      async rmdirPromise(p, opts3) {
        return await new Promise((resolve4, reject3) => {
          if (opts3) {
            this.realFs.rmdir(npath2.fromPortablePath(p), opts3, this.makeCallback(resolve4, reject3));
          } else {
            this.realFs.rmdir(npath2.fromPortablePath(p), this.makeCallback(resolve4, reject3));
          }
        });
      }
      rmdirSync(p, opts3) {
        return this.realFs.rmdirSync(npath2.fromPortablePath(p), opts3);
      }
      async rmPromise(p, opts3) {
        return await new Promise((resolve4, reject3) => {
          if (opts3) {
            this.realFs.rm(npath2.fromPortablePath(p), opts3, this.makeCallback(resolve4, reject3));
          } else {
            this.realFs.rm(npath2.fromPortablePath(p), this.makeCallback(resolve4, reject3));
          }
        });
      }
      rmSync(p, opts3) {
        return this.realFs.rmSync(npath2.fromPortablePath(p), opts3);
      }
      async linkPromise(existingP, newP) {
        return await new Promise((resolve4, reject3) => {
          this.realFs.link(npath2.fromPortablePath(existingP), npath2.fromPortablePath(newP), this.makeCallback(resolve4, reject3));
        });
      }
      linkSync(existingP, newP) {
        return this.realFs.linkSync(npath2.fromPortablePath(existingP), npath2.fromPortablePath(newP));
      }
      async symlinkPromise(target2, p, type4) {
        return await new Promise((resolve4, reject3) => {
          this.realFs.symlink(npath2.fromPortablePath(target2.replace(/\/+$/, ``)), npath2.fromPortablePath(p), type4, this.makeCallback(resolve4, 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((resolve4, reject3) => {
          const fsNativePath = typeof p === `string` ? npath2.fromPortablePath(p) : p;
          this.realFs.readFile(fsNativePath, encoding, this.makeCallback(resolve4, reject3));
        });
      }
      readFileSync(p, encoding) {
        const fsNativePath = typeof p === `string` ? npath2.fromPortablePath(p) : p;
        return this.realFs.readFileSync(fsNativePath, encoding);
      }
      async readdirPromise(p, opts3) {
        return await new Promise((resolve4, reject3) => {
          if (opts3) {
            if (opts3.recursive && process.platform === `win32`) {
              if (opts3.withFileTypes) {
                this.realFs.readdir(npath2.fromPortablePath(p), opts3, this.makeCallback((results) => resolve4(results.map(direntToPortable)), reject3));
              } else {
                this.realFs.readdir(npath2.fromPortablePath(p), opts3, this.makeCallback((results) => resolve4(results.map(npath2.toPortablePath)), reject3));
              }
            } else {
              this.realFs.readdir(npath2.fromPortablePath(p), opts3, this.makeCallback(resolve4, reject3));
            }
          } else {
            this.realFs.readdir(npath2.fromPortablePath(p), this.makeCallback(resolve4, reject3));
          }
        });
      }
      readdirSync(p, opts3) {
        if (opts3) {
          if (opts3.recursive && process.platform === `win32`) {
            if (opts3.withFileTypes) {
              return this.realFs.readdirSync(npath2.fromPortablePath(p), opts3).map(direntToPortable);
            } else {
              return this.realFs.readdirSync(npath2.fromPortablePath(p), opts3).map(npath2.toPortablePath);
            }
          } else {
            return this.realFs.readdirSync(npath2.fromPortablePath(p), opts3);
          }
        } else {
          return this.realFs.readdirSync(npath2.fromPortablePath(p));
        }
      }
      async readlinkPromise(p) {
        return await new Promise((resolve4, reject3) => {
          this.realFs.readlink(npath2.fromPortablePath(p), this.makeCallback(resolve4, reject3));
        }).then((path241) => {
          return npath2.toPortablePath(path241);
        });
      }
      readlinkSync(p) {
        return npath2.toPortablePath(this.realFs.readlinkSync(npath2.fromPortablePath(p)));
      }
      async truncatePromise(p, len) {
        return await new Promise((resolve4, reject3) => {
          this.realFs.truncate(npath2.fromPortablePath(p), len, this.makeCallback(resolve4, reject3));
        });
      }
      truncateSync(p, len) {
        return this.realFs.truncateSync(npath2.fromPortablePath(p), len);
      }
      async ftruncatePromise(fd2, len) {
        return await new Promise((resolve4, reject3) => {
          this.realFs.ftruncate(fd2, len, this.makeCallback(resolve4, reject3));
        });
      }
      ftruncateSync(fd2, len) {
        return this.realFs.ftruncateSync(fd2, 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(resolve4, reject3) {
        return (err2, result2) => {
          if (err2) {
            reject3(err2);
          } else {
            resolve4(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 realpath4 = this.baseFs.realpathSync(this.mapToBase(p));
        return _VirtualFS.makeVirtualPath(match[1], match[3], realpath4);
      }
      async realpathPromise(p) {
        const match = p.match(VIRTUAL_REGEXP);
        if (!match)
          return await this.baseFs.realpathPromise(p);
        if (!match[5])
          return p;
        const realpath4 = await this.baseFs.realpathPromise(this.mapToBase(p));
        return _VirtualFS.makeVirtualPath(match[1], match[3], realpath4);
      }
      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((_, index2) => index2);
      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((index2) => {
        return asArray[index2];
      });
    }
    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 sortedDependencies2 = 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: sortedDependencies2,
            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`,
      (path241, base, message) => {
        return `Invalid package config ${path241}${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 i4 = 0; i4 < keys4.length; i4++) {
        const key = keys4[i4];
        if (ObjectPrototypeHasOwnProperty(source, key)) {
          filtered[key] = source[key];
        }
      }
      return filtered;
    }
    var packageJSONCache = new SafeMap();
    function getPackageConfig(path241, specifier, base, readFileSyncFn) {
      const existing = packageJSONCache.get(path241);
      if (existing !== void 0) {
        return existing;
      }
      const source = readFileSyncFn(path241);
      if (source === void 0) {
        const packageConfig2 = {
          pjsonPath: path241,
          exists: false,
          main: void 0,
          name: void 0,
          type: "none",
          exports: void 0,
          imports: void 0
        };
        packageJSONCache.set(path241, packageConfig2);
        return packageConfig2;
      }
      let packageJSON;
      try {
        packageJSON = JSONParse(source);
      } catch (error) {
        throw new ERR_INVALID_PACKAGE_CONFIG(
          path241,
          (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: path241,
        exists: true,
        main: main5,
        name,
        type: type4,
        exports: exports3,
        imports
      };
      packageJSONCache.set(path241, 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 i4 = 0; i4 < target2.length; i4++) {
          const targetItem = target2[i4];
          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 i4 = 0; i4 < keys4.length; i4++) {
          const key = keys4[i4];
          if (isArrayIndex2(key)) {
            throw new ERR_INVALID_PACKAGE_CONFIG(
              url7.fileURLToPath(packageJSONUrl),
              base,
              '"exports" cannot contain numeric property keys.'
            );
          }
        }
        for (let i4 = 0; i4 < keys4.length; i4++) {
          const key = keys4[i4];
          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 i4 = 0;
      for (let j2 = 0; j2 < keys4.length; j2++) {
        const key = keys4[j2];
        const curIsConditionalSugar = key === "" || key[0] !== ".";
        if (i4++ === 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 i4 = 0; i4 < keys4.length; i4++) {
        const key = keys4[i4];
        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 i4 = 0; i4 < keys4.length; i4++) {
              const key = keys4[i4];
              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(opts3, {
      argv: argv2 = process.argv.slice(2),
      permissive = false,
      stopAtPositional = false
    } = {}) {
      if (!opts3) {
        throw new ArgError(
          "argument specification object is required",
          "ARG_CONFIG_NO_SPEC"
        );
      }
      const result2 = { _: [] };
      const aliases = {};
      const handlers = {};
      for (const key of Object.keys(opts3)) {
        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 opts3[key] === "string") {
          aliases[key] = opts3[key];
          continue;
        }
        let type4 = opts3[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 i4 = 0, len = argv2.length; i4 < len; i4++) {
        const wholeArg = argv2[i4];
        if (stopAtPositional && result2._.length > 0) {
          result2._ = result2._.concat(argv2.slice(i4));
          break;
        }
        if (wholeArg === "--") {
          result2._ = result2._.concat(argv2.slice(i4 + 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 < i4 + 2 || argv2[i4 + 1].length > 1 && argv2[i4 + 1][0] === "-" && !(argv2[i4 + 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[i4 + 1], argName, result2[argName]);
              ++i4;
            } 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 index2 = 0; index2 < node_options.length; ++index2) {
        let c3 = node_options[index2];
        if (c3 === "\\" && is_in_string) {
          if (index2 + 1 === node_options.length) {
            errors2.push("invalid value for NODE_OPTIONS (invalid escape)\n");
            return env_argv;
          } else {
            c3 = node_options[++index2];
          }
        } 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, patch] = 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, opts3) {
      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 (opts3.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 (opts3.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 (!opts3.fakeFs.existsSync(manifestPath))
          return null;
        const pkgJson2 = JSON.parse(opts3.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 = opts3.fakeFs.statSync(unqualifiedPath);
        } catch {
        }
        if (stat2 && !stat2.isDirectory())
          return opts3.fakeFs.realpathSync(unqualifiedPath);
        if (stat2 && stat2.isDirectory()) {
          let pkgJson2;
          try {
            pkgJson2 = JSON.parse(opts3.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 i4 = 0, length = extensions2.length; i4 < length; i4++) {
          const candidateFile = `${unqualifiedPath}${extensions2[i4]}`;
          candidates.push(candidateFile);
          if (opts3.fakeFs.existsSync(candidateFile)) {
            return candidateFile;
          }
        }
        if (stat2 && stat2.isDirectory()) {
          for (let i4 = 0, length = extensions2.length; i4 < length; i4++) {
            const candidateFile = ppath.format({ dir: unqualifiedPath, name: `index`, ext: extensions2[i4] });
            candidates.push(candidateFile);
            if (opts3.fakeFs.existsSync(candidateFile)) {
              return candidateFile;
            }
          }
        }
        return null;
      }
      function makeFakeModule(path241) {
        const fakeModule = new module$1.Module(path241, null);
        fakeModule.filename = path241;
        fakeModule.paths = module$1.Module._nodeModulePaths(path241);
        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(path241) {
        if (ignorePattern === null)
          return false;
        const subPath = ppath.contains(runtimeState.basePath, path241);
        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 opts3.fakeFs.readFileSync(npath2.toPortablePath(filePath), `utf8`);
        } catch (err2) {
          if (err2.code === `ENOENT`)
            return void 0;
          throw err2;
        }
      }
      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(opts3.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 {
              opts3.fakeFs.accessSync(packageLocation);
            } catch (err2) {
              if (err2?.code === `ENOENT`) {
                exists = false;
              } else {
                const readableError = (err2?.message ?? err2 ?? `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: (path241) => {
          return findPackageLocator(npath2.toPortablePath(path241));
        },
        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`, (path241) => {
          const result2 = resolveVirtual(npath2.toPortablePath(path241));
          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: path240.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/packageMap.js
import { promises as fs73 } from "node:fs";
import path118 from "node:path";
import { pathToFileURL as pathToFileURL2 } from "node:url";
async function writePackageMap(lockfile, opts3) {
  await fs73.mkdir(opts3.rootModulesDir, { recursive: true });
  await fs73.writeFile(path118.join(opts3.rootModulesDir, PACKAGE_MAP_FILENAME), `${JSON.stringify(lockfileToPackageMap(lockfile, opts3))}
`, "utf8");
}
async function writePackageMapFromDependenciesGraph(opts3) {
  await fs73.mkdir(opts3.rootModulesDir, { recursive: true });
  await fs73.writeFile(path118.join(opts3.rootModulesDir, PACKAGE_MAP_FILENAME), `${JSON.stringify(dependenciesGraphToPackageMap(opts3))}
`, "utf8");
}
function lockfileToPackageMap(lockfile, opts3) {
  const isLoose = opts3.packageMapType === "loose";
  const packages = /* @__PURE__ */ Object.create(null);
  const packageLocationsByModulesDir = isLoose ? /* @__PURE__ */ new Map() : void 0;
  const packageDirsById = isLoose ? /* @__PURE__ */ new Map() : void 0;
  const addPackage = (id, packageDir, dependencies) => {
    packageDirsById?.set(id, packageDir);
    packages[id] = {
      url: toRelativeUrl(opts3.rootModulesDir, packageDir),
      dependencies: Object.fromEntries(Array.from(dependencies).sort(([a2], [b]) => compareStrings(a2, b)))
    };
  };
  const addExternalLinkPackage = (target2) => {
    packages[target2.id] ??= {
      url: toRelativeUrl(opts3.rootModulesDir, target2.dir),
      dependencies: {}
    };
  };
  const addPackageLocation = (packageName, packageLocation, packageId) => {
    if (packageLocationsByModulesDir == null)
      return;
    const modulesDir = getNodeModulesPath(packageLocation);
    if (modulesDir == null)
      return;
    addPackageToModulesDir(packageLocationsByModulesDir, modulesDir, packageName, packageId);
  };
  const addDependencyLocation = (modulesDir, dependencyName, dependencyId) => {
    if (packageLocationsByModulesDir == null)
      return;
    addPackageToModulesDir(packageLocationsByModulesDir, modulesDir, dependencyName, dependencyId);
  };
  for (const [importerId, importer] of Object.entries(lockfile.importers).sort(([a2], [b]) => compareStrings(a2, b))) {
    const dependencies = /* @__PURE__ */ new Map();
    const importerName = opts3.importerNames[importerId];
    if (importerName) {
      dependencies.set(importerName, importerId);
    }
    addDependencies(dependencies, importer.dependencies, { importerId });
    addDependencies(dependencies, importer.optionalDependencies, { importerId });
    addDependencies(dependencies, importer.devDependencies, { importerId });
    addPackage(importerId, resolvePath3(opts3.lockfileDir, importerId), dependencies);
    if (isLoose) {
      const importerModulesDir = resolvePath3(opts3.lockfileDir, importerId, "node_modules");
      addPhysicalDependencyLocations(importerModulesDir, importer.dependencies, { importerId });
      addPhysicalDependencyLocations(importerModulesDir, importer.optionalDependencies, { importerId });
      addPhysicalDependencyLocations(importerModulesDir, importer.devDependencies, { importerId });
    }
  }
  for (const [depPath, pkgSnapshot] of Object.entries(lockfile.packages ?? {}).sort(([a2], [b]) => compareStrings(a2, b))) {
    const { name } = nameVerFromPkgSnapshot(depPath, pkgSnapshot);
    const packageDir = opts3.locationByDepPath?.[depPath] ?? joinPath2(opts3.virtualStoreDir, depPathToFilename(depPath, opts3.virtualStoreDirMaxLength), "node_modules", name);
    const dependencies = /* @__PURE__ */ new Map([[name, depPath]]);
    addDependencies(dependencies, pkgSnapshot.dependencies);
    addDependencies(dependencies, pkgSnapshot.optionalDependencies);
    addPackage(depPath, packageDir, dependencies);
    if (isLoose) {
      addPackageLocation(name, packageDir, depPath);
      const packageModulesDir = joinPath2(packageDir, "node_modules");
      addPhysicalDependencyLocations(packageModulesDir, pkgSnapshot.dependencies);
      addPhysicalDependencyLocations(packageModulesDir, pkgSnapshot.optionalDependencies);
    }
  }
  if (isLoose) {
    for (const [id, packageDir] of packageDirsById) {
      packages[id].dependencies = serializeDependencies(new Map([
        ...Object.entries(packages[id].dependencies),
        ...physicalDependencies(packageDir, packageLocationsByModulesDir)
      ]));
    }
  }
  return {
    packages: Object.fromEntries(Object.entries(packages).sort(([a2], [b]) => compareStrings(a2, b)))
  };
  function addDependencies(dependencies, deps, opts4) {
    for (const [alias, ref] of Object.entries(deps ?? {}).sort(([a2], [b]) => compareStrings(a2, b))) {
      const dependencyId = resolveDependencyId(alias, ref, opts4);
      if (dependencyId == null)
        continue;
      dependencies.set(alias, dependencyId);
    }
  }
  function resolveDependencyId(alias, ref, depOpts) {
    if (ref.startsWith("link:")) {
      const target2 = resolveLinkTarget2(opts3.lockfileDir, depOpts?.importerId, ref);
      addExternalLinkPackage(target2);
      return target2.id;
    }
    const relDepPath = refToRelative(ref, alias);
    if (relDepPath == null || lockfile.packages?.[relDepPath] == null)
      return void 0;
    return relDepPath;
  }
  function addPhysicalDependencyLocations(modulesDir, deps, physicalOpts) {
    for (const [alias, ref] of Object.entries(deps ?? {})) {
      if (ref.startsWith("link:")) {
        const target2 = resolveLinkTarget2(opts3.lockfileDir, physicalOpts?.importerId, ref);
        addExternalLinkPackage(target2);
        addDependencyLocation(modulesDir, alias, target2.id);
        continue;
      }
      const relDepPath = refToRelative(ref, alias);
      if (relDepPath == null || lockfile.packages?.[relDepPath] == null)
        continue;
      addDependencyLocation(modulesDir, alias, relDepPath);
    }
  }
}
function dependenciesGraphToPackageMap(opts3) {
  const isLoose = opts3.packageMapType === "loose";
  const packages = /* @__PURE__ */ Object.create(null);
  const packageIdsByGraphKey = /* @__PURE__ */ new Map();
  const packageDirsById = isLoose ? /* @__PURE__ */ new Map() : void 0;
  const packageLocationsByModulesDir = isLoose ? /* @__PURE__ */ new Map() : void 0;
  const addPackage = (id, packageDir, dependencies) => {
    packageDirsById?.set(id, packageDir);
    packages[id] = {
      url: toRelativeUrl(opts3.rootModulesDir, packageDir),
      dependencies: Object.fromEntries(Array.from(dependencies).sort(([a2], [b]) => compareStrings(a2, b)))
    };
  };
  const addExternalLinkPackage = (target2) => {
    packages[target2.id] ??= {
      url: toRelativeUrl(opts3.rootModulesDir, target2.dir),
      dependencies: {}
    };
  };
  const addDependencyLocation = (modulesDir, dependencyName, dependencyId) => {
    if (packageLocationsByModulesDir == null)
      return;
    addPackageToModulesDir(packageLocationsByModulesDir, modulesDir, dependencyName, dependencyId);
  };
  for (const [graphKey, node] of Object.entries(opts3.graph).sort(([a2], [b]) => compareStrings(a2, b))) {
    packageIdsByGraphKey.set(graphKey, graphNodePackageId(node, opts3));
    const modulesDir = isLoose ? getNodeModulesPath(node.dir) : void 0;
    if (modulesDir && packageLocationsByModulesDir != null) {
      addPackageToModulesDir(packageLocationsByModulesDir, modulesDir, node.name, graphNodePackageId(node, opts3));
    }
  }
  for (const [importerId, importer] of Object.entries(opts3.lockfile.importers).sort(([a2], [b]) => compareStrings(a2, b))) {
    const importerDir = resolvePath3(opts3.lockfileDir, importerId);
    const importerPackageId = graphPackageId(importerDir, opts3);
    const dependencies = /* @__PURE__ */ new Map();
    const importerName = opts3.importerNames[importerId];
    if (importerName) {
      dependencies.set(importerName, importerPackageId);
    }
    addDirectDependencies(dependencies, opts3.directDependenciesByImporterId[importerId]);
    const importerModulesDir = isLoose ? joinPath2(importerDir, "node_modules") : void 0;
    addLinkedDependencies(dependencies, importer.dependencies, { importerId, modulesDir: importerModulesDir });
    addLinkedDependencies(dependencies, importer.optionalDependencies, { importerId, modulesDir: importerModulesDir });
    addLinkedDependencies(dependencies, importer.devDependencies, { importerId, modulesDir: importerModulesDir });
    addPackage(importerPackageId, importerDir, dependencies);
  }
  for (const [graphKey, node] of Object.entries(opts3.graph).sort(([a2], [b]) => compareStrings(a2, b))) {
    const dependencies = /* @__PURE__ */ new Map([[node.name, packageIdsByGraphKey.get(graphKey)]]);
    addGraphDependencies(dependencies, node.children);
    const pkgSnapshot = opts3.lockfile.packages?.[node.depPath];
    if (pkgSnapshot) {
      const packageModulesDir = isLoose ? joinPath2(node.dir, "node_modules") : void 0;
      addLinkedDependencies(dependencies, pkgSnapshot.dependencies, { modulesDir: packageModulesDir });
      addLinkedDependencies(dependencies, pkgSnapshot.optionalDependencies, { modulesDir: packageModulesDir });
    }
    addPackage(packageIdsByGraphKey.get(graphKey), node.dir, dependencies);
  }
  if (isLoose) {
    for (const [id, packageDir] of packageDirsById) {
      packages[id].dependencies = serializeDependencies(new Map([
        ...Object.entries(packages[id].dependencies),
        ...physicalDependencies(packageDir, packageLocationsByModulesDir)
      ]));
    }
  }
  return {
    packages: Object.fromEntries(Object.entries(packages).sort(([a2], [b]) => compareStrings(a2, b)))
  };
  function addDirectDependencies(dependencies, deps) {
    for (const [alias, graphKey] of Object.entries(deps ?? {}).sort(([a2], [b]) => compareStrings(a2, b))) {
      const packageId = packageIdsByGraphKey.get(graphKey);
      if (packageId)
        dependencies.set(alias, packageId);
    }
  }
  function addGraphDependencies(dependencies, deps) {
    for (const [alias, graphKey] of Object.entries(deps ?? {}).sort(([a2], [b]) => compareStrings(a2, b))) {
      const packageId = packageIdsByGraphKey.get(graphKey);
      if (packageId)
        dependencies.set(alias, packageId);
    }
  }
  function addLinkedDependencies(dependencies, deps, linkedOpts = {}) {
    for (const [alias, ref] of Object.entries(deps ?? {}).sort(([a2], [b]) => compareStrings(a2, b))) {
      if (!ref.startsWith("link:"))
        continue;
      const target2 = resolveLinkTarget2(opts3.lockfileDir, linkedOpts.importerId, ref);
      const targetId = opts3.packageIdStrategy === "path" ? graphPackageId(target2.dir, opts3) : target2.id;
      addExternalLinkPackage({
        ...target2,
        id: targetId
      });
      dependencies.set(alias, targetId);
      if (linkedOpts.modulesDir) {
        addDependencyLocation(linkedOpts.modulesDir, alias, targetId);
      }
    }
  }
}
function resolveLinkTarget2(lockfileDir, importerId, ref) {
  const linkPath = ref.slice(5);
  const pathUtils = getPathUtils(lockfileDir, linkPath);
  const importerDir = pathUtils.resolve(lockfileDir, importerId ?? ".");
  const dir = pathUtils.isAbsolute(linkPath) ? linkPath : pathUtils.resolve(importerDir, linkPath);
  const relativeId = relativePath(lockfileDir, dir);
  return {
    id: relativeId == null || relativeId.startsWith("..") ? `link:${(0, import_normalize_path8.default)(dir)}` : relativeId,
    dir
  };
}
function toRelativeUrl(from5, to) {
  const toIsWindows = isWindowsAbsolutePath(to);
  if (toIsWindows !== isWindowsAbsolutePath(from5)) {
    return pathToFileURL2(to, { windows: toIsWindows }).href;
  }
  const pathUtils = getPathUtils(from5, to);
  const relative2 = pathUtils.relative(from5, to);
  if (pathUtils.isAbsolute(relative2)) {
    return pathToFileURL2(to, { windows: pathUtils === path118.win32 }).href;
  }
  const normalizedRelativePath = (0, import_normalize_path8.default)(relative2) || ".";
  if (normalizedRelativePath === "." || normalizedRelativePath === ".." || normalizedRelativePath.startsWith("./") || normalizedRelativePath.startsWith("../")) {
    return normalizedRelativePath;
  }
  return `./${normalizedRelativePath}`;
}
function getNodeModulesPath(packageLocation) {
  const segments = (0, import_normalize_path8.default)(packageLocation).split("/");
  const nodeModulesIndex = segments.lastIndexOf("node_modules");
  if (nodeModulesIndex === -1)
    return void 0;
  return segments.slice(0, nodeModulesIndex + 1).join("/");
}
function addPackageToModulesDir(packageLocationsByModulesDir, modulesDir, packageName, packageId) {
  const normalizedModulesDir = (0, import_normalize_path8.default)(modulesDir);
  let packageLocations = packageLocationsByModulesDir.get(normalizedModulesDir);
  if (packageLocations == null) {
    packageLocations = /* @__PURE__ */ new Map();
    packageLocationsByModulesDir.set(normalizedModulesDir, packageLocations);
  }
  packageLocations.set(packageName, packageId);
}
function physicalDependencies(packageDir, packageLocationsByModulesDir) {
  const dependencies = /* @__PURE__ */ new Map();
  const pathUtils = getPathUtils(packageDir);
  let currentPath = packageDir;
  while (true) {
    const modulesDir = (0, import_normalize_path8.default)(pathUtils.join(currentPath, "node_modules"));
    const packageLocations = packageLocationsByModulesDir.get(modulesDir);
    if (packageLocations) {
      for (const [dependencyName, packageId] of Array.from(packageLocations).sort(([a2], [b]) => compareStrings(a2, b))) {
        if (!dependencies.has(dependencyName)) {
          dependencies.set(dependencyName, packageId);
        }
      }
    }
    const parentPath = pathUtils.dirname(currentPath);
    if (parentPath === currentPath)
      break;
    currentPath = parentPath;
  }
  return dependencies;
}
function serializeDependencies(dependencies) {
  return Object.fromEntries(Array.from(dependencies).sort(([a2], [b]) => compareStrings(a2, b)));
}
function graphNodePackageId(node, opts3) {
  if (opts3.packageIdStrategy === "depPath")
    return node.depPath;
  return graphPackageId(node.dir, opts3);
}
function graphPackageId(packageDir, opts3) {
  const relativeId = relativePath(opts3.rootModulesDir, packageDir);
  if (relativeId == null)
    return `link:${(0, import_normalize_path8.default)(packageDir)}`;
  return relativeId === ".." ? "." : relativeId;
}
function resolvePath3(from5, ...segments) {
  return getPathUtils(from5, ...segments).resolve(from5, ...segments);
}
function joinPath2(from5, ...segments) {
  return getPathUtils(from5, ...segments).join(from5, ...segments);
}
function relativePath(from5, to) {
  const pathUtils = getPathUtils(from5, to);
  const relative2 = pathUtils.relative(from5, to);
  if (pathUtils.isAbsolute(relative2))
    return void 0;
  return (0, import_normalize_path8.default)(relative2) || ".";
}
function getPathUtils(...paths3) {
  return paths3.some(isWindowsAbsolutePath) ? path118.win32 : path118;
}
function isWindowsAbsolutePath(pathLike) {
  return WINDOWS_ABSOLUTE_PATH_REGEXP.test(pathLike);
}
function compareStrings(a2, b) {
  return a2 < b ? -1 : a2 > b ? 1 : 0;
}
var import_normalize_path8, PACKAGE_MAP_FILENAME, WINDOWS_ABSOLUTE_PATH_REGEXP;
var init_packageMap = __esm({
  "../lockfile/to-pnp/lib/packageMap.js"() {
    "use strict";
    init_lib68();
    init_lib73();
    import_normalize_path8 = __toESM(require_normalize_path(), 1);
    PACKAGE_MAP_FILENAME = ".package-map.json";
    WINDOWS_ABSOLUTE_PATH_REGEXP = /^(?:[a-z]:[\\/]|[/\\]{2}[^/\\])/i;
  }
});

// ../lockfile/to-pnp/lib/index.js
import { promises as fs74 } from "node:fs";
import path119 from "node:path";
async function writePnpFile(lockfile, opts3) {
  const packageRegistry = lockfileToPackageRegistry(lockfile, opts3);
  const loaderFile = (0, import_pnp.generateInlinedScript)({
    dependencyTreeRoots: [],
    ignorePattern: void 0,
    packageRegistry,
    pnpZipBackend: "libzip",
    shebang: void 0
  });
  await fs74.writeFile(path119.join(opts3.lockfileDir, ".pnp.cjs"), loaderFile, "utf8");
}
function lockfileToPackageRegistry(lockfile, opts3) {
  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 = opts3.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);
    }
    const pkgModulesDir = path119.join(opts3.virtualStoreDir, depPathToFilename(relDepPath, opts3.virtualStoreDirMaxLength), "node_modules");
    let packageLocation = (0, import_normalize_path9.default)(path119.relative(opts3.lockfileDir, safeJoinModulesDir(pkgModulesDir, 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, path119.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_path9;
var init_lib119 = __esm({
  "../lockfile/to-pnp/lib/index.js"() {
    "use strict";
    init_lib68();
    init_lib106();
    init_lib73();
    import_pnp = __toESM(require_lib25(), 1);
    import_normalize_path9 = __toESM(require_normalize_path(), 1);
    init_packageMap();
  }
});

// ../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 = parse9(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_lib68();
  }
});

// ../installing/deps-restorer/lib/linkHoistedModules.js
import path120 from "node:path";
async function linkHoistedModules(storeController, graph, prevGraph, hierarchy, opts3) {
  const dirsToRemove = difference_default(Object.keys(prevGraph), Object.keys(graph));
  statsLogger.debug({
    prefix: opts3.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, {
      ...opts3,
      nodeVersion,
      warn
    });
  }));
}
async function tryRemoveDir(dir) {
  removalLogger.debug(dir);
  try {
    await rimraf(dir);
  } catch (err2) {
  }
}
async function linkAllPkgsInOrder(storeController, graph, hierarchy, parentDir, opts3) {
  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 (err2) {
        if (depNode.optional)
          return;
        throw err2;
      }
      depNode.requiresBuild = filesResponse.requiresBuild;
      let sideEffectsCacheKey;
      if (opts3.sideEffectsCacheRead && filesResponse.sideEffectsMaps && !isEmpty_default(filesResponse.sideEffectsMaps)) {
        if (opts3.allowBuild?.(depNode.depPath) === true) {
          sideEffectsCacheKey = calcDepState(graph, opts3.depsStateCache, dir, {
            includeDepGraphHash: !opts3.ignoreScripts && depNode.requiresBuild,
            // true when is built
            patchFileHash: depNode.patch?.hash,
            supportedArchitectures: opts3.supportedArchitectures,
            nodeVersion: opts3.nodeVersion
          });
        }
      }
      await limitLinking2(async () => {
        const { importMethod, isBuilt } = await storeController.importPackage(depNode.dir, {
          filesResponse,
          force: true,
          disableRelinkLocalDirDeps: opts3.disableRelinkLocalDirDeps,
          keepModulesDir: true,
          requiresBuild: depNode.patch != null || depNode.requiresBuild,
          sideEffectsCacheKey
        });
        if (importMethod) {
          reportPackageImported({
            method: importMethod,
            requester: opts3.lockfileDir,
            to: depNode.dir
          });
        }
        depNode.isBuilt = isBuilt;
      });
    }
    return linkAllPkgsInOrder(storeController, graph, deps, dir, opts3);
  }));
  const modulesDir = path120.join(parentDir, "node_modules");
  const binsDir = path120.join(modulesDir, ".bin");
  await linkBins(modulesDir, binsDir, {
    allowExoticManifests: true,
    preferSymlinkedExecutables: opts3.preferSymlinkedExecutables,
    warn: opts3.warn
  });
}
var limitLinking2;
var init_linkHoistedModules = __esm({
  "../installing/deps-restorer/lib/linkHoistedModules.js"() {
    "use strict";
    init_lib16();
    init_lib6();
    init_lib74();
    init_lib3();
    init_rimraf();
    init_p_limit();
    init_es();
    limitLinking2 = pLimit(16);
  }
});

// ../../../../../setup-pnpm/store/v11/links/@yarnpkg/nm/4.1.0/29f4866e5f0cd303b32a65cb46579ee0ace91339f2dc9374edc274d4c8ca6dc0/node_modules/@yarnpkg/nm/lib/hoist.js
var require_hoist = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@yarnpkg/nm/4.1.0/29f4866e5f0cd303b32a65cb46579ee0ace91339f2dc9374edc274d4c8ca6dc0/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, opts3 = {}) => {
      const debugLevel = opts3.debugLevel || Number(process.env.NM_DEBUG_LEVEL || DebugLevel.NONE);
      const check2 = opts3.check || debugLevel >= DebugLevel.INTENSIVE_CHECK;
      const hoistingLimits = opts3.hoistingLimits || /* @__PURE__ */ new Map();
      const options = { check: check2, 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 clone4 = {
        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 = clone4.dependencies.get(name);
      if (selfDep && selfDep.ident == clone4.ident)
        clone4.dependencies.set(name, clone4);
      parent.dependencies.set(clone4.name, clone4);
      return clone4;
    };
    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((x3) => prettyPrintLocator(x3)).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((x3) => prettyPrintLocator(x3.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((x3) => prettyPrintLocator(x3)).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((x3) => prettyPrintLocator(x3.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((x3) => prettyPrintLocator(x3.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((x3) => getAliasedLocator(x3));
      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((x3) => prettyPrintLocator(x3.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 getHoistingLimits(lockfile, mode) {
  if (!mode || mode === "none")
    return void 0;
  const hoistingLimits = /* @__PURE__ */ new Map();
  const rootHoistingLimit = /* @__PURE__ */ new Set();
  for (const [importerId, importer] of Object.entries(lockfile.importers)) {
    const isWorkspaceRoot = importerId === ".";
    const encodedId = encodeURIComponent(importerId);
    if (!isWorkspaceRoot) {
      rootHoistingLimit.add(encodedId);
      if (mode !== "dependencies") {
        continue;
      }
    }
    const reference = isWorkspaceRoot ? "" : `workspace:${importerId}`;
    const hoistingLimit = isWorkspaceRoot ? rootHoistingLimit : /* @__PURE__ */ new Set();
    hoistingLimits.set(`${encodedId}@${reference}`, hoistingLimit);
    for (const deps of [importer.dependencies, importer.devDependencies, importer.optionalDependencies]) {
      if (!deps)
        continue;
      for (const dep of Object.keys(deps)) {
        hoistingLimit.add(dep);
      }
    }
  }
  return hoistingLimits;
}
function hoist2(lockfile, opts3) {
  const nodes = /* @__PURE__ */ new Map();
  const ctx = {
    autoInstallPeers: opts3?.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(opts3?.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 hoistingLimits = getHoistingLimits(lockfile, opts3?.hoistingLimits);
  const hoisterResult = (0, import_hoist.hoist)(node, { ...opts3, hoistingLimits });
  if (opts3?.externalDependencies) {
    for (const hoistedDep of hoisterResult.dependencies.values()) {
      if (opts3.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_lib120 = __esm({
  "../installing/linking/real-hoist/lib/index.js"() {
    "use strict";
    init_lib68();
    init_lib2();
    init_lib73();
    import_hoist = __toESM(require_hoist(), 1);
  }
});

// ../installing/deps-restorer/lib/lockfileToHoistedDepGraph.js
import path121 from "node:path";
async function lockfileToHoistedDepGraph(lockfile, currentLockfile, opts3) {
  let prevGraph;
  if (currentLockfile?.packages != null) {
    prevGraph = (await _lockfileToHoistedDepGraph(currentLockfile, {
      ...opts3,
      force: true,
      skipped: /* @__PURE__ */ new Set()
    })).graph;
  } else {
    prevGraph = {};
  }
  return {
    ...await _lockfileToHoistedDepGraph(lockfile, opts3),
    prevGraph
  };
}
async function _lockfileToHoistedDepGraph(lockfile, opts3) {
  const tree = hoist2(lockfile, {
    hoistingLimits: opts3.hoistingLimits,
    externalDependencies: opts3.externalDependencies,
    autoInstallPeers: opts3.autoInstallPeers
  });
  const graph = {};
  const modulesDir = pathAbsolute(opts3.modulesDir ?? "node_modules", opts3.lockfileDir);
  const fetchDepsOpts = {
    ...opts3,
    lockfile,
    graph,
    pkgLocationsByDepPath: {},
    injectionTargetsByDepPath: /* @__PURE__ */ new Map(),
    hoistedLocations: {}
  };
  const hierarchy = {
    [opts3.lockfileDir]: await fetchDeps(fetchDepsOpts, modulesDir, tree.dependencies)
  };
  const directDependenciesByImporterId = {
    ".": directDepsMap(Object.keys(hierarchy[opts3.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 = path121.join(opts3.lockfileDir, importerId);
      const modulesDir2 = path121.join(projectDir, "node_modules");
      const nextHierarchy = await fetchDeps(fetchDepsOpts, modulesDir2, rootDep.dependencies);
      hierarchy[projectDir] = nextHierarchy;
      const importer = lockfile.importers[importerId];
      const importerDir = path121.join(opts3.lockfileDir, importerId);
      symlinkedDirectDependenciesByImporterId[importerId] = pickLinkedDirectDeps(importer, importerDir, opts3.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] = path121.resolve(importerDir, ref.slice(5));
    }
  }
  return directDeps;
}
async function fetchDeps(opts3, modules, deps) {
  const depHierarchy = {};
  await Promise.all(Array.from(deps).map(async (dep) => {
    const depPath = Array.from(dep.references)[0];
    if (opts3.skipped.has(depPath) || depPath.startsWith("workspace:"))
      return;
    const pkgSnapshot = opts3.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 (!opts3.force && packageIsInstallable(packageId, pkg, {
      // An incompatibility inside an `optionalDependencies` subtree is
      // reported, not fatal — see `filterLockfileByImportersAndEngine`,
      // which classifies these dep paths.
      engineStrict: opts3.engineStrict && pkgSnapshot.optional !== true,
      lockfileDir: opts3.lockfileDir,
      nodeVersion: opts3.nodeVersion,
      optional: !opts3.requiredDepPaths.has(depPath),
      supportedArchitectures: opts3.supportedArchitectures
    }) === false) {
      opts3.skipped.add(depPath);
      return;
    }
    const isDirectoryDep = "directory" in pkgSnapshot.resolution && pkgSnapshot.resolution.directory != null;
    if (isDirectoryDep && opts3.ignoreLocalPackages) {
      logger.info({
        message: `Skipping local dependency ${pkgName}@${pkgVersion} (file: protocol)`,
        prefix: opts3.lockfileDir
      });
      return;
    }
    const dir = safeJoinModulesDir(modules, dep.name);
    const depLocation = path121.relative(opts3.lockfileDir, dir);
    const resolution = pkgSnapshotToResolution(depPath, pkgSnapshot, opts3.registries);
    let fetchResponse;
    const skipFetch = opts3.currentHoistedLocations?.[depPath]?.includes(depLocation) && await dirHasPackageJsonWithVersion(path121.join(opts3.lockfileDir, depLocation), pkgVersion);
    const pkgResolution = {
      id: packageId,
      resolution,
      name: pkgName,
      version: pkgVersion
    };
    if (skipFetch) {
      const { filesIndexFile } = opts3.storeController.getFilesIndexFilePath({
        ignoreScripts: opts3.ignoreScripts,
        pkg: pkgResolution
      });
      fetchResponse = { filesIndexFile };
    } else {
      try {
        fetchResponse = opts3.storeController.fetchPackage({
          allowBuild: opts3.allowBuild,
          force: false,
          lockfileDir: opts3.lockfileDir,
          ignoreScripts: opts3.ignoreScripts,
          pkg: pkgResolution,
          supportedArchitectures: opts3.supportedArchitectures
        });
        if (fetchResponse instanceof Promise)
          fetchResponse = await fetchResponse;
      } catch (err2) {
        if (pkgSnapshot.optional)
          return;
        throw err2;
      }
    }
    opts3.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(opts3.patchedDependencies, pkgName, pkgVersion),
      resolution: pkgSnapshot.resolution
    };
    if (!opts3.pkgLocationsByDepPath[depPath]) {
      opts3.pkgLocationsByDepPath[depPath] = [];
    }
    opts3.pkgLocationsByDepPath[depPath].push(dir);
    if ("directory" in pkgSnapshot.resolution && pkgSnapshot.resolution.directory != null) {
      const locations = opts3.injectionTargetsByDepPath.get(depPath);
      if (locations) {
        locations.push(dir);
      } else {
        opts3.injectionTargetsByDepPath.set(depPath, [dir]);
      }
    }
    depHierarchy[dir] = await fetchDeps(opts3, path121.join(dir, "node_modules"), dep.dependencies);
    if (!opts3.hoistedLocations[depPath]) {
      opts3.hoistedLocations[depPath] = [];
    }
    opts3.hoistedLocations[depPath].push(depLocation);
    opts3.graph[dir].children = getChildren(pkgSnapshot, opts3.pkgLocationsByDepPath, opts3);
  }));
  return depHierarchy;
}
async function dirHasPackageJsonWithVersion(dir, expectedVersion) {
  if (!expectedVersion)
    return pathExists2(dir);
  try {
    const manifest = await safeReadPackageJsonFromDir(dir);
    return manifest?.version === expectedVersion;
  } catch (err2) {
    if (err2?.code === "ENOENT") {
      return pathExists2(dir);
    }
    throw err2;
  }
}
function getChildren(pkgSnapshot, pkgLocationsByDepPath, opts3) {
  const allDeps = {
    ...pkgSnapshot.dependencies,
    ...opts3.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_lib40();
    init_lib68();
    init_lib106();
    init_lib120();
    init_lib73();
    init_lib3();
    init_lib108();
    init_lib5();
    init_path_absolute();
    init_path_exists();
  }
});

// ../installing/deps-restorer/lib/index.js
import { promises as fs75 } from "node:fs";
import path122 from "node:path";
async function headlessInstall(opts3) {
  const reporter = opts3.reporter;
  if (reporter != null && typeof reporter === "function") {
    streamParser.on("data", reporter);
  }
  const lockfileDir = opts3.lockfileDir;
  const wantedLockfile = opts3.wantedLockfile ?? await readWantedLockfile(lockfileDir, {
    ignoreIncompatible: false,
    useGitBranchLockfile: opts3.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 = opts3.modulesDir ?? "node_modules";
  const rootModulesDir = await realpathMissing(pathAbsolute(modulesDir, lockfileDir));
  const internalPnpmDir = path122.join(rootModulesDir, ".pnpm");
  const currentLockfile = opts3.currentLockfile ?? await readCurrentLockfile(internalPnpmDir, { ignoreIncompatible: false });
  const virtualStoreDir = pathAbsolute(opts3.virtualStoreDir ?? path122.join(modulesDir, ".pnpm"), lockfileDir);
  const hoistedModulesDir = path122.join(opts3.enableGlobalVirtualStore ? internalPnpmDir : virtualStoreDir, "node_modules");
  const publicHoistedModulesDir = rootModulesDir;
  const selectedProjects = Object.values(pick_default(opts3.selectedProjectDirs, opts3.allProjects));
  const scriptsOpts = {
    optional: false,
    extraBinPaths: opts3.extraBinPaths,
    extraNodePaths: opts3.extraNodePaths,
    preferSymlinkedExecutables: opts3.preferSymlinkedExecutables,
    extraEnv: opts3.extraEnv,
    configByUri: opts3.configByUri,
    resolveSymlinksInInjectedDirs: opts3.resolveSymlinksInInjectedDirs,
    scriptsPrependNodePath: opts3.scriptsPrependNodePath,
    scriptShell: opts3.scriptShell,
    shellEmulator: opts3.shellEmulator,
    stdio: opts3.ownLifecycleHooksStdio ?? "inherit",
    storeController: opts3.storeController,
    unsafePerm: opts3.unsafePerm || false,
    userAgent: opts3.userAgent
  };
  if (opts3.virtualStoreOnly && opts3.enableModulesDir === false && !opts3.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 = opts3.virtualStoreOnly === true;
  const skipped = opts3.skipped || /* @__PURE__ */ new Set();
  const filterOpts = {
    include: opts3.include,
    registries: opts3.registries,
    skipped,
    skipRuntimes: opts3.skipRuntimes,
    currentEngine: opts3.currentEngine,
    engineStrict: opts3.engineStrict,
    failOnMissingDependencies: true,
    includeIncompatiblePackages: opts3.force,
    lockfileDir,
    supportedArchitectures: opts3.supportedArchitectures
  };
  let removed = 0;
  if (opts3.nodeLinker !== "hoisted") {
    if (currentLockfile != null && !opts3.ignorePackageManifest) {
      const removedDepPaths = await prune2(selectedProjects, {
        currentLockfile,
        dedupeDirectDeps: opts3.dedupeDirectDeps,
        dryRun: false,
        hoistedDependencies: opts3.hoistedDependencies,
        hoistedModulesDir: opts3.hoistPattern == null ? void 0 : hoistedModulesDir,
        include: opts3.include,
        lockfileDir,
        pruneStore: opts3.pruneStore,
        pruneVirtualStore: opts3.pruneVirtualStore,
        publicHoistedModulesDir: opts3.publicHoistPattern == null ? void 0 : publicHoistedModulesDir,
        skipped,
        storeController: opts3.storeController,
        virtualStoreDir,
        virtualStoreDirMaxLength: opts3.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 = opts3.ignorePackageManifest === true || opts3.nodeLinker === "hoisted" ? Object.keys(wantedLockfile.importers) : selectedProjects.map(({ id }) => id);
  const { lockfile: filteredLockfile, selectedImporterIds: importerIds, requiredDepPaths } = filterLockfileByImportersAndEngine(wantedLockfile, initialImporterIds, filterOpts);
  if (opts3.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] = path122.isAbsolute(linkPath) ? `link:${path122.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(opts3.allProjects)) {
      if (missingIds.includes(project.id)) {
        selectedProjects.push(project);
      }
    }
  }
  if (opts3.enableGlobalVirtualStore) {
    opts3.allowBuilds ??= {};
  }
  const allowBuild = createAllowBuildFunction(opts3);
  const lockfileToDepGraphOpts = {
    ...opts3,
    allowBuild,
    importerIds,
    lockfileDir,
    requiredDepPaths,
    skipped,
    virtualStoreDir,
    nodeVersion: opts3.currentEngine.nodeVersion,
    pnpmVersion: opts3.currentEngine.pnpmVersion,
    supportedArchitectures: opts3.supportedArchitectures,
    includeUnchangedDeps: !equals_default(opts3.currentHoistPattern ?? [], opts3.hoistPattern ?? []) || !equals_default(opts3.currentPublicHoistPattern ?? [], opts3.publicHoistPattern ?? []) || opts3.enableGlobalVirtualStore === true && !equals_default(opts3.modulesFile?.allowBuilds ?? {}, opts3.allowBuilds ?? {})
  };
  const { directDependenciesByImporterId, graph, hierarchy, hoistedLocations, injectionTargetsByDepPath, prevGraph, symlinkedDirectDependenciesByImporterId } = await (opts3.nodeLinker === "hoisted" ? lockfileToHoistedDepGraph(filteredLockfile, currentLockfile, lockfileToDepGraphOpts) : lockfileToDepGraph2(filteredLockfile, opts3.force ? null : currentLockfile, lockfileToDepGraphOpts));
  if (opts3.enablePnp) {
    const importerNames = Object.fromEntries(selectedProjects.map(({ manifest, id }) => [id, manifest.name ?? id]));
    await writePnpFile(filteredLockfile, {
      importerNames,
      lockfileDir,
      virtualStoreDir,
      virtualStoreDirMaxLength: opts3.virtualStoreDirMaxLength,
      registries: opts3.registries
    });
  }
  const depNodes = Object.values(graph);
  const added = depNodes.filter(({ fetching }) => fetching).length;
  const skipGvsInternalLinking = opts3.enableGlobalVirtualStore === true && added === 0;
  statsLogger.debug({
    added,
    prefix: lockfileDir
  });
  function warn(message) {
    logger.info({
      message,
      prefix: lockfileDir
    });
  }
  let newHoistedDependencies;
  let linkedToRoot = 0;
  if (opts3.nodeLinker === "hoisted" && hierarchy && prevGraph) {
    if (!skipPostImportLinking) {
      await linkHoistedModules(opts3.storeController, graph, prevGraph, hierarchy, {
        allowBuild,
        depsStateCache,
        disableRelinkLocalDirDeps: opts3.disableRelinkLocalDirDeps,
        force: opts3.force,
        ignoreScripts: opts3.ignoreScripts,
        lockfileDir: opts3.lockfileDir,
        preferSymlinkedExecutables: opts3.preferSymlinkedExecutables,
        sideEffectsCacheRead: opts3.sideEffectsCacheRead,
        supportedArchitectures: opts3.supportedArchitectures
      });
      stageLogger.debug({
        prefix: lockfileDir,
        stage: "importing_done"
      });
      linkedToRoot = await symlinkDirectDependencies({
        directDependenciesByImporterId: symlinkedDirectDependenciesByImporterId,
        dedupe: Boolean(opts3.dedupeDirectDeps),
        filteredLockfile,
        lockfileDir,
        projects: selectedProjects,
        registries: opts3.registries,
        symlink: opts3.symlink
      });
    }
  } else if (opts3.enableModulesDir !== false || opts3.enableGlobalVirtualStore) {
    if (!skipGvsInternalLinking) {
      if (opts3.enableModulesDir !== false) {
        await Promise.all(depNodes.map(async (depNode) => fs75.mkdir(depNode.modules, { recursive: true })));
      }
      await Promise.all([
        opts3.symlink === false || opts3.enableModulesDir === false ? Promise.resolve() : linkAllModules(depNodes, {
          currentLockfile: opts3.relinkChangedDependenciesOnly ? currentLockfile : void 0,
          optional: opts3.include.optionalDependencies,
          wantedLockfile: filteredLockfile
        }),
        linkAllPkgs(opts3.storeController, depNodes, {
          allowBuild,
          force: opts3.force,
          disableRelinkLocalDirDeps: opts3.disableRelinkLocalDirDeps,
          depGraph: graph,
          depsStateCache,
          enableGlobalVirtualStore: opts3.enableGlobalVirtualStore,
          ignoreScripts: opts3.ignoreScripts,
          lockfileDir: opts3.lockfileDir,
          sideEffectsCacheRead: opts3.sideEffectsCacheRead,
          storeDir: opts3.storeDir,
          supportedArchitectures: opts3.supportedArchitectures
        })
      ]);
    }
    stageLogger.debug({
      prefix: lockfileDir,
      stage: "importing_done"
    });
    if (opts3.ignorePackageManifest !== true && !skipPostImportLinking && (opts3.hoistPattern != null || opts3.publicHoistPattern != null)) {
      newHoistedDependencies = {
        ...opts3.hoistedDependencies,
        ...await hoist({
          extraNodePath: opts3.extraNodePaths,
          graph,
          directDepsByImporterId: Object.fromEntries(Object.entries(directDependenciesByImporterId).map(([projectId, deps]) => [
            projectId,
            new Map(Object.entries(deps))
          ])),
          importerIds,
          preferSymlinkedExecutables: opts3.preferSymlinkedExecutables,
          privateHoistedModulesDir: hoistedModulesDir,
          privateHoistPattern: opts3.hoistPattern ?? [],
          publicHoistedModulesDir,
          publicHoistPattern: opts3.publicHoistPattern ?? [],
          virtualStoreDir,
          virtualStoreDirMaxLength: opts3.virtualStoreDirMaxLength,
          hoistedWorkspacePackages: opts3.hoistWorkspacePackages ? Object.values(opts3.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: opts3.skipped
        })
      };
    } else {
      newHoistedDependencies = {};
    }
    if (!skipPostImportLinking && !skipGvsInternalLinking) {
      await linkAllBins2(graph, {
        extraNodePaths: opts3.extraNodePaths,
        optional: opts3.include.optionalDependencies,
        preferSymlinkedExecutables: opts3.preferSymlinkedExecutables,
        warn
      });
    }
    if (currentLockfile != null && !equals_default(importerIds.sort(), Object.keys(filteredLockfile.importers).sort())) {
      Object.assign(filteredLockfile.packages, currentLockfile.packages);
    }
    if (!opts3.ignorePackageManifest && !skipPostImportLinking) {
      linkedToRoot = await symlinkDirectDependencies({
        dedupe: Boolean(opts3.dedupeDirectDeps),
        directDependenciesByImporterId,
        filteredLockfile,
        lockfileDir,
        projects: selectedProjects,
        registries: opts3.registries,
        symlink: opts3.symlink
      });
    }
  }
  const shouldWritePackageMap = opts3.enableModulesDir !== false && opts3.nodeLinker !== "pnp" && !opts3.virtualStoreOnly;
  if (shouldWritePackageMap) {
    const importerNames = Object.fromEntries(selectedProjects.map(({ manifest, id }) => [id, manifest.name]));
    if (opts3.nodeLinker === "hoisted") {
      await writePackageMapFromDependenciesGraph({
        directDependenciesByImporterId,
        graph,
        importerNames,
        lockfile: filteredLockfile,
        lockfileDir,
        packageMapType: opts3.nodePackageMapType,
        packageIdStrategy: "path",
        rootModulesDir
      });
    } else {
      await writePackageMap(filteredLockfile, {
        importerNames,
        lockfileDir,
        locationByDepPath: Object.fromEntries(Object.values(graph).map((node) => [node.depPath, node.dir])),
        packageMapType: opts3.nodePackageMapType,
        rootModulesDir,
        virtualStoreDir,
        virtualStoreDirMaxLength: opts3.virtualStoreDirMaxLength
      });
    }
  }
  if (opts3.ignoreScripts) {
    for (const { id, manifest } of selectedProjects) {
      if (opts3.ignoreScripts && manifest?.scripts != null && (manifest.scripts.preinstall ?? manifest.scripts.prepublish ?? manifest.scripts.install ?? manifest.scripts.postinstall ?? manifest.scripts.prepare)) {
        opts3.pendingBuilds.push(id);
      }
    }
    opts3.pendingBuilds = opts3.pendingBuilds.concat(depNodes.filter(({ requiresBuild }) => requiresBuild).map(({ depPath }) => depPath));
  }
  let ignoredBuilds;
  if ((!opts3.ignoreScripts || Object.keys(opts3.patchedDependencies ?? {}).length > 0) && opts3.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 = [...opts3.extraBinPaths ?? []];
    if (opts3.hoistPattern != null) {
      extraBinPaths.unshift(path122.join(hoistedModulesDir, ".bin"));
    }
    let extraEnv = opts3.extraEnv;
    if (opts3.enablePnp) {
      extraEnv = {
        ...extraEnv,
        ...makeNodeRequireOption(path122.join(opts3.lockfileDir, ".pnp.cjs"), extraEnv)
      };
    }
    if (opts3.nodeExperimentalPackageMap && shouldWritePackageMap) {
      extraEnv = {
        ...extraEnv,
        ...makeNodePackageMapOption(path122.join(rootModulesDir, PACKAGE_MAP_FILENAME), extraEnv)
      };
    }
    await opts3.verifyLockfile?.();
    ignoredBuilds = (await buildModules(graph, Array.from(directNodes), {
      allowBuild,
      childConcurrency: opts3.childConcurrency,
      extraBinPaths,
      extraEnv,
      depsStateCache,
      ignoreScripts: opts3.ignoreScripts,
      hoistedLocations,
      lockfileDir,
      optional: opts3.include.optionalDependencies,
      preferSymlinkedExecutables: opts3.preferSymlinkedExecutables,
      rootModulesDir: virtualStoreDir,
      scriptsPrependNodePath: opts3.scriptsPrependNodePath,
      scriptShell: opts3.scriptShell,
      shellEmulator: opts3.shellEmulator,
      sideEffectsCacheWrite: opts3.sideEffectsCacheWrite,
      storeController: opts3.storeController,
      unsafePerm: opts3.unsafePerm,
      userAgent: opts3.userAgent,
      enableGlobalVirtualStore: opts3.enableGlobalVirtualStore
    })).ignoredBuilds;
    if (opts3.modulesFile?.ignoredBuilds?.size) {
      ignoredBuilds ??= /* @__PURE__ */ new Set();
      for (const ignoredBuild of opts3.modulesFile.ignoredBuilds.values()) {
        if (filteredLockfile.packages?.[ignoredBuild] && !isBuildExplicitlyDisallowed(ignoredBuild, allowBuild)) {
          ignoredBuilds.add(ignoredBuild);
        }
      }
    }
  }
  const projectsToBeBuilt = extendProjectsWithTargetDirs(selectedProjects, injectionTargetsByDepPath);
  if (opts3.enableModulesDir !== false) {
    if (!skipPostImportLinking) {
      const rootProjectDeps = !opts3.dedupeDirectDeps ? {} : directDependenciesByImporterId["."] ?? {};
      if (!opts3.ignorePackageManifest) {
        await Promise.all(selectedProjects.map(async (project) => {
          if (opts3.nodeLinker === "hoisted" || opts3.publicHoistPattern?.length && path122.relative(opts3.lockfileDir, project.rootDir) === "") {
            await linkBinsOfImporter(project, {
              extraNodePaths: opts3.extraNodePaths,
              preferSymlinkedExecutables: opts3.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: opts3.extraNodePaths,
              preferSymlinkedExecutables: opts3.preferSymlinkedExecutables
            });
          }
        }));
      }
    }
    const injectedDeps = {};
    for (const project of projectsToBeBuilt) {
      if (project.targetDirs.length > 0) {
        injectedDeps[project.id] = project.targetDirs.map((targetDir) => path122.relative(opts3.lockfileDir, targetDir));
      }
    }
    await writeModulesManifest(rootModulesDir, {
      hoistedDependencies: newHoistedDependencies,
      hoistPattern: opts3.hoistPattern,
      included: opts3.include,
      injectedDeps,
      ignoredBuilds,
      layoutVersion: LAYOUT_VERSION,
      hoistedLocations,
      nodeLinker: opts3.nodeLinker,
      packageManager: `${opts3.packageManager.name}@${opts3.packageManager.version}`,
      pendingBuilds: opts3.pendingBuilds,
      publicHoistPattern: opts3.publicHoistPattern,
      prunedAt: opts3.pruneVirtualStore === true || opts3.prunedAt == null ? (/* @__PURE__ */ new Date()).toUTCString() : opts3.prunedAt,
      registries: opts3.registries,
      skipped: Array.from(skipped),
      storeDir: opts3.storeDir,
      virtualStoreDir,
      virtualStoreDirMaxLength: opts3.virtualStoreDirMaxLength,
      allowBuilds: opts3.allowBuilds,
      virtualStoreOnly: opts3.virtualStoreOnly
    });
    const currentLockfileDir = path122.join(rootModulesDir, ".pnpm");
    if (opts3.useLockfile) {
      await writeLockfiles({
        wantedLockfileDir: opts3.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 (!opts3.ignoreScripts && !opts3.ignorePackageManifest && !skipPostImportLinking) {
    if (opts3.nodeExperimentalPackageMap && shouldWritePackageMap) {
      scriptsOpts.extraEnv = {
        ...scriptsOpts.extraEnv,
        ...makeNodePackageMapOption(path122.join(rootModulesDir, PACKAGE_MAP_FILENAME), scriptsOpts.extraEnv)
      };
    }
    await opts3.verifyLockfile?.();
    await runLifecycleHooksConcurrently(["preinstall", "install", "postinstall", "preprepare", "prepare", "postprepare"], projectsToBeBuilt, opts3.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, opts3) {
  const projectSnapshot = lockfile.importers[opts3.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 = path122.isAbsolute(ref) ? ref : path122.join(opts3.projectDir, ref);
      const linkedPackage = await (async () => {
        const importerId = getLockfileImporterId(opts3.lockfileDir, packageDir);
        if (opts3.importerManifestsByImporterId[importerId]) {
          return opts3.importerManifestsByImporterId[importerId];
        }
        try {
          return await readProjectManifestOnly(packageDir);
        } catch (err2) {
          if (err2["code"] !== "ERR_PNPM_NO_IMPORTER_MANIFEST_FOUND")
            throw err2;
          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 = opts3.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, opts3) {
  let needsBuildMarkerSrc;
  if (opts3.enableGlobalVirtualStore) {
    needsBuildMarkerSrc = path122.join(opts3.storeDir, ".pnpm-needs-build-marker");
    await fs75.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 (err2) {
      if (depNode.optional)
        return;
      throw err2;
    }
    depNode.requiresBuild = filesResponse.requiresBuild;
    let sideEffectsCacheKey;
    if (opts3.sideEffectsCacheRead && filesResponse.sideEffectsMaps && !isEmpty_default(filesResponse.sideEffectsMaps)) {
      if (opts3.allowBuild?.(depNode.depPath) === true) {
        sideEffectsCacheKey = calcDepState(opts3.depGraph, opts3.depsStateCache, depNode.dir, {
          includeDepGraphHash: !opts3.ignoreScripts && depNode.requiresBuild,
          // true when is built
          patchFileHash: depNode.patch?.hash,
          supportedArchitectures: opts3.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 ?? opts3.force,
      disableRelinkLocalDirDeps: opts3.disableRelinkLocalDirDeps,
      requiresBuild: depNode.patch != null || depNode.requiresBuild,
      safeToSkip: opts3.enableGlobalVirtualStore,
      sideEffectsCacheKey
    });
    if (importMethod) {
      reportPackageImported({
        method: importMethod,
        requester: opts3.lockfileDir,
        to: depNode.dir
      });
    }
    depNode.isBuilt = isBuilt;
    const selfDep = depNode.children[depNode.name];
    if (selfDep) {
      const pkg = opts3.depGraph[selfDep];
      if (!pkg)
        return;
      const targetModulesDir = path122.join(depNode.modules, depNode.name, "node_modules");
      await limitLinking3(async () => symlinkDependency(pkg.dir, targetModulesDir, depNode.name));
    }
  }));
}
async function linkAllBins2(depGraph, opts3) {
  await Promise.all(Object.values(depGraph).map(async (depNode) => limitLinking3(async () => {
    const childrenToLink = opts3.optional ? depNode.children : pickBy_default((_, childAlias) => !depNode.optionalDependencies.has(childAlias), depNode.children);
    const binPath = path122.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: opts3.extraNodePaths,
        preferSymlinkedExecutables: opts3.preferSymlinkedExecutables,
        warn: opts3.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: opts3.extraNodePaths,
        preferSymlinkedExecutables: opts3.preferSymlinkedExecutables
      });
    }
    if (depNode.hasBundledDependencies) {
      const bundledModules = path122.join(depNode.dir, "node_modules");
      await linkBins(bundledModules, binPath, {
        extraNodePaths: opts3.extraNodePaths,
        preferSymlinkedExecutables: opts3.preferSymlinkedExecutables,
        warn: opts3.warn
      });
    }
  })));
}
async function linkAllModules(depNodes, opts3) {
  const changes = await Promise.all(depNodes.map((depNode) => getChangedChildren(depNode, opts3)));
  await Promise.all(changes.flatMap(({ depNode, removedAliases }) => removedAliases.map((alias) => limitModulesDirReads(() => removeObsoleteDependency(depNode.modules, alias)))));
  await symlinkAllModules({
    deps: changes.map(({ children, depNode }) => {
      return {
        children: opts3.optional ? children : pickBy_default((_, childAlias) => !depNode.optionalDependencies.has(childAlias), children),
        modules: depNode.modules,
        name: depNode.name
      };
    })
  });
}
async function getChangedChildren(depNode, opts3) {
  const currentSnapshot = opts3.currentLockfile?.packages?.[depNode.depPath];
  const wantedSnapshot = opts3.wantedLockfile.packages?.[depNode.depPath];
  if (currentSnapshot == null || wantedSnapshot == null) {
    return { children: depNode.children, depNode, removedAliases: [] };
  }
  const currentDependencies = Object.assign(/* @__PURE__ */ Object.create(null), currentSnapshot.dependencies, currentSnapshot.optionalDependencies);
  const wantedDependencies = Object.assign(/* @__PURE__ */ Object.create(null), wantedSnapshot.dependencies, wantedSnapshot.optionalDependencies);
  const changedChildren = Object.fromEntries((await Promise.all(Object.entries(depNode.children).map(async ([alias, childDir]) => {
    if (currentDependencies[alias] !== wantedDependencies[alias] || Object.hasOwn(currentSnapshot.optionalDependencies ?? {}, alias) !== Object.hasOwn(wantedSnapshot.optionalDependencies ?? {}, alias) || !await limitModulesDirReads(() => dependencyLinkMatches(depNode.modules, alias, childDir))) {
      return [alias, childDir];
    }
    return null;
  }))).filter((entry) => entry != null));
  return {
    children: changedChildren,
    depNode,
    removedAliases: Object.keys(currentDependencies).filter((alias) => !Object.hasOwn(wantedDependencies, alias))
  };
}
async function dependencyLinkMatches(modulesDir, alias, childDir) {
  const [linkTarget, expectedTarget] = await Promise.all([
    realpathOrNull(safeJoinModulesDir(modulesDir, alias)),
    realpathOrNull(childDir)
  ]);
  return linkTarget != null && expectedTarget != null && linkTarget === expectedTarget;
}
async function realpathOrNull(filePath) {
  try {
    return await fs75.realpath(filePath);
  } catch (err2) {
    if (typeof err2 === "object" && err2 != null && "code" in err2 && (err2.code === "ENOENT" || err2.code === "ENOTDIR" || err2.code === "ELOOP")) {
      return null;
    }
    throw err2;
  }
}
var limitLinking3, limitModulesDirReads;
var init_lib121 = __esm({
  "../installing/deps-restorer/lib/index.js"() {
    "use strict";
    init_lib16();
    init_lib113();
    init_lib69();
    init_lib();
    init_lib6();
    init_lib114();
    init_lib74();
    init_lib68();
    init_lib2();
    init_lib21();
    init_lib106();
    init_lib115();
    init_lib116();
    init_lib118();
    init_lib77();
    init_lib117();
    init_lib80();
    init_lib119();
    init_lib73();
    init_lib3();
    init_lib5();
    init_lib9();
    init_lib4();
    init_lib15();
    init_p_limit();
    init_path_absolute();
    init_es();
    init_realpath_missing();
    init_extendProjectsWithTargetDirs();
    init_linkHoistedModules();
    init_lockfileToHoistedDepGraph();
    init_extendProjectsWithTargetDirs();
    limitLinking3 = pLimit(16);
    limitModulesDirReads = pLimit(16);
  }
});

// ../../../../../setup-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_lib122 = __esm({
  "../../../../../setup-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_lib34();
    init_lib122();
  }
});

// ../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/gitSpecifiersAreEquivalent.js
function dependencySpecifiersAreEqual(lockfileSpecifier, manifestSpecifier) {
  if (lockfileSpecifier === manifestSpecifier)
    return true;
  if (lockfileSpecifier == null || manifestSpecifier == null)
    return false;
  return gitSpecifiersAreEquivalent(lockfileSpecifier, manifestSpecifier);
}
function gitSpecifiersAreEquivalent(left, right) {
  const normalizedLeft = normalizeGitSpecifier(left);
  if (normalizedLeft == null)
    return false;
  const normalizedRight = normalizeGitSpecifier(right);
  if (normalizedRight == null)
    return false;
  return normalizedLeft === normalizedRight;
}
function normalizeGitSpecifier(specifier) {
  return normalizeShortcut(specifier) ?? normalizeUrl(specifier);
}
function normalizeShortcut(specifier) {
  const split4 = splitCommittish(specifier);
  if (split4 == null)
    return void 0;
  const { repository, committish } = split4;
  let host;
  let path240;
  if (repository.startsWith("github:")) {
    host = "github.com";
    path240 = repository.slice("github:".length);
  } else if (repository.startsWith("gitlab:")) {
    host = "gitlab.com";
    path240 = repository.slice("gitlab:".length);
  } else if (repository.startsWith("bitbucket:")) {
    host = "bitbucket.org";
    path240 = repository.slice("bitbucket:".length);
  } else if (isGithubShorthand(repository)) {
    host = "github.com";
    path240 = repository;
  } else {
    return void 0;
  }
  return normalizeParts(host, path240, committish);
}
function normalizeUrl(specifier) {
  const split4 = splitCommittish(specifier);
  if (split4 == null)
    return void 0;
  const { repository, committish } = split4;
  const schemeEnd = repository.indexOf("://");
  if (schemeEnd === -1)
    return void 0;
  const scheme = repository.slice(0, schemeEnd).toLowerCase();
  if (scheme !== "git" && scheme !== "git+https" && scheme !== "https")
    return void 0;
  const location = repository.slice(schemeEnd + "://".length);
  const slash = location.indexOf("/");
  if (slash === -1)
    return void 0;
  const host = location.slice(0, slash).toLowerCase();
  const path240 = location.slice(slash + 1);
  if (host === "" || host.includes("@") || host.includes("?") || /\s/.test(host))
    return void 0;
  if (scheme === "https" && !KNOWN_HOSTS.has(host) && !path240.endsWith(".git"))
    return void 0;
  return normalizeParts(host, path240, committish);
}
function normalizeParts(host, path240, committish) {
  if (path240 === "" || path240.startsWith("/") || path240.endsWith("/") || path240.includes("//") || path240.includes("@") || path240.includes("?") || /\s/.test(path240) || path240.split("/").some((segment) => segment === "")) {
    return void 0;
  }
  const repositoryPath = path240.endsWith(".git") ? path240.slice(0, -".git".length) : path240;
  if (repositoryPath === "" || repositoryPath.endsWith("/"))
    return void 0;
  return committish != null && committish !== "" ? `git+https://${host}/${repositoryPath}.git#${committish}` : `git+https://${host}/${repositoryPath}.git`;
}
function splitCommittish(specifier) {
  const hashIndex = specifier.indexOf("#");
  if (hashIndex === -1)
    return { repository: specifier, committish: void 0 };
  const committish = specifier.slice(hashIndex + 1);
  if (committish.includes("#"))
    return void 0;
  return { repository: specifier.slice(0, hashIndex), committish };
}
function isGithubShorthand(repository) {
  return !repository.startsWith(".") && !/\s/.test(repository) && !repository.includes(":") && !repository.includes("@") && repository.split("/").length === 2;
}
var KNOWN_HOSTS;
var init_gitSpecifiersAreEquivalent = __esm({
  "../lockfile/verification/lib/gitSpecifiersAreEquivalent.js"() {
    "use strict";
    KNOWN_HOSTS = /* @__PURE__ */ new Set(["github.com", "gitlab.com", "bitbucket.org"]);
  }
});

// ../lockfile/verification/lib/allCatalogsAreUpToDate.js
function allCatalogsAreUpToDate(catalogsConfig, snapshot) {
  return Object.entries(snapshot ?? {}).every(([catalogName, catalog]) => Object.entries(catalog ?? {}).every(([alias, entry]) => dependencySpecifiersAreEqual(entry.specifier, catalogsConfig[catalogName]?.[alias])));
}
var init_allCatalogsAreUpToDate = __esm({
  "../lockfile/verification/lib/allCatalogsAreUpToDate.js"() {
    "use strict";
    init_gitSpecifiersAreEquivalent();
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/p-map/2.1.0/df0d3de43101f40830d68a00cafce7179879fb6ef89f7d99a742e02dad101a9f/node_modules/p-map/index.js
var require_p_map = __commonJS({
  "../../../../../setup-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((resolve4, 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 i4 = currentIndex;
        currentIndex++;
        if (nextItem.done) {
          isIterableDone = true;
          if (resolvingCount === 0) {
            resolve4(ret2);
          }
          return;
        }
        resolvingCount++;
        Promise.resolve(nextItem.value).then((element) => mapper(element, i4)).then(
          (value) => {
            ret2[i4] = value;
            resolvingCount--;
            next2();
          },
          (error) => {
            isRejected = true;
            reject3(error);
          }
        );
      };
      for (let i4 = 0; i4 < concurrency; i4++) {
        next2();
        if (isIterableDone) {
          break;
        }
      }
    });
    module2.exports = pMap2;
    module2.exports.default = pMap2;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/p-every/2.0.0/b58d03574cecb8afa2498411794e16c0fe6afd4a2e66b53663f88d7f8e8ee0fb/node_modules/p-every/index.js
var require_p_every = __commonJS({
  "../../../../../setup-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 EndError = class extends Error {
    };
    var test = (testFunction) => async (element, index2) => {
      const result2 = await testFunction(element, index2);
      if (!result2) {
        throw new EndError();
      }
      return result2;
    };
    var pEvery4 = async (iterable, testFunction, opts3) => {
      try {
        await pMap2(iterable, test(testFunction), opts3);
        return true;
      } catch (error) {
        if (error instanceof EndError) {
          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 path123 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 ? path123.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_semver35.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 = path123.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_semver35.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 index2 = spec.indexOf("@", 1);
    if (index2 === -1)
      return "*";
    return spec.slice(index2 + 1) || "*";
  }
  return spec;
}
var import_p_every, import_semver35, import_version_selector_type6;
var init_linkedPackagesAreUpToDate = __esm({
  "../lockfile/verification/lib/linkedPackagesAreUpToDate.js"() {
    "use strict";
    init_lib68();
    init_lib73();
    init_lib5();
    init_lib9();
    import_p_every = __toESM(require_p_every(), 1);
    import_semver35 = __toESM(require_semver2(), 1);
    import_version_selector_type6 = __toESM(require_version_selector_type(), 1);
  }
});

// ../lockfile/verification/lib/localTarballDepsAreUpToDate.js
import path124 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 = parse9(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 = path124.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_lib34();
    init_lib68();
    init_lib73();
    init_lib9();
    import_p_every2 = __toESM(require_p_every(), 1);
  }
});

// ../lockfile/verification/lib/diffFlatRecords.js
function diffFlatRecords(left, right, areValuesEqual = (a2, b) => a2 === b) {
  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 (!areValuesEqual(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(opts3, importer, pkg) {
  if (!importer)
    return { satisfies: false, detailedReason: "no importer" };
  let existingDeps = { ...pkg.devDependencies, ...pkg.dependencies, ...pkg.optionalDependencies };
  if (opts3?.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 (opts3?.excludeLinksFromLockfile) {
    existingDeps = pickNonLinkedDeps(existingDeps);
    specs = pickNonLinkedDeps(specs);
  }
  const specsDiff = diffFlatRecords(specs, existingDeps, dependencySpecifiersAreEqual);
  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 (opts3?.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] || !dependencySpecifiersAreEqual(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_semver36.default.validRange(importer?.specifiers[depName]))
        continue;
      const version2 = removeSuffix(importerDeps[depName]);
      if (import_semver36.default.valid(version2) && !import_semver36.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_semver36;
var init_satisfiesPackageManifest = __esm({
  "../lockfile/verification/lib/satisfiesPackageManifest.js"() {
    "use strict";
    init_lib68();
    init_lib9();
    init_es();
    import_semver36 = __toESM(require_semver2(), 1);
    init_diffFlatRecords();
    init_gitSpecifiersAreEquivalent();
  }
});

// ../lockfile/verification/lib/allProjectsAreUpToDate.js
async function allProjectsAreUpToDate(projects, opts3) {
  if (!allCatalogsAreUpToDate(opts3.catalogs, opts3.wantedLockfile.catalogs)) {
    return false;
  }
  const manifestsByDir = opts3.workspacePackages ? getWorkspacePackagesByDirectory(opts3.workspacePackages) : {};
  const _satisfiesPackageManifest = satisfiesPackageManifest.bind(null, {
    autoInstallPeers: opts3.autoInstallPeers,
    excludeLinksFromLockfile: opts3.excludeLinksFromLockfile
  });
  const _linkedPackagesAreUpToDate = linkedPackagesAreUpToDate.bind(null, {
    linkWorkspacePackages: opts3.linkWorkspacePackages,
    manifestsByDir,
    workspacePackages: opts3.workspacePackages,
    lockfilePackages: opts3.wantedLockfile.packages,
    lockfileDir: opts3.lockfileDir
  });
  const _localTarballDepsAreUpToDate = localTarballDepsAreUpToDate.bind(null, {
    fileIntegrityCache: /* @__PURE__ */ new Map(),
    lockfilePackages: opts3.wantedLockfile.packages,
    lockfileDir: opts3.lockfileDir
  });
  return import_p_every3.default.default(projects, async (project) => {
    const importer = opts3.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_lib9();
    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_lib123 = __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_lib123();
    init_es();
  }
});

// ../lockfile/settings-checker/lib/resolvePatchedDependencies.js
import path125 from "node:path";
function resolvePatchedDependencies(patchedDependencies, baseDir) {
  if (!patchedDependencies)
    return void 0;
  return map_default((patchFile) => path125.resolve(baseDir, patchFile), patchedDependencies);
}
var init_resolvePatchedDependencies = __esm({
  "../lockfile/settings-checker/lib/resolvePatchedDependencies.js"() {
    "use strict";
    init_es();
  }
});

// ../lockfile/settings-checker/lib/index.js
var init_lib124 = __esm({
  "../lockfile/settings-checker/lib/index.js"() {
    "use strict";
    init_calcPatchHashes();
    init_createOverridesMapFromParsed();
    init_getOutdatedLockfileSetting();
    init_resolvePatchedDependencies();
  }
});

// ../installing/deps-installer/lib/parseWantedDependencies.js
function parseWantedDependencies(rawWantedDependencies, opts3) {
  return rawWantedDependencies.map((rawWantedDependency) => {
    const parsed = parseWantedDependency(rawWantedDependency);
    const alias = parsed["alias"];
    let bareSpecifier = parsed["bareSpecifier"];
    if (!opts3.allowNew && (!alias || !opts3.currentBareSpecifiers[alias])) {
      return null;
    }
    if (alias && opts3.defaultCatalog?.[alias] && (!opts3.currentBareSpecifiers[alias] && bareSpecifier === void 0 || opts3.defaultCatalog[alias] === bareSpecifier || opts3.defaultCatalog[alias] === opts3.currentBareSpecifiers[alias])) {
      bareSpecifier = "catalog:";
    }
    if (alias && opts3.currentBareSpecifiers[alias]) {
      bareSpecifier ??= opts3.currentBareSpecifiers[alias];
    }
    const result2 = {
      alias,
      dev: Boolean(opts3.dev || alias && !!opts3.devDependencies[alias]),
      optional: Boolean(opts3.optional || alias && !!opts3.optionalDependencies[alias]),
      prevSpecifier: alias && opts3.currentBareSpecifiers[alias],
      saveCatalogName: opts3.saveCatalogName
    };
    if (bareSpecifier) {
      return {
        ...result2,
        bareSpecifier
      };
    }
    if (alias && opts3.preferredSpecs?.[alias]) {
      return {
        ...result2,
        bareSpecifier: opts3.preferredSpecs[alias]
      };
    }
    if (alias && opts3.overrides?.[alias]) {
      return {
        ...result2,
        bareSpecifier: opts3.overrides[alias]
      };
    }
    return {
      ...result2,
      bareSpecifier: opts3.defaultTag
    };
  }).filter((wd) => wd !== null);
}
var init_parseWantedDependencies = __esm({
  "../installing/deps-installer/lib/parseWantedDependencies.js"() {
    "use strict";
    init_lib98();
  }
});

// ../installing/deps-installer/lib/uninstall/removeDeps.js
async function removeDeps(packageManifest, removedPackages, opts3) {
  if (opts3.saveType) {
    if (!Object.hasOwn(packageManifest, opts3.saveType))
      return packageManifest;
    const targetDeps = packageManifest[opts3.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: opts3.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_lib9();
  }
});

// ../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(opts3) {
        super("CATALOG_VERSION_MISMATCH", "Wanted dependency outside the version range defined in catalog");
        this.catalogDep = opts3.catalogDep;
        this.wantedDep = opts3.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((resolve4, reject3) => {
    let remaining = promises.length;
    if (remaining === 0)
      return resolve4(false);
    for (const p of promises) {
      p.then((value) => {
        if (value)
          resolve4(true);
        else if (--remaining === 0)
          resolve4(false);
      }, reject3);
    }
  });
}
var init_checkCustomResolverForceResolve = __esm({
  "../installing/deps-installer/lib/install/checkCustomResolverForceResolve.js"() {
    "use strict";
  }
});

// ../installing/deps-installer/lib/pnpmPkgJson.js
import path126 from "node:path";
var pnpmPkgJson;
var init_pnpmPkgJson = __esm({
  "../installing/deps-installer/lib/pnpmPkgJson.js"() {
    "use strict";
    init_load_json_file();
    try {
      pnpmPkgJson = loadJsonFileSync(path126.resolve(import.meta.dirname, "../package.json"));
    } catch (err2) {
      pnpmPkgJson = {
        name: "pnpm",
        version: "0.0.0"
      };
    }
  }
});

// ../installing/deps-installer/lib/install/extendInstallOptions.js
import path127 from "node:path";
function extendOptions(opts3) {
  if (opts3) {
    for (const key in opts3) {
      if (opts3[key] === void 0) {
        delete opts3[key];
      }
    }
  }
  const defaultOpts = defaults2(opts3);
  const extendedOpts = {
    ...defaultOpts,
    ...opts3,
    storeDir: defaultOpts.storeDir,
    parsedOverrides: parseOverrides(opts3.overrides ?? {}, opts3.catalogs ?? {})
  };
  if (extendedOpts.parsedOverrides.some(({ converge: converge3 }) => converge3)) {
    extendedOpts.convergeDeclaredRanges = /* @__PURE__ */ new Map();
  }
  extendedOpts.readPackageHook = createReadPackageHook({
    ignoreCompatibilityDb: extendedOpts.ignoreCompatibilityDb,
    readPackageHook: extendedOpts.hooks?.readPackage,
    overrides: extendedOpts.parsedOverrides,
    convergeDeclaredRanges: extendedOpts.convergeDeclaredRanges,
    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.frozenStore && extendedOpts.force) {
    throw new PnpmError("CONFIG_CONFLICT_FROZEN_STORE_WITH_FORCE", "Cannot use force together with frozenStore: --force re-imports packages into the store, which is opened read-only when frozenStore is enabled");
  }
  if (extendedOpts.frozenStore) {
    extendedOpts.sideEffectsCacheWrite = 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 = path127.join(extendedOpts.storeDir, "links");
    }
    extendedOpts.allowBuilds ??= {};
  }
  extendedOpts.globalVirtualStoreDir = extendedOpts.enableGlobalVirtualStore ? extendedOpts.virtualStoreDir : path127.join(extendedOpts.storeDir, "links");
  return extendedOpts;
}
var defaults2;
var init_extendInstallOptions = __esm({
  "../installing/deps-installer/lib/install/extendInstallOptions.js"() {
    "use strict";
    init_lib76();
    init_lib99();
    init_lib();
    init_lib2();
    init_lib105();
    init_pnpmPkgJson();
    defaults2 = (opts3) => {
      const packageManager2 = opts3.packageManager ?? {
        name: pnpmPkgJson.name,
        version: pnpmPkgJson.version
      };
      return {
        allowedDeprecatedVersions: {},
        allowUnusedPatches: false,
        autoConfirmAllPrompts: opts3.autoConfirmAllPrompts ?? false,
        autoInstallPeers: true,
        autoInstallPeersFromHighestMatch: false,
        catalogs: {},
        childConcurrency: 5,
        confirmModulesPurge: !(opts3.autoConfirmAllPrompts || opts3.force),
        depth: 0,
        dedupeInjectedDeps: true,
        enableGlobalVirtualStore: false,
        enablePnp: false,
        engineStrict: false,
        force: false,
        forceFullResolution: false,
        frozenLockfile: false,
        frozenStore: 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: opts3.lockfileDir ?? opts3.dir ?? process.cwd(),
        lockfileOnly: false,
        updateChecksums: false,
        nodeVersion: opts3.nodeVersion,
        nodeLinker: "isolated",
        nodeExperimentalPackageMap: false,
        nodePackageMapType: "standard",
        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: opts3.storeController,
        storeDir: opts3.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 fs76 } from "node:fs";
import path128 from "node:path";
async function linkPackages(projects, depGraph, opts3) {
  let depNodes = Object.values(depGraph).filter(({ depPath, id }) => {
    if (opts3.wantedLockfile.packages?.[depPath] != null && !opts3.wantedLockfile.packages[depPath].optional) {
      opts3.skipped.delete(depPath);
      return true;
    }
    if (opts3.wantedToBeSkippedPackageIds.has(id)) {
      opts3.skipped.add(depPath);
      return false;
    }
    opts3.skipped.delete(depPath);
    return true;
  });
  if (!opts3.include.dependencies) {
    depNodes = depNodes.filter(({ dev, optional }) => dev || optional);
  }
  if (!opts3.include.devDependencies) {
    depNodes = depNodes.filter(({ optional, prod }) => prod || optional);
  }
  if (!opts3.include.optionalDependencies) {
    depNodes = depNodes.filter(({ optional }) => !optional);
  }
  depGraph = Object.fromEntries(depNodes.map((depNode) => [depNode.depPath, depNode]));
  const removedDepPaths = await prune2(projects, {
    currentLockfile: opts3.currentLockfile,
    dedupeDirectDeps: opts3.dedupeDirectDeps,
    hoistedDependencies: opts3.hoistedDependencies,
    hoistedModulesDir: opts3.hoistPattern != null ? opts3.hoistedModulesDir : void 0,
    include: opts3.include,
    lockfileDir: opts3.lockfileDir,
    pruneStore: opts3.pruneStore,
    pruneVirtualStore: opts3.pruneVirtualStore,
    publicHoistedModulesDir: opts3.publicHoistPattern != null ? opts3.rootModulesDir : void 0,
    skipped: opts3.skipped,
    skipRuntimes: opts3.skipRuntimes,
    storeController: opts3.storeController,
    virtualStoreDir: opts3.virtualStoreDir,
    virtualStoreDirMaxLength: opts3.virtualStoreDirMaxLength,
    wantedLockfile: opts3.wantedLockfile
  });
  stageLogger.debug({
    prefix: opts3.lockfileDir,
    stage: "importing_started"
  });
  const projectIds = projects.map(({ id }) => id);
  const filterOpts = {
    include: opts3.include,
    registries: opts3.registries,
    skipped: opts3.skipped,
    skipRuntimes: opts3.skipRuntimes
  };
  const newCurrentLockfile = filterLockfileByImporters(opts3.wantedLockfile, projectIds, {
    ...filterOpts,
    failOnMissingDependencies: true,
    skipped: /* @__PURE__ */ new Set()
  });
  const { newDepPaths, added } = await linkNewPackages(filterLockfileByImporters(opts3.currentLockfile, projectIds, {
    ...filterOpts,
    failOnMissingDependencies: false
  }), newCurrentLockfile, depGraph, {
    allowBuild: opts3.allowBuild,
    disableRelinkLocalDirDeps: opts3.disableRelinkLocalDirDeps,
    enableGlobalVirtualStore: opts3.enableGlobalVirtualStore,
    force: opts3.force,
    depsStateCache: opts3.depsStateCache,
    ignoreScripts: opts3.ignoreScripts,
    lockfileDir: opts3.lockfileDir,
    optional: opts3.include.optionalDependencies,
    sideEffectsCacheRead: opts3.sideEffectsCacheRead,
    symlink: opts3.symlink,
    skipped: opts3.skipped,
    storeController: opts3.storeController,
    supportedArchitectures: opts3.supportedArchitectures,
    virtualStoreDir: opts3.virtualStoreDir
  });
  stageLogger.debug({
    prefix: opts3.lockfileDir,
    stage: "importing_done"
  });
  let currentLockfile;
  const allImportersIncluded = equals_default(projectIds.sort(), Object.keys(opts3.wantedLockfile.importers).sort());
  if (opts3.makePartialCurrentLockfile || !allImportersIncluded) {
    const packages = opts3.currentLockfile.packages ?? {};
    if (opts3.wantedLockfile.packages != null) {
      for (const depPath in opts3.wantedLockfile.packages) {
        if (depGraph[depPath]) {
          packages[depPath] = opts3.wantedLockfile.packages[depPath];
        }
      }
    }
    const projects2 = {
      ...opts3.currentLockfile.importers,
      ...pick_default(projectIds, opts3.wantedLockfile.importers)
    };
    currentLockfile = filterLockfileByImporters({
      ...opts3.wantedLockfile,
      importers: projects2,
      packages
    }, Object.keys(projects2), {
      ...filterOpts,
      failOnMissingDependencies: false,
      skipped: /* @__PURE__ */ new Set()
    });
  } else if (opts3.include.dependencies && opts3.include.devDependencies && opts3.include.optionalDependencies && opts3.skipped.size === 0) {
    currentLockfile = opts3.wantedLockfile;
  } else {
    currentLockfile = newCurrentLockfile;
  }
  let newHoistedDependencies;
  if (opts3.virtualStoreOnly || opts3.hoistPattern == null && opts3.publicHoistPattern == null) {
    newHoistedDependencies = {};
  } else if (newDepPaths.length > 0 || removedDepPaths.size > 0) {
    newHoistedDependencies = {
      ...opts3.hoistedDependencies,
      ...await hoist({
        extraNodePath: opts3.extraNodePaths,
        graph: depGraph,
        directDepsByImporterId: {
          ...opts3.dependenciesByProjectId,
          ".": new Map(Array.from(opts3.dependenciesByProjectId["."]?.entries() ?? []).filter(([alias]) => {
            return newCurrentLockfile.importers["."].specifiers[alias];
          }))
        },
        importerIds: projectIds,
        privateHoistedModulesDir: opts3.hoistedModulesDir,
        privateHoistPattern: opts3.hoistPattern ?? [],
        publicHoistedModulesDir: opts3.rootModulesDir,
        publicHoistPattern: opts3.publicHoistPattern ?? [],
        virtualStoreDir: opts3.virtualStoreDir,
        virtualStoreDirMaxLength: opts3.virtualStoreDirMaxLength,
        hoistedWorkspacePackages: opts3.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: opts3.skipped
      })
    };
  } else {
    newHoistedDependencies = opts3.hoistedDependencies;
  }
  let linkedToRoot = 0;
  if (opts3.symlink && !opts3.virtualStoreOnly) {
    const projectsToLink = Object.fromEntries(await Promise.all(projects.map(async ({ id, manifest, modulesDir, rootDir }) => {
      const deps = opts3.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: opts3.outdatedDependencies[depGraphNode.id],
              isExternalLink: false
            };
          }),
          ...opts3.linkedDependenciesByProjectId[id].map(async (linkedDependency) => {
            const dir = resolvePath4(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: opts3.dedupeDirectDeps });
  }
  return {
    currentLockfile,
    newDepPaths,
    newHoistedDependencies,
    removedDepPaths,
    stats: {
      added,
      removed: removedDepPaths.size,
      linkedToRoot
    }
  };
}
function resolvePath4(where, spec) {
  if (isAbsolutePath3.test(spec))
    return spec;
  return path128.resolve(where, spec);
}
async function linkNewPackages(currentLockfile, wantedLockfile, depGraph, opts3) {
  const wantedRelDepPaths = difference_default(Object.keys(wantedLockfile.packages ?? {}), Array.from(opts3.skipped));
  let newDepPathsSet;
  if (opts3.force) {
    newDepPathsSet = new Set(wantedRelDepPaths.filter((depPath) => depGraph[depPath]));
  } else {
    newDepPathsSet = await selectNewFromWantedDeps(wantedRelDepPaths, currentLockfile, depGraph);
  }
  const added = newDepPathsSet.size;
  statsLogger.debug({
    added,
    prefix: opts3.lockfileDir
  });
  const existingWithUpdatedDeps = [];
  if (!opts3.force && currentLockfile.packages != null && wantedLockfile.packages != null) {
    const currentPackages = currentLockfile.packages;
    const wantedPackages = wantedLockfile.packages;
    await Promise.all(wantedRelDepPaths.map((depPath) => limitModulesDirReads2(async () => {
      if (currentPackages[depPath] && (!equals_default(currentPackages[depPath].dependencies, wantedPackages[depPath].dependencies) || !isEmpty_default(currentPackages[depPath].optionalDependencies ?? {}) || !isEmpty_default(wantedPackages[depPath].optionalDependencies ?? {}))) {
        if (depGraph[depPath] && !newDepPathsSet.has(depPath)) {
          const { actualChildrenChanged, removedAliases: actualRemovedAliases } = await getActualChildrenDiff(depGraph[depPath], depGraph, opts3.lockfileDir, opts3.optional);
          if (actualChildrenChanged) {
            existingWithUpdatedDeps.push({
              children: depGraph[depPath].children,
              modules: depGraph[depPath].modules,
              name: depGraph[depPath].name,
              optionalDependencies: depGraph[depPath].optionalDependencies,
              removedAliases: actualRemovedAliases
            });
            return;
          }
          const { changedChildren, removedAliases } = getChangedChildren2({
            currentDependencies: currentPackages[depPath].dependencies,
            currentOptionalDependencies: currentPackages[depPath].optionalDependencies,
            wantedDependencies: wantedPackages[depPath].dependencies,
            wantedOptionalDependencies: wantedPackages[depPath].optionalDependencies,
            allChildren: depGraph[depPath].children
          });
          if (!isEmpty_default(changedChildren) || removedAliases.length > 0) {
            existingWithUpdatedDeps.push({
              children: changedChildren,
              modules: depGraph[depPath].modules,
              name: depGraph[depPath].name,
              optionalDependencies: depGraph[depPath].optionalDependencies,
              removedAliases
            });
          }
        }
      }
    })));
  }
  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) => fs76.mkdir(depNode.modules, { recursive: true })));
  await Promise.all([
    !opts3.symlink ? Promise.resolve() : linkAllModules2([...newPkgs, ...existingWithUpdatedDeps], depGraph, {
      lockfileDir: opts3.lockfileDir,
      optional: opts3.optional
    }),
    linkAllPkgs2(opts3.storeController, newPkgs, {
      allowBuild: opts3.allowBuild,
      depGraph,
      depsStateCache: opts3.depsStateCache,
      disableRelinkLocalDirDeps: opts3.disableRelinkLocalDirDeps,
      enableGlobalVirtualStore: opts3.enableGlobalVirtualStore,
      force: opts3.force,
      ignoreScripts: opts3.ignoreScripts,
      lockfileDir: opts3.lockfileDir,
      sideEffectsCacheRead: opts3.sideEffectsCacheRead,
      supportedArchitectures: opts3.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, opts3) {
  const nodeVersion = findRuntimeNodeVersion(Object.keys(opts3.depGraph));
  await Promise.all(depNodes.map(async (depNode) => {
    const { files } = await depNode.fetching();
    depNode.requiresBuild = files.requiresBuild;
    let sideEffectsCacheKey;
    if (opts3.sideEffectsCacheRead && files.sideEffectsMaps && !isEmpty_default(files.sideEffectsMaps)) {
      if (opts3.allowBuild?.(depNode.depPath) === true) {
        sideEffectsCacheKey = calcDepState(opts3.depGraph, opts3.depsStateCache, depNode.depPath, {
          includeDepGraphHash: !opts3.ignoreScripts && depNode.requiresBuild,
          // true when is built
          patchFileHash: depNode.patch?.hash,
          supportedArchitectures: opts3.supportedArchitectures,
          nodeVersion
        });
      }
    }
    const { importMethod, isBuilt } = await storeController.importPackage(depNode.dir, {
      disableRelinkLocalDirDeps: opts3.disableRelinkLocalDirDeps,
      filesResponse: files,
      force: opts3.force,
      safeToSkip: opts3.enableGlobalVirtualStore,
      sideEffectsCacheKey,
      requiresBuild: depNode.patch != null || depNode.requiresBuild
    });
    if (importMethod) {
      reportPackageImported({
        method: importMethod,
        requester: opts3.lockfileDir,
        to: depNode.dir
      });
    }
    depNode.isBuilt = isBuilt;
    const selfDep = depNode.children[depNode.name];
    if (selfDep) {
      const pkg = opts3.depGraph[selfDep];
      if (!pkg || !pkg.installable && pkg.optional)
        return;
      const targetModulesDir = path128.join(depNode.modules, depNode.name, "node_modules");
      await limitLinking4(async () => symlinkDependency(pkg.dir, targetModulesDir, depNode.name));
    }
  }));
}
async function linkAllModules2(depNodes, depGraph, opts3) {
  await Promise.all(depNodes.flatMap((depNode) => (depNode.removedAliases ?? []).map(async (alias) => limitModulesDirReads2(async () => removeObsoleteDependency(depNode.modules, alias)))));
  await symlinkAllModules({
    deps: depNodes.map((depNode) => {
      return {
        children: getChildrenPaths2(depNode, depGraph, opts3.lockfileDir, opts3.optional),
        modules: depNode.modules,
        name: depNode.name
      };
    })
  });
}
function getChangedChildren2(opts3) {
  const { currentOptionalDependencies, wantedOptionalDependencies, allChildren } = opts3;
  const currentChildren = Object.assign(/* @__PURE__ */ Object.create(null), opts3.currentDependencies, currentOptionalDependencies);
  const wantedChildren = Object.assign(/* @__PURE__ */ Object.create(null), opts3.wantedDependencies, wantedOptionalDependencies);
  const changedChildren = {};
  const removedAliases = [];
  for (const [alias, wantedChildDepPath] of Object.entries(wantedChildren)) {
    const optionalityChanged = hasOwn(wantedOptionalDependencies, alias) !== hasOwn(currentOptionalDependencies, alias);
    if (currentChildren[alias] !== wantedChildDepPath || optionalityChanged) {
      const resolvedChildDepPath = hasOwn(allChildren, alias) ? allChildren[alias] : void 0;
      if (resolvedChildDepPath != null) {
        changedChildren[alias] = resolvedChildDepPath;
      }
    }
  }
  for (const alias of Object.keys(currentChildren)) {
    if (!hasOwn(wantedChildren, alias)) {
      removedAliases.push(alias);
    }
  }
  return { changedChildren, removedAliases };
}
function hasOwn(obj, key) {
  return obj != null && Object.hasOwn(obj, key);
}
async function getActualChildrenDiff(depNode, depGraph, lockfileDir, optional) {
  if (depNode.optionalDependencies.size === 0) {
    return { actualChildrenChanged: false, removedAliases: [] };
  }
  const currentAliases = new Set((await readModulesDir(depNode.modules) ?? []).filter((alias) => alias !== depNode.name));
  const nextAliases = new Set(Object.keys(getChildrenPaths2(depNode, depGraph, lockfileDir, optional)));
  const removedAliases = Array.from(currentAliases).filter((alias) => !nextAliases.has(alias));
  const actualChildrenChanged = removedAliases.length > 0 || Array.from(nextAliases).some((alias) => !currentAliases.has(alias));
  return { actualChildrenChanged, removedAliases };
}
function getChildrenPaths2(depNode, depGraph, lockfileDir, optional) {
  const children = optional ? depNode.children : pickBy_default((_, childAlias) => !depNode.optionalDependencies.has(childAlias), depNode.children);
  const childrenPaths = {};
  for (const [alias, childDepPath] of Object.entries(children ?? {})) {
    if (alias === depNode.name)
      continue;
    if (childDepPath.startsWith("link:")) {
      childrenPaths[alias] = path128.resolve(lockfileDir, childDepPath.slice(5));
      continue;
    }
    const pkg = depGraph[childDepPath];
    if (!pkg || !pkg.installable && pkg.optional)
      continue;
    childrenPaths[alias] = pkg.dir;
  }
  return childrenPaths;
}
var brokenModulesLogger2, isAbsolutePath3, limitLinking4, limitModulesDirReads2;
var init_link = __esm({
  "../installing/deps-installer/lib/install/link.js"() {
    "use strict";
    init_lib6();
    init_lib74();
    init_lib8();
    init_lib106();
    init_lib115();
    init_lib116();
    init_lib118();
    init_lib117();
    init_lib3();
    init_lib4();
    init_p_limit();
    init_path_exists();
    init_es();
    brokenModulesLogger2 = logger("_broken_node_modules");
    isAbsolutePath3 = /^\/|^[A-Z]:/i;
    limitLinking4 = pLimit(16);
    limitModulesDirReads2 = pLimit(16);
  }
});

// ../installing/deps-installer/lib/install/reportPeerDependencyIssues.js
function reportPeerDependencyIssues(peerDependencyIssuesByProjects, opts3) {
  const newPeerDependencyIssuesByProjects = filterPeerDependencyIssues(peerDependencyIssuesByProjects, opts3.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 (opts3.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_semver37.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_semver37.default.satisfies(currentParentPkg.version, parentPkg.bareSpecifier))) {
              allowedVersionsByParent[targetPkg.name] = ranges;
            }
          }
          if (allowedVersionsByParent[peerName]?.some((range) => import_semver37.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_semver37.default.validRange(subRange) != null && import_semver37.default.validRange(superRange) != null && import_semver37.default.subset(subRange, superRange);
}
function tryParseAllowedVersions(allowedVersions) {
  try {
    return parseOverrides(allowedVersions ?? {});
  } catch (err2) {
    throw new PnpmError("INVALID_ALLOWED_VERSION_SELECTOR", `${err2.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_semver37, PeerDependencyIssuesError;
var init_reportPeerDependencyIssues = __esm({
  "../installing/deps-installer/lib/install/reportPeerDependencyIssues.js"() {
    "use strict";
    init_lib27();
    init_lib99();
    init_lib6();
    init_lib2();
    init_es();
    import_semver37 = __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/tryFastUpdateCatalogs.js
function tryFastUpdateCatalogs(lockfile, opts3) {
  if (Object.values(opts3.overrides).some((specifier) => parseCatalogProtocol(specifier) != null)) {
    return false;
  }
  if (Object.values(lockfile.importers).some((importer) => Object.entries(importer.specifiers).some(([alias, specifier]) => {
    const catalogName = parseCatalogProtocol(specifier);
    return catalogName != null && (opts3.catalogs[catalogName]?.[alias] == null || lockfile.catalogs?.[catalogName]?.[alias] == null);
  }))) {
    return false;
  }
  let changed = false;
  const catalogs = Object.fromEntries(Object.entries(lockfile.catalogs ?? {}).flatMap(([catalogName, catalog]) => {
    const entries = Object.entries(catalog).flatMap(([alias, entry]) => {
      const specifier = opts3.catalogs[catalogName]?.[alias];
      if (specifier == null) {
        if (catalogEntryIsReferenced(lockfile.importers, catalogName, alias))
          return [[alias, entry]];
        changed = true;
        return [];
      }
      if (specifier === entry.specifier)
        return [[alias, entry]];
      if (import_semver38.default.valid(entry.version) == null || import_semver38.default.validRange(specifier) == null || !import_semver38.default.satisfies(entry.version, specifier)) {
        return [[alias, entry]];
      }
      changed = true;
      return [[alias, { specifier, version: entry.version }]];
    });
    return entries.length === 0 ? [] : [[catalogName, Object.fromEntries(entries)]];
  }));
  if (!changed)
    return false;
  lockfile.catalogs = Object.keys(catalogs).length === 0 ? void 0 : catalogs;
  return true;
}
function catalogEntryIsReferenced(importers, catalogName, alias) {
  const protocol = catalogName === "default" ? "catalog:" : `catalog:${catalogName}`;
  return Object.values(importers).some((importer) => importer.specifiers[alias] === protocol);
}
var import_semver38;
var init_tryFastUpdateCatalogs = __esm({
  "../installing/deps-installer/lib/install/tryFastUpdateCatalogs.js"() {
    "use strict";
    init_lib96();
    import_semver38 = __toESM(require_semver2(), 1);
  }
});

// ../installing/deps-installer/lib/install/tryFastUpdateImporters.js
function hasChangedProjectSpecifiers(lockfile, projects) {
  return projects.some((project) => {
    const importer = lockfile.importers[project.id];
    if (importer == null)
      return false;
    return Object.entries(getManifestSpecifiers(project.manifest)).some(([alias, specifier]) => importer.specifiers[alias] !== specifier);
  });
}
function tryFastUpdateImporters(lockfile, projects) {
  const updates = [];
  for (const project of projects) {
    const importer = lockfile.importers[project.id];
    if (importer == null)
      return false;
    for (const [alias, specifier] of Object.entries(getManifestSpecifiers(project.manifest))) {
      if (importer.specifiers[alias] === specifier)
        continue;
      const reference = importer.optionalDependencies?.[alias] ?? importer.dependencies?.[alias] ?? importer.devDependencies?.[alias];
      const version2 = reference == null ? null : removeSuffix(reference);
      if (import_semver39.default.validRange(specifier) == null || version2 == null || import_semver39.default.valid(version2) == null || !import_semver39.default.satisfies(version2, specifier)) {
        return false;
      }
      updates.push({
        alias,
        specifier,
        specifiers: importer.specifiers
      });
    }
  }
  for (const update2 of updates) {
    update2.specifiers[update2.alias] = update2.specifier;
  }
  return updates.length > 0;
}
function getManifestSpecifiers(manifest) {
  return {
    ...manifest.devDependencies,
    ...manifest.dependencies,
    ...manifest.optionalDependencies
  };
}
var import_semver39;
var init_tryFastUpdateImporters = __esm({
  "../installing/deps-installer/lib/install/tryFastUpdateImporters.js"() {
    "use strict";
    init_lib68();
    import_semver39 = __toESM(require_semver2(), 1);
  }
});

// ../installing/deps-installer/lib/install/tryFastUpdateLockfile.js
async function tryFastUpdateLockfile(lockfile, opts3) {
  const candidate = clone_default(lockfile);
  if (!await opts3.update(candidate))
    return false;
  if (!await opts3.isLockfileUpToDate(candidate))
    return false;
  await opts3.verifyLockfile?.(candidate);
  Object.assign(lockfile, candidate);
  return true;
}
var init_tryFastUpdateLockfile = __esm({
  "../installing/deps-installer/lib/install/tryFastUpdateLockfile.js"() {
    "use strict";
    init_es();
  }
});

// ../installing/deps-installer/lib/install/tryFastUpdateOverrides.js
async function tryFastUpdateOverrides(lockfile, opts3) {
  const fastOverrides = getFastOverrides(lockfile.overrides ?? {}, opts3.overrides, opts3.parsedOverrides);
  if (fastOverrides == null)
    return false;
  const removals = fastOverrides.filter(({ newVersion }) => newVersion == null);
  const peerNames = getPeerNames(lockfile);
  if (removals.some(({ name }) => peerNames.has(name)))
    return false;
  const replacements3 = collectReplacements(lockfile, fastOverrides);
  if (replacements3 == null)
    return false;
  const changedNames = new Set(fastOverrides.filter(({ newVersion }) => newVersion != null).map(({ name }) => name));
  const rewriteContext = { changedNames, peerNames, removals, replacements: replacements3 };
  const manifests = await resolveNewManifests(fastOverrides, replacements3, opts3);
  if (manifests == null)
    return false;
  const packages = rewritePackages(lockfile.packages ?? {}, {
    lockfileIncludeTarballUrl: opts3.lockfileIncludeTarballUrl,
    manifests,
    registries: opts3.registries,
    rewriteContext
  });
  if (packages == null)
    return false;
  const importers = Object.fromEntries(Object.entries(lockfile.importers).map(([id, importer]) => [
    id,
    {
      ...importer,
      dependencies: rewriteResolvedDependencies(importer.dependencies, rewriteContext),
      devDependencies: rewriteResolvedDependencies(importer.devDependencies, rewriteContext),
      optionalDependencies: rewriteResolvedDependencies(importer.optionalDependencies, rewriteContext)
    }
  ]));
  const updatedLockfile = {
    ...lockfile,
    importers,
    packages: pruneUnreachablePackages(importers, packages),
    overrides: opts3.overrides
  };
  if (!await opts3.isLockfileUpToDate(updatedLockfile))
    return false;
  await opts3.verifyLockfile?.(updatedLockfile);
  lockfile.importers = updatedLockfile.importers;
  lockfile.packages = updatedLockfile.packages;
  lockfile.overrides = updatedLockfile.overrides;
  return true;
}
function getFastOverrides(oldOverrides, newOverrides, parsedOverrides) {
  if (Object.keys(oldOverrides).some((selector) => newOverrides[selector] == null))
    return null;
  const changedSelectors = Object.keys(newOverrides).filter((selector) => oldOverrides[selector] !== newOverrides[selector]);
  if (changedSelectors.length === 0)
    return null;
  const parsedBySelector = new Map(parsedOverrides.map((override) => [override.selector, override]));
  const changedNames = /* @__PURE__ */ new Set();
  const result2 = [];
  for (const selector of changedSelectors) {
    const override = parsedBySelector.get(selector);
    const newValue = newOverrides[selector];
    const oldVersion = oldOverrides[selector];
    const removesDependency = newValue === "-";
    if (override == null || override.targetPkg.bareSpecifier != null || override.converge === true || !removesDependency && (override.parentPkg != null || import_semver40.default.valid(newValue) == null || oldVersion != null && import_semver40.default.valid(oldVersion) == null) || changedNames.has(override.targetPkg.name) || parsedOverrides.some((candidate) => candidate.selector !== selector && candidate.targetPkg.name === override.targetPkg.name)) {
      return null;
    }
    changedNames.add(override.targetPkg.name);
    result2.push({
      name: override.targetPkg.name,
      ...override.parentPkg == null ? {} : {
        parent: {
          name: override.parentPkg.name,
          bareSpecifier: override.parentPkg.bareSpecifier
        }
      },
      ...removesDependency ? {} : { newVersion: newValue, oldVersion }
    });
  }
  return result2;
}
function collectReplacements(lockfile, overrides) {
  const overridesByName = new Map(overrides.map((override) => [override.name, override]));
  const replacements3 = /* @__PURE__ */ new Map();
  for (const dependencies of allResolvedDependencyMaps(lockfile)) {
    for (const [alias, reference] of Object.entries(dependencies)) {
      const override = overridesByName.get(alias);
      if (override?.newVersion == null)
        continue;
      const oldDepPath = refToRelative(reference, alias);
      if (oldDepPath == null)
        return null;
      const parsed = parse9(oldDepPath);
      const snapshot = lockfile.packages?.[oldDepPath];
      if (parsed.name !== alias || parsed.version == null || parsed.peerDepGraphHash != null || parsed.patchHash != null || override.oldVersion != null && parsed.version !== override.oldVersion || snapshot == null || snapshot.optional === true || snapshot.peerDependencies != null || snapshot.peerDependenciesMeta != null || !("integrity" in snapshot.resolution) || typeof snapshot.resolution.integrity !== "string" || "type" in snapshot.resolution && snapshot.resolution.type != null) {
        return null;
      }
      const newDepPath = `${alias}@${override.newVersion}${parsed.peerDepGraphHash ?? ""}`;
      const previousReplacement = replacements3.get(oldDepPath);
      if (previousReplacement != null && previousReplacement !== newDepPath)
        return null;
      replacements3.set(oldDepPath, newDepPath);
    }
  }
  for (const dependencies of allResolvedDependencyMaps(lockfile)) {
    for (const [alias, reference] of Object.entries(dependencies)) {
      const depPath = refToRelative(reference, alias);
      if (depPath != null && replacements3.has(depPath) && !overridesByName.has(alias))
        return null;
    }
  }
  return replacements3;
}
function getPeerNames(lockfile) {
  const result2 = /* @__PURE__ */ new Set();
  for (const snapshot of Object.values(lockfile.packages ?? {})) {
    for (const name of Object.keys(snapshot.peerDependencies ?? {}))
      result2.add(name);
    for (const name of Object.keys(snapshot.peerDependenciesMeta ?? {}))
      result2.add(name);
    for (const name of snapshot.transitivePeerDependencies ?? [])
      result2.add(name);
  }
  return result2;
}
function allResolvedDependencyMaps(lockfile) {
  const result2 = [];
  for (const importer of Object.values(lockfile.importers)) {
    if (importer.dependencies != null)
      result2.push(importer.dependencies);
    if (importer.devDependencies != null)
      result2.push(importer.devDependencies);
    if (importer.optionalDependencies != null)
      result2.push(importer.optionalDependencies);
  }
  for (const snapshot of Object.values(lockfile.packages ?? {})) {
    if (snapshot.dependencies != null)
      result2.push(snapshot.dependencies);
    if (snapshot.optionalDependencies != null)
      result2.push(snapshot.optionalDependencies);
  }
  return result2;
}
async function resolveNewManifests(overrides, replacements3, opts3) {
  const changedNames = new Set([...replacements3].filter(([oldDepPath, newDepPath]) => oldDepPath !== newDepPath).map(([oldDepPath]) => parse9(oldDepPath).name));
  const results = await Promise.all(overrides.map(async ({ name, newVersion }) => {
    if (newVersion == null)
      return null;
    if (!changedNames.has(name))
      return null;
    const response = await opts3.requestPackage({
      alias: name,
      bareSpecifier: newVersion
    }, {
      downloadPriority: 0,
      lockfileDir: opts3.lockfileDir,
      preferredVersions: /* @__PURE__ */ Object.create(null),
      projectDir: opts3.lockfileDir,
      publishedBy: opts3.publishedBy,
      publishedByExclude: opts3.publishedByExclude,
      skipFetch: true,
      trustPolicy: opts3.trustPolicy,
      trustPolicyExclude: opts3.trustPolicyExclude,
      trustPolicyIgnoreAfter: opts3.trustPolicyIgnoreAfter,
      update: false
    });
    if (response.body.isLocal || response.body.manifest == null || response.body.policyViolation != null || response.body.resolvedVia !== "npm-registry" || response.resolutionNeedsFetch === true || !("integrity" in response.body.resolution) || typeof response.body.resolution.integrity !== "string" || response.body.resolution.type != null) {
      return void 0;
    }
    const rawManifest = response.body.manifest;
    if (rawManifest.name !== name || rawManifest.version !== newVersion || rawManifest.deprecated != null || hasInvalidManifestMaps(rawManifest) || hasPeerDependencies(rawManifest) || rawManifest.engines?.runtime != null || rawManifest.bundledDependencies != null || rawManifest.bundleDependencies != null) {
      return void 0;
    }
    const manifest = opts3.readPackageHook == null ? rawManifest : await opts3.readPackageHook(clone_default(rawManifest));
    if (hasPeerDependencies(manifest))
      return void 0;
    return {
      name,
      manifest,
      resolution: response.body.resolution
    };
  }));
  if (results.some((result2) => result2 === void 0))
    return null;
  return new Map(results.filter((result2) => result2 != null).map(({ name, ...value }) => [name, value]));
}
function hasInvalidManifestMaps(manifest) {
  return [
    manifest.dependencies,
    manifest.optionalDependencies,
    manifest.peerDependencies,
    manifest.peerDependenciesMeta,
    manifest.engines
  ].some((value) => value != null && (typeof value !== "object" || Array.isArray(value)));
}
function hasPeerDependencies(manifest) {
  return Object.keys(manifest.peerDependencies ?? {}).length > 0 || Object.keys(manifest.peerDependenciesMeta ?? {}).length > 0;
}
function rewritePackages(originalPackages, opts3) {
  const packages = Object.fromEntries(Object.entries(originalPackages).map(([depPath, snapshot]) => [
    depPath,
    {
      ...snapshot,
      dependencies: rewriteResolvedDependencies(snapshot.dependencies, opts3.rewriteContext, depPath),
      optionalDependencies: rewriteResolvedDependencies(snapshot.optionalDependencies, opts3.rewriteContext, depPath)
    }
  ]));
  for (const [oldDepPath, newDepPath] of opts3.rewriteContext.replacements) {
    if (oldDepPath === newDepPath)
      continue;
    const oldSnapshot = originalPackages[oldDepPath];
    const name = parse9(oldDepPath).name;
    const resolved = opts3.manifests.get(name);
    if (resolved == null)
      return null;
    const dependencies = validateAndRewriteDependencies({
      lockedDependencies: oldSnapshot.dependencies,
      manifestDependencies: effectiveDependencies(resolved.manifest),
      packages: originalPackages,
      parentDepPath: newDepPath,
      rewriteContext: opts3.rewriteContext
    });
    const optionalDependencies = validateAndRewriteDependencies({
      lockedDependencies: oldSnapshot.optionalDependencies,
      manifestDependencies: resolved.manifest.optionalDependencies,
      packages: originalPackages,
      parentDepPath: newDepPath,
      rewriteContext: opts3.rewriteContext
    });
    if (dependencies === null || optionalDependencies === null)
      return null;
    const newSnapshot = createPackageSnapshot(oldSnapshot, {
      dependencies,
      lockfileIncludeTarballUrl: opts3.lockfileIncludeTarballUrl,
      manifest: resolved.manifest,
      optionalDependencies,
      registry: getRegistryByPackageName(opts3.registries, name),
      resolution: resolved.resolution
    });
    const existingSnapshot = packages[newDepPath];
    if (existingSnapshot == null) {
      packages[newDepPath] = newSnapshot;
    } else {
      if (!equals_default(existingSnapshot, newSnapshot))
        return null;
      packages[newDepPath] = newSnapshot;
    }
  }
  return packages;
}
function effectiveDependencies(manifest) {
  if (manifest.dependencies == null)
    return void 0;
  const optionalNames = new Set(Object.keys(manifest.optionalDependencies ?? {}));
  return Object.fromEntries(Object.entries(manifest.dependencies).filter(([name]) => !optionalNames.has(name)));
}
function validateAndRewriteDependencies(opts3) {
  const { lockedDependencies, manifestDependencies, packages, parentDepPath, rewriteContext } = opts3;
  const manifestEntries = Object.entries(manifestDependencies ?? {});
  for (const name of Object.keys(lockedDependencies ?? {})) {
    if (manifestDependencies?.[name] == null && rewriteContext.peerNames.has(name))
      return null;
  }
  const result2 = {};
  for (const [name, range] of manifestEntries) {
    if (shouldRemoveDependency(name, parentDepPath, rewriteContext.removals))
      continue;
    if (import_semver40.default.validRange(range) == null)
      return null;
    const lockedReference = lockedDependencies?.[name];
    const reference = lockedReference == null ? findReusableReference({ name, packages, range, rewriteContext }) : rewriteReference(name, lockedReference, rewriteContext);
    if (reference == null)
      return null;
    const depPath = refToRelative(reference, name);
    const version2 = depPath == null ? null : parse9(depPath).version;
    if (version2 == null || !import_semver40.default.satisfies(version2, range))
      return null;
    result2[name] = reference;
  }
  return Object.keys(result2).length === 0 ? void 0 : result2;
}
function findReusableReference(opts3) {
  const { name, packages, range, rewriteContext } = opts3;
  if (rewriteContext.changedNames.has(name) || rewriteContext.peerNames.has(name) || rewriteContext.removals.some((removal) => removal.name === name)) {
    return void 0;
  }
  const candidates = Object.entries(packages).filter(([depPath, snapshot]) => {
    const parsed = parse9(depPath);
    return parsed.name === name && parsed.version != null && parsed.peerDepGraphHash == null && parsed.patchHash == null && import_semver40.default.satisfies(parsed.version, range) && snapshot.optional !== true && snapshot.id == null && snapshot.peerDependencies == null && snapshot.peerDependenciesMeta == null && snapshot.transitivePeerDependencies == null && "integrity" in snapshot.resolution && typeof snapshot.resolution.integrity === "string" && (!("type" in snapshot.resolution) || snapshot.resolution.type == null);
  }).map(([depPath]) => depPath);
  if (candidates.length !== 1)
    return void 0;
  return candidates[0].startsWith(`${name}@`) ? candidates[0].substring(name.length + 1) : candidates[0];
}
function createPackageSnapshot(oldSnapshot, opts3) {
  const snapshot = {
    resolution: toLockfileResolution({
      name: opts3.manifest.name,
      version: opts3.manifest.version
    }, opts3.resolution, opts3.registry, opts3.lockfileIncludeTarballUrl)
  };
  if (opts3.dependencies != null)
    snapshot.dependencies = opts3.dependencies;
  if (opts3.optionalDependencies != null)
    snapshot.optionalDependencies = opts3.optionalDependencies;
  if (oldSnapshot.optional === true)
    snapshot.optional = true;
  if (oldSnapshot.transitivePeerDependencies != null) {
    snapshot.transitivePeerDependencies = oldSnapshot.transitivePeerDependencies;
  }
  if (opts3.manifest.engines != null) {
    const engines = Object.fromEntries(Object.entries(opts3.manifest.engines).filter(([, range]) => range !== "*"));
    if (Object.keys(engines).length > 0)
      snapshot.engines = engines;
  }
  if (opts3.manifest.cpu != null)
    snapshot.cpu = opts3.manifest.cpu;
  if (opts3.manifest.os != null)
    snapshot.os = opts3.manifest.os;
  if (opts3.manifest.libc != null)
    snapshot.libc = opts3.manifest.libc;
  if (opts3.manifest.deprecated)
    snapshot.deprecated = opts3.manifest.deprecated;
  if (opts3.manifest.bin && !(opts3.manifest.bin === "" || Object.keys(opts3.manifest.bin).length === 0) || opts3.manifest.directories?.bin) {
    snapshot.hasBin = true;
  }
  return snapshot;
}
function rewriteResolvedDependencies(dependencies, rewriteContext, parentDepPath) {
  if (dependencies == null)
    return void 0;
  const rewritten = Object.fromEntries(Object.entries(dependencies).filter(([alias]) => !shouldRemoveDependency(alias, parentDepPath, rewriteContext.removals)).map(([alias, reference]) => [
    alias,
    rewriteReference(alias, reference, rewriteContext)
  ]));
  return Object.keys(rewritten).length === 0 ? void 0 : rewritten;
}
function shouldRemoveDependency(alias, parentDepPath, removals) {
  return removals.some((removal) => {
    if (removal.name !== alias)
      return false;
    if (removal.parent == null)
      return true;
    if (parentDepPath == null)
      return false;
    const parent = parse9(parentDepPath);
    return parent.name === removal.parent.name && parent.version != null && (removal.parent.bareSpecifier == null || import_semver40.default.satisfies(parent.version, removal.parent.bareSpecifier));
  });
}
function rewriteReference(alias, reference, { changedNames, replacements: replacements3 }) {
  if (!changedNames.has(alias))
    return reference;
  const oldDepPath = refToRelative(reference, alias);
  if (oldDepPath == null)
    return reference;
  const newDepPath = replacements3.get(oldDepPath);
  if (newDepPath == null)
    return reference;
  return newDepPath.startsWith(`${alias}@`) ? newDepPath.substring(alias.length + 1) : newDepPath;
}
function pruneUnreachablePackages(importers, packages) {
  const reachable = /* @__PURE__ */ new Set();
  const queue2 = [];
  for (const importer of Object.values(importers)) {
    enqueueDependencies(importer.dependencies);
    enqueueDependencies(importer.devDependencies);
    enqueueDependencies(importer.optionalDependencies);
  }
  for (let index2 = 0; index2 < queue2.length; index2++) {
    const depPath = queue2[index2];
    const snapshot = packages[depPath];
    if (snapshot == null)
      continue;
    enqueueDependencies(snapshot.dependencies);
    enqueueDependencies(snapshot.optionalDependencies);
  }
  return Object.fromEntries(Object.entries(packages).filter(([depPath]) => reachable.has(depPath)));
  function enqueueDependencies(dependencies) {
    for (const [alias, reference] of Object.entries(dependencies ?? {})) {
      const depPath = refToRelative(reference, alias);
      if (depPath == null || reachable.has(depPath))
        continue;
      reachable.add(depPath);
      queue2.push(depPath);
    }
  }
}
var import_semver40;
var init_tryFastUpdateOverrides = __esm({
  "../installing/deps-installer/lib/install/tryFastUpdateOverrides.js"() {
    "use strict";
    init_lib68();
    init_lib73();
    init_es();
    import_semver40 = __toESM(require_semver2(), 1);
  }
});

// ../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(opts3) {
        super(opts3.code, opts3.message);
        this.relatedIssue = opts3.relatedIssue;
        this.relatedPR = opts3.relatedPR;
        this.additionalInformation = opts3.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(opts3) {
        super({
          additionalInformation: opts3.additionalInformation,
          code: "MODULES_BREAKING_CHANGE",
          message: `The node_modules structure at "${opts3.modulesPath}" is not compatible with the current pnpm version. Run "pnpm install --force" to recreate node_modules.`,
          relatedIssue: opts3.relatedIssue,
          relatedPR: opts3.relatedPR
        });
        this.modulesPath = opts3.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(opts3) {
        super("UNEXPECTED_STORE", "Unexpected store location");
        this.expectedStorePath = opts3.expectedStorePath;
        this.actualStorePath = opts3.actualStorePath;
        this.modulesDir = opts3.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(opts3) {
        super("UNEXPECTED_VIRTUAL_STORE", "Unexpected virtual store location");
        this.expected = opts3.expected;
        this.actual = opts3.actual;
        this.modulesDir = opts3.modulesDir;
      }
    };
  }
});

// ../installing/deps-installer/lib/install/checkCompatibility/index.js
import path129 from "node:path";
function checkCompatibility(modules, opts3) {
  if (!modules.layoutVersion || modules.layoutVersion !== LAYOUT_VERSION) {
    throw new ModulesBreakingChangeError({
      modulesPath: opts3.modulesDir
    });
  }
  if (!modules.storeDir || path129.relative(modules.storeDir, opts3.storeDir) !== "" && path129.relative(modules.storeDir, path129.join(opts3.storeDir, "../v3")) !== "") {
    throw new UnexpectedStoreError({
      actualStorePath: opts3.storeDir,
      expectedStorePath: modules.storeDir,
      modulesDir: opts3.modulesDir
    });
  }
  if (modules.virtualStoreDir && path129.relative(modules.virtualStoreDir, opts3.virtualStoreDir) !== "") {
    throw new UnexpectedVirtualStoreDirError({
      actual: opts3.virtualStoreDir,
      expected: modules.virtualStoreDir,
      modulesDir: opts3.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 fs77 } from "node:fs";
import path130 from "node:path";
async function validateModules(modules, projects, opts3) {
  const rootProject = projects.find(({ id }) => id === ".");
  if (opts3.virtualStoreDirMaxLength !== modules.virtualStoreDirMaxLength) {
    if (opts3.forceNewModules && rootProject != null) {
      await purgeModulesDirsOfImporter(opts3, 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 ?? [], opts3.publicHoistPattern ?? [])) {
    if (opts3.forceNewModules && rootProject != null) {
      await purgeModulesDirsOfImporter(opts3, 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(opts3.currentHoistPattern ?? [], opts3.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 (err2) {
      if (!opts3.forceNewModules)
        throw err2;
      importersToPurge.push(rootProject);
    }
  }
  for (const project of projects) {
    try {
      checkCompatibility(modules, {
        modulesDir: project.modulesDir,
        storeDir: opts3.storeDir,
        virtualStoreDir: opts3.virtualStoreDir
      });
      if (opts3.lockfileDir !== project.rootDir && opts3.include != null && modules.included) {
        for (const depsField of DEPENDENCIES_FIELDS) {
          if (opts3.include[depsField] !== modules.included[depsField]) {
            throw new PnpmError("INCLUDED_DEPS_CONFLICT", `modules directory (at "${opts3.lockfileDir}") was installed with ${stringifyIncludedDeps(modules.included)}. Current install wants ${stringifyIncludedDeps(opts3.include)}.`);
          }
        }
      }
    } catch (err2) {
      if (!opts3.forceNewModules)
        throw err2;
      importersToPurge.push(project);
    }
  }
  if (importersToPurge.length > 0 && rootProject == null) {
    importersToPurge.push({
      modulesDir: pathAbsolute(opts3.modulesDir, opts3.lockfileDir),
      rootDir: opts3.lockfileDir
    });
  }
  const purged = importersToPurge.length > 0;
  if (purged) {
    await purgeModulesDirsOfImporters(opts3, importersToPurge);
  }
  return { purged };
}
async function purgeModulesDirsOfImporter(opts3, importer) {
  return purgeModulesDirsOfImporters(opts3, [importer]);
}
async function purgeModulesDirsOfImporters(opts3, importers) {
  if (opts3.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".'
      });
    }
    let confirmed;
    try {
      confirmed = await dist_default5({
        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?",
        default: true
      });
    } catch (err2) {
      if (err2 instanceof Error && err2.name === "ExitPromptError") {
        throw new PnpmError("ABORTED_REMOVE_MODULES_DIR", "Aborted removal of modules directory");
      }
      throw err2;
    }
    if (!confirmed) {
      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, opts3.virtualStoreDir);
    } catch (err2) {
      if (err2.code !== "ENOENT")
        throw err2;
    }
  }));
}
async function removeContentsOfDir2(dir, virtualStoreDir) {
  const items = await fs77.readdir(dir);
  await Promise.all(items.map(async (item) => {
    if (item[0] === "." && item !== ".bin" && item !== ".modules.yaml" && !dirsAreEqual2(path130.join(dir, item), virtualStoreDir)) {
      return;
    }
    await rimraf(path130.join(dir, item));
  }));
}
function dirsAreEqual2(dir1, dir2) {
  return path130.relative(dir1, dir2) === "";
}
function stringifyIncludedDeps(included) {
  return DEPENDENCIES_FIELDS.filter((depsField) => included[depsField]).join(", ");
}
var init_validateModules = __esm({
  "../installing/deps-installer/lib/install/validateModules.js"() {
    "use strict";
    init_dist14();
    init_lib2();
    init_lib3();
    init_lib9();
    init_rimraf();
    init_path_absolute();
    init_es();
    init_checkCompatibility();
  }
});

// ../installing/deps-installer/lib/install/verifyLockfileResolutionsCache.js
import fs78 from "node:fs";
import path131 from "node:path";
import util40 from "node:util";
function readCache(cacheDir) {
  const cacheFilePath = path131.join(cacheDir, CACHE_FILE_NAME);
  let contents;
  try {
    contents = fs78.readFileSync(cacheFilePath, "utf8");
  } catch (err2) {
    if (isNodeError(err2) && err2.code === "ENOENT")
      return { byHash: /* @__PURE__ */ new Map(), byPath: /* @__PURE__ */ new Map() };
    throw err2;
  }
  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 = fs78.statSync(lockfilePath, { bigint: true });
    return {
      size: Number(stat2.size),
      mtimeNs: stat2.mtimeNs.toString(),
      inode: stat2.ino.toString()
    };
  } catch (err2) {
    if (isNodeError(err2) && err2.code === "ENOENT")
      return null;
    throw err2;
  }
}
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 (err2) {
    logger.debug({ msg: "lockfile-verified cache: read failed", err: err2 });
    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)) {
    const hit = everyVerifierTrustsCachedRun(byPathRecord, key.verifiers);
    return {
      hit,
      verifiedAt: hit ? byPathRecord.verifiedAt || void 0 : void 0,
      // 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 (err2) {
    logger.debug({ msg: "lockfile-verified cache: lockfile hash failed", err: err2 });
    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, verifiedAt: byHashRecord.verifiedAt || void 0, 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 (err2) {
    logger.debug({ msg: "lockfile-verified cache: could not record verification", err: err2 });
    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 = path131.join(cacheDir, CACHE_FILE_NAME);
  const line = `${JSON.stringify(record)}
`;
  try {
    fs78.mkdirSync(cacheDir, { recursive: true });
    fs78.appendFileSync(cacheFilePath, line);
  } catch (err2) {
    logger.debug({ msg: "lockfile-verified cache: append failed", err: err2 });
    return;
  }
  maybeCompactCache(cacheDir);
}
function maybeCompactCache(cacheDir) {
  const cacheFilePath = path131.join(cacheDir, CACHE_FILE_NAME);
  let size;
  try {
    size = fs78.statSync(cacheFilePath).size;
  } catch (err2) {
    if (isNodeError(err2) && err2.code === "ENOENT")
      return;
    logger.debug({ msg: "lockfile-verified cache: stat for compaction failed", err: err2 });
    return;
  }
  if (size <= COMPACT_TRIGGER_BYTES)
    return;
  let contents;
  try {
    contents = fs78.readFileSync(cacheFilePath, "utf8");
  } catch (err2) {
    if (isNodeError(err2) && err2.code === "ENOENT")
      return;
    logger.debug({ msg: "lockfile-verified cache: read for compaction failed", err: err2 });
    return;
  }
  const lines = contents.split("\n").filter(Boolean);
  const seen = /* @__PURE__ */ new Set();
  const reversed = [];
  for (let i4 = lines.length - 1; i4 >= 0; i4--) {
    const line = lines[i4];
    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`;
    fs78.writeFileSync(tmpPath, kept.map((line) => `${line}
`).join(""));
    fs78.renameSync(tmpPath, cacheFilePath);
  } catch (err2) {
    logger.debug({ msg: "lockfile-verified cache: compaction failed", err: err2 });
  }
}
function isNodeError(err2) {
  return util40.types.isNativeError(err2) && "code" in err2;
}
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
function withOfflineCheckCacheIdentities(verifiers) {
  return [...verifiers, RESOLUTION_SHAPE_CACHE_IDENTITY, DEPENDENCY_ALIAS_CACHE_IDENTITY];
}
async function verifyLockfileResolutions(lockfile, verifiers, options) {
  if (!lockfile.packages)
    return;
  const cache = options?.cacheDir && options?.lockfilePath ? { cacheDir: options.cacheDir, lockfilePath: options.lockfilePath } : void 0;
  const cacheVerifiers = withOfflineCheckCacheIdentities(verifiers);
  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: cacheVerifiers,
      hashLockfile
    });
    if (result2.hit) {
      if (verifiers.length > 0) {
        lockfileVerificationLogger.debug({
          status: "cached",
          verifiedAt: result2.verifiedAt,
          lockfilePath: options?.lockfilePath
        });
      }
      return;
    }
    cachePrecomputed = result2.precomputed;
  }
  const { candidates, shapeViolations, invalidAliases } = collectCandidates(lockfile);
  if (invalidAliases.length > 0) {
    throw buildInvalidAliasError(invalidAliases);
  }
  if (shapeViolations.length > 0) {
    throw buildVerificationError(shapeViolations);
  }
  if (verifiers.length === 0)
    return;
  if (candidates.size === 0) {
    if (cache) {
      recordVerification(cache.cacheDir, {
        lockfilePath: cache.lockfilePath,
        verifiers: cacheVerifiers,
        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: cacheVerifiers,
          hashLockfile
        }, cachePrecomputed);
      }
      return;
    }
    throw buildVerificationError(violations);
  } finally {
    lockfileVerificationLogger.debug({
      status: terminalStatus,
      entries: candidates.size,
      elapsedMs: Date.now() - startedAt,
      lockfilePath: options?.lockfilePath
    });
  }
}
function buildInvalidAliasError(aliases) {
  const sorted = [...aliases].sort();
  const visible = sorted.slice(0, MAX_VIOLATIONS_TO_PRINT);
  const omitted = sorted.length - visible.length;
  const breakdown = visible.map((alias) => `  ${JSON.stringify(alias)}`).join("\n");
  const details = omitted > 0 ? `${breakdown}
  \u2026and ${omitted} more` : breakdown;
  const plural2 = aliases.length === 1 ? "alias" : "aliases";
  return new PnpmError(INVALID_DEPENDENCY_ALIAS_CODE, `The lockfile contains ${aliases.length} dependency ${plural2} that are not valid package names:
${details}`, {
    hint: "A dependency alias becomes a directory under node_modules, so it must be a valid npm package name \u2014 a single `name` or `@scope/name` with no leading `.` or `_`, and not a reserved name such as `node_modules`. An alias containing path-traversal segments or a reserved name such as `.bin` or `.pnpm` could make an install write outside the intended directory or overwrite pnpm-owned layout. This usually means the lockfile was tampered with \u2014 inspect recent changes to pnpm-lock.yaml before trusting it."
  });
}
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 isRegistryShapedResolution(resolution) {
  if (resolution == null)
    return true;
  if (typeof resolution !== "object")
    return false;
  const { type: type4, gitHosted, tarball, variants } = resolution;
  if (type4 === "variations") {
    return Array.isArray(variants) && variants.every((variant) => isRegistryShapedResolution(variant?.resolution));
  }
  if (typeof type4 === "string" && type4.startsWith("custom:"))
    return true;
  if (type4 != null)
    return false;
  if (gitHosted != null && (typeof gitHosted !== "boolean" || gitHosted))
    return false;
  if (typeof tarball === "string" && tarball !== "") {
    if (!/^https?:\/\//i.test(tarball))
      return false;
    if (isGitHostedTarballUrl(tarball))
      return false;
  }
  return true;
}
function collectCandidates(lockfile) {
  const candidates = /* @__PURE__ */ new Map();
  const shapeViolations = [];
  const invalidAliases = /* @__PURE__ */ new Set();
  for (const importer of Object.values(lockfile.importers ?? {})) {
    pushInvalidAliases(importer.dependencies, invalidAliases);
    pushInvalidAliases(importer.devDependencies, invalidAliases);
    pushInvalidAliases(importer.optionalDependencies, invalidAliases);
  }
  for (const [depPath, snapshot] of Object.entries(lockfile.packages ?? {})) {
    pushInvalidAliases(snapshot.dependencies, invalidAliases);
    pushInvalidAliases(snapshot.optionalDependencies, invalidAliases);
    const { name, version: version2, nonSemverVersion } = nameVerFromPkgSnapshot(depPath, snapshot);
    if (!name || !version2)
      continue;
    if (nonSemverVersion == null && !isRegistryShapedResolution(snapshot.resolution)) {
      shapeViolations.push({
        name,
        version: version2,
        resolution: snapshot.resolution,
        code: RESOLUTION_SHAPE_MISMATCH_VIOLATION_CODE,
        reason: "a registry-style dependency path is backed by a non-registry resolution"
      });
    }
    const key = `${name}@${version2}@${nonSemverVersion ?? ""}@${JSON.stringify(snapshot.resolution)}`;
    candidates.set(key, {
      name,
      version: version2,
      nonSemverVersion,
      resolution: snapshot.resolution
    });
  }
  return { candidates, shapeViolations, invalidAliases: Array.from(invalidAliases) };
}
function pushInvalidAliases(deps, invalid) {
  if (deps == null)
    return;
  for (const alias of Object.keys(deps)) {
    if (!isValidDependencyAlias(alias))
      invalid.add(alias);
  }
}
async function iterateLockfileViolations(candidates, verifiers, concurrency) {
  const violations = [];
  let fetchError;
  const limit = pLimit(concurrency ?? DEFAULT_CONCURRENCY);
  await Promise.all(Array.from(candidates.values(), ({ name, version: version2, nonSemverVersion, resolution }) => limit(async () => {
    try {
      for (const verifier of verifiers) {
        const result2 = await verifier.verify(resolution, { name, version: version2, nonSemverVersion });
        if (!result2.ok) {
          violations.push({ name, version: version2, resolution, code: result2.code, reason: result2.reason });
          break;
        }
      }
    } catch (err2) {
      fetchError ??= err2;
    }
  })));
  if (fetchError != null)
    throw fetchError;
  return violations;
}
var MAX_VIOLATIONS_TO_PRINT, DEFAULT_CONCURRENCY, RESOLUTION_SHAPE_MISMATCH_VIOLATION_CODE, INVALID_DEPENDENCY_ALIAS_CODE, RESOLUTION_SHAPE_CACHE_IDENTITY, DEPENDENCY_ALIAS_CACHE_IDENTITY;
var init_verifyLockfileResolutions = __esm({
  "../installing/deps-installer/lib/install/verifyLockfileResolutions.js"() {
    "use strict";
    init_lib6();
    init_lib70();
    init_lib2();
    init_lib111();
    init_lib73();
    init_p_limit();
    init_verifyLockfileResolutionsCache();
    MAX_VIOLATIONS_TO_PRINT = 20;
    DEFAULT_CONCURRENCY = 64;
    RESOLUTION_SHAPE_MISMATCH_VIOLATION_CODE = "RESOLUTION_SHAPE_MISMATCH";
    INVALID_DEPENDENCY_ALIAS_CODE = "INVALID_DEPENDENCY_NAME";
    RESOLUTION_SHAPE_CACHE_IDENTITY = {
      policy: { resolutionShapeCheck: true },
      canTrustPastCheck: (cached) => cached.resolutionShapeCheck === true
    };
    DEPENDENCY_ALIAS_CACHE_IDENTITY = {
      policy: { dependencyAliasCheck: true },
      canTrustPastCheck: (cached) => cached.dependencyAliasCheck === true
    };
  }
});

// ../installing/deps-installer/lib/install/warnOnStaleConvergenceOverrides.js
async function warnOnStaleConvergenceOverrides(opts3) {
  const convergeOverrides = opts3.parsedOverrides.filter(({ converge: converge3 }) => converge3);
  if (convergeOverrides.length === 0)
    return;
  const { publishedBy, publishedByExclude } = getPublishedByPolicy(opts3);
  await Promise.all(convergeOverrides.map(async (override) => {
    const name = override.targetPkg.name;
    const ranges = opts3.convergeDeclaredRanges.get(name);
    if (ranges == null || ranges.size === 0)
      return;
    const candidates = await Promise.all([...ranges].map(async (range) => {
      try {
        const response = await opts3.requestPackage({ alias: name, bareSpecifier: range }, {
          downloadPriority: 0,
          lockfileDir: opts3.lockfileDir,
          projectDir: opts3.lockfileDir,
          preferredVersions: {},
          skipFetch: true,
          publishedBy,
          publishedByExclude
        });
        if (response.body.policyViolation != null)
          return void 0;
        return response.body.manifest?.version;
      } catch {
        return void 0;
      }
    }));
    const best = candidates.filter((version2) => version2 != null && import_semver41.default.gt(version2, override.newBareSpecifier)).sort(import_semver41.default.rcompare).find((version2) => [...ranges].every((range) => import_semver41.default.satisfies(version2, range, true)));
    if (best == null)
      return;
    globalWarn(`The convergence override "${name}@": "${override.newBareSpecifier}" is stale: every declared range of ${name} also admits ${best}. Change the override's value to ${best} in pnpm-workspace.yaml, or remove the override and run "pnpm dedupe".`);
  }));
}
var import_semver41;
var init_warnOnStaleConvergenceOverrides = __esm({
  "../installing/deps-installer/lib/install/warnOnStaleConvergenceOverrides.js"() {
    "use strict";
    init_lib37();
    init_lib3();
    import_semver41 = __toESM(require_semver2(), 1);
  }
});

// ../installing/deps-installer/lib/install/recordLockfileVerified.js
function recordLockfileVerified(opts3) {
  if (!opts3.cacheDir)
    return;
  if (!opts3.resolutionVerifiers?.length)
    return;
  if (!opts3.lockfile.packages)
    return;
  recordVerification(opts3.cacheDir, {
    lockfilePath: opts3.lockfilePath,
    verifiers: withOfflineCheckCacheIdentities(opts3.resolutionVerifiers),
    hashLockfile: () => hashObject(opts3.lockfile)
  });
}
var init_recordLockfileVerified = __esm({
  "../installing/deps-installer/lib/install/recordLockfileVerified.js"() {
    "use strict";
    init_lib70();
    init_verifyLockfileResolutions();
    init_verifyLockfileResolutionsCache();
  }
});

// ../installing/deps-installer/lib/install/writeLockfilesAndRecordVerified.js
import path132 from "node:path";
async function writeLockfilesAndRecordVerified(opts3) {
  const cacheActive = opts3.cacheDir != null && (opts3.resolutionVerifiers?.length ?? 0) > 0;
  const wantedLockfileName = cacheActive ? await getWantedLockfileName({
    useGitBranchLockfile: opts3.useGitBranchLockfile,
    mergeGitBranchLockfiles: opts3.mergeGitBranchLockfiles
  }) : void 0;
  const written = await writeLockfiles({
    wantedLockfile: opts3.wantedLockfile,
    wantedLockfileDir: opts3.wantedLockfileDir,
    currentLockfile: opts3.currentLockfile,
    currentLockfileDir: opts3.currentLockfileDir,
    useGitBranchLockfile: opts3.useGitBranchLockfile,
    mergeGitBranchLockfiles: opts3.mergeGitBranchLockfiles,
    wantedLockfileName
  });
  if (cacheActive) {
    recordLockfileVerified({
      cacheDir: opts3.cacheDir,
      lockfilePath: path132.resolve(opts3.wantedLockfileDir, wantedLockfileName),
      lockfile: written.wantedLockfile,
      resolutionVerifiers: opts3.resolutionVerifiers
    });
  }
  return written;
}
var init_writeLockfilesAndRecordVerified = __esm({
  "../installing/deps-installer/lib/install/writeLockfilesAndRecordVerified.js"() {
    "use strict";
    init_lib80();
    init_recordLockfileVerified();
  }
});

// ../installing/deps-installer/lib/install/writeWantedLockfileAndRecordVerified.js
import path133 from "node:path";
async function writeWantedLockfileAndRecordVerified(opts3) {
  const cacheActive = opts3.cacheDir != null && (opts3.resolutionVerifiers?.length ?? 0) > 0;
  const lockfileName = cacheActive ? await getWantedLockfileName({
    useGitBranchLockfile: opts3.useGitBranchLockfile,
    mergeGitBranchLockfiles: opts3.mergeGitBranchLockfiles
  }) : void 0;
  const written = await writeWantedLockfile(opts3.lockfileDir, opts3.lockfile, {
    useGitBranchLockfile: opts3.useGitBranchLockfile,
    mergeGitBranchLockfiles: opts3.mergeGitBranchLockfiles,
    lockfileName
  });
  if (cacheActive) {
    recordLockfileVerified({
      cacheDir: opts3.cacheDir,
      lockfilePath: path133.resolve(opts3.lockfileDir, lockfileName),
      lockfile: written,
      resolutionVerifiers: opts3.resolutionVerifiers
    });
  }
  return written;
}
var init_writeWantedLockfileAndRecordVerified = __esm({
  "../installing/deps-installer/lib/install/writeWantedLockfileAndRecordVerified.js"() {
    "use strict";
    init_lib80();
    init_recordLockfileVerified();
  }
});

// ../../pnpr/client/lib/protocol.js
var init_protocol = __esm({
  "../../pnpr/client/lib/protocol.js"() {
    "use strict";
  }
});

// ../../pnpr/client/lib/resolveViaPnprServer.js
import http from "node:http";
import https from "node:https";
import { URL as URL6 } from "node:url";
import { gunzip } from "node:zlib";
async function resolveViaPnprServer(opts3) {
  const projects = opts3.projects ?? [{
    dir: ".",
    name: opts3.name,
    version: opts3.version,
    dependencies: opts3.dependencies,
    devDependencies: opts3.devDependencies,
    optionalDependencies: opts3.optionalDependencies
  }];
  const requestBody = JSON.stringify({
    projects,
    registry: opts3.registry,
    namedRegistries: opts3.namedRegistries,
    overrides: opts3.overrides,
    catalogs: opts3.catalogs,
    nodeVersion: opts3.nodeVersion ?? process.version.slice(1),
    os: process.platform,
    arch: process.arch,
    minimumReleaseAge: opts3.minimumReleaseAge,
    minimumReleaseAgeExclude: opts3.minimumReleaseAgeExclude,
    minimumReleaseAgeIgnoreMissingTime: opts3.minimumReleaseAgeIgnoreMissingTime,
    trustPolicy: opts3.trustPolicy,
    trustPolicyExclude: opts3.trustPolicyExclude,
    trustPolicyIgnoreAfter: opts3.trustPolicyIgnoreAfter,
    trustLockfile: opts3.trustLockfile,
    frozenLockfile: opts3.frozenLockfile,
    preferFrozenLockfile: opts3.preferFrozenLockfile,
    // Sent as-is: `opts.lockfile` is already the on-disk format the wire
    // protocol carries (split `packages`/`snapshots`, `{ specifier, version }`
    // importer deps).
    lockfile: opts3.lockfile
  });
  const body = await postResolve(opts3.registryUrl, requestBody, opts3.authorization);
  const terminal = parseTerminalFrame(body.toString("utf-8"));
  if (terminal.type === "error") {
    throw new Error(terminal.message);
  }
  if (terminal.type === "violations") {
    const rendered = terminal.violations.map((violation) => `  ${violation.name}@${violation.version}: ${violation.reason}`).join("\n");
    throw new Error(`pnpr server rejected the lockfile under the verification policy:
${rendered}`);
  }
  return {
    // The server speaks the on-disk lockfile format; convert it to the
    // in-memory `LockfileObject` the rest of pnpm consumes.
    lockfile: convertToLockfileObject(terminal.lockfile),
    stats: terminal.stats
  };
}
function parseTerminalFrame(body) {
  for (const line of body.split("\n")) {
    if (line.trim() === "")
      continue;
    const frame = JSON.parse(line);
    if (frame.type === "package")
      continue;
    if (frame.type === "done" || frame.type === "error" || frame.type === "violations") {
      return frame;
    }
    throw new Error(`pnpr server /-/pnpr/v0/resolve stream emitted an unknown frame type: ${String(frame.type)}`);
  }
  throw new Error("pnpr server /-/pnpr/v0/resolve stream ended without a terminal frame");
}
async function postResolve(registryUrl, body, authorization) {
  const base = registryUrl.endsWith("/") ? registryUrl : `${registryUrl}/`;
  const url7 = new URL6("-/pnpr/v0/resolve", base);
  const requestFn = url7.protocol === "https:" ? https.request : http.request;
  const headers = {
    "Content-Type": "application/json",
    "Content-Length": Buffer.byteLength(body),
    "Accept-Encoding": "gzip"
  };
  if (authorization != null) {
    headers.Authorization = authorization;
  }
  return new Promise((resolve4, reject3) => {
    const req2 = requestFn(url7, {
      method: "POST",
      timeout: REQUEST_TIMEOUT,
      headers
    }, (res) => {
      const chunks = [];
      res.on("data", (chunk) => chunks.push(chunk));
      res.on("end", () => {
        const raw = Buffer.concat(chunks);
        const finish = (body2) => {
          if (res.statusCode !== 200) {
            reject3(new Error(`pnpr server responded with ${res.statusCode}: ${body2.toString("utf-8")}`));
          } else {
            resolve4(body2);
          }
        };
        if (res.headers["content-encoding"] === "gzip" || raw[0] === 31 && raw[1] === 139) {
          gunzip(raw, (err2, decompressed) => {
            if (err2)
              reject3(err2);
            else
              finish(decompressed);
          });
        } else {
          finish(raw);
        }
      });
      res.on("error", reject3);
    });
    req2.on("timeout", () => {
      req2.destroy(new Error(`pnpr server request timed out after ${REQUEST_TIMEOUT / 1e3}s (${registryUrl})`));
    });
    req2.on("error", (err2) => {
      if (err2.code === "ECONNREFUSED") {
        reject3(new Error(`Could not connect to pnpr server at ${registryUrl}. Is the server running?`));
      } else {
        reject3(err2);
      }
    });
    req2.write(body);
    req2.end();
  });
}
var REQUEST_TIMEOUT;
var init_resolveViaPnprServer = __esm({
  "../../pnpr/client/lib/resolveViaPnprServer.js"() {
    "use strict";
    init_lib80();
    REQUEST_TIMEOUT = 6e5;
  }
});

// ../../pnpr/client/lib/index.js
var lib_exports7 = {};
__export(lib_exports7, {
  resolveViaPnprServer: () => resolveViaPnprServer
});
var init_lib125 = __esm({
  "../../pnpr/client/lib/index.js"() {
    "use strict";
    init_protocol();
    init_resolveViaPnprServer();
  }
});

// ../installing/deps-installer/lib/install/index.js
import path134 from "node:path";
async function install(manifest, opts3) {
  const rootDir = opts3.dir ?? process.cwd();
  if (opts3.pnprServer) {
    return installViaPnprServer(manifest, rootDir, opts3);
  }
  const { updatedCatalogs, updatedProjects: projects, ignoredBuilds, resolutionPolicyViolations, dryRunResult } = await mutateModules([
    {
      mutation: "install",
      pruneDirectDependencies: opts3.pruneDirectDependencies,
      rootDir,
      update: opts3.update,
      updateMatching: opts3.updateMatching,
      updateToLatest: opts3.updateToLatest,
      updatePackageManifest: opts3.updatePackageManifest
    }
  ], {
    ...opts3,
    allProjects: [{
      buildIndex: 0,
      manifest,
      rootDir,
      binsDir: opts3.binsDir
    }]
  });
  return { updatedCatalogs, updatedManifest: projects[0].manifest, ignoredBuilds, resolutionPolicyViolations, dryRunResult };
}
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,
    dryRunResult: result2.dryRunResult
  };
}
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 opts3 = extendOptions(maybeOpts);
  if (opts3.pnprServer && canUsePnprForMutations(projects)) {
    const pnprResult = await mutateModulesViaPnpr(projects, opts3);
    if (pnprResult)
      return pnprResult;
  }
  const allowBuild = createAllowBuildFunction(opts3);
  if (!opts3.include.dependencies && opts3.include.optionalDependencies) {
    throw new PnpmError("OPTIONAL_DEPS_REQUIRE_PROD_DEPS", "Optional dependencies cannot be installed without production dependencies");
  }
  const installsOnly = allMutationsAreInstalls(projects);
  if (!installsOnly)
    opts3.strictPeerDependencies = false;
  const rootProjectManifest = opts3.allProjects.find(({ rootDir }) => rootDir === opts3.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(opts3.lockfileDir);
  let ctx = await getContext(opts3);
  if (!opts3.lockfileOnly && !isCheckOnlyInstall(opts3) && ctx.modulesFile != null) {
    const { purged } = await validateModules(ctx.modulesFile, Object.values(ctx.projects), {
      forceNewModules: installsOnly,
      include: opts3.include,
      lockfileDir: opts3.lockfileDir,
      modulesDir: opts3.modulesDir ?? "node_modules",
      registries: opts3.registries,
      storeDir: opts3.storeDir,
      virtualStoreDir: ctx.virtualStoreDir,
      virtualStoreDirMaxLength: opts3.virtualStoreDirMaxLength,
      confirmModulesPurge: opts3.confirmModulesPurge && !opts3.ci,
      hoistPattern: opts3.hoistPattern,
      currentHoistPattern: ctx.currentHoistPattern,
      publicHoistPattern: opts3.publicHoistPattern,
      currentPublicHoistPattern: ctx.currentPublicHoistPattern,
      global: opts3.global
    });
    if (purged) {
      ctx = await getContext(opts3);
    }
  }
  const willDelegateToPacquet = opts3.runPacquet != null && opts3.useLockfile && !opts3.useGitBranchLockfile && !opts3.mergeGitBranchLockfiles && !isCheckOnlyInstall(opts3) && opts3.enableModulesDir && installsOnly && !opts3.lockfileOnly && !opts3.fixLockfile && !opts3.dedupe && !ctx.lockfileHadConflicts && // Frozen materialization: pacquet reads the existing lockfile and
  // re-applies the resolver-policy gate as it walks it.
  (ctx.existsNonEmptyWantedLockfile && (opts3.frozenLockfile === true || opts3.frozenLockfileIfExists === true) || // Resolving install: pacquet (>= 0.11.7) re-resolves from the
  // manifests itself — applying the policy during fresh resolution —
  // so the existing lockfile entries verified here would just be
  // discarded. If a policy handler is active, keep resolution in pnpm
  // so violations can be returned to the command layer.
  opts3.saveLockfile && opts3.runPacquet.supportsResolution && opts3.frozenLockfile !== true && opts3.nodeLinker !== "hoisted" && opts3.handleResolutionPolicyViolations == null);
  let verifyLockfilePromise;
  if (!willDelegateToPacquet && !opts3.trustLockfile) {
    const cacheActive = opts3.cacheDir != null && opts3.resolutionVerifiers.length > 0;
    const wantedLockfilePath = cacheActive ? path134.resolve(ctx.lockfileDir, await getWantedLockfileName({
      useGitBranchLockfile: opts3.useGitBranchLockfile,
      mergeGitBranchLockfiles: opts3.mergeGitBranchLockfiles
    })) : void 0;
    verifyLockfilePromise = verifyLockfileResolutions(ctx.wantedLockfile, opts3.resolutionVerifiers, {
      cacheDir: opts3.cacheDir,
      lockfilePath: wantedLockfilePath
    });
    verifyLockfilePromise.catch(() => {
    });
  }
  const verifyLockfile = verifyLockfilePromise && (() => verifyLockfilePromise);
  if (opts3.hooks.preResolution) {
    for (const preResolution of opts3.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 = opts3.hooks.customResolvers && ctx.existsNonEmptyWantedLockfile && !opts3.frozenLockfile && opts3.saveLockfile;
  if (shouldCheckCustomResolverForceResolve) {
    forceResolutionFromHook = await checkCustomResolverForceResolve(opts3.hooks.customResolvers, ctx.wantedLockfile);
  }
  const pruneVirtualStore = !opts3.enableGlobalVirtualStore && (ctx.modulesFile?.prunedAt && opts3.modulesCacheMaxAge > 0 ? cacheExpired(ctx.modulesFile.prunedAt, opts3.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 settleInstall(_install(), verifyLockfilePromise);
  if (global["verifiedFileIntegrity"] > 1e3) {
    globalInfo(`The integrity of ${global["verifiedFileIntegrity"]} files was checked. This might have caused installation to take longer.`);
  }
  if (opts3.mergeGitBranchLockfiles) {
    await cleanGitBranchLockfiles(ctx.lockfileDir);
  }
  let ignoredBuilds = result2.ignoredBuilds;
  if (!opts3.ignoreScripts && ignoredBuilds?.size) {
    ignoredBuilds = await runUnignoredDependencyBuilds(opts3, ignoredBuilds, ctx.wantedLockfile, allowBuild);
  }
  let revokedBuilds = false;
  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;
        if (oldAllowBuild(depPath, { trustPackageIdentity: true }) !== true)
          continue;
        if (allowBuild?.(depPath) === void 0) {
          ignoredBuilds ??= /* @__PURE__ */ new Set();
          ignoredBuilds.add(depPath);
          revokedBuilds = true;
        }
      }
    }
  }
  if (revokedBuilds && !opts3.lockfileOnly && opts3.enableModulesDir) {
    const writtenManifest = await readModulesManifest(ctx.rootModulesDir);
    if (writtenManifest) {
      writtenManifest.ignoredBuilds = ignoredBuilds;
      await writeModulesManifest(ctx.rootModulesDir, writtenManifest);
    }
  }
  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 ?? [],
    dryRunResult: result2.dryRunResult
  };
  async function settleInstall(install2, verification) {
    if (verification == null)
      return install2;
    install2.catch(() => {
    });
    try {
      await verification;
      return await install2;
    } catch (err2) {
      detachReporter();
      throw err2;
    }
  }
  async function _install() {
    const scriptsOpts = {
      extraBinPaths: opts3.extraBinPaths,
      extraNodePaths: ctx.extraNodePaths,
      extraEnv: opts3.extraEnv,
      preferSymlinkedExecutables: opts3.preferSymlinkedExecutables,
      userAgent: opts3.userAgent,
      resolveSymlinksInInjectedDirs: opts3.resolveSymlinksInInjectedDirs,
      scriptsPrependNodePath: opts3.scriptsPrependNodePath,
      scriptShell: opts3.scriptShell,
      shellEmulator: opts3.shellEmulator,
      stdio: opts3.ownLifecycleHooksStdio,
      storeController: opts3.storeController,
      unsafePerm: opts3.unsafePerm || false
    };
    if (!opts3.ignoreScripts && !opts3.ignorePackageManifest && rootProjectManifest?.scripts?.[DEV_PREINSTALL]) {
      await runLifecycleHook(DEV_PREINSTALL, rootProjectManifest, {
        ...scriptsOpts,
        depPath: opts3.lockfileDir,
        pkgRoot: opts3.lockfileDir,
        rootModulesDir: ctx.rootModulesDir
      });
    }
    const packageExtensionsChecksum = hashObjectNullableWithPrefix(opts3.packageExtensions);
    const pnpmfileChecksum = await opts3.hooks.calculatePnpmfileChecksum?.();
    const resolvedPatchedDeps = resolvePatchedDependencies(opts3.patchedDependencies, opts3.lockfileDir);
    const patchedDependencies = opts3.ignorePackageManifest ? ctx.wantedLockfile.patchedDependencies : resolvedPatchedDeps ? await calcPatchHashes(resolvedPatchedDeps) : {};
    const patchGroupInput = resolvedPatchedDeps ? Object.fromEntries(Object.entries(patchedDependencies ?? {}).map(([key, hash2]) => {
      let patchFilePath = resolvedPatchedDeps[key];
      if (!patchFilePath) {
        const lastAt = key.lastIndexOf("@");
        const pkgName = lastAt > 0 ? key.slice(0, lastAt) : key;
        patchFilePath = resolvedPatchedDeps[pkgName];
      }
      return [key, { hash: hash2, patchFilePath }];
    })) : patchedDependencies;
    const patchGroups = patchGroupInput ? groupPatchedDependencies(patchGroupInput) : void 0;
    const frozenLockfile = opts3.frozenLockfile || opts3.frozenLockfileIfExists && ctx.existsNonEmptyWantedLockfile;
    let outdatedLockfileSettingName = null;
    const overridesMap = createOverridesMapFromParsed(opts3.parsedOverrides);
    const lockfileSettings = {
      autoInstallPeers: opts3.autoInstallPeers,
      catalogs: opts3.catalogs,
      dedupePeers: opts3.dedupePeers || void 0,
      injectWorkspacePackages: opts3.injectWorkspacePackages,
      excludeLinksFromLockfile: opts3.excludeLinksFromLockfile,
      peersSuffixMaxLength: opts3.peersSuffixMaxLength,
      ignoredOptionalDependencies: opts3.ignoredOptionalDependencies?.sort(),
      packageExtensionsChecksum,
      patchedDependencies,
      pnpmfileChecksum
    };
    if (!opts3.ignorePackageManifest) {
      outdatedLockfileSettingName = getOutdatedLockfileSetting(ctx.wantedLockfile, {
        ...lockfileSettings,
        overrides: overridesMap
      });
      if (frozenLockfile && outdatedLockfileSettingName != null) {
        throw new LockfileConfigMismatchError(outdatedLockfileSettingName);
      }
    }
    const _isWantedDepBareSpecifierSame = isWantedDepBareSpecifierSame.bind(null, ctx.wantedLockfile.catalogs, opts3.catalogs);
    const upToDateLockfileMajorVersion = ctx.wantedLockfile.lockfileVersion.toString().startsWith(`${LOCKFILE_MAJOR_VERSION}.`);
    let didFastUpdateOverrides = false;
    const contextProjects = Object.values(ctx.projects);
    const hasChangedSpecifiers = outdatedLockfileSettingName == null && hasChangedProjectSpecifiers(ctx.wantedLockfile, contextProjects);
    const canTryFastUpdateLockfile = (outdatedLockfileSettingName === "catalogs" || outdatedLockfileSettingName === "overrides" || hasChangedSpecifiers) && !frozenLockfile && installsOnly && !isCheckOnlyInstall(opts3) && opts3.preferFrozenLockfile && opts3.useLockfile && opts3.saveLockfile && opts3.runPacquet == null && !opts3.fixLockfile && !opts3.dedupe && !opts3.updateChecksums && !opts3.force && !opts3.forceFullResolution && !forceResolutionFromHook && !opts3.hooks.readPackage?.length && !opts3.hooks.preResolution?.length && !opts3.hooks.afterAllResolved?.length && opts3.hooks.customResolvers == null && !ctx.lockfileHadConflicts && ctx.wantedLockfile.lockfileVersion === LOCKFILE_VERSION && !isEmptyLockfile(ctx.wantedLockfile) && (!opts3.pruneLockfileImporters || Object.keys(ctx.wantedLockfile.importers).length === Object.keys(ctx.projects).length) && ctx.wantedLockfile.time == null;
    if (canTryFastUpdateLockfile) {
      const changedSetting = outdatedLockfileSettingName;
      await verifyLockfilePromise;
      const overridesUseCatalogs = Object.values(opts3.overrides).some((specifier) => parseCatalogProtocol(specifier) != null);
      const lockfileCatalogs = ctx.wantedLockfile.catalogs == null ? {} : Object.fromEntries(Object.entries(ctx.wantedLockfile.catalogs).map(([catalogName, catalog]) => [
        catalogName,
        Object.fromEntries(Object.entries(catalog).map(([alias, entry]) => [alias, entry.specifier]))
      ]));
      const onlyChangedSetting = getOutdatedLockfileSetting(ctx.wantedLockfile, {
        ...lockfileSettings,
        catalogs: changedSetting === "catalogs" ? lockfileCatalogs : opts3.catalogs,
        overrides: changedSetting === "overrides" ? ctx.wantedLockfile.overrides : overridesMap
      }) == null;
      const isLockfileUpToDate = (lockfile) => allProjectsAreUpToDate(Object.values(ctx.projects), {
        catalogs: opts3.catalogs,
        autoInstallPeers: opts3.autoInstallPeers,
        excludeLinksFromLockfile: opts3.excludeLinksFromLockfile,
        linkWorkspacePackages: opts3.linkWorkspacePackagesDepth >= 0,
        wantedLockfile: lockfile,
        workspacePackages: ctx.workspacePackages,
        lockfileDir: opts3.lockfileDir
      });
      if (onlyChangedSetting && (changedSetting === "catalogs" || !overridesUseCatalogs) && await tryFastUpdateLockfile(ctx.wantedLockfile, {
        update: async (candidate) => {
          if (changedSetting === "catalogs") {
            return tryFastUpdateCatalogs(candidate, {
              catalogs: opts3.catalogs,
              overrides: opts3.overrides
            });
          }
          if (changedSetting == null) {
            return tryFastUpdateImporters(candidate, contextProjects);
          }
          const { publishedBy, publishedByExclude } = getPublishedByPolicy(opts3);
          return tryFastUpdateOverrides(candidate, {
            lockfileDir: opts3.lockfileDir,
            lockfileIncludeTarballUrl: opts3.lockfileIncludeTarballUrl,
            overrides: overridesMap,
            parsedOverrides: opts3.parsedOverrides,
            readPackageHook: opts3.readPackageHook,
            registries: ctx.registries,
            requestPackage: opts3.storeController.requestPackage,
            publishedBy,
            publishedByExclude,
            trustPolicy: opts3.trustPolicy,
            trustPolicyExclude: opts3.trustPolicyExclude ? createPackageVersionPolicyOrThrow(opts3.trustPolicyExclude, "trustPolicyExclude") : void 0,
            trustPolicyIgnoreAfter: opts3.trustPolicyIgnoreAfter,
            isLockfileUpToDate
          });
        },
        isLockfileUpToDate,
        verifyLockfile: (lockfile) => verifyLockfileResolutions(lockfile, [])
      })) {
        outdatedLockfileSettingName = null;
        ctx.wantedLockfileIsModified = true;
        didFastUpdateOverrides = changedSetting === "overrides";
      }
    }
    const outdatedLockfileSettings = outdatedLockfileSettingName != null;
    let needsFullResolution = outdatedLockfileSettings || opts3.fixLockfile || opts3.updateChecksums || !upToDateLockfileMajorVersion || opts3.forceFullResolution || forceResolutionFromHook;
    if (needsFullResolution) {
      ctx.wantedLockfile.settings = {
        autoInstallPeers: opts3.autoInstallPeers,
        dedupePeers: opts3.dedupePeers || void 0,
        excludeLinksFromLockfile: opts3.excludeLinksFromLockfile,
        peersSuffixMaxLength: opts3.peersSuffixMaxLength,
        injectWorkspacePackages: opts3.injectWorkspacePackages
      };
      ctx.wantedLockfile.overrides = overridesMap;
      ctx.wantedLockfile.packageExtensionsChecksum = packageExtensionsChecksum;
      ctx.wantedLockfile.ignoredOptionalDependencies = opts3.ignoredOptionalDependencies;
      ctx.wantedLockfile.pnpmfileChecksum = pnpmfileChecksum;
      ctx.wantedLockfile.patchedDependencies = patchedDependencies;
    } else if (!frozenLockfile) {
      ctx.wantedLockfile.settings = {
        autoInstallPeers: opts3.autoInstallPeers,
        dedupePeers: opts3.dedupePeers || void 0,
        excludeLinksFromLockfile: opts3.excludeLinksFromLockfile,
        peersSuffixMaxLength: opts3.peersSuffixMaxLength,
        injectWorkspacePackages: opts3.injectWorkspacePackages
      };
    }
    const frozenInstallResult = await tryFrozenInstall({
      didFastUpdateOverrides,
      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: opts3.autoInstallPeers,
        includeDirect: opts3.includeDirect
      }).map((wantedDependency) => ({ ...wantedDependency, updateSpec: true }));
      if (opts3.packageVulnerabilityAudit) {
        for (const dep of wantedDependencies) {
          let specifier = dep.bareSpecifier;
          const catalogName = specifier ? parseCatalogProtocol(specifier) : null;
          if (catalogName != null) {
            const catalogResult = resolveFromCatalog(opts3.catalogs, { alias: dep.alias, bareSpecifier: specifier });
            specifier = matchCatalogResolveResult(catalogResult, pickCatalogSpecifier);
          }
          const validVersion = import_semver42.default.valid(specifier);
          if (!validVersion)
            continue;
          if (opts3.packageVulnerabilityAudit.isVulnerable(dep.alias, validVersion)) {
            if (catalogName != null && opts3.catalogs?.[catalogName]) {
              opts3.catalogs = {
                ...opts3.catalogs,
                [catalogName]: {
                  ...opts3.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 (opts3.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 = opts3.ignoreCurrentSpecifiers ? {} : getAllDependenciesFromManifest(project.manifest, { autoInstallPeers: opts3.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: opts3.tag,
        dev: project.targetDependenciesField === "devDependencies",
        devDependencies,
        optional: project.targetDependenciesField === "optionalDependencies",
        optionalDependencies,
        updateWorkspaceDependencies: project.update,
        preferredSpecs,
        saveCatalogName: opts3.saveCatalogName,
        overrides: opts3.overrides,
        defaultCatalog: opts3.catalogs?.default
      });
      if (opts3.catalogMode !== "manual") {
        for (const wantedDep of wantedDeps) {
          if (wantedDep.bareSpecifier?.startsWith("runtime:"))
            continue;
          const perDepCatalogName = getPerDepCatalogName(wantedDep, opts3.saveCatalogName);
          const catalogBareSpecifier = `catalog:${perDepCatalogName === "default" ? "" : perDepCatalogName}`;
          const catalog = resolveFromCatalog(opts3.catalogs, { ...wantedDep, bareSpecifier: catalogBareSpecifier });
          const catalogDepSpecifier = matchCatalogResolveResult(catalog, pickCatalogSpecifier);
          if (!catalogDepSpecifier || wantedDep.bareSpecifier === catalogBareSpecifier || import_semver42.default.valid(wantedDep.bareSpecifier) && import_semver42.default.valid(catalogDepSpecifier) && import_semver42.default.eq(wantedDep.bareSpecifier, catalogDepSpecifier)) {
            wantedDep.saveCatalogName = perDepCatalogName;
            continue;
          }
          switch (opts3.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: opts3.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, {
      ...opts3,
      allowBuild,
      currentLockfileIsUpToDate: !ctx.existsNonEmptyWantedLockfile || ctx.currentLockfileIsUpToDate,
      makePartialCurrentLockfile,
      needsFullResolution,
      pruneVirtualStore,
      scriptsOpts,
      updateLockfileMinorVersion: true,
      patchedDependencies: patchGroups,
      verifyLockfile
    });
    return {
      updatedCatalogs: result3.updatedCatalogs,
      updatedProjects: result3.projects,
      stats: result3.stats,
      depsRequiringBuild: result3.depsRequiringBuild,
      ignoredBuilds: result3.ignoredBuilds,
      resolutionPolicyViolations: result3.resolutionPolicyViolations,
      dryRunResult: result3.dryRunResult
    };
  }
  async function tryFrozenInstall({ didFastUpdateOverrides, frozenLockfile, needsFullResolution, patchGroups, upToDateLockfileMajorVersion }) {
    const isFrozenInstallPossible = (
      // A frozen install is never possible when any of these are true:
      !ctx.lockfileHadConflicts && !opts3.fixLockfile && !opts3.dedupe && // A check-only install (`lockfileCheck`, used by `--dry-run` and
      // `dedupe --check`) must always run a full resolution so the wanted
      // lockfile can be compared, and must never materialize anything. The
      // frozen path would skip resolution and/or perform a real install.
      !isCheckOnlyInstall(opts3) && 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.
      opts3.ignorePackageManifest || !needsFullResolution && opts3.preferFrozenLockfile && (!opts3.pruneLockfileImporters || Object.keys(ctx.wantedLockfile.importers).length === Object.keys(ctx.projects).length) && !isEmptyLockfile(ctx.wantedLockfile) && ctx.wantedLockfile.lockfileVersion === LOCKFILE_VERSION && await allProjectsAreUpToDate(Object.values(ctx.projects), {
        catalogs: opts3.catalogs,
        autoInstallPeers: opts3.autoInstallPeers,
        excludeLinksFromLockfile: opts3.excludeLinksFromLockfile,
        linkWorkspacePackages: opts3.linkWorkspacePackagesDepth >= 0,
        wantedLockfile: ctx.wantedLockfile,
        workspacePackages: ctx.workspacePackages,
        lockfileDir: opts3.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 (!opts3.ignorePackageManifest) {
      if (frozenLockfile && !ctx.existsWantedLockfile && Object.values(ctx.projects).some((project) => pkgHasDependencies(project.manifest))) {
        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"'
        });
      }
      const _satisfiesPackageManifest = satisfiesPackageManifest.bind(null, {
        autoInstallPeers: opts3.autoInstallPeers,
        excludeLinksFromLockfile: opts3.excludeLinksFromLockfile
      });
      for (const { id, manifest, rootDir } of Object.values(ctx.projects)) {
        const { satisfies: satisfies4, detailedReason } = _satisfiesPackageManifest(ctx.wantedLockfile.importers[id], manifest);
        if (!satisfies4) {
          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 ` + path134.join("<ROOT>", path134.relative(opts3.lockfileDir, path134.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 (opts3.lockfileOnly) {
      await writeWantedLockfile(ctx.lockfileDir, ctx.wantedLockfile);
      return {
        updatedProjects: projects.map((mutatedProject) => ctx.projects[mutatedProject.rootDir]),
        ignoredBuilds: void 0
      };
    }
    if (isEmptyLockfile(ctx.wantedLockfile)) {
      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: opts3.lockfileDir });
    } else {
      logger.info({ message: "Lockfile is up to date, resolution step is skipped", prefix: opts3.lockfileDir });
    }
    if (opts3.runPacquet != null && opts3.useLockfile && !opts3.useGitBranchLockfile && !opts3.mergeGitBranchLockfiles && !isCheckOnlyInstall(opts3) && opts3.enableModulesDir) {
      try {
        await opts3.runPacquet.run();
      } catch (err2) {
        detachReporter();
        throw err2;
      }
      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,
        ...opts3,
        currentEngine: {
          nodeVersion: opts3.nodeVersion,
          pnpmVersion: opts3.packageManager.name === "pnpm" ? opts3.packageManager.version : ""
        },
        currentHoistedLocations: ctx.modulesFile?.hoistedLocations,
        patchedDependencies: patchGroups,
        selectedProjectDirs: projects.map((project) => project.rootDir),
        allProjects: ctx.projects,
        prunedAt: ctx.modulesFile?.prunedAt,
        pruneVirtualStore,
        relinkChangedDependenciesOnly: didFastUpdateOverrides,
        wantedLockfile: maybeOpts.ignorePackageManifest ? void 0 : ctx.wantedLockfile,
        useLockfile: opts3.useLockfile && ctx.wantedLockfileIsModified,
        verifyLockfile
      });
      if (opts3.useLockfile && opts3.saveLockfile && opts3.mergeGitBranchLockfiles || !upToDateLockfileMajorVersion && !opts3.frozenLockfile) {
        const currentLockfileDir = path134.join(ctx.rootModulesDir, ".pnpm");
        await writeLockfiles({
          currentLockfile: ctx.currentLockfile,
          currentLockfileDir,
          wantedLockfile: ctx.wantedLockfile,
          wantedLockfileDir: ctx.lockfileDir,
          useGitBranchLockfile: opts3.useGitBranchLockfile,
          mergeGitBranchLockfiles: opts3.mergeGitBranchLockfiles
        });
      }
      return {
        updatedProjects: projects.map((mutatedProject) => {
          const project = ctx.projects[mutatedProject.rootDir];
          return {
            ...project,
            manifest: project.originalManifest ?? project.manifest
          };
        }),
        stats,
        ignoredBuilds: ignoredBuilds2
      };
    } catch (error) {
      const isIntegrityError = BROKEN_LOCKFILE_INTEGRITY_ERRORS.has(error.code);
      if (frozenLockfile || error.code !== "ERR_PNPM_LOCKFILE_MISSING_DEPENDENCY" && !isIntegrityError || !ctx.existsNonEmptyWantedLockfile && !ctx.existsCurrentLockfile || isIntegrityError && !opts3.updateChecksums)
        throw error;
      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(opts3, previousIgnoredBuilds, currentLockfile, allowBuild) {
  if (!allowBuild) {
    return previousIgnoredBuilds;
  }
  const pkgsToBuild = [];
  for (const ignoredPkg of previousIgnoredBuilds) {
    if (currentLockfile.packages?.[ignoredPkg] == null)
      continue;
    if (allowBuild(ignoredPkg) === true) {
      pkgsToBuild.push(getPkgIdWithPatchHash(ignoredPkg));
    }
  }
  if (pkgsToBuild.length) {
    return (await buildSelectedPkgs(opts3.allProjects, pkgsToBuild, {
      ...opts3,
      reporter: void 0,
      // We don't want to attach the reporter again, it was already attached.
      rootProjectManifestDir: opts3.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);
  }
}
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, opts3) {
  const rootDir = opts3.dir ?? process.cwd();
  const { updatedCatalogs, updatedProjects: projects, ignoredBuilds, resolutionPolicyViolations } = await mutateModules([
    {
      allowNew: opts3.allowNew,
      dependencySelectors,
      mutation: "installSome",
      peer: opts3.peer,
      pinnedVersion: opts3.pinnedVersion,
      rootDir,
      targetDependenciesField: opts3.targetDependenciesField,
      update: opts3.update,
      updateMatching: opts3.updateMatching,
      updatePackageManifest: opts3.updatePackageManifest,
      updateToLatest: opts3.updateToLatest
    }
  ], {
    ...opts3,
    lockfileDir: opts3.lockfileDir ?? opts3.dir,
    allProjects: [
      {
        buildIndex: 0,
        binsDir: opts3.bin,
        manifest,
        rootDir
      }
    ]
  });
  return { updatedCatalogs, updatedManifest: projects[0].manifest, ignoredBuilds, resolutionPolicyViolations };
}
function isCheckOnlyInstall(opts3) {
  return opts3.lockfileCheck != null || opts3.dryRun === true;
}
function allMutationsAreInstalls(projects) {
  return projects.every((project) => project.mutation === "install" && !project.update && !project.updateMatching);
}
function pacquetResolveResult(projects, ctx) {
  return {
    newLockfile: ctx.wantedLockfile,
    projects: projects.map((project) => ({
      manifest: project.originalManifest ?? project.manifest,
      rootDir: project.rootDir
    })),
    depsRequiringBuild: [],
    resolutionPolicyViolations: []
  };
}
async function materializeOrDelegate(opts3, runHeadlessInstall) {
  if (opts3.runPacquet != null && opts3.useLockfile !== false && opts3.saveLockfile !== false && opts3.useGitBranchLockfile !== true && opts3.mergeGitBranchLockfiles !== true) {
    await opts3.runPacquet.run({ filterResolvedProgress: true });
    return {};
  }
  return runHeadlessInstall();
}
async function linkAllBins3(depNodes, depGraph, opts3) {
  await Promise.all(depNodes.map(async (depNode) => limitLinking5(async () => linkBinsOfDependencies(depNode, depGraph, opts3))));
}
function dedupePackageNamesFromIgnoredBuilds(ignoredBuilds) {
  return Array.from(new Set(Array.from(ignoredBuilds ?? []).map((depPath) => getPkgIdWithPatchHash(depPath)))).sort(import_util14.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 canUsePnprForMutations(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 preparePnprProjects(projects, opts3) {
  const allProjects = opts3.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 mutateModulesViaPnpr(projects, opts3) {
  const pnprProjects = await preparePnprProjects(projects, opts3);
  if (!pnprProjects)
    return null;
  const result2 = await installViaPnprServer(pnprProjects[0].manifest, pnprProjects[0].rootDir, opts3, pnprProjects.map((p) => ({ rootDir: p.rootDir, manifest: p.manifest })));
  const lockfileDir = opts3.lockfileDir ?? projects[0].rootDir;
  const mutatedRootDirs = new Set(projects.map((p) => p.rootDir));
  const updatedProjects = pnprProjects.filter((p) => mutatedRootDirs.has(p.rootDir)).map((p) => {
    if (p.mutation === "installSome" && p.newDeps.length > 0) {
      const relative2 = path134.relative(lockfileDir, p.rootDir).split(path134.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,
    resolutionPolicyViolations: result2.resolutionPolicyViolations
  };
}
async function installViaPnprServer(manifest, rootDir, opts3, allInstallProjects) {
  if (opts3.frozenStore) {
    throw new PnpmError("FROZEN_STORE_INCOMPATIBLE_WITH_PNPR", "The pnpr server resolves dependencies and writes new entries into the store, which is opened read-only when frozenStore is enabled.", { hint: "Disable the pnpr server (unset `--pnpr-server` / `pnprServer` in pnpm-workspace.yaml) so the install reads from the existing store, or unset `frozenStore` to allow store writes." });
  }
  const { resolveViaPnprServer: resolveViaPnprServer2 } = await Promise.resolve().then(() => (init_lib125(), lib_exports7));
  const { createGetAuthHeaderByURI: createGetAuthHeaderByURI2 } = await Promise.resolve().then(() => (init_lib52(), lib_exports5));
  const configByUri = opts3.configByUri ?? {};
  const pnprAuthorization = createGetAuthHeaderByURI2(configByUri)(opts3.pnprServer);
  try {
    const lockfileDir = opts3.lockfileDir ?? rootDir;
    const existingLockfile = await readWantedLockfileFile(lockfileDir, {
      ignoreIncompatible: true
    }).catch(() => null);
    logger.info({ message: "Resolving dependencies via the pnpr server", prefix: rootDir });
    const projectsList = allInstallProjects && allInstallProjects.length > 1 ? allInstallProjects.map((p) => ({
      dir: (path134.relative(lockfileDir, p.rootDir) || ".").split(path134.sep).join("/"),
      name: p.manifest.name,
      version: p.manifest.version,
      dependencies: p.manifest.dependencies,
      devDependencies: p.manifest.devDependencies,
      optionalDependencies: p.manifest.optionalDependencies
    })) : void 0;
    const { lockfile, stats: pnprStats } = await resolveViaPnprServer2({
      registryUrl: opts3.pnprServer,
      name: projectsList ? void 0 : manifest.name,
      version: projectsList ? void 0 : manifest.version,
      dependencies: projectsList ? void 0 : manifest.dependencies,
      devDependencies: projectsList ? void 0 : manifest.devDependencies,
      optionalDependencies: projectsList ? void 0 : manifest.optionalDependencies,
      projects: projectsList,
      registry: opts3.registries?.default,
      namedRegistries: opts3.namedRegistries,
      authorization: pnprAuthorization,
      overrides: opts3.overrides,
      // The reconstructed workspace the server builds from this request has no
      // catalog sections, so forward the catalogs for the server to resolve
      // `catalog:` specifiers in both dependencies and overrides.
      catalogs: opts3.catalogs,
      minimumReleaseAge: opts3.minimumReleaseAge,
      minimumReleaseAgeExclude: opts3.minimumReleaseAgeExclude,
      minimumReleaseAgeIgnoreMissingTime: opts3.minimumReleaseAgeIgnoreMissingTime,
      trustPolicy: opts3.trustPolicy,
      trustPolicyExclude: opts3.trustPolicyExclude,
      trustPolicyIgnoreAfter: opts3.trustPolicyIgnoreAfter,
      trustLockfile: opts3.trustLockfile,
      // Resolution mode. Without these the server always reuse-and-updates,
      // so `--frozen-lockfile` would silently resolve and rewrite the very
      // lockfile it promises to leave alone.
      frozenLockfile: opts3.frozenLockfile === true || opts3.frozenLockfileIfExists === true && existingLockfile != null,
      preferFrozenLockfile: opts3.preferFrozenLockfile,
      lockfile: existingLockfile ?? void 0
    });
    await writeWantedLockfileAndRecordVerified({
      lockfileDir,
      lockfile,
      cacheDir: opts3.cacheDir,
      resolutionVerifiers: opts3.resolutionVerifiers,
      useGitBranchLockfile: opts3.useGitBranchLockfile,
      mergeGitBranchLockfiles: opts3.mergeGitBranchLockfiles
    });
    logger.info({
      message: `Resolved ${pnprStats.totalPackages} packages`,
      prefix: rootDir
    });
    if (opts3.lockfileOnly) {
      return {
        updatedCatalogs: void 0,
        updatedManifest: manifest,
        ignoredBuilds: void 0,
        stats: { added: 0, removed: 0, linkedToRoot: 0 },
        lockfile,
        resolutionPolicyViolations: []
      };
    }
    const headlessOpts = {
      ...opts3,
      dir: rootDir,
      lockfileDir,
      engineStrict: opts3.engineStrict ?? false,
      ignoreScripts: opts3.ignoreScripts ?? false,
      sideEffectsCacheRead: opts3.sideEffectsCacheRead ?? false,
      sideEffectsCacheWrite: opts3.sideEffectsCacheWrite ?? false,
      symlink: opts3.symlink ?? true,
      enableModulesDir: opts3.enableModulesDir ?? true,
      include: opts3.include ?? { dependencies: true, devDependencies: true, optionalDependencies: true },
      currentEngine: {
        nodeVersion: opts3.nodeVersion,
        pnpmVersion: opts3.packageManager?.version ?? ""
      },
      selectedProjectDirs: (allInstallProjects ?? [{ rootDir }]).map((p) => p.rootDir),
      allProjects: Object.fromEntries((allInstallProjects ?? [{ rootDir, manifest }]).map((p, i4) => [
        p.rootDir,
        {
          binsDir: path134.join(p.rootDir, "node_modules", ".bin"),
          buildIndex: i4,
          // POSIX-normalize so the importer id matches the lockfile keys the
          // pnpr server emits — on Windows a nested member's `path.relative`
          // would otherwise be `packages\foo`, missing `packages/foo`.
          id: getLockfileImporterId(lockfileDir, p.rootDir),
          manifest: p.manifest,
          modulesDir: path134.join(p.rootDir, "node_modules"),
          rootDir: p.rootDir
        }
      ])),
      hoistedDependencies: {},
      pendingBuilds: [],
      skipped: /* @__PURE__ */ new Set(),
      wantedLockfile: lockfile
    };
    const { ignoredBuilds, stats } = await materializeOrDelegate(
      opts3,
      // 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 pnpr server'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,
      // The pnpr server enforces the whole verification policy itself and
      // reports any violation as a terminal `violations` frame, which the
      // client turns into a thrown error — so a resolve that got this far
      // produced a policy-clean lockfile with nothing left to react to.
      resolutionPolicyViolations: []
    };
  } finally {
    await opts3.storeController.close();
  }
}
var import_util14, import_semver42, 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_lib16();
    init_lib93();
    init_lib113();
    init_lib69();
    init_lib60();
    init_lib96();
    init_lib97();
    init_lib99();
    init_lib37();
    init_lib();
    init_lib6();
    init_lib70();
    init_lib68();
    init_lib2();
    init_lib21();
    init_lib105();
    init_lib89();
    init_lib111();
    init_lib121();
    init_lib77();
    init_lib80();
    init_lib109();
    init_lib124();
    init_lib119();
    init_lib123();
    init_lib3();
    init_lib108();
    init_lib11();
    init_lib98();
    import_util14 = __toESM(require_dist4(), 1);
    init_lib15();
    init_is_subdir();
    init_p_limit();
    init_es();
    import_semver42 = __toESM(require_semver2(), 1);
    init_parseWantedDependencies();
    init_removeDeps();
    init_CatalogVersionMismatchError();
    init_checkCustomResolverForceResolve();
    init_extendInstallOptions();
    init_link();
    init_reportPeerDependencyIssues();
    init_tryFastUpdateCatalogs();
    init_tryFastUpdateImporters();
    init_tryFastUpdateLockfile();
    init_tryFastUpdateOverrides();
    init_validateModules();
    init_verifyLockfileResolutions();
    init_warnOnStaleConvergenceOverrides();
    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, opts3) => {
      const isInstallationOnlyForLockfileCheck = isCheckOnlyInstall(opts3);
      const originalLockfileForCheck = isInstallationOnlyForLockfileCheck ? clone_default(ctx.wantedLockfile) : null;
      ctx.wantedLockfile.importers = ctx.wantedLockfile.importers || {};
      for (const { id } of projects) {
        if (!ctx.wantedLockfile.importers[id]) {
          ctx.wantedLockfile.importers[id] = { specifiers: {} };
        }
      }
      if (opts3.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 preferredVersions = Object.assign(/* @__PURE__ */ Object.create(null), getPreferredVersionsFromLockfileAndManifests(ctx.wantedLockfile.packages, Object.values(ctx.projects).map(({ manifest }) => manifest)));
      for (const [pkgName, selectors] of Object.entries(opts3.preferredVersions ?? {})) {
        preferredVersions[pkgName] = { ...preferredVersions[pkgName], ...selectors };
      }
      const forceFullResolution = ctx.wantedLockfile.lockfileVersion !== LOCKFILE_VERSION || !opts3.currentLockfileIsUpToDate || opts3.force || opts3.needsFullResolution || ctx.lockfileHadConflicts || opts3.dedupePeerDependents;
      if (opts3.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 (opts3.dedupe) {
        forgetResolutionsOfAllPrevWantedDeps(ctx.wantedLockfile);
      }
      let { dependenciesGraph, dependenciesByProjectId, linkedDependenciesByProjectId, updatedCatalogs, newLockfile, outdatedDependencies, peerDependencyIssuesByProjects, wantedToBeSkippedPackageIds, waitTillAllFetchingsFinish, resolutionPolicyViolations } = await resolveDependencies2(projects, {
        allowBuild: opts3.allowBuild,
        allowedDeprecatedVersions: opts3.allowedDeprecatedVersions,
        allowUnusedPatches: opts3.allowUnusedPatches,
        autoInstallPeers: opts3.autoInstallPeers,
        autoInstallPeersFromHighestMatch: opts3.autoInstallPeersFromHighestMatch,
        catalogs: opts3.catalogs,
        currentLockfile: ctx.currentLockfile,
        defaultUpdateDepth: opts3.depth,
        dedupeDirectDeps: opts3.dedupeDirectDeps,
        dedupeInjectedDeps: opts3.dedupeInjectedDeps,
        dedupePeerDependents: opts3.dedupePeerDependents,
        dedupePeers: opts3.dedupePeers,
        dryRun: opts3.lockfileOnly,
        enableGlobalVirtualStore: opts3.enableGlobalVirtualStore,
        engineStrict: opts3.engineStrict,
        excludeLinksFromLockfile: opts3.excludeLinksFromLockfile,
        force: opts3.force,
        forceFullResolution,
        updateChecksums: opts3.updateChecksums,
        ignoreScripts: opts3.ignoreScripts,
        hooks: {
          readPackage: opts3.readPackageHook
        },
        overrideBareSpecifier: createDependencyOverrider(opts3.parsedOverrides, opts3.lockfileDir),
        linkWorkspacePackagesDepth: opts3.linkWorkspacePackagesDepth ?? (opts3.saveWorkspaceProtocol ? 0 : -1),
        lockfileDir: opts3.lockfileDir,
        nodeVersion: opts3.nodeVersion,
        pnpmVersion: opts3.packageManager.name === "pnpm" ? opts3.packageManager.version : "",
        preferWorkspacePackages: opts3.preferWorkspacePackages,
        preferredVersions,
        preserveWorkspaceProtocol: opts3.preserveWorkspaceProtocol,
        registries: ctx.registries,
        namedRegistries: opts3.namedRegistries,
        resolutionMode: opts3.resolutionMode,
        saveWorkspaceProtocol: opts3.saveWorkspaceProtocol,
        storeController: opts3.storeController,
        tag: opts3.tag,
        globalVirtualStoreDir: opts3.globalVirtualStoreDir,
        virtualStoreDir: ctx.virtualStoreDir,
        virtualStoreDirMaxLength: ctx.virtualStoreDirMaxLength,
        wantedLockfile: ctx.wantedLockfile,
        workspacePackages: ctx.workspacePackages,
        patchedDependencies: opts3.patchedDependencies,
        lockfileIncludeTarballUrl: opts3.lockfileIncludeTarballUrl,
        resolvePeersFromWorkspaceRoot: opts3.resolvePeersFromWorkspaceRoot,
        supportedArchitectures: opts3.supportedArchitectures,
        peersSuffixMaxLength: opts3.peersSuffixMaxLength,
        injectWorkspacePackages: opts3.injectWorkspacePackages,
        minimumReleaseAge: opts3.minimumReleaseAge,
        minimumReleaseAgeExclude: opts3.minimumReleaseAgeExclude,
        trustPolicy: opts3.trustPolicy,
        trustPolicyExclude: opts3.trustPolicyExclude,
        trustPolicyIgnoreAfter: opts3.trustPolicyIgnoreAfter,
        blockExoticSubdeps: opts3.blockExoticSubdeps,
        allProjectIds: Object.values(ctx.projects).map((p) => p.id),
        handleResolutionPolicyViolations: opts3.handleResolutionPolicyViolations
      });
      if (opts3.convergeDeclaredRanges != null && (forceFullResolution || opts3.dedupe)) {
        await warnOnStaleConvergenceOverrides({
          convergeDeclaredRanges: opts3.convergeDeclaredRanges,
          parsedOverrides: opts3.parsedOverrides,
          requestPackage: opts3.storeController.requestPackage,
          lockfileDir: opts3.lockfileDir,
          minimumReleaseAge: opts3.minimumReleaseAge,
          minimumReleaseAgeExclude: opts3.minimumReleaseAgeExclude
        });
      }
      if (!opts3.include.optionalDependencies || !opts3.include.devDependencies || !opts3.include.dependencies) {
        linkedDependenciesByProjectId = map_default((linkedDeps) => linkedDeps.filter((linkedDep) => !(linkedDep.dev && !opts3.include.devDependencies || linkedDep.optional && !opts3.include.optionalDependencies || !linkedDep.dev && !linkedDep.optional && !opts3.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 && !opts3.include.devDependencies || isOptional && !opts3.include.optionalDependencies || !isDev && !isOptional && !opts3.include.dependencies);
            }
            if (!include) {
              dependenciesByProjectId[id].delete(alias);
            }
          }
        }
      }
      if (opts3.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"
      });
      if (updatedCatalogs != null && opts3.overrides != null && Object.keys(opts3.overrides).length > 0) {
        newLockfile.overrides = createOverridesMapFromParsed(parseOverrides(opts3.overrides, mergeCatalogs(opts3.catalogs, updatedCatalogs)));
      }
      newLockfile = opts3.hooks?.afterAllResolved != null ? await pipeWith_default(async (f, res) => f(await res), opts3.hooks.afterAllResolved)(newLockfile) : newLockfile;
      if (opts3.updateLockfileMinorVersion) {
        newLockfile.lockfileVersion = LOCKFILE_VERSION;
      }
      const depsStateCache = {};
      const lockfileOpts = {
        useGitBranchLockfile: opts3.useGitBranchLockfile,
        mergeGitBranchLockfiles: opts3.mergeGitBranchLockfiles
      };
      let stats;
      let ignoredBuilds;
      const shouldWritePackageMap = opts3.enableModulesDir !== false && opts3.nodeLinker === "isolated" && !opts3.virtualStoreOnly;
      if (!opts3.lockfileOnly && !isInstallationOnlyForLockfileCheck && opts3.enableModulesDir) {
        const result2 = await linkPackages(projects, dependenciesGraph, {
          allowBuild: opts3.allowBuild,
          currentLockfile: ctx.currentLockfile,
          dedupeDirectDeps: opts3.dedupeDirectDeps,
          dependenciesByProjectId,
          depsStateCache,
          disableRelinkLocalDirDeps: opts3.disableRelinkLocalDirDeps,
          enableGlobalVirtualStore: opts3.enableGlobalVirtualStore,
          extraNodePaths: ctx.extraNodePaths,
          force: opts3.force,
          hoistedDependencies: ctx.hoistedDependencies,
          hoistedModulesDir: ctx.hoistedModulesDir,
          hoistPattern: ctx.hoistPattern,
          ignoreScripts: opts3.ignoreScripts,
          include: opts3.include,
          linkedDependenciesByProjectId,
          lockfileDir: opts3.lockfileDir,
          makePartialCurrentLockfile: opts3.makePartialCurrentLockfile,
          outdatedDependencies,
          pruneStore: opts3.pruneStore,
          pruneVirtualStore: opts3.pruneVirtualStore,
          publicHoistPattern: ctx.publicHoistPattern,
          registries: ctx.registries,
          rootModulesDir: ctx.rootModulesDir,
          sideEffectsCacheRead: opts3.sideEffectsCacheRead,
          symlink: opts3.symlink,
          skipped: ctx.skipped,
          skipRuntimes: opts3.skipRuntimes,
          storeController: opts3.storeController,
          virtualStoreDir: ctx.virtualStoreDir,
          virtualStoreDirMaxLength: ctx.virtualStoreDirMaxLength,
          wantedLockfile: newLockfile,
          wantedToBeSkippedPackageIds,
          hoistWorkspacePackages: opts3.hoistWorkspacePackages,
          virtualStoreOnly: opts3.virtualStoreOnly,
          supportedArchitectures: opts3.supportedArchitectures
        });
        stats = result2.stats;
        if (shouldWritePackageMap) {
          const importerNames = Object.fromEntries(projects.map(({ manifest, id }) => [id, manifest.name]));
          await writePackageMap(result2.currentLockfile, {
            importerNames,
            lockfileDir: ctx.lockfileDir,
            locationByDepPath: Object.fromEntries(Object.values(dependenciesGraph).map((node) => [node.depPath, node.dir])),
            packageMapType: opts3.nodePackageMapType,
            rootModulesDir: ctx.rootModulesDir,
            virtualStoreDir: ctx.virtualStoreDir,
            virtualStoreDirMaxLength: ctx.virtualStoreDirMaxLength
          });
        }
        if (opts3.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 (opts3.ignoreScripts) {
            ctx.pendingBuilds = ctx.pendingBuilds.concat(result2.newDepPaths.filter((depPath) => dependenciesGraph[depPath].requiresBuild));
          }
          if (!opts3.ignoreScripts || Object.keys(opts3.patchedDependencies ?? {}).length > 0) {
            const depPaths = Object.keys(dependenciesGraph);
            const rootNodes = depPaths.filter((depPath) => dependenciesGraph[depPath].depth === 0);
            let extraEnv = opts3.scriptsOpts.extraEnv;
            if (opts3.enablePnp) {
              extraEnv = {
                ...extraEnv,
                ...makeNodeRequireOption(path134.join(opts3.lockfileDir, ".pnp.cjs"), extraEnv)
              };
            }
            if (opts3.nodeExperimentalPackageMap && shouldWritePackageMap) {
              extraEnv = {
                ...extraEnv,
                ...makeNodePackageMapOption(path134.join(ctx.rootModulesDir, PACKAGE_MAP_FILENAME), extraEnv)
              };
            }
            await opts3.verifyLockfile?.();
            ignoredBuilds = (await buildModules(dependenciesGraph, rootNodes, {
              allowBuild: opts3.allowBuild,
              childConcurrency: opts3.childConcurrency,
              depsStateCache,
              depsToBuild: new Set(result2.newDepPaths),
              extraBinPaths: ctx.extraBinPaths,
              extraNodePaths: ctx.extraNodePaths,
              extraEnv,
              ignoreScripts: opts3.ignoreScripts,
              lockfileDir: ctx.lockfileDir,
              optional: opts3.include.optionalDependencies,
              preferSymlinkedExecutables: opts3.preferSymlinkedExecutables,
              rootModulesDir: ctx.virtualStoreDir,
              scriptsPrependNodePath: opts3.scriptsPrependNodePath,
              scriptShell: opts3.scriptShell,
              shellEmulator: opts3.shellEmulator,
              sideEffectsCacheWrite: opts3.sideEffectsCacheWrite,
              storeController: opts3.storeController,
              unsafePerm: opts3.unsafePerm,
              userAgent: opts3.userAgent,
              enableGlobalVirtualStore: opts3.enableGlobalVirtualStore,
              frozenStore: opts3.frozenStore
            })).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, opts3.allowBuild)) {
                  ignoredBuilds.add(ignoredBuild);
                }
              }
            }
          }
        }
        const binWarn = (prefix, message) => {
          logger.info({ message, prefix });
        };
        if (result2.newDepPaths?.length && !opts3.virtualStoreOnly) {
          const newPkgs = props_default(result2.newDepPaths, dependenciesGraph);
          await linkAllBins3(newPkgs, dependenciesGraph, {
            extraNodePaths: ctx.extraNodePaths,
            optional: opts3.include.optionalDependencies,
            warn: binWarn.bind(null, opts3.lockfileDir)
          });
        }
        if (!opts3.virtualStoreOnly)
          await Promise.all(projects.map(async (project, index2) => {
            let linkedPackages;
            if (ctx.publicHoistPattern?.length && path134.relative(project.rootDir, opts3.lockfileDir) === "") {
              linkedPackages = await linkBins(project.modulesDir, project.binsDir, {
                allowExoticManifests: true,
                preferSymlinkedExecutables: opts3.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: path134.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: opts3.preferSymlinkedExecutables
              });
            }
            const projectToInstall = projects[index2];
            if (opts3.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: opts3.lockfileDir });
                }
              }
            }
          }));
        const projectsWithTargetDirs = getProjectsWithTargetDirs(projects, newLockfile, dependenciesGraph);
        const currentLockfileDir = path134.join(ctx.rootModulesDir, ".pnpm");
        await Promise.all([
          opts3.useLockfile && opts3.saveLockfile ? writeLockfilesAndRecordVerified({
            currentLockfile: result2.currentLockfile,
            currentLockfileDir,
            wantedLockfile: newLockfile,
            wantedLockfileDir: ctx.lockfileDir,
            cacheDir: opts3.cacheDir,
            resolutionVerifiers: opts3.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) => path134.relative(opts3.lockfileDir, targetDir));
              }
            }
            return writeModulesManifest(ctx.rootModulesDir, {
              ...ctx.modulesFile,
              hoistedDependencies: result2.newHoistedDependencies,
              hoistPattern: ctx.hoistPattern,
              included: ctx.include,
              injectedDeps,
              ignoredBuilds,
              layoutVersion: LAYOUT_VERSION,
              nodeLinker: opts3.nodeLinker,
              packageManager: `${opts3.packageManager.name}@${opts3.packageManager.version}`,
              pendingBuilds: ctx.pendingBuilds,
              publicHoistPattern: ctx.publicHoistPattern,
              virtualStoreOnly: opts3.virtualStoreOnly,
              prunedAt: opts3.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: opts3.allowBuilds
            });
          })()
        ]);
        if (!opts3.ignoreScripts && !opts3.virtualStoreOnly) {
          if (opts3.enablePnp) {
            opts3.scriptsOpts.extraEnv = {
              ...opts3.scriptsOpts.extraEnv,
              ...makeNodeRequireOption(path134.join(opts3.lockfileDir, ".pnp.cjs"), opts3.scriptsOpts.extraEnv)
            };
          }
          if (opts3.nodeExperimentalPackageMap && shouldWritePackageMap) {
            opts3.scriptsOpts.extraEnv = {
              ...opts3.scriptsOpts.extraEnv,
              ...makeNodePackageMapOption(path134.join(ctx.rootModulesDir, PACKAGE_MAP_FILENAME), opts3.scriptsOpts.extraEnv)
            };
          }
          const projectsToBeBuilt = projectsWithTargetDirs.filter(({ mutation }) => mutation === "install");
          await opts3.verifyLockfile?.();
          await runLifecycleHooksConcurrently(["preinstall", "install", "postinstall", "preprepare", "prepare", "postprepare"], projectsToBeBuilt, opts3.childConcurrency, opts3.scriptsOpts);
        }
      } else {
        if (opts3.useLockfile && opts3.saveLockfile && !isInstallationOnlyForLockfileCheck) {
          await writeWantedLockfileAndRecordVerified({
            lockfileDir: ctx.lockfileDir,
            lockfile: newLockfile,
            cacheDir: opts3.cacheDir,
            resolutionVerifiers: opts3.resolutionVerifiers,
            ...lockfileOpts
          });
        }
        if (opts3.nodeLinker !== "hoisted" && opts3.runPacquet == null) {
          stageLogger.debug({
            prefix: opts3.lockfileDir,
            stage: "importing_done"
          });
        }
      }
      await waitTillAllFetchingsFinish();
      const depsRequiringBuild = [];
      if (opts3.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: opts3.lockfileDir,
        strictPeerDependencies: opts3.strictPeerDependencies,
        rules: opts3.peerDependencyRules
      });
      if (!opts3.omitSummaryLog && opts3.runPacquet == null) {
        summaryLogger.debug({ prefix: opts3.lockfileDir });
      }
      if (originalLockfileForCheck != null) {
        opts3.lockfileCheck?.(originalLockfileForCheck, newLockfile);
      }
      return {
        updatedCatalogs,
        newLockfile,
        projects: projects.map(({ id, manifest, rootDir }) => ({
          manifest,
          peerDependencyIssues: peerDependencyIssuesByProjects[id],
          rootDir
        })),
        stats,
        depsRequiringBuild,
        ignoredBuilds,
        resolutionPolicyViolations,
        dryRunResult: opts3.dryRun && originalLockfileForCheck != null ? { originalLockfile: originalLockfileForCheck, wantedLockfile: newLockfile } : void 0
      };
    };
    installInContext = async (projects, ctx, opts3) => {
      try {
        const isPathInsideWorkspace = isSubdir.bind(null, opts3.lockfileDir);
        if (!opts3.frozenLockfile && opts3.useLockfile) {
          const allProjectsLocatedInsideWorkspace = Object.values(ctx.projects).filter((project) => isPathInsideWorkspace(project.rootDirRealPath ?? project.rootDir));
          if (allProjectsLocatedInsideWorkspace.length > projects.length && !isCheckOnlyInstall(opts3) && opts3.enableModulesDir) {
            const newProjects = [...projects];
            const getWantedDepsOpts = {
              autoInstallPeers: opts3.autoInstallPeers,
              includeDirect: opts3.includeDirect,
              updateWorkspaceDependencies: false,
              injectWorkspacePackages: opts3.injectWorkspacePackages
            };
            const _isWantedDepBareSpecifierSame = isWantedDepBareSpecifierSame.bind(null, ctx.wantedLockfile.catalogs, opts3.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, {
              ...opts3,
              lockfileOnly: true
            });
            const { stats, ignoredBuilds } = await materializeOrDelegate(opts3, () => headlessInstall({
              ...ctx,
              ...opts3,
              currentEngine: {
                nodeVersion: opts3.nodeVersion,
                pnpmVersion: opts3.packageManager.name === "pnpm" ? opts3.packageManager.version : ""
              },
              currentHoistedLocations: ctx.modulesFile?.hoistedLocations,
              selectedProjectDirs: projects.map((project) => project.rootDir),
              allProjects: ctx.projects,
              prunedAt: ctx.modulesFile?.prunedAt,
              wantedLockfile: result2.newLockfile,
              useLockfile: opts3.useLockfile && ctx.wantedLockfileIsModified,
              hoistWorkspacePackages: opts3.hoistWorkspacePackages
            }));
            return {
              ...result2,
              stats,
              ignoredBuilds
            };
          }
        }
        if (opts3.nodeLinker === "hoisted" && !opts3.lockfileOnly && !isCheckOnlyInstall(opts3) && opts3.enableModulesDir) {
          const result2 = await _installInContext(projects, ctx, {
            ...opts3,
            lockfileOnly: true
          });
          const { stats, ignoredBuilds } = await materializeOrDelegate(opts3, () => headlessInstall({
            ...ctx,
            ...opts3,
            currentEngine: {
              nodeVersion: opts3.nodeVersion,
              pnpmVersion: opts3.packageManager.name === "pnpm" ? opts3.packageManager.version : ""
            },
            currentHoistedLocations: ctx.modulesFile?.hoistedLocations,
            selectedProjectDirs: projects.map((project) => project.rootDir),
            allProjects: ctx.projects,
            prunedAt: ctx.modulesFile?.prunedAt,
            wantedLockfile: result2.newLockfile,
            useLockfile: opts3.useLockfile && ctx.wantedLockfileIsModified,
            hoistWorkspacePackages: opts3.hoistWorkspacePackages
          }));
          return {
            ...result2,
            stats,
            ignoredBuilds
          };
        }
        if (opts3.runPacquet != null && opts3.useLockfile && opts3.saveLockfile && !opts3.useGitBranchLockfile && !opts3.mergeGitBranchLockfiles && !opts3.lockfileOnly && !isCheckOnlyInstall(opts3) && opts3.enableModulesDir) {
          if (opts3.runPacquet.supportsResolution && !opts3.frozenLockfile && opts3.handleResolutionPolicyViolations == null && allMutationsAreInstalls(projects)) {
            const envLockfile = await readEnvLockfile(ctx.lockfileDir);
            let pacquetError;
            try {
              await opts3.runPacquet.run({ resolve: true });
            } catch (err2) {
              pacquetError = err2;
              throw err2;
            } finally {
              if (envLockfile != null) {
                await writeEnvLockfile(ctx.lockfileDir, envLockfile).catch((restoreErr) => {
                  if (pacquetError == null) {
                    throw restoreErr;
                  }
                  logger.warn({
                    error: restoreErr,
                    message: `Failed to restore the configDependencies document in pnpm-lock.yaml: ${restoreErr.message}`,
                    prefix: ctx.lockfileDir
                  });
                });
              }
            }
            const wantedLockfile = await readWantedLockfile(ctx.lockfileDir, {
              ignoreIncompatible: opts3.force || opts3.ci === true,
              mergeGitBranchLockfiles: opts3.mergeGitBranchLockfiles,
              useGitBranchLockfile: opts3.useGitBranchLockfile,
              wantedVersions: [LOCKFILE_VERSION]
            });
            if (wantedLockfile == null) {
              throw new PnpmError("PACQUET_LOCKFILE_READ_FAILED", `pacquet did not write a readable ${WANTED_LOCKFILE}`);
            }
            ctx.wantedLockfile = wantedLockfile;
            return pacquetResolveResult(projects, ctx);
          }
          const result2 = await _installInContext(projects, ctx, { ...opts3, lockfileOnly: true });
          await opts3.runPacquet.run({ filterResolvedProgress: true });
          return result2;
        }
        return await _installInContext(projects, ctx, opts3);
      } catch (error) {
        if (!BROKEN_LOCKFILE_INTEGRITY_ERRORS.has(error.code) || !ctx.existsNonEmptyWantedLockfile && !ctx.existsCurrentLockfile || !opts3.updateChecksums)
          throw error;
        opts3.needsFullResolution = true;
        logger.warn({
          error,
          message: error.message,
          prefix: ctx.lockfileDir
        });
        logger.error(new PnpmError(error.code, "Refreshing the locked integrity from the registry as requested by --update-checksums. A full installation will be performed."));
        return _installInContext(projects, ctx, opts3);
      } finally {
        await opts3.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_lib126 = __esm({
  "../installing/deps-installer/lib/index.js"() {
    "use strict";
    init_api();
    init_UnexpectedStoreError();
    init_UnexpectedVirtualStoreDirError();
    init_lib89();
  }
});

// ../global/commands/lib/installGlobalPackages.js
async function installGlobalPackages(opts3, params) {
  const store = await createStoreController(opts3);
  let { manifest, writeProjectManifest: writeProjectManifest2 } = await tryReadProjectManifest2(opts3.dir, opts3);
  if (manifest == null) {
    manifest = {};
  }
  const installOpts = {
    ...opts3,
    allowBuilds: { ...opts3.allowBuilds },
    storeController: store.ctrl,
    storeDir: store.dir
  };
  const pinnedVersion = opts3.saveExact ? "patch" : opts3.savePrefix === "~" ? "minor" : "major";
  const { updatedProject, ignoredBuilds, resolutionPolicyViolations } = await mutateModulesInSingleProject({
    allowNew: true,
    binsDir: opts3.bin,
    dependencySelectors: params,
    manifest,
    mutation: "installSome",
    peer: false,
    pinnedVersion,
    rootDir: opts3.dir,
    targetDependenciesField: "dependencies"
  }, installOpts);
  await writeProjectManifest2(updatedProject.manifest);
  return { ignoredBuilds, resolutionPolicyViolations };
}
var init_installGlobalPackages = __esm({
  "../global/commands/lib/installGlobalPackages.js"() {
    "use strict";
    init_lib41();
    init_lib126();
    init_lib92();
  }
});

// ../global/commands/lib/promptApproveGlobalBuilds.js
async function promptApproveGlobalBuilds(opts3, commands2) {
  if (!opts3.ignoredBuilds?.size)
    return;
  const autoApproveForTests = process.env[AUTO_APPROVE_FOR_TESTS_ENV] === "1";
  if (!autoApproveForTests && !process.stdin.isTTY)
    return;
  await commands2["approve-builds"]({
    ...opts3.inheritedOpts,
    workspaceDir: void 0,
    allProjects: void 0,
    selectedProjectsGraph: void 0,
    workspacePackagePatterns: void 0,
    modulesDir: void 0,
    dir: opts3.installDir,
    lockfileDir: opts3.installDir,
    rootProjectManifest: void 0,
    rootProjectManifestDir: opts3.installDir,
    settingsDir: opts3.globalPkgDir,
    global: false,
    pending: false,
    allowBuilds: opts3.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 path135 from "node:path";
async function readInstalledPackages(installDir) {
  const pkgJson2 = readPackageJsonFromDirRawSync(installDir);
  const depNames = Object.keys(pkgJson2.dependencies ?? {}).filter(isValidGlobalDependencyAlias);
  const manifests = await Promise.all(depNames.map((depName) => readPackageJsonFromDir(path135.join(installDir, "node_modules", depName))));
  return depNames.map((depName, i4) => ({
    manifest: manifests[i4],
    location: path135.join(installDir, "node_modules", depName)
  }));
}
var init_readInstalledPackages = __esm({
  "../global/commands/lib/readInstalledPackages.js"() {
    "use strict";
    init_lib103();
    init_lib5();
  }
});

// ../global/commands/lib/globalAdd.js
import fs79 from "node:fs";
import path136 from "node:path";
async function handleGlobalAdd(opts3, params, commands2) {
  const globalDir = opts3.globalPkgDir;
  const globalBinDir = opts3.bin;
  cleanOrphanedInstallDirs(globalDir);
  let allowBuilds = opts3.allowBuilds ?? {};
  if (opts3.allowBuild?.length) {
    allowBuilds = { ...allowBuilds };
    for (const pkg of opts3.allowBuild) {
      allowBuilds[pkg] = true;
    }
  }
  const groups = params.map((param) => splitCommaSeparated(param, opts3.dir).map((token) => resolveLocalParam(token, opts3.dir))).filter((group) => group.length > 0);
  for (const group of groups) {
    await installGroup({ opts: opts3, globalDir, globalBinDir, allowBuilds, params: group }, commands2);
  }
  summaryLogger.debug({ prefix: globalDir });
}
async function installGroup(ctx, commands2) {
  const { opts: opts3, globalDir, globalBinDir, allowBuilds, params } = ctx;
  const installDir = createInstallDir(globalDir);
  const include = {
    dependencies: true,
    devDependencies: false,
    optionalDependencies: true
  };
  const installOpts = {
    ...opts3,
    global: false,
    bin: path136.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,
    include,
    includeDirect: include,
    allowBuilds,
    omitSummaryLog: true
  };
  const { ignoredBuilds, resolutionPolicyViolations } = await installGlobalPackages(installOpts, params);
  await promptApproveGlobalBuilds({
    globalPkgDir: globalDir,
    installDir,
    ignoredBuilds,
    allowBuilds,
    inheritedOpts: opts3
  }, commands2);
  const pkgJson2 = readPackageJsonFromDirRawSync(installDir);
  const aliases = Object.keys(pkgJson2.dependencies ?? {});
  const replacementAliases = getReplacementAliases(aliases);
  const pkgs = await readInstalledPackages(installDir);
  let binsToSkip;
  try {
    binsToSkip = await checkGlobalBinConflicts({
      globalDir,
      globalBinDir,
      newPkgs: pkgs,
      shouldSkip: (pkg) => shouldReplaceExistingGlobalInstall(pkg, aliases, replacementAliases)
    });
  } catch (err2) {
    await fs79.promises.rm(installDir, { recursive: true, force: true });
    throw err2;
  }
  await removeExistingGlobalInstalls({ globalDir, globalBinDir, aliases, replacementAliases });
  const cacheHash = createGlobalCacheKey({
    aliases,
    registries: opts3.registries
  });
  const hashLink = getHashLink(globalDir, cacheHash);
  await symlinkDir(installDir, hashLink, { overwrite: true });
  await linkBinsOfPackages(pkgs, globalBinDir, { excludeBins: binsToSkip });
  await opts3.updateResolutionPolicyManifest?.(resolutionPolicyViolations, globalDir);
}
function getReplacementAliases(aliases) {
  if (!aliases.some((alias) => PNPM_CLI_PACKAGE_ALIASES.includes(alias)))
    return aliases;
  return [.../* @__PURE__ */ new Set([...aliases, ...PNPM_CLI_PACKAGE_ALIASES])];
}
function shouldReplaceExistingGlobalInstall(pkg, aliases, replacementAliases) {
  if (aliases.some((alias) => alias in pkg.dependencies))
    return true;
  return isPnpmCliOnlyGroup(pkg) && replacementAliases.some((alias) => alias in pkg.dependencies);
}
function isPnpmCliOnlyGroup(pkg) {
  const aliases = Object.keys(pkg.dependencies);
  return aliases.length > 0 && aliases.every((alias) => PNPM_CLI_PACKAGE_ALIASES.includes(alias));
}
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 = path136.isAbsolute(pathPart) ? pathPart : path136.resolve(baseDir, pathPart);
  try {
    fs79.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 + path136.resolve(baseDir, rest);
      }
      return param;
    }
  }
  if (param.startsWith(".")) {
    return path136.resolve(baseDir, param);
  }
  return param;
}
async function removeExistingGlobalInstalls(opts3) {
  const { globalDir, globalBinDir, aliases, replacementAliases } = opts3;
  const groupsToRemove = /* @__PURE__ */ new Map();
  for (const alias of replacementAliases) {
    const existing = findGlobalPackage(globalDir, alias);
    if (existing && shouldReplaceExistingGlobalInstall(existing, aliases, replacementAliases) && !groupsToRemove.has(existing.hash)) {
      groupsToRemove.set(existing.hash, getInstalledBinNames(existing));
    }
  }
  const protectedBins = await getBinNamesOfOtherGroups(globalDir, new Set(groupsToRemove.keys()));
  await Promise.all([...groupsToRemove.entries()].map(async ([hash2, binNamesPromise]) => {
    const binNames = await binNamesPromise;
    await Promise.all(binNames.filter((binName) => !protectedBins.has(binName)).map((binName) => removeBin(path136.join(globalBinDir, binName))));
    const hashLink = getHashLink(globalDir, hash2);
    let installDir = null;
    try {
      installDir = fs79.realpathSync(hashLink);
    } catch {
    }
    await fs79.promises.rm(hashLink, { force: true });
    if (installDir && isSubdir(globalDir, installDir)) {
      await fs79.promises.rm(installDir, { recursive: true, force: true });
    }
  }));
}
var PNPM_CLI_PACKAGE_ALIASES;
var init_globalAdd = __esm({
  "../global/commands/lib/globalAdd.js"() {
    "use strict";
    init_lib16();
    init_lib104();
    init_lib6();
    init_lib103();
    init_lib5();
    init_is_subdir();
    init_dist3();
    init_binOwnership();
    init_checkGlobalBinConflicts();
    init_installGlobalPackages();
    init_promptApproveGlobalBuilds();
    init_readInstalledPackages();
    PNPM_CLI_PACKAGE_ALIASES = ["pnpm", "@pnpm/exe"];
  }
});

// ../global/commands/lib/globalRemove.js
import fs80 from "node:fs";
import path137 from "node:path";
async function handleGlobalRemove(opts3, params) {
  const globalDir = opts3.globalPkgDir;
  const globalBinDir = opts3.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);
  }
  const protectedBins = await getBinNamesOfOtherGroups(globalDir, new Set(groupsToRemove.keys()));
  await Promise.all([...groupsToRemove.entries()].map(async ([hash2, pkg]) => {
    const binNames = await getInstalledBinNames(pkg);
    await Promise.all(binNames.filter((binName) => !protectedBins.has(binName)).map((binName) => removeBin(path137.join(globalBinDir, binName))));
    await fs80.promises.rm(getHashLink(globalDir, hash2), { force: true });
    if (isSubdir(globalDir, pkg.installDir)) {
      await fs80.promises.rm(pkg.installDir, { recursive: true, force: true });
    }
  }));
}
var init_globalRemove = __esm({
  "../global/commands/lib/globalRemove.js"() {
    "use strict";
    init_lib104();
    init_lib2();
    init_lib103();
    init_is_subdir();
    init_binOwnership();
  }
});

// ../global/commands/lib/globalUpdate.js
import fs81 from "node:fs";
import path138 from "node:path";
async function handleGlobalUpdate(opts3, params, commands2) {
  const globalDir = opts3.globalPkgDir;
  const globalBinDir = opts3.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(opts3, globalDir, globalBinDir, pkg, commands2);
  }
  summaryLogger.debug({ prefix: globalDir });
  return void 0;
}
async function updateGlobalPackageGroup(opts3, globalDir, globalBinDir, pkg, commands2) {
  const installDir = createInstallDir(globalDir);
  const depSpecs = Object.entries(pkg.dependencies).map(([alias, spec]) => opts3.latest ? alias : `${alias}@${spec}`);
  const include = {
    dependencies: true,
    devDependencies: false,
    optionalDependencies: true
  };
  const allowBuilds = opts3.allowBuilds ?? {};
  const { ignoredBuilds, resolutionPolicyViolations } = await installGlobalPackages({
    ...opts3,
    global: false,
    bin: path138.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,
    include,
    includeDirect: include,
    allowBuilds,
    omitSummaryLog: true
  }, depSpecs);
  await promptApproveGlobalBuilds({
    globalPkgDir: globalDir,
    installDir,
    ignoredBuilds,
    allowBuilds,
    inheritedOpts: opts3
  }, commands2);
  const pkgs = await readInstalledPackages(installDir);
  let binsToSkip;
  try {
    binsToSkip = await checkGlobalBinConflicts({
      globalDir,
      globalBinDir,
      newPkgs: pkgs,
      shouldSkip: (existingPkg) => existingPkg.hash === pkg.hash
    });
  } catch (err2) {
    await fs81.promises.rm(installDir, { recursive: true, force: true });
    throw err2;
  }
  const protectedBins = await getBinNamesOfOtherGroups(globalDir, /* @__PURE__ */ new Set([pkg.hash]));
  const oldBinNames = await getInstalledBinNames(pkg);
  await Promise.all(oldBinNames.filter((binName) => !protectedBins.has(binName)).map((binName) => removeBin(path138.join(globalBinDir, binName))));
  const hashLink = getHashLink(globalDir, pkg.hash);
  const oldInstallDir = pkg.installDir;
  await symlinkDir(installDir, hashLink, { overwrite: true });
  if (isSubdir(globalDir, oldInstallDir)) {
    await fs81.promises.rm(oldInstallDir, { recursive: true, force: true });
  }
  await linkBinsOfPackages(pkgs, globalBinDir, { excludeBins: binsToSkip });
  await opts3.updateResolutionPolicyManifest?.(resolutionPolicyViolations, globalDir);
}
var init_globalUpdate = __esm({
  "../global/commands/lib/globalUpdate.js"() {
    "use strict";
    init_lib16();
    init_lib104();
    init_lib6();
    init_lib103();
    init_is_subdir();
    init_dist3();
    init_binOwnership();
    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, opts3) {
  for (const depPath of depPaths) {
    const key = `${depPath}:${opts3.dev.toString()}`;
    if (ctx.walked.has(key))
      continue;
    ctx.walked.add(key);
    if (!ctx.packages[depPath]) {
      continue;
    }
    if (opts3.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, opts3);
    const newOptionalDependencies = resolvedDepsToDepPaths2(depLockfile.optionalDependencies ?? {});
    detectDepTypesInSubGraph(ctx, newOptionalDependencies, { dev: opts3.dev });
  }
}
function resolvedDepsToDepPaths2(deps) {
  return Object.entries(deps).map(([alias, ref]) => refToRelative(ref, alias)).filter((depPath) => depPath !== null);
}
var DepType;
var init_lib127 = __esm({
  "../lockfile/detect-dep-types/lib/index.js"() {
    "use strict";
    init_lib68();
    DepType = {
      DevOnly: 0,
      DevAndProd: 1,
      ProdOnly: 2
    };
  }
});

// ../deps/inspection/tree-builder/lib/getTreeNodeChildId.js
import path139 from "node:path";
function getTreeNodeChildId(opts3) {
  const depPath = refToRelative(opts3.dep.ref, opts3.dep.alias);
  if (depPath !== null) {
    return { type: "package", depPath };
  }
  switch (opts3.parentId.type) {
    case "importer": {
      const linkValue = opts3.dep.ref.slice("link:".length);
      const absoluteLinkedPath = path139.join(opts3.lockfileDir, opts3.parentId.importerId, linkValue);
      const childImporterId = getLockfileImporterId(opts3.lockfileDir, absoluteLinkedPath);
      const isLinkOutsideWorkspace = opts3.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_lib68();
    init_lib80();
  }
});

// ../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, opts3) {
  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, opts3);
    if (!snapshot) {
      graph.nodes.set(serialized, { nodeId, edges: [], peers: /* @__PURE__ */ new Set() });
      continue;
    }
    const deps = nodeId.type === "importer" ? {
      ...opts3.include.dependencies !== false ? snapshot.dependencies : void 0,
      ...opts3.include.devDependencies !== false ? snapshot.devDependencies : void 0,
      ...opts3.include.optionalDependencies ? snapshot.optionalDependencies : void 0
    } : !opts3.include.optionalDependencies ? snapshot.dependencies : {
      ...snapshot.dependencies,
      ...snapshot.optionalDependencies
    };
    const peers = new Set(Object.keys(nodeId.type === "package" ? opts3.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: opts3.lockfileDir,
          importers: opts3.importers
        });
        if (opts3.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, opts3) {
  switch (treeNodeId.type) {
    case "importer":
      return opts3.importers[treeNodeId.importerId];
    case "package":
      return opts3.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_lib83();
    init_lib30();
    init_load_json_file();
  }
});

// ../deps/inspection/tree-builder/lib/resolvePackagePath.js
import fs82 from "node:fs";
import path140 from "node:path";
function resolvePackagePath(opts3) {
  let fullPackagePath = path140.join(opts3.virtualStoreDir, depPathToFilename(opts3.depPath, opts3.virtualStoreDirMaxLength), "node_modules", opts3.name);
  const resolvedVirtualStoreDir = path140.resolve(opts3.virtualStoreDir);
  const resolvedModulesDir = opts3.modulesDir ? path140.resolve(opts3.modulesDir) : void 0;
  const isGlobalVirtualStore = resolvedModulesDir && !resolvedVirtualStoreDir.startsWith(resolvedModulesDir + path140.sep) && resolvedVirtualStoreDir !== resolvedModulesDir;
  if (isGlobalVirtualStore) {
    try {
      let nodeModulesDir;
      if (opts3.parentDir) {
        nodeModulesDir = path140.dirname(opts3.parentDir);
        if (path140.basename(nodeModulesDir).startsWith("@")) {
          nodeModulesDir = path140.dirname(nodeModulesDir);
        }
      } else if (opts3.modulesDir) {
        nodeModulesDir = opts3.modulesDir;
      } else {
        return fullPackagePath;
      }
      fullPackagePath = fs82.realpathSync(path140.join(nodeModulesDir, opts3.alias));
    } catch {
    }
  }
  return fullPackagePath;
}
var init_resolvePackagePath = __esm({
  "../deps/inspection/tree-builder/lib/resolvePackagePath.js"() {
    "use strict";
    init_lib68();
  }
});

// ../deps/inspection/tree-builder/lib/getPkgInfo.js
import path141 from "node:path";
function getPkgInfo(opts3) {
  let name;
  let version2;
  let resolved;
  let depType;
  let optional;
  let isSkipped = false;
  let isMissing = false;
  let integrity;
  const depPath = refToRelative(opts3.ref, opts3.alias);
  if (depPath) {
    let pkgSnapshot;
    if (opts3.currentPackages[depPath]) {
      pkgSnapshot = opts3.currentPackages[depPath];
      const parsed = nameVerFromPkgSnapshot(depPath, pkgSnapshot);
      name = parsed.name;
      version2 = parsed.version;
    } else {
      pkgSnapshot = opts3.wantedPackages[depPath];
      if (pkgSnapshot) {
        const parsed = nameVerFromPkgSnapshot(depPath, pkgSnapshot);
        name = parsed.name;
        version2 = parsed.version;
      } else {
        name = opts3.alias;
        version2 = opts3.ref;
      }
      isMissing = true;
      isSkipped = opts3.skipped.has(depPath);
    }
    if (pkgSnapshot) {
      resolved = pkgSnapshotToResolution(depPath, pkgSnapshot, opts3.registries).tarball;
      optional = pkgSnapshot.optional;
      if ("integrity" in pkgSnapshot.resolution) {
        integrity = pkgSnapshot.resolution.integrity;
      }
    }
    depType = opts3.depTypes[depPath];
  } else {
    name = opts3.alias;
    version2 = opts3.ref;
  }
  if (!version2) {
    version2 = opts3.ref;
  }
  const fullPackagePath = depPath ? resolvePackagePath({
    depPath,
    name,
    alias: opts3.alias,
    virtualStoreDir: opts3.virtualStoreDir ?? ".pnpm",
    virtualStoreDirMaxLength: opts3.virtualStoreDirMaxLength,
    modulesDir: opts3.modulesDir,
    parentDir: opts3.parentDir
  }) : path141.join(opts3.linkedPathBaseDir, opts3.ref.slice(5));
  if (version2.startsWith("link:") && opts3.rewriteLinkVersionDir) {
    version2 = `link:${(0, import_normalize_path10.default)(path141.relative(opts3.rewriteLinkVersionDir, fullPackagePath))}`;
  }
  const packageInfo = {
    alias: opts3.alias,
    isMissing,
    isPeer: Boolean(opts3.peers?.has(opts3.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 && opts3.storeDir && opts3.storeIndex) {
        const manifest = readManifestFromCafs(opts3.storeDir, opts3.storeIndex, { integrity, name, version: version2 });
        if (manifest)
          return manifest;
      }
      return readPackageJsonFromDirSync(fullPackagePath);
    }
  };
}
var import_normalize_path10;
var init_getPkgInfo = __esm({
  "../deps/inspection/tree-builder/lib/getPkgInfo.js"() {
    "use strict";
    init_lib68();
    init_lib127();
    init_lib73();
    init_lib5();
    import_normalize_path10 = __toESM(require_normalize_path(), 1);
    init_readManifestFromCafs();
    init_resolvePackagePath();
  }
});

// ../deps/inspection/tree-builder/lib/peersSuffixHash.js
import crypto9 from "node:crypto";
function peersSuffixHashFromDepPath(depPath) {
  const { peerDepGraphHash } = parseDepPath(depPath);
  if (!peerDepGraphHash)
    return void 0;
  return crypto9.createHash("sha256").update(peerDepGraphHash).digest("hex").slice(0, 4);
}
var init_peersSuffixHash = __esm({
  "../deps/inspection/tree-builder/lib/peersSuffixHash.js"() {
    "use strict";
    init_lib68();
  }
});

// ../deps/inspection/tree-builder/lib/getTree.js
import path142 from "node:path";
function getTree(opts3, parentId) {
  const ancestors = /* @__PURE__ */ new Set();
  ancestors.add(serializeTreeNodeId(parentId));
  const ctx = {
    ...opts3,
    ancestors
  };
  const result2 = materializeChildren(ctx, parentId, opts3.maxDepth, opts3.parentDir);
  const circularAncestors = /* @__PURE__ */ new Set();
  if (opts3.parentDir) {
    circularAncestors.add(opts3.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" ? path142.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_util15.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_util15;
var init_getTree = __esm({
  "../deps/inspection/tree-builder/lib/getTree.js"() {
    "use strict";
    import_util15 = __toESM(require_dist4(), 1);
    init_getPkgInfo();
    init_peersSuffixHash();
    init_TreeNodeId();
  }
});

// ../deps/inspection/tree-builder/lib/buildDependenciesTree.js
import path143 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 = path143.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) => path143.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 opts3 = {
    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(opts3.lockfileDir, projectPath);
    if (lockfileToUse.importers[importerId]) {
      allRootIds.push({ type: "importer", importerId });
    }
  }
  const sharedGraph = buildDependencyGraph(allRootIds, {
    currentPackages: lockfileToUse.packages ?? {},
    importers: lockfileToUse.importers,
    include: opts3.include,
    lockfileDir: opts3.lockfileDir,
    onlyProjects: opts3.onlyProjects
  });
  const sharedMaterializationCache = /* @__PURE__ */ new Map();
  const sharedDepTypes = detectDepTypes(lockfileToUse);
  const ctx = {
    currentLockfile: lockfileToUse,
    wantedLockfile,
    ...opts3,
    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(opts3, projectPath) {
  const { currentLockfile, wantedLockfile } = opts3;
  const importerId = getLockfileImporterId(opts3.lockfileDir, projectPath);
  if (!currentLockfile.importers[importerId])
    return {};
  const modulesDir = opts3.modulesDir && path143.isAbsolute(opts3.modulesDir) ? opts3.modulesDir : path143.join(projectPath, opts3.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) => opts3.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({
    ...opts3,
    currentPackages,
    importers: currentLockfile.importers,
    rewriteLinkVersionDir: projectPath,
    maxDepth: opts3.depth + 1,
    wantedPackages,
    modulesDir
  }, parentId);
  for (const node of nodes) {
    const field = fieldMap.get(node.alias);
    if (field != null) {
      result2[field].push(node);
    }
  }
  if (!opts3.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((unsavedDep) => limitUnsavedReads(async () => {
        let pkgPath = path143.join(modulesDir, unsavedDep);
        let version2;
        try {
          pkgPath = await resolveLinkTarget(pkgPath);
          version2 = `link:${(0, import_normalize_path11.default)(path143.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_path11, limitUnsavedReads;
var init_buildDependenciesTree = __esm({
  "../deps/inspection/tree-builder/lib/buildDependenciesTree.js"() {
    "use strict";
    init_lib76();
    init_lib8();
    init_lib77();
    init_lib127();
    init_lib80();
    init_lib5();
    init_lib30();
    init_lib9();
    import_normalize_path11 = __toESM(require_normalize_path(), 1);
    init_p_limit();
    init_path_absolute();
    init_realpath_missing();
    init_resolve_link_target();
    init_buildDependencyGraph();
    init_getTree();
    limitUnsavedReads = pLimit(4);
  }
});

// ../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 finder of finders) {
      const result2 = finder(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_arg4.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_semver43.default.satisfies(version2, parsed.fetchSpec)
  };
}
var import_npm_package_arg4, import_semver43;
var init_createPackagesSearcher = __esm({
  "../deps/inspection/tree-builder/lib/createPackagesSearcher.js"() {
    "use strict";
    init_lib27();
    import_npm_package_arg4 = __toESM(require_npa(), 1);
    import_semver43 = __toESM(require_semver2(), 1);
  }
});

// ../deps/inspection/tree-builder/lib/buildDependentsTree.js
import path144 from "node:path";
async function buildDependentsTree(packages, projectPaths, opts3) {
  const modulesDir = await realpathMissing(path144.join(opts3.lockfileDir, opts3.modulesDir ?? "node_modules"));
  const modules = await readModulesManifest(modulesDir);
  const registries = normalizeRegistries({
    ...opts3.registries,
    ...modules?.registries
  });
  const storeDir = modules?.storeDir;
  const storeIndex = storeDir ? new StoreIndex(storeDir) : void 0;
  const virtualStoreDir = modules?.virtualStoreDir ?? path144.join(modulesDir, ".pnpm");
  const virtualStoreDirMaxLength = modules?.virtualStoreDirMaxLength ?? 120;
  const include = opts3.include ?? {
    dependencies: true,
    devDependencies: true,
    optionalDependencies: true
  };
  const allRootIds = [];
  for (const projectPath of projectPaths) {
    const importerId = getLockfileImporterId(opts3.lockfileDir, projectPath);
    if (opts3.lockfile.importers[importerId]) {
      allRootIds.push({ type: "importer", importerId });
    }
  }
  const graph = buildDependencyGraph(allRootIds, {
    currentPackages: opts3.lockfile.packages ?? {},
    importers: opts3.lockfile.importers,
    include,
    lockfileDir: opts3.lockfileDir
  });
  const reverseMap = invertGraph(graph);
  const search2 = createPackagesSearcher(packages, opts3.finders);
  const currentPackages = opts3.lockfile.packages ?? {};
  const resolvedPackageNodes = resolvePackageNodes(graph, currentPackages, {
    virtualStoreDir,
    virtualStoreDirMaxLength,
    modulesDir,
    registries,
    wantedPackages: currentPackages,
    storeDir,
    storeIndex
  });
  const trees = [];
  const ctx = {
    reverseMap,
    graph,
    importers: opts3.lockfile.importers,
    currentPackages,
    importerInfoMap: opts3.importerInfoMap,
    resolvedPackageNodes,
    nameFormatter: opts3.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 = opts3.nameFormatter ? opts3.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_util16.lexCompare)(a2.name, b.name);
    if (nameCmp !== 0)
      return nameCmp;
    const versionCmp = import_semver44.default.valid(a2.version) && import_semver44.default.valid(b.version) ? import_semver44.default.compare(a2.version, b.version) : (0, import_util16.lexCompare)(a2.version, b.version);
    if (versionCmp !== 0)
      return versionCmp;
    return (0, import_util16.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, opts3) {
  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({
        ...opts3,
        alias: edge.alias,
        currentPackages,
        depTypes: {},
        linkedPathBaseDir: opts3.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_util16.lexCompare)(resolveParentName(a2, ctx), resolveParentName(b, ctx));
    if (cmp !== 0)
      return cmp;
    return (0, import_util16.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_util16, import_semver44;
var init_buildDependentsTree = __esm({
  "../deps/inspection/tree-builder/lib/buildDependentsTree.js"() {
    "use strict";
    init_lib76();
    init_lib77();
    init_lib80();
    init_lib73();
    init_lib30();
    import_util16 = __toESM(require_dist4(), 1);
    init_realpath_missing();
    import_semver44 = __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_lib128 = __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, opts3) {
  return render(opts3 ?? {}, { node, connector: "", prefix: "" });
}
function render(opts3, ctx) {
  const { connector, prefix } = ctx;
  let { node } = ctx;
  if (typeof node === "string")
    node = { label: node };
  const fmt = opts3.treeChars ?? identity4;
  const chr = opts3.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 i4 = 0; i4 < items.length; i4++) {
    const item = items[i4];
    const last = i4 === 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(opts3, {
      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_lib129 = __esm({
  "../text/tree-renderer/lib/index.js"() {
    "use strict";
  }
});

// ../deps/inspection/list/lib/readPkg.js
async function readPkg(pkgPath) {
  return limitPkgReads(async () => readPackageJson(pkgPath));
}
var limitPkgReads;
var init_readPkg = __esm({
  "../deps/inspection/list/lib/readPkg.js"() {
    "use strict";
    init_lib5();
    init_p_limit();
    limitPkgReads = pLimit(4);
  }
});

// ../deps/inspection/list/lib/getPkgInfo.js
import path145 from "node:path";
async function getPkgInfo2(pkg) {
  let manifest;
  try {
    manifest = await readPkg(path145.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_source();
    DEDUPED_LABEL = source_default.dim(" [deduped]");
  }
});

// ../deps/inspection/list/lib/renderDependentsTree.js
async function renderDependentsTree(trees, opts3) {
  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 (opts3.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, opts3.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, opts3) {
  let data = trees;
  if (opts3.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 (opts3.depth != null) {
    data = data.map((tree) => ({
      ...tree,
      dependents: truncateDependents(tree.dependents, 0, opts3.depth)
    }));
  }
  return JSON.stringify(data, null, 2);
}
function renderDependentsParseable(trees, opts3) {
  const lines = [];
  for (const result2 of trees) {
    const displayedName = result2.displayName ?? result2.name;
    const rootSegment = opts3.long && result2.path ? `${result2.path}:${plainNameAtVersion(displayedName, result2.version)}` : plainNameAtVersion(displayedName, result2.version);
    collectPaths(result2.dependents, [rootSegment], lines, 0, opts3.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_lib129();
    init_source();
    init_getPkgInfo2();
    init_peerVariants();
  }
});

// ../deps/inspection/list/lib/renderJson.js
async function renderJson(pkgs, opts3) {
  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: opts3.long })
    ]))));
    return jsonObj;
  }));
  return JSON.stringify(jsonArr, null, 2);
}
async function toJsonResult(entryNodes, opts3) {
  const dependencies = {};
  await Promise.all(sortPackages(entryNodes).map(async (node) => {
    const subDependencies = await toJsonResult(node.dependencies ?? [], opts3);
    const dep = opts3.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_lib9();
    init_es();
    init_getPkgInfo2();
    sortPackages = sortBy_default(path_default(["pkg", "alias"]));
  }
});

// ../deps/inspection/list/lib/renderParseable.js
async function renderParseable(pkgs, opts3) {
  const depPaths = /* @__PURE__ */ new Set();
  return pkgs.map(renderParseableForPackage.bind(null, depPaths, opts3)).filter((p) => p.length !== 0).join("\n");
}
function renderParseableForPackage(depPaths, opts3, 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 (!opts3.alwaysPrintRootPackage && pkgs.length === 0 && allDeps.length === 0)
    return "";
  if (opts3.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 path146 from "node:path";
async function renderTree2(packages, opts3) {
  const multiPeerPkgs = findMultiPeerPackages2(packages);
  const output = (await Promise.all(packages.map(async (pkg) => renderTreeForPackage(pkg, opts3, multiPeerPkgs)))).filter(Boolean).join("\n\n");
  const legend = opts3.depth > -1 && output ? LEGEND : "";
  const summary = opts3.showSummary && opts3.depth > -1 && output ? `

${listSummary(packages)}` : "";
  return `${legend}${output}${summary}`;
}
async function renderTreeForPackage(pkg, opts3, multiPeerPkgs) {
  if (!opts3.alwaysPrintRootPackage && !pkg.dependencies?.length && !pkg.devDependencies?.length && !pkg.optionalDependencies?.length && (!opts3.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 (opts3.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: opts3.long,
      modules: path146.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, opts3) {
  const sorted = [...entryNodes].sort((a2, b) => (0, import_util17.lexCompare)(a2.name, b.name));
  return Promise.all(sorted.map(async (node) => {
    const nodes = node.deduped ? [] : await toArchyTree(getPkgColor2, node.dependencies ?? [], opts3);
    const labelLines = [
      printLabel(getPkgColor2, opts3.multiPeerPkgs, node)
    ];
    if (node.searchMessage) {
      labelLines.push(node.searchMessage);
    }
    if (opts3.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_util17, 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_lib129();
    init_lib9();
    import_util17 = __toESM(require_dist4(), 1);
    init_source();
    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 path147 from "node:path";
async function searchForPackages(packages, projectPaths, opts3) {
  const search2 = createPackagesSearcher(packages, opts3.finders);
  return Promise.all(Object.entries(await buildDependenciesTree(projectPaths, {
    depth: opts3.depth,
    excludePeerDependencies: opts3.excludePeerDependencies,
    include: opts3.include,
    lockfileDir: opts3.lockfileDir,
    checkWantedLockfileOnly: opts3.checkWantedLockfileOnly,
    onlyProjects: opts3.onlyProjects,
    registries: opts3.registries,
    search: search2,
    showDedupedSearchMatches: true,
    modulesDir: opts3.modulesDir,
    virtualStoreDirMaxLength: opts3.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 opts3 = { ...DEFAULTS, ...maybeOpts };
  const pkgs = await searchForPackages(packages, projectPaths, opts3);
  const print = getPrinter(opts3.reportAs);
  return print(pkgs, {
    alwaysPrintRootPackage: opts3.alwaysPrintRootPackage,
    depth: opts3.depth,
    long: opts3.long,
    search: Boolean(packages.length),
    showExtraneous: opts3.showExtraneous,
    showSummary: opts3.showSummary
  });
}
async function list(projectPaths, maybeOpts) {
  const opts3 = { ...DEFAULTS, ...maybeOpts };
  const pkgs = await Promise.all(Object.entries(opts3.depth === -1 ? projectPaths.reduce((acc, projectPath) => {
    acc[projectPath] = {};
    return acc;
  }, {}) : await buildDependenciesTree(projectPaths, {
    depth: opts3.depth,
    excludePeerDependencies: maybeOpts?.excludePeerDependencies,
    include: maybeOpts?.include,
    lockfileDir: maybeOpts?.lockfileDir,
    checkWantedLockfileOnly: maybeOpts?.checkWantedLockfileOnly,
    onlyProjects: maybeOpts?.onlyProjects,
    registries: opts3.registries,
    modulesDir: opts3.modulesDir,
    virtualStoreDirMaxLength: opts3.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(opts3.reportAs);
  return print(pkgs, {
    alwaysPrintRootPackage: opts3.alwaysPrintRootPackage,
    depth: opts3.depth,
    long: opts3.long,
    search: false,
    showExtraneous: opts3.showExtraneous,
    showSummary: opts3.showSummary
  });
}
function getPrinter(reportAs) {
  switch (reportAs) {
    case "parseable":
      return renderParseable;
    case "json":
      return renderJson;
    case "tree":
      return renderTree2;
  }
}
async function whyForPackages(packages, projectPaths, opts3) {
  const reportAs = opts3.reportAs ?? "tree";
  const long = opts3.long ?? false;
  const depth = opts3.depth;
  const importerInfoMap = /* @__PURE__ */ new Map();
  const modulesDir = opts3.modulesDir ?? "node_modules";
  const lockfile = opts3.checkWantedLockfileOnly ? await readWantedLockfile(opts3.lockfileDir, { ignoreIncompatible: false }) : await readCurrentLockfile(path147.join(opts3.lockfileDir, modulesDir, ".pnpm"), { ignoreIncompatible: false }) ?? await readWantedLockfile(opts3.lockfileDir, { ignoreIncompatible: false });
  if (!lockfile)
    return "";
  const importerIds = Object.keys(lockfile.importers);
  const manifests = await Promise.all(importerIds.map((importerId) => safeReadProjectManifestOnly(path147.join(opts3.lockfileDir, importerId))));
  for (let i4 = 0; i4 < importerIds.length; i4++) {
    const importerId = importerIds[i4];
    const manifest = manifests[i4];
    importerInfoMap.set(importerId, {
      name: manifest?.name ?? (importerId === "." ? "the root project" : importerId),
      version: manifest?.version ?? ""
    });
  }
  const trees = await buildDependentsTree(packages, projectPaths, {
    lockfileDir: opts3.lockfileDir,
    include: opts3.include,
    modulesDir: opts3.modulesDir,
    registries: opts3.registries,
    finders: opts3.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_lib130 = __esm({
  "../deps/inspection/list/lib/index.js"() {
    "use strict";
    init_lib128();
    init_lib80();
    init_lib15();
    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 path148 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, opts3 = {}) {
  const reportAs = opts3.reportAs ?? "tree";
  const long = opts3.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 i4 = 0; i4 < packages.length; i4++) {
    const installDir = packages[i4].installDir;
    for (const installed of allDetails[i4]) {
      if (!matches2(installed.alias))
        continue;
      dependencies.push({
        alias: installed.alias,
        name: installed.manifest.name,
        version: installed.version,
        path: path148.join(installDir, "node_modules", installed.alias),
        isPeer: false,
        isSkipped: false,
        isMissing: false
      });
    }
  }
  dependencies.sort((a2, b) => (0, import_util18.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_util18;
var init_listGlobalPackages = __esm({
  "../global/commands/lib/listGlobalPackages.js"() {
    "use strict";
    init_lib27();
    init_lib130();
    init_lib103();
    import_util18 = __toESM(require_dist4(), 1);
  }
});

// ../global/commands/lib/index.js
var init_lib131 = __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/assertValidConfigDepVersion.js
function assertValidConfigDepVersion(name, version2) {
  if (import_semver45.default.valid(version2) == null) {
    throw new PnpmError("INVALID_CONFIG_DEP_VERSION", `The config dependency "${name}" has an invalid version "${version2}"`, { hint: "A config dependency version must be an exact semver version." });
  }
}
var import_semver45;
var init_assertValidConfigDepVersion = __esm({
  "../installing/env-installer/lib/assertValidConfigDepVersion.js"() {
    "use strict";
    init_lib2();
    import_semver45 = __toESM(require_semver2(), 1);
  }
});

// ../installing/env-installer/lib/verifyEnvLockfile.js
function verifyEnvLockfile(envLockfile) {
  const configDeps = envLockfile.importers["."]?.configDependencies;
  assertValidDependencyAliases(configDeps, "The configDependencies in pnpm-lock.yaml");
  if (configDeps == null)
    return;
  for (const [name, { version: version2 }] of Object.entries(configDeps)) {
    assertValidConfigDepVersion(name, version2);
    const optionalDeps = envLockfile.snapshots[`${name}@${version2}`]?.optionalDependencies;
    if (optionalDeps == null)
      continue;
    assertValidDependencyAliases(optionalDeps, `The optionalDependencies of config dependency "${name}" in pnpm-lock.yaml`);
    for (const [subdepName, subdepVersion] of Object.entries(optionalDeps)) {
      assertValidConfigDepVersion(subdepName, subdepVersion);
    }
  }
}
var init_verifyEnvLockfile = __esm({
  "../installing/env-installer/lib/verifyEnvLockfile.js"() {
    "use strict";
    init_lib111();
    init_assertValidConfigDepVersion();
  }
});

// ../installing/env-installer/lib/writeVerifiedEnvLockfile.js
async function writeVerifiedEnvLockfile(rootDir, envLockfile) {
  verifyEnvLockfile(envLockfile);
  await writeEnvLockfile(rootDir, envLockfile);
}
var init_writeVerifiedEnvLockfile = __esm({
  "../installing/env-installer/lib/writeVerifiedEnvLockfile.js"() {
    "use strict";
    init_lib80();
    init_verifyEnvLockfile();
  }
});

// ../installing/env-installer/lib/migrateConfigDeps.js
async function migrateConfigDepsToLockfile(configDeps, opts3) {
  const envLockfile = createEnvLockfile();
  envLockfile.importers["."].configDependencies = /* @__PURE__ */ Object.create(null);
  const cleanSpecifiers = {};
  const normalizedDeps = {};
  for (const [pkgName, pkgSpec] of Object.entries(configDeps)) {
    const registry = pickRegistryForPackage(opts3.registries, pkgName);
    if (typeof pkgSpec === "object") {
      const { version: version2, integrity } = parseIntegrity(pkgName, pkgSpec.integrity);
      const tarball = pkgSpec.tarball ?? getNpmTarballUrl(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 = getNpmTarballUrl(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 writeVerifiedEnvLockfile(opts3.rootDir, envLockfile);
  await writeSettings({
    rootProjectManifestDir: opts3.rootDir,
    workspaceDir: opts3.rootDir,
    updatedSettings: {
      configDependencies: cleanSpecifiers
    }
  });
  return normalizedDeps;
}
var init_migrateConfigDeps = __esm({
  "../installing/env-installer/lib/migrateConfigDeps.js"() {
    "use strict";
    init_lib28();
    init_lib102();
    init_lib2();
    init_lib80();
    init_lib73();
    init_lib71();
    init_parseIntegrity();
    init_writeVerifiedEnvLockfile();
  }
});

// ../installing/env-installer/lib/installConfigDeps.js
import fs83 from "node:fs";
import path149 from "node:path";
async function installConfigDeps(configDepsOrLockfile, opts3) {
  const normalizedDeps = await normalizeForInstall(configDepsOrLockfile, opts3);
  const globalVirtualStoreDir = path149.join(opts3.storeDir, "links");
  const configModulesDir = path149.join(opts3.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(path149.join(configModulesDir, existingConfigDep));
    }
  }));
  const installedConfigDeps = [];
  await Promise.all(Object.entries(normalizedDeps).map(async ([pkgName, pkg]) => {
    const configDepPath = path149.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 = path149.join(globalVirtualStoreDir, relPath, "node_modules", pkgName);
    const parentSymlinkAlreadyCorrect = existingConfigDeps.includes(pkgName) && await symlinkPointsTo(configDepPath, pkgDirInGlobalVirtualStore);
    if (!fs83.existsSync(path149.join(pkgDirInGlobalVirtualStore, "package.json"))) {
      reportStarted();
      const { fetching } = await opts3.store.fetchPackage({
        force: true,
        lockfileDir: opts3.rootDir,
        pkg: {
          id: `${pkgName}@${pkg.version}`,
          resolution: pkg.resolution
        }
      });
      const { files: filesResponse } = await fetching();
      await opts3.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: path149.join(globalVirtualStoreDir, relPath, "node_modules"),
        globalVirtualStoreDir,
        rootDir: opts3.rootDir,
        store: opts3.store,
        reportStarted
      });
    }
    if (parentSymlinkAlreadyCorrect) {
      return;
    }
    reportStarted();
    if (existingConfigDeps.includes(pkgName)) {
      await rimraf(configDepPath);
    }
    await fs83.promises.mkdir(path149.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, opts3) {
  if (isEnvLockfile(configDepsOrLockfile)) {
    verifyEnvLockfile(configDepsOrLockfile);
    return normalizeFromLockfile(configDepsOrLockfile, opts3.registries);
  }
  const envLockfile = await readEnvLockfile(opts3.rootDir);
  if (envLockfile) {
    verifyEnvLockfile(envLockfile);
    return normalizeFromLockfile(envLockfile, opts3.registries);
  }
  if (opts3.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, opts3);
}
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 ?? getNpmTarballUrl(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 ?? getNpmTarballUrl(subdepName, subdepVersion, { registry })
      },
      os: subdepInfo.os,
      cpu: subdepInfo.cpu,
      libc: subdepInfo.libc
    });
  }
  return subdeps;
}
async function installOptionalSubdeps(opts3) {
  const parentLogInfo = { id: `${opts3.parentName}@${opts3.parentVersion}`, name: opts3.parentName, version: opts3.parentVersion };
  const compatibleSubdeps = opts3.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: opts3.rootDir,
      reason: error.code === "ERR_PNPM_UNSUPPORTED_ENGINE" ? "unsupported_engine" : "unsupported_platform"
    });
    return false;
  });
  const expectedSiblings = /* @__PURE__ */ new Set([opts3.parentName, ...compatibleSubdeps.map((s) => s.name)]);
  const existingSiblings = await readModulesDir(opts3.parentNodeModulesDir) ?? [];
  const orphanSiblings = existingSiblings.filter((name) => !expectedSiblings.has(name));
  if (orphanSiblings.length > 0) {
    opts3.reportStarted();
  }
  await Promise.all(orphanSiblings.map((name) => rimraf(path149.join(opts3.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 = safeJoinModulesDir(path149.join(opts3.globalVirtualStoreDir, subdepRelPath, "node_modules"), subdep.name);
    if (!fs83.existsSync(path149.join(subdepDirInGlobalVirtualStore, "package.json"))) {
      opts3.reportStarted();
      const { fetching } = await opts3.store.fetchPackage({
        force: true,
        lockfileDir: opts3.rootDir,
        pkg: {
          id: `${subdep.name}@${subdep.version}`,
          resolution: subdep.resolution
        }
      });
      const { files: filesResponse } = await fetching();
      await opts3.store.importPackage(subdepDirInGlobalVirtualStore, {
        force: true,
        requiresBuild: false,
        filesResponse
      });
    }
    const linkPath = safeJoinModulesDir(opts3.parentNodeModulesDir, subdep.name);
    if (await symlinkPointsTo(linkPath, subdepDirInGlobalVirtualStore)) {
      return;
    }
    opts3.reportStarted();
    await fs83.promises.mkdir(path149.dirname(linkPath), { recursive: true });
    await symlinkDir(subdepDirInGlobalVirtualStore, linkPath);
  }));
}
async function symlinkPointsTo(linkPath, expectedTarget) {
  try {
    const [linkReal, targetReal] = await Promise.all([
      fs83.promises.realpath(linkPath),
      fs83.promises.realpath(expectedTarget)
    ]);
    return linkReal === targetReal;
  } catch {
    return false;
  }
}
var init_installConfigDeps = __esm({
  "../installing/env-installer/lib/installConfigDeps.js"() {
    "use strict";
    init_lib40();
    init_lib28();
    init_lib6();
    init_lib74();
    init_lib2();
    init_lib8();
    init_lib106();
    init_lib80();
    init_lib71();
    init_rimraf();
    init_dist3();
    init_migrateConfigDeps();
    init_verifyEnvLockfile();
  }
});

// ../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_lib80();
    init_lib110();
  }
});

// ../installing/env-installer/lib/resolveOptionalSubdeps.js
import util41 from "node:util";
async function resolveOptionalSubdeps(parentName, parentManifest, opts3) {
  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_semver46.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 opts3.resolveFromNpm({ alias: subdepName, bareSpecifier: subdepSpec, optional: true }, {
        lockfileDir: opts3.lockfileDir,
        preferredVersions: {},
        projectDir: opts3.lockfileDir
      });
    } catch (err2) {
      if (util41.types.isNativeError(err2) && "code" in err2 && err2.code === "ERR_PNPM_TRUST_DOWNGRADE") {
        throw err2;
      }
      skippedOptionalDependencyLogger.debug({
        details: util41.types.isNativeError(err2) ? err2.toString() : String(err2),
        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: opts3.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(opts3.registries, subdepName);
    const subdepKey = `${subdepName}@${subdepVersion}`;
    opts3.envLockfile.packages[subdepKey] = {
      resolution: toLockfileResolution({ name: subdepName, version: subdepVersion }, resolution.resolution, registry),
      ...pickPlatformFields(resolution.manifest)
    };
    if (opts3.envLockfile.snapshots[subdepKey] == null) {
      opts3.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_semver46;
var init_resolveOptionalSubdeps = __esm({
  "../installing/env-installer/lib/resolveOptionalSubdeps.js"() {
    "use strict";
    init_lib28();
    init_lib6();
    init_lib2();
    init_lib73();
    import_semver46 = __toESM(require_semver2(), 1);
  }
});

// ../installing/env-installer/lib/resolveAndInstallConfigDeps.js
async function resolveAndInstallConfigDeps(configDeps, opts3) {
  const envLockfile = await readEnvLockfile(opts3.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(opts3.registries, name);
        const { version: version2, integrity } = parseIntegrity(name, value.integrity);
        const tarball = value.tarball ?? getNpmTarballUrl(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(opts3.registries, name);
        const { version: version2, integrity } = parseIntegrity(name, value);
        const tarball = getNpmTarballUrl(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 (opts3.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 writeVerifiedEnvLockfile(opts3.rootDir, envLockfile);
    }
    await installConfigDeps(envLockfile, opts3);
    return;
  }
  const fetch3 = createFetchFromRegistry(opts3);
  const getAuthHeader = createGetAuthHeaderByURI(opts3.configByUri ?? {});
  const { resolveFromNpm } = createNpmResolver(fetch3, getAuthHeader, opts3);
  await Promise.all(depsToResolve.map(async ({ name, specifier }) => {
    const resolution = await resolveFromNpm({ alias: name, bareSpecifier: specifier }, {
      lockfileDir: opts3.rootDir,
      preferredVersions: {},
      projectDir: opts3.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(opts3.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: opts3.rootDir,
      registries: opts3.registries,
      resolveFromNpm
    });
    envLockfile.snapshots[pkgKey] = optionalSubdeps ? { optionalDependencies: optionalSubdeps } : {};
  }));
  pruneEnvLockfile(envLockfile);
  await writeVerifiedEnvLockfile(opts3.rootDir, envLockfile);
  await installConfigDeps(envLockfile, opts3);
}
var init_resolveAndInstallConfigDeps = __esm({
  "../installing/env-installer/lib/resolveAndInstallConfigDeps.js"() {
    "use strict";
    init_lib28();
    init_lib2();
    init_lib80();
    init_lib73();
    init_lib52();
    init_lib23();
    init_lib38();
    init_lib71();
    init_installConfigDeps();
    init_parseIntegrity();
    init_pruneEnvLockfile();
    init_resolveOptionalSubdeps();
    init_writeVerifiedEnvLockfile();
  }
});

// ../installing/env-installer/lib/resolveConfigDeps.js
async function resolveConfigDeps(configDeps, opts3) {
  if (opts3.frozenLockfile) {
    throw new PnpmError("FROZEN_LOCKFILE_WITH_OUTDATED_LOCKFILE", 'Cannot resolve configDependencies with "frozen-lockfile" because the lockfile is not up to date');
  }
  const fetch3 = createFetchFromRegistry(opts3);
  const getAuthHeader = createGetAuthHeaderByURI(opts3.configByUri ?? {});
  const { resolveFromNpm } = createNpmResolver(fetch3, getAuthHeader, opts3);
  const configDependencySpecifiers = extractSpecifiers(opts3.configDependencies);
  const envLockfile = await readEnvLockfile(opts3.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: opts3.rootDir,
      preferredVersions: {},
      projectDir: opts3.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(opts3.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: opts3.rootDir,
      registries: opts3.registries,
      resolveFromNpm
    });
    envLockfile.snapshots[pkgKey] = optionalSubdeps ? { optionalDependencies: optionalSubdeps } : {};
  }));
  pruneEnvLockfile(envLockfile);
  await writeVerifiedEnvLockfile(opts3.rootDir, envLockfile);
  await writeSettings({
    ...opts3,
    rootProjectManifestDir: opts3.rootDir,
    workspaceDir: opts3.rootDir,
    updatedSettings: {
      configDependencies: configDependencySpecifiers
    }
  });
  await installConfigDeps(envLockfile, opts3);
}
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_lib28();
    init_lib102();
    init_lib2();
    init_lib80();
    init_lib73();
    init_lib52();
    init_lib23();
    init_lib38();
    init_lib98();
    init_installConfigDeps();
    init_pruneEnvLockfile();
    init_resolveOptionalSubdeps();
    init_writeVerifiedEnvLockfile();
  }
});

// ../installing/env-installer/lib/resolveManifestDependencies.js
import path150 from "node:path";
async function resolveManifestDependencies(manifest, opts3) {
  const dir = opts3.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: path150.join(opts3.dir, "node_modules"),
      rootDir: dir,
      wantedDependencies,
      binsDir: path150.join(opts3.dir, "node_modules", ".bin"),
      updatePackageManifest: false
    }
  ], {
    allowedDeprecatedVersions: {},
    allowUnusedPatches: true,
    currentLockfile: emptyLockfile,
    defaultUpdateDepth: 0,
    dryRun: true,
    engineStrict: false,
    force: false,
    forceFullResolution: true,
    hooks: {},
    lockfileDir: opts3.dir,
    nodeVersion: process.version,
    pnpmVersion: "",
    preferWorkspacePackages: false,
    preserveWorkspaceProtocol: false,
    registries: opts3.registries,
    saveWorkspaceProtocol: false,
    storeController: opts3.storeController,
    tag: "latest",
    virtualStoreDir: path150.join(opts3.dir, "node_modules", ".pnpm"),
    globalVirtualStoreDir: path150.join(opts3.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_lib111();
  }
});

// ../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, opts3) {
  const save = opts3.save ?? true;
  const envLockfile = opts3.envLockfile ?? (save ? await readEnvLockfile(opts3.rootDir) : void 0) ?? createEnvLockfile();
  if (isPackageManagerResolved(envLockfile, pnpmVersion)) {
    return envLockfile;
  }
  const lockfile = await resolveManifestDependencies({
    dependencies: {
      "pnpm": pnpmVersion,
      "@pnpm/exe": pnpmVersion
    }
  }, {
    dir: opts3.rootDir,
    registries: opts3.registries,
    storeController: opts3.storeController,
    storeDir: opts3.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 writeVerifiedEnvLockfile(opts3.rootDir, envLockfile);
    }
  }
  return envLockfile;
}
var init_resolvePackageManagerIntegrities = __esm({
  "../installing/env-installer/lib/resolvePackageManagerIntegrities.js"() {
    "use strict";
    init_lib80();
    init_lib110();
    init_pruneEnvLockfile();
    init_resolveManifestDependencies();
    init_writeVerifiedEnvLockfile();
  }
});

// ../installing/env-installer/lib/index.js
var init_lib132 = __esm({
  "../installing/env-installer/lib/index.js"() {
    "use strict";
    init_installConfigDeps();
    init_resolveAndInstallConfigDeps();
    init_resolveConfigDeps();
    init_resolvePackageManagerIntegrities();
    init_verifyEnvLockfile();
  }
});

// ../workspace/state/lib/filePath.js
import path151 from "node:path";
var getFilePath;
var init_filePath = __esm({
  "../workspace/state/lib/filePath.js"() {
    "use strict";
    getFilePath = (workspaceDir) => path151.join(workspaceDir, "node_modules", ".pnpm-workspace-state-v1.json");
  }
});

// ../workspace/state/lib/loadWorkspaceState.js
import fs84 from "node:fs";
import util42 from "node:util";
function loadWorkspaceState(workspaceDir) {
  logger.debug({ msg: "loading workspace state" });
  const cacheFile = getFilePath(workspaceDir);
  let cacheFileContent;
  try {
    cacheFileContent = fs84.readFileSync(cacheFile, "utf-8");
  } catch (error) {
    if (util42.types.isNativeError(error) && "code" in error && error.code === "ENOENT") {
      return void 0;
    }
    throw error;
  }
  try {
    return JSON.parse(cacheFileContent);
  } catch (error) {
    if (util42.types.isNativeError(error) && error.name === "SyntaxError") {
      return void 0;
    }
    throw error;
  }
}
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 = [
      "enableGlobalVirtualStore",
      "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",
      // A `supportedArchitectures` change alters which platform-specific
      // optional dependencies are installed without touching the lockfile,
      // so it must invalidate the up-to-date fast path.
      "supportedArchitectures",
      "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 = (opts3) => ({
      lastValidatedTimestamp: Date.now(),
      projects: Object.fromEntries(opts3.allProjects.map((project) => [
        project.rootDir,
        {
          name: project.manifest.name,
          version: project.manifest.version
        }
      ])),
      pnpmfiles: opts3.pnpmfiles,
      settings: pick_default(WORKSPACE_STATE_SETTING_KEYS, opts3.settings),
      filteredInstall: opts3.filteredInstall,
      configDependencies: opts3.configDependencies
    });
  }
});

// ../workspace/state/lib/updateWorkspaceState.js
import fs85 from "node:fs";
import path152 from "node:path";
async function updateWorkspaceState(opts3) {
  logger.debug({ msg: "updating workspace state" });
  const workspaceState = createWorkspaceState(opts3);
  const workspaceStateJSON = JSON.stringify(workspaceState, void 0, 2) + "\n";
  const cacheFile = getFilePath(opts3.workspaceDir);
  await fs85.promises.mkdir(path152.dirname(cacheFile), { recursive: true });
  await (0, import_write_file_atomic8.default)(cacheFile, workspaceStateJSON);
}
var import_write_file_atomic8;
var init_updateWorkspaceState = __esm({
  "../workspace/state/lib/updateWorkspaceState.js"() {
    "use strict";
    init_lib3();
    import_write_file_atomic8 = __toESM(require_lib10(), 1);
    init_createWorkspaceState();
    init_filePath();
  }
});

// ../workspace/state/lib/index.js
var init_lib133 = __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 fs86 from "node:fs";
import util43 from "node:util";
async function safeStat(filePath) {
  try {
    return await fs86.promises.stat(filePath);
  } catch (error) {
    if (util43.types.isNativeError(error) && "code" in error && error.code === "ENOENT") {
      return void 0;
    }
    throw error;
  }
}
function safeStatSync(filePath) {
  try {
    return fs86.statSync(filePath);
  } catch (error) {
    if (util43.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 path153 from "node:path";
async function statManifestFile(projectRootDir) {
  const attempts = await Promise.all(MANIFEST_BASE_NAMES.map((baseName) => {
    const manifestPath = path153.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 fs87 from "node:fs";
import path154 from "node:path";
import util44 from "node:util";
async function checkDepsStatus(opts3) {
  const workspaceState = loadWorkspaceState(opts3.workspaceDir ?? opts3.rootProjectManifestDir);
  if (!workspaceState) {
    if (opts3.allProjects == null && opts3.workspaceDir == null && opts3.rootProjectManifest == null) {
      return { upToDate: void 0, workspaceState };
    }
    return {
      upToDate: false,
      issue: "Cannot check whether dependencies are outdated",
      workspaceState
    };
  }
  try {
    return await _checkDepsStatus(opts3, workspaceState);
  } catch (error) {
    if (util44.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: util44.types.isNativeError(error) ? error.message : void 0,
      workspaceState
    };
  }
}
async function _checkDepsStatus(opts3, workspaceState) {
  const { allProjects, autoInstallPeers, injectWorkspacePackages, catalogs, excludeLinksFromLockfile, linkWorkspacePackages, lockfileDir, nodeLinker, patchedDependencies, rootProjectManifest, rootProjectManifestDir, sharedWorkspaceLockfile, workspaceDir } = opts3;
  if (opts3.treatLocalFileDepsAsOutdated) {
    const manifests = allProjects?.map(({ manifest }) => manifest) ?? [];
    if (rootProjectManifest != null && !allProjects?.some(({ rootDir }) => rootDir === rootProjectManifestDir)) {
      manifests.push(rootProjectManifest);
    }
    const localFileDep = findLocalFileDep(manifests, opts3.include, catalogs);
    if (localFileDep != null) {
      return {
        upToDate: false,
        issue: `The dependency "${localFileDep}" is a local file dependency and its contents may have changed`,
        workspaceState
      };
    }
    const localFileOverride = findLocalFileOverride(opts3.overrides, catalogs);
    if (localFileOverride != null) {
      return {
        upToDate: false,
        issue: `The override "${localFileOverride}" maps to a local file dependency and its contents may have changed`,
        workspaceState
      };
    }
    const localFileExtension = findLocalFilePackageExtension(opts3.packageExtensions, opts3.include, catalogs);
    if (localFileExtension != null) {
      return {
        upToDate: false,
        issue: `The package extension "${localFileExtension}" injects a local file dependency and its contents may have changed`,
        workspaceState
      };
    }
  }
  if (nodeLinker === "pnp") {
    globalWarn2("verify-deps-before-run does not work with node-linker=pnp");
    return { upToDate: true, workspaceState: void 0 };
  }
  if (opts3.ignoreFilteredInstallCache && workspaceState.filteredInstall) {
    return { upToDate: void 0, workspaceState };
  }
  if (workspaceState.settings) {
    const ignoredSettings = new Set(opts3.ignoredWorkspaceStateSettings);
    ignoredSettings.add("catalogs");
    for (const settingName of WORKSPACE_STATE_SETTING_KEYS) {
      if (ignoredSettings.has(settingName))
        continue;
      const storedValue = settingName === "allowBuilds" ? workspaceState.settings[settingName] ?? {} : workspaceState.settings[settingName];
      const currentValue = settingName === "allowBuilds" ? opts3.allowBuilds ?? {} : opts3[settingName];
      if (!equals_default(storedValue, currentValue)) {
        return {
          upToDate: false,
          issue: `The value of the ${settingName} setting has changed`,
          workspaceState
        };
      }
    }
  }
  if ((opts3.configDependencies != null || workspaceState.configDependencies != null) && !equals_default(opts3.configDependencies ?? {}, workspaceState.configDependencies ?? {})) {
    return {
      upToDate: false,
      issue: "Configuration dependencies are not up to date",
      workspaceState
    };
  }
  const lockfileDirs = getWantedLockfileDirs({
    allProjects,
    lockfileDir,
    rootProjectManifestDir,
    sharedWorkspaceLockfile,
    workspaceDir
  });
  const wantedLockfileName = await getWantedLockfileName({
    useGitBranchLockfile: opts3.useGitBranchLockfile,
    mergeGitBranchLockfiles: opts3.mergeGitBranchLockfiles,
    cwd: workspaceDir ?? lockfileDir ?? rootProjectManifestDir
  });
  const { conflictedDir: conflictedLockfileDir, anyModified: lockfilesModified, anyMissing: lockfilesMissing } = scanWantedLockfiles(lockfileDirs, workspaceState.lastValidatedTimestamp, {
    wantedLockfileName,
    mergeGitBranchLockfiles: opts3.mergeGitBranchLockfiles
  });
  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(path154.join(rootProjectManifestDir, "node_modules"));
      statModulesDir = () => statsPromise;
    } else {
      const _nodeLinkerTypeGuard = nodeLinker;
      statModulesDir = (project) => safeStat(path154.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: opts3.pnpmfile,
      previousPnpmfiles: workspaceState.pnpmfiles
    });
    if (issue) {
      return { upToDate: false, issue, workspaceState };
    }
    const modifiedProjects = allManifestStats.filter(({ manifestStats }) => modifiedAtOrAfter(manifestStats, workspaceState.lastValidatedTimestamp));
    if (modifiedProjects.length === 0 && !lockfilesModified) {
      const wantedLockfileToRestore2 = lockfilesMissing && sharedWorkspaceLockfile && !opts3.useGitBranchLockfile ? await missingWantedLockfileStandIn(workspaceDir, wantedLockfileName) : void 0;
      if (!lockfilesMissing || wantedLockfileToRestore2 != null) {
        logger2.debug({ msg: "No manifest files or lockfiles were modified since the last validation. Exiting check." });
        return { upToDate: true, workspaceState, wantedLockfileToRestore: wantedLockfileToRestore2 };
      }
    }
    logger2.debug({ msg: "Some manifest files or lockfiles were modified since the last validation. Continuing check." });
    let wantedLockfileToRestore;
    let readWantedLockfileAndDir;
    if (sharedWorkspaceLockfile) {
      let wantedLockfileStats;
      try {
        wantedLockfileStats = fs87.statSync(path154.join(workspaceDir, wantedLockfileName));
      } catch (error) {
        if (util44.types.isNativeError(error) && "code" in error && error.code === "ENOENT") {
          wantedLockfileStats = void 0;
        } else {
          throw error;
        }
      }
      if (wantedLockfileStats == null) {
        if (opts3.useGitBranchLockfile)
          return throwLockfileNotFound(workspaceDir);
        const currentLockfile = await readCurrentLockfile(path154.join(workspaceDir, "node_modules/.pnpm"), { ignoreIncompatible: false });
        if (currentLockfile == null)
          return throwLockfileNotFound(workspaceDir);
        wantedLockfileToRestore = { lockfile: currentLockfile, lockfileDir: workspaceDir };
        readWantedLockfileAndDir = async () => ({
          wantedLockfile: currentLockfile,
          wantedLockfileDir: workspaceDir
        });
      } else {
        const wantedLockfilePromise = readWantedLockfile(workspaceDir, {
          ignoreIncompatible: false,
          useGitBranchLockfile: opts3.useGitBranchLockfile,
          mergeGitBranchLockfiles: opts3.mergeGitBranchLockfiles
        });
        if (modifiedAtOrAfter(wantedLockfileStats, workspaceState.lastValidatedTimestamp)) {
          const currentLockfile = await readCurrentLockfile(path154.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,
          useGitBranchLockfile: opts3.useGitBranchLockfile,
          mergeGitBranchLockfiles: opts3.mergeGitBranchLockfiles
        });
        const wantedLockfileStats = await safeStat(path154.join(wantedLockfileDir, wantedLockfileName));
        if (!wantedLockfileStats)
          return throwLockfileNotFound(wantedLockfileDir);
        if (modifiedAtOrAfter(wantedLockfileStats, workspaceState.lastValidatedTimestamp)) {
          const currentLockfile = await readCurrentLockfile(path154.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: opts3,
      excludeLinksFromLockfile,
      linkWorkspacePackages,
      getManifestsByDir,
      getWorkspacePackages,
      rootDir: workspaceDir
    };
    try {
      const projectsToCheck = lockfilesModified ? allManifestStats : modifiedProjects;
      await Promise.all(projectsToCheck.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 (err2) {
      return {
        upToDate: false,
        issue: util44.types.isNativeError(err2) && "message" in err2 ? err2.message : void 0,
        workspaceState
      };
    }
    await updateWorkspaceState({
      allProjects,
      workspaceDir,
      pnpmfiles: workspaceState.pnpmfiles,
      settings: opts3,
      filteredInstall: workspaceState.filteredInstall
    });
    return { upToDate: true, workspaceState, wantedLockfileToRestore };
  }
  if (!allProjects) {
    const workspaceRoot = workspaceDir ?? rootProjectManifestDir;
    const workspaceManifest = await readWorkspaceManifest(workspaceRoot);
    if (workspaceManifest ?? workspaceDir) {
      const allProjects2 = await findWorkspaceProjectsNoCheck(rootProjectManifestDir, {
        patterns: workspaceManifest?.packages
      });
      return checkDepsStatus({
        ...opts3,
        allProjects: allProjects2
      });
    }
  } else {
    throw new Error("Impossible variant: allProjects is defined but workspaceDir is undefined");
  }
  if (rootProjectManifest && rootProjectManifestDir) {
    const internalPnpmDir = path154.join(rootProjectManifestDir, "node_modules", ".pnpm");
    const currentLockfilePromise = readCurrentLockfile(internalPnpmDir, { ignoreIncompatible: false });
    const wantedLockfilePromise = readWantedLockfile(rootProjectManifestDir, {
      ignoreIncompatible: false,
      useGitBranchLockfile: opts3.useGitBranchLockfile,
      mergeGitBranchLockfiles: opts3.mergeGitBranchLockfiles
    });
    const [currentLockfileStats, wantedLockfileStats, manifestStats] = await Promise.all([
      safeStat(path154.join(internalPnpmDir, "lock.yaml")),
      safeStat(path154.join(rootProjectManifestDir, wantedLockfileName)),
      statManifestFile(rootProjectManifestDir)
    ]);
    if (!wantedLockfileStats && (!currentLockfileStats || opts3.useGitBranchLockfile))
      return throwLockfileNotFound(rootProjectManifestDir);
    const wantedLockfileIsMissing = !wantedLockfileStats;
    const effectiveWantedLockfileStats = wantedLockfileStats ?? currentLockfileStats;
    const readEffectiveWantedLockfile = async () => {
      const lockfile = wantedLockfileIsMissing ? await currentLockfilePromise : await wantedLockfilePromise;
      return lockfile ?? throwLockfileNotFound(rootProjectManifestDir);
    };
    const issue = await patchesOrHooksAreModified({
      patchedDependencies,
      rootDir: rootProjectManifestDir,
      lastValidatedTimestamp: effectiveWantedLockfileStats.mtime.valueOf(),
      currentPnpmfiles: opts3.pnpmfile,
      previousPnpmfiles: workspaceState.pnpmfiles
    });
    if (issue) {
      return { upToDate: false, issue, workspaceState };
    }
    if (!wantedLockfileIsMissing && currentLockfileStats && modifiedAtOrAfter(wantedLockfileStats, 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 (modifiedAtOrAfter(manifestStats, effectiveWantedLockfileStats.mtime.valueOf())) {
      logger2.debug({ msg: "The manifest is newer than the lockfile. Continuing check." });
      try {
        await assertWantedLockfileUpToDate({
          autoInstallPeers,
          injectWorkspacePackages,
          config: opts3,
          excludeLinksFromLockfile,
          linkWorkspacePackages,
          getManifestsByDir: () => ({}),
          getWorkspacePackages: () => void 0,
          rootDir: rootProjectManifestDir
        }, {
          projectDir: rootProjectManifestDir,
          projectId: ".",
          projectManifest: rootProjectManifest,
          wantedLockfile: await readEffectiveWantedLockfile(),
          wantedLockfileDir: rootProjectManifestDir
        });
      } catch (err2) {
        return {
          upToDate: false,
          issue: util44.types.isNativeError(err2) && "message" in err2 ? err2.message : void 0,
          workspaceState
        };
      }
    } else if (currentLockfileStats) {
      logger2.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"
        });
      }
    }
    if (wantedLockfileIsMissing) {
      const currentLockfile = await currentLockfilePromise;
      if (currentLockfile != null) {
        return {
          upToDate: true,
          workspaceState,
          wantedLockfileToRestore: { lockfile: currentLockfile, lockfileDir: rootProjectManifestDir }
        };
      }
    }
    return { upToDate: true, workspaceState };
  }
  globalWarn2("Skipping check.");
  return { upToDate: void 0, workspaceState };
}
async function assertWantedLockfileUpToDate(ctx, opts3) {
  const { autoInstallPeers, config: config2, excludeLinksFromLockfile, linkWorkspacePackages, getManifestsByDir, getWorkspacePackages } = ctx;
  const { projectDir, projectId, projectManifest, wantedLockfile, wantedLockfileDir } = opts3;
  const resolvedPatchedDeps = resolvePatchedDependencies(config2.patchedDependencies, wantedLockfileDir);
  const [patchedDependencies, pnpmfileChecksum] = await Promise.all([
    calcPatchHashes(resolvedPatchedDeps ?? {}),
    config2.hooks?.calculatePnpmfileChecksum?.()
  ]);
  const outdatedLockfileSettingName = getOutdatedLockfileSetting(wantedLockfile, {
    catalogs: config2.catalogs,
    autoInstallPeers: config2.autoInstallPeers,
    injectWorkspacePackages: config2.injectWorkspacePackages,
    excludeLinksFromLockfile: config2.excludeLinksFromLockfile,
    peersSuffixMaxLength: config2.peersSuffixMaxLength,
    overrides: createOverridesMapFromParsed(parseOverrides(config2.overrides ?? {}, config2.catalogs)),
    ignoredOptionalDependencies: config2.ignoredOptionalDependencies?.sort(),
    packageExtensionsChecksum: hashObjectNullableWithPrefix(config2.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 findLocalFileDep(manifests, include, catalogs) {
  for (const manifest of manifests) {
    for (const depField of DEPENDENCIES_FIELDS) {
      if (include?.[depField] === false)
        continue;
      const depName = findLocalFileDepInRecord(manifest[depField], catalogs);
      if (depName != null)
        return depName;
    }
  }
  return void 0;
}
function findLocalFileDepInRecord(deps, catalogs) {
  if (deps == null)
    return void 0;
  for (const [depName, spec] of Object.entries(deps)) {
    if (typeof spec !== "string")
      continue;
    if (isLocalFileSpec(spec))
      return depName;
    if (!spec.startsWith("catalog:"))
      continue;
    const catalogResult = resolveFromCatalog(catalogs ?? {}, { alias: depName, bareSpecifier: spec });
    if (catalogResult.type === "found" && isLocalFileSpec(catalogResult.resolution.specifier))
      return depName;
  }
  return void 0;
}
function findLocalFilePackageExtension(packageExtensions, include, catalogs) {
  if (packageExtensions == null)
    return void 0;
  for (const [selector, extension] of Object.entries(packageExtensions)) {
    if (findLocalFileDepInRecord(extension.dependencies, catalogs) != null)
      return selector;
    if (include?.optionalDependencies === false)
      continue;
    if (findLocalFileDepInRecord(extension.optionalDependencies, catalogs) != null)
      return selector;
  }
  return void 0;
}
function findLocalFileOverride(overrides, catalogs) {
  if (overrides == null || isEmpty_default(overrides))
    return void 0;
  return parseOverrides(overrides, catalogs).find(({ newBareSpecifier }) => isLocalFileSpec(newBareSpecifier))?.selector;
}
function isLocalFileSpec(spec) {
  if (spec.startsWith("file:"))
    return true;
  if (LOCAL_PATH_PREFIX.test(spec))
    return true;
  if (spec.includes(":"))
    return false;
  if (spec.includes("#"))
    return false;
  return LOCAL_TARBALL_EXTENSION.test(spec);
}
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"
  });
}
async function missingWantedLockfileStandIn(lockfileDir, wantedLockfileName) {
  if (safeStatSync(path154.join(lockfileDir, wantedLockfileName)) != null)
    return void 0;
  const currentLockfile = await readCurrentLockfile(path154.join(lockfileDir, "node_modules/.pnpm"), { ignoreIncompatible: false });
  if (currentLockfile == null)
    return void 0;
  return { lockfile: currentLockfile, lockfileDir };
}
function getWantedLockfileDirs(opts3) {
  if (opts3.allProjects && opts3.workspaceDir && opts3.sharedWorkspaceLockfile === false) {
    return [...new Set(opts3.allProjects.map(({ rootDir }) => rootDir))];
  }
  return [opts3.lockfileDir ?? opts3.workspaceDir ?? opts3.rootProjectManifestDir];
}
function scanWantedLockfiles(lockfileDirs, lastValidatedTimestamp, opts3) {
  let conflictedDir;
  let anyModified = false;
  let anyMissing = false;
  for (const lockfileDir of lockfileDirs) {
    const lockfileNames = opts3.mergeGitBranchLockfiles ? gitBranchLockfileNames(lockfileDir, opts3.wantedLockfileName) : [opts3.wantedLockfileName];
    let foundInDir = false;
    for (const lockfileName of lockfileNames) {
      let stats;
      try {
        stats = fs87.statSync(path154.join(lockfileDir, lockfileName));
      } catch (err2) {
        if (util44.types.isNativeError(err2) && "code" in err2 && err2.code === "ENOENT")
          continue;
        throw err2;
      }
      foundInDir = true;
      if (!modifiedAtOrAfter(stats, lastValidatedTimestamp))
        continue;
      anyModified = true;
      if (wantedLockfileHasMergeConflictsSync(lockfileDir, lockfileName)) {
        conflictedDir = lockfileDir;
        return { conflictedDir, anyModified, anyMissing };
      }
    }
    if (!foundInDir)
      anyMissing = true;
  }
  return { conflictedDir, anyModified, anyMissing };
}
function gitBranchLockfileNames(lockfileDir, wantedLockfileName) {
  let branchLockfileNames;
  try {
    branchLockfileNames = getGitBranchLockfileNamesSync(lockfileDir);
  } catch (err2) {
    if (util44.types.isNativeError(err2) && "code" in err2 && err2.code === "ENOENT") {
      branchLockfileNames = [];
    } else {
      throw err2;
    }
  }
  return branchLockfileNames.includes(wantedLockfileName) ? branchLockfileNames : [wantedLockfileName, ...branchLockfileNames];
}
async function patchesOrHooksAreModified(opts3) {
  if (opts3.patchedDependencies) {
    const allPatchStats = await Promise.all(Object.values(opts3.patchedDependencies).map((patchFile) => {
      return safeStat(patchFile);
    }));
    if (allPatchStats.some((patch) => patch && modifiedAtOrAfter(patch, opts3.lastValidatedTimestamp))) {
      return "Patches were modified";
    }
  }
  if (!equals_default(opts3.currentPnpmfiles, opts3.previousPnpmfiles)) {
    return "The list of pnpmfiles changed.";
  }
  for (const pnpmfilePath of opts3.currentPnpmfiles) {
    const pnpmfileStats = safeStatSync(pnpmfilePath);
    if (pnpmfileStats == null) {
      return `pnpmfile at "${pnpmfilePath}" was removed`;
    }
    if (modifiedAtOrAfter(pnpmfileStats, opts3.lastValidatedTimestamp)) {
      return `pnpmfile at "${pnpmfilePath}" was modified`;
    }
  }
  return void 0;
}
function modifiedAtOrAfter(stats, referenceMs) {
  const wholeSecond = stats.mtimeMs % 1e3 === 0;
  const mtimeMs = stats.mtime.valueOf();
  return wholeSecond ? mtimeMs + 1e3 > referenceMs : mtimeMs > referenceMs;
}
var LOCAL_PATH_PREFIX, LOCAL_TARBALL_EXTENSION;
var init_checkDepsStatus = __esm({
  "../deps/status/lib/checkDepsStatus.js"() {
    "use strict";
    init_lib97();
    init_lib99();
    init_lib();
    init_lib70();
    init_lib2();
    init_lib89();
    init_lib80();
    init_lib124();
    init_lib123();
    init_lib63();
    init_lib9();
    init_lib42();
    init_lib133();
    init_lib43();
    init_es();
    init_assertLockfilesEqual();
    init_safeStat();
    init_statManifestFile();
    LOCAL_PATH_PREFIX = /^(?:[./\\]|~[/\\]|[a-z]:)/i;
    LOCAL_TARBALL_EXTENSION = /\.(?:tgz|tar\.gz|tar)$/i;
  }
});

// ../deps/status/lib/index.js
var init_lib134 = __esm({
  "../deps/status/lib/index.js"() {
    "use strict";
    init_checkDepsStatus();
    init_lib133();
  }
});

// ../installing/commands/lib/getPinnedVersion.js
function getPinnedVersion(opts3) {
  if (opts3.saveExact === true || opts3.savePrefix === "")
    return "patch";
  return opts3.savePrefix === "~" ? "minor" : "major";
}
var init_getPinnedVersion = __esm({
  "../installing/commands/lib/getPinnedVersion.js"() {
    "use strict";
  }
});

// ../installing/commands/lib/getSaveType.js
function getSaveType(opts3) {
  if (opts3.saveDev === true || opts3.savePeer)
    return "devDependencies";
  if (opts3.saveOptional)
    return "optionalDependencies";
  if (opts3.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(opts3, ignoredBuilds) {
  if (!ignoredBuilds?.size)
    return;
  if (!opts3.ignoreWorkspace) {
    await writeIgnoredBuildsToAllowBuilds(opts3, ignoredBuilds);
  }
  if (opts3.strictDepBuilds) {
    throw new IgnoredBuildsError(ignoredBuilds);
  }
}
async function writeIgnoredBuildsToAllowBuilds(opts3, ignoredBuilds) {
  const packageNames = packageNamesFromIgnoredBuilds(ignoredBuilds);
  const newEntries = {};
  for (const name of packageNames) {
    if (opts3.allowBuilds?.[name] == null) {
      newEntries[name] = "set this to true or false";
    }
  }
  if (Object.keys(newEntries).length && opts3.rootProjectManifestDir) {
    await writeSettings({
      rootProjectManifestDir: opts3.rootProjectManifestDir,
      workspaceDir: opts3.workspaceDir ?? opts3.rootProjectManifestDir,
      updatedSettings: {
        allowBuilds: { ...opts3.allowBuilds, ...newEntries }
      }
    });
  }
}
function packageNamesFromIgnoredBuilds(ignoredBuilds) {
  return Array.from(new Set(Array.from(ignoredBuilds).map(allowBuildKeyFromIgnoredBuild))).sort(import_util19.lexCompare);
}
var import_util19;
var init_handleIgnoredBuilds = __esm({
  "../installing/commands/lib/handleIgnoredBuilds.js"() {
    "use strict";
    init_lib69();
    init_lib102();
    init_lib126();
    import_util19 = __toESM(require_dist4(), 1);
  }
});

// ../installing/commands/lib/policyHandlers.js
function setupPolicyHandlers(opts3) {
  const handlers = [];
  const minimumReleaseAge = createMinimumReleaseAgeHandler(opts3);
  if (minimumReleaseAge)
    handlers.push(minimumReleaseAge);
  if (handlers.length === 0)
    return void 0;
  return {
    handleResolutionPolicyViolations: async (violations) => {
      for (const handler83 of handlers) {
        if (handler83.handleResolutionPolicyViolations) {
          await handler83.handleResolutionPolicyViolations(violations);
        }
      }
    },
    pickManifestUpdates: (violations) => {
      const merged = {};
      let any2 = false;
      for (const handler83 of handlers) {
        if (!handler83.pickManifestUpdates)
          continue;
        const patch = handler83.pickManifestUpdates(violations);
        if (patch == null)
          continue;
        for (const [key, value] of Object.entries(patch)) {
          if (value == null)
            continue;
          merged[key] = value;
          any2 = true;
        }
      }
      return any2 ? merged : void 0;
    }
  };
}
function createMinimumReleaseAgeHandler(opts3) {
  if (!opts3.minimumReleaseAge)
    return void 0;
  const strictMode = opts3.minimumReleaseAgeStrict === true;
  const persistenceEnabled = opts3.save !== false;
  const inCi = opts3.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 entries = mergePackageVersionSpecs(immature.map((v) => `${v.name}@${v.version}`).sort());
  const reason = promptRequired ? "(approved at the prompt)" : "(set minimumReleaseAgeStrict to true to gate these updates with a prompt)";
  globalInfo(`Added ${entries.length} ${entries.length === 1 ? "entry" : "entries"} to minimumReleaseAgeExclude in pnpm-workspace.yaml ${reason}:
  ${entries.join("\n  ")}`);
  return entries;
}
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?";
  let confirmed;
  promptLogger.debug({ action: "start" });
  try {
    confirmed = await dist_default5({ message, default: false });
  } catch (err2) {
    if (err2 instanceof Error && err2.name === "ExitPromptError") {
      confirmed = false;
    } else {
      throw err2;
    }
  } finally {
    promptLogger.debug({ action: "end" });
  }
  if (!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;
var init_policyHandlers = __esm({
  "../installing/commands/lib/policyHandlers.js"() {
    "use strict";
    init_dist14();
    init_lib37();
    init_lib6();
    init_lib2();
    init_lib3();
    init_lib38();
    import_ci_info2 = __toESM(require_ci_info(), 1);
  }
});

// ../hooks/pnpmfile/lib/requirePnpmfile.js
import fs88 from "node:fs";
import { createRequire as createRequire7 } from "node:module";
import path155 from "node:path";
import { pathToFileURL as pathToFileURL3 } from "node:url";
import util45 from "node:util";
async function requirePnpmfile(pnpmFilePath, prefix) {
  try {
    let pnpmfile;
    if (pnpmFilePath.endsWith(".mjs")) {
      const url7 = pathToFileURL3(path155.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 (err2) {
    if (err2 instanceof SyntaxError) {
      console.error(source_default.red(`A syntax error in the "${pnpmFilePath}"
`));
      console.error(err2);
      process.exit(1);
    }
    if (!util45.types.isNativeError(err2)) {
      throw new PnpmFileFailError(pnpmFilePath, toError(err2));
    }
    if (!("code" in err2 && (err2.code === "MODULE_NOT_FOUND" || err2.code === "ERR_MODULE_NOT_FOUND")) || pnpmFileExistsSync(pnpmFilePath)) {
      throw new PnpmFileFailError(pnpmFilePath, err2);
    }
    return void 0;
  }
}
function pnpmFileExistsSync(pnpmFilePath) {
  const pnpmFileRealName = pnpmFilePath.endsWith(".cjs") || pnpmFilePath.endsWith(".mjs") ? pnpmFilePath : `${pnpmFilePath}.cjs`;
  return fs88.existsSync(pnpmFileRealName);
}
function toError(err2) {
  if (err2 instanceof Error)
    return err2;
  try {
    return new Error(String(err2), { cause: err2 });
  } catch {
    return new Error("[non-Error value thrown]", { cause: err2 });
  }
}
var require3, BadReadPackageHookError, PnpmFileFailError;
var init_requirePnpmfile = __esm({
  "../hooks/pnpmfile/lib/requirePnpmfile.js"() {
    "use strict";
    init_lib2();
    init_lib3();
    init_source();
    require3 = createRequire7(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, opts3) {
  const pnpmfiles = [];
  if (opts3.globalPnpmfile) {
    pnpmfiles.push({
      path: opts3.globalPnpmfile,
      includeInChecksum: false
    });
  }
  const entries = [];
  const loadedFiles = [];
  if (opts3.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 (opts3.pnpmfiles) {
    for (const pnpmfile of opts3.pnpmfiles) {
      pnpmfiles.push({
        path: pnpmfile,
        includeInChecksum: true
      });
    }
  }
  await Promise.all(pnpmfiles.map(async ({ path: path240, includeInChecksum, optional }) => {
    const file = pathAbsolute(path240, 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, finder] 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] = finder;
        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((config2) => {
        const updated = updateConfig(config2);
        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_lib34();
    init_lib2();
    init_path_absolute();
    init_requirePnpmfile();
  }
});

// ../hooks/pnpmfile/lib/index.js
var init_lib135 = __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 toWorkspaceSpecs(selectors, opts3) {
  if (selectors.length > 0) {
    return createWorkspaceSpecs(selectors, opts3.workspacePackages, { skipPackagesOutsideWorkspace: !opts3.userNamedDeps });
  }
  if (opts3.userNamedDeps)
    return [];
  return updateToWorkspacePackagesFromManifest(opts3.manifest, opts3.include, opts3.workspacePackages);
}
function createWorkspaceSpecs(specs, workspacePackages, opts3) {
  const workspaceSpecs = [];
  for (const spec of specs) {
    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)) {
      if (opts3?.skipPackagesOutsideWorkspace)
        continue;
      throw new PnpmError("WORKSPACE_PACKAGE_NOT_FOUND", `"${parsed.alias}" not found in the workspace`);
    }
    if (!parsed.bareSpecifier) {
      workspaceSpecs.push(`${parsed.alias}@workspace:*`);
    } else if (parsed.bareSpecifier.startsWith("workspace:")) {
      workspaceSpecs.push(spec);
    } else {
      workspaceSpecs.push(`${parsed.alias}@workspace:${parsed.bareSpecifier}`);
    }
  }
  return workspaceSpecs;
}
var init_updateWorkspaceDependencies = __esm({
  "../installing/commands/lib/updateWorkspaceDependencies.js"() {
    "use strict";
    init_lib2();
    init_lib98();
  }
});

// ../installing/commands/lib/recursive.js
import { promises as fs89 } from "node:fs";
import path156 from "node:path";
async function recursive(allProjects, params, opts3, cmdFullName) {
  if (allProjects.length === 0) {
    return { passed: false };
  }
  const pkgs = Object.values(opts3.selectedProjectsGraph).map((wsPkg) => wsPkg.package);
  if (pkgs.length === 0) {
    return { passed: false };
  }
  const manifestsByPath = getManifestsByPath(allProjects);
  const throwOnFail = throwOnCommandFail.bind(null, `pnpm recursive ${cmdFullName}`);
  const store = opts3.storeControllerAndDir ?? await createStoreController(opts3);
  const workspacePackages = arrayOfWorkspacePackagesToMap(allProjects);
  const targetDependenciesField = getSaveType(opts3);
  const policyHandlers = setupPolicyHandlers(opts3);
  const installOpts = Object.assign(opts3, {
    allProjects: getAllProjects(manifestsByPath, opts3.allProjectsGraph, opts3.sort),
    linkWorkspacePackagesDepth: opts3.linkWorkspacePackages === "deep" ? Infinity : opts3.linkWorkspacePackages ? 0 : -1,
    ownLifecycleHooksStdio: "pipe",
    peer: opts3.savePeer,
    pruneLockfileImporters: opts3.pruneLockfileImporters ?? ((opts3.ignoredPackages == null || opts3.ignoredPackages.size === 0) && pkgs.length === allProjects.length),
    saveCatalogName: opts3.saveCatalogName,
    skipRuntimes: opts3.runtime === false,
    storeController: store.ctrl,
    storeDir: store.dir,
    targetDependenciesField,
    resolutionVerifiers: store.resolutionVerifiers,
    workspacePackages,
    handleResolutionPolicyViolations: policyHandlers?.handleResolutionPolicyViolations
  });
  const result2 = {};
  const projectConfigRecord = createProjectConfigRecord(opts3);
  const getProjectConfig = projectConfigRecord ? (manifest) => manifest.name ? projectConfigRecord[manifest.name] : void 0 : () => void 0;
  const updateToLatest = opts3.update && opts3.latest;
  const includeDirect = opts3.includeDirect ?? {
    dependencies: true,
    devDependencies: true,
    optionalDependencies: true
  };
  let updateMatch;
  const userNamedDeps = params.length > 0;
  if (cmdFullName === "update") {
    if (params.length === 0) {
      const ignoreDeps = opts3.updateConfig?.ignoreDependencies;
      if (ignoreDeps?.length) {
        params = makeIgnorePatterns(ignoreDeps);
      }
    }
    updateMatch = params.length ? createMatcher2(params) : null;
  } else {
    updateMatch = null;
  }
  if (opts3.lockfileDir && ["add", "install", "remove", "update", "import"].includes(cmdFullName)) {
    let importers = getImporters(opts3);
    const calculatedRepositoryRoot = await fs89.realpath(calculateRepositoryRoot(opts3.workspaceDir, importers.map((x3) => x3.rootDir)));
    const isFromWorkspace = isSubdir.bind(null, calculatedRepositoryRoot);
    importers = await pFilter(importers, async ({ rootDirRealPath }) => isFromWorkspace(rootDirRealPath));
    if (importers.length === 0)
      return { passed: 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 ?? opts3.modulesDir;
      let currentInput = [...params];
      if (updateMatch != null) {
        currentInput = matchDependencies(updateMatch, manifest, includeDirect);
        if (currentInput.length === 0 && (typeof opts3.depth === "undefined" || opts3.depth <= 0)) {
          installOpts.pruneLockfileImporters = false;
          return;
        }
      }
      if (updateToLatest && (!params || params.length === 0)) {
        currentInput = Object.keys(filterDependenciesByType(manifest, includeDirect));
      }
      if (opts3.workspace) {
        currentInput = toWorkspaceSpecs(currentInput, {
          manifest,
          include: includeDirect,
          workspacePackages,
          userNamedDeps
        });
      }
      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: opts3.savePeer,
            pinnedVersion: getPinnedVersion({
              saveExact: typeof localConfig.saveExact === "boolean" ? localConfig.saveExact : opts3.saveExact,
              savePrefix: typeof localConfig.savePrefix === "string" ? localConfig.savePrefix : opts3.savePrefix
            }),
            rootDir,
            targetDependenciesField,
            update: opts3.update,
            updateMatching: opts3.updateMatching,
            updatePackageManifest: opts3.updatePackageManifest,
            updateToLatest: opts3.latest
          });
          return;
        case "install":
          mutatedImporters.push({
            modulesDir,
            mutation,
            pruneDirectDependencies: opts3.pruneDirectDependencies,
            rootDir,
            update: opts3.update,
            updateMatching: opts3.updateMatching,
            updatePackageManifest: opts3.updatePackageManifest,
            updateToLatest: opts3.latest
          });
      }
    }));
    if (!opts3.selectedProjectsGraph[opts3.workspaceDir] && manifestsByPath[opts3.workspaceDir] != null) {
      mutatedImporters.push({
        mutation: "install",
        rootDir: opts3.workspaceDir
      });
    }
    if (mutatedImporters.length === 0 && cmdFullName === "update" && opts3.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, dryRunResult } = await mutateModules(mutatedImporters, {
      ...installOpts,
      storeController: store.ctrl,
      resolutionVerifiers: store.resolutionVerifiers
    });
    if (opts3.save !== false && !opts3.dryRun) {
      const policyUpdates = policyHandlers?.pickManifestUpdates(resolutionPolicyViolations);
      const promises = mutatedPkgs.map(async ({ originalManifest, manifest, rootDir }) => {
        return manifestsByPath[rootDir].writeProjectManifest(originalManifest ?? manifest);
      });
      promises.push(updateWorkspaceManifest(opts3.workspaceDir, {
        updatedCatalogs: updatedCatalogs2,
        cleanupUnusedCatalogs: opts3.cleanupUnusedCatalogs,
        allProjects,
        ...policyUpdates
      }));
      await Promise.all(promises);
    }
    await handleIgnoredBuilds(opts3, ignoredBuilds);
    return { passed: true, updatedCatalogs: updatedCatalogs2, dryRunResult };
  }
  const pkgPaths = Object.keys(opts3.selectedProjectsGraph).sort();
  let updatedCatalogs;
  const allIgnoredBuilds = /* @__PURE__ */ new Set();
  const allResolutionPolicyViolations = [];
  const limitInstallation = pLimit(getWorkspaceConcurrency(opts3.workspaceConcurrency));
  await Promise.all(pkgPaths.map(async (rootDir) => limitInstallation(async () => {
    const hooks = opts3.ignorePnpmfile ? {} : await (async () => {
      const { hooks: pnpmfileHooks } = await requireHooks(rootDir, opts3);
      return {
        ...opts3.hooks,
        ...pnpmfileHooks,
        afterAllResolved: [...pnpmfileHooks.afterAllResolved ?? [], ...opts3.hooks?.afterAllResolved ?? []],
        readPackage: [...pnpmfileHooks.readPackage ?? [], ...opts3.hooks?.readPackage ?? []]
      };
    })();
    try {
      if (opts3.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 (opts3.workspace) {
        currentInput = toWorkspaceSpecs(currentInput, {
          manifest,
          include: includeDirect,
          workspacePackages,
          userNamedDeps
        });
      }
      let action;
      switch (cmdFullName) {
        case "remove":
          action = async (manifest2, opts4) => {
            const mutationResult = await mutateModules([
              {
                dependencyNames: currentInput,
                mutation: "uninstallSome",
                rootDir
              }
            ], opts4);
            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, opts4) => addDependenciesToPackage(manifest2, currentInput, opts4);
          break;
      }
      const localConfig = getProjectConfig(manifest) ?? {};
      const { updatedCatalogs: newCatalogsAddition, updatedManifest: newManifest, ignoredBuilds, resolutionPolicyViolations } = await action(manifest, {
        ...installOpts,
        ...localConfig,
        ...opts3.allProjectsGraph[rootDir]?.package,
        bin: path156.join(rootDir, "node_modules", ".bin"),
        dir: rootDir,
        hooks,
        ignoreScripts: true,
        pinnedVersion: getPinnedVersion({
          saveExact: typeof localConfig.saveExact === "boolean" ? localConfig.saveExact : opts3.saveExact,
          savePrefix: typeof localConfig.savePrefix === "string" ? localConfig.savePrefix : opts3.savePrefix
        }),
        configByUri: installOpts.configByUri,
        storeController: store.ctrl,
        resolutionVerifiers: store.resolutionVerifiers
      });
      if (opts3.save !== false) {
        await writeProjectManifest2(newManifest);
        if (newCatalogsAddition) {
          updatedCatalogs = mergeCatalogs(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 (err2) {
      logger.info(err2);
      if (!opts3.bail) {
        result2[rootDir] = {
          status: "failure",
          error: err2,
          message: err2.message,
          prefix: rootDir
        };
        return;
      }
      err2["prefix"] = rootDir;
      throw err2;
    }
  })));
  await handleIgnoredBuilds(opts3, allIgnoredBuilds.size ? allIgnoredBuilds : void 0);
  if (opts3.save !== false) {
    await updateWorkspaceManifest(opts3.workspaceDir, {
      updatedCatalogs,
      cleanupUnusedCatalogs: opts3.cleanupUnusedCatalogs,
      allProjects,
      ...policyHandlers?.pickManifestUpdates(allResolutionPolicyViolations)
    });
  }
  if (!opts3.lockfileOnly && !opts3.ignoreScripts && (cmdFullName === "add" || cmdFullName === "install" || cmdFullName === "update")) {
    await opts3.rebuildHandler?.({
      ...opts3,
      pending: opts3.pending === true,
      skipIfHasSideEffectsCache: true
    }, []);
  }
  throwOnFail(result2);
  if (!Object.values(result2).filter(({ status }) => status === "passed").length && cmdFullName === "update" && opts3.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 { passed: true, updatedCatalogs };
}
function calculateRepositoryRoot(workspaceDir, projectDirs) {
  let relativeRepoRoot = ".";
  for (const rootDir of projectDirs) {
    const relativePartRegExp = new RegExp(`^(\\.\\.\\${path156.sep})+`);
    const relativePartMatch = relativePartRegExp.exec(path156.relative(workspaceDir, rootDir));
    if (relativePartMatch != null) {
      const relativePart = relativePartMatch[0];
      if (relativePart.length > relativeRepoRoot.length) {
        relativeRepoRoot = relativePart;
      }
    }
  }
  return path156.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 index2 = matcher(depName);
    if (index2 === -1)
      return null;
    return specs[index2];
  };
}
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(opts3) {
  let rootDirs = Object.keys(opts3.selectedProjectsGraph);
  if (opts3.ignoredPackages != null) {
    rootDirs = rootDirs.filter((rootDir) => !opts3.ignoredPackages.has(rootDir));
  }
  return rootDirs.map((rootDir) => ({ rootDir, rootDirRealPath: opts3.selectedProjectsGraph[rootDir].package.rootDirRealPath }));
}
var init_recursive2 = __esm({
  "../installing/commands/lib/recursive.js"() {
    "use strict";
    init_lib60();
    init_lib41();
    init_lib27();
    init_lib64();
    init_lib2();
    init_lib135();
    init_lib89();
    init_lib126();
    init_lib3();
    init_lib11();
    init_lib92();
    init_lib95();
    init_lib101();
    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 spawn5 } from "node:child_process";
import fs90 from "node:fs";
import { createRequire as createRequire8 } from "node:module";
import path157 from "node:path";
import readline4 from "node:readline";
function makeRunPacquet(opts3) {
  return {
    supportsResolution: pacquetSupportsResolution(resolvePacquetVersion(opts3.lockfileDir, opts3.packageName)),
    run: makeRun(opts3)
  };
}
function makeRun(opts3) {
  return async (callOpts) => {
    const pacquetBin = resolvePacquetBin(opts3.lockfileDir, opts3.packageName);
    const forwardedFlags = opts3.isInstallCommand ? collectForwardedFlags(opts3.argv) : [];
    const frozenArgs = callOpts?.resolve === true ? [] : ["--frozen-lockfile", "--ignore-manifest-check"];
    const args = ["--reporter=ndjson", "install", ...frozenArgs, ...forwardedFlags];
    const droppedFlags = opts3.isInstallCommand ? [] : collectDroppedFlags(opts3.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: opts3.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: opts3.lockfileDir });
    const child = spawn5(pacquetBin, args, {
      cwd: opts3.lockfileDir,
      env: makePacquetEnv(opts3, callOpts),
      stdio: ["ignore", "inherit", "pipe"]
    });
    const filterResolved = callOpts?.filterResolvedProgress === true;
    const rl = readline4.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((resolve4, reject3) => {
      child.once("error", reject3);
      child.once("close", (code) => {
        rl.close();
        if (code === 0) {
          resolve4();
          return;
        }
        reject3(new PnpmError("PACQUET_INSTALL_FAILED", `pacquet exited with code ${code ?? "null"}`));
      });
    });
  };
}
function makePacquetEnv(opts3, callOpts) {
  const env4 = { ...process.env };
  for (const key of Object.keys(env4)) {
    if (key.toLowerCase() === "pnpm_config_virtual_store_dir_max_length") {
      delete env4[key];
    }
    if (key.toLowerCase() === DEV_PREINSTALL_ALREADY_RAN_ENV.toLowerCase()) {
      delete env4[key];
    }
  }
  env4.PNPM_CONFIG_VIRTUAL_STORE_DIR_MAX_LENGTH = String(opts3.virtualStoreDirMaxLength);
  if (callOpts?.resolve === true) {
    env4[DEV_PREINSTALL_ALREADY_RAN_ENV] = "true";
  }
  return env4;
}
function resolvePacquetBin(lockfileDir, packageName) {
  const ext = process.platform === "win32" ? ".exe" : "";
  const pacquetPkg = fs90.realpathSync(path157.join(lockfileDir, "node_modules/.pnpm-config", packageName, "package.json"));
  return createRequire8(pacquetPkg).resolve(`${pacquetPlatformPkgName()}/pacquet${ext}`);
}
function pacquetPlatformPkgName() {
  const libc = process.platform === "linux" && (0, import_detect_libc4.familySync)() === import_detect_libc4.MUSL ? "-musl" : "";
  return `@pacquet/${process.platform}-${process.arch}${libc}`;
}
function resolvePacquetVersion(lockfileDir, packageName) {
  try {
    const pacquetPkg = fs90.realpathSync(path157.join(lockfileDir, "node_modules/.pnpm-config", packageName, "package.json"));
    const { version: version2 } = JSON.parse(fs90.readFileSync(pacquetPkg, "utf8"));
    return version2;
  } catch {
    return void 0;
  }
}
function pacquetSupportsResolution(version2) {
  if (version2 == null)
    return false;
  const [major, minor, patch] = version2.split(".", 3).map((part) => parseInt(part, 10));
  if (Number.isNaN(major) || Number.isNaN(minor) || Number.isNaN(patch))
    return false;
  return major > 0 || major === 0 && (minor > 11 || minor === 11 && patch >= 7);
}
function collectForwardedFlags(argv2) {
  const result2 = [];
  let positionalIdx = 0;
  for (let i4 = 0; i4 < argv2.original.length; i4++) {
    const arg = argv2.original[i4];
    if (positionalIdx < argv2.remain.length && arg === argv2.remain[positionalIdx]) {
      positionalIdx++;
      continue;
    }
    if (isAlwaysInjected(arg))
      continue;
    if (arg.startsWith("--reporter="))
      continue;
    if (arg === "--reporter") {
      i4++;
      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 i4 = 0; i4 < argv2.original.length; i4++) {
    const arg = argv2.original[i4];
    if (!arg.startsWith("-"))
      continue;
    if (isAlwaysInjected(arg))
      continue;
    if (arg.startsWith("--config."))
      continue;
    if (arg.startsWith("--reporter="))
      continue;
    if (arg === "--reporter") {
      i4++;
      continue;
    }
    result2.push(arg);
  }
  return result2;
}
var import_detect_libc4, streamParserWritable, DEV_PREINSTALL_ALREADY_RAN_ENV, ALWAYS_INJECTED_FLAGS;
var init_runPacquet = __esm({
  "../installing/commands/lib/runPacquet.js"() {
    "use strict";
    init_lib2();
    init_lib3();
    init_source();
    import_detect_libc4 = __toESM(require_detect_libc(), 1);
    streamParserWritable = streamParser;
    DEV_PREINSTALL_ALREADY_RAN_ENV = "PNPM_INTERNAL_DEV_PREINSTALL_ALREADY_RAN";
    ALWAYS_INJECTED_FLAGS = ["frozen-lockfile", "ignore-manifest-check"];
  }
});

// ../deps/security/signatures/lib/npmSigningKeys.js
var NPM_SIGNING_KEYS;
var init_npmSigningKeys = __esm({
  "../deps/security/signatures/lib/npmSigningKeys.js"() {
    "use strict";
    NPM_SIGNING_KEYS = [
      {
        "expires": null,
        "keyid": "SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U",
        "keytype": "ecdsa-sha2-nistp256",
        "scheme": "ecdsa-sha2-nistp256",
        "key": "MFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEY6Ya7W++7aUPzvMTrezH6Ycx3c+HOKYCcNGybJZSCJq/fd7Qa8uuAKtdIkUQtQiEKERhAmE5lMMJhP8OkDOa2g=="
      },
      {
        "expires": "2025-01-29T00:00:00.000Z",
        "keyid": "SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA",
        "keytype": "ecdsa-sha2-nistp256",
        "scheme": "ecdsa-sha2-nistp256",
        "key": "MFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAE1Olb3zMAFFxXKHiIkQO5cJ3Yhl5i6UPp+IhuteBJbuHcA5UogKo0EWtlWwW6KSaKoTNEYL7JlCQiVnkhBktUgg=="
      }
    ];
  }
});

// ../deps/security/signatures/lib/verifySignatures.js
import crypto10 from "node:crypto";
import url5 from "node:url";
import util46 from "node:util";
async function verifySignatures(packages, getAuthHeader, opts3) {
  const registries = new Set(packages.map(({ registry }) => registry));
  const keysByRegistry = await getKeysByRegistry(registries, getAuthHeader, opts3);
  const result2 = {
    audited: 0,
    invalid: [],
    missing: [],
    verified: 0
  };
  const packumentCache = /* @__PURE__ */ new Map();
  const limit = pLimit(opts3.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, opts3, packumentCache);
      if (!packument)
        return;
      result2.audited++;
      version2 = packument.versions?.[pkg.version];
      publishedAt = packument.time?.[pkg.version];
    } catch (err2) {
      result2.invalid.push({ ...pkg, reason: util46.types.isNativeError(err2) ? err2.message : String(err2) });
      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, opts3) {
  const keysByRegistry = /* @__PURE__ */ new Map();
  await Promise.all(Array.from(registries, async (registry) => {
    const keys4 = await fetchRegistryKeys(registry, getAuthHeader, opts3);
    keysByRegistry.set(registry, keys4);
  }));
  return keysByRegistry;
}
async function fetchRegistryKeys(registry, getAuthHeader, opts3) {
  const registryUrl = registry.endsWith("/") ? registry : `${registry}/`;
  const keysUrl = new url5.URL("-/npm/v1/keys", registryUrl).toString();
  const fetchFromRegistry = createFetchFromRegistry(opts3);
  const response = await fetchFromRegistry(keysUrl, {
    authHeaderValue: getAuthHeader(registryUrl),
    method: "GET",
    retry: opts3.retry,
    timeout: opts3.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, opts3, packumentCache) {
  const cacheKey = `${pkg.registry}:${pkg.name}`;
  let packument = packumentCache.get(cacheKey);
  if (!packument) {
    packument = fetchPackument(pkg, getAuthHeader, opts3);
    packumentCache.set(cacheKey, packument);
  }
  return packument;
}
async function fetchPackument(pkg, getAuthHeader, opts3) {
  const registryUrl = pkg.registry.endsWith("/") ? pkg.registry : `${pkg.registry}/`;
  const packumentUrl = toUri2(pkg.name, registryUrl);
  const fetchFromRegistry = createFetchFromRegistry(opts3);
  const response = await fetchFromRegistry(packumentUrl, {
    authHeaderValue: getAuthHeader(registryUrl),
    fullMetadata: true,
    method: "GET",
    retry: opts3.retry,
    timeout: opts3.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;
  const failures = [];
  for (const signature of pkg.signatures) {
    const key = keys4.find(({ keyid }) => keyid === signature.keyid);
    if (!key) {
      failures.push(`${pkg.name}@${pkg.version} has a registry signature with keyid ${signature.keyid} but no corresponding public key can be found`);
      continue;
    }
    if (key.expires && publishedTime != null && publishedTime >= Date.parse(key.expires)) {
      failures.push(`${pkg.name}@${pkg.version} has a registry signature with keyid ${signature.keyid} but the corresponding public key has expired ${key.expires}`);
      continue;
    }
    const pem = `-----BEGIN PUBLIC KEY-----
${key.key}
-----END PUBLIC KEY-----`;
    let verified2;
    try {
      const verifier = crypto10.createVerify("SHA256");
      verifier.write(message);
      verifier.end();
      verified2 = verifier.verify(pem, signature.sig, "base64");
    } catch {
      verified2 = false;
    }
    if (verified2)
      return void 0;
    failures.push(`${pkg.name}@${pkg.version} has an invalid registry signature with keyid ${signature.keyid}`);
  }
  return toSignatureIssue(pkg, pickMostTellingFailure(pkg, failures));
}
function pickMostTellingFailure(pkg, failures) {
  if (failures.length === 0) {
    return `${pkg.name}@${pkg.version} has no registry signature from a trusted key`;
  }
  return failures.find((reason) => reason.includes("invalid registry signature")) ?? failures[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 (err2) {
    const reason = util46.types.isNativeError(err2) ? err2.message : String(err2);
    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}`);
}
function getNpmSigningKeys() {
  return NPM_SIGNING_KEYS.map((k2) => ({ ...k2 }));
}
async function verifyInstalledPackageSignatures(packages, trustedKeys, getAuthHeader, opts3) {
  const packumentCache = /* @__PURE__ */ new Map();
  const limit = pLimit(opts3.networkConcurrency ?? 16);
  const failures = [];
  await Promise.all(packages.map((pkg) => limit(async () => {
    const failure = await findSignatureFailure(pkg, trustedKeys, getAuthHeader, opts3, packumentCache);
    if (failure != null) {
      failures.push({ name: pkg.name, version: pkg.version, ...failure });
    }
  })));
  failures.sort((a2, b) => `${a2.name}@${a2.version}`.localeCompare(`${b.name}@${b.version}`));
  return { verified: failures.length === 0, failures };
}
async function findSignatureFailure(pkg, trustedKeys, getAuthHeader, opts3, packumentCache) {
  let packument;
  try {
    packument = await getPackument(pkg, getAuthHeader, opts3, packumentCache);
  } catch (err2) {
    return { reason: util46.types.isNativeError(err2) ? err2.message : String(err2), category: "unreachable" };
  }
  if (!packument)
    return { reason: `${pkg.name} is not published on ${pkg.registry}`, category: "absent" };
  const version2 = packument.versions?.[pkg.version];
  if (!version2)
    return { reason: `${pkg.name}@${pkg.version} was not found on ${pkg.registry}`, category: "absent" };
  const rawSignatures = version2.dist?.signatures;
  if (rawSignatures != null && !Array.isArray(rawSignatures)) {
    return { reason: `malformed registry signatures metadata for ${pkg.name}@${pkg.version}`, category: "absent" };
  }
  const signatures = rawSignatures ?? [];
  if (!signatures.every(isPackageSignature)) {
    return { reason: `malformed registry signatures metadata for ${pkg.name}@${pkg.version}`, category: "absent" };
  }
  if (signatures.length === 0) {
    return { reason: `${pkg.name}@${pkg.version} has no registry signature`, category: "absent" };
  }
  const issue = verifyPackageSignatures({ ...pkg, integrity: pkg.integrity, publishedAt: packument.time?.[pkg.version], signatures }, trustedKeys);
  return issue == null ? void 0 : { reason: issue.reason ?? "invalid registry signature", category: "invalid" };
}
var init_verifySignatures = __esm({
  "../deps/security/signatures/lib/verifySignatures.js"() {
    "use strict";
    init_lib2();
    init_lib23();
    init_p_limit();
    init_npmSigningKeys();
  }
});

// ../deps/security/signatures/lib/index.js
var init_lib136 = __esm({
  "../deps/security/signatures/lib/index.js"() {
    "use strict";
    init_verifySignatures();
  }
});

// ../installing/commands/lib/verifyPacquetIdentity.js
async function verifyPacquetIdentity(packageName, opts3) {
  const trustedKeys = getNpmSigningKeys();
  const toVerify = await collectPacquetPackagesToVerify(packageName, opts3.rootDir, opts3.registries);
  if (toVerify == null) {
    return skip(opts3.lockfileDir);
  }
  const getAuthHeader = createGetAuthHeaderByURI(opts3.configByUri ?? {});
  let result2;
  try {
    result2 = await verifyInstalledPackageSignatures(toVerify, trustedKeys, getAuthHeader, opts3);
  } catch (err2) {
    throw new PnpmError("PACQUET_IDENTITY_UNVERIFIABLE", `Refusing to use pacquet as the install engine: its npm registry signature could not be verified (${String(err2)}).`, { hint: "The registry must be reachable to verify the pacquet release declared in configDependencies. Remove pacquet from configDependencies to use pnpm's own install engine." });
  }
  if (!result2.verified) {
    const detail = result2.failures.map(({ name, version: version2, reason }) => `${name}@${version2}: ${reason}`).join("; ");
    throw new PnpmError("PACQUET_IDENTITY_MISMATCH", `Refusing to use pacquet as the install engine: the bytes installed for "${packageName}" do not match a published, signed release (${detail}).`, { hint: "This can indicate a tampered lockfile or a malicious registry. Remove pacquet from configDependencies if this is unexpected." });
  }
  return true;
}
async function collectPacquetPackagesToVerify(packageName, rootDir, registries) {
  const envLockfile = await readEnvLockfile(rootDir);
  if (envLockfile == null)
    return void 0;
  const shim = envLockfile.importers["."]?.configDependencies?.[packageName];
  if (shim == null)
    return void 0;
  const shimKey = `${packageName}@${shim.version}`;
  const shimIntegrity = registryIntegrity(envLockfile.packages[shimKey]?.resolution);
  if (shimIntegrity == null)
    return void 0;
  const platformPkgName = pacquetPlatformPkgName();
  const platformVersion = envLockfile.snapshots[shimKey]?.optionalDependencies?.[platformPkgName];
  if (platformVersion == null)
    return void 0;
  const platformKey = `${platformPkgName}@${platformVersion}`;
  const platformIntegrity = registryIntegrity(envLockfile.packages[platformKey]?.resolution);
  if (platformIntegrity == null)
    return void 0;
  return [
    { name: packageName, version: shim.version, registry: pickRegistryForPackage(registries, packageName), integrity: shimIntegrity },
    { name: platformPkgName, version: platformVersion, registry: pickRegistryForPackage(registries, platformPkgName), integrity: platformIntegrity }
  ];
}
function registryIntegrity(resolution) {
  const integrity = resolution?.integrity;
  return typeof integrity === "string" && integrity ? integrity : void 0;
}
function skip(prefix) {
  logger.warn({
    message: "Not using pacquet as the install engine: no pacquet binary is installed for this platform. Using pnpm's own install engine.",
    prefix
  });
  return false;
}
var init_verifyPacquetIdentity = __esm({
  "../installing/commands/lib/verifyPacquetIdentity.js"() {
    "use strict";
    init_lib28();
    init_lib136();
    init_lib2();
    init_lib80();
    init_lib3();
    init_lib52();
    init_runPacquet();
  }
});

// ../installing/commands/lib/installDeps.js
import path158 from "node:path";
async function installDeps(opts3, params) {
  if (!opts3.update && !opts3.dedupe && params.length === 0 && opts3.optimisticRepeatInstall) {
    const { upToDate, wantedLockfileToRestore } = await checkDepsStatus({
      ...opts3,
      ignoreFilteredInstallCache: true,
      treatLocalFileDepsAsOutdated: true
    });
    if (upToDate && await restoreWantedLockfileIfMissing(wantedLockfileToRestore, opts3)) {
      if (opts3.hooks?.customResolvers?.some((r) => r.shouldRefreshResolution)) {
        logger.warn({
          message: "shouldRefreshResolution hooks were skipped because optimisticRepeatInstall is enabled.",
          prefix: opts3.dir
        });
      }
      globalInfo("Already up to date");
      return;
    }
  }
  if (opts3.workspace) {
    if (opts3.latest) {
      throw new PnpmError("BAD_OPTIONS", "Cannot use --latest with --workspace simultaneously");
    }
    if (!opts3.workspaceDir) {
      throw new PnpmError("WORKSPACE_OPTION_OUTSIDE_WORKSPACE", "--workspace can only be used inside a workspace");
    }
    if (!opts3.linkWorkspacePackages && !opts3.saveWorkspaceProtocol) {
      opts3.saveWorkspaceProtocol = true;
    }
    opts3["preserveWorkspaceProtocol"] = !opts3.linkWorkspacePackages;
  }
  const store = await createStoreController(opts3);
  const declaredPacquetConfigDepName = opts3.configDependencies?.["@pnpm/pacquet"] != null ? "@pnpm/pacquet" : opts3.configDependencies?.pacquet != null ? "pacquet" : void 0;
  const pacquetConfigDepName = declaredPacquetConfigDepName != null && await verifyPacquetIdentity(declaredPacquetConfigDepName, {
    ...opts3,
    lockfileDir: opts3.lockfileDir ?? opts3.dir,
    rootDir: opts3.lockfileDir ?? opts3.dir
  }) ? declaredPacquetConfigDepName : void 0;
  const runPacquet = pacquetConfigDepName != null ? makeRunPacquet({
    lockfileDir: opts3.lockfileDir ?? opts3.dir,
    packageName: pacquetConfigDepName,
    argv: { original: opts3.argv.original, remain: opts3.argv.remain ?? [] },
    isInstallCommand: opts3.isInstallCommand === true,
    virtualStoreDirMaxLength: opts3.virtualStoreDirMaxLength
  }) : void 0;
  const includeDirect = opts3.includeDirect ?? {
    dependencies: true,
    devDependencies: true,
    optionalDependencies: true
  };
  const allProjects = opts3.allProjects ?? (opts3.workspaceDir ? await findWorkspaceProjects(opts3.workspaceDir, { ...opts3, patterns: opts3.workspacePackagePatterns }) : []);
  if (opts3.runtimeOnFail) {
    for (const project of allProjects) {
      applyRuntimeOnFailOverride(project.manifest, opts3.runtimeOnFail);
    }
  }
  if (opts3.workspaceDir) {
    const selectedProjectsGraph = opts3.selectedProjectsGraph ?? selectProjectByDir(allProjects, opts3.dir);
    if (selectedProjectsGraph != null) {
      const sequencedGraph = sequenceGraph(selectedProjectsGraph);
      if (!opts3.ignoreWorkspaceCycles && !sequencedGraph.safe) {
        const cyclicDependenciesInfo = sequencedGraph.cycles.length > 0 ? `: ${sequencedGraph.cycles.map((deps) => deps.join(", ")).join("; ")}` : "";
        if (opts3.disallowWorkspaceCycles) {
          throw new PnpmError("DISALLOW_WORKSPACE_CYCLES", `There are cyclic workspace dependencies${cyclicDependenciesInfo}`);
        }
        logger.warn({
          message: `There are cyclic workspace dependencies${cyclicDependenciesInfo}`,
          prefix: opts3.workspaceDir
        });
      }
      const allProjectsGraph = opts3.allProjectsGraph ?? createProjectsGraph(allProjects, {
        linkWorkspacePackages: Boolean(opts3.linkWorkspacePackages)
      }).graph;
      return recursiveInstallThenUpdateWorkspaceState(allProjects, params, {
        ...opts3,
        preferredVersions: opts3.packageVulnerabilityAudit ? preferNonvulnerablePackageVersions(opts3.packageVulnerabilityAudit) : void 0,
        allProjectsGraph,
        selectedProjectsGraph,
        storeControllerAndDir: store,
        workspaceDir: opts3.workspaceDir,
        runPacquet
      }, opts3.update ? "update" : params.length === 0 ? "install" : "add");
    }
  }
  params = params.filter(Boolean);
  const dir = opts3.dir || process.cwd();
  let workspacePackages;
  if (opts3.workspaceDir) {
    workspacePackages = arrayOfWorkspacePackagesToMap(allProjects);
  }
  let { manifest, writeProjectManifest: writeProjectManifest2 } = await tryReadProjectManifest2(opts3.dir, opts3);
  if (manifest === null) {
    if (opts3.update === true || params.length === 0) {
      throw new PnpmError("NO_PKG_MANIFEST", `No package.json found in ${opts3.dir}`);
    }
    manifest = {};
  } else if (opts3.runtimeOnFail) {
    applyRuntimeOnFailOverride(manifest, opts3.runtimeOnFail);
  }
  const policyHandlers = setupPolicyHandlers(opts3);
  const installOpts = {
    ...opts3,
    // In case installation is done in a multi-package repository
    // The dependencies should be built first,
    // so ignoring scripts for now
    ignoreScripts: !!workspacePackages || opts3.ignoreScripts,
    linkWorkspacePackagesDepth: opts3.linkWorkspacePackages === "deep" ? Infinity : opts3.linkWorkspacePackages ? 0 : -1,
    sideEffectsCacheRead: opts3.sideEffectsCache ?? opts3.sideEffectsCacheReadonly,
    sideEffectsCacheWrite: opts3.sideEffectsCache,
    skipRuntimes: opts3.runtime === false,
    storeController: store.ctrl,
    storeDir: store.dir,
    resolutionVerifiers: store.resolutionVerifiers,
    workspacePackages,
    preferredVersions: opts3.packageVulnerabilityAudit ? preferNonvulnerablePackageVersions(opts3.packageVulnerabilityAudit) : void 0,
    handleResolutionPolicyViolations: policyHandlers?.handleResolutionPolicyViolations,
    runPacquet
  };
  let updateMatch;
  let updatePackageManifest = opts3.updatePackageManifest;
  let updateMatching;
  const userNamedDeps = params.length > 0;
  if (opts3.update) {
    if (params.length === 0) {
      const ignoreDeps = opts3.updateConfig?.ignoreDependencies;
      if (ignoreDeps?.length) {
        params = makeIgnorePatterns(ignoreDeps);
      }
    }
    updateMatch = params.length ? createMatcher2(params) : null;
  } else {
    updateMatch = null;
  }
  if (opts3.packageVulnerabilityAudit != null) {
    updateMatch = null;
    updateMatching = createVulnerabilityUpdateMatching(opts3.packageVulnerabilityAudit);
  }
  if (updateMatch != null) {
    const updateSpecs = params;
    params = matchDependencies(updateMatch, manifest, includeDirect);
    if (params.length === 0) {
      if (opts3.latest)
        return;
      if (opts3.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;
      warnAboutIgnoredVersionsOfIndirectUpdateSpecs(updateSpecs);
    }
  }
  if (opts3.update && opts3.latest && (!params || params.length === 0)) {
    params = Object.keys(filterDependenciesByType(manifest, includeDirect));
  }
  if (opts3.workspace) {
    params = toWorkspaceSpecs(params ?? [], {
      manifest,
      include: includeDirect,
      workspacePackages,
      userNamedDeps
    });
  }
  if (params?.length) {
    const mutatedProject = {
      allowNew: opts3.allowNew,
      binsDir: opts3.bin,
      dependencySelectors: params,
      manifest,
      mutation: "installSome",
      peer: opts3.savePeer,
      pinnedVersion: getPinnedVersion(opts3),
      rootDir: opts3.dir,
      targetDependenciesField: getSaveType(opts3)
    };
    const { updatedCatalogs: updatedCatalogs2, updatedProject, ignoredBuilds: ignoredBuilds2, resolutionPolicyViolations: resolutionPolicyViolations2, dryRunResult: dryRunResult2 } = await mutateModulesInSingleProject(mutatedProject, installOpts);
    if (opts3.save !== false && !opts3.dryRun) {
      const policyUpdates = policyHandlers?.pickManifestUpdates(resolutionPolicyViolations2);
      await Promise.all([
        writeProjectManifest2(updatedProject.manifest),
        updateWorkspaceManifest(opts3.workspaceDir ?? opts3.dir, {
          updatedCatalogs: updatedCatalogs2,
          cleanupUnusedCatalogs: opts3.cleanupUnusedCatalogs,
          allProjects: opts3.allProjects,
          ...policyUpdates
        })
      ]);
    }
    if (!opts3.lockfileOnly) {
      await updateWorkspaceState({
        allProjects,
        settings: withUpdatedCatalogs(opts3, updatedCatalogs2),
        workspaceDir: opts3.workspaceDir ?? opts3.lockfileDir ?? opts3.dir,
        pnpmfiles: opts3.pnpmfile,
        filteredInstall: allProjects.length !== Object.keys(opts3.selectedProjectsGraph ?? {}).length,
        configDependencies: opts3.configDependencies
      });
    }
    await handleIgnoredBuilds(opts3, ignoredBuilds2);
    return dryRunResult2;
  }
  const { updatedCatalogs, updatedManifest, ignoredBuilds, resolutionPolicyViolations, dryRunResult } = await install(manifest, {
    ...installOpts,
    updatePackageManifest,
    updateMatching
  });
  if (opts3.save !== false && !opts3.dryRun) {
    const policyUpdates = policyHandlers?.pickManifestUpdates(resolutionPolicyViolations);
    if (opts3.update === true) {
      await Promise.all([
        writeProjectManifest2(updatedManifest),
        updateWorkspaceManifest(opts3.workspaceDir ?? opts3.dir, {
          updatedCatalogs,
          cleanupUnusedCatalogs: opts3.cleanupUnusedCatalogs,
          allProjects,
          ...policyUpdates
        })
      ]);
    } else if (policyUpdates != null) {
      await updateWorkspaceManifest(opts3.workspaceDir ?? opts3.dir, policyUpdates);
    }
  }
  await handleIgnoredBuilds(opts3, ignoredBuilds);
  if (opts3.linkWorkspacePackages && opts3.workspaceDir) {
    const { selectedProjectsGraph } = await filterProjectsBySelectorObjects(allProjects, [
      {
        excludeSelf: true,
        includeDependencies: true,
        parentDir: dir
      }
    ], {
      workspaceDir: opts3.workspaceDir
    });
    await recursiveInstallThenUpdateWorkspaceState(allProjects, [], {
      ...opts3,
      ...OVERWRITE_UPDATE_OPTIONS,
      allProjectsGraph: opts3.allProjectsGraph,
      selectedProjectsGraph,
      workspaceDir: opts3.workspaceDir,
      // Otherwise TypeScript doesn't understand that is not undefined
      runPacquet
    }, "install", updatedCatalogs);
    if (opts3.ignoreScripts)
      return;
    await buildProjects([
      {
        buildIndex: 0,
        manifest: await readProjectManifestOnly2(opts3.dir, opts3),
        rootDir: opts3.dir
      }
    ], {
      ...opts3,
      pending: true,
      storeController: store.ctrl,
      storeDir: store.dir,
      skipIfHasSideEffectsCache: true
    });
  } else {
    if (!opts3.lockfileOnly) {
      await updateWorkspaceState({
        allProjects,
        settings: withUpdatedCatalogs(opts3, updatedCatalogs),
        workspaceDir: opts3.workspaceDir ?? opts3.lockfileDir ?? opts3.dir,
        pnpmfiles: opts3.pnpmfile,
        filteredInstall: allProjects.length !== Object.keys(opts3.selectedProjectsGraph ?? {}).length,
        configDependencies: opts3.configDependencies
      });
    }
  }
  return dryRunResult;
}
function selectProjectByDir(projects, searchedDir) {
  const project = projects.find(({ rootDir }) => path158.relative(rootDir, searchedDir) === "");
  if (project == null)
    return void 0;
  return { [project.rootDir]: { dependencies: [], package: project } };
}
async function recursiveInstallThenUpdateWorkspaceState(allProjects, params, opts3, cmdFullName, updatedCatalogs) {
  const recursiveResult = await recursive(allProjects, params, opts3, cmdFullName);
  if (!opts3.lockfileOnly) {
    await updateWorkspaceState({
      allProjects,
      settings: withUpdatedCatalogs(opts3, updatedCatalogs, recursiveResult.updatedCatalogs),
      workspaceDir: opts3.workspaceDir,
      pnpmfiles: opts3.pnpmfile,
      filteredInstall: allProjects.length !== Object.keys(opts3.selectedProjectsGraph ?? {}).length,
      configDependencies: opts3.configDependencies
    });
  }
  return recursiveResult.dryRunResult;
}
function withUpdatedCatalogs(settings, ...updatedCatalogs) {
  if (updatedCatalogs.every((catalogs) => catalogs == null))
    return settings;
  return { ...settings, catalogs: mergeCatalogs(settings.catalogs, ...updatedCatalogs) };
}
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 warnAboutIgnoredVersionsOfIndirectUpdateSpecs(updateSpecs) {
  for (const spec of updateSpecs) {
    const { pattern, versionSpec } = parseUpdateParam(spec);
    if (versionSpec == null)
      continue;
    globalWarn(`"${pattern}" is not a direct dependency, so the requested version "${versionSpec}" is ignored \u2014 "${pattern}" is updated to what a fresh install would resolve. To force a version of a transitive dependency, add an override scoped to the range its dependents declare to pnpm-workspace.yaml, e.g.: overrides: { "${pattern}@<declared range>": "${versionSpec}" }`);
  }
}
function createVulnerabilityUpdateMatching(packageVulnerabilityAudit) {
  const vulnerablePackageNames = new Set(packageVulnerabilityAudit.getVulnerabilities().keys());
  return (pkgName, version2) => version2 != null ? packageVulnerabilityAudit.isVulnerable(pkgName, version2) : vulnerablePackageNames.has(pkgName);
}
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;
}
async function restoreWantedLockfileIfMissing(wantedLockfileToRestore, opts3) {
  if (wantedLockfileToRestore == null || opts3.useLockfile === false)
    return true;
  try {
    await writeWantedLockfile(wantedLockfileToRestore.lockfileDir, wantedLockfileToRestore.lockfile);
    return true;
  } catch (error) {
    logger.debug({ msg: "Failed to restore pnpm-lock.yaml from the current lockfile", error });
    return false;
  }
}
var OVERWRITE_UPDATE_OPTIONS;
var init_installDeps = __esm({
  "../installing/commands/lib/installDeps.js"() {
    "use strict";
    init_lib93();
    init_lib60();
    init_lib41();
    init_lib134();
    init_lib2();
    init_lib89();
    init_lib126();
    init_lib80();
    init_lib3();
    init_lib11();
    init_lib92();
    init_lib44();
    init_lib39();
    init_lib42();
    init_lib95();
    init_lib133();
    init_lib101();
    init_getPinnedVersion();
    init_getSaveType();
    init_handleIgnoredBuilds();
    init_policyHandlers();
    init_recursive2();
    init_runPacquet();
    init_updateWorkspaceDependencies();
    init_verifyPacquetIdentity();
    OVERWRITE_UPDATE_OPTIONS = {
      allowNew: true,
      update: false
    };
  }
});

// ../installing/commands/lib/resolutionPolicyManifest.js
function createGlobalPolicyCallbacks(opts3) {
  const policyHandlers = setupPolicyHandlers(opts3);
  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_lib101();
    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",
    "hoisting-limits",
    "https-proxy",
    "ignore-pnpmfile",
    "ignore-scripts",
    "ignore-workspace-root-check",
    "libc",
    "link-workspace-packages",
    "lockfile-dir",
    "lockfile-only",
    "lockfile",
    "modules-dir",
    "network-concurrency",
    "node-experimental-package-map",
    "node-package-map-type",
    "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(opts3, params, commands2) {
  if (opts3.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 (opts3.config) {
    const store = await createStoreController(opts3);
    await resolveConfigDeps(params, {
      ...opts3,
      store: store.ctrl,
      storeDir: store.dir,
      rootDir: opts3.workspaceDir ?? opts3.rootProjectManifestDir
    });
    return;
  }
  if (!opts3.recursive && opts3.workspaceDir === opts3.dir && !opts3.ignoreWorkspaceRootCheck && !opts3.workspaceRoot && opts3.workspacePackagePatterns && opts3.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 (opts3.global) {
    if (!opts3.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.some((param) => {
      const { alias } = parseWantedDependency(param);
      return alias === "pnpm" || alias === "@pnpm/exe";
    })) {
      throw new PnpmError("GLOBAL_PNPM_INSTALL", 'Use the "pnpm self-update" command to install or update pnpm');
    }
    return handleGlobalAdd({
      ...opts3,
      ...createGlobalPolicyCallbacks(opts3)
    }, params, commands2 ?? {});
  }
  const include = {
    dependencies: opts3.production !== false,
    devDependencies: opts3.dev !== false,
    optionalDependencies: opts3.optional !== false
  };
  if (opts3.allowBuild?.length) {
    if (opts3.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 (opts3.allowBuilds) {
      const disallowedBuilds = Object.entries(opts3.allowBuilds).filter(([, value]) => value === false).map(([pkg]) => pkg);
      const overlapDependencies = disallowedBuilds.filter((dep) => opts3.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 opts3.allowBuild) {
      allowBuilds[pkg] = true;
    }
    if (opts3.rootProjectManifestDir) {
      opts3.rootProjectManifest = opts3.rootProjectManifest ?? {};
      await writeSettings({
        ...opts3,
        workspaceDir: opts3.workspaceDir ?? opts3.rootProjectManifestDir,
        updatedSettings: {
          allowBuilds
        }
      });
    }
    const mergedAllowBuilds = { ...opts3.allowBuilds };
    for (const pkg of opts3.allowBuild) {
      mergedAllowBuilds[pkg] = true;
    }
    await installDeps({
      ...opts3,
      allowBuilds: mergedAllowBuilds,
      rebuildHandler: commands2?.rebuild,
      include,
      includeDirect: include,
      // `--dry-run` is an `install`-only preview; never let a config-level
      // `dry-run` turn `add` into a no-op check.
      dryRun: false
    }, params);
    return;
  }
  await installDeps({
    ...opts3,
    rebuildHandler: commands2?.rebuild,
    include,
    includeDirect: include,
    dryRun: false
  }, params);
}
var shorthands, commandNames4;
var init_add3 = __esm({
  "../installing/commands/lib/add.js"() {
    "use strict";
    init_lib94();
    init_lib41();
    init_lib64();
    init_lib102();
    init_lib2();
    init_lib131();
    init_lib132();
    init_lib98();
    init_lib92();
    init_es();
    init_lib66();
    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 calcDedupeCheckIssues(prev, next2, opts3) {
  const importerFields = opts3?.includeImporterSpecifiers ? IMPORTER_DRY_RUN_FIELDS : DEPENDENCIES_FIELDS;
  return {
    importerIssuesByImporterId: diffSnapshots(prev.importers, next2.importers, importerFields),
    packageIssuesByDepPath: diffSnapshots(prev.packages ?? {}, next2.packages ?? {}, PACKAGE_SNAPSHOT_DEP_FIELDS)
  };
}
function countDedupeCheckIssues(issues) {
  return countChangedSnapshots(issues.importerIssuesByImporterId) + countChangedSnapshots(issues.packageIssuesByDepPath);
}
function dedupeDiffCheck(prev, next2) {
  const issues = calcDedupeCheckIssues(prev, next2);
  if (countDedupeCheckIssues(issues) > 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);
  added.sort();
  removed.sort();
  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, IMPORTER_DRY_RUN_FIELDS;
var init_dedupeDiffCheck = __esm({
  "../installing/dedupe/check/lib/dedupeDiffCheck.js"() {
    "use strict";
    init_lib9();
    init_DedupeCheckIssuesError();
    PACKAGE_SNAPSHOT_DEP_FIELDS = ["dependencies", "optionalDependencies"];
    IMPORTER_DRY_RUN_FIELDS = [...DEPENDENCIES_FIELDS, "specifiers"];
  }
});

// ../installing/dedupe/check/lib/index.js
var init_lib137 = __esm({
  "../installing/dedupe/check/lib/index.js"() {
    "use strict";
    init_DedupeCheckIssuesError();
    init_dedupeDiffCheck();
  }
});

// ../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 [
    ...sortEntries(snapshotChanges.updated).map(([alias, updates]) => renderTree(toArchy(alias, updates))),
    ...[...snapshotChanges.added].sort().map((id) => `${source_default.green("+")} ${id}`),
    ...[...snapshotChanges.removed].sort().map((id) => `${source_default.red("-")} ${id}`)
  ].join("\n");
}
function toArchy(name, issue) {
  return {
    label: name,
    nodes: sortEntries(issue).map(([alias, change2]) => toArchyResolution(alias, change2))
  };
}
function sortEntries(record) {
  return Object.entries(record).sort(([left], [right]) => left < right ? -1 : left > right ? 1 : 0);
}
function toArchyResolution(alias, change2) {
  switch (change2.type) {
    case "added":
      return { label: `${source_default.green("+")} ${alias} ${source_default.gray(change2.next)}` };
    case "removed":
      return { label: `${source_default.red("-")} ${alias} ${source_default.gray(change2.prev)}` };
    case "updated":
      return { label: `${alias} ${source_default.red(change2.prev)} ${source_default.gray("\u2192")} ${source_default.green(change2.next)}` };
  }
}
var init_lib138 = __esm({
  "../installing/dedupe/issues-renderer/lib/index.js"() {
    "use strict";
    init_lib129();
    init_source();
  }
});

// ../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",
    "hoisting-limits",
    "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-experimental-package-map",
    "node-package-map-type",
    "node-linker",
    "noproxy",
    "package-import-method",
    "pnpmfile",
    "pnpr-server",
    "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",
    "frozen-store",
    "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: "Report what an install would change without writing anything to disk (no lockfile, no node_modules). Resolution still runs against the registry.",
            name: "--dry-run"
          },
          {
            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: "Refresh integrity checksums recorded in the lockfile from the registry",
            name: "--update-checksums"
          },
          {
            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, skips store integrity checks. These checks detect accidental corruption, not tampering by untrusted users with write access to the store",
            name: "--[no-]verify-store-integrity"
          },
          {
            description: "Open the package store read-only (immutable) and skip all store writes. For installs against a store on a read-only filesystem (e.g. a Nix store); pair with --offline --frozen-lockfile. Incompatible with --force",
            name: "--frozen-store"
          },
          {
            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"
          },
          {
            description: "Override CPU architecture of native modules to install. Acceptable values are the same as the `cpu` field of `package.json` (from `process.arch`)",
            name: "--cpu <arch>"
          },
          {
            description: "Override OS of native modules to install. Acceptable values are the same as the `os` field of `package.json` (from `process.platform`)",
            name: "--os <os>"
          },
          {
            description: "Override libc of native modules to install. Acceptable values are the same as the `libc` field of `package.json`",
            name: "--libc <libc>"
          },
          ...UNIVERSAL_OPTIONS
        ]
      },
      OUTPUT_OPTIONS,
      FILTERING
    ],
    url: docsUrl("install"),
    usages: ["pnpm install [options]"]
  });
}
async function handler5(opts3, _params, commands2) {
  if (opts3.global && !opts3._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: opts3.production !== false,
    devDependencies: opts3.dev !== false,
    optionalDependencies: opts3.optional !== false
  };
  const installDepsOptions = {
    ...opts3,
    rebuildHandler: commands2?.rebuild,
    frozenLockfileIfExists: opts3.frozenLockfileIfExists ?? (opts3.ci && !opts3.lockfileOnly && typeof opts3.frozenLockfile === "undefined" && typeof opts3.preferFrozenLockfile === "undefined"),
    include,
    includeDirect: include,
    isInstallCommand: true
  };
  if (opts3.resolutionOnly) {
    installDepsOptions.lockfileOnly = true;
    installDepsOptions.forceFullResolution = true;
  }
  if (opts3.dryRun) {
    return dryRunInstall(installDepsOptions, opts3);
  }
  await installDeps(installDepsOptions, []);
}
async function dryRunInstall(installDepsOptions, opts3) {
  if (opts3.pnprServer) {
    throw new PnpmError("CONFIG_CONFLICT_DRY_RUN_WITH_PNPR_SERVER", "Cannot use --dry-run with a configured pnpr server because the pnpr install path resolves and links through the server");
  }
  installDepsOptions.optimisticRepeatInstall = false;
  installDepsOptions.lockfileOnly = true;
  installDepsOptions.dryRun = true;
  const dryRunResult = await installDeps(installDepsOptions, []);
  if (dryRunResult == null) {
    return "Dry run complete. Could not compute the changes for this install configuration (no shared lockfile to compare).";
  }
  return renderDryRunReport(dryRunResult);
}
function renderDryRunReport(dryRunResult) {
  const issues = calcDedupeCheckIssues(dryRunResult.originalLockfile, dryRunResult.wantedLockfile, { includeImporterSpecifiers: true });
  if (countDedupeCheckIssues(issues) === 0) {
    return `Dry run complete. ${WANTED_LOCKFILE} is up to date; a real install would make no changes.`;
  }
  return [
    "Dry run complete. A real install would make the following changes (nothing was written to disk):",
    "",
    renderDedupeCheckIssues(issues)
  ].join("\n");
}
var cliOptionsTypes5, shorthands2, commandNames5, recursiveByDefault;
var init_install2 = __esm({
  "../installing/commands/lib/install.js"() {
    "use strict";
    init_lib94();
    init_lib41();
    init_lib64();
    init_lib();
    init_lib2();
    init_lib137();
    init_lib138();
    init_es();
    init_lib66();
    init_installDeps();
    cliOptionsTypes5 = () => ({
      ...rcOptionsTypes5(),
      ...pick_default(["force"], types2),
      "dry-run": Boolean,
      "fix-lockfile": Boolean,
      "update-checksums": 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(opts3, _params, commands2) {
  const include = {
    dependencies: opts3.production !== false,
    devDependencies: opts3.dev !== false,
    optionalDependencies: opts3.optional !== false
  };
  await installDeps({
    ...opts3,
    rebuildHandler: commands2?.rebuild,
    dedupe: true,
    include,
    includeDirect: include,
    lockfileCheck: opts3.check ? dedupeDiffCheck : void 0,
    // `--dry-run` is an `install`-only preview; `dedupe` has its own `--check`.
    dryRun: false
  }, []);
}
var commandNames6, recursiveByDefault2;
var init_dedupe = __esm({
  "../installing/commands/lib/dedupe.js"() {
    "use strict";
    init_lib94();
    init_lib41();
    init_lib137();
    init_es();
    init_lib66();
    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(opts3) {
  const store = await createStoreController(opts3);
  const include = {
    dependencies: opts3.production !== false,
    devDependencies: opts3.dev !== false,
    // when including optional deps, production is also required when perform headless install
    optionalDependencies: opts3.production !== false
  };
  await mutateModulesInSingleProject({
    manifest: {},
    mutation: "install",
    pruneDirectDependencies: true,
    rootDir: process.cwd()
  }, {
    ...opts3,
    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_lib94();
    init_lib41();
    init_lib126();
    init_lib92();
    init_lib66();
    init_install2();
    rcOptionsTypes7 = cliOptionsTypes5;
    shorthands3 = {
      D: "--dev",
      P: "--production"
    };
    commandNames7 = ["fetch"];
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/tinylogic/2.0.0/aed296968f4f4760d5039fdac7c793d1d722216ddb2bce5d314ad2f74f791cf9/node_modules/tinylogic/grammar.js
var require_grammar = __commonJS({
  "../../../../../setup-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 = "", i4;
          for (i4 = 0; i4 < expectation.parts.length; i4++) {
            escapedParts += expectation.parts[i4] instanceof Array ? classEscape(expectation.parts[i4][0]) + "-" + classEscape(expectation.parts[i4][1]) : classEscape(expectation.parts[i4]);
          }
          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), i4, j2;
        for (i4 = 0; i4 < expected2.length; i4++) {
          descriptions[i4] = describeExpectation(expected2[i4]);
        }
        descriptions.sort();
        if (descriptions.length > 0) {
          for (i4 = 1, j2 = 1; i4 < descriptions.length; i4++) {
            if (descriptions[i4 - 1] !== descriptions[i4]) {
              descriptions[j2] = descriptions[i4];
              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
    };
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/tinylogic/2.0.0/aed296968f4f4760d5039fdac7c793d1d722216ddb2bce5d314ad2f74f791cf9/node_modules/tinylogic/index.js
var require_tinylogic = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/tinylogic/2.0.0/aed296968f4f4760d5039fdac7c793d1d722216ddb2bce5d314ad2f74f791cf9/node_modules/tinylogic/index.js"(exports2) {
    var { parse: parse12 } = require_grammar();
    exports2.makeParser = (queryPattern = /[a-z]+/) => {
      return (str2, checkFn) => parse12(str2, { queryPattern, checkFn });
    };
    exports2.parse = exports2.makeParser();
  }
});

// ../../../../../setup-pnpm/store/v11/links/@yarnpkg/core/4.9.0/6a7c2315c9bb0e5147cca18162297477edf5ba620bb7ef59e7ebbd0aa7f5ecdf/node_modules/@yarnpkg/core/lib/MessageName.js
var require_MessageName = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@yarnpkg/core/4.9.0/6a7c2315c9bb0e5147cca18162297477edf5ba620bb7ef59e7ebbd0aa7f5ecdf/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";
      MessageName2[MessageName2["EXPERIMENTAL"] = 92] = "EXPERIMENTAL";
    })(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;
    }
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/predicate/isArray.js
var require_isArray = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/predicate/isArray.js"(exports2) {
    function isArray(value) {
      return Array.isArray(value);
    }
    exports2.isArray = isArray;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/predicate/isPlainObject.js
var require_isPlainObject = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/predicate/isPlainObject.js"(exports2) {
    function isPlainObject5(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;
        if (!Object.getOwnPropertyDescriptor(object, Symbol.toStringTag)?.writable) return false;
        return object.toString() === `[object ${tag}]`;
      }
      let proto3 = object;
      while (Object.getPrototypeOf(proto3) !== null) proto3 = Object.getPrototypeOf(proto3);
      return Object.getPrototypeOf(object) === proto3;
    }
    exports2.isPlainObject = isPlainObject5;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/util/eq.js
var require_eq2 = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/util/eq.js"(exports2) {
    function eq(value, other) {
      return value === other || Number.isNaN(value) && Number.isNaN(other);
    }
    exports2.eq = eq;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/function/noop.js
var require_noop = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/function/noop.js"(exports2) {
    function noop5() {
    }
    exports2.noop = noop5;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/_internal/getSymbols.js
var require_getSymbols = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/_internal/getSymbols.js"(exports2) {
    function getSymbols(object) {
      return Object.getOwnPropertySymbols(object).filter((symbol) => Object.prototype.propertyIsEnumerable.call(object, symbol));
    }
    exports2.getSymbols = getSymbols;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/_internal/getTag.js
var require_getTag = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/_internal/getTag.js"(exports2) {
    function getTag(value) {
      if (value == null) return value === void 0 ? "[object Undefined]" : "[object Null]";
      return Object.prototype.toString.call(value);
    }
    exports2.getTag = getTag;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/_internal/tags.js
var require_tags2 = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/_internal/tags.js"(exports2) {
    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;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/_internal/globalThis.js
var require_globalThis = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/_internal/globalThis.js"(exports2) {
    var globalThis_ = typeof globalThis === "object" && globalThis || typeof window === "object" && window || typeof self === "object" && self || typeof global === "object" && global || /* @__PURE__ */ (function() {
      return this;
    })();
    exports2.globalThis_ = globalThis_;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/predicate/isBuffer.js
var require_isBuffer = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/predicate/isBuffer.js"(exports2) {
    var require_globalThis2 = require_globalThis();
    function isBuffer(x3) {
      return typeof require_globalThis2.globalThis_.Buffer !== "undefined" && require_globalThis2.globalThis_.Buffer.isBuffer(x3);
    }
    exports2.isBuffer = isBuffer;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/predicate/isPlainObject.js
var require_isPlainObject2 = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/predicate/isPlainObject.js"(exports2) {
    function isPlainObject5(value) {
      if (!value || typeof value !== "object") return false;
      const proto3 = Object.getPrototypeOf(value);
      if (!(proto3 === null || proto3 === Object.prototype || Object.getPrototypeOf(proto3) === null)) return false;
      return Object.prototype.toString.call(value) === "[object Object]";
    }
    exports2.isPlainObject = isPlainObject5;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/predicate/isEqualWith.js
var require_isEqualWith = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/predicate/isEqualWith.js"(exports2) {
    var require_getSymbols2 = require_getSymbols();
    var require_getTag2 = require_getTag();
    var require_tags3 = require_tags2();
    var require_isBuffer3 = require_isBuffer();
    var require_isPlainObject3 = require_isPlainObject2();
    var require_eq3 = require_eq2();
    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 = require_getTag2.getTag(a2);
      let bTag = require_getTag2.getTag(b);
      if (aTag === "[object Arguments]") aTag = require_tags3.objectTag;
      if (bTag === "[object Arguments]") bTag = require_tags3.objectTag;
      if (aTag !== bTag) return false;
      switch (aTag) {
        case require_tags3.stringTag:
          return a2.toString() === b.toString();
        case require_tags3.numberTag: {
          const x3 = a2.valueOf();
          const y = b.valueOf();
          return require_eq3.eq(x3, y);
        }
        case require_tags3.booleanTag:
        case require_tags3.dateTag:
        case require_tags3.symbolTag:
          return Object.is(a2.valueOf(), b.valueOf());
        case require_tags3.regexpTag:
          return a2.source === b.source && a2.flags === b.flags;
        case require_tags3.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 require_tags3.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 require_tags3.setTag: {
            if (a2.size !== b.size) return false;
            const aValues = Array.from(a2.values());
            const bValues = Array.from(b.values());
            for (let i4 = 0; i4 < aValues.length; i4++) {
              const aValue = aValues[i4];
              const index2 = bValues.findIndex((bValue) => {
                return isEqualWithImpl(aValue, bValue, void 0, a2, b, stack, areValuesEqual);
              });
              if (index2 === -1) return false;
              bValues.splice(index2, 1);
            }
            return true;
          }
          case require_tags3.arrayTag:
          case require_tags3.uint8ArrayTag:
          case require_tags3.uint8ClampedArrayTag:
          case require_tags3.uint16ArrayTag:
          case require_tags3.uint32ArrayTag:
          case require_tags3.bigUint64ArrayTag:
          case require_tags3.int8ArrayTag:
          case require_tags3.int16ArrayTag:
          case require_tags3.int32ArrayTag:
          case require_tags3.bigInt64ArrayTag:
          case require_tags3.float32ArrayTag:
          case require_tags3.float64ArrayTag:
            if (require_isBuffer3.isBuffer(a2) !== require_isBuffer3.isBuffer(b)) return false;
            if (a2.length !== b.length) return false;
            for (let i4 = 0; i4 < a2.length; i4++) if (!isEqualWithImpl(a2[i4], b[i4], i4, a2, b, stack, areValuesEqual)) return false;
            return true;
          case require_tags3.arrayBufferTag:
            if (a2.byteLength !== b.byteLength) return false;
            return areObjectsEqual(new Uint8Array(a2), new Uint8Array(b), stack, areValuesEqual);
          case require_tags3.dataViewTag:
            if (a2.byteLength !== b.byteLength || a2.byteOffset !== b.byteOffset) return false;
            return areObjectsEqual(new Uint8Array(a2), new Uint8Array(b), stack, areValuesEqual);
          case require_tags3.errorTag:
            return a2.name === b.name && a2.message === b.message;
          case require_tags3.objectTag: {
            if (!(areObjectsEqual(a2.constructor, b.constructor, stack, areValuesEqual) || require_isPlainObject3.isPlainObject(a2) && require_isPlainObject3.isPlainObject(b))) return false;
            const aKeys = [...Object.keys(a2), ...require_getSymbols2.getSymbols(a2)];
            const bKeys = [...Object.keys(b), ...require_getSymbols2.getSymbols(b)];
            if (aKeys.length !== bKeys.length) return false;
            for (let i4 = 0; i4 < aKeys.length; i4++) {
              const propKey = aKeys[i4];
              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;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/predicate/isEqual.js
var require_isEqual = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/predicate/isEqual.js"(exports2) {
    var require_noop4 = require_noop();
    var require_isEqualWith3 = require_isEqualWith();
    function isEqual2(a2, b) {
      return require_isEqualWith3.isEqualWith(a2, b, require_noop4.noop);
    }
    exports2.isEqual = isEqual2;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/array/castArray.js
var require_castArray = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/array/castArray.js"(exports2) {
    function castArray(value) {
      if (arguments.length === 0) return [];
      return Array.isArray(value) ? value : [value];
    }
    exports2.castArray = castArray;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/predicate/isLength.js
var require_isLength = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/predicate/isLength.js"(exports2) {
    function isLength(value) {
      return Number.isSafeInteger(value) && value >= 0;
    }
    exports2.isLength = isLength;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/predicate/isArrayLike.js
var require_isArrayLike = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/predicate/isArrayLike.js"(exports2) {
    var require_isLength3 = require_isLength();
    function isArrayLike2(value) {
      return value != null && typeof value !== "function" && require_isLength3.isLength(value.length);
    }
    exports2.isArrayLike = isArrayLike2;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/array/chunk.js
var require_chunk = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/array/chunk.js"(exports2) {
    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 index2 = 0; index2 < chunkLength; index2++) {
        const start = index2 * size;
        const end = start + size;
        result2[index2] = arr.slice(start, end);
      }
      return result2;
    }
    exports2.chunk = chunk;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/_internal/toArray.js
var require_toArray = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/_internal/toArray.js"(exports2) {
    function toArray2(value) {
      return Array.isArray(value) ? value : Array.from(value);
    }
    exports2.toArray = toArray2;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/array/chunk.js
var require_chunk2 = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/array/chunk.js"(exports2) {
    var require_chunk3 = require_chunk();
    var require_toArray4 = require_toArray();
    var require_isArrayLike3 = require_isArrayLike();
    function chunk(arr, size = 1) {
      size = Math.max(Math.floor(size), 0);
      if (size === 0 || !require_isArrayLike3.isArrayLike(arr) || Number.isNaN(size)) return [];
      const array = require_toArray4.toArray(arr);
      if (!isFinite(size)) return [array];
      return require_chunk3.chunk(array, size);
    }
    exports2.chunk = chunk;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/array/compact.js
var require_compact = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/array/compact.js"(exports2) {
    function compact(arr) {
      const result2 = [];
      for (let i4 = 0; i4 < arr.length; i4++) {
        const item = arr[i4];
        if (item) result2.push(item);
      }
      return result2;
    }
    exports2.compact = compact;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/array/compact.js
var require_compact2 = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/array/compact.js"(exports2) {
    var require_compact3 = require_compact();
    var require_isArrayLike3 = require_isArrayLike();
    function compact(arr) {
      if (!require_isArrayLike3.isArrayLike(arr)) return [];
      return require_compact3.compact(Array.from(arr));
    }
    exports2.compact = compact;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/array/flatten.js
var require_flatten = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/array/flatten.js"(exports2) {
    function flatten2(arr, depth = 1) {
      const result2 = [];
      const flooredDepth = Math.floor(depth);
      const recursive2 = (arr2, currentDepth) => {
        for (let i4 = 0; i4 < arr2.length; i4++) {
          const item = arr2[i4];
          if (Array.isArray(item) && currentDepth < flooredDepth) recursive2(item, currentDepth + 1);
          else result2.push(item);
        }
      };
      recursive2(arr, 0);
      return result2;
    }
    exports2.flatten = flatten2;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/array/concat.js
var require_concat = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/array/concat.js"(exports2) {
    var require_flatten3 = require_flatten();
    function concat2(...values) {
      return require_flatten3.flatten(values);
    }
    exports2.concat = concat2;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/util/toString.js
var require_toString = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/util/toString.js"(exports2) {
    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;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/_internal/toKey.js
var require_toKey = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/_internal/toKey.js"(exports2) {
    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;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/util/toPath.js
var require_toPath = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/util/toPath.js"(exports2) {
    var require_toKey2 = require_toKey();
    var require_toString2 = require_toString();
    function toPath3(deepKey) {
      if (Array.isArray(deepKey)) return deepKey.map(require_toKey2.toKey);
      if (typeof deepKey === "symbol") return [deepKey];
      deepKey = require_toString2.toString(deepKey);
      const result2 = [];
      const length = deepKey.length;
      if (length === 0) return result2;
      let index2 = 0;
      let key = "";
      let quoteChar = "";
      let bracket = false;
      if (deepKey.charCodeAt(0) === 46) result2.push("");
      while (index2 < length) {
        const char = deepKey[index2];
        if (quoteChar) if (char === "\\" && index2 + 1 < length) {
          index2++;
          key += deepKey[index2];
        } 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 = "";
          }
          const next2 = deepKey[index2 + 1];
          if (next2 === void 0 || next2 === ".") result2.push("");
        } else key += char;
        index2++;
      }
      if (key) result2.push(key);
      return result2;
    }
    exports2.toPath = toPath3;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/_internal/isUnsafeProperty.js
var require_isUnsafeProperty = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/_internal/isUnsafeProperty.js"(exports2) {
    function isUnsafeProperty(key) {
      return key === "__proto__";
    }
    exports2.isUnsafeProperty = isUnsafeProperty;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/_internal/isDeepKey.js
var require_isDeepKey = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/_internal/isDeepKey.js"(exports2) {
    var regexIsDeepProp = /\.|(\[(?:[^[\]]*|(["'])(?:(?!\2)[^\\]|\\.)*?\2)\])/;
    function isDeepKey(key) {
      switch (typeof key) {
        case "number":
        case "symbol":
          return false;
        case "string":
          if (key === "" || key.startsWith(".") || key.endsWith(".")) return false;
          return regexIsDeepProp.test(key);
        default:
          return false;
      }
    }
    exports2.isDeepKey = isDeepKey;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/object/get.js
var require_get = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/object/get.js"(exports2) {
    var require_isUnsafeProperty2 = require_isUnsafeProperty();
    var require_isDeepKey2 = require_isDeepKey();
    var require_toKey2 = require_toKey();
    var require_toPath2 = require_toPath();
    function get2(object, path240, defaultValue) {
      if (object == null) return defaultValue;
      switch (typeof path240) {
        case "string": {
          if (require_isUnsafeProperty2.isUnsafeProperty(path240)) return defaultValue;
          const result2 = object[path240];
          if (result2 === void 0) if (require_isDeepKey2.isDeepKey(path240) && !Object.hasOwn(object, path240)) return get2(object, require_toPath2.toPath(path240), defaultValue);
          else return defaultValue;
          return result2;
        }
        case "number":
        case "symbol": {
          if (typeof path240 === "number") path240 = require_toKey2.toKey(path240);
          const result2 = object[path240];
          if (result2 === void 0) return defaultValue;
          return result2;
        }
        default: {
          if (Array.isArray(path240)) return getWithPath(object, path240, defaultValue);
          if (Object.is(path240?.valueOf(), -0)) path240 = "-0";
          else path240 = String(path240);
          if (require_isUnsafeProperty2.isUnsafeProperty(path240)) return defaultValue;
          const result2 = object[path240];
          if (result2 === void 0) return defaultValue;
          return result2;
        }
      }
    }
    function getWithPath(object, path240, defaultValue) {
      if (path240.length === 0) return defaultValue;
      let current = object;
      for (let index2 = 0; index2 < path240.length; index2++) {
        if (current == null) return defaultValue;
        if (require_isUnsafeProperty2.isUnsafeProperty(path240[index2])) return defaultValue;
        current = current[path240[index2]];
      }
      if (current === void 0) return defaultValue;
      return current;
    }
    exports2.get = get2;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/object/property.js
var require_property = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/object/property.js"(exports2) {
    var require_get4 = require_get();
    function property(path240) {
      return function(object) {
        return require_get4.get(object, path240);
      };
    }
    exports2.property = property;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/predicate/isObject.js
var require_isObject = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/predicate/isObject.js"(exports2) {
    function isObject4(value) {
      return value !== null && (typeof value === "object" || typeof value === "function");
    }
    exports2.isObject = isObject4;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/predicate/isPrimitive.js
var require_isPrimitive = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/predicate/isPrimitive.js"(exports2) {
    function isPrimitive2(value) {
      return value == null || typeof value !== "object" && typeof value !== "function";
    }
    exports2.isPrimitive = isPrimitive2;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/predicate/isMatchWith.js
var require_isMatchWith = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/predicate/isMatchWith.js"(exports2) {
    var require_isPrimitive4 = require_isPrimitive();
    var require_eq3 = require_eq2();
    var require_isObject3 = require_isObject();
    function isMatchWith(target2, source, compare3) {
      if (typeof compare3 !== "function") return isMatchWith(target2, source, () => void 0);
      return isMatchWithInternal(target2, source, function doesMatch(objValue, srcValue, key, object, source2, stack) {
        const isEqual2 = compare3(objValue, srcValue, key, object, source2, stack);
        if (isEqual2 !== void 0) return Boolean(isEqual2);
        return isMatchWithInternal(objValue, srcValue, doesMatch, stack, false);
      }, /* @__PURE__ */ new Map(), true);
    }
    function isMatchWithInternal(target2, source, compare3, stack, isRoot2 = false) {
      if (source === target2) return true;
      switch (typeof source) {
        case "object":
          return isObjectMatch(target2, source, compare3, stack);
        case "function":
          if (Object.keys(source).length > 0) return isMatchWithInternal(target2, { ...source }, compare3, stack, isRoot2);
          return require_eq3.eq(target2, source);
        default:
          if (!require_isObject3.isObject(target2)) return require_eq3.eq(target2, source);
          if (isRoot2) {
            if (typeof source === "string") return source === "";
            return true;
          }
          return require_eq3.eq(target2, source);
      }
    }
    function isObjectMatch(target2, source, compare3, stack) {
      if (source == null) return true;
      if (Array.isArray(source)) return isArrayMatch(target2, source, compare3, stack);
      if (source instanceof Map) return isMapMatch(target2, source, compare3, stack);
      if (source instanceof Set) return isSetMatch(target2, source, compare3, stack);
      const keys4 = Object.keys(source);
      if (target2 == null || require_isPrimitive4.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 i4 = 0; i4 < keys4.length; i4++) {
          const key = keys4[i4];
          if (!require_isPrimitive4.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;
          if (!compare3(target2[key], source[key], key, target2, source, stack)) return false;
        }
        return true;
      } finally {
        stack?.delete(source);
      }
    }
    function isMapMatch(target2, source, compare3, stack) {
      if (source.size === 0) return true;
      if (!(target2 instanceof Map)) return false;
      for (const [key, sourceValue] of source.entries()) if (compare3(target2.get(key), sourceValue, key, target2, source, stack) === false) return false;
      return true;
    }
    function isArrayMatch(target2, source, compare3, stack) {
      if (source.length === 0) return true;
      if (!Array.isArray(target2)) return false;
      const countedIndex = /* @__PURE__ */ new Set();
      for (let i4 = 0; i4 < source.length; i4++) {
        const sourceItem = source[i4];
        let found = false;
        for (let j2 = 0; j2 < target2.length; j2++) {
          if (countedIndex.has(j2)) continue;
          const targetItem = target2[j2];
          let matches2 = false;
          if (compare3(targetItem, sourceItem, i4, target2, source, stack)) matches2 = true;
          if (matches2) {
            countedIndex.add(j2);
            found = true;
            break;
          }
        }
        if (!found) return false;
      }
      return true;
    }
    function isSetMatch(target2, source, compare3, stack) {
      if (source.size === 0) return true;
      if (!(target2 instanceof Set)) return false;
      return isArrayMatch([...target2], [...source], compare3, stack);
    }
    exports2.isMatchWith = isMatchWith;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/predicate/isMatch.js
var require_isMatch = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/predicate/isMatch.js"(exports2) {
    var require_isMatchWith2 = require_isMatchWith();
    function isMatch(target2, source) {
      return require_isMatchWith2.isMatchWith(target2, source, () => void 0);
    }
    exports2.isMatch = isMatch;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/predicate/isTypedArray.js
var require_isTypedArray = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/predicate/isTypedArray.js"(exports2) {
    function isTypedArray(x3) {
      return ArrayBuffer.isView(x3) && !(x3 instanceof DataView);
    }
    exports2.isTypedArray = isTypedArray;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/object/cloneDeepWith.js
var require_cloneDeepWith = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/object/cloneDeepWith.js"(exports2) {
    var require_isPrimitive4 = require_isPrimitive();
    var require_isTypedArray3 = require_isTypedArray();
    var require_getSymbols2 = require_getSymbols();
    var require_getTag2 = require_getTag();
    var require_tags3 = require_tags2();
    var require_isBuffer3 = require_isBuffer();
    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 (require_isPrimitive4.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 i4 = 0; i4 < valueToClone.length; i4++) result2[i4] = cloneDeepWithImpl(valueToClone[i4], i4, 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 (require_isBuffer3.isBuffer(valueToClone)) return valueToClone.subarray();
      if (require_isTypedArray3.isTypedArray(valueToClone)) {
        const result2 = new (Object.getPrototypeOf(valueToClone)).constructor(valueToClone.length);
        stack.set(valueToClone, result2);
        for (let i4 = 0; i4 < valueToClone.length; i4++) result2[i4] = cloneDeepWithImpl(valueToClone[i4], i4, 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), ...require_getSymbols2.getSymbols(source)];
      for (let i4 = 0; i4 < keys4.length; i4++) {
        const key = keys4[i4];
        const descriptor = Object.getOwnPropertyDescriptor(target2, key);
        if (descriptor == null || descriptor.writable) target2[key] = cloneDeepWithImpl(source[key], key, objectToClone, stack, cloneValue);
      }
    }
    function isCloneableObject(object) {
      switch (require_getTag2.getTag(object)) {
        case require_tags3.argumentsTag:
        case require_tags3.arrayTag:
        case require_tags3.arrayBufferTag:
        case require_tags3.dataViewTag:
        case require_tags3.booleanTag:
        case require_tags3.dateTag:
        case require_tags3.float32ArrayTag:
        case require_tags3.float64ArrayTag:
        case require_tags3.int8ArrayTag:
        case require_tags3.int16ArrayTag:
        case require_tags3.int32ArrayTag:
        case require_tags3.mapTag:
        case require_tags3.numberTag:
        case require_tags3.objectTag:
        case require_tags3.regexpTag:
        case require_tags3.setTag:
        case require_tags3.stringTag:
        case require_tags3.symbolTag:
        case require_tags3.uint8ArrayTag:
        case require_tags3.uint8ClampedArrayTag:
        case require_tags3.uint16ArrayTag:
        case require_tags3.uint32ArrayTag:
          return true;
        default:
          return false;
      }
    }
    exports2.cloneDeepWith = cloneDeepWith;
    exports2.cloneDeepWithImpl = cloneDeepWithImpl;
    exports2.copyProperties = copyProperties;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/object/cloneDeep.js
var require_cloneDeep = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/object/cloneDeep.js"(exports2) {
    var require_cloneDeepWith3 = require_cloneDeepWith();
    function cloneDeep(obj) {
      return require_cloneDeepWith3.cloneDeepWithImpl(obj, void 0, obj, /* @__PURE__ */ new Map(), void 0);
    }
    exports2.cloneDeep = cloneDeep;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/predicate/matches.js
var require_matches = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/predicate/matches.js"(exports2) {
    var require_cloneDeep3 = require_cloneDeep();
    var require_isMatch2 = require_isMatch();
    function matches2(source) {
      source = require_cloneDeep3.cloneDeep(source);
      return (target2) => {
        return require_isMatch2.isMatch(target2, source);
      };
    }
    exports2.matches = matches2;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/object/cloneDeepWith.js
var require_cloneDeepWith2 = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/object/cloneDeepWith.js"(exports2) {
    var require_getTag2 = require_getTag();
    var require_tags3 = require_tags2();
    var require_cloneDeepWith3 = require_cloneDeepWith();
    function cloneDeepWith(obj, customizer) {
      return require_cloneDeepWith3.cloneDeepWith(obj, (value, key, object, stack) => {
        const cloned = customizer?.(value, key, object, stack);
        if (cloned !== void 0) return cloned;
        if (typeof obj !== "object") return;
        if (require_getTag2.getTag(obj) === "[object Object]" && typeof obj.constructor !== "function") {
          const result2 = {};
          stack.set(obj, result2);
          require_cloneDeepWith3.copyProperties(result2, obj, object, stack);
          return result2;
        }
        switch (Object.prototype.toString.call(obj)) {
          case require_tags3.numberTag:
          case require_tags3.stringTag:
          case require_tags3.booleanTag: {
            const result2 = new obj.constructor(obj?.valueOf());
            require_cloneDeepWith3.copyProperties(result2, obj);
            return result2;
          }
          case require_tags3.argumentsTag: {
            const result2 = {};
            require_cloneDeepWith3.copyProperties(result2, obj);
            result2.length = obj.length;
            result2[Symbol.iterator] = obj[Symbol.iterator];
            return result2;
          }
          default:
            return;
        }
      });
    }
    exports2.cloneDeepWith = cloneDeepWith;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/object/cloneDeep.js
var require_cloneDeep2 = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/object/cloneDeep.js"(exports2) {
    var require_cloneDeepWith3 = require_cloneDeepWith2();
    function cloneDeep(obj) {
      return require_cloneDeepWith3.cloneDeepWith(obj);
    }
    exports2.cloneDeep = cloneDeep;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/predicate/isArguments.js
var require_isArguments = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/predicate/isArguments.js"(exports2) {
    var require_getTag2 = require_getTag();
    function isArguments(value) {
      return value !== null && typeof value === "object" && require_getTag2.getTag(value) === "[object Arguments]";
    }
    exports2.isArguments = isArguments;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/_internal/isIndex.js
var require_isIndex = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/_internal/isIndex.js"(exports2) {
    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;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/object/has.js
var require_has = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/object/has.js"(exports2) {
    var require_isDeepKey2 = require_isDeepKey();
    var require_toPath2 = require_toPath();
    var require_isIndex2 = require_isIndex();
    var require_isArguments3 = require_isArguments();
    function has(object, path240) {
      let resolvedPath;
      if (Array.isArray(path240)) resolvedPath = path240;
      else if (typeof path240 === "string" && require_isDeepKey2.isDeepKey(path240) && !(path240 in Object(object))) resolvedPath = require_toPath2.toPath(path240);
      else resolvedPath = [path240];
      if (resolvedPath.length === 0) return false;
      let current = object;
      for (let i4 = 0; i4 < resolvedPath.length; i4++) {
        const key = resolvedPath[i4];
        if (current == null || !Object.hasOwn(current, key)) {
          if (!((Array.isArray(current) || require_isArguments3.isArguments(current)) && require_isIndex2.isIndex(key) && key < current.length)) return false;
        }
        current = current[key];
      }
      return true;
    }
    exports2.has = has;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/predicate/matchesProperty.js
var require_matchesProperty = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/predicate/matchesProperty.js"(exports2) {
    var require_toKey2 = require_toKey();
    var require_get4 = require_get();
    var require_isMatch2 = require_isMatch();
    var require_cloneDeep3 = require_cloneDeep2();
    var require_has2 = require_has();
    function matchesProperty(property, source) {
      switch (typeof property) {
        case "object":
          if (Object.is(property?.valueOf(), -0)) property = "-0";
          break;
        case "number":
          property = require_toKey2.toKey(property);
          break;
      }
      source = require_cloneDeep3.cloneDeep(source);
      return function(target2) {
        const result2 = require_get4.get(target2, property);
        if (result2 === void 0) return require_has2.has(target2, property);
        if (source === void 0) return result2 === void 0;
        return require_isMatch2.isMatch(result2, source);
      };
    }
    exports2.matchesProperty = matchesProperty;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/function/identity.js
var require_identity2 = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/function/identity.js"(exports2) {
    function identity5(x3) {
      return x3;
    }
    exports2.identity = identity5;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/util/iteratee.js
var require_iteratee = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/util/iteratee.js"(exports2) {
    var require_identity6 = require_identity2();
    var require_property2 = require_property();
    var require_matches2 = require_matches();
    var require_matchesProperty2 = require_matchesProperty();
    function iteratee(value) {
      if (value == null) return require_identity6.identity;
      switch (typeof value) {
        case "function":
          return value;
        case "object":
          if (Array.isArray(value) && value.length === 2) return require_matchesProperty2.matchesProperty(value[0], value[1]);
          return require_matches2.matches(value);
        case "string":
        case "symbol":
        case "number":
          return require_property2.property(value);
      }
    }
    exports2.iteratee = iteratee;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/array/countBy.js
var require_countBy = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/array/countBy.js"(exports2) {
    var require_isArrayLike3 = require_isArrayLike();
    var require_iteratee2 = require_iteratee();
    function countBy(collection, iteratee$1) {
      if (collection == null) return {};
      const array = require_isArrayLike3.isArrayLike(collection) ? Array.from(collection) : Object.values(collection);
      const mapper = require_iteratee2.iteratee(iteratee$1 ?? void 0);
      const result2 = /* @__PURE__ */ Object.create(null);
      for (let i4 = 0; i4 < array.length; i4++) {
        const item = array[i4];
        const key = mapper(item);
        result2[key] = (result2[key] ?? 0) + 1;
      }
      return result2;
    }
    exports2.countBy = countBy;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/predicate/isObjectLike.js
var require_isObjectLike = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/predicate/isObjectLike.js"(exports2) {
    function isObjectLike(value) {
      return typeof value === "object" && value !== null;
    }
    exports2.isObjectLike = isObjectLike;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/predicate/isArrayLikeObject.js
var require_isArrayLikeObject = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/predicate/isArrayLikeObject.js"(exports2) {
    var require_isArrayLike3 = require_isArrayLike();
    var require_isObjectLike2 = require_isObjectLike();
    function isArrayLikeObject(value) {
      return require_isObjectLike2.isObjectLike(value) && require_isArrayLike3.isArrayLike(value);
    }
    exports2.isArrayLikeObject = isArrayLikeObject;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/array/difference.js
var require_difference = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/array/difference.js"(exports2) {
    function difference3(firstArr, secondArr) {
      const secondSet = new Set(secondArr);
      return firstArr.filter((item) => !secondSet.has(item));
    }
    exports2.difference = difference3;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/array/difference.js
var require_difference2 = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/array/difference.js"(exports2) {
    var require_difference3 = require_difference();
    var require_isArrayLikeObject2 = require_isArrayLikeObject();
    function difference3(arr, ...values) {
      if (!require_isArrayLikeObject2.isArrayLikeObject(arr)) return [];
      const arr1 = Array.from(arr);
      const arr2 = [];
      for (let i4 = 0; i4 < values.length; i4++) {
        const value = values[i4];
        if (require_isArrayLikeObject2.isArrayLikeObject(value)) arr2.push(...Array.from(value));
      }
      return require_difference3.difference(arr1, arr2);
    }
    exports2.difference = difference3;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/array/last.js
var require_last = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/array/last.js"(exports2) {
    function last(arr) {
      return arr[arr.length - 1];
    }
    exports2.last = last;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/array/last.js
var require_last2 = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/array/last.js"(exports2) {
    var require_last4 = require_last();
    var require_toArray4 = require_toArray();
    var require_isArrayLike3 = require_isArrayLike();
    function last(array) {
      if (!require_isArrayLike3.isArrayLike(array)) return;
      return require_last4.last(require_toArray4.toArray(array));
    }
    exports2.last = last;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/array/differenceBy.js
var require_differenceBy = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/array/differenceBy.js"(exports2) {
    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;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/_internal/flattenArrayLike.js
var require_flattenArrayLike = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/_internal/flattenArrayLike.js"(exports2) {
    var require_isArrayLikeObject2 = require_isArrayLikeObject();
    function flattenArrayLike(values) {
      const result2 = [];
      for (let i4 = 0; i4 < values.length; i4++) {
        const arrayLike = values[i4];
        if (!require_isArrayLikeObject2.isArrayLikeObject(arrayLike)) continue;
        for (let j2 = 0; j2 < arrayLike.length; j2++) result2.push(arrayLike[j2]);
      }
      return result2;
    }
    exports2.flattenArrayLike = flattenArrayLike;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/array/differenceBy.js
var require_differenceBy2 = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/array/differenceBy.js"(exports2) {
    var require_difference3 = require_difference();
    var require_differenceBy3 = require_differenceBy();
    var require_iteratee2 = require_iteratee();
    var require_isArrayLikeObject2 = require_isArrayLikeObject();
    var require_last4 = require_last2();
    var require_flattenArrayLike2 = require_flattenArrayLike();
    function differenceBy(array, ..._values) {
      if (!require_isArrayLikeObject2.isArrayLikeObject(array)) return [];
      const iteratee$1 = require_last4.last(_values);
      const values = require_flattenArrayLike2.flattenArrayLike(_values);
      if (require_isArrayLikeObject2.isArrayLikeObject(iteratee$1)) return require_difference3.difference(Array.from(array), values);
      return require_differenceBy3.differenceBy(Array.from(array), values, require_iteratee2.iteratee(iteratee$1));
    }
    exports2.differenceBy = differenceBy;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/array/differenceWith.js
var require_differenceWith = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/array/differenceWith.js"(exports2) {
    function differenceWith(firstArr, secondArr, areItemsEqual) {
      return firstArr.filter((firstItem) => {
        return secondArr.every((secondItem) => {
          return !areItemsEqual(firstItem, secondItem);
        });
      });
    }
    exports2.differenceWith = differenceWith;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/array/differenceWith.js
var require_differenceWith2 = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/array/differenceWith.js"(exports2) {
    var require_difference3 = require_difference();
    var require_differenceWith3 = require_differenceWith();
    var require_isArrayLikeObject2 = require_isArrayLikeObject();
    var require_last4 = require_last2();
    var require_flattenArrayLike2 = require_flattenArrayLike();
    function differenceWith(array, ...values) {
      if (!require_isArrayLikeObject2.isArrayLikeObject(array)) return [];
      const comparator = require_last4.last(values);
      const flattenedValues = require_flattenArrayLike2.flattenArrayLike(values);
      if (typeof comparator === "function") return require_differenceWith3.differenceWith(Array.from(array), flattenedValues, comparator);
      return require_difference3.difference(Array.from(array), flattenedValues);
    }
    exports2.differenceWith = differenceWith;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/predicate/isSymbol.js
var require_isSymbol = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/predicate/isSymbol.js"(exports2) {
    function isSymbol(value) {
      return typeof value === "symbol" || value instanceof Symbol;
    }
    exports2.isSymbol = isSymbol;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/util/toNumber.js
var require_toNumber = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/util/toNumber.js"(exports2) {
    var require_isSymbol3 = require_isSymbol();
    function toNumber(value) {
      if (require_isSymbol3.isSymbol(value)) return NaN;
      return Number(value);
    }
    exports2.toNumber = toNumber;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/util/toFinite.js
var require_toFinite = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/util/toFinite.js"(exports2) {
    var require_toNumber2 = require_toNumber();
    function toFinite(value) {
      if (!value) return value === 0 ? value : 0;
      value = require_toNumber2.toNumber(value);
      if (value === Infinity || value === -Infinity) return (value < 0 ? -1 : 1) * Number.MAX_VALUE;
      return value === value ? value : 0;
    }
    exports2.toFinite = toFinite;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/util/toInteger.js
var require_toInteger = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/util/toInteger.js"(exports2) {
    var require_toFinite2 = require_toFinite();
    function toInteger(value) {
      const finite = require_toFinite2.toFinite(value);
      const remainder = finite % 1;
      return remainder ? finite - remainder : finite;
    }
    exports2.toInteger = toInteger;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/array/drop.js
var require_drop = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/array/drop.js"(exports2) {
    function drop(arr, itemsCount) {
      itemsCount = Math.max(itemsCount, 0);
      return arr.slice(itemsCount);
    }
    exports2.drop = drop;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/array/drop.js
var require_drop2 = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/array/drop.js"(exports2) {
    var require_drop3 = require_drop();
    var require_toArray4 = require_toArray();
    var require_isArrayLike3 = require_isArrayLike();
    var require_toInteger2 = require_toInteger();
    function drop(array, itemsCount = 1, guard) {
      if (!require_isArrayLike3.isArrayLike(array)) return [];
      itemsCount = guard ? 1 : require_toInteger2.toInteger(itemsCount);
      return require_drop3.drop(require_toArray4.toArray(array), itemsCount);
    }
    exports2.drop = drop;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/array/dropRight.js
var require_dropRight = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/array/dropRight.js"(exports2) {
    function dropRight(arr, itemsCount) {
      itemsCount = Math.min(-itemsCount, 0);
      if (itemsCount === 0) return arr.slice();
      return arr.slice(0, itemsCount);
    }
    exports2.dropRight = dropRight;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/array/dropRight.js
var require_dropRight2 = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/array/dropRight.js"(exports2) {
    var require_dropRight3 = require_dropRight();
    var require_toArray4 = require_toArray();
    var require_isArrayLike3 = require_isArrayLike();
    var require_toInteger2 = require_toInteger();
    function dropRight(collection, itemsCount = 1, guard) {
      if (!require_isArrayLike3.isArrayLike(collection)) return [];
      itemsCount = guard ? 1 : require_toInteger2.toInteger(itemsCount);
      return require_dropRight3.dropRight(require_toArray4.toArray(collection), itemsCount);
    }
    exports2.dropRight = dropRight;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/array/dropRightWhile.js
var require_dropRightWhile = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/array/dropRightWhile.js"(exports2) {
    function dropRightWhile(arr, canContinueDropping) {
      for (let i4 = arr.length - 1; i4 >= 0; i4--) if (!canContinueDropping(arr[i4], i4, arr)) return arr.slice(0, i4 + 1);
      return [];
    }
    exports2.dropRightWhile = dropRightWhile;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/array/dropRightWhile.js
var require_dropRightWhile2 = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/array/dropRightWhile.js"(exports2) {
    var require_dropRightWhile3 = require_dropRightWhile();
    var require_identity6 = require_identity2();
    var require_toArray4 = require_toArray();
    var require_isArrayLike3 = require_isArrayLike();
    var require_property2 = require_property();
    var require_matches2 = require_matches();
    var require_matchesProperty2 = require_matchesProperty();
    function dropRightWhile(array, predicate = require_identity6.identity) {
      if (!require_isArrayLike3.isArrayLike(array)) return [];
      return dropRightWhileImpl(require_toArray4.toArray(array), predicate);
    }
    function dropRightWhileImpl(arr, predicate) {
      switch (typeof predicate) {
        case "function":
          return require_dropRightWhile3.dropRightWhile(arr, (item, index2, arr2) => Boolean(predicate(item, index2, arr2)));
        case "object":
          if (Array.isArray(predicate) && predicate.length === 2) {
            const key = predicate[0];
            const value = predicate[1];
            return require_dropRightWhile3.dropRightWhile(arr, require_matchesProperty2.matchesProperty(key, value));
          } else return require_dropRightWhile3.dropRightWhile(arr, require_matches2.matches(predicate));
        case "symbol":
        case "number":
        case "string":
          return require_dropRightWhile3.dropRightWhile(arr, require_property2.property(predicate));
      }
    }
    exports2.dropRightWhile = dropRightWhile;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/array/dropWhile.js
var require_dropWhile = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/array/dropWhile.js"(exports2) {
    function dropWhile(arr, canContinueDropping) {
      const dropEndIndex = arr.findIndex((item, index2, arr2) => !canContinueDropping(item, index2, arr2));
      if (dropEndIndex === -1) return [];
      return arr.slice(dropEndIndex);
    }
    exports2.dropWhile = dropWhile;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/array/dropWhile.js
var require_dropWhile2 = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/array/dropWhile.js"(exports2) {
    var require_dropWhile3 = require_dropWhile();
    var require_identity6 = require_identity2();
    var require_toArray4 = require_toArray();
    var require_isArrayLike3 = require_isArrayLike();
    var require_property2 = require_property();
    var require_matches2 = require_matches();
    var require_matchesProperty2 = require_matchesProperty();
    function dropWhile(array, predicate = require_identity6.identity) {
      if (!require_isArrayLike3.isArrayLike(array)) return [];
      return dropWhileImpl(require_toArray4.toArray(array), predicate);
    }
    function dropWhileImpl(arr, predicate) {
      switch (typeof predicate) {
        case "function":
          return require_dropWhile3.dropWhile(arr, (item, index2, arr2) => Boolean(predicate(item, index2, arr2)));
        case "object":
          if (Array.isArray(predicate) && predicate.length === 2) {
            const key = predicate[0];
            const value = predicate[1];
            return require_dropWhile3.dropWhile(arr, require_matchesProperty2.matchesProperty(key, value));
          } else return require_dropWhile3.dropWhile(arr, require_matches2.matches(predicate));
        case "number":
        case "symbol":
        case "string":
          return require_dropWhile3.dropWhile(arr, require_property2.property(predicate));
      }
    }
    exports2.dropWhile = dropWhile;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/math/range.js
var require_range2 = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/math/range.js"(exports2) {
    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 i4 = 0; i4 < length; i4++) result2[i4] = start + i4 * step2;
      return result2;
    }
    exports2.range = range;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/array/forEach.js
var require_forEach = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/array/forEach.js"(exports2) {
    var require_identity6 = require_identity2();
    var require_range6 = require_range2();
    var require_isArrayLike3 = require_isArrayLike();
    function forEach(collection, callback2 = require_identity6.identity) {
      if (!collection) return collection;
      const keys4 = require_isArrayLike3.isArrayLike(collection) || Array.isArray(collection) ? require_range6.range(0, collection.length) : Object.keys(collection);
      for (let i4 = 0; i4 < keys4.length; i4++) {
        const key = keys4[i4];
        const value = collection[key];
        if (callback2(value, key, collection) === false) break;
      }
      return collection;
    }
    exports2.forEach = forEach;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/array/forEachRight.js
var require_forEachRight = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/array/forEachRight.js"(exports2) {
    var require_identity6 = require_identity2();
    var require_range6 = require_range2();
    var require_isArrayLike3 = require_isArrayLike();
    function forEachRight(collection, callback2 = require_identity6.identity) {
      if (!collection) return collection;
      const keys4 = require_isArrayLike3.isArrayLike(collection) ? require_range6.range(0, collection.length) : Object.keys(collection);
      for (let i4 = keys4.length - 1; i4 >= 0; i4--) {
        const key = keys4[i4];
        const value = collection[key];
        if (callback2(value, key, collection) === false) break;
      }
      return collection;
    }
    exports2.forEachRight = forEachRight;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/_internal/isIterateeCall.js
var require_isIterateeCall = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/_internal/isIterateeCall.js"(exports2) {
    var require_eq3 = require_eq2();
    var require_isArrayLike3 = require_isArrayLike();
    var require_isObject3 = require_isObject();
    var require_isIndex2 = require_isIndex();
    function isIterateeCall(value, index2, object) {
      if (!require_isObject3.isObject(object)) return false;
      if (typeof index2 === "number" && require_isArrayLike3.isArrayLike(object) && require_isIndex2.isIndex(index2) && index2 < object.length || typeof index2 === "string" && index2 in object) return require_eq3.eq(object[index2], value);
      return false;
    }
    exports2.isIterateeCall = isIterateeCall;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/_virtual/_rolldown/runtime.js
var require_runtime = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/_virtual/_rolldown/runtime.js"(exports2) {
    var __defProp2 = Object.defineProperty;
    var __exportAll = (all, no_symbols) => {
      let target2 = {};
      for (var name in all) __defProp2(target2, name, {
        get: all[name],
        enumerable: true
      });
      if (!no_symbols) __defProp2(target2, Symbol.toStringTag, { value: "Module" });
      return target2;
    };
    exports2.__exportAll = __exportAll;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/array/each.js
var require_each = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/array/each.js"() {
    require_forEach();
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/array/eachRight.js
var require_eachRight = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/array/eachRight.js"() {
    require_forEachRight();
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/predicate/isString.js
var require_isString = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/predicate/isString.js"(exports2) {
    function isString(value) {
      return typeof value === "string" || value instanceof String;
    }
    exports2.isString = isString;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/array/fill.js
var require_fill = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/array/fill.js"(exports2) {
    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 i4 = finalStart; i4 < finalEnd; i4++) array[i4] = value;
      return array;
    }
    exports2.fill = fill;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/array/fill.js
var require_fill2 = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/array/fill.js"(exports2) {
    var require_fill3 = require_fill();
    var require_isArrayLike3 = require_isArrayLike();
    var require_isString3 = require_isString();
    function fill(array, value, start = 0, end = array ? array.length : 0) {
      if (!require_isArrayLike3.isArrayLike(array)) return [];
      if (require_isString3.isString(array)) return array;
      start = Math.floor(start);
      end = Math.floor(end);
      if (!start) start = 0;
      if (!end) end = 0;
      return require_fill3.fill(array, value, start, end);
    }
    exports2.fill = fill;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/array/filter.js
var require_filter = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/array/filter.js"(exports2) {
    var require_identity6 = require_identity2();
    var require_isArrayLike3 = require_isArrayLike();
    var require_iteratee2 = require_iteratee();
    function filter14(collection, predicate = require_identity6.identity) {
      if (!collection) return [];
      predicate = require_iteratee2.iteratee(predicate);
      if (!Array.isArray(collection)) {
        const result3 = [];
        const keys4 = Object.keys(collection);
        const length2 = require_isArrayLike3.isArrayLike(collection) ? collection.length : keys4.length;
        for (let i4 = 0; i4 < length2; i4++) {
          const key = keys4[i4];
          const value = collection[key];
          if (predicate(value, key, collection)) result3.push(value);
        }
        return result3;
      }
      const result2 = [];
      const length = collection.length;
      for (let i4 = 0; i4 < length; i4++) {
        const value = collection[i4];
        if (predicate(value, i4, collection)) result2.push(value);
      }
      return result2;
    }
    exports2.filter = filter14;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/array/find.js
var require_find = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/array/find.js"(exports2) {
    var require_identity6 = require_identity2();
    var require_iteratee2 = require_iteratee();
    function find(source, _doesMatch = require_identity6.identity, fromIndex = 0) {
      if (!source) return;
      if (fromIndex < 0) fromIndex = Math.max(source.length + fromIndex, 0);
      const doesMatch = require_iteratee2.iteratee(_doesMatch);
      if (!Array.isArray(source)) {
        const keys4 = Object.keys(source);
        for (let i4 = fromIndex; i4 < keys4.length; i4++) {
          const key = keys4[i4];
          const value = source[key];
          if (doesMatch(value, key, source)) return value;
        }
        return;
      }
      return source.slice(fromIndex).find(doesMatch);
    }
    exports2.find = find;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/function/identity.js
var require_identity3 = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/function/identity.js"(exports2) {
    function identity5(x3) {
      return x3;
    }
    exports2.identity = identity5;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/array/findIndex.js
var require_findIndex = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/array/findIndex.js"(exports2) {
    var require_property2 = require_property();
    var require_matches2 = require_matches();
    var require_matchesProperty2 = require_matchesProperty();
    var require_toInteger2 = require_toInteger();
    var require_identity6 = require_identity3();
    function findIndex(arr, doesMatch = require_identity6.identity, fromIndex = 0) {
      if (!arr) return -1;
      fromIndex = require_toInteger2.toInteger(fromIndex);
      if (fromIndex < 0) fromIndex = Math.max(arr.length + fromIndex, 0);
      const subArray = Array.from(arr).slice(fromIndex);
      let index2 = -1;
      switch (typeof doesMatch) {
        case "function":
          index2 = subArray.findIndex(doesMatch);
          break;
        case "object":
          if (Array.isArray(doesMatch) && doesMatch.length === 2) {
            const key = doesMatch[0];
            const value = doesMatch[1];
            index2 = subArray.findIndex(require_matchesProperty2.matchesProperty(key, value));
          } else index2 = subArray.findIndex(require_matches2.matches(doesMatch));
          break;
        case "number":
        case "symbol":
        case "string":
          index2 = subArray.findIndex(require_property2.property(doesMatch));
      }
      return index2 === -1 ? -1 : index2 + fromIndex;
    }
    exports2.findIndex = findIndex;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/array/findLast.js
var require_findLast = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/array/findLast.js"(exports2) {
    var require_identity6 = require_identity2();
    var require_iteratee2 = require_iteratee();
    var require_toInteger2 = require_toInteger();
    function findLast(collection, predicate = require_identity6.identity, fromIndex) {
      if (!collection) return;
      const length = Array.isArray(collection) ? collection.length : Object.keys(collection).length;
      fromIndex = require_toInteger2.toInteger(fromIndex ?? length - 1);
      if (fromIndex < 0) fromIndex = Math.max(length + fromIndex, 0);
      else fromIndex = Math.min(fromIndex, length - 1);
      const doesMatch = require_iteratee2.iteratee(predicate);
      if (!Array.isArray(collection)) {
        const keys4 = Object.keys(collection);
        for (let i4 = fromIndex; i4 >= 0; i4--) {
          const key = keys4[i4];
          const value = collection[key];
          if (doesMatch(value, key, collection)) return value;
        }
        return;
      }
      return collection.slice(0, fromIndex + 1).findLast(doesMatch);
    }
    exports2.findLast = findLast;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/array/findLastIndex.js
var require_findLastIndex = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/array/findLastIndex.js"(exports2) {
    var require_identity6 = require_identity2();
    var require_toArray4 = require_toArray();
    var require_property2 = require_property();
    var require_matches2 = require_matches();
    var require_matchesProperty2 = require_matchesProperty();
    function findLastIndex(arr, doesMatch = require_identity6.identity, fromIndex = arr ? arr.length - 1 : 0) {
      if (!arr) return -1;
      if (Number.isNaN(fromIndex)) fromIndex = 0;
      if (fromIndex < 0) fromIndex = Math.max(arr.length + fromIndex, 0);
      else fromIndex = Math.min(fromIndex, arr.length - 1);
      const subArray = require_toArray4.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(require_matchesProperty2.matchesProperty(key, value));
          } else return subArray.findLastIndex(require_matches2.matches(doesMatch));
        case "number":
        case "symbol":
        case "string":
          return subArray.findLastIndex(require_property2.property(doesMatch));
      }
    }
    exports2.findLastIndex = findLastIndex;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/array/head.js
var require_head = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/array/head.js"(exports2) {
    function head2(arr) {
      return arr[0];
    }
    exports2.head = head2;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/array/head.js
var require_head2 = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/array/head.js"(exports2) {
    var require_head3 = require_head();
    var require_toArray4 = require_toArray();
    var require_isArrayLike3 = require_isArrayLike();
    function head2(arr) {
      if (!require_isArrayLike3.isArrayLike(arr)) return;
      return require_head3.head(require_toArray4.toArray(arr));
    }
    exports2.head = head2;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/array/first.js
var require_first = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/array/first.js"() {
    require_head2();
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/array/flattenDepth.js
var require_flattenDepth = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/array/flattenDepth.js"(exports2) {
    var require_isArray2 = require_isArray();
    var require_isArrayLike3 = require_isArrayLike();
    var require_isArguments3 = require_isArguments();
    function flattenDepth(array, depth = 1) {
      if (!require_isArrayLike3.isArrayLike(array)) return [];
      const result2 = [];
      const flooredDepth = Math.floor(depth);
      const recursive2 = (arr, currentDepth) => {
        for (let i4 = 0; i4 < arr.length; i4++) {
          const item = arr[i4];
          if (isFlattenable(item) && currentDepth < flooredDepth) recursive2(item, currentDepth + 1);
          else result2.push(item);
        }
      };
      recursive2(Array.from(array), 0);
      return result2;
    }
    function isFlattenable(value) {
      return require_isArray2.isArray(value) || require_isArguments3.isArguments(value) || Boolean(value && value[Symbol.isConcatSpreadable]);
    }
    exports2.flattenDepth = flattenDepth;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/array/map.js
var require_map3 = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/array/map.js"(exports2) {
    var require_identity6 = require_identity2();
    var require_range6 = require_range2();
    var require_isArrayLike3 = require_isArrayLike();
    var require_iteratee2 = require_iteratee();
    function map26(collection, _iteratee) {
      if (!collection) return [];
      const keys4 = require_isArrayLike3.isArrayLike(collection) || Array.isArray(collection) ? require_range6.range(0, collection.length) : Object.keys(collection);
      const iteratee$1 = require_iteratee2.iteratee(_iteratee ?? require_identity6.identity);
      const result2 = new Array(keys4.length);
      for (let i4 = 0; i4 < keys4.length; i4++) {
        const key = keys4[i4];
        const value = collection[key];
        result2[i4] = iteratee$1(value, key, collection);
      }
      return result2;
    }
    exports2.map = map26;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/predicate/isNil.js
var require_isNil = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/predicate/isNil.js"(exports2) {
    function isNil(x3) {
      return x3 == null;
    }
    exports2.isNil = isNil;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/array/flatMap.js
var require_flatMap = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/array/flatMap.js"(exports2) {
    var require_identity6 = require_identity2();
    var require_isNil3 = require_isNil();
    var require_flattenDepth2 = require_flattenDepth();
    var require_map5 = require_map3();
    function flatMap(collection, iteratee = require_identity6.identity) {
      if (require_isNil3.isNil(collection)) return [];
      const mapped = require_isNil3.isNil(iteratee) ? require_map5.map(collection) : require_map5.map(collection, iteratee);
      return require_flattenDepth2.flattenDepth(mapped, 1);
    }
    exports2.flatMap = flatMap;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/array/flatMapDepth.js
var require_flatMapDepth = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/array/flatMapDepth.js"(exports2) {
    var require_identity6 = require_identity2();
    var require_iteratee2 = require_iteratee();
    var require_flattenDepth2 = require_flattenDepth();
    var require_map5 = require_map3();
    function flatMapDepth(collection, iteratee$1 = require_identity6.identity, depth = 1) {
      if (collection == null) return [];
      const iterateeFn = require_iteratee2.iteratee(iteratee$1);
      const mapped = require_map5.map(collection, iterateeFn);
      return require_flattenDepth2.flattenDepth(mapped, depth);
    }
    exports2.flatMapDepth = flatMapDepth;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/array/flatMapDeep.js
var require_flatMapDeep = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/array/flatMapDeep.js"(exports2) {
    var require_flatMapDepth2 = require_flatMapDepth();
    function flatMapDeep(collection, iteratee) {
      return require_flatMapDepth2.flatMapDepth(collection, iteratee, Infinity);
    }
    exports2.flatMapDeep = flatMapDeep;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/array/flatten.js
var require_flatten2 = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/array/flatten.js"(exports2) {
    var require_flattenDepth2 = require_flattenDepth();
    function flatten2(array) {
      return require_flattenDepth2.flattenDepth(array, 1);
    }
    exports2.flatten = flatten2;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/array/flattenDeep.js
var require_flattenDeep = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/array/flattenDeep.js"(exports2) {
    var require_flattenDepth2 = require_flattenDepth();
    function flattenDeep(array) {
      return require_flattenDepth2.flattenDepth(array, Infinity);
    }
    exports2.flattenDeep = flattenDeep;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/array/groupBy.js
var require_groupBy = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/array/groupBy.js"(exports2) {
    function groupBy4(arr, getKeyFromItem) {
      const result2 = {};
      for (let i4 = 0; i4 < arr.length; i4++) {
        const item = arr[i4];
        const key = getKeyFromItem(item, i4, arr);
        if (!Object.hasOwn(result2, key)) result2[key] = [];
        result2[key].push(item);
      }
      return result2;
    }
    exports2.groupBy = groupBy4;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/array/groupBy.js
var require_groupBy2 = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/array/groupBy.js"(exports2) {
    var require_groupBy4 = require_groupBy();
    var require_identity6 = require_identity2();
    var require_toArray4 = require_toArray();
    var require_isArrayLike3 = require_isArrayLike();
    var require_iteratee2 = require_iteratee();
    function groupBy4(source, _getKeyFromItem = require_identity6.identity) {
      if (source == null) return {};
      const items = require_isArrayLike3.isArrayLike(source) ? require_toArray4.toArray(source) : Object.values(source);
      const getKeyFromItem = require_iteratee2.iteratee(_getKeyFromItem);
      return require_groupBy4.groupBy(items, getKeyFromItem);
    }
    exports2.groupBy = groupBy4;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/array/includes.js
var require_includes = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/array/includes.js"(exports2) {
    var require_eq3 = require_eq2();
    var require_isArrayLike3 = require_isArrayLike();
    var require_toInteger2 = require_toInteger();
    var require_isString3 = require_isString();
    function includes(source, target2, fromIndex, guard) {
      if (source == null) return false;
      if (guard || !fromIndex) fromIndex = 0;
      else fromIndex = require_toInteger2.toInteger(fromIndex);
      if (require_isString3.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);
      if (require_isArrayLike3.isArrayLike(source)) {
        if (fromIndex < 0) fromIndex = Math.max(0, source.length + fromIndex);
        for (let i4 = fromIndex; i4 < source.length; i4++) if (require_eq3.eq(source[i4], target2)) return true;
        return false;
      }
      const keys4 = Object.keys(source);
      if (fromIndex < 0) fromIndex = Math.max(0, keys4.length + fromIndex);
      for (let i4 = fromIndex; i4 < keys4.length; i4++) {
        const value = Reflect.get(source, keys4[i4]);
        if (require_eq3.eq(value, target2)) return true;
      }
      return false;
    }
    exports2.includes = includes;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/array/indexOf.js
var require_indexOf = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/array/indexOf.js"(exports2) {
    var require_isArrayLike3 = require_isArrayLike();
    function indexOf2(array, searchElement, fromIndex) {
      if (!require_isArrayLike3.isArrayLike(array)) return -1;
      if (Number.isNaN(searchElement)) {
        fromIndex = fromIndex ?? 0;
        if (fromIndex < 0) fromIndex = Math.max(0, array.length + fromIndex);
        for (let i4 = fromIndex; i4 < array.length; i4++) if (Number.isNaN(array[i4])) return i4;
        return -1;
      }
      return Array.from(array).indexOf(searchElement, fromIndex);
    }
    exports2.indexOf = indexOf2;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/array/initial.js
var require_initial = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/array/initial.js"(exports2) {
    function initial(arr) {
      return arr.slice(0, -1);
    }
    exports2.initial = initial;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/array/initial.js
var require_initial2 = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/array/initial.js"(exports2) {
    var require_initial3 = require_initial();
    var require_isArrayLike3 = require_isArrayLike();
    function initial(arr) {
      if (!require_isArrayLike3.isArrayLike(arr)) return [];
      return require_initial3.initial(Array.from(arr));
    }
    exports2.initial = initial;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/array/intersection.js
var require_intersection = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/array/intersection.js"(exports2) {
    function intersection(firstArr, secondArr) {
      const secondSet = new Set(secondArr);
      return firstArr.filter((item) => secondSet.has(item));
    }
    exports2.intersection = intersection;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/array/uniq.js
var require_uniq = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/array/uniq.js"(exports2) {
    function uniq3(arr) {
      return [...new Set(arr)];
    }
    exports2.uniq = uniq3;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/array/intersection.js
var require_intersection2 = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/array/intersection.js"(exports2) {
    var require_intersection3 = require_intersection();
    var require_uniq3 = require_uniq();
    var require_isArrayLikeObject2 = require_isArrayLikeObject();
    function intersection(...arrays) {
      if (arrays.length === 0) return [];
      if (!require_isArrayLikeObject2.isArrayLikeObject(arrays[0])) return [];
      let result2 = require_uniq3.uniq(Array.from(arrays[0]));
      for (let i4 = 1; i4 < arrays.length; i4++) {
        const array = arrays[i4];
        if (!require_isArrayLikeObject2.isArrayLikeObject(array)) return [];
        result2 = require_intersection3.intersection(result2, Array.from(array));
      }
      return result2;
    }
    exports2.intersection = intersection;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/array/intersectionBy.js
var require_intersectionBy = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/array/intersectionBy.js"(exports2) {
    function intersectionBy(firstArr, secondArr, mapper) {
      const result2 = [];
      const mappedSecondSet = new Set(secondArr.map(mapper));
      for (let i4 = 0; i4 < firstArr.length; i4++) {
        const item = firstArr[i4];
        const mappedItem = mapper(item);
        if (mappedSecondSet.has(mappedItem)) {
          result2.push(item);
          mappedSecondSet.delete(mappedItem);
        }
      }
      return result2;
    }
    exports2.intersectionBy = intersectionBy;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/array/uniqBy.js
var require_uniqBy = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/array/uniqBy.js"(exports2) {
    function uniqBy2(arr, mapper) {
      const map26 = /* @__PURE__ */ new Map();
      for (let i4 = 0; i4 < arr.length; i4++) {
        const item = arr[i4];
        const key = mapper(item, i4, arr);
        if (!map26.has(key)) map26.set(key, item);
      }
      return Array.from(map26.values());
    }
    exports2.uniqBy = uniqBy2;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/array/intersectionBy.js
var require_intersectionBy2 = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/array/intersectionBy.js"(exports2) {
    var require_intersectionBy3 = require_intersectionBy();
    var require_last4 = require_last();
    var require_uniq3 = require_uniq();
    var require_uniqBy3 = require_uniqBy();
    var require_identity6 = require_identity2();
    var require_toArray4 = require_toArray();
    var require_property2 = require_property();
    var require_isArrayLikeObject2 = require_isArrayLikeObject();
    function intersectionBy(array, ...values) {
      if (!require_isArrayLikeObject2.isArrayLikeObject(array)) return [];
      const lastValue = require_last4.last(values);
      const count2 = require_isArrayLikeObject2.isArrayLikeObject(lastValue) ? values.length : values.length - 1;
      const iteratee = getIteratee(lastValue);
      if (count2 <= 0) return require_uniqBy3.uniqBy(require_toArray4.toArray(array), iteratee ?? require_identity6.identity);
      let result2 = require_uniq3.uniq(require_toArray4.toArray(array));
      for (let i4 = 0; i4 < count2; ++i4) {
        const value = values[i4];
        if (!require_isArrayLikeObject2.isArrayLikeObject(value)) return [];
        if (iteratee) result2 = require_intersectionBy3.intersectionBy(result2, require_toArray4.toArray(value), iteratee);
      }
      return result2;
    }
    function getIteratee(value) {
      if (require_isArrayLikeObject2.isArrayLikeObject(value)) return require_identity6.identity;
      if (typeof value === "function") return (item) => value(item);
      if (typeof value === "string") return require_property2.property(value);
      return null;
    }
    exports2.intersectionBy = intersectionBy;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/array/uniq.js
var require_uniq2 = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/array/uniq.js"(exports2) {
    var require_uniq3 = require_uniq();
    var require_isArrayLike3 = require_isArrayLike();
    function uniq3(arr) {
      if (!require_isArrayLike3.isArrayLike(arr)) return [];
      return require_uniq3.uniq(Array.from(arr));
    }
    exports2.uniq = uniq3;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/array/intersectionWith.js
var require_intersectionWith = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/array/intersectionWith.js"(exports2) {
    function intersectionWith(firstArr, secondArr, areItemsEqual) {
      return firstArr.filter((firstItem) => {
        return secondArr.some((secondItem) => {
          return areItemsEqual(firstItem, secondItem);
        });
      });
    }
    exports2.intersectionWith = intersectionWith;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/array/intersectionWith.js
var require_intersectionWith2 = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/array/intersectionWith.js"(exports2) {
    var require_intersectionWith3 = require_intersectionWith();
    var require_eq3 = require_eq2();
    var require_last4 = require_last2();
    var require_uniq3 = require_uniq2();
    function intersectionWith(firstArr, ...otherArrs) {
      if (firstArr == null) return [];
      const _comparator = require_last4.last(otherArrs);
      let comparator = require_eq3.eq;
      let uniq$1 = require_uniq3.uniq;
      if (typeof _comparator === "function") {
        comparator = _comparator;
        uniq$1 = uniqPreserve0;
        otherArrs.pop();
      }
      let result2 = uniq$1(Array.from(firstArr));
      for (let i4 = 0; i4 < otherArrs.length; ++i4) {
        const otherArr = otherArrs[i4];
        if (otherArr == null) return [];
        result2 = require_intersectionWith3.intersectionWith(result2, Array.from(otherArr), comparator);
      }
      return result2;
    }
    function uniqPreserve0(arr) {
      const result2 = [];
      const added = /* @__PURE__ */ new Set();
      for (let i4 = 0; i4 < arr.length; i4++) {
        const item = arr[i4];
        if (added.has(item)) continue;
        result2.push(item);
        added.add(item);
      }
      return result2;
    }
    exports2.intersectionWith = intersectionWith;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/predicate/isFunction.js
var require_isFunction = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/predicate/isFunction.js"(exports2) {
    function isFunction(value) {
      return typeof value === "function";
    }
    exports2.isFunction = isFunction;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/predicate/isArrayBuffer.js
var require_isArrayBuffer = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/predicate/isArrayBuffer.js"(exports2) {
    function isArrayBuffer2(value) {
      return value instanceof ArrayBuffer;
    }
    exports2.isArrayBuffer = isArrayBuffer2;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/predicate/isBlob.js
var require_isBlob = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/predicate/isBlob.js"(exports2) {
    function isBlob(x3) {
      if (typeof Blob === "undefined") return false;
      return x3 instanceof Blob;
    }
    exports2.isBlob = isBlob;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/predicate/isBoolean.js
var require_isBoolean = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/predicate/isBoolean.js"(exports2) {
    function isBoolean2(x3) {
      return typeof x3 === "boolean";
    }
    exports2.isBoolean = isBoolean2;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/predicate/isBrowser.js
var require_isBrowser = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/predicate/isBrowser.js"(exports2) {
    function isBrowser2() {
      return typeof window !== "undefined" && window?.document != null;
    }
    exports2.isBrowser = isBrowser2;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/predicate/isDate.js
var require_isDate = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/predicate/isDate.js"(exports2) {
    function isDate(value) {
      return value instanceof Date;
    }
    exports2.isDate = isDate;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/predicate/isEmptyObject.js
var require_isEmptyObject = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/predicate/isEmptyObject.js"(exports2) {
    var require_isPlainObject3 = require_isPlainObject2();
    function isEmptyObject(value) {
      return require_isPlainObject3.isPlainObject(value) && Object.keys(value).length === 0;
    }
    exports2.isEmptyObject = isEmptyObject;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/predicate/isError.js
var require_isError = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/predicate/isError.js"(exports2) {
    function isError(value) {
      return value instanceof Error;
    }
    exports2.isError = isError;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/predicate/isFile.js
var require_isFile = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/predicate/isFile.js"(exports2) {
    var require_isBlob2 = require_isBlob();
    function isFile(x3) {
      if (typeof File === "undefined") return false;
      return require_isBlob2.isBlob(x3) && x3 instanceof File;
    }
    exports2.isFile = isFile;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/predicate/isIterable.js
var require_isIterable = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/predicate/isIterable.js"(exports2) {
    function isIterable(value) {
      return value != null && typeof value[Symbol.iterator] === "function";
    }
    exports2.isIterable = isIterable;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/predicate/isJSON.js
var require_isJSON = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/predicate/isJSON.js"(exports2) {
    function isJSON(value) {
      if (typeof value !== "string") return false;
      try {
        JSON.parse(value);
        return true;
      } catch {
        return false;
      }
    }
    exports2.isJSON = isJSON;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/predicate/isJSONValue.js
var require_isJSONValue = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/predicate/isJSONValue.js"(exports2) {
    var require_isPlainObject3 = require_isPlainObject2();
    function isJSONValue(value) {
      switch (typeof value) {
        case "object":
          return value === null || isJSONArray(value) || isJSONObject(value);
        case "string":
        case "number":
        case "boolean":
          return true;
        default:
          return false;
      }
    }
    function isJSONArray(value) {
      if (!Array.isArray(value)) return false;
      return value.every((item) => isJSONValue(item));
    }
    function isJSONObject(obj) {
      if (!require_isPlainObject3.isPlainObject(obj)) return false;
      const keys4 = Reflect.ownKeys(obj);
      for (let i4 = 0; i4 < keys4.length; i4++) {
        const key = keys4[i4];
        const value = obj[key];
        if (typeof key !== "string") return false;
        if (!isJSONValue(value)) return false;
      }
      return true;
    }
    exports2.isJSONArray = isJSONArray;
    exports2.isJSONObject = isJSONObject;
    exports2.isJSONValue = isJSONValue;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/predicate/isMap.js
var require_isMap = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/predicate/isMap.js"(exports2) {
    function isMap2(value) {
      return value instanceof Map;
    }
    exports2.isMap = isMap2;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/predicate/isNode.js
var require_isNode = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/predicate/isNode.js"(exports2) {
    function isNode3() {
      return typeof process !== "undefined" && process?.versions?.node != null;
    }
    exports2.isNode = isNode3;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/predicate/isNotNil.js
var require_isNotNil = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/predicate/isNotNil.js"(exports2) {
    function isNotNil(x3) {
      return x3 != null;
    }
    exports2.isNotNil = isNotNil;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/predicate/isNull.js
var require_isNull = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/predicate/isNull.js"(exports2) {
    function isNull2(x3) {
      return x3 === null;
    }
    exports2.isNull = isNull2;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/predicate/isNumber.js
var require_isNumber = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/predicate/isNumber.js"(exports2) {
    function isNumber(x3) {
      return typeof x3 === "number";
    }
    exports2.isNumber = isNumber;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/predicate/isPromise.js
var require_isPromise = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/predicate/isPromise.js"(exports2) {
    function isPromise(value) {
      return value instanceof Promise;
    }
    exports2.isPromise = isPromise;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/predicate/isRegExp.js
var require_isRegExp = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/predicate/isRegExp.js"(exports2) {
    function isRegExp(value) {
      return value instanceof RegExp;
    }
    exports2.isRegExp = isRegExp;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/predicate/isSet.js
var require_isSet = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/predicate/isSet.js"(exports2) {
    function isSet(value) {
      return value instanceof Set;
    }
    exports2.isSet = isSet;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/predicate/isString.js
var require_isString2 = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/predicate/isString.js"(exports2) {
    function isString(value) {
      return typeof value === "string";
    }
    exports2.isString = isString;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/predicate/isSymbol.js
var require_isSymbol2 = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/predicate/isSymbol.js"(exports2) {
    function isSymbol(value) {
      return typeof value === "symbol";
    }
    exports2.isSymbol = isSymbol;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/predicate/isUndefined.js
var require_isUndefined = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/predicate/isUndefined.js"(exports2) {
    function isUndefined(x3) {
      return x3 === void 0;
    }
    exports2.isUndefined = isUndefined;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/predicate/isWeakMap.js
var require_isWeakMap = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/predicate/isWeakMap.js"(exports2) {
    function isWeakMap(value) {
      return value instanceof WeakMap;
    }
    exports2.isWeakMap = isWeakMap;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/predicate/isWeakSet.js
var require_isWeakSet = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/predicate/isWeakSet.js"(exports2) {
    function isWeakSet(value) {
      return value instanceof WeakSet;
    }
    exports2.isWeakSet = isWeakSet;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/predicate/index.js
var require_predicate = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/predicate/index.js"(exports2) {
    Object.defineProperty(exports2, Symbol.toStringTag, { value: "Module" });
    var require_isPrimitive4 = require_isPrimitive();
    var require_isTypedArray3 = require_isTypedArray();
    var require_isBuffer3 = require_isBuffer();
    var require_isPlainObject3 = require_isPlainObject2();
    var require_isArrayBuffer3 = require_isArrayBuffer();
    var require_isBlob2 = require_isBlob();
    var require_isBoolean3 = require_isBoolean();
    var require_isBrowser2 = require_isBrowser();
    var require_isDate4 = require_isDate();
    var require_isEmptyObject2 = require_isEmptyObject();
    var require_isEqualWith3 = require_isEqualWith();
    var require_isEqual2 = require_isEqual();
    var require_isError3 = require_isError();
    var require_isFile2 = require_isFile();
    var require_isFunction4 = require_isFunction();
    var require_isIterable3 = require_isIterable();
    var require_isJSON2 = require_isJSON();
    var require_isJSONValue2 = require_isJSONValue();
    var require_isLength3 = require_isLength();
    var require_isMap3 = require_isMap();
    var require_isNil3 = require_isNil();
    var require_isNode2 = require_isNode();
    var require_isNotNil2 = require_isNotNil();
    var require_isNull3 = require_isNull();
    var require_isNumber3 = require_isNumber();
    var require_isPromise3 = require_isPromise();
    var require_isRegExp3 = require_isRegExp();
    var require_isSet3 = require_isSet();
    var require_isString3 = require_isString2();
    var require_isSymbol3 = require_isSymbol2();
    var require_isUndefined3 = require_isUndefined();
    var require_isWeakMap3 = require_isWeakMap();
    var require_isWeakSet3 = require_isWeakSet();
    exports2.isArrayBuffer = require_isArrayBuffer3.isArrayBuffer;
    exports2.isBlob = require_isBlob2.isBlob;
    exports2.isBoolean = require_isBoolean3.isBoolean;
    exports2.isBrowser = require_isBrowser2.isBrowser;
    exports2.isBuffer = require_isBuffer3.isBuffer;
    exports2.isDate = require_isDate4.isDate;
    exports2.isEmptyObject = require_isEmptyObject2.isEmptyObject;
    exports2.isEqual = require_isEqual2.isEqual;
    exports2.isEqualWith = require_isEqualWith3.isEqualWith;
    exports2.isError = require_isError3.isError;
    exports2.isFile = require_isFile2.isFile;
    exports2.isFunction = require_isFunction4.isFunction;
    exports2.isIterable = require_isIterable3.isIterable;
    exports2.isJSON = require_isJSON2.isJSON;
    exports2.isJSONArray = require_isJSONValue2.isJSONArray;
    exports2.isJSONObject = require_isJSONValue2.isJSONObject;
    exports2.isJSONValue = require_isJSONValue2.isJSONValue;
    exports2.isLength = require_isLength3.isLength;
    exports2.isMap = require_isMap3.isMap;
    exports2.isNil = require_isNil3.isNil;
    exports2.isNode = require_isNode2.isNode;
    exports2.isNotNil = require_isNotNil2.isNotNil;
    exports2.isNull = require_isNull3.isNull;
    exports2.isNumber = require_isNumber3.isNumber;
    exports2.isPlainObject = require_isPlainObject3.isPlainObject;
    exports2.isPrimitive = require_isPrimitive4.isPrimitive;
    exports2.isPromise = require_isPromise3.isPromise;
    exports2.isRegExp = require_isRegExp3.isRegExp;
    exports2.isSet = require_isSet3.isSet;
    exports2.isString = require_isString3.isString;
    exports2.isSymbol = require_isSymbol3.isSymbol;
    exports2.isTypedArray = require_isTypedArray3.isTypedArray;
    exports2.isUndefined = require_isUndefined3.isUndefined;
    exports2.isWeakMap = require_isWeakMap3.isWeakMap;
    exports2.isWeakSet = require_isWeakSet3.isWeakSet;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/array/invokeMap.js
var require_invokeMap = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/array/invokeMap.js"(exports2) {
    var require_isFunction4 = require_isFunction();
    var require_isNil3 = require_isNil();
    require_predicate();
    var require_isArrayLike3 = require_isArrayLike();
    var require_toPath2 = require_toPath();
    var require_get4 = require_get();
    function invokeMap(collection, path240, ...args) {
      if (require_isNil3.isNil(collection)) return [];
      const values = require_isArrayLike3.isArrayLike(collection) ? Array.from(collection) : Object.values(collection);
      const result2 = [];
      for (let i4 = 0; i4 < values.length; i4++) {
        const value = values[i4];
        if (require_isFunction4.isFunction(path240)) {
          result2.push(path240.apply(value, args));
          continue;
        }
        const method2 = require_get4.get(value, path240);
        let thisContext = value;
        const keys4 = Array.isArray(path240) ? path240 : require_toPath2.toPath(path240);
        if (keys4.length > 1) thisContext = require_get4.get(value, keys4.slice(0, -1));
        result2.push(method2 == null ? void 0 : method2.apply(thisContext, args));
      }
      return result2;
    }
    exports2.invokeMap = invokeMap;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/array/join.js
var require_join = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/array/join.js"(exports2) {
    var require_isArrayLike3 = require_isArrayLike();
    function join5(array, separator) {
      if (!require_isArrayLike3.isArrayLike(array)) return "";
      return Array.from(array).join(separator);
    }
    exports2.join = join5;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/array/reduce.js
var require_reduce = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/array/reduce.js"(exports2) {
    var require_identity6 = require_identity2();
    var require_range6 = require_range2();
    var require_isArrayLike3 = require_isArrayLike();
    function reduce5(collection, iteratee = require_identity6.identity, accumulator) {
      const hasAccumulator = arguments.length >= 3;
      if (!collection) return accumulator;
      let keys4;
      let startIndex = 0;
      if (require_isArrayLike3.isArrayLike(collection)) {
        keys4 = require_range6.range(0, collection.length);
        if (!hasAccumulator && collection.length > 0) {
          accumulator = collection[0];
          startIndex += 1;
        }
      } else {
        keys4 = Object.keys(collection);
        if (!hasAccumulator && keys4.length > 0) {
          accumulator = collection[keys4[0]];
          startIndex += 1;
        }
      }
      for (let i4 = startIndex; i4 < keys4.length; i4++) {
        const key = keys4[i4];
        const value = collection[key];
        accumulator = iteratee(accumulator, value, key, collection);
      }
      return accumulator;
    }
    exports2.reduce = reduce5;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/array/keyBy.js
var require_keyBy = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/array/keyBy.js"(exports2) {
    var require_identity6 = require_identity2();
    var require_isArrayLike3 = require_isArrayLike();
    var require_iteratee2 = require_iteratee();
    var require_isObjectLike2 = require_isObjectLike();
    var require_reduce3 = require_reduce();
    function keyBy(collection, iteratee$1) {
      if (!require_isArrayLike3.isArrayLike(collection) && !require_isObjectLike2.isObjectLike(collection)) return {};
      const keyFn = require_iteratee2.iteratee(iteratee$1 ?? require_identity6.identity);
      return require_reduce3.reduce(collection, (result2, value) => {
        const key = keyFn(value);
        result2[key] = value;
        return result2;
      }, {});
    }
    exports2.keyBy = keyBy;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/array/lastIndexOf.js
var require_lastIndexOf = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/array/lastIndexOf.js"(exports2) {
    var require_isArrayLike3 = require_isArrayLike();
    var require_toInteger2 = require_toInteger();
    function lastIndexOf(array, searchElement, fromIndex) {
      if (!require_isArrayLike3.isArrayLike(array) || array.length === 0) return -1;
      const length = array.length;
      let index2 = fromIndex === void 0 ? length - 1 : require_toInteger2.toInteger(fromIndex);
      if (fromIndex !== void 0) index2 = index2 < 0 ? Math.max(length + index2, 0) : Math.min(index2, length - 1);
      if (Number.isNaN(searchElement)) {
        for (let i4 = index2; i4 >= 0; i4--) if (Number.isNaN(array[i4])) return i4;
      }
      return Array.from(array).lastIndexOf(searchElement, index2);
    }
    exports2.lastIndexOf = lastIndexOf;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/array/nth.js
var require_nth = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/array/nth.js"(exports2) {
    var require_isArrayLike3 = require_isArrayLike();
    var require_toInteger2 = require_toInteger();
    function nth3(array, n2 = 0) {
      if (!require_isArrayLike3.isArrayLike(array) || array.length === 0) return;
      n2 = require_toInteger2.toInteger(n2);
      if (n2 < 0) n2 += array.length;
      return array[n2];
    }
    exports2.nth = nth3;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/_internal/compareValues.js
var require_compareValues = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/_internal/compareValues.js"(exports2) {
    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;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/_internal/isKey.js
var require_isKey = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/_internal/isKey.js"(exports2) {
    var require_isSymbol3 = 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 || require_isSymbol3.isSymbol(value)) return true;
      return typeof value === "string" && (regexIsPlainProp.test(value) || !regexIsDeepProp.test(value)) || object != null && Object.hasOwn(object, value);
    }
    exports2.isKey = isKey;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/array/orderBy.js
var require_orderBy = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/array/orderBy.js"(exports2) {
    var require_toPath2 = require_toPath();
    var require_compareValues2 = require_compareValues();
    var require_isKey2 = require_isKey();
    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, path240) => {
        let target2 = object;
        for (let i4 = 0; i4 < path240.length && target2 != null; ++i4) target2 = target2[path240[i4]];
        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) || require_isKey2.isKey(criterion)) return criterion;
        return {
          key: criterion,
          path: require_toPath2.toPath(criterion)
        };
      });
      return collection.map((item) => ({
        original: item,
        criteria: preparedCriteria.map((criterion) => getValueByCriterion(criterion, item))
      })).slice().sort((a2, b) => {
        for (let i4 = 0; i4 < preparedCriteria.length; i4++) {
          const comparedResult = require_compareValues2.compareValues(a2.criteria[i4], b.criteria[i4], orders[i4]);
          if (comparedResult !== 0) return comparedResult;
        }
        return 0;
      }).map((item) => item.original);
    }
    exports2.orderBy = orderBy;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/array/partition.js
var require_partition = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/array/partition.js"(exports2) {
    var require_identity6 = require_identity2();
    var require_isArrayLike3 = require_isArrayLike();
    var require_iteratee2 = require_iteratee();
    function partition3(source, predicate = require_identity6.identity) {
      if (!source) return [[], []];
      const collection = require_isArrayLike3.isArrayLike(source) ? source : Object.values(source);
      predicate = require_iteratee2.iteratee(predicate);
      const matched = [];
      const unmatched = [];
      for (let i4 = 0; i4 < collection.length; i4++) {
        const value = collection[i4];
        if (predicate(value)) matched.push(value);
        else unmatched.push(value);
      }
      return [matched, unmatched];
    }
    exports2.partition = partition3;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/array/pull.js
var require_pull = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/array/pull.js"(exports2) {
    function pull(arr, valuesToRemove) {
      const valuesSet = new Set(valuesToRemove);
      let resultIndex = 0;
      for (let i4 = 0; i4 < arr.length; i4++) {
        if (valuesSet.has(arr[i4])) continue;
        if (!Object.hasOwn(arr, i4)) {
          delete arr[resultIndex++];
          continue;
        }
        arr[resultIndex++] = arr[i4];
      }
      arr.length = resultIndex;
      return arr;
    }
    exports2.pull = pull;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/array/pull.js
var require_pull2 = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/array/pull.js"(exports2) {
    var require_pull3 = require_pull();
    function pull(arr, ...valuesToRemove) {
      return require_pull3.pull(arr, valuesToRemove);
    }
    exports2.pull = pull;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/array/pullAll.js
var require_pullAll = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/array/pullAll.js"(exports2) {
    var require_pull3 = require_pull();
    function pullAll(arr, valuesToRemove = []) {
      return require_pull3.pull(arr, Array.from(valuesToRemove));
    }
    exports2.pullAll = pullAll;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/array/pullAllBy.js
var require_pullAllBy = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/array/pullAllBy.js"(exports2) {
    var require_iteratee2 = require_iteratee();
    function pullAllBy(arr, valuesToRemove, _getValue) {
      const getValue = require_iteratee2.iteratee(_getValue);
      const valuesSet = new Set(Array.from(valuesToRemove).map((x3) => getValue(x3)));
      let resultIndex = 0;
      for (let i4 = 0; i4 < arr.length; i4++) {
        const value = getValue(arr[i4]);
        if (valuesSet.has(value)) continue;
        if (!Object.hasOwn(arr, i4)) {
          delete arr[resultIndex++];
          continue;
        }
        arr[resultIndex++] = arr[i4];
      }
      arr.length = resultIndex;
      return arr;
    }
    exports2.pullAllBy = pullAllBy;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/_internal/copyArray.js
var require_copyArray = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/_internal/copyArray.js"(exports2) {
    function copyArray(source, array) {
      const length = source.length;
      if (array == null) array = Array(length);
      for (let i4 = 0; i4 < length; i4++) array[i4] = source[i4];
      return array;
    }
    exports2.default = copyArray;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/array/pullAllWith.js
var require_pullAllWith = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/array/pullAllWith.js"(exports2) {
    var require_eq3 = require_eq2();
    var require_copyArray2 = require_copyArray();
    function pullAllWith(array, values, comparator) {
      if (array?.length == null || values?.length == null) return array;
      if (array === values) values = require_copyArray2.default(values);
      let resultLength = 0;
      if (comparator == null) comparator = (a2, b) => require_eq3.eq(a2, b);
      const valuesArray = Array.isArray(values) ? values : Array.from(values);
      const hasUndefined = valuesArray.includes(void 0);
      for (let i4 = 0; i4 < array.length; i4++) {
        if (i4 in array) {
          if (!valuesArray.some((value) => comparator(array[i4], value))) array[resultLength++] = array[i4];
          continue;
        }
        if (!hasUndefined) delete array[resultLength++];
      }
      array.length = resultLength;
      return array;
    }
    exports2.pullAllWith = pullAllWith;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/object/at.js
var require_at = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/object/at.js"(exports2) {
    var require_isArrayLike3 = require_isArrayLike();
    var require_get4 = require_get();
    var require_isString3 = require_isString();
    function at(object, ...paths3) {
      if (paths3.length === 0) return [];
      const allPaths = [];
      for (let i4 = 0; i4 < paths3.length; i4++) {
        const path240 = paths3[i4];
        if (!require_isArrayLike3.isArrayLike(path240) || require_isString3.isString(path240)) {
          allPaths.push(path240);
          continue;
        }
        for (let j2 = 0; j2 < path240.length; j2++) allPaths.push(path240[j2]);
      }
      const result2 = [];
      for (let i4 = 0; i4 < allPaths.length; i4++) result2.push(require_get4.get(object, allPaths[i4]));
      return result2;
    }
    exports2.at = at;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/object/unset.js
var require_unset = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/object/unset.js"(exports2) {
    var require_isUnsafeProperty2 = require_isUnsafeProperty();
    var require_isDeepKey2 = require_isDeepKey();
    var require_toKey2 = require_toKey();
    var require_toPath2 = require_toPath();
    var require_get4 = require_get();
    function unset(obj, path240) {
      if (obj == null) return true;
      switch (typeof path240) {
        case "symbol":
        case "number":
        case "object":
          if (Array.isArray(path240)) return unsetWithPath(obj, path240);
          if (typeof path240 === "number") path240 = require_toKey2.toKey(path240);
          else if (typeof path240 === "object") if (Object.is(path240?.valueOf(), -0)) path240 = "-0";
          else path240 = String(path240);
          if (require_isUnsafeProperty2.isUnsafeProperty(path240)) return false;
          if (obj?.[path240] === void 0) return true;
          try {
            delete obj[path240];
            return true;
          } catch {
            return false;
          }
        case "string":
          if (obj?.[path240] === void 0 && require_isDeepKey2.isDeepKey(path240) && !Object.hasOwn(obj, path240)) return unsetWithPath(obj, require_toPath2.toPath(path240));
          if (require_isUnsafeProperty2.isUnsafeProperty(path240)) return false;
          try {
            delete obj[path240];
            return true;
          } catch {
            return false;
          }
      }
    }
    function unsetWithPath(obj, path240) {
      const parent = path240.length === 1 ? obj : require_get4.get(obj, path240.slice(0, -1));
      const lastKey = path240[path240.length - 1];
      if (parent?.[lastKey] === void 0) return true;
      if (require_isUnsafeProperty2.isUnsafeProperty(lastKey)) return false;
      try {
        delete parent[lastKey];
        return true;
      } catch {
        return false;
      }
    }
    exports2.unset = unset;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/array/pullAt.js
var require_pullAt = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/array/pullAt.js"(exports2) {
    var require_isArray2 = require_isArray();
    var require_toKey2 = require_toKey();
    var require_toPath2 = require_toPath();
    var require_isIndex2 = require_isIndex();
    var require_flattenDepth2 = require_flattenDepth();
    var require_isKey2 = require_isKey();
    var require_at2 = require_at();
    var require_unset2 = require_unset();
    function pullAt(array, ..._indices) {
      const indices = require_flattenDepth2.flattenDepth(_indices, 1);
      if (!array) return Array(indices.length);
      const result2 = require_at2.at(array, indices);
      const indicesToPull = indices.map((index2) => require_isIndex2.isIndex(index2, array.length) ? Number(index2) : index2).sort((a2, b) => b - a2);
      for (const index2 of new Set(indicesToPull)) {
        if (require_isIndex2.isIndex(index2, array.length)) {
          Array.prototype.splice.call(array, index2, 1);
          continue;
        }
        if (require_isKey2.isKey(index2, array)) {
          delete array[require_toKey2.toKey(index2)];
          continue;
        }
        const path240 = require_isArray2.isArray(index2) ? index2 : require_toPath2.toPath(index2);
        require_unset2.unset(array, path240);
      }
      return result2;
    }
    exports2.pullAt = pullAt;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/array/reduceRight.js
var require_reduceRight = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/array/reduceRight.js"(exports2) {
    var require_identity6 = require_identity2();
    var require_range6 = require_range2();
    var require_isArrayLike3 = require_isArrayLike();
    function reduceRight(collection, iteratee = require_identity6.identity, accumulator) {
      const hasAccumulator = arguments.length >= 3;
      if (!collection) return accumulator;
      let keys4;
      let startIndex;
      if (require_isArrayLike3.isArrayLike(collection)) {
        keys4 = require_range6.range(0, collection.length).reverse();
        if (!hasAccumulator && collection.length > 0) {
          accumulator = collection[collection.length - 1];
          startIndex = 1;
        } else startIndex = 0;
      } else {
        keys4 = Object.keys(collection).reverse();
        if (!hasAccumulator && keys4.length > 0) {
          accumulator = collection[keys4[0]];
          startIndex = 1;
        } else startIndex = 0;
      }
      for (let i4 = startIndex; i4 < keys4.length; i4++) {
        const key = keys4[i4];
        const value = collection[key];
        accumulator = iteratee(accumulator, value, key, collection);
      }
      return accumulator;
    }
    exports2.reduceRight = reduceRight;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/function/negate.js
var require_negate = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/function/negate.js"(exports2) {
    function negate(func) {
      if (typeof func !== "function") throw new TypeError("Expected a function");
      return function(...args) {
        return !func.apply(this, args);
      };
    }
    exports2.negate = negate;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/array/reject.js
var require_reject = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/array/reject.js"(exports2) {
    var require_identity6 = require_identity2();
    var require_iteratee2 = require_iteratee();
    var require_filter4 = require_filter();
    var require_negate3 = require_negate();
    function reject3(source, predicate = require_identity6.identity) {
      return require_filter4.filter(source, require_negate3.negate(require_iteratee2.iteratee(predicate)));
    }
    exports2.reject = reject3;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/array/remove.js
var require_remove3 = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/array/remove.js"(exports2) {
    function remove(arr, shouldRemoveElement) {
      const originalArr = arr.slice();
      const removed = [];
      let resultIndex = 0;
      for (let i4 = 0; i4 < arr.length; i4++) {
        if (shouldRemoveElement(arr[i4], i4, originalArr)) {
          removed.push(arr[i4]);
          continue;
        }
        if (!Object.hasOwn(arr, i4)) {
          delete arr[resultIndex++];
          continue;
        }
        arr[resultIndex++] = arr[i4];
      }
      arr.length = resultIndex;
      return removed;
    }
    exports2.remove = remove;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/array/remove.js
var require_remove4 = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/array/remove.js"(exports2) {
    var require_remove5 = require_remove3();
    var require_identity6 = require_identity2();
    var require_iteratee2 = require_iteratee();
    function remove(arr, shouldRemoveElement = require_identity6.identity) {
      return require_remove5.remove(arr, require_iteratee2.iteratee(shouldRemoveElement));
    }
    exports2.remove = remove;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/array/reverse.js
var require_reverse2 = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/array/reverse.js"(exports2) {
    function reverse3(array) {
      if (array == null) return array;
      return array.reverse();
    }
    exports2.reverse = reverse3;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/array/sample.js
var require_sample = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/array/sample.js"(exports2) {
    function sample(arr) {
      return arr[Math.floor(Math.random() * arr.length)];
    }
    exports2.sample = sample;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/array/sample.js
var require_sample2 = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/array/sample.js"(exports2) {
    var require_sample4 = require_sample();
    var require_toArray4 = require_toArray();
    var require_isArrayLike3 = require_isArrayLike();
    function sample(collection) {
      if (collection == null) return;
      if (require_isArrayLike3.isArrayLike(collection)) return require_sample4.sample(require_toArray4.toArray(collection));
      return require_sample4.sample(Object.values(collection));
    }
    exports2.sample = sample;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/math/clamp.js
var require_clamp = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/math/clamp.js"(exports2) {
    var require_toNumber2 = require_toNumber();
    function clamp2(value, bound1, bound2) {
      if (bound2 === void 0) {
        bound2 = bound1;
        bound1 = void 0;
      }
      if (bound2 !== void 0) {
        bound2 = require_toNumber2.toNumber(bound2);
        value = Math.min(value, Number.isNaN(bound2) ? 0 : bound2);
      }
      if (bound1 !== void 0) {
        bound1 = require_toNumber2.toNumber(bound1);
        value = Math.max(value, Number.isNaN(bound1) ? 0 : bound1);
      }
      return value;
    }
    exports2.clamp = clamp2;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/predicate/isMap.js
var require_isMap2 = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/predicate/isMap.js"(exports2) {
    var require_isMap3 = require_isMap();
    function isMap2(value) {
      return require_isMap3.isMap(value);
    }
    exports2.isMap = isMap2;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/predicate/isSet.js
var require_isSet2 = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/predicate/isSet.js"(exports2) {
    var require_isSet3 = require_isSet();
    function isSet(value) {
      return require_isSet3.isSet(value);
    }
    exports2.isSet = isSet;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/util/toArray.js
var require_toArray2 = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/util/toArray.js"(exports2) {
    var require_isArrayLike3 = require_isArrayLike();
    var require_isMap3 = require_isMap2();
    var require_isSet3 = require_isSet2();
    function toArray2(value) {
      if (value == null) return [];
      if (require_isArrayLike3.isArrayLike(value) || require_isMap3.isMap(value) || require_isSet3.isSet(value)) return Array.from(value);
      if (typeof value === "object") return Object.values(value);
      return [];
    }
    exports2.toArray = toArray2;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/math/random.js
var require_random = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/math/random.js"(exports2) {
    function random2(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 = random2;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/math/randomInt.js
var require_randomInt = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/math/randomInt.js"(exports2) {
    var require_random3 = require_random();
    function randomInt(minimum, maximum) {
      return Math.floor(require_random3.random(minimum, maximum));
    }
    exports2.randomInt = randomInt;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/array/sampleSize.js
var require_sampleSize = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/array/sampleSize.js"(exports2) {
    var require_randomInt2 = 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 index2 = require_randomInt2.randomInt(0, step2 + 1);
        if (selected.has(index2)) index2 = step2;
        selected.add(index2);
        result2[resultIndex] = array[index2];
      }
      return result2;
    }
    exports2.sampleSize = sampleSize;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/array/sampleSize.js
var require_sampleSize2 = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/array/sampleSize.js"(exports2) {
    var require_sampleSize3 = require_sampleSize();
    var require_toInteger2 = require_toInteger();
    var require_isIterateeCall2 = require_isIterateeCall();
    var require_clamp2 = require_clamp();
    var require_toArray4 = require_toArray2();
    function sampleSize(collection, size, guard) {
      const arrayCollection = require_toArray4.toArray(collection);
      if (guard ? require_isIterateeCall2.isIterateeCall(collection, size, guard) : size === void 0) size = 1;
      else size = require_clamp2.clamp(require_toInteger2.toInteger(size), 0, arrayCollection.length);
      return require_sampleSize3.sampleSize(arrayCollection, size);
    }
    exports2.sampleSize = sampleSize;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/predicate/isTypedArray.js
var require_isTypedArray2 = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/predicate/isTypedArray.js"(exports2) {
    var require_isTypedArray3 = require_isTypedArray();
    function isTypedArray(x3) {
      return require_isTypedArray3.isTypedArray(x3);
    }
    exports2.isTypedArray = isTypedArray;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/util/times.js
var require_times = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/util/times.js"(exports2) {
    var require_toInteger2 = require_toInteger();
    function times3(n2, getValue) {
      n2 = require_toInteger2.toInteger(n2);
      if (n2 < 1 || !Number.isSafeInteger(n2)) return [];
      const result2 = new Array(n2);
      for (let i4 = 0; i4 < n2; i4++) result2[i4] = typeof getValue === "function" ? getValue(i4) : i4;
      return result2;
    }
    exports2.times = times3;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/_internal/isPrototype.js
var require_isPrototype = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/_internal/isPrototype.js"(exports2) {
    function isPrototype(value) {
      const constructor = value?.constructor;
      return value === (typeof constructor === "function" ? constructor.prototype : Object.prototype);
    }
    exports2.isPrototype = isPrototype;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/object/keys.js
var require_keys = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/object/keys.js"(exports2) {
    var require_isBuffer3 = require_isBuffer();
    var require_isArrayLike3 = require_isArrayLike();
    var require_isPrototype2 = require_isPrototype();
    var require_isTypedArray3 = require_isTypedArray2();
    var require_times2 = require_times();
    function keys4(object) {
      if (require_isArrayLike3.isArrayLike(object)) return arrayLikeKeys(object);
      const result2 = Object.keys(Object(object));
      if (!require_isPrototype2.isPrototype(object)) return result2;
      return result2.filter((key) => key !== "constructor");
    }
    function arrayLikeKeys(object) {
      const indices = require_times2.times(object.length, (index2) => `${index2}`);
      const filteredKeys = new Set(indices);
      if (require_isBuffer3.isBuffer(object)) {
        filteredKeys.add("offset");
        filteredKeys.add("parent");
      }
      if (require_isTypedArray3.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((index2) => Object.hasOwn(object, index2)), ...inheritedKeys];
    }
    exports2.keys = keys4;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/object/values.js
var require_values = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/object/values.js"(exports2) {
    var require_keys2 = require_keys();
    function values(object) {
      if (object == null) return [];
      const objectKeys = require_keys2.keys(object);
      const result2 = new Array(objectKeys.length);
      for (let i4 = 0; i4 < objectKeys.length; i4++) result2[i4] = object[objectKeys[i4]];
      return result2;
    }
    exports2.values = values;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/predicate/isNil.js
var require_isNil2 = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/predicate/isNil.js"(exports2) {
    function isNil(x3) {
      return x3 == null;
    }
    exports2.isNil = isNil;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/array/shuffle.js
var require_shuffle = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/array/shuffle.js"(exports2) {
    function shuffle(arr) {
      const result2 = arr.slice();
      for (let i4 = result2.length - 1; i4 >= 1; i4--) {
        const j2 = Math.floor(Math.random() * (i4 + 1));
        [result2[i4], result2[j2]] = [result2[j2], result2[i4]];
      }
      return result2;
    }
    exports2.shuffle = shuffle;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/array/shuffle.js
var require_shuffle2 = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/array/shuffle.js"(exports2) {
    var require_shuffle3 = require_shuffle();
    var require_isArray2 = require_isArray();
    var require_isArrayLike3 = require_isArrayLike();
    var require_isObjectLike2 = require_isObjectLike();
    var require_values2 = require_values();
    var require_isNil3 = require_isNil2();
    function shuffle(collection) {
      if (require_isNil3.isNil(collection)) return [];
      if (require_isArray2.isArray(collection)) return require_shuffle3.shuffle(collection);
      if (require_isArrayLike3.isArrayLike(collection)) return require_shuffle3.shuffle(Array.from(collection));
      if (require_isObjectLike2.isObjectLike(collection)) return require_shuffle3.shuffle(require_values2.values(collection));
      return [];
    }
    exports2.shuffle = shuffle;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/_internal/regexMultiByte.js
var require_regexMultiByte = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/_internal/regexMultiByte.js"(exports2) {
    var regexMultiByte = /* @__PURE__ */ new RegExp("[\\u200d\\ud800-\\udfff\\u0300-\\u036f\\ufe20-\\ufe2f\\u20d0-\\u20ff\\ufe0e\\ufe0f]");
    exports2.regexMultiByte = regexMultiByte;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/array/size.js
var require_size = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/array/size.js"(exports2) {
    var require_isNil3 = require_isNil();
    var require_isArrayLike3 = require_isArrayLike();
    var require_regexMultiByte2 = require_regexMultiByte();
    function size(target2) {
      if (require_isNil3.isNil(target2)) return 0;
      if (typeof target2 === "string") return require_regexMultiByte2.regexMultiByte.test(target2) ? Array.from(target2).length : target2.length;
      if (require_isArrayLike3.isArrayLike(target2)) return target2.length;
      if (target2 instanceof Map || target2 instanceof Set) return target2.size;
      return Object.keys(target2).length;
    }
    exports2.size = size;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/array/slice.js
var require_slice = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/array/slice.js"(exports2) {
    var require_isArrayLike3 = require_isArrayLike();
    var require_toInteger2 = require_toInteger();
    var require_isIterateeCall2 = require_isIterateeCall();
    function slice4(array, start, end) {
      if (!require_isArrayLike3.isArrayLike(array)) return [];
      const length = array.length;
      if (end === void 0) end = length;
      else if (typeof end !== "number" && require_isIterateeCall2.isIterateeCall(array, start, end)) {
        start = 0;
        end = length;
      }
      start = require_toInteger2.toInteger(start);
      end = require_toInteger2.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 i4 = 0; i4 < resultLength; ++i4) result2[i4] = array[start + i4];
      return result2;
    }
    exports2.slice = slice4;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/array/some.js
var require_some = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/array/some.js"(exports2) {
    var require_identity6 = require_identity2();
    var require_property2 = require_property();
    var require_matches2 = require_matches();
    var require_matchesProperty2 = require_matchesProperty();
    function some(source, predicate, guard) {
      if (!source) return false;
      if (guard != null) predicate = void 0;
      if (predicate == null) predicate = require_identity6.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 i4 = 0; i4 < keys4.length; i4++) {
              const key = keys4[i4];
              const value = source[key];
              if (predicate(value, key, source)) return true;
            }
            return false;
          }
          for (let i4 = 0; i4 < source.length; i4++) if (predicate(source[i4], i4, source)) return true;
          return false;
        case "object":
          if (Array.isArray(predicate) && predicate.length === 2) {
            const key = predicate[0];
            const value = predicate[1];
            const matchFunc = require_matchesProperty2.matchesProperty(key, value);
            if (Array.isArray(source)) {
              for (let i4 = 0; i4 < source.length; i4++) if (matchFunc(source[i4])) return true;
              return false;
            }
            return values.some(matchFunc);
          } else {
            const matchFunc = require_matches2.matches(predicate);
            if (Array.isArray(source)) {
              for (let i4 = 0; i4 < source.length; i4++) if (matchFunc(source[i4])) return true;
              return false;
            }
            return values.some(matchFunc);
          }
        case "number":
        case "symbol":
        case "string": {
          const propFunc = require_property2.property(predicate);
          if (Array.isArray(source)) {
            for (let i4 = 0; i4 < source.length; i4++) if (propFunc(source[i4])) return true;
            return false;
          }
          return values.some(propFunc);
        }
      }
    }
    exports2.some = some;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/array/sortBy.js
var require_sortBy = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/array/sortBy.js"(exports2) {
    var require_flatten3 = require_flatten();
    var require_isIterateeCall2 = require_isIterateeCall();
    var require_orderBy2 = require_orderBy();
    function sortBy3(collection, ...criteria) {
      const length = criteria.length;
      if (length > 1 && require_isIterateeCall2.isIterateeCall(collection, criteria[0], criteria[1])) criteria = [];
      else if (length > 2 && require_isIterateeCall2.isIterateeCall(criteria[0], criteria[1], criteria[2])) criteria = [criteria[0]];
      return require_orderBy2.orderBy(collection, require_flatten3.flatten(criteria), ["asc"]);
    }
    exports2.sortBy = sortBy3;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/predicate/isNumber.js
var require_isNumber2 = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/predicate/isNumber.js"(exports2) {
    var require_getTag2 = require_getTag();
    require_tags2();
    var require_isObjectLike2 = require_isObjectLike();
    function isNumber(value) {
      return typeof value === "number" || require_isObjectLike2.isObjectLike(value) && require_getTag2.getTag(value) === "[object Number]";
    }
    exports2.isNumber = isNumber;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/predicate/isNaN.js
var require_isNaN = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/predicate/isNaN.js"(exports2) {
    var require_isNumber3 = require_isNumber2();
    function isNaN2(value) {
      return require_isNumber3.isNumber(value) && Number.isNaN(Number(value));
    }
    exports2.isNaN = isNaN2;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/array/sortedIndexBy.js
var require_sortedIndexBy = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/array/sortedIndexBy.js"(exports2) {
    var require_isNull3 = require_isNull();
    var require_isUndefined3 = require_isUndefined();
    var require_iteratee2 = require_iteratee();
    var require_isSymbol3 = require_isSymbol();
    var require_identity6 = require_identity3();
    var require_isNil3 = require_isNil2();
    var require_isNaN3 = require_isNaN();
    var MAX_ARRAY_INDEX = 4294967294;
    function sortedIndexBy(array, value, iteratee$1 = require_identity6.identity, retHighest) {
      if (require_isNil3.isNil(array) || array.length === 0) return 0;
      let low = 0;
      let high = array.length;
      const iterateeFunction = require_iteratee2.iteratee(iteratee$1);
      const transformedValue = iterateeFunction(value);
      const valIsNaN = require_isNaN3.isNaN(transformedValue);
      const valIsNull = require_isNull3.isNull(transformedValue);
      const valIsSymbol = require_isSymbol3.isSymbol(transformedValue);
      const valIsUndefined = require_isUndefined3.isUndefined(transformedValue);
      while (low < high) {
        let setLow;
        const mid = Math.floor((low + high) / 2);
        const computed = iterateeFunction(array[mid]);
        const othIsDefined = !require_isUndefined3.isUndefined(computed);
        const othIsNull = require_isNull3.isNull(computed);
        const othIsReflexive = !require_isNaN3.isNaN(computed);
        const othIsSymbol = require_isSymbol3.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;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/array/sortedIndex.js
var require_sortedIndex = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/array/sortedIndex.js"(exports2) {
    var require_isNil3 = require_isNil();
    var require_isNull3 = require_isNull();
    var require_isSymbol3 = require_isSymbol2();
    var require_isNumber3 = require_isNumber2();
    var require_sortedIndexBy2 = require_sortedIndexBy();
    var HALF_MAX_ARRAY_LENGTH = 2147483647;
    function sortedIndex(array, value) {
      if (require_isNil3.isNil(array)) return 0;
      let low = 0;
      let high = array.length;
      if (require_isNumber3.isNumber(value) && value === value && high <= HALF_MAX_ARRAY_LENGTH) {
        while (low < high) {
          const mid = low + high >>> 1;
          const compute = array[mid];
          if (!require_isNull3.isNull(compute) && !require_isSymbol3.isSymbol(compute) && compute < value) low = mid + 1;
          else high = mid;
        }
        return high;
      }
      return require_sortedIndexBy2.sortedIndexBy(array, value, (value2) => value2);
    }
    exports2.sortedIndex = sortedIndex;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/array/sortedIndexOf.js
var require_sortedIndexOf = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/array/sortedIndexOf.js"(exports2) {
    var require_eq3 = require_eq2();
    var require_sortedIndex2 = require_sortedIndex();
    function sortedIndexOf(array, value) {
      if (!array?.length) return -1;
      const index2 = require_sortedIndex2.sortedIndex(array, value);
      if (index2 < array.length && require_eq3.eq(array[index2], value)) return index2;
      return -1;
    }
    exports2.sortedIndexOf = sortedIndexOf;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/array/sortedLastIndexBy.js
var require_sortedLastIndexBy = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/array/sortedLastIndexBy.js"(exports2) {
    var require_sortedIndexBy2 = require_sortedIndexBy();
    function sortedLastIndexBy(array, value, iteratee) {
      return require_sortedIndexBy2.sortedIndexBy(array, value, iteratee, true);
    }
    exports2.sortedLastIndexBy = sortedLastIndexBy;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/array/sortedLastIndex.js
var require_sortedLastIndex = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/array/sortedLastIndex.js"(exports2) {
    var require_isNil3 = require_isNil();
    var require_isNull3 = require_isNull();
    var require_isSymbol3 = require_isSymbol2();
    var require_isNumber3 = require_isNumber2();
    var require_sortedLastIndexBy2 = require_sortedLastIndexBy();
    var HALF_MAX_ARRAY_LENGTH = 2147483647;
    function sortedLastIndex(array, value) {
      if (require_isNil3.isNil(array)) return 0;
      let high = array.length;
      if (!require_isNumber3.isNumber(value) || Number.isNaN(value) || high > HALF_MAX_ARRAY_LENGTH) return require_sortedLastIndexBy2.sortedLastIndexBy(array, value, (value2) => value2);
      let low = 0;
      while (low < high) {
        const mid = low + high >>> 1;
        const compute = array[mid];
        if (!require_isNull3.isNull(compute) && !require_isSymbol3.isSymbol(compute) && compute <= value) low = mid + 1;
        else high = mid;
      }
      return high;
    }
    exports2.sortedLastIndex = sortedLastIndex;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/array/sortedLastIndexOf.js
var require_sortedLastIndexOf = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/array/sortedLastIndexOf.js"(exports2) {
    var require_eq3 = require_eq2();
    var require_sortedLastIndex2 = require_sortedLastIndex();
    function sortedLastIndexOf(array, value) {
      if (!array?.length) return -1;
      const index2 = require_sortedLastIndex2.sortedLastIndex(array, value) - 1;
      if (index2 >= 0 && require_eq3.eq(array[index2], value)) return index2;
      return -1;
    }
    exports2.sortedLastIndexOf = sortedLastIndexOf;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/array/tail.js
var require_tail = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/array/tail.js"(exports2) {
    function tail2(arr) {
      return arr.slice(1);
    }
    exports2.tail = tail2;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/array/tail.js
var require_tail2 = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/array/tail.js"(exports2) {
    var require_tail3 = require_tail();
    var require_toArray4 = require_toArray();
    var require_isArrayLike3 = require_isArrayLike();
    function tail2(arr) {
      if (!require_isArrayLike3.isArrayLike(arr)) return [];
      return require_tail3.tail(require_toArray4.toArray(arr));
    }
    exports2.tail = tail2;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/array/take.js
var require_take = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/array/take.js"(exports2) {
    function take10(arr, count2) {
      return arr.slice(0, count2);
    }
    exports2.take = take10;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/array/take.js
var require_take2 = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/array/take.js"(exports2) {
    var require_take4 = require_take();
    var require_toArray4 = require_toArray();
    var require_isArrayLike3 = require_isArrayLike();
    var require_toInteger2 = require_toInteger();
    function take10(arr, count2 = 1, guard) {
      count2 = guard || count2 === void 0 ? 1 : require_toInteger2.toInteger(count2);
      if (count2 < 1 || !require_isArrayLike3.isArrayLike(arr)) return [];
      return require_take4.take(require_toArray4.toArray(arr), count2);
    }
    exports2.take = take10;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/array/takeRight.js
var require_takeRight = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/array/takeRight.js"(exports2) {
    function takeRight(arr, count2) {
      if (count2 <= 0 || arr.length === 0) return [];
      return arr.slice(-count2);
    }
    exports2.takeRight = takeRight;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/array/takeRight.js
var require_takeRight2 = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/array/takeRight.js"(exports2) {
    var require_takeRight3 = require_takeRight();
    var require_toArray4 = require_toArray();
    var require_isArrayLike3 = require_isArrayLike();
    var require_toInteger2 = require_toInteger();
    function takeRight(arr, count2 = 1, guard) {
      count2 = guard ? 1 : require_toInteger2.toInteger(count2);
      if (count2 <= 0 || !require_isArrayLike3.isArrayLike(arr)) return [];
      return require_takeRight3.takeRight(require_toArray4.toArray(arr), count2);
    }
    exports2.takeRight = takeRight;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/function/negate.js
var require_negate2 = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/function/negate.js"(exports2) {
    function negate(func) {
      return ((...args) => !func(...args));
    }
    exports2.negate = negate;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/array/takeRightWhile.js
var require_takeRightWhile = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/array/takeRightWhile.js"(exports2) {
    var require_identity6 = require_identity2();
    var require_negate3 = require_negate2();
    var require_toArray4 = require_toArray();
    var require_iteratee2 = require_iteratee();
    var require_isArrayLikeObject2 = require_isArrayLikeObject();
    function takeRightWhile(_array, predicate) {
      if (!require_isArrayLikeObject2.isArrayLikeObject(_array)) return [];
      const array = require_toArray4.toArray(_array);
      const index2 = array.findLastIndex(require_negate3.negate(require_iteratee2.iteratee(predicate ?? require_identity6.identity)));
      return array.slice(index2 + 1);
    }
    exports2.takeRightWhile = takeRightWhile;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/array/takeWhile.js
var require_takeWhile = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/array/takeWhile.js"(exports2) {
    var require_toArray4 = require_toArray();
    var require_iteratee2 = require_iteratee();
    var require_isArrayLikeObject2 = require_isArrayLikeObject();
    var require_identity6 = require_identity3();
    var require_negate3 = require_negate();
    function takeWhile2(array, predicate) {
      if (!require_isArrayLikeObject2.isArrayLikeObject(array)) return [];
      const _array = require_toArray4.toArray(array);
      const index2 = _array.findIndex(require_negate3.negate(require_iteratee2.iteratee(predicate ?? require_identity6.identity)));
      return index2 === -1 ? _array : _array.slice(0, index2);
    }
    exports2.takeWhile = takeWhile2;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/array/union.js
var require_union = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/array/union.js"(exports2) {
    var require_uniq3 = require_uniq();
    var require_isArrayLikeObject2 = require_isArrayLikeObject();
    var require_flatMapDepth2 = require_flatMapDepth();
    function union2(...arrays) {
      const validArrays = arrays.filter(require_isArrayLikeObject2.isArrayLikeObject);
      const flattened = require_flatMapDepth2.flatMapDepth(validArrays, (v) => Array.from(v), 1);
      return require_uniq3.uniq(flattened);
    }
    exports2.union = union2;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/function/ary.js
var require_ary = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/function/ary.js"(exports2) {
    function ary(func, n2) {
      return function(...args) {
        return func.apply(this, args.slice(0, n2));
      };
    }
    exports2.ary = ary;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/array/unionBy.js
var require_unionBy = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/array/unionBy.js"(exports2) {
    var require_last4 = require_last();
    var require_uniq3 = require_uniq();
    var require_uniqBy3 = require_uniqBy();
    var require_ary3 = require_ary();
    var require_iteratee2 = require_iteratee();
    var require_isArrayLikeObject2 = require_isArrayLikeObject();
    var require_flattenArrayLike2 = require_flattenArrayLike();
    function unionBy(...values) {
      const lastValue = require_last4.last(values);
      const flattened = require_flattenArrayLike2.flattenArrayLike(values);
      if (require_isArrayLikeObject2.isArrayLikeObject(lastValue) || lastValue == null) return require_uniq3.uniq(flattened);
      return require_uniqBy3.uniqBy(flattened, require_ary3.ary(require_iteratee2.iteratee(lastValue), 1));
    }
    exports2.unionBy = unionBy;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/array/uniqWith.js
var require_uniqWith = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/array/uniqWith.js"(exports2) {
    function uniqWith(arr, areItemsEqual) {
      const result2 = [];
      for (let i4 = 0; i4 < arr.length; i4++) {
        const item = arr[i4];
        if (result2.every((v) => !areItemsEqual(v, item))) result2.push(item);
      }
      return result2;
    }
    exports2.uniqWith = uniqWith;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/array/unionWith.js
var require_unionWith = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/array/unionWith.js"(exports2) {
    var require_last4 = require_last();
    var require_uniq3 = require_uniq();
    var require_uniqWith3 = require_uniqWith();
    var require_isArrayLikeObject2 = require_isArrayLikeObject();
    var require_flattenArrayLike2 = require_flattenArrayLike();
    function unionWith(...values) {
      const lastValue = require_last4.last(values);
      const flattened = require_flattenArrayLike2.flattenArrayLike(values);
      if (require_isArrayLikeObject2.isArrayLikeObject(lastValue) || lastValue == null) return require_uniq3.uniq(flattened);
      return require_uniqWith3.uniqWith(flattened, lastValue);
    }
    exports2.unionWith = unionWith;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/array/uniqBy.js
var require_uniqBy2 = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/array/uniqBy.js"(exports2) {
    var require_uniqBy3 = require_uniqBy();
    var require_ary3 = require_ary();
    var require_identity6 = require_identity2();
    var require_iteratee2 = require_iteratee();
    var require_isArrayLikeObject2 = require_isArrayLikeObject();
    function uniqBy2(array, iteratee$1 = require_identity6.identity) {
      if (!require_isArrayLikeObject2.isArrayLikeObject(array)) return [];
      return require_uniqBy3.uniqBy(Array.from(array), require_ary3.ary(require_iteratee2.iteratee(iteratee$1), 1));
    }
    exports2.uniqBy = uniqBy2;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/array/uniqWith.js
var require_uniqWith2 = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/array/uniqWith.js"(exports2) {
    var require_uniqWith3 = require_uniqWith();
    var require_isArrayLike3 = require_isArrayLike();
    var require_uniq3 = require_uniq2();
    function uniqWith(arr, comparator) {
      if (!require_isArrayLike3.isArrayLike(arr)) return [];
      if (typeof comparator !== "function") return require_uniq3.uniq(Array.from(arr));
      return require_uniqWith3.uniqWith(Array.from(arr), (kept, candidate) => comparator(candidate, kept));
    }
    exports2.uniqWith = uniqWith;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/array/unzip.js
var require_unzip = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/array/unzip.js"(exports2) {
    function unzip(zipped) {
      let maxLen = 0;
      for (let i4 = 0; i4 < zipped.length; i4++) if (zipped[i4].length > maxLen) maxLen = zipped[i4].length;
      const result2 = new Array(maxLen);
      for (let i4 = 0; i4 < maxLen; i4++) {
        result2[i4] = new Array(zipped.length);
        for (let j2 = 0; j2 < zipped.length; j2++) result2[i4][j2] = zipped[j2][i4];
      }
      return result2;
    }
    exports2.unzip = unzip;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/array/unzip.js
var require_unzip2 = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/array/unzip.js"(exports2) {
    var require_unzip3 = require_unzip();
    var require_isArray2 = require_isArray();
    var require_isArrayLikeObject2 = require_isArrayLikeObject();
    function unzip(array) {
      if (!require_isArrayLikeObject2.isArrayLikeObject(array) || !array.length) return [];
      array = require_isArray2.isArray(array) ? array : Array.from(array);
      array = array.filter((item) => require_isArrayLikeObject2.isArrayLikeObject(item));
      return require_unzip3.unzip(array);
    }
    exports2.unzip = unzip;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/array/unzipWith.js
var require_unzipWith = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/array/unzipWith.js"(exports2) {
    var require_unzip3 = require_unzip();
    var require_isArray2 = require_isArray();
    var require_isArrayLikeObject2 = require_isArrayLikeObject();
    function unzipWith(array, iteratee) {
      if (!require_isArrayLikeObject2.isArrayLikeObject(array) || !array.length) return [];
      const unzipped = require_isArray2.isArray(array) ? require_unzip3.unzip(array) : require_unzip3.unzip(Array.from(array, (value) => Array.from(value)));
      if (!iteratee) return unzipped;
      const result2 = new Array(unzipped.length);
      for (let i4 = 0; i4 < unzipped.length; i4++) {
        const value = unzipped[i4];
        result2[i4] = iteratee(...value);
      }
      return result2;
    }
    exports2.unzipWith = unzipWith;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/array/without.js
var require_without = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/array/without.js"(exports2) {
    var require_difference3 = require_difference();
    function without2(array, ...values) {
      return require_difference3.difference(array, values);
    }
    exports2.without = without2;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/array/without.js
var require_without2 = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/array/without.js"(exports2) {
    var require_without3 = require_without();
    var require_isArrayLikeObject2 = require_isArrayLikeObject();
    function without2(array, ...values) {
      if (!require_isArrayLikeObject2.isArrayLikeObject(array)) return [];
      return require_without3.without(Array.from(array), ...values);
    }
    exports2.without = without2;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/array/xor.js
var require_xor = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/array/xor.js"(exports2) {
    var require_isArrayLikeObject2 = require_isArrayLikeObject();
    var require_toArray4 = require_toArray2();
    function xor2(...arrays) {
      const itemCounts = /* @__PURE__ */ new Map();
      for (let i4 = 0; i4 < arrays.length; i4++) {
        const array = arrays[i4];
        if (!require_isArrayLikeObject2.isArrayLikeObject(array)) continue;
        const itemSet = new Set(require_toArray4.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 = xor2;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/array/windowed.js
var require_windowed = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/array/windowed.js"(exports2) {
    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 i4 = 0; i4 < end; i4 += step2) result2.push(arr.slice(i4, i4 + size));
      return result2;
    }
    exports2.windowed = windowed;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/array/xorBy.js
var require_xorBy = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/array/xorBy.js"(exports2) {
    var require_windowed2 = require_windowed();
    var require_identity6 = require_identity2();
    var require_iteratee2 = require_iteratee();
    var require_isArrayLikeObject2 = require_isArrayLikeObject();
    var require_last4 = require_last2();
    var require_differenceBy3 = require_differenceBy2();
    var require_intersectionBy3 = require_intersectionBy2();
    var require_unionBy2 = require_unionBy();
    function xorBy(...values) {
      const lastValue = require_last4.last(values);
      let mapper = require_identity6.identity;
      if (!require_isArrayLikeObject2.isArrayLikeObject(lastValue) && lastValue != null) {
        mapper = require_iteratee2.iteratee(lastValue);
        values = values.slice(0, -1);
      }
      const arrays = values.filter(require_isArrayLikeObject2.isArrayLikeObject);
      const union2 = require_unionBy2.unionBy(...arrays, mapper);
      const intersections = require_windowed2.windowed(arrays, 2).map(([arr1, arr2]) => require_intersectionBy3.intersectionBy(arr1, arr2, mapper));
      return require_differenceBy3.differenceBy(union2, require_unionBy2.unionBy(...intersections, mapper), mapper);
    }
    exports2.xorBy = xorBy;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/array/xorWith.js
var require_xorWith = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/array/xorWith.js"(exports2) {
    var require_windowed2 = require_windowed();
    var require_isArrayLikeObject2 = require_isArrayLikeObject();
    var require_last4 = require_last2();
    var require_differenceWith3 = require_differenceWith2();
    var require_intersectionWith3 = require_intersectionWith2();
    var require_unionWith2 = require_unionWith();
    function xorWith(...values) {
      const lastValue = require_last4.last(values);
      let comparator = (a2, b) => a2 === b;
      if (typeof lastValue === "function") {
        comparator = lastValue;
        values = values.slice(0, -1);
      }
      const arrays = values.filter(require_isArrayLikeObject2.isArrayLikeObject);
      const union2 = require_unionWith2.unionWith(...arrays, comparator);
      const intersections = require_windowed2.windowed(arrays, 2).map(([arr1, arr2]) => require_intersectionWith3.intersectionWith(arr1, arr2, comparator));
      return require_differenceWith3.differenceWith(union2, require_unionWith2.unionWith(...intersections, comparator), comparator);
    }
    exports2.xorWith = xorWith;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/array/zip.js
var require_zip = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/array/zip.js"(exports2) {
    function zip(...arrs) {
      let rowCount = 0;
      for (let i4 = 0; i4 < arrs.length; i4++) if (arrs[i4].length > rowCount) rowCount = arrs[i4].length;
      const columnCount = arrs.length;
      const result2 = Array(rowCount);
      for (let i4 = 0; i4 < rowCount; ++i4) {
        const row = Array(columnCount);
        for (let j2 = 0; j2 < columnCount; ++j2) row[j2] = arrs[j2][i4];
        result2[i4] = row;
      }
      return result2;
    }
    exports2.zip = zip;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/array/zip.js
var require_zip2 = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/array/zip.js"(exports2) {
    var require_zip5 = require_zip();
    var require_isArrayLikeObject2 = require_isArrayLikeObject();
    function zip(...arrays) {
      if (!arrays.length) return [];
      return require_zip5.zip(...arrays.filter((group) => require_isArrayLikeObject2.isArrayLikeObject(group)));
    }
    exports2.zip = zip;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/_internal/assignValue.js
var require_assignValue = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/_internal/assignValue.js"(exports2) {
    var require_eq3 = require_eq2();
    var assignValue = (object, key, value) => {
      const objValue = object[key];
      if (!(Object.hasOwn(object, key) && require_eq3.eq(objValue, value)) || value === void 0 && !(key in object)) object[key] = value;
    };
    exports2.assignValue = assignValue;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/array/zipObject.js
var require_zipObject = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/array/zipObject.js"(exports2) {
    var require_assignValue2 = require_assignValue();
    function zipObject(keys4 = [], values = []) {
      const result2 = {};
      for (let i4 = 0; i4 < keys4.length; i4++) require_assignValue2.assignValue(result2, keys4[i4], values[i4]);
      return result2;
    }
    exports2.zipObject = zipObject;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/object/updateWith.js
var require_updateWith = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/object/updateWith.js"(exports2) {
    var require_isUnsafeProperty2 = require_isUnsafeProperty();
    var require_toKey2 = require_toKey();
    var require_toPath2 = require_toPath();
    var require_get4 = require_get();
    var require_isObject3 = require_isObject();
    var require_isIndex2 = require_isIndex();
    var require_isKey2 = require_isKey();
    var require_assignValue2 = require_assignValue();
    function updateWith(obj, path240, updater, customizer) {
      if (obj == null && !require_isObject3.isObject(obj)) return obj;
      let resolvedPath;
      if (require_isKey2.isKey(path240, obj)) resolvedPath = [path240];
      else if (Array.isArray(path240)) resolvedPath = path240;
      else resolvedPath = require_toPath2.toPath(path240);
      const updateValue = updater(require_get4.get(obj, resolvedPath));
      let current = obj;
      for (let i4 = 0; i4 < resolvedPath.length && current != null; i4++) {
        const key = require_toKey2.toKey(resolvedPath[i4]);
        if (require_isUnsafeProperty2.isUnsafeProperty(key)) continue;
        let newValue;
        if (i4 === resolvedPath.length - 1) newValue = updateValue;
        else {
          const objValue = current[key];
          const customizerResult = customizer?.(objValue, key, obj);
          newValue = customizerResult !== void 0 ? customizerResult : require_isObject3.isObject(objValue) ? objValue : require_isIndex2.isIndex(resolvedPath[i4 + 1]) ? [] : {};
        }
        require_assignValue2.assignValue(current, key, newValue);
        current = current[key];
      }
      return obj;
    }
    exports2.updateWith = updateWith;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/object/set.js
var require_set3 = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/object/set.js"(exports2) {
    var require_updateWith2 = require_updateWith();
    function set2(obj, path240, value) {
      return require_updateWith2.updateWith(obj, path240, () => value, () => void 0);
    }
    exports2.set = set2;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/array/zipObjectDeep.js
var require_zipObjectDeep = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/array/zipObjectDeep.js"(exports2) {
    var require_zip5 = require_zip();
    var require_isArrayLike3 = require_isArrayLike();
    var require_set5 = require_set3();
    function zipObjectDeep(keys4, values) {
      const result2 = {};
      if (!require_isArrayLike3.isArrayLike(keys4)) return result2;
      if (!require_isArrayLike3.isArrayLike(values)) values = [];
      const zipped = require_zip5.zip(Array.from(keys4), Array.from(values));
      for (let i4 = 0; i4 < zipped.length; i4++) {
        const [key, value] = zipped[i4];
        if (key != null) require_set5.set(result2, key, value);
      }
      return result2;
    }
    exports2.zipObjectDeep = zipObjectDeep;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/array/zipWith.js
var require_zipWith = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/array/zipWith.js"(exports2) {
    var require_isFunction4 = require_isFunction();
    var require_unzip3 = require_unzip2();
    function zipWith3(...combine) {
      let iteratee = combine.pop();
      if (!require_isFunction4.isFunction(iteratee)) {
        combine.push(iteratee);
        iteratee = void 0;
      }
      if (!combine?.length) return [];
      const result2 = require_unzip3.unzip(combine);
      if (iteratee == null) return result2;
      return result2.map((group) => iteratee(...group));
    }
    exports2.zipWith = zipWith3;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/function/after.js
var require_after = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/function/after.js"(exports2) {
    var require_toInteger2 = require_toInteger();
    function after(n2, func) {
      if (typeof func !== "function") throw new TypeError("Expected a function");
      n2 = require_toInteger2.toInteger(n2);
      return function(...args) {
        if (--n2 < 1) return func.apply(this, args);
      };
    }
    exports2.after = after;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/function/ary.js
var require_ary2 = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/function/ary.js"(exports2) {
    var require_ary3 = require_ary();
    function ary(func, n2 = func.length, guard) {
      if (guard) n2 = func.length;
      if (Number.isNaN(n2) || n2 < 0) n2 = 0;
      return require_ary3.ary(func, n2);
    }
    exports2.ary = ary;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/function/attempt.js
var require_attempt = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/function/attempt.js"(exports2) {
    function attempt(func, ...args) {
      try {
        return func(...args);
      } catch (e) {
        return e instanceof Error ? e : new Error(e);
      }
    }
    exports2.attempt = attempt;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/function/before.js
var require_before = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/function/before.js"(exports2) {
    var require_toInteger2 = require_toInteger();
    function before(n2, func) {
      if (typeof func !== "function") throw new TypeError("Expected a function");
      let result2;
      n2 = require_toInteger2.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;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/function/bind.js
var require_bind = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/function/bind.js"(exports2) {
    function bind3(func, thisObj, ...partialArgs) {
      const bound = function(...providedArgs) {
        const args = [];
        let startIndex = 0;
        for (let i4 = 0; i4 < partialArgs.length; i4++) {
          const arg = partialArgs[i4];
          if (arg === bind3.placeholder) args.push(providedArgs[startIndex++]);
          else args.push(arg);
        }
        for (let i4 = startIndex; i4 < providedArgs.length; i4++) args.push(providedArgs[i4]);
        if (this instanceof bound) return new func(...args);
        return func.apply(thisObj, args);
      };
      return bound;
    }
    bind3.placeholder = /* @__PURE__ */ Symbol("bind.placeholder");
    exports2.bind = bind3;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/function/bindKey.js
var require_bindKey = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/function/bindKey.js"(exports2) {
    function bindKey(object, key, ...partialArgs) {
      const bound = function(...providedArgs) {
        const args = [];
        let startIndex = 0;
        for (let i4 = 0; i4 < partialArgs.length; i4++) {
          const arg = partialArgs[i4];
          if (arg === bindKey.placeholder) args.push(providedArgs[startIndex++]);
          else args.push(arg);
        }
        for (let i4 = startIndex; i4 < providedArgs.length; i4++) args.push(providedArgs[i4]);
        if (this instanceof bound) return new object[key](...args);
        return object[key].apply(object, args);
      };
      return bound;
    }
    bindKey.placeholder = /* @__PURE__ */ Symbol("bindKey.placeholder");
    exports2.bindKey = bindKey;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/function/curry.js
var require_curry = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/function/curry.js"(exports2) {
    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 i4 = 0; i4 < partialArgs.length; i4++) {
        const arg = partialArgs[i4];
        if (arg === curry.placeholder && startIndex < providedArgs.length) args.push(providedArgs[startIndex++]);
        else args.push(arg);
      }
      for (let i4 = startIndex; i4 < providedArgs.length; i4++) args.push(providedArgs[i4]);
      return args;
    }
    var curryPlaceholder = /* @__PURE__ */ Symbol("curry.placeholder");
    curry.placeholder = curryPlaceholder;
    exports2.curry = curry;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/function/curryRight.js
var require_curryRight = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/function/curryRight.js"(exports2) {
    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 i4 = 0; i4 < rangeLength; i4++) args.push(providedArgs[providedIndex++]);
      for (let i4 = 0; i4 < partialArgs.length; i4++) {
        const arg = partialArgs[i4];
        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;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/function/debounce.js
var require_debounce = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/function/debounce.js"(exports2) {
    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();
        cancel2();
      };
      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 cancel2 = () => {
        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 = cancel2;
      debounced.flush = flush;
      signal?.addEventListener("abort", cancel2, { once: true });
      return debounced;
    }
    exports2.debounce = debounce;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/function/debounce.js
var require_debounce2 = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/function/debounce.js"(exports2) {
    var require_debounce4 = 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 = require_debounce4.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;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/function/defer.js
var require_defer = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/function/defer.js"(exports2) {
    function defer(func, ...args) {
      if (typeof func !== "function") throw new TypeError("Expected a function");
      return setTimeout(func, 1, ...args);
    }
    exports2.defer = defer;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/function/delay.js
var require_delay = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/function/delay.js"(exports2) {
    var require_toNumber2 = require_toNumber();
    function delay(func, wait, ...args) {
      if (typeof func !== "function") throw new TypeError("Expected a function");
      return setTimeout(func, require_toNumber2.toNumber(wait) || 0, ...args);
    }
    exports2.delay = delay;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/function/flip.js
var require_flip = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/function/flip.js"(exports2) {
    function flip3(func) {
      return function(...args) {
        return func.apply(this, args.reverse());
      };
    }
    exports2.flip = flip3;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/function/flow.js
var require_flow = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/function/flow.js"(exports2) {
    function flow(...funcs) {
      return function(...args) {
        let result2 = funcs.length ? funcs[0].apply(this, args) : args[0];
        for (let i4 = 1; i4 < funcs.length; i4++) result2 = funcs[i4].call(this, result2);
        return result2;
      };
    }
    exports2.flow = flow;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/function/flow.js
var require_flow2 = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/function/flow.js"(exports2) {
    var require_flatten3 = require_flatten();
    var require_flow3 = require_flow();
    function flow(...funcs) {
      const flattenFuncs = require_flatten3.flatten(funcs, 1);
      if (flattenFuncs.some((func) => typeof func !== "function")) throw new TypeError("Expected a function");
      return require_flow3.flow(...flattenFuncs);
    }
    exports2.flow = flow;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/function/flowRight.js
var require_flowRight = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/function/flowRight.js"(exports2) {
    var require_flow3 = require_flow();
    function flowRight(...funcs) {
      return require_flow3.flow(...funcs.reverse());
    }
    exports2.flowRight = flowRight;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/function/flowRight.js
var require_flowRight2 = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/function/flowRight.js"(exports2) {
    var require_flatten3 = require_flatten();
    var require_flowRight3 = require_flowRight();
    function flowRight(...funcs) {
      const flattenFuncs = require_flatten3.flatten(funcs, 1);
      if (flattenFuncs.some((func) => typeof func !== "function")) throw new TypeError("Expected a function");
      return require_flowRight3.flowRight(...flattenFuncs);
    }
    exports2.flowRight = flowRight;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/function/memoize.js
var require_memoize = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/function/memoize.js"(exports2) {
    function memoize2(func, resolver) {
      if (typeof func !== "function" || resolver != null && typeof resolver !== "function") throw new TypeError("Expected a function");
      const memoized2 = function(...args) {
        const key = resolver ? resolver.apply(this, args) : args[0];
        const cache = memoized2.cache;
        if (cache.has(key)) return cache.get(key);
        const result2 = func.apply(this, args);
        memoized2.cache = cache.set(key, result2) || cache;
        return result2;
      };
      memoized2.cache = new (memoize2.Cache || Map)();
      return memoized2;
    }
    memoize2.Cache = Map;
    exports2.memoize = memoize2;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/function/nthArg.js
var require_nthArg = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/function/nthArg.js"(exports2) {
    var require_toInteger2 = require_toInteger();
    function nthArg(n2 = 0) {
      return function(...args) {
        return args.at(require_toInteger2.toInteger(n2));
      };
    }
    exports2.nthArg = nthArg;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/function/once.js
var require_once = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/function/once.js"(exports2) {
    function once11(func) {
      let called = false;
      let cache;
      return function(...args) {
        if (!called) {
          called = true;
          cache = func(...args);
        }
        return cache;
      };
    }
    exports2.once = once11;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/function/once.js
var require_once2 = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/function/once.js"(exports2) {
    var require_once3 = require_once();
    function once11(func) {
      return require_once3.once(func);
    }
    exports2.once = once11;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/function/overArgs.js
var require_overArgs = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/function/overArgs.js"(exports2) {
    var require_identity6 = require_identity2();
    var require_iteratee2 = 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 i4 = 0; i4 < length; i4++) transformedArgs[i4] = require_iteratee2.iteratee(transforms[i4] ?? require_identity6.identity).call(this, args[i4]);
        return func.apply(this, transformedArgs);
      };
    }
    exports2.overArgs = overArgs;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/function/partial.js
var require_partial2 = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/function/partial.js"(exports2) {
    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;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/function/partial.js
var require_partial3 = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/function/partial.js"(exports2) {
    var require_partial4 = require_partial2();
    function partial(func, ...partialArgs) {
      return require_partial4.partialImpl(func, partial.placeholder, ...partialArgs);
    }
    partial.placeholder = /* @__PURE__ */ Symbol("compat.partial.placeholder");
    exports2.partial = partial;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/function/partialRight.js
var require_partialRight = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/function/partialRight.js"(exports2) {
    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;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/function/partialRight.js
var require_partialRight2 = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/function/partialRight.js"(exports2) {
    var require_partialRight3 = require_partialRight();
    function partialRight(func, ...partialArgs) {
      return require_partialRight3.partialRightImpl(func, partialRight.placeholder, ...partialArgs);
    }
    partialRight.placeholder = /* @__PURE__ */ Symbol("compat.partialRight.placeholder");
    exports2.partialRight = partialRight;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/function/rearg.js
var require_rearg = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/function/rearg.js"(exports2) {
    var require_flatten3 = require_flatten2();
    function rearg(func, ...indices) {
      const flattenIndices = require_flatten3.flatten(indices);
      return function(...args) {
        const reorderedArgs = flattenIndices.map((i4) => args[i4]).slice(0, args.length);
        for (let i4 = reorderedArgs.length; i4 < args.length; i4++) reorderedArgs.push(args[i4]);
        return func.apply(this, reorderedArgs);
      };
    }
    exports2.rearg = rearg;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/function/rest.js
var require_rest = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/function/rest.js"(exports2) {
    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;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/function/rest.js
var require_rest2 = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/function/rest.js"(exports2) {
    var require_rest3 = 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 require_rest3.rest(func, start);
    }
    exports2.rest = rest;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/function/spread.js
var require_spread = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/function/spread.js"(exports2) {
    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;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/function/throttle.js
var require_throttle = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/function/throttle.js"(exports2) {
    var require_debounce4 = require_debounce2();
    function throttle2(func, throttleMs = 0, options = {}) {
      const { leading = true, trailing = true } = options;
      return require_debounce4.debounce(func, throttleMs, {
        leading,
        maxWait: throttleMs,
        trailing
      });
    }
    exports2.throttle = throttle2;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/function/unary.js
var require_unary = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/function/unary.js"(exports2) {
    var require_ary3 = require_ary2();
    function unary(func) {
      return require_ary3.ary(func, 1);
    }
    exports2.unary = unary;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/function/wrap.js
var require_wrap = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/function/wrap.js"(exports2) {
    var require_identity6 = require_identity2();
    var require_isFunction4 = require_isFunction();
    function wrap2(value, wrapper) {
      return function(...args) {
        return (require_isFunction4.isFunction(wrapper) ? wrapper : require_identity6.identity).apply(this, [value, ...args]);
      };
    }
    exports2.wrap = wrap2;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/math/add.js
var require_add = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/math/add.js"(exports2) {
    var require_toString2 = require_toString();
    var require_toNumber2 = require_toNumber();
    function add2(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 = require_toString2.toString(value);
        other = require_toString2.toString(other);
      } else {
        value = require_toNumber2.toNumber(value);
        other = require_toNumber2.toNumber(other);
      }
      return value + other;
    }
    exports2.add = add2;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/_internal/decimalAdjust.js
var require_decimalAdjust = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/_internal/decimalAdjust.js"(exports2) {
    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 && Number.isFinite(Number(number))) {
        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;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/math/ceil.js
var require_ceil = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/math/ceil.js"(exports2) {
    var require_decimalAdjust2 = require_decimalAdjust();
    function ceil(number, precision = 0) {
      return require_decimalAdjust2.decimalAdjust("ceil", number, precision);
    }
    exports2.ceil = ceil;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/math/divide.js
var require_divide = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/math/divide.js"(exports2) {
    var require_toString2 = require_toString();
    var require_toNumber2 = require_toNumber();
    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 = require_toString2.toString(value);
        other = require_toString2.toString(other);
      } else {
        value = require_toNumber2.toNumber(value);
        other = require_toNumber2.toNumber(other);
      }
      return value / other;
    }
    exports2.divide = divide2;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/math/floor.js
var require_floor = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/math/floor.js"(exports2) {
    var require_decimalAdjust2 = require_decimalAdjust();
    function floor(number, precision = 0) {
      return require_decimalAdjust2.decimalAdjust("floor", number, precision);
    }
    exports2.floor = floor;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/math/inRange.js
var require_inRange = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/math/inRange.js"(exports2) {
    var require_toNumber2 = require_toNumber();
    var require_toFinite2 = require_toFinite();
    function inRange2(value, minimum, maximum) {
      minimum = require_toFinite2.toFinite(minimum);
      if (maximum === void 0) {
        maximum = minimum;
        minimum = 0;
      } else maximum = require_toFinite2.toFinite(maximum);
      value = require_toNumber2.toNumber(value);
      return value >= Math.min(minimum, maximum) && value < Math.max(minimum, maximum);
    }
    exports2.inRange = inRange2;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/math/max.js
var require_max = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/math/max.js"(exports2) {
    function max4(items) {
      if (!items || items.length === 0) return;
      let maxResult = void 0;
      for (let i4 = 0; i4 < items.length; i4++) {
        const current = items[i4];
        if (current == null || Number.isNaN(current) || typeof current === "symbol") continue;
        if (maxResult === void 0 || current > maxResult) maxResult = current;
      }
      return maxResult;
    }
    exports2.max = max4;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/math/maxBy.js
var require_maxBy = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/math/maxBy.js"(exports2) {
    var require_identity6 = require_identity2();
    var require_toArray4 = require_toArray();
    var require_iteratee2 = require_iteratee();
    function maxBy(items, iteratee$1 = require_identity6.identity) {
      if (items == null) return;
      const array = require_toArray4.toArray(items);
      if (array.length === 0) return;
      const getValue = require_iteratee2.iteratee(iteratee$1);
      let maxElement;
      let max4;
      for (let i4 = 0; i4 < array.length; i4++) {
        const element = array[i4];
        const current = getValue(element, i4, array);
        if (Number.isNaN(current)) continue;
        if (max4 === void 0 || current > max4) {
          max4 = current;
          maxElement = element;
        }
      }
      return maxElement;
    }
    exports2.maxBy = maxBy;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/math/sumBy.js
var require_sumBy = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/math/sumBy.js"(exports2) {
    var require_iteratee2 = require_iteratee();
    function sumBy(array, iteratee$1) {
      if (!array || !array.length) return 0;
      if (iteratee$1 != null) iteratee$1 = require_iteratee2.iteratee(iteratee$1);
      let result2 = void 0;
      for (let i4 = 0; i4 < array.length; i4++) {
        const current = iteratee$1 ? iteratee$1(array[i4]) : array[i4];
        if (current !== void 0) if (result2 === void 0) result2 = current;
        else result2 += current;
      }
      return result2;
    }
    exports2.sumBy = sumBy;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/math/sum.js
var require_sum = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/math/sum.js"(exports2) {
    var require_sumBy3 = require_sumBy();
    function sum(array) {
      return require_sumBy3.sumBy(array);
    }
    exports2.sum = sum;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/math/mean.js
var require_mean = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/math/mean.js"(exports2) {
    var require_sum2 = require_sum();
    function mean(nums) {
      const length = nums ? nums.length : 0;
      return length === 0 ? NaN : require_sum2.sum(nums) / length;
    }
    exports2.mean = mean;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/math/sumBy.js
var require_sumBy2 = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/math/sumBy.js"(exports2) {
    function sumBy(items, getValue) {
      let result2 = 0;
      for (let i4 = 0; i4 < items.length; i4++) result2 += getValue(items[i4], i4);
      return result2;
    }
    exports2.sumBy = sumBy;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/math/meanBy.js
var require_meanBy = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/math/meanBy.js"(exports2) {
    var require_sumBy3 = require_sumBy2();
    function meanBy(items, getValue) {
      return require_sumBy3.sumBy(items, (item) => getValue(item)) / items.length;
    }
    exports2.meanBy = meanBy;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/math/meanBy.js
var require_meanBy2 = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/math/meanBy.js"(exports2) {
    var require_identity6 = require_identity2();
    var require_meanBy3 = require_meanBy();
    var require_iteratee2 = require_iteratee();
    function meanBy(items, iteratee$1) {
      if (items == null) return NaN;
      return require_meanBy3.meanBy(Array.from(items), require_iteratee2.iteratee(iteratee$1 ?? require_identity6.identity));
    }
    exports2.meanBy = meanBy;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/math/min.js
var require_min = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/math/min.js"(exports2) {
    function min(items) {
      if (!items || items.length === 0) return;
      let minResult = void 0;
      for (let i4 = 0; i4 < items.length; i4++) {
        const current = items[i4];
        if (current == null || Number.isNaN(current) || typeof current === "symbol") continue;
        if (minResult === void 0 || current < minResult) minResult = current;
      }
      return minResult;
    }
    exports2.min = min;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/math/minBy.js
var require_minBy = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/math/minBy.js"(exports2) {
    var require_identity6 = require_identity2();
    var require_toArray4 = require_toArray();
    var require_iteratee2 = require_iteratee();
    function minBy(items, iteratee$1 = require_identity6.identity) {
      if (items == null) return;
      const array = require_toArray4.toArray(items);
      if (array.length === 0) return;
      const getValue = require_iteratee2.iteratee(iteratee$1);
      let minElement;
      let min;
      for (let i4 = 0; i4 < array.length; i4++) {
        const element = array[i4];
        const current = getValue(element, i4, array);
        if (Number.isNaN(current)) continue;
        if (min === void 0 || current < min) {
          min = current;
          minElement = element;
        }
      }
      return minElement;
    }
    exports2.minBy = minBy;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/math/multiply.js
var require_multiply = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/math/multiply.js"(exports2) {
    var require_toString2 = require_toString();
    var require_toNumber2 = require_toNumber();
    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 = require_toString2.toString(value);
        other = require_toString2.toString(other);
      } else {
        value = require_toNumber2.toNumber(value);
        other = require_toNumber2.toNumber(other);
      }
      return value * other;
    }
    exports2.multiply = multiply;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/math/parseInt.js
var require_parseInt = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/math/parseInt.js"(exports2) {
    var require_toString2 = require_toString();
    function parseInt2(string, radix = 0, guard) {
      if (guard) radix = 0;
      return Number.parseInt(require_toString2.toString(string), radix);
    }
    exports2.parseInt = parseInt2;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/math/random.js
var require_random2 = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/math/random.js"(exports2) {
    var require_random3 = require_random();
    var require_randomInt2 = require_randomInt();
    var require_clamp2 = require_clamp();
    function random2(...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];
            break;
          } 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") maximum = Number(maximum);
      if (!minimum) minimum = 0;
      if (!maximum) maximum = 0;
      if (minimum > maximum) [minimum, maximum] = [maximum, minimum];
      if (!floating && (!Number.isInteger(minimum) || !Number.isInteger(maximum))) floating = true;
      minimum = require_clamp2.clamp(minimum, -Number.MAX_SAFE_INTEGER, Number.MAX_SAFE_INTEGER);
      maximum = require_clamp2.clamp(maximum, -Number.MAX_SAFE_INTEGER, Number.MAX_SAFE_INTEGER);
      if (minimum === maximum) return minimum;
      if (floating) return require_random3.random(minimum, maximum);
      else return require_randomInt2.randomInt(minimum, maximum + 1);
    }
    exports2.random = random2;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/math/range.js
var require_range3 = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/math/range.js"(exports2) {
    var require_toFinite2 = require_toFinite();
    var require_isIterateeCall2 = require_isIterateeCall();
    function range(start, end, step2) {
      if (step2 && typeof step2 !== "number" && require_isIterateeCall2.isIterateeCall(start, end, step2)) end = step2 = void 0;
      start = require_toFinite2.toFinite(start);
      if (end === void 0) {
        end = start;
        start = 0;
      } else end = require_toFinite2.toFinite(end);
      step2 = step2 === void 0 ? start < end ? 1 : -1 : require_toFinite2.toFinite(step2);
      const length = Math.max(Math.ceil((end - start) / (step2 || 1)), 0);
      const result2 = new Array(length);
      for (let index2 = 0; index2 < length; index2++) {
        result2[index2] = start;
        start += step2;
      }
      return result2;
    }
    exports2.range = range;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/math/rangeRight.js
var require_rangeRight = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/math/rangeRight.js"(exports2) {
    var require_toFinite2 = require_toFinite();
    var require_isIterateeCall2 = require_isIterateeCall();
    function rangeRight(start, end, step2) {
      if (step2 && typeof step2 !== "number" && require_isIterateeCall2.isIterateeCall(start, end, step2)) end = step2 = void 0;
      start = require_toFinite2.toFinite(start);
      if (end === void 0) {
        end = start;
        start = 0;
      } else end = require_toFinite2.toFinite(end);
      step2 = step2 === void 0 ? start < end ? 1 : -1 : require_toFinite2.toFinite(step2);
      const length = Math.max(Math.ceil((end - start) / (step2 || 1)), 0);
      const result2 = new Array(length);
      for (let index2 = length - 1; index2 >= 0; index2--) {
        result2[index2] = start;
        start += step2;
      }
      return result2;
    }
    exports2.rangeRight = rangeRight;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/math/round.js
var require_round = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/math/round.js"(exports2) {
    var require_decimalAdjust2 = require_decimalAdjust();
    function round(number, precision = 0) {
      return require_decimalAdjust2.decimalAdjust("round", number, precision);
    }
    exports2.round = round;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/math/subtract.js
var require_subtract = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/math/subtract.js"(exports2) {
    var require_toString2 = require_toString();
    var require_toNumber2 = require_toNumber();
    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 = require_toString2.toString(value);
        other = require_toString2.toString(other);
      } else {
        value = require_toNumber2.toNumber(value);
        other = require_toNumber2.toNumber(other);
      }
      return value - other;
    }
    exports2.subtract = subtract;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/function/noop.js
var require_noop2 = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/function/noop.js"(exports2) {
    function noop5(..._) {
    }
    exports2.noop = noop5;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/object/assign.js
var require_assign = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/object/assign.js"(exports2) {
    var require_eq3 = require_eq2();
    var require_keys2 = require_keys();
    function assign(object, ...sources) {
      for (let i4 = 0; i4 < sources.length; i4++) assignImpl(object, sources[i4]);
      return object;
    }
    function assignImpl(object, source) {
      const keys$1 = require_keys2.keys(source);
      for (let i4 = 0; i4 < keys$1.length; i4++) {
        const key = keys$1[i4];
        if (!(key in object) || !require_eq3.eq(object[key], source[key])) object[key] = source[key];
      }
    }
    exports2.assign = assign;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/object/keysIn.js
var require_keysIn = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/object/keysIn.js"(exports2) {
    var require_isBuffer3 = require_isBuffer();
    var require_isArrayLike3 = require_isArrayLike();
    var require_isPrototype2 = require_isPrototype();
    var require_isTypedArray3 = require_isTypedArray2();
    var require_times2 = require_times();
    function keysIn(object) {
      if (object == null) return [];
      switch (typeof object) {
        case "object":
        case "function":
          if (require_isArrayLike3.isArrayLike(object)) return arrayLikeKeysIn(object);
          if (require_isPrototype2.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) {
      return keysInImpl(object).filter((key) => key !== "constructor");
    }
    function arrayLikeKeysIn(object) {
      const indices = require_times2.times(object.length, (index2) => `${index2}`);
      const filteredKeys = new Set(indices);
      if (require_isBuffer3.isBuffer(object)) {
        filteredKeys.add("offset");
        filteredKeys.add("parent");
      }
      if (require_isTypedArray3.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((index2) => Object.hasOwn(object, index2)), ...inheritedKeys];
    }
    exports2.keysIn = keysIn;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/object/assignIn.js
var require_assignIn = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/object/assignIn.js"(exports2) {
    var require_eq3 = require_eq2();
    var require_keysIn2 = require_keysIn();
    function assignIn(object, ...sources) {
      for (let i4 = 0; i4 < sources.length; i4++) assignInImpl(object, sources[i4]);
      return object;
    }
    function assignInImpl(object, source) {
      const keys4 = require_keysIn2.keysIn(source);
      for (let i4 = 0; i4 < keys4.length; i4++) {
        const key = keys4[i4];
        if (!(key in object) || !require_eq3.eq(object[key], source[key])) object[key] = source[key];
      }
    }
    exports2.assignIn = assignIn;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/object/assignInWith.js
var require_assignInWith = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/object/assignInWith.js"(exports2) {
    var require_eq3 = require_eq2();
    var require_keysIn2 = require_keysIn();
    function assignInWith(object, ...sources) {
      let getValueToAssign = sources[sources.length - 1];
      if (typeof getValueToAssign === "function") sources.pop();
      else getValueToAssign = void 0;
      for (let i4 = 0; i4 < sources.length; i4++) assignInWithImpl(object, sources[i4], getValueToAssign);
      return object;
    }
    function assignInWithImpl(object, source, getValueToAssign) {
      const keys4 = require_keysIn2.keysIn(source);
      for (let i4 = 0; i4 < keys4.length; i4++) {
        const key = keys4[i4];
        const objValue = object[key];
        const srcValue = source[key];
        const newValue = getValueToAssign?.(objValue, srcValue, key, object, source) ?? srcValue;
        if (!(key in object) || !require_eq3.eq(objValue, newValue)) object[key] = newValue;
      }
    }
    exports2.assignInWith = assignInWith;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/object/assignWith.js
var require_assignWith = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/object/assignWith.js"(exports2) {
    var require_eq3 = require_eq2();
    var require_keys2 = require_keys();
    function assignWith(object, ...sources) {
      let getValueToAssign = sources[sources.length - 1];
      if (typeof getValueToAssign === "function") sources.pop();
      else getValueToAssign = void 0;
      for (let i4 = 0; i4 < sources.length; i4++) assignWithImpl(object, sources[i4], getValueToAssign);
      return object;
    }
    function assignWithImpl(object, source, getValueToAssign) {
      const keys$1 = require_keys2.keys(source);
      for (let i4 = 0; i4 < keys$1.length; i4++) {
        const key = keys$1[i4];
        const objValue = object[key];
        const srcValue = source[key];
        const newValue = getValueToAssign?.(objValue, srcValue, key, object, source) ?? srcValue;
        if (!(key in object) || !require_eq3.eq(objValue, newValue)) object[key] = newValue;
      }
    }
    exports2.assignWith = assignWith;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/object/clone.js
var require_clone2 = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/object/clone.js"(exports2) {
    var require_isPrimitive4 = require_isPrimitive();
    var require_getTag2 = require_getTag();
    var require_tags3 = require_tags2();
    var require_isArray2 = require_isArray();
    var require_isTypedArray3 = require_isTypedArray2();
    function clone4(obj) {
      if (require_isPrimitive4.isPrimitive(obj)) return obj;
      const tag = require_getTag2.getTag(obj);
      if (!isCloneableObject(obj)) return {};
      if (require_isArray2.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 (require_isTypedArray3.isTypedArray(obj)) {
        const typedArray = obj;
        const Ctor = typedArray.constructor;
        return new Ctor(typedArray.buffer, typedArray.byteOffset, typedArray.length);
      }
      if (tag === "[object ArrayBuffer]") return new ArrayBuffer(obj.byteLength);
      if (tag === "[object DataView]") {
        const dataView2 = obj;
        const buffer3 = dataView2.buffer;
        const byteOffset = dataView2.byteOffset;
        const byteLength2 = dataView2.byteLength;
        const clonedBuffer = new ArrayBuffer(byteLength2);
        const srcView = new Uint8Array(buffer3, byteOffset, byteLength2);
        new Uint8Array(clonedBuffer).set(srcView);
        return new DataView(clonedBuffer);
      }
      if (tag === "[object Boolean]" || tag === "[object Number]" || tag === "[object String]") {
        const Ctor = obj.constructor;
        const clone5 = new Ctor(obj.valueOf());
        if (tag === "[object String]") cloneStringObjectProperties(clone5, obj);
        else copyOwnProperties(clone5, obj);
        return clone5;
      }
      if (tag === "[object Date]") return new Date(Number(obj));
      if (tag === "[object RegExp]") {
        const regExp = obj;
        const clone5 = new RegExp(regExp.source, regExp.flags);
        clone5.lastIndex = regExp.lastIndex;
        return clone5;
      }
      if (tag === "[object Symbol]") return Object(Symbol.prototype.valueOf.call(obj));
      if (tag === "[object Map]") {
        const map26 = obj;
        const result3 = /* @__PURE__ */ new Map();
        map26.forEach((obj2, key) => {
          result3.set(key, obj2);
        });
        return result3;
      }
      if (tag === "[object Set]") {
        const set2 = obj;
        const result3 = /* @__PURE__ */ new Set();
        set2.forEach((obj2) => {
          result3.add(obj2);
        });
        return result3;
      }
      if (tag === "[object Arguments]") {
        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 (require_getTag2.getTag(object)) {
        case require_tags3.argumentsTag:
        case require_tags3.arrayTag:
        case require_tags3.arrayBufferTag:
        case require_tags3.dataViewTag:
        case require_tags3.booleanTag:
        case require_tags3.dateTag:
        case require_tags3.float32ArrayTag:
        case require_tags3.float64ArrayTag:
        case require_tags3.int8ArrayTag:
        case require_tags3.int16ArrayTag:
        case require_tags3.int32ArrayTag:
        case require_tags3.mapTag:
        case require_tags3.numberTag:
        case require_tags3.objectTag:
        case require_tags3.regexpTag:
        case require_tags3.setTag:
        case require_tags3.stringTag:
        case require_tags3.symbolTag:
        case require_tags3.uint8ArrayTag:
        case require_tags3.uint8ClampedArrayTag:
        case require_tags3.uint16ArrayTag:
        case require_tags3.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 i4 = 0; i4 < symbols.length; i4++) {
        const symbol = symbols[i4];
        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 proto3 = Object.getPrototypeOf(source);
      if (proto3 !== null) {
        if (typeof source.constructor === "function") Object.setPrototypeOf(target2, proto3);
      }
    }
    exports2.clone = clone4;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/object/cloneWith.js
var require_cloneWith = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/object/cloneWith.js"(exports2) {
    var require_clone6 = require_clone2();
    function cloneWith(value, customizer) {
      if (!customizer) return require_clone6.clone(value);
      const result2 = customizer(value);
      if (result2 !== void 0) return result2;
      return require_clone6.clone(value);
    }
    exports2.cloneWith = cloneWith;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/object/create.js
var require_create = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/object/create.js"(exports2) {
    var require_isObject3 = require_isObject();
    var require_keys2 = require_keys();
    var require_assignValue2 = require_assignValue();
    function create(prototype, properties) {
      const proto3 = require_isObject3.isObject(prototype) ? Object.create(prototype) : {};
      if (properties != null) {
        const propsKeys = require_keys2.keys(properties);
        for (let i4 = 0; i4 < propsKeys.length; i4++) {
          const key = propsKeys[i4];
          const propsValue = properties[key];
          require_assignValue2.assignValue(proto3, key, propsValue);
        }
      }
      return proto3;
    }
    exports2.create = create;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/object/defaults.js
var require_defaults = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/object/defaults.js"(exports2) {
    var require_eq3 = require_eq2();
    var require_isNil3 = require_isNil();
    var require_isIterateeCall2 = require_isIterateeCall();
    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 && require_isIterateeCall2.isIterateeCall(sources[0], sources[1], guard)) length = 1;
      for (let i4 = 0; i4 < length; i4++) {
        if (require_isNil3.isNil(sources[i4])) continue;
        const source = sources[i4];
        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) && require_eq3.eq(value, objectProto[key])) object[key] = source[key];
        }
      }
      return object;
    }
    exports2.defaults = defaults4;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/object/defaultsDeep.js
var require_defaultsDeep = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/object/defaultsDeep.js"(exports2) {
    var require_isPlainObject3 = require_isPlainObject();
    function defaultsDeep(target2, ...sources) {
      target2 = Object(target2);
      for (let i4 = 0; i4 < sources.length; i4++) {
        const source = sources[i4];
        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 (require_isPlainObject3.isPlainObject(sourceValue)) {
        const newObj = {};
        stack.set(sourceValue, newObj);
        defaultsDeepRecursive(newObj, sourceValue, stack);
        return newObj;
      }
      return sourceValue;
    }
    function handleExistingProperty(targetValue, sourceValue, stack) {
      if (require_isPlainObject3.isPlainObject(targetValue) && require_isPlainObject3.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 i4 = 0; i4 < minLength; i4++) if (require_isPlainObject3.isPlainObject(targetArray[i4]) && require_isPlainObject3.isPlainObject(sourceArray[i4])) defaultsDeepRecursive(targetArray[i4], sourceArray[i4], stack);
      for (let i4 = minLength; i4 < sourceArray.length; i4++) targetArray.push(sourceArray[i4]);
    }
    exports2.defaultsDeep = defaultsDeep;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/object/extend.js
var require_extend = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/object/extend.js"() {
    require_assignIn();
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/object/extendWith.js
var require_extendWith = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/object/extendWith.js"() {
    require_assignInWith();
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/object/findKey.js
var require_findKey = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/object/findKey.js"(exports2) {
    function findKey(obj, predicate) {
      return Object.keys(obj).find((key) => predicate(obj[key], key, obj));
    }
    exports2.findKey = findKey;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/object/findKey.js
var require_findKey2 = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/object/findKey.js"(exports2) {
    var require_findKey3 = require_findKey();
    var require_isObject3 = require_isObject();
    var require_iteratee2 = require_iteratee();
    var require_identity6 = require_identity3();
    function findKey(obj, predicate) {
      if (!require_isObject3.isObject(obj)) return;
      const iteratee$1 = require_iteratee2.iteratee(predicate ?? require_identity6.identity);
      return require_findKey3.findKey(obj, iteratee$1);
    }
    exports2.findKey = findKey;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/object/findLastKey.js
var require_findLastKey = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/object/findLastKey.js"(exports2) {
    var require_isObject3 = require_isObject();
    var require_iteratee2 = require_iteratee();
    var require_identity6 = require_identity3();
    function findLastKey(obj, predicate) {
      if (!require_isObject3.isObject(obj)) return;
      const iteratee$1 = require_iteratee2.iteratee(predicate ?? require_identity6.identity);
      return Object.keys(obj).findLast((key) => iteratee$1(obj[key], key, obj));
    }
    exports2.findLastKey = findLastKey;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/object/forIn.js
var require_forIn = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/object/forIn.js"(exports2) {
    var require_identity6 = require_identity2();
    function forIn(object, iteratee = require_identity6.identity) {
      if (object == null) return object;
      for (const key in object) if (iteratee(object[key], key, object) === false) break;
      return object;
    }
    exports2.forIn = forIn;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/object/forInRight.js
var require_forInRight = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/object/forInRight.js"(exports2) {
    var require_identity6 = require_identity2();
    function forInRight(object, iteratee = require_identity6.identity) {
      if (object == null) return object;
      const keys4 = [];
      for (const key in object) keys4.push(key);
      for (let i4 = keys4.length - 1; i4 >= 0; i4--) {
        const key = keys4[i4];
        if (iteratee(object[key], key, object) === false) break;
      }
      return object;
    }
    exports2.forInRight = forInRight;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/object/forOwn.js
var require_forOwn = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/object/forOwn.js"(exports2) {
    var require_identity6 = require_identity2();
    var require_keys2 = require_keys();
    function forOwn(object, iteratee = require_identity6.identity) {
      if (object == null) return object;
      const iterable = Object(object);
      const keys$1 = require_keys2.keys(object);
      for (let i4 = 0; i4 < keys$1.length; ++i4) {
        const key = keys$1[i4];
        if (iteratee(iterable[key], key, iterable) === false) break;
      }
      return object;
    }
    exports2.forOwn = forOwn;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/object/forOwnRight.js
var require_forOwnRight = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/object/forOwnRight.js"(exports2) {
    var require_identity6 = require_identity2();
    var require_keys2 = require_keys();
    function forOwnRight(object, iteratee = require_identity6.identity) {
      if (object == null) return object;
      const iterable = Object(object);
      const keys$1 = require_keys2.keys(object);
      for (let i4 = keys$1.length - 1; i4 >= 0; --i4) {
        const key = keys$1[i4];
        if (iteratee(iterable[key], key, iterable) === false) break;
      }
      return object;
    }
    exports2.forOwnRight = forOwnRight;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/object/fromPairs.js
var require_fromPairs = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/object/fromPairs.js"(exports2) {
    var require_isArrayLike3 = require_isArrayLike();
    function fromPairs(pairs2) {
      if (!require_isArrayLike3.isArrayLike(pairs2)) return {};
      const result2 = {};
      for (let i4 = 0; i4 < pairs2.length; i4++) {
        const [key, value] = pairs2[i4];
        result2[key] = value;
      }
      return result2;
    }
    exports2.fromPairs = fromPairs;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/object/functions.js
var require_functions = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/object/functions.js"(exports2) {
    var require_keys2 = require_keys();
    function functions(object) {
      if (object == null) return [];
      return require_keys2.keys(object).filter((key) => typeof object[key] === "function");
    }
    exports2.functions = functions;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/object/functionsIn.js
var require_functionsIn = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/object/functionsIn.js"(exports2) {
    var require_isFunction4 = require_isFunction();
    function functionsIn(object) {
      if (object == null) return [];
      const result2 = [];
      for (const key in object) if (require_isFunction4.isFunction(object[key])) result2.push(key);
      return result2;
    }
    exports2.functionsIn = functionsIn;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/object/hasIn.js
var require_hasIn = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/object/hasIn.js"(exports2) {
    var require_isDeepKey2 = require_isDeepKey();
    var require_toPath2 = require_toPath();
    var require_isIndex2 = require_isIndex();
    var require_isArguments3 = require_isArguments();
    function hasIn(object, path240) {
      if (object == null) return false;
      let resolvedPath;
      if (Array.isArray(path240)) resolvedPath = path240;
      else if (typeof path240 === "string" && require_isDeepKey2.isDeepKey(path240) && !(path240 in Object(object))) resolvedPath = require_toPath2.toPath(path240);
      else resolvedPath = [path240];
      if (resolvedPath.length === 0) return false;
      let current = object;
      for (let i4 = 0; i4 < resolvedPath.length; i4++) {
        const key = resolvedPath[i4];
        if (current == null || !(key in Object(current))) {
          if (!((Array.isArray(current) || require_isArguments3.isArguments(current)) && require_isIndex2.isIndex(key) && key < current.length)) return false;
        }
        current = current[key];
      }
      return true;
    }
    exports2.hasIn = hasIn;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/object/invert.js
var require_invert = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/object/invert.js"(exports2) {
    function invert2(obj) {
      const result2 = {};
      const keys4 = Object.keys(obj);
      for (let i4 = 0; i4 < keys4.length; i4++) {
        const key = keys4[i4];
        const value = obj[key];
        result2[value] = key;
      }
      return result2;
    }
    exports2.invert = invert2;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/object/invert.js
var require_invert2 = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/object/invert.js"(exports2) {
    var require_invert3 = require_invert();
    function invert2(obj) {
      return require_invert3.invert(obj);
    }
    exports2.invert = invert2;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/object/invertBy.js
var require_invertBy = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/object/invertBy.js"(exports2) {
    var require_identity6 = require_identity2();
    var require_isNil3 = require_isNil();
    var require_iteratee2 = require_iteratee();
    function invertBy(object, iteratee$1) {
      const result2 = {};
      if (require_isNil3.isNil(object)) return result2;
      if (iteratee$1 == null) iteratee$1 = require_identity6.identity;
      const keys4 = Object.keys(object);
      const getString = require_iteratee2.iteratee(iteratee$1);
      for (let i4 = 0; i4 < keys4.length; i4++) {
        const key = keys4[i4];
        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;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/object/mapKeys.js
var require_mapKeys = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/object/mapKeys.js"(exports2) {
    function mapKeys(object, getNewKey) {
      const result2 = {};
      const keys4 = Object.keys(object);
      for (let i4 = 0; i4 < keys4.length; i4++) {
        const key = keys4[i4];
        const value = object[key];
        result2[getNewKey(value, key, object)] = value;
      }
      return result2;
    }
    exports2.mapKeys = mapKeys;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/object/mapKeys.js
var require_mapKeys2 = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/object/mapKeys.js"(exports2) {
    var require_identity6 = require_identity2();
    var require_mapKeys3 = require_mapKeys();
    var require_iteratee2 = require_iteratee();
    function mapKeys(object, getNewKey = require_identity6.identity) {
      if (object == null) return {};
      return require_mapKeys3.mapKeys(object, require_iteratee2.iteratee(getNewKey));
    }
    exports2.mapKeys = mapKeys;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/object/mapValues.js
var require_mapValues = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/object/mapValues.js"(exports2) {
    function mapValues2(object, getNewValue) {
      const result2 = {};
      const keys4 = Object.keys(object);
      for (let i4 = 0; i4 < keys4.length; i4++) {
        const key = keys4[i4];
        const value = object[key];
        result2[key] = getNewValue(value, key, object);
      }
      return result2;
    }
    exports2.mapValues = mapValues2;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/object/mapValues.js
var require_mapValues2 = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/object/mapValues.js"(exports2) {
    var require_identity6 = require_identity2();
    var require_mapValues3 = require_mapValues();
    var require_iteratee2 = require_iteratee();
    function mapValues2(object, getNewValue = require_identity6.identity) {
      if (object == null) return {};
      return require_mapValues3.mapValues(object, require_iteratee2.iteratee(getNewValue));
    }
    exports2.mapValues = mapValues2;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/object/clone.js
var require_clone3 = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/object/clone.js"(exports2) {
    var require_isPrimitive4 = require_isPrimitive();
    var require_isTypedArray3 = require_isTypedArray();
    function clone4(obj) {
      if (require_isPrimitive4.isPrimitive(obj)) return obj;
      if (Array.isArray(obj) || require_isTypedArray3.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) return new Constructor([obj], obj.name, {
        type: obj.type,
        lastModified: obj.lastModified
      });
      if (typeof obj === "object") return Object.assign(Object.create(prototype), obj);
      return obj;
    }
    exports2.clone = clone4;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/object/mergeWith.js
var require_mergeWith = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/object/mergeWith.js"(exports2) {
    var require_isPrimitive4 = require_isPrimitive();
    var require_clone6 = require_clone3();
    var require_getSymbols2 = require_getSymbols();
    var require_isBuffer3 = require_isBuffer();
    var require_isUnsafeProperty2 = require_isUnsafeProperty();
    var require_isPlainObject3 = require_isPlainObject();
    var require_cloneDeep3 = require_cloneDeep2();
    var require_isArguments3 = require_isArguments();
    var require_isObjectLike2 = require_isObjectLike();
    var require_isArrayLikeObject2 = require_isArrayLikeObject();
    var require_isTypedArray3 = require_isTypedArray2();
    function mergeWith(object, ...otherArgs) {
      const sources = otherArgs.slice(0, -1);
      const merge7 = otherArgs[otherArgs.length - 1];
      let result2 = object;
      for (let i4 = 0; i4 < sources.length; i4++) {
        const source = sources[i4];
        result2 = mergeWithDeep(result2, source, merge7, /* @__PURE__ */ new Map());
      }
      return result2;
    }
    function mergeWithDeep(target2, source, merge7, stack) {
      if (require_isPrimitive4.isPrimitive(target2)) target2 = Object(target2);
      if (source == null || typeof source !== "object") return target2;
      if (stack.has(source)) return require_clone6.clone(stack.get(source));
      stack.set(source, target2);
      if (Array.isArray(source)) {
        source = source.slice();
        for (let i4 = 0; i4 < source.length; i4++) source[i4] = source[i4] ?? void 0;
      }
      const sourceKeys = [...Object.keys(source), ...require_getSymbols2.getSymbols(source)];
      for (let i4 = 0; i4 < sourceKeys.length; i4++) {
        const key = sourceKeys[i4];
        if (require_isUnsafeProperty2.isUnsafeProperty(key)) continue;
        let sourceValue = source[key];
        let targetValue = target2[key];
        if (require_isArguments3.isArguments(sourceValue)) sourceValue = { ...sourceValue };
        if (require_isArguments3.isArguments(targetValue)) targetValue = { ...targetValue };
        if (require_isBuffer3.isBuffer(sourceValue)) sourceValue = require_cloneDeep3.cloneDeep(sourceValue);
        if (Array.isArray(sourceValue)) if (Array.isArray(targetValue)) {
          const cloned = [];
          const targetKeys = Reflect.ownKeys(targetValue);
          for (let i5 = 0; i5 < targetKeys.length; i5++) {
            const targetKey = targetKeys[i5];
            cloned[targetKey] = targetValue[targetKey];
          }
          targetValue = cloned;
        } else if (require_isArrayLikeObject2.isArrayLikeObject(targetValue)) {
          const cloned = [];
          for (let i5 = 0; i5 < targetValue.length; i5++) cloned[i5] = targetValue[i5];
          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 (require_isObjectLike2.isObjectLike(targetValue) && require_isObjectLike2.isObjectLike(sourceValue) && (require_isPlainObject3.isPlainObject(targetValue) || require_isPlainObject3.isPlainObject(sourceValue) || require_isTypedArray3.isTypedArray(targetValue) || require_isTypedArray3.isTypedArray(sourceValue))) target2[key] = mergeWithDeep(targetValue, sourceValue, merge7, stack);
        else if (targetValue == null && require_isPlainObject3.isPlainObject(sourceValue)) target2[key] = mergeWithDeep({}, sourceValue, merge7, stack);
        else if (targetValue == null && require_isTypedArray3.isTypedArray(sourceValue)) target2[key] = require_cloneDeep3.cloneDeep(sourceValue);
        else if (targetValue === void 0 || sourceValue !== void 0) target2[key] = sourceValue;
      }
      return target2;
    }
    exports2.mergeWith = mergeWith;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/object/merge.js
var require_merge4 = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/object/merge.js"(exports2) {
    var require_noop4 = require_noop();
    var require_mergeWith3 = require_mergeWith();
    function merge7(object, ...sources) {
      return require_mergeWith3.mergeWith(object, ...sources, require_noop4.noop);
    }
    exports2.merge = merge7;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/_internal/getSymbolsIn.js
var require_getSymbolsIn = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/_internal/getSymbolsIn.js"(exports2) {
    var require_getSymbols2 = require_getSymbols();
    function getSymbolsIn(object) {
      const result2 = [];
      while (object) {
        result2.push(...require_getSymbols2.getSymbols(object));
        object = Object.getPrototypeOf(object);
      }
      return result2;
    }
    exports2.getSymbolsIn = getSymbolsIn;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/object/omit.js
var require_omit = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/object/omit.js"(exports2) {
    var require_isPlainObject3 = require_isPlainObject();
    var require_isDeepKey2 = require_isDeepKey();
    var require_cloneDeepWith3 = require_cloneDeepWith2();
    var require_flatten3 = require_flatten2();
    var require_unset2 = require_unset();
    var require_keysIn2 = require_keysIn();
    var require_getSymbolsIn2 = require_getSymbolsIn();
    function omit3(obj, ...keysArr) {
      if (obj == null) return {};
      keysArr = require_flatten3.flatten(keysArr);
      const result2 = cloneInOmit(obj, keysArr);
      for (let i4 = 0; i4 < keysArr.length; i4++) {
        let keys4 = keysArr[i4];
        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];
              require_unset2.unset(result2, key);
            }
            break;
          case "string":
          case "symbol":
          case "number":
            require_unset2.unset(result2, keys4);
            break;
        }
      }
      return result2;
    }
    function cloneInOmit(obj, keys4) {
      if (keys4.some((key) => Array.isArray(key) || require_isDeepKey2.isDeepKey(key))) return deepCloneInOmit(obj);
      return shallowCloneInOmit(obj);
    }
    function shallowCloneInOmit(obj) {
      const result2 = {};
      const keysToCopy = [...require_keysIn2.keysIn(obj), ...require_getSymbolsIn2.getSymbolsIn(obj)];
      for (let i4 = 0; i4 < keysToCopy.length; i4++) {
        const key = keysToCopy[i4];
        result2[key] = obj[key];
      }
      return result2;
    }
    function deepCloneInOmit(obj) {
      const result2 = {};
      const keysToCopy = [...require_keysIn2.keysIn(obj), ...require_getSymbolsIn2.getSymbolsIn(obj)];
      for (let i4 = 0; i4 < keysToCopy.length; i4++) {
        const key = keysToCopy[i4];
        result2[key] = require_cloneDeepWith3.cloneDeepWith(obj[key], (valueToClone) => {
          if (require_isPlainObject3.isPlainObject(valueToClone)) return;
          return valueToClone;
        });
      }
      return result2;
    }
    exports2.omit = omit3;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/object/omitBy.js
var require_omitBy = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/object/omitBy.js"(exports2) {
    var require_iteratee2 = require_iteratee();
    var require_isSymbol3 = require_isSymbol();
    var require_identity6 = require_identity3();
    var require_keysIn2 = require_keysIn();
    var require_getSymbolsIn2 = require_getSymbolsIn();
    function omitBy(object, shouldOmit) {
      if (object == null) return {};
      const result2 = {};
      const predicate = require_iteratee2.iteratee(shouldOmit ?? require_identity6.identity);
      const keys4 = [...require_keysIn2.keysIn(object), ...require_getSymbolsIn2.getSymbolsIn(object)];
      for (let i4 = 0; i4 < keys4.length; i4++) {
        const key = require_isSymbol3.isSymbol(keys4[i4]) ? keys4[i4] : keys4[i4].toString();
        const value = object[key];
        if (!predicate(value, key, object)) result2[key] = value;
      }
      return result2;
    }
    exports2.omitBy = omitBy;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/object/pick.js
var require_pick = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/object/pick.js"(exports2) {
    var require_isArrayLike3 = require_isArrayLike();
    var require_get4 = require_get();
    var require_has2 = require_has();
    var require_isNil3 = require_isNil2();
    var require_set5 = require_set3();
    function pick3(object, ...keysArr) {
      if (require_isNil3.isNil(object)) return {};
      const result2 = {};
      for (let i4 = 0; i4 < keysArr.length; i4++) {
        let keys4 = keysArr[i4];
        switch (typeof keys4) {
          case "object":
            if (!Array.isArray(keys4)) if (require_isArrayLike3.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 = require_get4.get(object, key);
          if (value === void 0 && !require_has2.has(object, key)) continue;
          if (typeof key === "string" && Object.hasOwn(object, key)) result2[key] = object[key];
          else require_set5.set(result2, key, value);
        }
      }
      return result2;
    }
    exports2.pick = pick3;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/object/pickBy.js
var require_pickBy = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/object/pickBy.js"(exports2) {
    var require_range6 = require_range2();
    var require_isArrayLike3 = require_isArrayLike();
    var require_iteratee2 = require_iteratee();
    var require_isSymbol3 = require_isSymbol();
    var require_identity6 = require_identity3();
    var require_keysIn2 = require_keysIn();
    var require_getSymbolsIn2 = require_getSymbolsIn();
    function pickBy3(obj, shouldPick) {
      if (obj == null) return {};
      const predicate = require_iteratee2.iteratee(shouldPick ?? require_identity6.identity);
      const result2 = {};
      const keys4 = require_isArrayLike3.isArrayLike(obj) ? require_range6.range(0, obj.length) : [...require_keysIn2.keysIn(obj), ...require_getSymbolsIn2.getSymbolsIn(obj)];
      for (let i4 = 0; i4 < keys4.length; i4++) {
        const key = require_isSymbol3.isSymbol(keys4[i4]) ? keys4[i4] : keys4[i4].toString();
        const value = obj[key];
        if (predicate(value, key, obj)) result2[key] = value;
      }
      return result2;
    }
    exports2.pickBy = pickBy3;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/object/propertyOf.js
var require_propertyOf = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/object/propertyOf.js"(exports2) {
    var require_get4 = require_get();
    function propertyOf(object) {
      return function(path240) {
        return require_get4.get(object, path240);
      };
    }
    exports2.propertyOf = propertyOf;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/object/result.js
var require_result = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/object/result.js"(exports2) {
    var require_toKey2 = require_toKey();
    var require_toString2 = require_toString();
    var require_toPath2 = require_toPath();
    var require_isKey2 = require_isKey();
    function result2(object, path240, defaultValue) {
      if (require_isKey2.isKey(path240, object)) path240 = [path240];
      else if (!Array.isArray(path240)) path240 = require_toPath2.toPath(require_toString2.toString(path240));
      const pathLength = Math.max(path240.length, 1);
      for (let index2 = 0; index2 < pathLength; index2++) {
        const value = object == null ? void 0 : object[require_toKey2.toKey(path240[index2])];
        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;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/object/setWith.js
var require_setWith = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/object/setWith.js"(exports2) {
    var require_updateWith2 = require_updateWith();
    function setWith(obj, path240, value, customizer) {
      let customizerFn;
      if (typeof customizer === "function") customizerFn = customizer;
      else customizerFn = () => void 0;
      return require_updateWith2.updateWith(obj, path240, () => value, customizerFn);
    }
    exports2.setWith = setWith;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/object/toDefaulted.js
var require_toDefaulted = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/object/toDefaulted.js"(exports2) {
    var require_cloneDeep3 = require_cloneDeep2();
    var require_defaults3 = require_defaults();
    function toDefaulted(object, ...sources) {
      const cloned = require_cloneDeep3.cloneDeep(object);
      return require_defaults3.defaults(cloned, ...sources);
    }
    exports2.toDefaulted = toDefaulted;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/_internal/mapToEntries.js
var require_mapToEntries = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/_internal/mapToEntries.js"(exports2) {
    function mapToEntries(map26) {
      const arr = new Array(map26.size);
      const keys4 = map26.keys();
      const values = map26.values();
      for (let i4 = 0; i4 < arr.length; i4++) arr[i4] = [keys4.next().value, values.next().value];
      return arr;
    }
    exports2.mapToEntries = mapToEntries;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/_internal/setToEntries.js
var require_setToEntries = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/_internal/setToEntries.js"(exports2) {
    function setToEntries(set2) {
      const arr = new Array(set2.size);
      const values = set2.values();
      for (let i4 = 0; i4 < arr.length; i4++) {
        const value = values.next().value;
        arr[i4] = [value, value];
      }
      return arr;
    }
    exports2.setToEntries = setToEntries;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/object/toPairs.js
var require_toPairs = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/object/toPairs.js"(exports2) {
    var require_keys2 = require_keys();
    var require_mapToEntries2 = require_mapToEntries();
    var require_setToEntries2 = require_setToEntries();
    function toPairs(object) {
      if (object == null) return [];
      if (object instanceof Set) return require_setToEntries2.setToEntries(object);
      if (object instanceof Map) return require_mapToEntries2.mapToEntries(object);
      const keys$1 = require_keys2.keys(object);
      const result2 = new Array(keys$1.length);
      for (let i4 = 0; i4 < keys$1.length; i4++) {
        const key = keys$1[i4];
        result2[i4] = [key, object[key]];
      }
      return result2;
    }
    exports2.toPairs = toPairs;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/object/toPairsIn.js
var require_toPairsIn = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/object/toPairsIn.js"(exports2) {
    var require_keysIn2 = require_keysIn();
    var require_mapToEntries2 = require_mapToEntries();
    var require_setToEntries2 = require_setToEntries();
    function toPairsIn(object) {
      if (object == null) return [];
      if (object instanceof Set) return require_setToEntries2.setToEntries(object);
      if (object instanceof Map) return require_mapToEntries2.mapToEntries(object);
      const keys4 = require_keysIn2.keysIn(object);
      const result2 = new Array(keys4.length);
      for (let i4 = 0; i4 < keys4.length; i4++) {
        const key = keys4[i4];
        result2[i4] = [key, object[key]];
      }
      return result2;
    }
    exports2.toPairsIn = toPairsIn;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/predicate/isBuffer.js
var require_isBuffer2 = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/predicate/isBuffer.js"(exports2) {
    var require_isBuffer3 = require_isBuffer();
    function isBuffer(x3) {
      return require_isBuffer3.isBuffer(x3);
    }
    exports2.isBuffer = isBuffer;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/object/transform.js
var require_transform = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/object/transform.js"(exports2) {
    var require_identity6 = require_identity2();
    var require_isFunction4 = require_isFunction();
    var require_isObject3 = require_isObject();
    var require_iteratee2 = require_iteratee();
    var require_forEach3 = require_forEach();
    var require_isTypedArray3 = require_isTypedArray2();
    var require_isBuffer3 = require_isBuffer2();
    function transform3(object, iteratee$1 = require_identity6.identity, accumulator) {
      const isArrayOrBufferOrTypedArray = Array.isArray(object) || require_isBuffer3.isBuffer(object) || require_isTypedArray3.isTypedArray(object);
      iteratee$1 = require_iteratee2.iteratee(iteratee$1);
      if (accumulator == null) if (isArrayOrBufferOrTypedArray) accumulator = [];
      else if (require_isObject3.isObject(object) && require_isFunction4.isFunction(object.constructor)) accumulator = Object.create(Object.getPrototypeOf(object));
      else accumulator = {};
      if (object == null) return accumulator;
      require_forEach3.forEach(object, (value, key, object2) => iteratee$1(accumulator, value, key, object2));
      return accumulator;
    }
    exports2.transform = transform3;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/object/update.js
var require_update = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/object/update.js"(exports2) {
    var require_updateWith2 = require_updateWith();
    function update2(obj, path240, updater) {
      return require_updateWith2.updateWith(obj, path240, updater, () => void 0);
    }
    exports2.update = update2;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/object/valuesIn.js
var require_valuesIn = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/object/valuesIn.js"(exports2) {
    var require_keysIn2 = require_keysIn();
    function valuesIn(object) {
      const keys4 = require_keysIn2.keysIn(object);
      const result2 = new Array(keys4.length);
      for (let i4 = 0; i4 < keys4.length; i4++) result2[i4] = object[keys4[i4]];
      return result2;
    }
    exports2.valuesIn = valuesIn;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/predicate/isFunction.js
var require_isFunction2 = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/predicate/isFunction.js"(exports2) {
    function isFunction(value) {
      return typeof value === "function";
    }
    exports2.isFunction = isFunction;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/predicate/isLength.js
var require_isLength2 = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/predicate/isLength.js"(exports2) {
    function isLength(value) {
      return Number.isSafeInteger(value) && value >= 0;
    }
    exports2.isLength = isLength;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/predicate/isNative.js
var require_isNative = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/predicate/isNative.js"(exports2) {
    var functionToString = Function.prototype.toString;
    var IS_NATIVE_FUNCTION_REGEXP = RegExp(`^${functionToString.call(Object.prototype.hasOwnProperty).replace(/[\\^$.*+?()[\]{}|]/g, "\\$&").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;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/predicate/isNull.js
var require_isNull2 = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/predicate/isNull.js"(exports2) {
    function isNull2(value) {
      return value === null;
    }
    exports2.isNull = isNull2;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/predicate/isUndefined.js
var require_isUndefined2 = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/predicate/isUndefined.js"(exports2) {
    var require_isUndefined3 = require_isUndefined();
    function isUndefined(x3) {
      return require_isUndefined3.isUndefined(x3);
    }
    exports2.isUndefined = isUndefined;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/predicate/conformsTo.js
var require_conformsTo = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/predicate/conformsTo.js"(exports2) {
    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 i4 = 0; i4 < keys4.length; i4++) {
        const key = keys4[i4];
        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;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/predicate/conforms.js
var require_conforms = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/predicate/conforms.js"(exports2) {
    var require_cloneDeep3 = require_cloneDeep();
    var require_conformsTo2 = require_conformsTo();
    function conforms(source) {
      source = require_cloneDeep3.cloneDeep(source);
      return function(object) {
        return require_conformsTo2.conformsTo(object, source);
      };
    }
    exports2.conforms = conforms;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/predicate/isArrayBuffer.js
var require_isArrayBuffer2 = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/predicate/isArrayBuffer.js"(exports2) {
    var require_isArrayBuffer3 = require_isArrayBuffer();
    function isArrayBuffer2(value) {
      return require_isArrayBuffer3.isArrayBuffer(value);
    }
    exports2.isArrayBuffer = isArrayBuffer2;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/predicate/isBoolean.js
var require_isBoolean2 = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/predicate/isBoolean.js"(exports2) {
    function isBoolean2(value) {
      return typeof value === "boolean" || value instanceof Boolean;
    }
    exports2.isBoolean = isBoolean2;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/predicate/isDate.js
var require_isDate2 = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/predicate/isDate.js"(exports2) {
    var require_isDate4 = require_isDate();
    function isDate(value) {
      return require_isDate4.isDate(value);
    }
    exports2.isDate = isDate;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/predicate/isElement.js
var require_isElement = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/predicate/isElement.js"(exports2) {
    var require_isPlainObject3 = require_isPlainObject();
    var require_isObjectLike2 = require_isObjectLike();
    function isElement(value) {
      return require_isObjectLike2.isObjectLike(value) && value.nodeType === 1 && !require_isPlainObject3.isPlainObject(value);
    }
    exports2.isElement = isElement;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/predicate/isEmpty.js
var require_isEmpty = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/predicate/isEmpty.js"(exports2) {
    var require_isBuffer3 = require_isBuffer();
    var require_isArrayLike3 = require_isArrayLike();
    var require_isArguments3 = require_isArguments();
    var require_isPrototype2 = require_isPrototype();
    var require_isTypedArray3 = require_isTypedArray2();
    function isEmpty4(value) {
      if (value == null) return true;
      if (require_isArrayLike3.isArrayLike(value)) {
        if (typeof value.splice !== "function" && typeof value !== "string" && !require_isBuffer3.isBuffer(value) && !require_isTypedArray3.isTypedArray(value) && !require_isArguments3.isArguments(value)) return false;
        return value.length === 0;
      }
      if (typeof value === "object" || typeof value === "function") {
        if (value instanceof Map || value instanceof Set) return value.size === 0;
        const keys4 = Object.keys(value);
        if (require_isPrototype2.isPrototype(value)) return keys4.filter((x3) => x3 !== "constructor").length === 0;
        return keys4.length === 0;
      }
      return true;
    }
    exports2.isEmpty = isEmpty4;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/function/after.js
var require_after2 = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/function/after.js"(exports2) {
    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);
      };
    }
    exports2.after = after;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/predicate/isEqualWith.js
var require_isEqualWith2 = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/predicate/isEqualWith.js"(exports2) {
    var require_after3 = require_after2();
    var require_isEqualWith3 = require_isEqualWith();
    function isEqualWith(a2, b, areValuesEqual) {
      if (typeof areValuesEqual !== "function") areValuesEqual = () => void 0;
      return require_isEqualWith3.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), require_after3.after(2, areValuesEqual));
        if (a2 instanceof Set && b instanceof Set) return isEqualWith(Array.from(a2), Array.from(b), require_after3.after(2, areValuesEqual));
      });
    }
    exports2.isEqualWith = isEqualWith;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/predicate/isError.js
var require_isError2 = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/predicate/isError.js"(exports2) {
    var require_getTag2 = require_getTag();
    function isError(value) {
      return require_getTag2.getTag(value) === "[object Error]";
    }
    exports2.isError = isError;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/predicate/isFinite.js
var require_isFinite = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/predicate/isFinite.js"(exports2) {
    function isFinite2(value) {
      return Number.isFinite(value);
    }
    exports2.isFinite = isFinite2;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/predicate/isInteger.js
var require_isInteger = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/predicate/isInteger.js"(exports2) {
    function isInteger2(value) {
      return Number.isInteger(value);
    }
    exports2.isInteger = isInteger2;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/predicate/isRegExp.js
var require_isRegExp2 = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/predicate/isRegExp.js"(exports2) {
    var require_isRegExp3 = require_isRegExp();
    function isRegExp(value) {
      return require_isRegExp3.isRegExp(value);
    }
    exports2.isRegExp = isRegExp;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/predicate/isSafeInteger.js
var require_isSafeInteger = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/predicate/isSafeInteger.js"(exports2) {
    function isSafeInteger(value) {
      return Number.isSafeInteger(value);
    }
    exports2.isSafeInteger = isSafeInteger;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/predicate/isWeakMap.js
var require_isWeakMap2 = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/predicate/isWeakMap.js"(exports2) {
    var require_isWeakMap3 = require_isWeakMap();
    function isWeakMap(value) {
      return require_isWeakMap3.isWeakMap(value);
    }
    exports2.isWeakMap = isWeakMap;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/predicate/isWeakSet.js
var require_isWeakSet2 = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/predicate/isWeakSet.js"(exports2) {
    var require_isWeakSet3 = require_isWeakSet();
    function isWeakSet(value) {
      return require_isWeakSet3.isWeakSet(value);
    }
    exports2.isWeakSet = isWeakSet;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/string/capitalize.js
var require_capitalize = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/string/capitalize.js"(exports2) {
    function capitalize(str2) {
      return str2.charAt(0).toUpperCase() + str2.slice(1).toLowerCase();
    }
    exports2.capitalize = capitalize;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/string/capitalize.js
var require_capitalize2 = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/string/capitalize.js"(exports2) {
    var require_capitalize3 = require_capitalize();
    var require_toString2 = require_toString();
    function capitalize(str2) {
      return require_capitalize3.capitalize(require_toString2.toString(str2));
    }
    exports2.capitalize = capitalize;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/util/bindAll.js
var require_bindAll = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/util/bindAll.js"(exports2) {
    var require_isArray2 = require_isArray();
    var require_isFunction4 = require_isFunction();
    var require_toString2 = require_toString();
    var require_isObject3 = require_isObject();
    function bindAll(object, ...methodNames) {
      if (object == null) return object;
      if (!require_isObject3.isObject(object)) return object;
      if (require_isArray2.isArray(object) && methodNames.length === 0) return object;
      const methods = [];
      for (let i4 = 0; i4 < methodNames.length; i4++) {
        const name = methodNames[i4];
        if (require_isArray2.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 i4 = 0; i4 < methods.length; i4++) {
        const key = methods[i4];
        const stringKey = require_toString2.toString(key);
        const func = object[stringKey];
        if (require_isFunction4.isFunction(func)) object[stringKey] = func.bind(object);
      }
      return object;
    }
    exports2.bindAll = bindAll;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/string/deburr.js
var require_deburr = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/string/deburr.js"(exports2) {
    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 i4 = 0; i4 < str2.length; i4++) {
        const char = str2[i4];
        if (char >= "\u0300" && char <= "\u036F" || char >= "\u20D0" && char <= "\u20FF" || char >= "\uFE20" && char <= "\uFE2F") continue;
        result2 += deburrMap.get(char) ?? char;
      }
      return result2;
    }
    exports2.deburr = deburr2;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/string/deburr.js
var require_deburr2 = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/string/deburr.js"(exports2) {
    var require_deburr3 = require_deburr();
    var require_toString2 = require_toString();
    function deburr2(str2) {
      return require_deburr3.deburr(require_toString2.toString(str2));
    }
    exports2.deburr = deburr2;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/string/words.js
var require_words = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/string/words.js"(exports2) {
    var require_toString2 = 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 = require_toString2.toString(str2);
      if (guard) pattern = rUnicodeWord;
      if (typeof pattern === "number") pattern = pattern.toString();
      return Array.from(input.match(pattern) ?? []).filter((x3) => x3 !== "");
    }
    exports2.words = words;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/_internal/normalizeForCase.js
var require_normalizeForCase = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/_internal/normalizeForCase.js"(exports2) {
    var require_toString2 = require_toString();
    function normalizeForCase(str2) {
      if (typeof str2 !== "string") str2 = require_toString2.toString(str2);
      return str2.replace(/['\u2019]/g, "");
    }
    exports2.normalizeForCase = normalizeForCase;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/string/camelCase.js
var require_camelCase = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/string/camelCase.js"(exports2) {
    var require_capitalize3 = require_capitalize();
    var require_deburr3 = require_deburr2();
    var require_words2 = require_words();
    var require_normalizeForCase2 = require_normalizeForCase();
    function camelCase2(str2) {
      const splitWords = require_words2.words(require_normalizeForCase2.normalizeForCase(require_deburr3.deburr(str2)));
      if (splitWords.length === 0) return "";
      const [first, ...rest] = splitWords;
      return `${first.toLowerCase()}${rest.map((word) => require_capitalize3.capitalize(word)).join("")}`;
    }
    exports2.camelCase = camelCase2;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/string/endsWith.js
var require_endsWith = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/string/endsWith.js"(exports2) {
    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;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/string/escape.js
var require_escape3 = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/string/escape.js"(exports2) {
    var htmlEscapes = {
      "&": "&amp;",
      "<": "&lt;",
      ">": "&gt;",
      '"': "&quot;",
      "'": "&#39;"
    };
    function escape(str2) {
      return str2.replace(/[&<>"']/g, (match) => htmlEscapes[match]);
    }
    exports2.escape = escape;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/string/escape.js
var require_escape4 = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/string/escape.js"(exports2) {
    var require_escape6 = require_escape3();
    var require_toString2 = require_toString();
    function escape(string) {
      return require_escape6.escape(require_toString2.toString(string));
    }
    exports2.escape = escape;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/string/escapeRegExp.js
var require_escapeRegExp = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/string/escapeRegExp.js"(exports2) {
    function escapeRegExp3(str2) {
      return str2.replace(/[\\^$.*+?()[\]{}|]/g, "\\$&");
    }
    exports2.escapeRegExp = escapeRegExp3;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/string/escapeRegExp.js
var require_escapeRegExp2 = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/string/escapeRegExp.js"(exports2) {
    var require_escapeRegExp3 = require_escapeRegExp();
    var require_toString2 = require_toString();
    function escapeRegExp3(str2) {
      return require_escapeRegExp3.escapeRegExp(require_toString2.toString(str2));
    }
    exports2.escapeRegExp = escapeRegExp3;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/string/kebabCase.js
var require_kebabCase = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/string/kebabCase.js"(exports2) {
    var require_deburr3 = require_deburr2();
    var require_words2 = require_words();
    var require_normalizeForCase2 = require_normalizeForCase();
    function kebabCase6(str2) {
      return require_words2.words(require_normalizeForCase2.normalizeForCase(require_deburr3.deburr(str2))).map((word) => word.toLowerCase()).join("-");
    }
    exports2.kebabCase = kebabCase6;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/string/lowerCase.js
var require_lowerCase = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/string/lowerCase.js"(exports2) {
    var require_deburr3 = require_deburr2();
    var require_words2 = require_words();
    var require_normalizeForCase2 = require_normalizeForCase();
    function lowerCase(str2) {
      return require_words2.words(require_normalizeForCase2.normalizeForCase(require_deburr3.deburr(str2))).map((word) => word.toLowerCase()).join(" ");
    }
    exports2.lowerCase = lowerCase;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/string/lowerFirst.js
var require_lowerFirst = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/string/lowerFirst.js"(exports2) {
    function lowerFirst(str2) {
      return str2.substring(0, 1).toLowerCase() + str2.substring(1);
    }
    exports2.lowerFirst = lowerFirst;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/string/lowerFirst.js
var require_lowerFirst2 = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/string/lowerFirst.js"(exports2) {
    var require_lowerFirst3 = require_lowerFirst();
    var require_toString2 = require_toString();
    function lowerFirst(str2) {
      return require_lowerFirst3.lowerFirst(require_toString2.toString(str2));
    }
    exports2.lowerFirst = lowerFirst;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/_internal/createPadding.js
var require_createPadding = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/_internal/createPadding.js"(exports2) {
    var require_regexMultiByte2 = require_regexMultiByte();
    function stringSize(str2) {
      return require_regexMultiByte2.regexMultiByte.test(str2) ? Array.from(str2).length : str2.length;
    }
    function createPadding(length, chars) {
      const charsLength = stringSize(chars);
      if (charsLength === 0 || length < 1) return "";
      const result2 = chars.repeat(Math.ceil(length / charsLength));
      return require_regexMultiByte2.regexMultiByte.test(result2) ? Array.from(result2).slice(0, length).join("") : result2.slice(0, length);
    }
    exports2.createPadding = createPadding;
    exports2.stringSize = stringSize;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/string/pad.js
var require_pad = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/string/pad.js"(exports2) {
    var require_toString2 = require_toString();
    var require_toInteger2 = require_toInteger();
    var require_createPadding2 = require_createPadding();
    function pad4(str2, length = 0, chars = " ") {
      const value = require_toString2.toString(str2);
      const targetLength = require_toInteger2.toInteger(length);
      const strLength = require_createPadding2.stringSize(value);
      if (targetLength <= strLength) return value;
      const mid = (targetLength - strLength) / 2;
      const padChars = `${chars}`;
      return require_createPadding2.createPadding(Math.floor(mid), padChars) + value + require_createPadding2.createPadding(Math.ceil(mid), padChars);
    }
    exports2.pad = pad4;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/string/padEnd.js
var require_padEnd = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/string/padEnd.js"(exports2) {
    var require_toString2 = require_toString();
    var require_toInteger2 = require_toInteger();
    var require_createPadding2 = require_createPadding();
    function padEnd(str2, length = 0, chars = " ") {
      const value = require_toString2.toString(str2);
      const targetLength = require_toInteger2.toInteger(length);
      const strLength = require_createPadding2.stringSize(value);
      if (targetLength <= strLength) return value;
      return value + require_createPadding2.createPadding(targetLength - strLength, `${chars}`);
    }
    exports2.padEnd = padEnd;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/string/padStart.js
var require_padStart = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/string/padStart.js"(exports2) {
    var require_toString2 = require_toString();
    var require_toInteger2 = require_toInteger();
    var require_createPadding2 = require_createPadding();
    function padStart2(str2, length = 0, chars = " ") {
      const value = require_toString2.toString(str2);
      const targetLength = require_toInteger2.toInteger(length);
      const strLength = require_createPadding2.stringSize(value);
      if (targetLength <= strLength) return value;
      return require_createPadding2.createPadding(targetLength - strLength, `${chars}`) + value;
    }
    exports2.padStart = padStart2;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/_internal/MAX_SAFE_INTEGER.js
var require_MAX_SAFE_INTEGER = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/_internal/MAX_SAFE_INTEGER.js"(exports2) {
    var MAX_SAFE_INTEGER = Number.MAX_SAFE_INTEGER;
    exports2.MAX_SAFE_INTEGER = MAX_SAFE_INTEGER;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/string/repeat.js
var require_repeat = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/string/repeat.js"(exports2) {
    var require_toString2 = require_toString();
    var require_toInteger2 = require_toInteger();
    var require_isIterateeCall2 = require_isIterateeCall();
    var require_MAX_SAFE_INTEGER2 = require_MAX_SAFE_INTEGER();
    function repeat4(str2, n2, guard) {
      if (guard ? require_isIterateeCall2.isIterateeCall(str2, n2, guard) : n2 === void 0) n2 = 1;
      else n2 = require_toInteger2.toInteger(n2);
      if (n2 < 1 || n2 > require_MAX_SAFE_INTEGER2.MAX_SAFE_INTEGER) return "";
      return require_toString2.toString(str2).repeat(n2);
    }
    exports2.repeat = repeat4;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/string/replace.js
var require_replace = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/string/replace.js"(exports2) {
    var require_toString2 = require_toString();
    function replace(target2, pattern, replacement) {
      if (arguments.length < 3) return require_toString2.toString(target2);
      return require_toString2.toString(target2).replace(pattern, replacement);
    }
    exports2.replace = replace;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/string/snakeCase.js
var require_snakeCase = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/string/snakeCase.js"(exports2) {
    var require_deburr3 = require_deburr2();
    var require_words2 = require_words();
    var require_normalizeForCase2 = require_normalizeForCase();
    function snakeCase(str2) {
      return require_words2.words(require_normalizeForCase2.normalizeForCase(require_deburr3.deburr(str2))).map((word) => word.toLowerCase()).join("_");
    }
    exports2.snakeCase = snakeCase;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/string/split.js
var require_split = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/string/split.js"(exports2) {
    var require_toString2 = require_toString();
    function split4(string, separator, limit) {
      return require_toString2.toString(string).split(separator, limit);
    }
    exports2.split = split4;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/string/startCase.js
var require_startCase = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/string/startCase.js"(exports2) {
    var require_deburr3 = require_deburr2();
    var require_words2 = require_words();
    var require_normalizeForCase2 = require_normalizeForCase();
    function startCase(str2) {
      const words$1 = require_words2.words(require_normalizeForCase2.normalizeForCase(require_deburr3.deburr(str2)).trim());
      let result2 = "";
      for (let i4 = 0; i4 < words$1.length; i4++) {
        const word = words$1[i4];
        if (result2) result2 += " ";
        if (word === word.toUpperCase()) result2 += word;
        else result2 += word[0].toUpperCase() + word.slice(1).toLowerCase();
      }
      return result2;
    }
    exports2.startCase = startCase;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/string/startsWith.js
var require_startsWith = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/string/startsWith.js"(exports2) {
    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;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/string/template.js
var require_template = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/string/template.js"(exports2) {
    var require_toString2 = require_toString();
    var require_attempt2 = require_attempt();
    var require_defaults3 = require_defaults();
    var require_escape6 = require_escape4();
    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: require_escape6.escape,
        template
      } }
    };
    function template(string, options, guard) {
      string = require_toString2.toString(string);
      if (guard) options = templateSettings;
      options = require_defaults3.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: index2 } = match;
        source += ` + '${string.slice(lastIndex, index2).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 = index2 + fullMatch.length;
      }
      const imports = require_defaults3.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 = require_attempt2.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;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/string/templateSettings.js
var require_templateSettings = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/string/templateSettings.js"(exports2) {
    var templateSettings = require_template().templateSettings;
    exports2.templateSettings = templateSettings;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/string/toLower.js
var require_toLower = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/string/toLower.js"(exports2) {
    var require_toString2 = require_toString();
    function toLower(value) {
      return require_toString2.toString(value).toLowerCase();
    }
    exports2.toLower = toLower;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/string/toUpper.js
var require_toUpper = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/string/toUpper.js"(exports2) {
    var require_toString2 = require_toString();
    function toUpper(value) {
      return require_toString2.toString(value).toUpperCase();
    }
    exports2.toUpper = toUpper;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/string/trimEnd.js
var require_trimEnd = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/string/trimEnd.js"(exports2) {
    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;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/string/trimStart.js
var require_trimStart = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/string/trimStart.js"(exports2) {
    function trimStart(str2, chars) {
      if (chars === void 0) return str2.trimStart();
      let startIndex = 0;
      switch (typeof chars) {
        case "string":
          if (chars.length !== 1) throw new Error(`The 'chars' parameter should be a single character 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;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/string/trim.js
var require_trim = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/string/trim.js"(exports2) {
    var require_trimEnd3 = require_trimEnd();
    var require_trimStart3 = require_trimStart();
    function trim(str2, chars) {
      if (chars === void 0) return str2.trim();
      return require_trimStart3.trimStart(require_trimEnd3.trimEnd(str2, chars), chars);
    }
    exports2.trim = trim;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/string/trim.js
var require_trim2 = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/string/trim.js"(exports2) {
    var require_trim3 = 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 require_trim3.trim(str2, chars.flatMap((x3) => x3.toString().split("")));
          else return require_trim3.trim(str2, chars.toString().split(""));
        default:
          return require_trim3.trim(str2, chars.toString().split(""));
      }
    }
    exports2.trim = trim;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/string/trimEnd.js
var require_trimEnd2 = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/string/trimEnd.js"(exports2) {
    var require_trimEnd3 = require_trimEnd();
    function trimEnd(str2, chars, guard) {
      if (str2 == null) return "";
      if (guard != null || chars == null) return str2.toString().trimEnd();
      return require_trimEnd3.trimEnd(str2, chars.toString().split(""));
    }
    exports2.trimEnd = trimEnd;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/string/trimStart.js
var require_trimStart2 = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/string/trimStart.js"(exports2) {
    var require_trimStart3 = require_trimStart();
    function trimStart(str2, chars, guard) {
      if (str2 == null) return "";
      if (guard != null || chars == null) return str2.toString().trimStart();
      return require_trimStart3.trimStart(str2, chars.toString().split(""));
    }
    exports2.trimStart = trimStart;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/string/truncate.js
var require_truncate3 = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/string/truncate.js"(exports2) {
    var require_isObject3 = require_isObject();
    var require_regexMultiByte2 = require_regexMultiByte();
    function truncate(string, options) {
      string = string != null ? `${string}` : "";
      let length = 30;
      let omission = "...";
      if (require_isObject3.isObject(options)) {
        length = parseLength(options.length);
        omission = "omission" in options ? `${options.omission}` : "...";
      }
      let i4 = string.length;
      const lengthOmission = Array.from(omission).length;
      const lengthBase = Math.max(length - lengthOmission, 0);
      let strArray = void 0;
      if (require_regexMultiByte2.regexMultiByte.test(string)) {
        strArray = Array.from(string);
        i4 = strArray.length;
      }
      if (length >= i4) return string;
      if (i4 <= 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;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/string/unescape.js
var require_unescape2 = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/string/unescape.js"(exports2) {
    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;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/string/unescape.js
var require_unescape3 = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/string/unescape.js"(exports2) {
    var require_unescape4 = require_unescape2();
    var require_toString2 = require_toString();
    function unescape2(str2) {
      return require_unescape4.unescape(require_toString2.toString(str2));
    }
    exports2.unescape = unescape2;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/string/upperCase.js
var require_upperCase = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/string/upperCase.js"(exports2) {
    var require_deburr3 = require_deburr2();
    var require_words2 = require_words();
    var require_normalizeForCase2 = require_normalizeForCase();
    function upperCase(str2) {
      return require_words2.words(require_normalizeForCase2.normalizeForCase(require_deburr3.deburr(str2))).map((word) => word.toUpperCase()).join(" ");
    }
    exports2.upperCase = upperCase;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/string/upperFirst.js
var require_upperFirst = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/string/upperFirst.js"(exports2) {
    function upperFirst(str2) {
      return str2.substring(0, 1).toUpperCase() + str2.substring(1);
    }
    exports2.upperFirst = upperFirst;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/string/upperFirst.js
var require_upperFirst2 = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/string/upperFirst.js"(exports2) {
    var require_upperFirst3 = require_upperFirst();
    var require_toString2 = require_toString();
    function upperFirst(str2) {
      return require_upperFirst3.upperFirst(require_toString2.toString(str2));
    }
    exports2.upperFirst = upperFirst;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/util/cond.js
var require_cond = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/util/cond.js"(exports2) {
    var require_isFunction4 = require_isFunction();
    var require_iteratee2 = require_iteratee();
    function cond(pairs2) {
      const length = pairs2.length;
      const processedPairs = pairs2.map((pair) => {
        const predicate = pair[0];
        const func = pair[1];
        if (!require_isFunction4.isFunction(func)) throw new TypeError("Expected a function");
        return [require_iteratee2.iteratee(predicate), func];
      });
      return function(...args) {
        for (let i4 = 0; i4 < length; i4++) {
          const pair = processedPairs[i4];
          const predicate = pair[0];
          const func = pair[1];
          if (predicate.apply(this, args)) return func.apply(this, args);
        }
      };
    }
    exports2.cond = cond;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/util/constant.js
var require_constant = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/util/constant.js"(exports2) {
    function constant(value) {
      return () => value;
    }
    exports2.constant = constant;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/util/defaultTo.js
var require_defaultTo = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/util/defaultTo.js"(exports2) {
    function defaultTo(value, defaultValue) {
      if (value == null || Number.isNaN(value)) return defaultValue;
      return value;
    }
    exports2.defaultTo = defaultTo;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/util/gt.js
var require_gt2 = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/util/gt.js"(exports2) {
    var require_toNumber2 = require_toNumber();
    function gt(value, other) {
      if (typeof value === "string" && typeof other === "string") return value > other;
      return require_toNumber2.toNumber(value) > require_toNumber2.toNumber(other);
    }
    exports2.gt = gt;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/util/gte.js
var require_gte2 = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/util/gte.js"(exports2) {
    var require_toNumber2 = require_toNumber();
    function gte(value, other) {
      if (typeof value === "string" && typeof other === "string") return value >= other;
      return require_toNumber2.toNumber(value) >= require_toNumber2.toNumber(other);
    }
    exports2.gte = gte;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/util/invoke.js
var require_invoke = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/util/invoke.js"(exports2) {
    var require_toKey2 = require_toKey();
    var require_toPath2 = require_toPath();
    var require_get4 = require_get();
    var require_last4 = require_last2();
    function invoke(object, path240, ...args) {
      args = args.flat(1);
      if (object == null) return;
      switch (typeof path240) {
        case "string":
          if (typeof object === "object" && Object.hasOwn(object, path240)) return invokeImpl(object, [path240], args);
          return invokeImpl(object, require_toPath2.toPath(path240), args);
        case "number":
        case "symbol":
          return invokeImpl(object, [path240], args);
        default:
          if (Array.isArray(path240)) return invokeImpl(object, path240, args);
          else return invokeImpl(object, [path240], args);
      }
    }
    function invokeImpl(object, path240, args) {
      const parent = require_get4.get(object, path240.slice(0, -1), object);
      if (parent == null) return;
      let lastKey = require_last4.last(path240);
      const lastValue = lastKey?.valueOf();
      if (typeof lastValue === "number") lastKey = require_toKey2.toKey(lastValue);
      else lastKey = String(lastKey);
      return require_get4.get(parent, lastKey)?.apply(parent, args);
    }
    exports2.invoke = invoke;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/util/lt.js
var require_lt2 = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/util/lt.js"(exports2) {
    var require_toNumber2 = require_toNumber();
    function lt2(value, other) {
      if (typeof value === "string" && typeof other === "string") return value < other;
      return require_toNumber2.toNumber(value) < require_toNumber2.toNumber(other);
    }
    exports2.lt = lt2;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/util/lte.js
var require_lte2 = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/util/lte.js"(exports2) {
    var require_toNumber2 = require_toNumber();
    function lte(value, other) {
      if (typeof value === "string" && typeof other === "string") return value <= other;
      return require_toNumber2.toNumber(value) <= require_toNumber2.toNumber(other);
    }
    exports2.lte = lte;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/util/method.js
var require_method = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/util/method.js"(exports2) {
    var require_invoke2 = require_invoke();
    function method2(path240, ...args) {
      return function(object) {
        return require_invoke2.invoke(object, path240, args);
      };
    }
    exports2.method = method2;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/util/methodOf.js
var require_methodOf = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/util/methodOf.js"(exports2) {
    var require_invoke2 = require_invoke();
    function methodOf(object, ...args) {
      return function(path240) {
        return require_invoke2.invoke(object, path240, args);
      };
    }
    exports2.methodOf = methodOf;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/util/now.js
var require_now = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/util/now.js"(exports2) {
    function now() {
      return Date.now();
    }
    exports2.now = now;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/util/over.js
var require_over = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/util/over.js"(exports2) {
    var require_iteratee2 = require_iteratee();
    function over(...iteratees) {
      if (iteratees.length === 1 && Array.isArray(iteratees[0])) iteratees = iteratees[0];
      const funcs = iteratees.map((item) => require_iteratee2.iteratee(item));
      return function(...args) {
        return funcs.map((func) => func.apply(this, args));
      };
    }
    exports2.over = over;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/util/overEvery.js
var require_overEvery = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/util/overEvery.js"(exports2) {
    var require_iteratee2 = require_iteratee();
    function overEvery(...predicates) {
      return function(...values) {
        for (let i4 = 0; i4 < predicates.length; ++i4) {
          const predicate = predicates[i4];
          if (!Array.isArray(predicate)) {
            if (!require_iteratee2.iteratee(predicate).apply(this, values)) return false;
            continue;
          }
          for (let j2 = 0; j2 < predicate.length; ++j2) if (!require_iteratee2.iteratee(predicate[j2]).apply(this, values)) return false;
        }
        return true;
      };
    }
    exports2.overEvery = overEvery;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/util/overSome.js
var require_overSome = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/util/overSome.js"(exports2) {
    var require_iteratee2 = require_iteratee();
    function overSome(...predicates) {
      return function(...values) {
        for (let i4 = 0; i4 < predicates.length; ++i4) {
          const predicate = predicates[i4];
          if (!Array.isArray(predicate)) {
            if (require_iteratee2.iteratee(predicate).apply(this, values)) return true;
            continue;
          }
          for (let j2 = 0; j2 < predicate.length; ++j2) if (require_iteratee2.iteratee(predicate[j2]).apply(this, values)) return true;
        }
        return false;
      };
    }
    exports2.overSome = overSome;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/util/stubArray.js
var require_stubArray = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/util/stubArray.js"(exports2) {
    function stubArray() {
      return [];
    }
    exports2.stubArray = stubArray;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/util/stubFalse.js
var require_stubFalse = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/util/stubFalse.js"(exports2) {
    function stubFalse() {
      return false;
    }
    exports2.stubFalse = stubFalse;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/util/stubObject.js
var require_stubObject = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/util/stubObject.js"(exports2) {
    function stubObject() {
      return {};
    }
    exports2.stubObject = stubObject;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/util/stubString.js
var require_stubString = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/util/stubString.js"(exports2) {
    function stubString() {
      return "";
    }
    exports2.stubString = stubString;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/util/stubTrue.js
var require_stubTrue = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/util/stubTrue.js"(exports2) {
    function stubTrue() {
      return true;
    }
    exports2.stubTrue = stubTrue;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/_internal/MAX_ARRAY_LENGTH.js
var require_MAX_ARRAY_LENGTH = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/_internal/MAX_ARRAY_LENGTH.js"(exports2) {
    var MAX_ARRAY_LENGTH = 4294967295;
    exports2.MAX_ARRAY_LENGTH = MAX_ARRAY_LENGTH;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/util/toLength.js
var require_toLength = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/util/toLength.js"(exports2) {
    var require_toInteger2 = require_toInteger();
    var require_clamp2 = require_clamp();
    var require_MAX_ARRAY_LENGTH2 = require_MAX_ARRAY_LENGTH();
    function toLength(value) {
      if (value == null) return 0;
      return require_clamp2.clamp(require_toInteger2.toInteger(value), 0, require_MAX_ARRAY_LENGTH2.MAX_ARRAY_LENGTH);
    }
    exports2.toLength = toLength;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/util/toPlainObject.js
var require_toPlainObject = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/util/toPlainObject.js"(exports2) {
    var require_keysIn2 = require_keysIn();
    function toPlainObject(value) {
      const plainObject = {};
      const valueKeys = require_keysIn2.keysIn(value);
      for (let i4 = 0; i4 < valueKeys.length; i4++) {
        const key = valueKeys[i4];
        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;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/util/toSafeInteger.js
var require_toSafeInteger = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/util/toSafeInteger.js"(exports2) {
    var require_toInteger2 = require_toInteger();
    var require_clamp2 = require_clamp();
    var require_MAX_SAFE_INTEGER2 = require_MAX_SAFE_INTEGER();
    function toSafeInteger(value) {
      if (value == null) return 0;
      return require_clamp2.clamp(require_toInteger2.toInteger(value), -require_MAX_SAFE_INTEGER2.MAX_SAFE_INTEGER, require_MAX_SAFE_INTEGER2.MAX_SAFE_INTEGER);
    }
    exports2.toSafeInteger = toSafeInteger;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/util/uniqueId.js
var require_uniqueId = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/util/uniqueId.js"(exports2) {
    var idCounter = 0;
    function uniqueId(prefix = "") {
      return `${prefix}${++idCounter}`;
    }
    exports2.uniqueId = uniqueId;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/compat.js
var require_compat = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/compat.js"(exports2) {
    var require_runtime2 = require_runtime();
    var require_isArray2 = require_isArray();
    var require_isPlainObject3 = require_isPlainObject();
    var require_eq3 = require_eq2();
    var require_isEqual2 = require_isEqual();
    var require_castArray2 = require_castArray();
    var require_isArrayLike3 = require_isArrayLike();
    var require_chunk3 = require_chunk2();
    var require_compact3 = require_compact2();
    var require_concat4 = require_concat();
    var require_toString2 = require_toString();
    var require_toPath2 = require_toPath();
    var require_get4 = require_get();
    var require_property2 = require_property();
    var require_isObject3 = require_isObject();
    var require_isMatchWith2 = require_isMatchWith();
    var require_isMatch2 = require_isMatch();
    var require_matches2 = require_matches();
    var require_cloneDeepWith3 = require_cloneDeepWith2();
    var require_cloneDeep3 = require_cloneDeep2();
    var require_isArguments3 = require_isArguments();
    var require_has2 = require_has();
    var require_matchesProperty2 = require_matchesProperty();
    var require_iteratee2 = require_iteratee();
    var require_countBy2 = require_countBy();
    var require_isObjectLike2 = require_isObjectLike();
    var require_isArrayLikeObject2 = require_isArrayLikeObject();
    var require_difference3 = require_difference2();
    var require_last4 = require_last2();
    var require_differenceBy3 = require_differenceBy2();
    var require_differenceWith3 = require_differenceWith2();
    var require_isSymbol3 = require_isSymbol();
    var require_toNumber2 = require_toNumber();
    var require_toFinite2 = require_toFinite();
    var require_toInteger2 = require_toInteger();
    var require_drop3 = require_drop2();
    var require_dropRight3 = require_dropRight2();
    var require_dropRightWhile3 = require_dropRightWhile2();
    var require_dropWhile3 = require_dropWhile2();
    var require_forEach3 = require_forEach();
    require_each();
    var require_forEachRight2 = require_forEachRight();
    require_eachRight();
    var require_every3 = require_every();
    var require_isString3 = require_isString();
    var require_fill3 = require_fill2();
    var require_filter4 = require_filter();
    var require_find4 = require_find();
    var require_identity6 = require_identity3();
    var require_findIndex3 = require_findIndex();
    var require_findLast2 = require_findLast();
    var require_findLastIndex2 = require_findLastIndex();
    var require_head3 = require_head2();
    require_first();
    var require_flattenDepth2 = require_flattenDepth();
    var require_map5 = require_map3();
    var require_flatMap3 = require_flatMap();
    var require_flatMapDepth2 = require_flatMapDepth();
    var require_flatMapDeep2 = require_flatMapDeep();
    var require_flatten3 = require_flatten2();
    var require_flattenDeep2 = require_flattenDeep();
    var require_groupBy4 = require_groupBy2();
    var require_includes2 = require_includes();
    var require_indexOf2 = require_indexOf();
    var require_initial3 = require_initial2();
    var require_intersection3 = require_intersection2();
    var require_intersectionBy3 = require_intersectionBy2();
    var require_uniq3 = require_uniq2();
    var require_intersectionWith3 = require_intersectionWith2();
    var require_invokeMap2 = require_invokeMap();
    var require_join2 = require_join();
    var require_reduce3 = require_reduce();
    var require_keyBy2 = require_keyBy();
    var require_lastIndexOf2 = require_lastIndexOf();
    var require_nth2 = require_nth();
    var require_orderBy2 = require_orderBy();
    var require_partition5 = require_partition();
    var require_pull3 = require_pull2();
    var require_pullAll2 = require_pullAll();
    var require_pullAllBy2 = require_pullAllBy();
    var require_pullAllWith2 = require_pullAllWith();
    var require_at2 = require_at();
    var require_unset2 = require_unset();
    var require_pullAt2 = require_pullAt();
    var require_reduceRight2 = require_reduceRight();
    var require_negate3 = require_negate();
    var require_reject2 = require_reject();
    var require_remove5 = require_remove4();
    var require_reverse3 = require_reverse2();
    var require_sample4 = require_sample2();
    var require_clamp2 = require_clamp();
    var require_isMap3 = require_isMap2();
    var require_isSet3 = require_isSet2();
    var require_toArray4 = require_toArray2();
    var require_sampleSize3 = require_sampleSize2();
    var require_isTypedArray3 = require_isTypedArray2();
    var require_times2 = require_times();
    var require_keys2 = require_keys();
    var require_values2 = require_values();
    var require_isNil3 = require_isNil2();
    var require_shuffle3 = require_shuffle2();
    var require_size2 = require_size();
    var require_slice2 = require_slice();
    var require_some2 = require_some();
    var require_sortBy2 = require_sortBy();
    var require_isNumber3 = require_isNumber2();
    var require_isNaN3 = require_isNaN();
    var require_sortedIndexBy2 = require_sortedIndexBy();
    var require_sortedIndex2 = require_sortedIndex();
    var require_sortedIndexOf2 = require_sortedIndexOf();
    var require_sortedLastIndexBy2 = require_sortedLastIndexBy();
    var require_sortedLastIndex2 = require_sortedLastIndex();
    var require_sortedLastIndexOf2 = require_sortedLastIndexOf();
    var require_tail3 = require_tail2();
    var require_take4 = require_take2();
    var require_takeRight3 = require_takeRight2();
    var require_takeRightWhile2 = require_takeRightWhile();
    var require_takeWhile3 = require_takeWhile();
    var require_union2 = require_union();
    var require_unionBy2 = require_unionBy();
    var require_unionWith2 = require_unionWith();
    var require_uniqBy3 = require_uniqBy2();
    var require_uniqWith3 = require_uniqWith2();
    var require_unzip3 = require_unzip2();
    var require_unzipWith2 = require_unzipWith();
    var require_without3 = require_without2();
    var require_xor2 = require_xor();
    var require_xorBy2 = require_xorBy();
    var require_xorWith2 = require_xorWith();
    var require_zip5 = require_zip2();
    var require_zipObject2 = require_zipObject();
    var require_updateWith2 = require_updateWith();
    var require_set5 = require_set3();
    var require_zipObjectDeep2 = require_zipObjectDeep();
    var require_zipWith3 = require_zipWith();
    var require_after3 = require_after();
    var require_ary3 = require_ary2();
    var require_attempt2 = require_attempt();
    var require_before2 = require_before();
    var require_bind2 = require_bind();
    var require_bindKey2 = require_bindKey();
    var require_curry2 = require_curry();
    var require_curryRight2 = require_curryRight();
    var require_debounce4 = require_debounce2();
    var require_defer3 = require_defer();
    var require_delay3 = require_delay();
    var require_flip2 = require_flip();
    var require_flow3 = require_flow2();
    var require_flowRight3 = require_flowRight2();
    var require_memoize2 = require_memoize();
    var require_nthArg2 = require_nthArg();
    var require_once3 = require_once2();
    var require_overArgs2 = require_overArgs();
    var require_partial4 = require_partial3();
    var require_partialRight3 = require_partialRight2();
    var require_rearg2 = require_rearg();
    var require_rest3 = require_rest2();
    var require_spread2 = require_spread();
    var require_throttle3 = require_throttle();
    var require_unary2 = require_unary();
    var require_wrap2 = require_wrap();
    var require_add2 = require_add();
    var require_ceil2 = require_ceil();
    var require_divide2 = require_divide();
    var require_floor4 = require_floor();
    var require_inRange2 = require_inRange();
    var require_max4 = require_max();
    var require_maxBy2 = require_maxBy();
    var require_sumBy3 = require_sumBy();
    var require_sum2 = require_sum();
    var require_mean2 = require_mean();
    var require_meanBy3 = require_meanBy2();
    var require_min4 = require_min();
    var require_minBy2 = require_minBy();
    var require_multiply2 = require_multiply();
    var require_parseInt2 = require_parseInt();
    var require_random3 = require_random2();
    var require_range6 = require_range3();
    var require_rangeRight2 = require_rangeRight();
    var require_round3 = require_round();
    var require_subtract2 = require_subtract();
    var require_noop4 = require_noop2();
    var require_assign2 = require_assign();
    var require_keysIn2 = require_keysIn();
    var require_assignIn2 = require_assignIn();
    var require_assignInWith2 = require_assignInWith();
    var require_assignWith2 = require_assignWith();
    var require_clone6 = require_clone2();
    var require_cloneWith2 = require_cloneWith();
    var require_create2 = require_create();
    var require_defaults3 = require_defaults();
    var require_defaultsDeep2 = require_defaultsDeep();
    require_extend();
    require_extendWith();
    var require_findKey3 = require_findKey2();
    var require_findLastKey2 = require_findLastKey();
    var require_forIn2 = require_forIn();
    var require_forInRight2 = require_forInRight();
    var require_forOwn2 = require_forOwn();
    var require_forOwnRight2 = require_forOwnRight();
    var require_fromPairs2 = require_fromPairs();
    var require_functions2 = require_functions();
    var require_functionsIn2 = require_functionsIn();
    var require_hasIn2 = require_hasIn();
    var require_invert3 = require_invert2();
    var require_invertBy2 = require_invertBy();
    var require_mapKeys3 = require_mapKeys2();
    var require_mapValues3 = require_mapValues2();
    var require_mergeWith3 = require_mergeWith();
    var require_merge7 = require_merge4();
    var require_omit2 = require_omit();
    var require_omitBy2 = require_omitBy();
    var require_pick2 = require_pick();
    var require_pickBy2 = require_pickBy();
    var require_propertyOf2 = require_propertyOf();
    var require_result2 = require_result();
    var require_setWith2 = require_setWith();
    var require_toDefaulted2 = require_toDefaulted();
    var require_toPairs2 = require_toPairs();
    var require_toPairsIn2 = require_toPairsIn();
    var require_isBuffer3 = require_isBuffer2();
    var require_transform2 = require_transform();
    var require_update2 = require_update();
    var require_valuesIn2 = require_valuesIn();
    var require_isFunction4 = require_isFunction2();
    var require_isLength3 = require_isLength2();
    var require_isNative2 = require_isNative();
    var require_isNull3 = require_isNull2();
    var require_isUndefined3 = require_isUndefined2();
    var require_conformsTo2 = require_conformsTo();
    var require_conforms2 = require_conforms();
    var require_isArrayBuffer3 = require_isArrayBuffer2();
    var require_isBoolean3 = require_isBoolean2();
    var require_isDate4 = require_isDate2();
    var require_isElement2 = require_isElement();
    var require_isEmpty3 = require_isEmpty();
    var require_isEqualWith3 = require_isEqualWith2();
    var require_isError3 = require_isError2();
    var require_isFinite3 = require_isFinite();
    var require_isInteger3 = require_isInteger();
    var require_isRegExp3 = require_isRegExp2();
    var require_isSafeInteger2 = require_isSafeInteger();
    var require_isWeakMap3 = require_isWeakMap2();
    var require_isWeakSet3 = require_isWeakSet2();
    var require_capitalize3 = require_capitalize2();
    var require_bindAll2 = require_bindAll();
    var require_deburr3 = require_deburr2();
    var require_words2 = require_words();
    var require_camelCase2 = require_camelCase();
    var require_endsWith2 = require_endsWith();
    var require_escape6 = require_escape4();
    var require_escapeRegExp3 = require_escapeRegExp2();
    var require_kebabCase2 = require_kebabCase();
    var require_lowerCase2 = require_lowerCase();
    var require_lowerFirst3 = require_lowerFirst2();
    var require_pad2 = require_pad();
    var require_padEnd2 = require_padEnd();
    var require_padStart2 = require_padStart();
    var require_repeat3 = require_repeat();
    var require_replace2 = require_replace();
    var require_snakeCase2 = require_snakeCase();
    var require_split3 = require_split();
    var require_startCase2 = require_startCase();
    var require_startsWith2 = require_startsWith();
    var require_template2 = require_template();
    var require_templateSettings2 = require_templateSettings();
    var require_toLower2 = require_toLower();
    var require_toUpper2 = require_toUpper();
    var require_trim3 = require_trim2();
    var require_trimEnd3 = require_trimEnd2();
    var require_trimStart3 = require_trimStart2();
    var require_truncate5 = require_truncate3();
    var require_unescape4 = require_unescape3();
    var require_upperCase2 = require_upperCase();
    var require_upperFirst3 = require_upperFirst2();
    var require_cond2 = require_cond();
    var require_constant2 = require_constant();
    var require_defaultTo2 = require_defaultTo();
    var require_gt3 = require_gt2();
    var require_gte3 = require_gte2();
    var require_invoke2 = require_invoke();
    var require_lt3 = require_lt2();
    var require_lte3 = require_lte2();
    var require_method2 = require_method();
    var require_methodOf2 = require_methodOf();
    var require_now2 = require_now();
    var require_over2 = require_over();
    var require_overEvery2 = require_overEvery();
    var require_overSome2 = require_overSome();
    var require_stubArray2 = require_stubArray();
    var require_stubFalse2 = require_stubFalse();
    var require_stubObject2 = require_stubObject();
    var require_stubString2 = require_stubString();
    var require_stubTrue2 = require_stubTrue();
    var require_toLength2 = require_toLength();
    var require_toPlainObject2 = require_toPlainObject();
    var require_toSafeInteger2 = require_toSafeInteger();
    var require_uniqueId2 = require_uniqueId();
    var compat_exports = /* @__PURE__ */ require_runtime2.__exportAll({
      add: () => require_add2.add,
      after: () => require_after3.after,
      ary: () => require_ary3.ary,
      assign: () => require_assign2.assign,
      assignIn: () => require_assignIn2.assignIn,
      assignInWith: () => require_assignInWith2.assignInWith,
      assignWith: () => require_assignWith2.assignWith,
      at: () => require_at2.at,
      attempt: () => require_attempt2.attempt,
      before: () => require_before2.before,
      bind: () => require_bind2.bind,
      bindAll: () => require_bindAll2.bindAll,
      bindKey: () => require_bindKey2.bindKey,
      camelCase: () => require_camelCase2.camelCase,
      capitalize: () => require_capitalize3.capitalize,
      castArray: () => require_castArray2.castArray,
      ceil: () => require_ceil2.ceil,
      chunk: () => require_chunk3.chunk,
      clamp: () => require_clamp2.clamp,
      clone: () => require_clone6.clone,
      cloneDeep: () => require_cloneDeep3.cloneDeep,
      cloneDeepWith: () => require_cloneDeepWith3.cloneDeepWith,
      cloneWith: () => require_cloneWith2.cloneWith,
      compact: () => require_compact3.compact,
      concat: () => require_concat4.concat,
      cond: () => require_cond2.cond,
      conforms: () => require_conforms2.conforms,
      conformsTo: () => require_conformsTo2.conformsTo,
      constant: () => require_constant2.constant,
      countBy: () => require_countBy2.countBy,
      create: () => require_create2.create,
      curry: () => require_curry2.curry,
      curryRight: () => require_curryRight2.curryRight,
      debounce: () => require_debounce4.debounce,
      deburr: () => require_deburr3.deburr,
      defaultTo: () => require_defaultTo2.defaultTo,
      defaults: () => require_defaults3.defaults,
      defaultsDeep: () => require_defaultsDeep2.defaultsDeep,
      defer: () => require_defer3.defer,
      delay: () => require_delay3.delay,
      difference: () => require_difference3.difference,
      differenceBy: () => require_differenceBy3.differenceBy,
      differenceWith: () => require_differenceWith3.differenceWith,
      divide: () => require_divide2.divide,
      drop: () => require_drop3.drop,
      dropRight: () => require_dropRight3.dropRight,
      dropRightWhile: () => require_dropRightWhile3.dropRightWhile,
      dropWhile: () => require_dropWhile3.dropWhile,
      each: () => require_forEach3.forEach,
      eachRight: () => require_forEachRight2.forEachRight,
      endsWith: () => require_endsWith2.endsWith,
      eq: () => require_eq3.eq,
      escape: () => require_escape6.escape,
      escapeRegExp: () => require_escapeRegExp3.escapeRegExp,
      every: () => require_every3.every,
      extend: () => require_assignIn2.assignIn,
      extendWith: () => require_assignInWith2.assignInWith,
      fill: () => require_fill3.fill,
      filter: () => require_filter4.filter,
      find: () => require_find4.find,
      findIndex: () => require_findIndex3.findIndex,
      findKey: () => require_findKey3.findKey,
      findLast: () => require_findLast2.findLast,
      findLastIndex: () => require_findLastIndex2.findLastIndex,
      findLastKey: () => require_findLastKey2.findLastKey,
      first: () => require_head3.head,
      flatMap: () => require_flatMap3.flatMap,
      flatMapDeep: () => require_flatMapDeep2.flatMapDeep,
      flatMapDepth: () => require_flatMapDepth2.flatMapDepth,
      flatten: () => require_flatten3.flatten,
      flattenDeep: () => require_flattenDeep2.flattenDeep,
      flattenDepth: () => require_flattenDepth2.flattenDepth,
      flip: () => require_flip2.flip,
      floor: () => require_floor4.floor,
      flow: () => require_flow3.flow,
      flowRight: () => require_flowRight3.flowRight,
      forEach: () => require_forEach3.forEach,
      forEachRight: () => require_forEachRight2.forEachRight,
      forIn: () => require_forIn2.forIn,
      forInRight: () => require_forInRight2.forInRight,
      forOwn: () => require_forOwn2.forOwn,
      forOwnRight: () => require_forOwnRight2.forOwnRight,
      fromPairs: () => require_fromPairs2.fromPairs,
      functions: () => require_functions2.functions,
      functionsIn: () => require_functionsIn2.functionsIn,
      get: () => require_get4.get,
      groupBy: () => require_groupBy4.groupBy,
      gt: () => require_gt3.gt,
      gte: () => require_gte3.gte,
      has: () => require_has2.has,
      hasIn: () => require_hasIn2.hasIn,
      head: () => require_head3.head,
      identity: () => require_identity6.identity,
      inRange: () => require_inRange2.inRange,
      includes: () => require_includes2.includes,
      indexOf: () => require_indexOf2.indexOf,
      initial: () => require_initial3.initial,
      intersection: () => require_intersection3.intersection,
      intersectionBy: () => require_intersectionBy3.intersectionBy,
      intersectionWith: () => require_intersectionWith3.intersectionWith,
      invert: () => require_invert3.invert,
      invertBy: () => require_invertBy2.invertBy,
      invoke: () => require_invoke2.invoke,
      invokeMap: () => require_invokeMap2.invokeMap,
      isArguments: () => require_isArguments3.isArguments,
      isArray: () => require_isArray2.isArray,
      isArrayBuffer: () => require_isArrayBuffer3.isArrayBuffer,
      isArrayLike: () => require_isArrayLike3.isArrayLike,
      isArrayLikeObject: () => require_isArrayLikeObject2.isArrayLikeObject,
      isBoolean: () => require_isBoolean3.isBoolean,
      isBuffer: () => require_isBuffer3.isBuffer,
      isDate: () => require_isDate4.isDate,
      isElement: () => require_isElement2.isElement,
      isEmpty: () => require_isEmpty3.isEmpty,
      isEqual: () => require_isEqual2.isEqual,
      isEqualWith: () => require_isEqualWith3.isEqualWith,
      isError: () => require_isError3.isError,
      isFinite: () => require_isFinite3.isFinite,
      isFunction: () => require_isFunction4.isFunction,
      isInteger: () => require_isInteger3.isInteger,
      isLength: () => require_isLength3.isLength,
      isMap: () => require_isMap3.isMap,
      isMatch: () => require_isMatch2.isMatch,
      isMatchWith: () => require_isMatchWith2.isMatchWith,
      isNaN: () => require_isNaN3.isNaN,
      isNative: () => require_isNative2.isNative,
      isNil: () => require_isNil3.isNil,
      isNull: () => require_isNull3.isNull,
      isNumber: () => require_isNumber3.isNumber,
      isObject: () => require_isObject3.isObject,
      isObjectLike: () => require_isObjectLike2.isObjectLike,
      isPlainObject: () => require_isPlainObject3.isPlainObject,
      isRegExp: () => require_isRegExp3.isRegExp,
      isSafeInteger: () => require_isSafeInteger2.isSafeInteger,
      isSet: () => require_isSet3.isSet,
      isString: () => require_isString3.isString,
      isSymbol: () => require_isSymbol3.isSymbol,
      isTypedArray: () => require_isTypedArray3.isTypedArray,
      isUndefined: () => require_isUndefined3.isUndefined,
      isWeakMap: () => require_isWeakMap3.isWeakMap,
      isWeakSet: () => require_isWeakSet3.isWeakSet,
      iteratee: () => require_iteratee2.iteratee,
      join: () => require_join2.join,
      kebabCase: () => require_kebabCase2.kebabCase,
      keyBy: () => require_keyBy2.keyBy,
      keys: () => require_keys2.keys,
      keysIn: () => require_keysIn2.keysIn,
      last: () => require_last4.last,
      lastIndexOf: () => require_lastIndexOf2.lastIndexOf,
      lowerCase: () => require_lowerCase2.lowerCase,
      lowerFirst: () => require_lowerFirst3.lowerFirst,
      lt: () => require_lt3.lt,
      lte: () => require_lte3.lte,
      map: () => require_map5.map,
      mapKeys: () => require_mapKeys3.mapKeys,
      mapValues: () => require_mapValues3.mapValues,
      matches: () => require_matches2.matches,
      matchesProperty: () => require_matchesProperty2.matchesProperty,
      max: () => require_max4.max,
      maxBy: () => require_maxBy2.maxBy,
      mean: () => require_mean2.mean,
      meanBy: () => require_meanBy3.meanBy,
      memoize: () => require_memoize2.memoize,
      merge: () => require_merge7.merge,
      mergeWith: () => require_mergeWith3.mergeWith,
      method: () => require_method2.method,
      methodOf: () => require_methodOf2.methodOf,
      min: () => require_min4.min,
      minBy: () => require_minBy2.minBy,
      multiply: () => require_multiply2.multiply,
      negate: () => require_negate3.negate,
      noop: () => require_noop4.noop,
      now: () => require_now2.now,
      nth: () => require_nth2.nth,
      nthArg: () => require_nthArg2.nthArg,
      omit: () => require_omit2.omit,
      omitBy: () => require_omitBy2.omitBy,
      once: () => require_once3.once,
      orderBy: () => require_orderBy2.orderBy,
      over: () => require_over2.over,
      overArgs: () => require_overArgs2.overArgs,
      overEvery: () => require_overEvery2.overEvery,
      overSome: () => require_overSome2.overSome,
      pad: () => require_pad2.pad,
      padEnd: () => require_padEnd2.padEnd,
      padStart: () => require_padStart2.padStart,
      parseInt: () => require_parseInt2.parseInt,
      partial: () => require_partial4.partial,
      partialRight: () => require_partialRight3.partialRight,
      partition: () => require_partition5.partition,
      pick: () => require_pick2.pick,
      pickBy: () => require_pickBy2.pickBy,
      property: () => require_property2.property,
      propertyOf: () => require_propertyOf2.propertyOf,
      pull: () => require_pull3.pull,
      pullAll: () => require_pullAll2.pullAll,
      pullAllBy: () => require_pullAllBy2.pullAllBy,
      pullAllWith: () => require_pullAllWith2.pullAllWith,
      pullAt: () => require_pullAt2.pullAt,
      random: () => require_random3.random,
      range: () => require_range6.range,
      rangeRight: () => require_rangeRight2.rangeRight,
      rearg: () => require_rearg2.rearg,
      reduce: () => require_reduce3.reduce,
      reduceRight: () => require_reduceRight2.reduceRight,
      reject: () => require_reject2.reject,
      remove: () => require_remove5.remove,
      repeat: () => require_repeat3.repeat,
      replace: () => require_replace2.replace,
      rest: () => require_rest3.rest,
      result: () => require_result2.result,
      reverse: () => require_reverse3.reverse,
      round: () => require_round3.round,
      sample: () => require_sample4.sample,
      sampleSize: () => require_sampleSize3.sampleSize,
      set: () => require_set5.set,
      setWith: () => require_setWith2.setWith,
      shuffle: () => require_shuffle3.shuffle,
      size: () => require_size2.size,
      slice: () => require_slice2.slice,
      snakeCase: () => require_snakeCase2.snakeCase,
      some: () => require_some2.some,
      sortBy: () => require_sortBy2.sortBy,
      sortedIndex: () => require_sortedIndex2.sortedIndex,
      sortedIndexBy: () => require_sortedIndexBy2.sortedIndexBy,
      sortedIndexOf: () => require_sortedIndexOf2.sortedIndexOf,
      sortedLastIndex: () => require_sortedLastIndex2.sortedLastIndex,
      sortedLastIndexBy: () => require_sortedLastIndexBy2.sortedLastIndexBy,
      sortedLastIndexOf: () => require_sortedLastIndexOf2.sortedLastIndexOf,
      split: () => require_split3.split,
      spread: () => require_spread2.spread,
      startCase: () => require_startCase2.startCase,
      startsWith: () => require_startsWith2.startsWith,
      stubArray: () => require_stubArray2.stubArray,
      stubFalse: () => require_stubFalse2.stubFalse,
      stubObject: () => require_stubObject2.stubObject,
      stubString: () => require_stubString2.stubString,
      stubTrue: () => require_stubTrue2.stubTrue,
      subtract: () => require_subtract2.subtract,
      sum: () => require_sum2.sum,
      sumBy: () => require_sumBy3.sumBy,
      tail: () => require_tail3.tail,
      take: () => require_take4.take,
      takeRight: () => require_takeRight3.takeRight,
      takeRightWhile: () => require_takeRightWhile2.takeRightWhile,
      takeWhile: () => require_takeWhile3.takeWhile,
      template: () => require_template2.template,
      templateSettings: () => require_templateSettings2.templateSettings,
      throttle: () => require_throttle3.throttle,
      times: () => require_times2.times,
      toArray: () => require_toArray4.toArray,
      toDefaulted: () => require_toDefaulted2.toDefaulted,
      toFinite: () => require_toFinite2.toFinite,
      toInteger: () => require_toInteger2.toInteger,
      toLength: () => require_toLength2.toLength,
      toLower: () => require_toLower2.toLower,
      toNumber: () => require_toNumber2.toNumber,
      toPairs: () => require_toPairs2.toPairs,
      toPairsIn: () => require_toPairsIn2.toPairsIn,
      toPath: () => require_toPath2.toPath,
      toPlainObject: () => require_toPlainObject2.toPlainObject,
      toSafeInteger: () => require_toSafeInteger2.toSafeInteger,
      toString: () => require_toString2.toString,
      toUpper: () => require_toUpper2.toUpper,
      transform: () => require_transform2.transform,
      trim: () => require_trim3.trim,
      trimEnd: () => require_trimEnd3.trimEnd,
      trimStart: () => require_trimStart3.trimStart,
      truncate: () => require_truncate5.truncate,
      unary: () => require_unary2.unary,
      unescape: () => require_unescape4.unescape,
      union: () => require_union2.union,
      unionBy: () => require_unionBy2.unionBy,
      unionWith: () => require_unionWith2.unionWith,
      uniq: () => require_uniq3.uniq,
      uniqBy: () => require_uniqBy3.uniqBy,
      uniqWith: () => require_uniqWith3.uniqWith,
      uniqueId: () => require_uniqueId2.uniqueId,
      unset: () => require_unset2.unset,
      unzip: () => require_unzip3.unzip,
      unzipWith: () => require_unzipWith2.unzipWith,
      update: () => require_update2.update,
      updateWith: () => require_updateWith2.updateWith,
      upperCase: () => require_upperCase2.upperCase,
      upperFirst: () => require_upperFirst3.upperFirst,
      values: () => require_values2.values,
      valuesIn: () => require_valuesIn2.valuesIn,
      without: () => require_without3.without,
      words: () => require_words2.words,
      wrap: () => require_wrap2.wrap,
      xor: () => require_xor2.xor,
      xorBy: () => require_xorBy2.xorBy,
      xorWith: () => require_xorWith2.xorWith,
      zip: () => require_zip5.zip,
      zipObject: () => require_zipObject2.zipObject,
      zipObjectDeep: () => require_zipObjectDeep2.zipObjectDeep,
      zipWith: () => require_zipWith3.zipWith
    });
    Object.defineProperty(exports2, "compat_exports", {
      enumerable: true,
      get: function() {
        return compat_exports;
      }
    });
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/array/every.js
var require_every = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/array/every.js"(exports2) {
    var require_identity6 = require_identity2();
    var require_isArrayLike3 = require_isArrayLike();
    var require_iteratee2 = require_iteratee();
    var require_isIterateeCall2 = require_isIterateeCall();
    require_compat();
    function every(source, doesMatch, guard) {
      if (!source) return true;
      if (guard && require_isIterateeCall2.isIterateeCall(source, doesMatch, guard)) doesMatch = void 0;
      const predicate = require_iteratee2.iteratee(doesMatch ?? require_identity6.identity);
      if (!require_isArrayLike3.isArrayLike(source)) {
        const keys4 = Object.keys(source);
        for (let i4 = 0; i4 < keys4.length; i4++) {
          const key = keys4[i4];
          const value = source[key];
          if (!predicate(value, key, source)) return false;
        }
        return true;
      }
      for (let i4 = 0; i4 < source.length; i4++) if (!predicate(source[i4], i4, source)) return false;
      return true;
    }
    exports2.every = every;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/toolkit.js
var require_toolkit = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/toolkit.js"(exports2) {
    var require_compat3 = require_compat();
    var toolkit = ((value) => {
      return value;
    });
    Object.assign(toolkit, require_compat3.compat_exports);
    toolkit.partial.placeholder = toolkit;
    toolkit.partialRight.placeholder = toolkit;
    exports2.toolkit = toolkit;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/index.js
var require_compat2 = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/es-toolkit/1.50.0/2f37e656dd5434ab09ae20dfd98ee47bee00c7a5b48799f7a9456482061ed917/node_modules/es-toolkit/dist/compat/index.js"(exports2) {
    Object.defineProperties(exports2, {
      __esModule: { value: true },
      [Symbol.toStringTag]: { value: "Module" }
    });
    var require_isArray2 = require_isArray();
    var require_isPlainObject3 = require_isPlainObject();
    var require_eq3 = require_eq2();
    var require_isEqual2 = require_isEqual();
    var require_castArray2 = require_castArray();
    var require_isArrayLike3 = require_isArrayLike();
    var require_chunk3 = require_chunk2();
    var require_compact3 = require_compact2();
    var require_concat4 = require_concat();
    var require_toString2 = require_toString();
    var require_toPath2 = require_toPath();
    var require_get4 = require_get();
    var require_property2 = require_property();
    var require_isObject3 = require_isObject();
    var require_isMatchWith2 = require_isMatchWith();
    var require_isMatch2 = require_isMatch();
    var require_matches2 = require_matches();
    var require_cloneDeepWith3 = require_cloneDeepWith2();
    var require_cloneDeep3 = require_cloneDeep2();
    var require_isArguments3 = require_isArguments();
    var require_has2 = require_has();
    var require_matchesProperty2 = require_matchesProperty();
    var require_iteratee2 = require_iteratee();
    var require_countBy2 = require_countBy();
    var require_isObjectLike2 = require_isObjectLike();
    var require_isArrayLikeObject2 = require_isArrayLikeObject();
    var require_difference3 = require_difference2();
    var require_last4 = require_last2();
    var require_differenceBy3 = require_differenceBy2();
    var require_differenceWith3 = require_differenceWith2();
    var require_isSymbol3 = require_isSymbol();
    var require_toNumber2 = require_toNumber();
    var require_toFinite2 = require_toFinite();
    var require_toInteger2 = require_toInteger();
    var require_drop3 = require_drop2();
    var require_dropRight3 = require_dropRight2();
    var require_dropRightWhile3 = require_dropRightWhile2();
    var require_dropWhile3 = require_dropWhile2();
    var require_forEach3 = require_forEach();
    var require_forEachRight2 = require_forEachRight();
    var require_every3 = require_every();
    var require_isString3 = require_isString();
    var require_fill3 = require_fill2();
    var require_filter4 = require_filter();
    var require_find4 = require_find();
    var require_identity6 = require_identity3();
    var require_findIndex3 = require_findIndex();
    var require_findLast2 = require_findLast();
    var require_findLastIndex2 = require_findLastIndex();
    var require_head3 = require_head2();
    var require_flattenDepth2 = require_flattenDepth();
    var require_map5 = require_map3();
    var require_flatMap3 = require_flatMap();
    var require_flatMapDepth2 = require_flatMapDepth();
    var require_flatMapDeep2 = require_flatMapDeep();
    var require_flatten3 = require_flatten2();
    var require_flattenDeep2 = require_flattenDeep();
    var require_groupBy4 = require_groupBy2();
    var require_includes2 = require_includes();
    var require_indexOf2 = require_indexOf();
    var require_initial3 = require_initial2();
    var require_intersection3 = require_intersection2();
    var require_intersectionBy3 = require_intersectionBy2();
    var require_uniq3 = require_uniq2();
    var require_intersectionWith3 = require_intersectionWith2();
    var require_invokeMap2 = require_invokeMap();
    var require_join2 = require_join();
    var require_reduce3 = require_reduce();
    var require_keyBy2 = require_keyBy();
    var require_lastIndexOf2 = require_lastIndexOf();
    var require_nth2 = require_nth();
    var require_orderBy2 = require_orderBy();
    var require_partition5 = require_partition();
    var require_pull3 = require_pull2();
    var require_pullAll2 = require_pullAll();
    var require_pullAllBy2 = require_pullAllBy();
    var require_pullAllWith2 = require_pullAllWith();
    var require_at2 = require_at();
    var require_unset2 = require_unset();
    var require_pullAt2 = require_pullAt();
    var require_reduceRight2 = require_reduceRight();
    var require_negate3 = require_negate();
    var require_reject2 = require_reject();
    var require_remove5 = require_remove4();
    var require_reverse3 = require_reverse2();
    var require_sample4 = require_sample2();
    var require_clamp2 = require_clamp();
    var require_isMap3 = require_isMap2();
    var require_isSet3 = require_isSet2();
    var require_toArray4 = require_toArray2();
    var require_sampleSize3 = require_sampleSize2();
    var require_isTypedArray3 = require_isTypedArray2();
    var require_times2 = require_times();
    var require_keys2 = require_keys();
    var require_values2 = require_values();
    var require_isNil3 = require_isNil2();
    var require_shuffle3 = require_shuffle2();
    var require_size2 = require_size();
    var require_slice2 = require_slice();
    var require_some2 = require_some();
    var require_sortBy2 = require_sortBy();
    var require_isNumber3 = require_isNumber2();
    var require_isNaN3 = require_isNaN();
    var require_sortedIndexBy2 = require_sortedIndexBy();
    var require_sortedIndex2 = require_sortedIndex();
    var require_sortedIndexOf2 = require_sortedIndexOf();
    var require_sortedLastIndexBy2 = require_sortedLastIndexBy();
    var require_sortedLastIndex2 = require_sortedLastIndex();
    var require_sortedLastIndexOf2 = require_sortedLastIndexOf();
    var require_tail3 = require_tail2();
    var require_take4 = require_take2();
    var require_takeRight3 = require_takeRight2();
    var require_takeRightWhile2 = require_takeRightWhile();
    var require_takeWhile3 = require_takeWhile();
    var require_union2 = require_union();
    var require_unionBy2 = require_unionBy();
    var require_unionWith2 = require_unionWith();
    var require_uniqBy3 = require_uniqBy2();
    var require_uniqWith3 = require_uniqWith2();
    var require_unzip3 = require_unzip2();
    var require_unzipWith2 = require_unzipWith();
    var require_without3 = require_without2();
    var require_xor2 = require_xor();
    var require_xorBy2 = require_xorBy();
    var require_xorWith2 = require_xorWith();
    var require_zip5 = require_zip2();
    var require_zipObject2 = require_zipObject();
    var require_updateWith2 = require_updateWith();
    var require_set5 = require_set3();
    var require_zipObjectDeep2 = require_zipObjectDeep();
    var require_zipWith3 = require_zipWith();
    var require_after3 = require_after();
    var require_ary3 = require_ary2();
    var require_attempt2 = require_attempt();
    var require_before2 = require_before();
    var require_bind2 = require_bind();
    var require_bindKey2 = require_bindKey();
    var require_curry2 = require_curry();
    var require_curryRight2 = require_curryRight();
    var require_debounce4 = require_debounce2();
    var require_defer3 = require_defer();
    var require_delay3 = require_delay();
    var require_flip2 = require_flip();
    var require_flow3 = require_flow2();
    var require_flowRight3 = require_flowRight2();
    var require_memoize2 = require_memoize();
    var require_nthArg2 = require_nthArg();
    var require_once3 = require_once2();
    var require_overArgs2 = require_overArgs();
    var require_partial4 = require_partial3();
    var require_partialRight3 = require_partialRight2();
    var require_rearg2 = require_rearg();
    var require_rest3 = require_rest2();
    var require_spread2 = require_spread();
    var require_throttle3 = require_throttle();
    var require_unary2 = require_unary();
    var require_wrap2 = require_wrap();
    var require_add2 = require_add();
    var require_ceil2 = require_ceil();
    var require_divide2 = require_divide();
    var require_floor4 = require_floor();
    var require_inRange2 = require_inRange();
    var require_max4 = require_max();
    var require_maxBy2 = require_maxBy();
    var require_sumBy3 = require_sumBy();
    var require_sum2 = require_sum();
    var require_mean2 = require_mean();
    var require_meanBy3 = require_meanBy2();
    var require_min4 = require_min();
    var require_minBy2 = require_minBy();
    var require_multiply2 = require_multiply();
    var require_parseInt2 = require_parseInt();
    var require_random3 = require_random2();
    var require_range6 = require_range3();
    var require_rangeRight2 = require_rangeRight();
    var require_round3 = require_round();
    var require_subtract2 = require_subtract();
    var require_noop4 = require_noop2();
    var require_assign2 = require_assign();
    var require_keysIn2 = require_keysIn();
    var require_assignIn2 = require_assignIn();
    var require_assignInWith2 = require_assignInWith();
    var require_assignWith2 = require_assignWith();
    var require_clone6 = require_clone2();
    var require_cloneWith2 = require_cloneWith();
    var require_create2 = require_create();
    var require_defaults3 = require_defaults();
    var require_defaultsDeep2 = require_defaultsDeep();
    var require_findKey3 = require_findKey2();
    var require_findLastKey2 = require_findLastKey();
    var require_forIn2 = require_forIn();
    var require_forInRight2 = require_forInRight();
    var require_forOwn2 = require_forOwn();
    var require_forOwnRight2 = require_forOwnRight();
    var require_fromPairs2 = require_fromPairs();
    var require_functions2 = require_functions();
    var require_functionsIn2 = require_functionsIn();
    var require_hasIn2 = require_hasIn();
    var require_invert3 = require_invert2();
    var require_invertBy2 = require_invertBy();
    var require_mapKeys3 = require_mapKeys2();
    var require_mapValues3 = require_mapValues2();
    var require_mergeWith3 = require_mergeWith();
    var require_merge7 = require_merge4();
    var require_omit2 = require_omit();
    var require_omitBy2 = require_omitBy();
    var require_pick2 = require_pick();
    var require_pickBy2 = require_pickBy();
    var require_propertyOf2 = require_propertyOf();
    var require_result2 = require_result();
    var require_setWith2 = require_setWith();
    var require_toDefaulted2 = require_toDefaulted();
    var require_toPairs2 = require_toPairs();
    var require_toPairsIn2 = require_toPairsIn();
    var require_isBuffer3 = require_isBuffer2();
    var require_transform2 = require_transform();
    var require_update2 = require_update();
    var require_valuesIn2 = require_valuesIn();
    var require_isFunction4 = require_isFunction2();
    var require_isLength3 = require_isLength2();
    var require_isNative2 = require_isNative();
    var require_isNull3 = require_isNull2();
    var require_isUndefined3 = require_isUndefined2();
    var require_conformsTo2 = require_conformsTo();
    var require_conforms2 = require_conforms();
    var require_isArrayBuffer3 = require_isArrayBuffer2();
    var require_isBoolean3 = require_isBoolean2();
    var require_isDate4 = require_isDate2();
    var require_isElement2 = require_isElement();
    var require_isEmpty3 = require_isEmpty();
    var require_isEqualWith3 = require_isEqualWith2();
    var require_isError3 = require_isError2();
    var require_isFinite3 = require_isFinite();
    var require_isInteger3 = require_isInteger();
    var require_isRegExp3 = require_isRegExp2();
    var require_isSafeInteger2 = require_isSafeInteger();
    var require_isWeakMap3 = require_isWeakMap2();
    var require_isWeakSet3 = require_isWeakSet2();
    var require_capitalize3 = require_capitalize2();
    var require_bindAll2 = require_bindAll();
    var require_deburr3 = require_deburr2();
    var require_words2 = require_words();
    var require_camelCase2 = require_camelCase();
    var require_endsWith2 = require_endsWith();
    var require_escape6 = require_escape4();
    var require_escapeRegExp3 = require_escapeRegExp2();
    var require_kebabCase2 = require_kebabCase();
    var require_lowerCase2 = require_lowerCase();
    var require_lowerFirst3 = require_lowerFirst2();
    var require_pad2 = require_pad();
    var require_padEnd2 = require_padEnd();
    var require_padStart2 = require_padStart();
    var require_repeat3 = require_repeat();
    var require_replace2 = require_replace();
    var require_snakeCase2 = require_snakeCase();
    var require_split3 = require_split();
    var require_startCase2 = require_startCase();
    var require_startsWith2 = require_startsWith();
    var require_template2 = require_template();
    var require_templateSettings2 = require_templateSettings();
    var require_toLower2 = require_toLower();
    var require_toUpper2 = require_toUpper();
    var require_trim3 = require_trim2();
    var require_trimEnd3 = require_trimEnd2();
    var require_trimStart3 = require_trimStart2();
    var require_truncate5 = require_truncate3();
    var require_unescape4 = require_unescape3();
    var require_upperCase2 = require_upperCase();
    var require_upperFirst3 = require_upperFirst2();
    var require_cond2 = require_cond();
    var require_constant2 = require_constant();
    var require_defaultTo2 = require_defaultTo();
    var require_gt3 = require_gt2();
    var require_gte3 = require_gte2();
    var require_invoke2 = require_invoke();
    var require_lt3 = require_lt2();
    var require_lte3 = require_lte2();
    var require_method2 = require_method();
    var require_methodOf2 = require_methodOf();
    var require_now2 = require_now();
    var require_over2 = require_over();
    var require_overEvery2 = require_overEvery();
    var require_overSome2 = require_overSome();
    var require_stubArray2 = require_stubArray();
    var require_stubFalse2 = require_stubFalse();
    var require_stubObject2 = require_stubObject();
    var require_stubString2 = require_stubString();
    var require_stubTrue2 = require_stubTrue();
    var require_toLength2 = require_toLength();
    var require_toPlainObject2 = require_toPlainObject();
    var require_toSafeInteger2 = require_toSafeInteger();
    var require_uniqueId2 = require_uniqueId();
    require_compat();
    var require_toolkit2 = require_toolkit();
    exports2.add = require_add2.add;
    exports2.after = require_after3.after;
    exports2.ary = require_ary3.ary;
    exports2.assign = require_assign2.assign;
    exports2.assignIn = require_assignIn2.assignIn;
    exports2.assignInWith = require_assignInWith2.assignInWith;
    exports2.assignWith = require_assignWith2.assignWith;
    exports2.at = require_at2.at;
    exports2.attempt = require_attempt2.attempt;
    exports2.before = require_before2.before;
    exports2.bind = require_bind2.bind;
    exports2.bindAll = require_bindAll2.bindAll;
    exports2.bindKey = require_bindKey2.bindKey;
    exports2.camelCase = require_camelCase2.camelCase;
    exports2.capitalize = require_capitalize3.capitalize;
    exports2.castArray = require_castArray2.castArray;
    exports2.ceil = require_ceil2.ceil;
    exports2.chunk = require_chunk3.chunk;
    exports2.clamp = require_clamp2.clamp;
    exports2.clone = require_clone6.clone;
    exports2.cloneDeep = require_cloneDeep3.cloneDeep;
    exports2.cloneDeepWith = require_cloneDeepWith3.cloneDeepWith;
    exports2.cloneWith = require_cloneWith2.cloneWith;
    exports2.compact = require_compact3.compact;
    exports2.concat = require_concat4.concat;
    exports2.cond = require_cond2.cond;
    exports2.conforms = require_conforms2.conforms;
    exports2.conformsTo = require_conformsTo2.conformsTo;
    exports2.constant = require_constant2.constant;
    exports2.countBy = require_countBy2.countBy;
    exports2.create = require_create2.create;
    exports2.curry = require_curry2.curry;
    exports2.curryRight = require_curryRight2.curryRight;
    exports2.debounce = require_debounce4.debounce;
    exports2.deburr = require_deburr3.deburr;
    exports2.default = require_toolkit2.toolkit;
    exports2.defaultTo = require_defaultTo2.defaultTo;
    exports2.defaults = require_defaults3.defaults;
    exports2.defaultsDeep = require_defaultsDeep2.defaultsDeep;
    exports2.defer = require_defer3.defer;
    exports2.delay = require_delay3.delay;
    exports2.difference = require_difference3.difference;
    exports2.differenceBy = require_differenceBy3.differenceBy;
    exports2.differenceWith = require_differenceWith3.differenceWith;
    exports2.divide = require_divide2.divide;
    exports2.drop = require_drop3.drop;
    exports2.dropRight = require_dropRight3.dropRight;
    exports2.dropRightWhile = require_dropRightWhile3.dropRightWhile;
    exports2.dropWhile = require_dropWhile3.dropWhile;
    exports2.each = require_forEach3.forEach;
    exports2.eachRight = require_forEachRight2.forEachRight;
    exports2.endsWith = require_endsWith2.endsWith;
    exports2.eq = require_eq3.eq;
    exports2.escape = require_escape6.escape;
    exports2.escapeRegExp = require_escapeRegExp3.escapeRegExp;
    exports2.every = require_every3.every;
    exports2.extend = require_assignIn2.assignIn;
    exports2.extendWith = require_assignInWith2.assignInWith;
    exports2.fill = require_fill3.fill;
    exports2.filter = require_filter4.filter;
    exports2.find = require_find4.find;
    exports2.findIndex = require_findIndex3.findIndex;
    exports2.findKey = require_findKey3.findKey;
    exports2.findLast = require_findLast2.findLast;
    exports2.findLastIndex = require_findLastIndex2.findLastIndex;
    exports2.findLastKey = require_findLastKey2.findLastKey;
    exports2.first = require_head3.head;
    exports2.flatMap = require_flatMap3.flatMap;
    exports2.flatMapDeep = require_flatMapDeep2.flatMapDeep;
    exports2.flatMapDepth = require_flatMapDepth2.flatMapDepth;
    exports2.flatten = require_flatten3.flatten;
    exports2.flattenDeep = require_flattenDeep2.flattenDeep;
    exports2.flattenDepth = require_flattenDepth2.flattenDepth;
    exports2.flip = require_flip2.flip;
    exports2.floor = require_floor4.floor;
    exports2.flow = require_flow3.flow;
    exports2.flowRight = require_flowRight3.flowRight;
    exports2.forEach = require_forEach3.forEach;
    exports2.forEachRight = require_forEachRight2.forEachRight;
    exports2.forIn = require_forIn2.forIn;
    exports2.forInRight = require_forInRight2.forInRight;
    exports2.forOwn = require_forOwn2.forOwn;
    exports2.forOwnRight = require_forOwnRight2.forOwnRight;
    exports2.fromPairs = require_fromPairs2.fromPairs;
    exports2.functions = require_functions2.functions;
    exports2.functionsIn = require_functionsIn2.functionsIn;
    exports2.get = require_get4.get;
    exports2.groupBy = require_groupBy4.groupBy;
    exports2.gt = require_gt3.gt;
    exports2.gte = require_gte3.gte;
    exports2.has = require_has2.has;
    exports2.hasIn = require_hasIn2.hasIn;
    exports2.head = require_head3.head;
    exports2.identity = require_identity6.identity;
    exports2.inRange = require_inRange2.inRange;
    exports2.includes = require_includes2.includes;
    exports2.indexOf = require_indexOf2.indexOf;
    exports2.initial = require_initial3.initial;
    exports2.intersection = require_intersection3.intersection;
    exports2.intersectionBy = require_intersectionBy3.intersectionBy;
    exports2.intersectionWith = require_intersectionWith3.intersectionWith;
    exports2.invert = require_invert3.invert;
    exports2.invertBy = require_invertBy2.invertBy;
    exports2.invoke = require_invoke2.invoke;
    exports2.invokeMap = require_invokeMap2.invokeMap;
    exports2.isArguments = require_isArguments3.isArguments;
    exports2.isArray = require_isArray2.isArray;
    exports2.isArrayBuffer = require_isArrayBuffer3.isArrayBuffer;
    exports2.isArrayLike = require_isArrayLike3.isArrayLike;
    exports2.isArrayLikeObject = require_isArrayLikeObject2.isArrayLikeObject;
    exports2.isBoolean = require_isBoolean3.isBoolean;
    exports2.isBuffer = require_isBuffer3.isBuffer;
    exports2.isDate = require_isDate4.isDate;
    exports2.isElement = require_isElement2.isElement;
    exports2.isEmpty = require_isEmpty3.isEmpty;
    exports2.isEqual = require_isEqual2.isEqual;
    exports2.isEqualWith = require_isEqualWith3.isEqualWith;
    exports2.isError = require_isError3.isError;
    exports2.isFinite = require_isFinite3.isFinite;
    exports2.isFunction = require_isFunction4.isFunction;
    exports2.isInteger = require_isInteger3.isInteger;
    exports2.isLength = require_isLength3.isLength;
    exports2.isMap = require_isMap3.isMap;
    exports2.isMatch = require_isMatch2.isMatch;
    exports2.isMatchWith = require_isMatchWith2.isMatchWith;
    exports2.isNaN = require_isNaN3.isNaN;
    exports2.isNative = require_isNative2.isNative;
    exports2.isNil = require_isNil3.isNil;
    exports2.isNull = require_isNull3.isNull;
    exports2.isNumber = require_isNumber3.isNumber;
    exports2.isObject = require_isObject3.isObject;
    exports2.isObjectLike = require_isObjectLike2.isObjectLike;
    exports2.isPlainObject = require_isPlainObject3.isPlainObject;
    exports2.isRegExp = require_isRegExp3.isRegExp;
    exports2.isSafeInteger = require_isSafeInteger2.isSafeInteger;
    exports2.isSet = require_isSet3.isSet;
    exports2.isString = require_isString3.isString;
    exports2.isSymbol = require_isSymbol3.isSymbol;
    exports2.isTypedArray = require_isTypedArray3.isTypedArray;
    exports2.isUndefined = require_isUndefined3.isUndefined;
    exports2.isWeakMap = require_isWeakMap3.isWeakMap;
    exports2.isWeakSet = require_isWeakSet3.isWeakSet;
    exports2.iteratee = require_iteratee2.iteratee;
    exports2.join = require_join2.join;
    exports2.kebabCase = require_kebabCase2.kebabCase;
    exports2.keyBy = require_keyBy2.keyBy;
    exports2.keys = require_keys2.keys;
    exports2.keysIn = require_keysIn2.keysIn;
    exports2.last = require_last4.last;
    exports2.lastIndexOf = require_lastIndexOf2.lastIndexOf;
    exports2.lowerCase = require_lowerCase2.lowerCase;
    exports2.lowerFirst = require_lowerFirst3.lowerFirst;
    exports2.lt = require_lt3.lt;
    exports2.lte = require_lte3.lte;
    exports2.map = require_map5.map;
    exports2.mapKeys = require_mapKeys3.mapKeys;
    exports2.mapValues = require_mapValues3.mapValues;
    exports2.matches = require_matches2.matches;
    exports2.matchesProperty = require_matchesProperty2.matchesProperty;
    exports2.max = require_max4.max;
    exports2.maxBy = require_maxBy2.maxBy;
    exports2.mean = require_mean2.mean;
    exports2.meanBy = require_meanBy3.meanBy;
    exports2.memoize = require_memoize2.memoize;
    exports2.merge = require_merge7.merge;
    exports2.mergeWith = require_mergeWith3.mergeWith;
    exports2.method = require_method2.method;
    exports2.methodOf = require_methodOf2.methodOf;
    exports2.min = require_min4.min;
    exports2.minBy = require_minBy2.minBy;
    exports2.multiply = require_multiply2.multiply;
    exports2.negate = require_negate3.negate;
    exports2.noop = require_noop4.noop;
    exports2.now = require_now2.now;
    exports2.nth = require_nth2.nth;
    exports2.nthArg = require_nthArg2.nthArg;
    exports2.omit = require_omit2.omit;
    exports2.omitBy = require_omitBy2.omitBy;
    exports2.once = require_once3.once;
    exports2.orderBy = require_orderBy2.orderBy;
    exports2.over = require_over2.over;
    exports2.overArgs = require_overArgs2.overArgs;
    exports2.overEvery = require_overEvery2.overEvery;
    exports2.overSome = require_overSome2.overSome;
    exports2.pad = require_pad2.pad;
    exports2.padEnd = require_padEnd2.padEnd;
    exports2.padStart = require_padStart2.padStart;
    exports2.parseInt = require_parseInt2.parseInt;
    exports2.partial = require_partial4.partial;
    exports2.partialRight = require_partialRight3.partialRight;
    exports2.partition = require_partition5.partition;
    exports2.pick = require_pick2.pick;
    exports2.pickBy = require_pickBy2.pickBy;
    exports2.property = require_property2.property;
    exports2.propertyOf = require_propertyOf2.propertyOf;
    exports2.pull = require_pull3.pull;
    exports2.pullAll = require_pullAll2.pullAll;
    exports2.pullAllBy = require_pullAllBy2.pullAllBy;
    exports2.pullAllWith = require_pullAllWith2.pullAllWith;
    exports2.pullAt = require_pullAt2.pullAt;
    exports2.random = require_random3.random;
    exports2.range = require_range6.range;
    exports2.rangeRight = require_rangeRight2.rangeRight;
    exports2.rearg = require_rearg2.rearg;
    exports2.reduce = require_reduce3.reduce;
    exports2.reduceRight = require_reduceRight2.reduceRight;
    exports2.reject = require_reject2.reject;
    exports2.remove = require_remove5.remove;
    exports2.repeat = require_repeat3.repeat;
    exports2.replace = require_replace2.replace;
    exports2.rest = require_rest3.rest;
    exports2.result = require_result2.result;
    exports2.reverse = require_reverse3.reverse;
    exports2.round = require_round3.round;
    exports2.sample = require_sample4.sample;
    exports2.sampleSize = require_sampleSize3.sampleSize;
    exports2.set = require_set5.set;
    exports2.setWith = require_setWith2.setWith;
    exports2.shuffle = require_shuffle3.shuffle;
    exports2.size = require_size2.size;
    exports2.slice = require_slice2.slice;
    exports2.snakeCase = require_snakeCase2.snakeCase;
    exports2.some = require_some2.some;
    exports2.sortBy = require_sortBy2.sortBy;
    exports2.sortedIndex = require_sortedIndex2.sortedIndex;
    exports2.sortedIndexBy = require_sortedIndexBy2.sortedIndexBy;
    exports2.sortedIndexOf = require_sortedIndexOf2.sortedIndexOf;
    exports2.sortedLastIndex = require_sortedLastIndex2.sortedLastIndex;
    exports2.sortedLastIndexBy = require_sortedLastIndexBy2.sortedLastIndexBy;
    exports2.sortedLastIndexOf = require_sortedLastIndexOf2.sortedLastIndexOf;
    exports2.split = require_split3.split;
    exports2.spread = require_spread2.spread;
    exports2.startCase = require_startCase2.startCase;
    exports2.startsWith = require_startsWith2.startsWith;
    exports2.stubArray = require_stubArray2.stubArray;
    exports2.stubFalse = require_stubFalse2.stubFalse;
    exports2.stubObject = require_stubObject2.stubObject;
    exports2.stubString = require_stubString2.stubString;
    exports2.stubTrue = require_stubTrue2.stubTrue;
    exports2.subtract = require_subtract2.subtract;
    exports2.sum = require_sum2.sum;
    exports2.sumBy = require_sumBy3.sumBy;
    exports2.tail = require_tail3.tail;
    exports2.take = require_take4.take;
    exports2.takeRight = require_takeRight3.takeRight;
    exports2.takeRightWhile = require_takeRightWhile2.takeRightWhile;
    exports2.takeWhile = require_takeWhile3.takeWhile;
    exports2.template = require_template2.template;
    exports2.templateSettings = require_templateSettings2.templateSettings;
    exports2.throttle = require_throttle3.throttle;
    exports2.times = require_times2.times;
    exports2.toArray = require_toArray4.toArray;
    exports2.toDefaulted = require_toDefaulted2.toDefaulted;
    exports2.toFinite = require_toFinite2.toFinite;
    exports2.toInteger = require_toInteger2.toInteger;
    exports2.toLength = require_toLength2.toLength;
    exports2.toLower = require_toLower2.toLower;
    exports2.toNumber = require_toNumber2.toNumber;
    exports2.toPairs = require_toPairs2.toPairs;
    exports2.toPairsIn = require_toPairsIn2.toPairsIn;
    exports2.toPath = require_toPath2.toPath;
    exports2.toPlainObject = require_toPlainObject2.toPlainObject;
    exports2.toSafeInteger = require_toSafeInteger2.toSafeInteger;
    exports2.toString = require_toString2.toString;
    exports2.toUpper = require_toUpper2.toUpper;
    exports2.transform = require_transform2.transform;
    exports2.trim = require_trim3.trim;
    exports2.trimEnd = require_trimEnd3.trimEnd;
    exports2.trimStart = require_trimStart3.trimStart;
    exports2.truncate = require_truncate5.truncate;
    exports2.unary = require_unary2.unary;
    exports2.unescape = require_unescape4.unescape;
    exports2.union = require_union2.union;
    exports2.unionBy = require_unionBy2.unionBy;
    exports2.unionWith = require_unionWith2.unionWith;
    exports2.uniq = require_uniq3.uniq;
    exports2.uniqBy = require_uniqBy3.uniqBy;
    exports2.uniqWith = require_uniqWith3.uniqWith;
    exports2.uniqueId = require_uniqueId2.uniqueId;
    exports2.unset = require_unset2.unset;
    exports2.unzip = require_unzip3.unzip;
    exports2.unzipWith = require_unzipWith2.unzipWith;
    exports2.update = require_update2.update;
    exports2.updateWith = require_updateWith2.updateWith;
    exports2.upperCase = require_upperCase2.upperCase;
    exports2.upperFirst = require_upperFirst3.upperFirst;
    exports2.values = require_values2.values;
    exports2.valuesIn = require_valuesIn2.valuesIn;
    exports2.without = require_without3.without;
    exports2.words = require_words2.words;
    exports2.wrap = require_wrap2.wrap;
    exports2.xor = require_xor2.xor;
    exports2.xorBy = require_xorBy2.xorBy;
    exports2.xorWith = require_xorWith2.xorWith;
    exports2.zip = require_zip5.zip;
    exports2.zipObject = require_zipObject2.zipObject;
    exports2.zipObjectDeep = require_zipObjectDeep2.zipObjectDeep;
    exports2.zipWith = require_zipWith3.zipWith;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/p-try/2.2.0/2a3bb7d4662d1588ddca99166b04df704262848dc4df90020be8ece38fdef888/node_modules/p-try/index.js
var require_p_try = __commonJS({
  "../../../../../setup-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((resolve4) => {
      resolve4(fn(...arguments_));
    });
    module2.exports = pTry;
    module2.exports.default = pTry;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/p-limit/2.3.0/cf2c24bf5ef53ffc442b94247bda1b5aa1ab0ac9b3dbe0892cad298d4be0eb79/node_modules/p-limit/index.js
var require_p_limit2 = __commonJS({
  "../../../../../setup-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 pLimit2 = (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 run2 = (fn, resolve4, ...args) => {
        activeCount++;
        const result2 = pTry(fn, ...args);
        resolve4(result2);
        result2.then(next2, next2);
      };
      const enqueue = (fn, resolve4, ...args) => {
        if (activeCount < concurrency) {
          run2(fn, resolve4, ...args);
        } else {
          queue2.push(run2.bind(null, fn, resolve4, ...args));
        }
      };
      const generator = (fn, ...args) => new Promise((resolve4) => enqueue(fn, resolve4, ...args));
      Object.defineProperties(generator, {
        activeCount: {
          get: () => activeCount
        },
        pendingCount: {
          get: () => queue2.length
        },
        clearQueue: {
          value: () => {
            queue2.length = 0;
          }
        }
      });
      return generator;
    };
    module2.exports = pLimit2;
    module2.exports.default = pLimit2;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@yarnpkg/core/4.9.0/6a7c2315c9bb0e5147cca18162297477edf5ba620bb7ef59e7ebbd0aa7f5ecdf/node_modules/@yarnpkg/core/lib/miscUtils.js
var require_miscUtils = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@yarnpkg/core/4.9.0/6a7c2315c9bb0e5147cca18162297477edf5ba620bb7ef59e7ebbd0aa7f5ecdf/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_lib2();
    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: one2, more, zero: zero2 = more }) {
      return n2 === 0 ? zero2 : n2 === 1 ? one2 : 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, cleanup2) {
      if (cleanup2 == null)
        return await fn();
      try {
        return await fn();
      } finally {
        await cleanup2();
      }
    }
    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((resolve4, reject3) => {
        const chunks = [];
        stream2.on(`error`, (error) => {
          reject3(error);
        });
        stream2.on(`data`, (chunk) => {
          chunks.push(chunk);
        });
        stream2.on(`end`, () => {
          resolve4(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 resolve4;
      let reject3;
      const promise2 = new Promise((resolveFn, rejectFn) => {
        resolve4 = resolveFn;
        reject3 = rejectFn;
      });
      return { promise: promise2, resolve: resolve4, 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();
          }
        }, (err2) => {
          if (this.promises.get(key) === promise2) {
            deferred.reject(err2);
          }
        });
        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(path240) {
      return realRequire(fslib_1.npath.fromPortablePath(path240));
    }
    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(path240) {
      const cachedInstance = dynamicRequireFsTimeCache.get(path240);
      const stat2 = fslib_1.xfs.statSync(path240);
      if (cachedInstance?.mtime === stat2.mtimeMs)
        return cachedInstance.instance;
      const instance = dynamicRequireNoCache(path240);
      dynamicRequireFsTimeCache.set(path240, { 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(path240, { cachingStrategy = CachingStrategy.Node } = {}) {
      switch (cachingStrategy) {
        case CachingStrategy.NoCache:
          return dynamicRequireNoCache(path240);
        case CachingStrategy.FsTime:
          return dynamicRequireFsTime(path240);
        case CachingStrategy.Node:
          return dynamicRequireNode(path240);
        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((_, index2) => index2);
      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((index2) => {
        return asArray[index2];
      });
    }
    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(input, { env: env4 }) {
      let output = ``;
      let current = 0;
      let depth = 0;
      const iterator = input.matchAll(/\\(?<escaped>[\\$}])|\$\{(?<variable>[a-zA-Z]\w*)(?<operator>:-|-|(?=\}))|(?<unknown>\$\{)|\}/g);
      const skip2 = () => {
        const limit = depth;
        for (const { 0: match, index: index2, groups: { variable } = {} } of iterator) {
          if (variable) {
            depth++;
          } else if (match === `}`) {
            if (--depth < limit) {
              return index2 + match.length;
            }
          }
        }
        return input.length;
      };
      for (const { 0: match, index: index2, groups: { escaped, variable, operator, unknown } = {} } of iterator) {
        output += input.slice(current, index2);
        current = index2 + match.length;
        if (escaped) {
          output += escaped;
        } else if (variable) {
          const value = env4[variable];
          depth++;
          if (
            // ${VAR}
            operator === `` && value !== void 0 || // ${VAR:-
            operator === `:-` && value !== void 0 && value !== `` || // ${VAR-
            operator === `-` && value !== void 0
          ) {
            output += value;
            current = skip2();
          } else if (operator === ``) {
            throw new clipanion_1.UsageError(`Environment variable not found (${variable})`);
          }
        } else if (match === `}`) {
          if (depth === 0) {
            output += match;
          } else {
            depth--;
          }
        } else if (unknown) {
          throw new clipanion_1.UsageError(`Invalid environment variable substitution syntax: ${input}`);
        }
      }
      if (depth > 0)
        throw new clipanion_1.UsageError(`Incomplete variable substitution in input: ${input}`);
      return output + input.slice(current);
    }
    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 wrap2 = (value2) => ({ value: value2 });
      const wrappedTarget = wrap2(target2);
      const wrappedSources = sources.map((source) => wrap2(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];
    }
  }
});

// ../../../../../setup-pnpm/store/v11/links/@yarnpkg/core/4.9.0/6a7c2315c9bb0e5147cca18162297477edf5ba620bb7ef59e7ebbd0aa7f5ecdf/node_modules/@yarnpkg/core/lib/types.js
var require_types = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@yarnpkg/core/4.9.0/6a7c2315c9bb0e5147cca18162297477edf5ba620bb7ef59e7ebbd0aa7f5ecdf/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 = {}));
  }
});

// ../../../../../setup-pnpm/store/v11/links/@yarnpkg/core/4.9.0/6a7c2315c9bb0e5147cca18162297477edf5ba620bb7ef59e7ebbd0aa7f5ecdf/node_modules/@yarnpkg/core/lib/formatUtils.js
var require_formatUtils = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@yarnpkg/core/4.9.0/6a7c2315c9bb0e5147cca18162297477edf5ba620bb7ef59e7ebbd0aa7f5ecdf/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 = applyStyle3;
    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_lib2();
    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_types();
    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 applyStyle3(configuration, $2, Style.BOLD);
          });
          return text;
        },
        json: (text) => {
          return text;
        }
      })
    };
    function tuple(formatType, value) {
      return [value, formatType];
    }
    function applyStyle3(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 transform3 = transforms[formatType];
        const typedTransform = transform3;
        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);
      };
    }
  }
});

// ../../../../../setup-pnpm/store/v11/links/@yarnpkg/core/4.9.0/6a7c2315c9bb0e5147cca18162297477edf5ba620bb7ef59e7ebbd0aa7f5ecdf/node_modules/@yarnpkg/core/lib/hashUtils.js
var require_hashUtils = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@yarnpkg/core/4.9.0/6a7c2315c9bb0e5147cca18162297477edf5ba620bb7ef59e7ebbd0aa7f5ecdf/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_lib2();
    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(path240, { baseFs, algorithm } = { baseFs: fslib_12.xfs, algorithm: `sha512` }) {
      const fd2 = await baseFs.openPromise(path240, `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(fd2, chunk, 0, CHUNK_SIZE)) !== 0)
          hash2.update(bytesRead === CHUNK_SIZE ? chunk : chunk.slice(0, bytesRead));
        return hash2.digest(`hex`);
      } finally {
        await baseFs.closePromise(fd2);
      }
    }
    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`);
    }
  }
});

// ../../../../../setup-pnpm/store/v11/links/@yarnpkg/core/4.9.0/6a7c2315c9bb0e5147cca18162297477edf5ba620bb7ef59e7ebbd0aa7f5ecdf/node_modules/@yarnpkg/core/lib/structUtils.js
var require_structUtils = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@yarnpkg/core/4.9.0/6a7c2315c9bb0e5147cca18162297477edf5ba620bb7ef59e7ebbd0aa7f5ecdf/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.isPackageInRange = isPackageInRange;
    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 = /^(?:@([^/]+?)\/)?([^@/]+?)(?:@(.+))?$/;
    var DESCRIPTOR_RANGE_UNSPECIFIED = `unknown`;
    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 === DESCRIPTOR_RANGE_UNSPECIFIED)
        throw new Error(`Invalid range (${string})`);
      const realScope = typeof scope !== `undefined` ? scope : null;
      const realRange = typeof range !== `undefined` ? range : DESCRIPTOR_RANGE_UNSPECIFIED;
      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, opts3) {
      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 opts3?.requireProtocol === `string` && protocol !== opts3.requireProtocol)
        throw new Error(`Invalid protocol (${protocol})`);
      else if (opts3?.requireProtocol && protocol === null)
        throw new Error(`Missing protocol (${protocol})`);
      const source = typeof match[3] !== `undefined` ? decodeURIComponent(match[2]) : null;
      if (opts3?.requireSource && source === null)
        throw new Error(`Missing source (${range})`);
      const rawSelector = typeof match[3] !== `undefined` ? decodeURIComponent(match[3]) : decodeURIComponent(match[2]);
      const selector = opts3?.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, opts3) {
      try {
        return parseRange2(range, opts3);
      } 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 path240 = selector;
      return { parentLocator, path: path240 };
    }
    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 isPackageInRange(pkg, range) {
      if (range === DESCRIPTOR_RANGE_UNSPECIFIED || !pkg.version)
        return true;
      return semver_12.default.satisfies(pkg.version ?? ``, range);
    }
    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;
    }
  }
});

// ../../../../../setup-pnpm/store/v11/links/@yarnpkg/lockfile/1.1.0/a6760263c10e399a7648eb84b389ff99b8a9ccb6c649c37d8ca7eeedb5968553/node_modules/@yarnpkg/lockfile/index.js
var require_lockfile = __commonJS({
  "../../../../../setup-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 gen2 = fn.apply(this, arguments);
            return new _promise2.default(function(resolve4, reject3) {
              function step2(key, arg) {
                try {
                  var info = gen2[key](arg);
                  var value = info.value;
                } catch (error) {
                  reject3(error);
                  return;
                }
                if (info.done) {
                  resolve4(value);
                } else {
                  return _promise2.default.resolve(value).then(function(value2) {
                    step2("next", value2);
                  }, function(err2) {
                    step2("throw", err2);
                  });
                }
              }
              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, process25) {
            super(msg, code);
            this.process = process25;
          }
        }
        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 lstat2(src2);
                let srcFiles;
                if (srcStat.isDirectory()) {
                  srcFiles = yield readdir3(src2);
                }
                let destStat;
                try {
                  destStat = yield lstat2(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 lstat2(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 lstat2(src2);
                let srcFiles;
                if (srcStat.isDirectory()) {
                  srcFiles = yield readdir3(src2);
                }
                const destExists = yield exists(dest);
                if (destExists) {
                  const destStat = yield lstat2(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 (err2) {
                      reporter.verbose(err2);
                    }
                  }
                  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 lstat2(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 readFile5(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 readFile5(loc);
            try {
              return {
                object: (0, (_map2 || _load_map()).default)(JSON.parse(stripBOM(file))),
                content: file
              };
            } catch (err2) {
              err2.message = `${loc}: ${err2.message}`;
              throw err2;
            }
          });
          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 lstat2(dest);
              if (stats.isSymbolicLink()) {
                const resolved = yield realpath4(dest);
                if (resolved === src2) {
                  return;
                }
              }
            } catch (err2) {
              if (err2.code !== "ENOENT") {
                throw err2;
              }
            }
            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 (err2) {
                if (err2.code !== "ENOENT") {
                  throw err2;
                }
                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 lstat2(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 lstat2(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* (path240) {
            if (!(yield exists(path240))) {
              return void 0;
            }
            const buffer3 = yield readFileBuffer(path240);
            for (let i4 = 0; i4 < buffer3.length; ++i4) {
              if (buffer3[i4] === cr) {
                return "\r\n";
              }
              if (buffer3[i4] === 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* (path240, data) {
            const eol = (yield getEolFromFile(path240)) || (_os || _load_os()).default.EOL;
            if (eol !== "\n") {
              data = data.replace(/\n/g, eol);
            }
            yield writeFile3(path240, 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 (err2) {
              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 path240 = _ref35;
              try {
                const fd2 = yield open3(path240, "r");
                return (_fs || _load_fs()).default.createReadStream(path240, { fd: fd2 });
              } catch (err2) {
              }
            }
            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 = constants6.W_OK | constants6.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 = readFile5;
        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 constants6 = 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 open3 = 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 realpath4 = 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 lstat2 = 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((resolve4, reject3) => {
            (_fs || _load_fs()).default.readFile(loc, encoding, function(err2, content) {
              if (err2) {
                reject3(err2);
              } else {
                resolve4(content);
              }
            });
          });
        }
        function readFile5(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 os20 = __webpack_require__2(36);
        const path240 = __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(path240.join(os20.tmpdir(), `.yarn-cache-${process.getuid()}`));
          }
          preferredCacheDirectories.push(path240.join(os20.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 = path240.join(DATA_DIRECTORY, "link");
        const GLOBAL_MODULE_DIRECTORY = exports3.GLOBAL_MODULE_DIRECTORY = path240.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 path240.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 = path240.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(platform5, env4) {
          let pathKey2 = "PATH";
          if (platform5 === "win32") {
            pathKey2 = "Path";
            for (const key in env4) {
              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, d3, 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, d3, 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 i4 = 0; i4 < shortLen; i4++) {
            const aChar = a2.charCodeAt(i4);
            const bChar = b.charCodeAt(i4);
            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 i4 = 0, len = array1.length; i4 < len; i4++) {
            if (array1[i4] !== array2[i4]) {
              return false;
            }
          }
          return true;
        }
        function sleep(ms) {
          return new Promise((resolve4) => {
            setTimeout(resolve4, 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 get2() {
            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 get2() {
            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 path240 = __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 = path240.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 Buffer6 = buffer3.Buffer;
        function copyProps(src2, dst) {
          for (var key in src2) {
            dst[key] = src2[key];
          }
        }
        if (Buffer6.from && Buffer6.alloc && Buffer6.allocUnsafe && Buffer6.allocUnsafeSlow) {
          module3.exports = buffer3;
        } else {
          copyProps(buffer3, exports3);
          exports3.Buffer = SafeBuffer;
        }
        function SafeBuffer(arg, encodingOrOffset, length) {
          return Buffer6(arg, encodingOrOffset, length);
        }
        copyProps(Buffer6, SafeBuffer);
        SafeBuffer.from = function(arg, encodingOrOffset, length) {
          if (typeof arg === "number") {
            throw new TypeError("Argument must not be a number");
          }
          return Buffer6(arg, encodingOrOffset, length);
        };
        SafeBuffer.alloc = function(size, fill, encoding) {
          if (typeof size !== "number") {
            throw new TypeError("Argument must be a number");
          }
          var buf = Buffer6(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 Buffer6(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 = promisify15;
        exports3.queue = queue2;
        function wait(delay) {
          return new Promise((resolve4) => {
            setTimeout(resolve4, delay);
          });
        }
        function promisify15(fn, firstData) {
          return function(...args) {
            return new Promise(function(resolve4, reject3) {
              args.push(function(err2, ...result2) {
                let res = result2;
                if (result2.length <= 1) {
                  res = result2[0];
                }
                if (firstData) {
                  res = err2;
                  err2 = null;
                }
                if (err2) {
                  reject3(err2);
                } else {
                  resolve4(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((resolve4, reject3) => {
            for (let i4 = 0; i4 < concurrency; i4++) {
              next2();
            }
            function next2() {
              const item = arr.shift();
              const promise2 = promiseProducer(item);
              promise2.then(function(result2) {
                results.push(result2);
                total--;
                if (total === 0) {
                  resolve4(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 util70 = __webpack_require__2(2);
          if (typeof util70.inherits !== "function") throw "";
          module3.exports = util70.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 path240 = __webpack_require__2(0);
        const home = exports3.home = __webpack_require__2(36).homedir();
        const userHomeDir = (_rootUser || _load_rootUser()).default ? path240.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 Buffer6 = __webpack_require__2(32).Buffer;
        const crypto14 = __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 Hash2 {
          get isHash() {
            return true;
          }
          constructor(hash2, opts3) {
            const strict = !!(opts3 && opts3.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 && Buffer6.from(this.digest, "base64").toString("hex");
          }
          toJSON() {
            return this.toString();
          }
          toString(opts3) {
            if (opts3 && opts3.strict) {
              if (!// The spec has very restricted productions for algorithms.
              // https://www.w3.org/TR/CSP2/#source-list-syntax
              (SPEC_ALGORITHMS.some((x3) => x3 === 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(opts3) {
            opts3 = opts3 || {};
            let sep2 = opts3.sep || " ";
            if (opts3.strict) {
              sep2 = sep2.replace(/\S+/g, " ");
            }
            return Object.keys(this).map((k2) => {
              return this[k2].map((hash2) => {
                return Hash2.prototype.toString.call(hash2, opts3);
              }).filter((x3) => x3.length).join(sep2);
            }).filter((x3) => x3.length).join(sep2);
          }
          concat(integrity, opts3) {
            const other = typeof integrity === "string" ? integrity : stringify2(integrity, opts3);
            return parse12(`${this.toString(opts3)} ${other}`, opts3);
          }
          hexDigest() {
            return parse12(this, { single: true }).hexDigest();
          }
          match(integrity, opts3) {
            const other = parse12(integrity, opts3);
            const algo = other.pickAlgorithm(opts3);
            return this[algo] && other[algo] && this[algo].find(
              (hash2) => other[algo].find(
                (otherhash) => hash2.digest === otherhash.digest
              )
            ) || false;
          }
          pickAlgorithm(opts3) {
            const pickAlgorithm = opts3 && opts3.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 = parse12;
        function parse12(sri, opts3) {
          opts3 = opts3 || {};
          if (typeof sri === "string") {
            return _parse(sri, opts3);
          } else if (sri.algorithm && sri.digest) {
            const fullSri = new Integrity();
            fullSri[sri.algorithm] = [sri];
            return _parse(stringify2(fullSri, opts3), opts3);
          } else {
            return _parse(stringify2(sri, opts3), opts3);
          }
        }
        function _parse(integrity, opts3) {
          if (opts3.single) {
            return new Hash2(integrity, opts3);
          }
          return integrity.trim().split(/\s+/).reduce((acc, string) => {
            const hash2 = new Hash2(string, opts3);
            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 = stringify2;
        function stringify2(obj, opts3) {
          if (obj.algorithm && obj.digest) {
            return Hash2.prototype.toString.call(obj, opts3);
          } else if (typeof obj === "string") {
            return stringify2(parse12(obj, opts3), opts3);
          } else {
            return Integrity.prototype.toString.call(obj, opts3);
          }
        }
        module3.exports.fromHex = fromHex;
        function fromHex(hexDigest, algorithm, opts3) {
          const optString = opts3 && opts3.options && opts3.options.length ? `?${opts3.options.join("?")}` : "";
          return parse12(
            `${algorithm}-${Buffer6.from(hexDigest, "hex").toString("base64")}${optString}`,
            opts3
          );
        }
        module3.exports.fromData = fromData;
        function fromData(data, opts3) {
          opts3 = opts3 || {};
          const algorithms = opts3.algorithms || ["sha512"];
          const optString = opts3.options && opts3.options.length ? `?${opts3.options.join("?")}` : "";
          return algorithms.reduce((acc, algo) => {
            const digest = crypto14.createHash(algo).update(data).digest("base64");
            const hash2 = new Hash2(
              `${algo}-${digest}${optString}`,
              opts3
            );
            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, opts3) {
          opts3 = opts3 || {};
          const P2 = opts3.Promise || Promise;
          const istream = integrityStream(opts3);
          return new P2((resolve4, reject3) => {
            stream2.pipe(istream);
            stream2.on("error", reject3);
            istream.on("error", reject3);
            let sri;
            istream.on("integrity", (s) => {
              sri = s;
            });
            istream.on("end", () => resolve4(sri));
            istream.on("data", () => {
            });
          });
        }
        module3.exports.checkData = checkData;
        function checkData(data, sri, opts3) {
          opts3 = opts3 || {};
          sri = parse12(sri, opts3);
          if (!Object.keys(sri).length) {
            if (opts3.error) {
              throw Object.assign(
                new Error("No valid integrity hashes to check against"),
                {
                  code: "EINTEGRITY"
                }
              );
            } else {
              return false;
            }
          }
          const algorithm = sri.pickAlgorithm(opts3);
          const digest = crypto14.createHash(algorithm).update(data).digest("base64");
          const newSri = parse12({ algorithm, digest });
          const match = newSri.match(sri, opts3);
          if (match || !opts3.error) {
            return match;
          } else if (typeof opts3.size === "number" && data.length !== opts3.size) {
            const err2 = new Error(`data size mismatch when checking ${sri}.
  Wanted: ${opts3.size}
  Found: ${data.length}`);
            err2.code = "EBADSIZE";
            err2.found = data.length;
            err2.expected = opts3.size;
            err2.sri = sri;
            throw err2;
          } else {
            const err2 = new Error(`Integrity checksum failed when using ${algorithm}: Wanted ${sri}, but got ${newSri}. (${data.length} bytes)`);
            err2.code = "EINTEGRITY";
            err2.found = newSri;
            err2.expected = sri;
            err2.algorithm = algorithm;
            err2.sri = sri;
            throw err2;
          }
        }
        module3.exports.checkStream = checkStream;
        function checkStream(stream2, sri, opts3) {
          opts3 = opts3 || {};
          const P2 = opts3.Promise || Promise;
          const checker = integrityStream(Object.assign({}, opts3, {
            integrity: sri
          }));
          return new P2((resolve4, reject3) => {
            stream2.pipe(checker);
            stream2.on("error", reject3);
            checker.on("error", reject3);
            let sri2;
            checker.on("verified", (s) => {
              sri2 = s;
            });
            checker.on("end", () => resolve4(sri2));
            checker.on("data", () => {
            });
          });
        }
        module3.exports.integrityStream = integrityStream;
        function integrityStream(opts3) {
          opts3 = opts3 || {};
          const sri = opts3.integrity && parse12(opts3.integrity, opts3);
          const goodSri = sri && Object.keys(sri).length;
          const algorithm = goodSri && sri.pickAlgorithm(opts3);
          const digests = goodSri && sri[algorithm];
          const algorithms = Array.from(
            new Set(
              (opts3.algorithms || ["sha512"]).concat(algorithm ? [algorithm] : [])
            )
          );
          const hashes = algorithms.map(crypto14.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 = opts3.options && opts3.options.length ? `?${opts3.options.join("?")}` : "";
            const newSri = parse12(hashes.map((h2, i4) => {
              return `${algorithms[i4]}-${h2.digest("base64")}${optString}`;
            }).join(" "), opts3);
            const match = goodSri && newSri.match(sri, opts3);
            if (typeof opts3.size === "number" && streamSize !== opts3.size) {
              const err2 = new Error(`stream size mismatch when checking ${sri}.
  Wanted: ${opts3.size}
  Found: ${streamSize}`);
              err2.code = "EBADSIZE";
              err2.found = streamSize;
              err2.expected = opts3.size;
              err2.sri = sri;
              stream2.emit("error", err2);
            } else if (opts3.integrity && !match) {
              const err2 = new Error(`${sri} integrity checksum failed when using ${algorithm}: wanted ${digests} but got ${newSri}. (${streamSize} bytes)`);
              err2.code = "EINTEGRITY";
              err2.found = newSri;
              err2.expected = digests;
              err2.algorithm = algorithm;
              err2.sri = sri;
              stream2.emit("error", err2);
            } else {
              stream2.emit("size", streamSize);
              stream2.emit("integrity", newSri);
              match && stream2.emit("verified", match);
            }
          });
          return stream2;
        }
        module3.exports.create = createIntegrity;
        function createIntegrity(opts3) {
          opts3 = opts3 || {};
          const algorithms = opts3.algorithms || ["sha512"];
          const optString = opts3.options && opts3.options.length ? `?${opts3.options.join("?")}` : "";
          const hashes = algorithms.map(crypto14.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 Hash2(
                  `${algo}-${digest}${optString}`,
                  opts3
                );
                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(crypto14.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 path240 = { sep: "/" };
        try {
          path240 = __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, i4, 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 (path240.sep !== "/") {
            pattern = pattern.split(path240.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 i4 = 0, l = pattern.length; i4 < l && pattern.charAt(i4) === "!"; i4++) {
            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 = parse12;
        var SUBPARSE = {};
        function parse12(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 i4 = 0, len = pattern.length, c3; i4 < len && (c3 = pattern.charAt(i4)); i4++) {
            this.debug("%s	%s %s %j", pattern, i4, 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, i4, re, c3);
                if (inClass) {
                  this.debug("  in class");
                  if (c3 === "!" && i4 === 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: i4 - 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 = i4;
                reClassStart = re.length;
                re += c3;
                continue;
              case "]":
                if (i4 === classStart + 1 || !inClass) {
                  re += "\\" + c3;
                  escaping = false;
                  continue;
                }
                if (inClass) {
                  var cs = pattern.substring(classStart + 1, i4);
                  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 (i4 = 0; i4 < openParensBefore; i4++) {
              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 (path240.sep !== "/") {
            f = f.split(path240.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 i4;
          for (i4 = f.length - 1; i4 >= 0; i4--) {
            filename = f[i4];
            if (filename) break;
          }
          for (i4 = 0; i4 < set2.length; i4++) {
            var pattern = set2[i4];
            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, fl2 = file.length, pl = pattern.length; fi < fl2 && 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 < fl2; fi++) {
                  if (file[fi] === "." || file[fi] === ".." || !options.dot && file[fi].charAt(0) === ".") return false;
                }
                return true;
              }
              while (fr < fl2) {
                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, fl2, 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 === fl2) 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 === fl2 && pi === pl) {
            return true;
          } else if (fi === fl2) {
            return partial;
          } else if (pi === pl) {
            var emptyFileEnd = fi === fl2 - 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 resolve4, reject3;
          this.promise = new C(function($$resolve, $$reject) {
            if (resolve4 !== void 0 || reject3 !== void 0) throw TypeError("Bad Promise constructor");
            resolve4 = $$resolve;
            reject3 = $$reject;
          });
          this.resolve = aFunction(resolve4);
          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 fs131 = __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 path240 = __webpack_require__2(0);
        var assert13 = __webpack_require__2(22);
        var isAbsolute4 = __webpack_require__2(76);
        var globSync = __webpack_require__2(218);
        var common4 = __webpack_require__2(115);
        var alphasort = common4.alphasort;
        var alphasorti = common4.alphasorti;
        var setopts = common4.setopts;
        var ownProp = common4.ownProp;
        var inflight = __webpack_require__2(223);
        var util70 = __webpack_require__2(2);
        var childrenIgnored = common4.childrenIgnored;
        var isIgnored = common4.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, add2) {
          if (add2 === null || typeof add2 !== "object") {
            return origin;
          }
          var keys4 = Object.keys(add2);
          var i4 = keys4.length;
          while (i4--) {
            origin[keys4[i4]] = add2[keys4[i4]];
          }
          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 i4 = 0; i4 < n2; i4++) {
            this._process(this.minimatch.set[i4], i4, 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();
          common4.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 i4 = 0; i4 < this.matches.length; i4++)
            this._realpathSet(i4, next2);
          function next2() {
            if (--n2 === 0)
              self2._finish();
          }
        };
        Glob.prototype._realpathSet = function(index2, cb) {
          var matchset = this.matches[index2];
          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[index2] = /* @__PURE__ */ Object.create(null);
          found.forEach(function(p, i4) {
            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[index2] = set2;
                cb();
              }
            });
          });
        };
        Glob.prototype._mark = function(p) {
          return common4.mark(this, p);
        };
        Glob.prototype._makeAbs = function(f) {
          return common4.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 i4 = 0; i4 < eq.length; i4++) {
                var e = eq[i4];
                this._emitMatch(e[0], e[1]);
              }
            }
            if (this._processQueue.length) {
              var pq = this._processQueue.slice(0);
              this._processQueue.length = 0;
              for (var i4 = 0; i4 < pq.length; i4++) {
                var p = pq[i4];
                this._processing--;
                this._process(p[0], p[1], p[2], p[3]);
              }
            }
          }
        };
        Glob.prototype._process = function(pattern, index2, inGlobStar, cb) {
          assert13(this instanceof Glob);
          assert13(typeof cb === "function");
          if (this.aborted)
            return;
          this._processing++;
          if (this.paused) {
            this._processQueue.push([pattern, index2, 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("/"), index2, 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 (isAbsolute4(prefix) || isAbsolute4(pattern.join("/"))) {
            if (!prefix || !isAbsolute4(prefix))
              prefix = "/" + prefix;
            read2 = prefix;
          } else
            read2 = prefix;
          var abs2 = this._makeAbs(read2);
          if (childrenIgnored(this, read2))
            return cb();
          var isGlobStar = remain[0] === minimatch.GLOBSTAR;
          if (isGlobStar)
            this._processGlobStar(prefix, read2, abs2, remain, index2, inGlobStar, cb);
          else
            this._processReaddir(prefix, read2, abs2, remain, index2, inGlobStar, cb);
        };
        Glob.prototype._processReaddir = function(prefix, read2, abs2, remain, index2, inGlobStar, cb) {
          var self2 = this;
          this._readdir(abs2, inGlobStar, function(er, entries) {
            return self2._processReaddir2(prefix, read2, abs2, remain, index2, inGlobStar, entries, cb);
          });
        };
        Glob.prototype._processReaddir2 = function(prefix, read2, abs2, remain, index2, 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 i4 = 0; i4 < entries.length; i4++) {
            var e = entries[i4];
            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[index2])
              this.matches[index2] = /* @__PURE__ */ Object.create(null);
            for (var i4 = 0; i4 < len; i4++) {
              var e = matchedEntries[i4];
              if (prefix) {
                if (prefix !== "/")
                  e = prefix + "/" + e;
                else
                  e = prefix + e;
              }
              if (e.charAt(0) === "/" && !this.nomount) {
                e = path240.join(this.root, e);
              }
              this._emitMatch(index2, e);
            }
            return cb();
          }
          remain.shift();
          for (var i4 = 0; i4 < len; i4++) {
            var e = matchedEntries[i4];
            var newPattern;
            if (prefix) {
              if (prefix !== "/")
                e = prefix + "/" + e;
              else
                e = prefix + e;
            }
            this._process([e].concat(remain), index2, inGlobStar, cb);
          }
          cb();
        };
        Glob.prototype._emitMatch = function(index2, e) {
          if (this.aborted)
            return;
          if (isIgnored(this, e))
            return;
          if (this.paused) {
            this._emitQueue.push([index2, e]);
            return;
          }
          var abs2 = isAbsolute4(e) ? e : this._makeAbs(e);
          if (this.mark)
            e = this._mark(e);
          if (this.absolute)
            e = abs2;
          if (this.matches[index2][e])
            return;
          if (this.nodir) {
            var c3 = this.cache[abs2];
            if (c3 === "DIR" || Array.isArray(c3))
              return;
          }
          this.matches[index2][e] = true;
          var st = this.statCache[abs2];
          if (st)
            this.emit("stat", e, st);
          this.emit("match", e);
        };
        Glob.prototype._readdirInGlobStar = function(abs2, cb) {
          if (this.aborted)
            return;
          if (this.follow)
            return this._readdir(abs2, false, cb);
          var lstatkey = "lstat\0" + abs2;
          var self2 = this;
          var lstatcb = inflight(lstatkey, lstatcb_);
          if (lstatcb)
            fs131.lstat(abs2, lstatcb);
          function lstatcb_(er, lstat2) {
            if (er && er.code === "ENOENT")
              return cb();
            var isSym = lstat2 && lstat2.isSymbolicLink();
            self2.symlinks[abs2] = isSym;
            if (!isSym && lstat2 && !lstat2.isDirectory()) {
              self2.cache[abs2] = "FILE";
              cb();
            } else
              self2._readdir(abs2, false, cb);
          }
        };
        Glob.prototype._readdir = function(abs2, inGlobStar, cb) {
          if (this.aborted)
            return;
          cb = inflight("readdir\0" + abs2 + "\0" + inGlobStar, cb);
          if (!cb)
            return;
          if (inGlobStar && !ownProp(this.symlinks, abs2))
            return this._readdirInGlobStar(abs2, cb);
          if (ownProp(this.cache, abs2)) {
            var c3 = this.cache[abs2];
            if (!c3 || c3 === "FILE")
              return cb();
            if (Array.isArray(c3))
              return cb(null, c3);
          }
          var self2 = this;
          fs131.readdir(abs2, readdirCb(this, abs2, cb));
        };
        function readdirCb(self2, abs2, cb) {
          return function(er, entries) {
            if (er)
              self2._readdirError(abs2, er, cb);
            else
              self2._readdirEntries(abs2, entries, cb);
          };
        }
        Glob.prototype._readdirEntries = function(abs2, entries, cb) {
          if (this.aborted)
            return;
          if (!this.mark && !this.stat) {
            for (var i4 = 0; i4 < entries.length; i4++) {
              var e = entries[i4];
              if (abs2 === "/")
                e = abs2 + e;
              else
                e = abs2 + "/" + e;
              this.cache[e] = true;
            }
          }
          this.cache[abs2] = 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 abs2 = this._makeAbs(f);
              this.cache[abs2] = "FILE";
              if (abs2 === 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, abs2, remain, index2, inGlobStar, cb) {
          var self2 = this;
          this._readdir(abs2, inGlobStar, function(er, entries) {
            self2._processGlobStar2(prefix, read2, abs2, remain, index2, inGlobStar, entries, cb);
          });
        };
        Glob.prototype._processGlobStar2 = function(prefix, read2, abs2, remain, index2, inGlobStar, entries, cb) {
          if (!entries)
            return cb();
          var remainWithoutGlobStar = remain.slice(1);
          var gspref = prefix ? [prefix] : [];
          var noGlobStar = gspref.concat(remainWithoutGlobStar);
          this._process(noGlobStar, index2, false, cb);
          var isSym = this.symlinks[abs2];
          var len = entries.length;
          if (isSym && inGlobStar)
            return cb();
          for (var i4 = 0; i4 < len; i4++) {
            var e = entries[i4];
            if (e.charAt(0) === "." && !this.dot)
              continue;
            var instead = gspref.concat(entries[i4], remainWithoutGlobStar);
            this._process(instead, index2, true, cb);
            var below = gspref.concat(entries[i4], remain);
            this._process(below, index2, true, cb);
          }
          cb();
        };
        Glob.prototype._processSimple = function(prefix, index2, cb) {
          var self2 = this;
          this._stat(prefix, function(er, exists) {
            self2._processSimple2(prefix, index2, er, exists, cb);
          });
        };
        Glob.prototype._processSimple2 = function(prefix, index2, er, exists, cb) {
          if (!this.matches[index2])
            this.matches[index2] = /* @__PURE__ */ Object.create(null);
          if (!exists)
            return cb();
          if (prefix && isAbsolute4(prefix) && !this.nomount) {
            var trail = /[\/\\]$/.test(prefix);
            if (prefix.charAt(0) === "/") {
              prefix = path240.join(this.root, prefix);
            } else {
              prefix = path240.resolve(this.root, prefix);
              if (trail)
                prefix += "/";
            }
          }
          if (process.platform === "win32")
            prefix = prefix.replace(/\\/g, "/");
          this._emitMatch(index2, prefix);
          cb();
        };
        Glob.prototype._stat = function(f, cb) {
          var abs2 = this._makeAbs(f);
          var needDir = f.slice(-1) === "/";
          if (f.length > this.maxLength)
            return cb();
          if (!this.stat && ownProp(this.cache, abs2)) {
            var c3 = this.cache[abs2];
            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[abs2];
          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" + abs2, lstatcb_);
          if (statcb)
            fs131.lstat(abs2, statcb);
          function lstatcb_(er, lstat2) {
            if (lstat2 && lstat2.isSymbolicLink()) {
              return fs131.stat(abs2, function(er2, stat3) {
                if (er2)
                  self2._stat2(f, abs2, null, lstat2, cb);
                else
                  self2._stat2(f, abs2, er2, stat3, cb);
              });
            } else {
              self2._stat2(f, abs2, er, lstat2, cb);
            }
          }
        };
        Glob.prototype._stat2 = function(f, abs2, er, stat2, cb) {
          if (er && (er.code === "ENOENT" || er.code === "ENOTDIR")) {
            this.statCache[abs2] = false;
            return cb();
          }
          var needDir = f.slice(-1) === "/";
          this.statCache[abs2] = stat2;
          if (abs2.slice(-1) === "/" && stat2 && !stat2.isDirectory())
            return cb(null, false, stat2);
          var c3 = true;
          if (stat2)
            c3 = stat2.isDirectory() ? "DIR" : "FILE";
          this.cache[abs2] = this.cache[abs2] || c3;
          if (needDir && c3 === "FILE")
            return cb();
          return cb(null, c3, stat2);
        };
      }),
      /* 76 */
      /***/
      (function(module3, exports3, __webpack_require__2) {
        "use strict";
        function posix2(path240) {
          return path240.charAt(0) === "/";
        }
        function win32(path240) {
          var splitDeviceRe = /^([a-zA-Z]:|[\\\/]{2}[^\\\/]+[\\\/]+[^\\\/]+)?([\\\/])?([\s\S]*?)$/;
          var result2 = splitDeviceRe.exec(path240);
          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: parse12(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 i4 = 0; input[i4] === " "; i4++) {
                  indent += input[i4];
                }
                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 i4 = 0; ; i4++) {
                const currentChar = input[i4];
                val += currentChar;
                if (i4 > 0 && currentChar === '"') {
                  const isEscaped = input[i4 - 1] === "\\" && input[i4 - 2] !== "\\";
                  if (!isEscaped) {
                    break;
                  }
                }
              }
              chop = val.length;
              try {
                yield buildToken(TOKEN_TYPES.string, JSON.parse(val));
              } catch (err2) {
                if (err2 instanceof SyntaxError) {
                  yield buildToken(TOKEN_TYPES.invalid);
                } else {
                  throw err2;
                }
              }
            } else if (/^[0-9]/.test(input)) {
              let val = "";
              for (let i4 = 0; /^[0-9]$/.test(input[i4]); i4++) {
                val += input[i4];
              }
              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 i4 = 0; i4 < input.length; i4++) {
                const char = input[i4];
                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 skip2 = 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) {
                  skip2 = false;
                  break;
                } else if (skip2 || conflictLine.startsWith(MERGE_CONFLICT_ANCESTOR)) {
                  skip2 = 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 parse12(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({}, parse12(variants[0], fileLoc), parse12(variants[1], fileLoc)) };
          } catch (err2) {
            if (err2 instanceof SyntaxError) {
              return { type: "conflict", object: {} };
            } else {
              throw err2;
            }
          }
        }
      }),
      ,
      ,
      /* 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((resolve4, reject3) => {
              const queue2 = this.queue[key] = this.queue[key] || [];
              queue2.push({ factory, resolve: resolve4, 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 resolve4 = _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 run2 = () => {
              this.running[key] = true;
              this.runningCount++;
              factory().then(function(val) {
                resolve4(val);
                next2();
                return null;
              }).catch(function(err2) {
                reject3(err2);
                next2();
              });
            };
            this.maybePushConcurrencyQueue(run2);
          }
          maybePushConcurrencyQueue(run2) {
            if (this.runningCount < this.maxConcurrency) {
              run2();
            } else {
              this.concurrencyQueue.push(run2);
            }
          }
          shiftConcurrencyQueue() {
            if (this.runningCount < this.maxConcurrency) {
              const fn = this.concurrencyQueue.shift();
              if (fn) {
                fn();
              }
            }
          }
        }
        exports3.default = BlockingQueue;
      }),
      /* 85 */
      /***/
      (function(module3, exports3) {
        module3.exports = function(exec2) {
          try {
            return !!exec2();
          } 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 proto3) return proto3[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 proto3 = Base.prototype;
          var $native = proto3[ITERATOR] || proto3[FF_ITERATOR] || DEFAULT && proto3[DEFAULT];
          var $default = $native || getMethod(DEFAULT);
          var $entries = DEFAULT ? !DEF_VALUES ? $default : getMethod("entries") : void 0;
          var $anyNative = NAME == "Array" ? proto3.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 || !proto3[ITERATOR])) {
            hide(proto3, 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 proto3)) redefine(proto3, key, methods[key]);
            }
            else $export($export.P + $export.F * (BUGGY || VALUES_BUG), NAME, methods);
          }
          return methods;
        };
      }),
      /* 104 */
      /***/
      (function(module3, exports3) {
        module3.exports = function(exec2) {
          try {
            return { e: false, v: exec2() };
          } 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, x3) {
          anObject(C);
          if (isObject4(x3) && x3.constructor === C) return x3;
          var promiseCapability = newPromiseCapability.f(C);
          var resolve4 = promiseCapability.resolve;
          resolve4(x3);
          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, D3) {
          var C = anObject(O2).constructor;
          var S3;
          return C === void 0 || (S3 = anObject(C)[SPECIES]) == void 0 ? D3 : aFunction(S3);
        };
      }),
      /* 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 process25 = 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 run2 = function() {
          var id = +this;
          if (queue2.hasOwnProperty(id)) {
            var fn = queue2[id];
            delete queue2[id];
            fn();
          }
        };
        var listener = function(event) {
          run2.call(event.data);
        };
        if (!setTask || !clearTask) {
          setTask = function setImmediate3(fn) {
            var args = [];
            var i4 = 1;
            while (arguments.length > i4) args.push(arguments[i4++]);
            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)(process25) == "process") {
            defer = function(id) {
              process25.nextTick(ctx(run2, id, 1));
            };
          } else if (Dispatch && Dispatch.now) {
            defer = function(id) {
              Dispatch.now(ctx(run2, 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);
                run2.call(id);
              };
            };
          } else {
            defer = function(id) {
              setTimeout(ctx(run2, 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, i4;
          for (i4 in namespace) {
            hash2 = (hash2 << 5) - hash2 + namespace.charCodeAt(i4);
            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 i4 = 0; i4 < args.length; i4++) {
              args[i4] = arguments[i4];
            }
            args[0] = exports3.coerce(args[0]);
            if ("string" !== typeof args[0]) {
              args.unshift("%O");
            }
            var index2 = 0;
            args[0] = args[0].replace(/%([a-zA-Z%])/g, function(match, format2) {
              if (match === "%%") return match;
              index2++;
              var formatter = exports3.formatters[format2];
              if ("function" === typeof formatter) {
                var val = args[index2];
                match = formatter.call(self2, val);
                args.splice(index2, 1);
                index2--;
              }
              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 index2 = exports3.instances.indexOf(this);
          if (index2 !== -1) {
            exports3.instances.splice(index2, 1);
            return true;
          } else {
            return false;
          }
        }
        function enable(namespaces) {
          exports3.save(namespaces);
          exports3.names = [];
          exports3.skips = [];
          var i4;
          var split4 = (typeof namespaces === "string" ? namespaces : "").split(/[\s,]+/);
          var len = split4.length;
          for (i4 = 0; i4 < len; i4++) {
            if (!split4[i4]) continue;
            namespaces = split4[i4].replace(/\*/g, ".*?");
            if (namespaces[0] === "-") {
              exports3.skips.push(new RegExp("^" + namespaces.substr(1) + "$"));
            } else {
              exports3.names.push(new RegExp("^" + namespaces + "$"));
            }
          }
          for (i4 = 0; i4 < exports3.instances.length; i4++) {
            var instance = exports3.instances[i4];
            instance.enabled = exports3.enabled(instance.namespace);
          }
        }
        function disable() {
          exports3.enable("");
        }
        function enabled(name) {
          if (name[name.length - 1] === "*") {
            return true;
          }
          var i4, len;
          for (i4 = 0, len = exports3.skips.length; i4 < len; i4++) {
            if (exports3.skips[i4].test(name)) {
              return false;
            }
          }
          for (i4 = 0, len = exports3.names.length; i4 < len; i4++) {
            if (exports3.names[i4].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 = realpath4;
        realpath4.realpath = realpath4;
        realpath4.sync = realpathSync2;
        realpath4.realpathSync = realpathSync2;
        realpath4.monkeypatch = monkeypatch;
        realpath4.unmonkeypatch = unmonkeypatch;
        var fs131 = __webpack_require__2(3);
        var origRealpath = fs131.realpath;
        var origRealpathSync = fs131.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 realpath4(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() {
          fs131.realpath = realpath4;
          fs131.realpathSync = realpathSync2;
        }
        function unmonkeypatch() {
          fs131.realpath = origRealpath;
          fs131.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 path240 = __webpack_require__2(0);
        var minimatch = __webpack_require__2(60);
        var isAbsolute4 = __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 = path240.resolve(options.cwd);
            self2.changedCwd = self2.cwd !== cwd;
          }
          self2.root = options.root || path240.resolve(self2.cwd, "/");
          self2.root = path240.resolve(self2.root);
          if (process.platform === "win32")
            self2.root = self2.root.replace(/\\/g, "/");
          self2.cwdAbs = isAbsolute4(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 i4 = 0, l = self2.matches.length; i4 < l; i4++) {
            var matches2 = self2.matches[i4];
            if (!matches2 || Object.keys(matches2).length === 0) {
              if (self2.nonull) {
                var literal = self2.minimatch.globSet[i4];
                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 i4 = 0; i4 < all.length; i4++) {
              all[i4] = self2._mark(all[i4]);
            }
            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 abs2 = makeAbs(self2, p);
          var c3 = self2.cache[abs2];
          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[abs2];
              self2.cache[mabs] = self2.cache[abs2];
            }
          }
          return m;
        }
        function makeAbs(self2, f) {
          var abs2 = f;
          if (f.charAt(0) === "/") {
            abs2 = path240.join(self2.root, f);
          } else if (isAbsolute4(f) || f === "") {
            abs2 = f;
          } else if (self2.changedCwd) {
            abs2 = path240.resolve(self2.cwd, f);
          } else {
            abs2 = path240.resolve(f);
          }
          if (process.platform === "win32")
            abs2 = abs2.replace(/\\/g, "/");
          return abs2;
        }
        function isIgnored(self2, path241) {
          if (!self2.ignore.length)
            return false;
          return self2.ignore.some(function(item) {
            return item.matcher.match(path241) || !!(item.gmatcher && item.gmatcher.match(path241));
          });
        }
        function childrenIgnored(self2, path241) {
          if (!self2.ignore.length)
            return false;
          return self2.ignore.some(function(item) {
            return !!(item.gmatcher && item.gmatcher.match(path241));
          });
        }
      }),
      /* 116 */
      /***/
      (function(module3, exports3, __webpack_require__2) {
        var path240 = __webpack_require__2(0);
        var fs131 = __webpack_require__2(3);
        var _0777 = parseInt("0777", 8);
        module3.exports = mkdirP.mkdirp = mkdirP.mkdirP = mkdirP;
        function mkdirP(p, opts3, f, made) {
          if (typeof opts3 === "function") {
            f = opts3;
            opts3 = {};
          } else if (!opts3 || typeof opts3 !== "object") {
            opts3 = { mode: opts3 };
          }
          var mode = opts3.mode;
          var xfs = opts3.fs || fs131;
          if (mode === void 0) {
            mode = _0777 & ~process.umask();
          }
          if (!made) made = null;
          var cb = f || function() {
          };
          p = path240.resolve(p);
          xfs.mkdir(p, mode, function(er) {
            if (!er) {
              made = made || p;
              return cb(null, made);
            }
            switch (er.code) {
              case "ENOENT":
                mkdirP(path240.dirname(p), opts3, function(er2, made2) {
                  if (er2) cb(er2, made2);
                  else mkdirP(p, opts3, 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, opts3, made) {
          if (!opts3 || typeof opts3 !== "object") {
            opts3 = { mode: opts3 };
          }
          var mode = opts3.mode;
          var xfs = opts3.fs || fs131;
          if (mode === void 0) {
            mode = _0777 & ~process.umask();
          }
          if (!made) made = null;
          p = path240.resolve(p);
          try {
            xfs.mkdirSync(p, mode);
            made = made || p;
          } catch (err0) {
            switch (err0.code) {
              case "ENOENT":
                made = sync3(path240.dirname(p), opts3, made);
                sync3(p, opts3, 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 = (x3) => {
          if (typeof x3 !== "string") {
            throw new TypeError("Expected a string, got " + typeof x3);
          }
          if (x3.charCodeAt(0) === 65279) {
            return x3.slice(1);
          }
          return x3;
        };
      }),
      /* 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 i4 = 0; i4 < args.length; i4++) {
              args[i4] = arguments[i4];
            }
            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 = stringify2;
        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 i4 = 0; i4 < keys4.length; i4++) {
            const key = keys4[i4];
            const val = obj[key];
            if (val == null || addedKeys.indexOf(key) >= 0) {
              continue;
            }
            const valKeys = [key];
            if (typeof val === "object") {
              for (let j2 = i4 + 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 stringify2(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* (fd2, dest, data) {
            const doOpen = fd2 === void 0;
            let openfd = fd2 ? fd2 : -1;
            if (disableTimestampCorrection === void 0) {
              const destStat = yield lstat2(dest);
              disableTimestampCorrection = fileDatesEqual(destStat.mtime, data.mtime);
            }
            if (disableTimestampCorrection) {
              return;
            }
            if (doOpen) {
              try {
                openfd = yield open3(dest, "a", data.mode);
              } catch (er) {
                try {
                  openfd = yield open3(dest, "r", data.mode);
                } catch (err2) {
                  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 lstat2 = (0, (_promise || _load_promise()).promisify)((_fs || _load_fs()).default.lstat);
        const open3 = (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, cleanup2) {
            try {
              yield unlink(data.dest);
              yield copyFilePoly(data.src, data.dest, 0, data);
            } finally {
              if (cleanup2) {
                cleanup2();
              }
            }
          });
          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((resolve4, reject3) => (_fs || _load_fs()).default.copyFile(src2, dest, flags, (err2) => {
              if (err2) {
                reject3(err2);
              } else {
                fixTimes(void 0, dest, data).then(() => resolve4()).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 fd2 = yield open3(dest, "w", data.mode);
            try {
              const buffer3 = yield readFileBuffer(src2);
              yield write(fd2, buffer3, 0, buffer3.length);
              yield fixTimes(fd2, dest, data);
            } finally {
              yield close(fd2);
            }
          });
          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 path240 = __webpack_require__2(0);
        const userHome = __webpack_require__2(45).default;
        const FALLBACK_CONFIG_DIR = path240.join(userHome, ".config", "yarn");
        const FALLBACK_CACHE_DIR = path240.join(userHome, ".cache", "yarn");
        function getDataDir2() {
          if (process.platform === "win32") {
            const WIN32_APPDATA_DIR = getLocalAppDataDir();
            return WIN32_APPDATA_DIR == null ? FALLBACK_CONFIG_DIR : path240.join(WIN32_APPDATA_DIR, "Data");
          } else if (process.env.XDG_DATA_HOME) {
            return path240.join(process.env.XDG_DATA_HOME, "yarn");
          } else {
            return FALLBACK_CONFIG_DIR;
          }
        }
        function getCacheDir2() {
          if (process.platform === "win32") {
            return path240.join(getLocalAppDataDir() || path240.join(userHome, "AppData", "Local", "Yarn"), "Cache");
          } else if (process.env.XDG_CACHE_HOME) {
            return path240.join(process.env.XDG_CACHE_HOME, "yarn");
          } else if (process.platform === "darwin") {
            return path240.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 : path240.join(WIN32_APPDATA_DIR, "Config");
          } else if (process.env.XDG_CONFIG_HOME) {
            return path240.join(process.env.XDG_CONFIG_HOME, "yarn");
          } else {
            return FALLBACK_CONFIG_DIR;
          }
        }
        function getLocalAppDataDir() {
          return process.env.LOCALAPPDATA ? path240.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 i4 = ai;
          if (ai >= 0 && bi > 0) {
            begs = [];
            left = str2.length;
            while (i4 >= 0 && !result2) {
              if (i4 == ai) {
                begs.push(i4);
                ai = str2.indexOf(a2, i4 + 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, i4 + 1);
              }
              i4 = 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(i4, y) {
          return i4 <= y;
        }
        function gte(i4, y) {
          return i4 >= 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 x3 = 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 < x3;
            if (reverse3) {
              incr *= -1;
              test = gte;
            }
            var pad4 = n2.some(isPadded);
            N = [];
            for (var i4 = x3; test(i4, y); i4 += incr) {
              var c3;
              if (isAlphaSequence) {
                c3 = String.fromCharCode(i4);
                if (c3 === "\\")
                  c3 = "";
              } else {
                c3 = String(i4);
                if (pad4) {
                  var need = width - c3.length;
                  if (need > 0) {
                    var z = new Array(need + 1).join("0");
                    if (i4 < 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 i4 = 0; i4 < str2.length; i4++) {
            const c3 = str2[i4];
            if (isLastCharLower && /[a-zA-Z]/.test(c3) && c3.toUpperCase() === c3) {
              str2 = str2.substr(0, i4) + "-" + str2.substr(i4);
              isLastCharLower = false;
              isLastLastCharUpper = isLastCharUpper;
              isLastCharUpper = true;
              i4++;
            } else if (isLastCharUpper && isLastLastCharUpper && /[a-zA-Z]/.test(c3) && c3.toLowerCase() === c3) {
              str2 = str2.substr(0, i4 - 1) + "-" + str2.substr(i4 - 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((x3) => x3.trim()).filter((x3) => x3.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 i4 = 0; i4 < xs.length; i4++) {
            var x3 = fn(xs[i4], i4);
            if (isArray(x3)) res.push.apply(res, x3);
            else res.push(x3);
          }
          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 index2 = toAbsoluteIndex(fromIndex, length);
            var value;
            if (IS_INCLUDES && el != el) while (length > index2) {
              value = O2[index2++];
              if (value != value) return true;
            }
            else for (; length > index2; index2++) if (IS_INCLUDES || index2 in O2) {
              if (O2[index2] === el) return IS_INCLUDES || index2 || 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 index2 = 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 > index2; index2++) {
            result2 = entries ? f(anObject(step2 = iterable[index2])[0], step2[1]) : f(iterable[index2]);
            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(exec2, 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;
            };
            exec2(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 process25 = global3.process;
        var Promise2 = global3.Promise;
        var isNode3 = __webpack_require__2(47)(process25) == "process";
        module3.exports = function() {
          var head2, last, notify;
          var flush = function() {
            var parent, fn;
            if (isNode3 && (parent = process25.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 (isNode3) {
            notify = function() {
              process25.nextTick(flush);
            };
          } else if (Observer && !(global3.navigator && global3.navigator.standalone)) {
            var toggle2 = true;
            var node = document.createTextNode("");
            new Observer(flush).observe(node, { characterData: true });
            notify = function() {
              node.data = toggle2 = !toggle2;
            };
          } 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 i4 = enumBugKeys.length;
          var lt2 = "<";
          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(lt2 + "script" + gt + "document.F=Object" + lt2 + "/script" + gt);
          iframeDocument.close();
          createDict = iframeDocument.F;
          while (i4--) delete createDict[PROTOTYPE][enumBugKeys[i4]];
          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 i4 = 0;
          var P2;
          while (length > i4) dP.f(O2, P2 = keys4[i4++], 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 i4 = 0;
          var result2 = [];
          var key;
          for (key in O2) if (key != IE_PROTO) has(O2, key) && result2.push(key);
          while (names.length > i4) if (has(O2, key = names[i4++])) {
            ~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 i4 = toInteger(pos);
            var l = s.length;
            var a2, b;
            if (i4 < 0 || i4 >= l) return TO_STRING ? "" : void 0;
            a2 = s.charCodeAt(i4);
            return a2 < 55296 || a2 > 56319 || i4 + 1 === l || (b = s.charCodeAt(i4 + 1)) < 56320 || b > 57343 ? TO_STRING ? s.charAt(i4) : a2 : TO_STRING ? s.slice(i4, i4 + 2) : (a2 - 55296 << 10) + (b - 56320) + 65536;
          };
        };
      }),
      /* 200 */
      /***/
      (function(module3, exports3, __webpack_require__2) {
        var toInteger = __webpack_require__2(73);
        var max4 = Math.max;
        var min = Math.min;
        module3.exports = function(index2, length) {
          index2 = toInteger(index2);
          return index2 < 0 ? max4(index2 + length, 0) : min(index2, length);
        };
      }),
      /* 201 */
      /***/
      (function(module3, exports3, __webpack_require__2) {
        var isObject4 = __webpack_require__2(34);
        module3.exports = function(it, S3) {
          if (!isObject4(it)) return it;
          var fn, val;
          if (S3 && 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 (!S3 && 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 index2 = this._i++;
          if (!O2 || index2 >= O2.length) {
            this._t = void 0;
            return step2(1);
          }
          if (kind == "keys") return step2(0, index2);
          if (kind == "values") return step2(0, O2[index2]);
          return step2(0, [index2, O2[index2]]);
        }, "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 process25 = global3.process;
        var versions = process25 && process25.versions;
        var v8 = versions && versions.v8 || "";
        var $Promise = global3[PROMISE];
        var isNode3 = classof(process25) == "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(exec2) {
              exec2(empty4, empty4);
            };
            return (isNode3 || 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 i4 = 0;
            var run2 = function(reaction) {
              var handler83 = ok ? reaction.ok : reaction.fail;
              var resolve4 = reaction.resolve;
              var reject3 = reaction.reject;
              var domain = reaction.domain;
              var result2, then, exited;
              try {
                if (handler83) {
                  if (!ok) {
                    if (promise2._h == 2) onHandleUnhandled(promise2);
                    promise2._h = 1;
                  }
                  if (handler83 === true) result2 = value;
                  else {
                    if (domain) domain.enter();
                    result2 = handler83(value);
                    if (domain) {
                      domain.exit();
                      exited = true;
                    }
                  }
                  if (result2 === reaction.promise) {
                    reject3(TypeError2("Promise-chain cycle"));
                  } else if (then = isThenable(result2)) {
                    then.call(result2, resolve4, reject3);
                  } else resolve4(result2);
                } else reject3(value);
              } catch (e) {
                if (domain && !exited) domain.exit();
                reject3(e);
              }
            };
            while (chain3.length > i4) run2(chain3[i4++]);
            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, handler83, console2;
            if (unhandled) {
              result2 = perform(function() {
                if (isNode3) {
                  process25.emit("unhandledRejection", value, promise2);
                } else if (handler83 = global3.onunhandledrejection) {
                  handler83({ promise: promise2, reason: value });
                } else if ((console2 = global3.console) && console2.error) {
                  console2.error("Unhandled promise rejection", value);
                }
              });
              promise2._h = isNode3 || 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 handler83;
            if (isNode3) {
              process25.emit("rejectionHandled", promise2);
            } else if (handler83 = global3.onrejectionhandled) {
              handler83({ 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 (err2) {
              $reject.call(this, err2);
            }
          };
          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 = isNode3 ? process25.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 resolve4(x3) {
            return promiseResolve(LIBRARY && this === Wrapper ? $Promise : this, x3);
          }
        });
        $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 resolve4 = capability.resolve;
            var reject3 = capability.reject;
            var result2 = perform(function() {
              var values = [];
              var index2 = 0;
              var remaining = 1;
              forOf(iterable, false, function(promise2) {
                var $index = index2++;
                var alreadyCalled = false;
                values.push(void 0);
                remaining++;
                C.resolve(promise2).then(function(value) {
                  if (alreadyCalled) return;
                  alreadyCalled = true;
                  values[$index] = value;
                  --remaining || resolve4(values);
                }, reject3);
              });
              --remaining || resolve4(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 index2 = this._i;
          var point;
          if (index2 >= O2.length) return { value: void 0, done: true };
          point = $at(O2, index2);
          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(x3) {
              return promiseResolve(C, onFinally()).then(function() {
                return x3;
              });
            } : 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 i4 = 0; i4 < DOMIterables.length; i4++) {
          var NAME = DOMIterables[i4];
          var Collection = global3[NAME];
          var proto3 = Collection && Collection.prototype;
          if (proto3 && !proto3[TO_STRING_TAG]) hide(proto3, 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 (err2) {
            return "[UnexpectedJSONParseError]: " + err2.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 index2 = 0;
          var lastC = 0;
          args[0].replace(/%[a-zA-Z%]/g, function(match) {
            if ("%%" === match) return;
            index2++;
            if ("%c" === match) {
              lastC = index2;
            }
          });
          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 tty6 = __webpack_require__2(79);
        var util70 = __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 supportsColor4 = __webpack_require__2(239);
          if (supportsColor4 && supportsColor4.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 (err2) {
        }
        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) : tty6.isatty(process.stderr.fd);
        }
        exports3.formatters.o = function(v) {
          this.inspectOpts.colors = this.useColors;
          return util70.inspect(v, this.inspectOpts).split("\n").map(function(str2) {
            return str2.trim();
          }).join(" ");
        };
        exports3.formatters.O = function(v) {
          this.inspectOpts.colors = this.useColors;
          return util70.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(util70.format.apply(util70, 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 i4 = 0; i4 < keys4.length; i4++) {
            debug.inspectOpts[keys4[i4]] = exports3.inspectOpts[keys4[i4]];
          }
        }
        exports3.enable(load3());
      }),
      ,
      ,
      ,
      /* 217 */
      /***/
      (function(module3, exports3, __webpack_require__2) {
        var pathModule = __webpack_require__2(0);
        var isWindows15 = process.platform === "win32";
        var fs131 = __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(err2) {
            if (err2) {
              backtrace.message = err2.message;
              err2 = backtrace;
              missingCallback(err2);
            }
          }
          function missingCallback(err2) {
            if (err2) {
              if (process.throwDeprecation)
                throw err2;
              else if (!process.noDeprecation) {
                var msg = "fs: missing callback " + (err2.stack || err2.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]) {
              fs131.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 = fs131.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) {
                fs131.statSync(base);
                linkTarget = fs131.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 realpath4(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]) {
              fs131.lstat(base, function(err2) {
                if (err2) return cb(err2);
                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 fs131.lstat(base, gotStat);
          }
          function gotStat(err2, stat2) {
            if (err2) return cb(err2);
            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);
              }
            }
            fs131.stat(base, function(err3) {
              if (err3) return cb(err3);
              fs131.readlink(base, function(err4, target2) {
                if (!isWindows15) seenLinks[id] = target2;
                gotTarget(err4, target2);
              });
            });
          }
          function gotTarget(err2, target2, base2) {
            if (err2) return cb(err2);
            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 fs131 = __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 util70 = __webpack_require__2(2);
        var path240 = __webpack_require__2(0);
        var assert13 = __webpack_require__2(22);
        var isAbsolute4 = __webpack_require__2(76);
        var common4 = __webpack_require__2(115);
        var alphasort = common4.alphasort;
        var alphasorti = common4.alphasorti;
        var setopts = common4.setopts;
        var ownProp = common4.ownProp;
        var childrenIgnored = common4.childrenIgnored;
        var isIgnored = common4.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 i4 = 0; i4 < n2; i4++) {
            this._process(this.minimatch.set[i4], i4, false);
          }
          this._finish();
        }
        GlobSync.prototype._finish = function() {
          assert13(this instanceof GlobSync);
          if (this.realpath) {
            var self2 = this;
            this.matches.forEach(function(matchset, index2) {
              var set2 = self2.matches[index2] = /* @__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;
                }
              }
            });
          }
          common4.finish(this);
        };
        GlobSync.prototype._process = function(pattern, index2, 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("/"), index2);
              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 (isAbsolute4(prefix) || isAbsolute4(pattern.join("/"))) {
            if (!prefix || !isAbsolute4(prefix))
              prefix = "/" + prefix;
            read2 = prefix;
          } else
            read2 = prefix;
          var abs2 = this._makeAbs(read2);
          if (childrenIgnored(this, read2))
            return;
          var isGlobStar = remain[0] === minimatch.GLOBSTAR;
          if (isGlobStar)
            this._processGlobStar(prefix, read2, abs2, remain, index2, inGlobStar);
          else
            this._processReaddir(prefix, read2, abs2, remain, index2, inGlobStar);
        };
        GlobSync.prototype._processReaddir = function(prefix, read2, abs2, remain, index2, inGlobStar) {
          var entries = this._readdir(abs2, 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 i4 = 0; i4 < entries.length; i4++) {
            var e = entries[i4];
            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[index2])
              this.matches[index2] = /* @__PURE__ */ Object.create(null);
            for (var i4 = 0; i4 < len; i4++) {
              var e = matchedEntries[i4];
              if (prefix) {
                if (prefix.slice(-1) !== "/")
                  e = prefix + "/" + e;
                else
                  e = prefix + e;
              }
              if (e.charAt(0) === "/" && !this.nomount) {
                e = path240.join(this.root, e);
              }
              this._emitMatch(index2, e);
            }
            return;
          }
          remain.shift();
          for (var i4 = 0; i4 < len; i4++) {
            var e = matchedEntries[i4];
            var newPattern;
            if (prefix)
              newPattern = [prefix, e];
            else
              newPattern = [e];
            this._process(newPattern.concat(remain), index2, inGlobStar);
          }
        };
        GlobSync.prototype._emitMatch = function(index2, e) {
          if (isIgnored(this, e))
            return;
          var abs2 = this._makeAbs(e);
          if (this.mark)
            e = this._mark(e);
          if (this.absolute) {
            e = abs2;
          }
          if (this.matches[index2][e])
            return;
          if (this.nodir) {
            var c3 = this.cache[abs2];
            if (c3 === "DIR" || Array.isArray(c3))
              return;
          }
          this.matches[index2][e] = true;
          if (this.stat)
            this._stat(e);
        };
        GlobSync.prototype._readdirInGlobStar = function(abs2) {
          if (this.follow)
            return this._readdir(abs2, false);
          var entries;
          var lstat2;
          var stat2;
          try {
            lstat2 = fs131.lstatSync(abs2);
          } catch (er) {
            if (er.code === "ENOENT") {
              return null;
            }
          }
          var isSym = lstat2 && lstat2.isSymbolicLink();
          this.symlinks[abs2] = isSym;
          if (!isSym && lstat2 && !lstat2.isDirectory())
            this.cache[abs2] = "FILE";
          else
            entries = this._readdir(abs2, false);
          return entries;
        };
        GlobSync.prototype._readdir = function(abs2, inGlobStar) {
          var entries;
          if (inGlobStar && !ownProp(this.symlinks, abs2))
            return this._readdirInGlobStar(abs2);
          if (ownProp(this.cache, abs2)) {
            var c3 = this.cache[abs2];
            if (!c3 || c3 === "FILE")
              return null;
            if (Array.isArray(c3))
              return c3;
          }
          try {
            return this._readdirEntries(abs2, fs131.readdirSync(abs2));
          } catch (er) {
            this._readdirError(abs2, er);
            return null;
          }
        };
        GlobSync.prototype._readdirEntries = function(abs2, entries) {
          if (!this.mark && !this.stat) {
            for (var i4 = 0; i4 < entries.length; i4++) {
              var e = entries[i4];
              if (abs2 === "/")
                e = abs2 + e;
              else
                e = abs2 + "/" + e;
              this.cache[e] = true;
            }
          }
          this.cache[abs2] = 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 abs2 = this._makeAbs(f);
              this.cache[abs2] = "FILE";
              if (abs2 === 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, abs2, remain, index2, inGlobStar) {
          var entries = this._readdir(abs2, inGlobStar);
          if (!entries)
            return;
          var remainWithoutGlobStar = remain.slice(1);
          var gspref = prefix ? [prefix] : [];
          var noGlobStar = gspref.concat(remainWithoutGlobStar);
          this._process(noGlobStar, index2, false);
          var len = entries.length;
          var isSym = this.symlinks[abs2];
          if (isSym && inGlobStar)
            return;
          for (var i4 = 0; i4 < len; i4++) {
            var e = entries[i4];
            if (e.charAt(0) === "." && !this.dot)
              continue;
            var instead = gspref.concat(entries[i4], remainWithoutGlobStar);
            this._process(instead, index2, true);
            var below = gspref.concat(entries[i4], remain);
            this._process(below, index2, true);
          }
        };
        GlobSync.prototype._processSimple = function(prefix, index2) {
          var exists = this._stat(prefix);
          if (!this.matches[index2])
            this.matches[index2] = /* @__PURE__ */ Object.create(null);
          if (!exists)
            return;
          if (prefix && isAbsolute4(prefix) && !this.nomount) {
            var trail = /[\/\\]$/.test(prefix);
            if (prefix.charAt(0) === "/") {
              prefix = path240.join(this.root, prefix);
            } else {
              prefix = path240.resolve(this.root, prefix);
              if (trail)
                prefix += "/";
            }
          }
          if (process.platform === "win32")
            prefix = prefix.replace(/\\/g, "/");
          this._emitMatch(index2, prefix);
        };
        GlobSync.prototype._stat = function(f) {
          var abs2 = this._makeAbs(f);
          var needDir = f.slice(-1) === "/";
          if (f.length > this.maxLength)
            return false;
          if (!this.stat && ownProp(this.cache, abs2)) {
            var c3 = this.cache[abs2];
            if (Array.isArray(c3))
              c3 = "DIR";
            if (!needDir || c3 === "DIR")
              return c3;
            if (needDir && c3 === "FILE")
              return false;
          }
          var exists;
          var stat2 = this.statCache[abs2];
          if (!stat2) {
            var lstat2;
            try {
              lstat2 = fs131.lstatSync(abs2);
            } catch (er) {
              if (er && (er.code === "ENOENT" || er.code === "ENOTDIR")) {
                this.statCache[abs2] = false;
                return false;
              }
            }
            if (lstat2 && lstat2.isSymbolicLink()) {
              try {
                stat2 = fs131.statSync(abs2);
              } catch (er) {
                stat2 = lstat2;
              }
            } else {
              stat2 = lstat2;
            }
          }
          this.statCache[abs2] = stat2;
          var c3 = true;
          if (stat2)
            c3 = stat2.isDirectory() ? "DIR" : "FILE";
          this.cache[abs2] = this.cache[abs2] || c3;
          if (needDir && c3 === "FILE")
            return false;
          return c3;
        };
        GlobSync.prototype._mark = function(p) {
          return common4.mark(this, p);
        };
        GlobSync.prototype._makeAbs = function(f) {
          return common4.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 = slice4(arguments);
            try {
              for (var i4 = 0; i4 < len; i4++) {
                cbs[i4].apply(null, args);
              }
            } finally {
              if (cbs.length > len) {
                cbs.splice(0, len);
                process.nextTick(function() {
                  RES.apply(null, args);
                });
              } else {
                delete reqs[key];
              }
            }
          });
        }
        function slice4(args) {
          var length = args.length;
          var array = [];
          for (var i4 = 0; i4 < length; i4++) array[i4] = args[i4];
          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 d3 = h2 * 24;
        var y = d3 * 365.25;
        module3.exports = function(val, options) {
          options = options || {};
          var type4 = typeof val;
          if (type4 === "string" && val.length > 0) {
            return parse12(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 parse12(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 * d3;
            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 >= d3) {
            return Math.round(ms / d3) + "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, d3, "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 path240 = __webpack_require__2(0);
        var fs131 = __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] || fs131[m];
            m = m + "Sync";
            options[m] = options[m] || fs131[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(path240.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 i4 = 0; i4 < results.length; i4++) {
            var p = results[i4];
            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(path240.join(p, f), options);
          });
          var retries = isWindows15 ? 100 : 1;
          var i4 = 0;
          do {
            var threw = true;
            try {
              var ret2 = options.rmdirSync(p, options);
              threw = false;
              return ret2;
            } finally {
              if (++i4 < retries && threw)
                continue;
            }
          } while (true);
        }
      }),
      ,
      ,
      ,
      ,
      ,
      /* 239 */
      /***/
      (function(module3, exports3, __webpack_require__2) {
        "use strict";
        var hasFlag5 = __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 (hasFlag5("no-color") || hasFlag5("no-colors") || hasFlag5("color=false")) {
            return 0;
          }
          if (hasFlag5("color=16m") || hasFlag5("color=full") || hasFlag5("color=truecolor")) {
            return 3;
          }
          if (hasFlag5("color=256")) {
            return 2;
          }
          if (hasFlag5("color") || hasFlag5("colors") || hasFlag5("color=true") || hasFlag5("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 fs91 from "node:fs";
import path159 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(opts3, params) {
  await rimraf(path159.join(opts3.dir, WANTED_LOCKFILE));
  const versionsByPackageNames = {};
  let preferredVersions = {};
  if (fs91.existsSync(path159.join(opts3.dir, "yarn.lock"))) {
    const yarnPackageLockFile = await readYarnLockFile(opts3.dir);
    getAllVersionsFromYarnLockFile(yarnPackageLockFile, versionsByPackageNames);
  } else if (fs91.existsSync(path159.join(opts3.dir, "package-lock.json")) || fs91.existsSync(path159.join(opts3.dir, "npm-shrinkwrap.json"))) {
    const npmPackageLock = await readNpmLockfile(opts3.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 (opts3.workspaceDir) {
    const allProjects = opts3.allProjects ?? await findWorkspaceProjects(opts3.workspaceDir, {
      ...opts3,
      patterns: opts3.workspacePackagePatterns
    });
    const selectedProjectsGraph = opts3.selectedProjectsGraph ?? selectProjectByDir2(allProjects, opts3.dir);
    if (selectedProjectsGraph != null) {
      const sequencedGraph = sequenceGraph(selectedProjectsGraph);
      if (!opts3.ignoreWorkspaceCycles && !sequencedGraph.safe) {
        const cyclicDependenciesInfo = sequencedGraph.cycles.length > 0 ? `: ${sequencedGraph.cycles.map((deps) => deps.join(", ")).join("; ")}` : "";
        if (opts3.disallowWorkspaceCycles) {
          throw new PnpmError("DISALLOW_WORKSPACE_CYCLES", `There are cyclic workspace dependencies${cyclicDependenciesInfo}`);
        }
        logger.warn({
          message: `There are cyclic workspace dependencies${cyclicDependenciesInfo}`,
          prefix: opts3.workspaceDir
        });
      }
      await recursive(
        allProjects,
        params,
        // @ts-expect-error
        {
          ...opts3,
          lockfileOnly: true,
          selectedProjectsGraph,
          preferredVersions,
          workspaceDir: opts3.workspaceDir
        },
        "import"
      );
    }
    return;
  }
  const store = await createStoreController(opts3);
  const manifest = await readProjectManifestOnly(opts3.dir);
  const installOpts = {
    ...opts3,
    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(path159.join(dir, "yarn.lock"), "utf8");
    const yarnLockFileType = getYarnLockfileType(yarnLockFile);
    if (yarnLockFileType === YarnLockType.yarn) {
      const lockJsonFile = (0, import_lockfile69.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 (err2) {
    if (err2["code"] !== "ENOENT")
      throw err2;
  }
  throw new PnpmError("YARN_LOCKFILE_NOT_FOUND", "No yarn.lock found");
}
function parseYarn2Lock(lockFileContents) {
  const parseYarnLock = parseYarn2Yaml(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
  };
}
function parseYarn2Yaml(lockFileContents) {
  const parseYarnLock = jsYaml.load(lockFileContents, {
    schema: jsYaml.FAILSAFE_SCHEMA,
    json: true
  });
  if (parseYarnLock == null)
    return {};
  if (typeof parseYarnLock !== "object" || Array.isArray(parseYarnLock)) {
    throw new PnpmError("YARN_LOCKFILE_PARSE_FAILED", `Expected an indexed object, got ${Array.isArray(parseYarnLock) ? "an array" : `a ${typeof parseYarnLock}`} instead. Does your file follow YAML's rules?`);
  }
  return parseYarnLock;
}
async function readNpmLockfile(dir) {
  try {
    return await loadJsonFile(path159.join(dir, "package-lock.json"));
  } catch (err2) {
    if (err2["code"] !== "ENOENT")
      throw err2;
  }
  try {
    return await loadJsonFile(path159.join(dir, "npm-shrinkwrap.json"));
  } catch (err2) {
    if (err2["code"] !== "ENOENT")
      throw err2;
  }
  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 }) => path159.relative(rootDir, searchedDir) === "");
  if (project == null)
    return void 0;
  return { [project.rootDir]: { dependencies: [], package: project } };
}
function getYarnLockfileType(lockFileContents) {
  return lockFileContents.includes("__metadata") ? YarnLockType.yarn2 : YarnLockType.yarn;
}
var structUtils, import_lockfile69, YarnLockType, rcOptionsTypes8, commandNames8, recursiveByDefault3;
var init_import = __esm({
  "../installing/commands/lib/import/index.js"() {
    "use strict";
    init_lib41();
    init_lib();
    init_lib2();
    init_lib14();
    init_lib126();
    init_lib3();
    init_lib92();
    init_lib15();
    init_lib42();
    init_lib95();
    structUtils = __toESM(require_structUtils(), 1);
    import_lockfile69 = __toESM(require_lockfile(), 1);
    init_rimraf();
    init_js_yaml();
    init_load_json_file();
    init_es();
    init_lib66();
    init_recursive2();
    init_yarnUtil();
    YarnLockType = {
      yarn: "yarn",
      yarn2: "yarn2"
    };
    rcOptionsTypes8 = cliOptionsTypes7;
    commandNames8 = ["import"];
    recursiveByDefault3 = true;
  }
});

// ../installing/commands/lib/createProjectManifestWriter.js
import path160 from "node:path";
import util47 from "node:util";
async function createProjectManifestWriter(projectDir) {
  try {
    const { writeProjectManifest: writeProjectManifest2 } = await readProjectManifest(projectDir);
    return writeProjectManifest2;
  } catch (err2) {
    if (util47.types.isNativeError(err2) && "code" in err2 && err2.code === "ERR_PNPM_NO_IMPORTER_MANIFEST_FOUND") {
      return writeProjectManifest.bind(null, path160.join(projectDir, "package.json"));
    }
    throw err2;
  }
}
var init_createProjectManifestWriter = __esm({
  "../installing/commands/lib/createProjectManifestWriter.js"() {
    "use strict";
    init_lib15();
    init_lib13();
  }
});

// ../installing/commands/lib/link.js
var link_exports = {};
__export(link_exports, {
  cliOptionsTypes: () => cliOptionsTypes8,
  commandNames: () => commandNames9,
  handler: () => handler9,
  help: () => help9,
  rcOptionsTypes: () => rcOptionsTypes9
});
import path161 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",
    "trust-lockfile",
    "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, opts3) {
  const { manifest } = await tryReadProjectManifest2(linkCwdDir, opts3);
  if (manifest?.peerDependencies && Object.keys(manifest.peerDependencies).length > 0) {
    const packageName = manifest.name ?? path161.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: opts3.dir
    });
  }
}
async function handler9(opts3, 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 (opts3.workspaceDir) {
    workspacePackagesArr = await findWorkspaceProjects(opts3.workspaceDir, {
      ...opts3,
      patterns: opts3.workspacePackagePatterns
    });
    workspacePackages = arrayOfWorkspacePackagesToMap(workspacePackagesArr);
  } else {
    workspacePackages = /* @__PURE__ */ new Map();
  }
  const linkOpts = Object.assign(opts3, {
    targetDependenciesField: getSaveType(opts3),
    workspacePackages,
    binsDir: opts3.bin
  });
  const writeProjectManifest2 = await createProjectManifestWriter(opts3.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 = opts3.rootProjectManifest ?? {};
  await Promise.all(pkgPaths.map(async (dir) => {
    await addLinkToManifest(opts3, newManifest, dir, opts3.rootProjectManifestDir);
    await checkPeerDeps(dir, opts3);
  }));
  await writeProjectManifest2(newManifest);
  await handler5({
    ...linkOpts,
    _calledFromLink: true,
    frozenLockfileIfExists: false,
    rootProjectManifest: newManifest
  });
}
async function addLinkToManifest(opts3, manifest, linkedDepDir, manifestDir) {
  const { manifest: linkedManifest } = await tryReadProjectManifest2(linkedDepDir, opts3);
  const linkedPkgName = linkedManifest?.name ?? path161.basename(linkedDepDir);
  const linkedPkgSpec = `link:${(0, import_normalize_path12.default)(path161.relative(manifestDir, linkedDepDir))}`;
  opts3.overrides = {
    ...opts3.overrides,
    [linkedPkgName]: linkedPkgSpec
  };
  await writeSettings({
    ...opts3,
    workspaceDir: opts3.workspaceDir ?? opts3.rootProjectManifestDir,
    updatedSettings: {
      overrides: opts3.overrides
    }
  });
  if (DEPENDENCIES_FIELDS.every((depField) => manifest[depField]?.[linkedPkgName] == null)) {
    manifest.dependencies = manifest.dependencies ?? {};
    manifest.dependencies[linkedPkgName] = linkedPkgSpec;
  }
}
var import_normalize_path12, isWindows11, isFilespec2, rcOptionsTypes9, commandNames9;
var init_link2 = __esm({
  "../installing/commands/lib/link.js"() {
    "use strict";
    init_lib94();
    init_lib41();
    init_lib64();
    init_lib102();
    init_lib2();
    init_lib89();
    init_lib3();
    init_lib9();
    init_lib42();
    import_normalize_path12 = __toESM(require_normalize_path(), 1);
    init_es();
    init_lib66();
    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(opts3) {
  await handler5({
    ...opts3,
    modulesCacheMaxAge: 0,
    pruneDirectDependencies: true,
    pruneStore: true
  });
}
var rcOptionsTypes10, commandNames10;
var init_prune3 = __esm({
  "../installing/commands/lib/prune.js"() {
    "use strict";
    init_lib94();
    init_lib41();
    init_lib64();
    init_es();
    init_lib66();
    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-experimental-package-map",
    "node-package-map-type",
    "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(opts3, params) {
  if (params.length === 0)
    throw new PnpmError("MUST_REMOVE_SOMETHING", "At least one dependency name should be specified for removal");
  if (opts3.global) {
    if (!opts3.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(opts3, params);
  }
  const include = {
    dependencies: opts3.production !== false,
    devDependencies: opts3.dev !== false,
    optionalDependencies: opts3.optional !== false
  };
  const store = await createStoreController(opts3);
  if (opts3.recursive && opts3.allProjects != null && opts3.selectedProjectsGraph != null && opts3.workspaceDir) {
    await recursive(opts3.allProjects, params, {
      ...opts3,
      allProjectsGraph: opts3.allProjectsGraph,
      include,
      selectedProjectsGraph: opts3.selectedProjectsGraph,
      storeControllerAndDir: store,
      workspaceDir: opts3.workspaceDir
    }, "remove");
    return;
  }
  const removeOpts = Object.assign(opts3, {
    linkWorkspacePackagesDepth: opts3.linkWorkspacePackages === "deep" ? Infinity : opts3.linkWorkspacePackages ? 0 : -1,
    storeController: store.ctrl,
    storeDir: store.dir,
    resolutionVerifiers: store.resolutionVerifiers,
    include,
    // `--dry-run` is an `install`-only preview; never let a config-level
    // `dry-run` turn `remove` into a no-op check.
    dryRun: false
  });
  const allProjects = opts3.allProjects ?? (opts3.workspaceDir ? await findWorkspaceProjects(opts3.workspaceDir, { ...opts3, patterns: opts3.workspacePackagePatterns }) : void 0);
  removeOpts["workspacePackages"] = allProjects ? arrayOfWorkspacePackagesToMap(allProjects) : void 0;
  const targetDependenciesField = getSaveType(opts3);
  const { manifest: currentManifest, writeProjectManifest: writeProjectManifest2 } = await readProjectManifest2(opts3.dir, opts3);
  const availableDependencies = Object.keys(targetDependenciesField === void 0 ? getAllDependenciesFromManifest(currentManifest) : currentManifest[targetDependenciesField] ?? {});
  const nonMatchedDependencies = without_default(availableDependencies, params);
  if (nonMatchedDependencies.length !== 0) {
    throw new RemoveMissingDepsError({
      availableDependencies,
      nonMatchedDependencies,
      targetDependenciesField
    });
  }
  const mutationResult = await mutateModulesInSingleProject({
    binsDir: opts3.bin,
    dependencyNames: params,
    manifest: currentManifest,
    mutation: "uninstallSome",
    rootDir: opts3.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(opts3.workspaceDir ?? opts3.dir, {
    cleanupUnusedCatalogs: opts3.cleanupUnusedCatalogs,
    allProjects: updatedProjects
  });
}
var RemoveMissingDepsError, cliOptionsTypes10, commandNames11, completion;
var init_remove2 = __esm({
  "../installing/commands/lib/remove.js"() {
    "use strict";
    init_lib94();
    init_lib41();
    init_lib64();
    init_lib2();
    init_lib131();
    init_lib89();
    init_lib126();
    init_lib11();
    init_lib92();
    init_lib42();
    init_lib101();
    init_es();
    init_lib66();
    init_getSaveType();
    init_recursive2();
    RemoveMissingDepsError = class extends PnpmError {
      constructor(opts3) {
        let message = "Cannot remove ";
        message += `${opts3.nonMatchedDependencies.map((dep) => `'${dep}'`).join(", ")}: `;
        if (opts3.availableDependencies.length > 0) {
          message += `no such ${opts3.nonMatchedDependencies.length > 1 ? "dependencies" : "dependency"} `;
          message += `found${opts3.targetDependenciesField ? ` in '${opts3.targetDependenciesField}'` : ""}`;
          const hint = `Available dependencies: ${opts3.availableDependencies.join(", ")}`;
          super("CANNOT_REMOVE_MISSING_DEPS", message, { hint });
          return;
        }
        message += opts3.targetDependenciesField ? `project has no '${opts3.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(opts3, params) {
  if (!opts3.overrides)
    return "Nothing to unlink";
  if (!params || params.length === 0) {
    for (const selector in opts3.overrides) {
      if (opts3.overrides[selector].startsWith("link:")) {
        delete opts3.overrides[selector];
      }
    }
  } else {
    for (const selector in opts3.overrides) {
      if (opts3.overrides[selector].startsWith("link:") && params.includes(selector)) {
        delete opts3.overrides[selector];
      }
    }
  }
  await writeSettings({
    workspaceDir: opts3.workspaceDir ?? opts3.rootProjectManifestDir,
    rootProjectManifestDir: opts3.rootProjectManifestDir,
    updatedSettings: {
      overrides: opts3.overrides
    }
  });
  await handler5(opts3);
  return void 0;
}
var cliOptionsTypes11, rcOptionsTypes12, commandNames12;
var init_unlink = __esm({
  "../installing/commands/lib/unlink.js"() {
    "use strict";
    init_lib94();
    init_lib41();
    init_lib102();
    init_lib66();
    init_install2();
    cliOptionsTypes11 = cliOptionsTypes5;
    rcOptionsTypes12 = rcOptionsTypes5;
    commandNames12 = ["unlink", "dislink"];
  }
});

// ../deps/github-actions/lib/index.js
import fs92 from "node:fs/promises";
import path162 from "node:path";
import util48 from "node:util";
function shouldCheckGitHubActions(opts3) {
  return opts3.includeGithubActions === true || opts3.updateConfig?.githubActions === true;
}
function isGitHubActionSelector(selector) {
  const pattern = selector.startsWith("!") ? selector.slice(1) : selector;
  return !pattern.startsWith("@") && pattern.includes("/");
}
function normalizeGitHubActionSelector(selector) {
  if (!isGitHubActionSelector(selector))
    return selector;
  const refSeparator = selector.lastIndexOf("@");
  return refSeparator === -1 ? selector : selector.slice(0, refSeparator);
}
async function findOutdatedGitHubActions(opts3) {
  const plans = await createUpdatePlan(opts3);
  const serverUrl = resolveServerUrl(opts3.serverUrl);
  const target2 = (plan) => opts3.compatible ? plan.wanted : plan.latest;
  return dedupeOutdated(plans.filter((plan) => import_semver47.default.lt(plan.current.version, target2(plan).version)).map((plan) => ({
    current: plan.current.version.version,
    latest: target2(plan).version.version,
    name: plan.action.name,
    wanted: plan.wanted.version.version,
    homepage: `${serverUrl}/${plan.action.repo}`
  })));
}
async function updateGitHubActions(opts3) {
  const plans = await createUpdatePlan(opts3);
  const updates = plans.filter((plan) => {
    const target2 = opts3.latest ? plan.latest : plan.wanted;
    return import_semver47.default.lte(plan.current.version, target2.version) && (plan.action.ref !== target2.commit || plan.action.commentVersion !== target2.tag);
  });
  const edits = /* @__PURE__ */ new Map();
  for (const plan of updates) {
    const target2 = opts3.latest ? plan.latest : plan.wanted;
    const replacements3 = edits.get(plan.action.file) ?? [];
    replacements3.push({
      range: plan.action.range,
      value: renderTargetValue(plan.action, target2)
    });
    edits.set(plan.action.file, replacements3);
  }
  await Promise.all([...edits].map(async ([file, replacements3]) => {
    let source = file.source;
    replacements3.sort((left, right) => right.range[0] - left.range[0]);
    for (const replacement of replacements3) {
      source = source.slice(0, replacement.range[0]) + replacement.value + source.slice(replacement.range[1]);
    }
    try {
      await (0, import_write_file_atomic9.default)(file.path, source);
    } catch (err2) {
      throw workflowError("WRITE", file.path, err2);
    }
  }));
  const serverUrl = resolveServerUrl(opts3.serverUrl);
  return dedupeOutdated(updates.map((plan) => {
    const target2 = opts3.latest ? plan.latest : plan.wanted;
    return {
      current: plan.current.version.version,
      latest: target2.version.version,
      name: plan.action.name,
      wanted: plan.wanted.version.version,
      homepage: `${serverUrl}/${plan.action.repo}`
    };
  }));
}
async function createUpdatePlan(opts3) {
  const actions = await discoverActions(opts3.dir);
  const selected = opts3.match == null ? actions : actions.filter((action) => opts3.match(action.name) || opts3.match(action.repo));
  const serverUrl = resolveServerUrl(opts3.serverUrl);
  const readRepoRefs = opts3.readRepoRefs ?? (async (repo) => getRepoRefs(`${serverUrl}/${repo}.git`, null));
  const refsByRepo = /* @__PURE__ */ new Map();
  return (await Promise.all(selected.map(async (action) => {
    let versionsPromise = refsByRepo.get(action.repo);
    if (versionsPromise == null) {
      versionsPromise = limitRepoReads(async () => {
        try {
          return parseRepoVersions(await readRepoRefs(action.repo));
        } catch (err2) {
          globalWarn2(redactAndSanitize(`Skipping the GitHub Actions from "${action.repo}": ${util48.types.isNativeError(err2) ? err2.message : String(err2)}`));
          return [];
        }
      });
      refsByRepo.set(action.repo, versionsPromise);
    }
    const versions = await versionsPromise;
    const current = findCurrentVersion(action, versions);
    if (current == null)
      return null;
    const stable = versions.filter(({ version: version2 }) => version2.prerelease.length === 0);
    const candidates = current.version.prerelease.length === 0 ? stable : versions;
    const latest = candidates.at(-1);
    const wanted = candidates.filter(({ version: version2 }) => import_semver47.default.satisfies(version2, `^${current.version.version}`)).at(-1);
    if (latest == null || wanted == null)
      return null;
    return { action, current, latest, wanted };
  }))).filter((plan) => plan != null);
}
async function discoverActions(dir) {
  let realRoot;
  try {
    realRoot = await fs92.realpath(dir);
  } catch (err2) {
    throw workflowError("READ", dir, err2);
  }
  const workflowDir = path162.join(dir, ".github", "workflows");
  let entries;
  try {
    entries = await fs92.readdir(workflowDir);
  } catch (err2) {
    if (isErrorCode(err2, "ENOENT"))
      return [];
    throw workflowError("READ", workflowDir, err2);
  }
  const workflowFiles = entries.filter((entry) => entry.endsWith(".yml") || entry.endsWith(".yaml")).map((entry) => path162.join(workflowDir, entry));
  const visited = /* @__PURE__ */ new Set();
  const actions = [];
  await Promise.all(workflowFiles.map(scanFile));
  return actions;
  async function scanFile(filePath) {
    let realFilePath;
    try {
      realFilePath = await fs92.realpath(filePath);
    } catch (err2) {
      throw workflowError("READ", filePath, err2);
    }
    if (!isSubdir(realRoot, realFilePath)) {
      throw new PnpmError("GITHUB_ACTIONS_WORKFLOW_OUTSIDE_ROOT", `GitHub Actions workflow is outside the project root: ${filePath}`);
    }
    if (visited.has(realFilePath))
      return;
    visited.add(realFilePath);
    let source;
    try {
      source = await fs92.readFile(realFilePath, "utf8");
    } catch (err2) {
      throw workflowError("READ", realFilePath, err2);
    }
    const document2 = import_yaml4.default.parseDocument(source);
    if (document2.errors.length > 0)
      throw workflowError("PARSE", realFilePath, document2.errors[0]);
    const file = { path: realFilePath, source };
    const localReferences = [];
    for (const node of findUsesScalars(document2.contents)) {
      const value = node.value;
      if (value.startsWith("./")) {
        localReferences.push(value);
        continue;
      }
      const parsed = parseActionReference(value);
      if (parsed == null)
        continue;
      if (node.range == null)
        throw new Error(`Missing source range for GitHub Action in ${realFilePath}`);
      const end = trimLineBreak(source, node.range[2] ?? node.range[1]);
      actions.push({
        ...parsed,
        commentVersion: getCommentVersion(node),
        file,
        flowStyle: isFlowStyle(source, node.range[1]),
        indentation: getIndentation(source, node.range[0]),
        originalValue: source.slice(node.range[0], end),
        range: [node.range[0], end]
      });
    }
    const localFiles = await Promise.all(localReferences.map(async (reference) => resolveLocalReference(dir, reference)));
    await Promise.all(localFiles.filter((local) => local != null).map(scanFile));
  }
}
function findUsesScalars(node) {
  if (!(0, import_yaml4.isMap)(node))
    return [];
  const found = [];
  const jobs = findMapValue(node, "jobs");
  if ((0, import_yaml4.isMap)(jobs)) {
    for (const job of jobs.items) {
      if (!(0, import_yaml4.isMap)(job.value))
        continue;
      const jobUses = findStringScalar(job.value, "uses");
      if (jobUses != null)
        found.push(jobUses);
      found.push(...findStepUses(findMapValue(job.value, "steps")));
    }
  }
  const runs = findMapValue(node, "runs");
  if ((0, import_yaml4.isMap)(runs)) {
    found.push(...findStepUses(findMapValue(runs, "steps")));
  }
  return found;
}
function findStepUses(node) {
  if (!(0, import_yaml4.isSeq)(node))
    return [];
  return node.items.flatMap((item) => {
    if (!(0, import_yaml4.isMap)(item))
      return [];
    const uses = findStringScalar(item, "uses");
    return uses == null ? [] : [uses];
  });
}
function findMapValue(node, key) {
  if (!(0, import_yaml4.isMap)(node))
    return null;
  const value = node.items.find((pair) => (0, import_yaml4.isScalar)(pair.key) && pair.key.value === key)?.value;
  return (0, import_yaml4.isNode)(value) ? value : null;
}
function findStringScalar(node, key) {
  const value = findMapValue(node, key);
  return (0, import_yaml4.isScalar)(value) && typeof value.value === "string" ? value : null;
}
async function resolveLocalReference(rootDir, reference) {
  const target2 = path162.resolve(rootDir, reference);
  const candidate = target2.endsWith(".yml") || target2.endsWith(".yaml") ? await existingPath(target2) : (await Promise.all(["action.yml", "action.yaml"].map(async (filename) => existingPath(path162.join(target2, filename))))).find((candidate2) => candidate2 != null) ?? null;
  if (candidate == null)
    return null;
  let realRoot;
  let realCandidate;
  try {
    [realRoot, realCandidate] = await Promise.all([fs92.realpath(rootDir), fs92.realpath(candidate)]);
  } catch (err2) {
    throw workflowError("READ", candidate, err2);
  }
  return isSubdir(realRoot, realCandidate) ? realCandidate : null;
}
async function existingPath(candidate) {
  try {
    await fs92.access(candidate);
    return candidate;
  } catch (err2) {
    if (!isErrorCode(err2, "ENOENT"))
      throw workflowError("READ", candidate, err2);
    return null;
  }
}
function parseActionReference(value) {
  if (value.startsWith("docker://"))
    return null;
  const at = value.lastIndexOf("@");
  if (at <= 0 || at === value.length - 1)
    return null;
  const name = value.slice(0, at);
  const parts = name.split("/");
  if (parts.length < 2 || parts[0] === "" || parts[1] === "")
    return null;
  return { name, ref: value.slice(at + 1), repo: `${parts[0]}/${parts[1]}` };
}
function parseRepoVersions(refs) {
  const versions = [];
  for (const [ref, commit] of Object.entries(refs)) {
    const match = /^refs\/tags\/(v?\d+\.\d+\.\d+(?:-[0-9A-Za-z.-]+)?)$/.exec(ref);
    if (match == null)
      continue;
    const version2 = import_semver47.default.parse(match[1], { loose: true });
    if (version2 == null)
      continue;
    versions.push({
      commit: refs[`${ref}^{}`] ?? commit,
      tag: match[1],
      version: version2
    });
  }
  return versions.sort((left, right) => import_semver47.default.compare(left.version, right.version));
}
function findCurrentVersion(action, versions) {
  if (SHA_PATTERN.test(action.ref) && action.commentVersion != null) {
    const parsed2 = import_semver47.default.parse(action.commentVersion, { loose: true });
    if (parsed2 != null) {
      const annotated = versions.find(({ commit, version: version2 }) => commit === action.ref && import_semver47.default.eq(version2, parsed2));
      if (annotated != null)
        return annotated;
    }
  }
  const parsed = import_semver47.default.parse(action.ref, { loose: true });
  if (parsed != null) {
    return versions.find(({ version: version2 }) => import_semver47.default.eq(version2, parsed)) ?? null;
  }
  if (/^v?\d+$/.test(action.ref)) {
    const major = Number(action.ref.replace(/^v/, ""));
    return versions.filter(({ version: version2 }) => version2.major === major && version2.prerelease.length === 0).at(-1) ?? null;
  }
  if (SHA_PATTERN.test(action.ref)) {
    return versions.filter(({ commit }) => commit === action.ref).at(-1) ?? null;
  }
  return null;
}
function getCommentVersion(node) {
  const candidate = node.comment?.trimStart().split(/\s/, 1)[0];
  return candidate != null && import_semver47.default.valid(candidate, { loose: true }) != null ? candidate : void 0;
}
function renderTargetValue(action, target2) {
  const oldReference = `${action.name}@${action.ref}`;
  const newReference = `${action.name}@${target2.commit}`;
  let value = action.originalValue.replace(oldReference, newReference);
  if (action.commentVersion != null)
    return value.replace(action.commentVersion, target2.tag);
  const comment = value.indexOf(" #");
  if (comment === -1) {
    return action.flowStyle ? `${value.trimEnd()} # ${target2.tag}
${action.indentation}` : `${value} # ${target2.tag}`;
  }
  return `${value.slice(0, comment + 2)}${target2.tag} ${value.slice(comment + 2).trimStart()}`;
}
function isFlowStyle(source, end) {
  const lineEnd = source.indexOf("\n", end);
  const following = source.slice(end, lineEnd === -1 ? source.length : lineEnd).trimStart();
  return following.startsWith("}") || following.startsWith("]") || following.startsWith(",");
}
function getIndentation(source, start) {
  const lineStart = source.lastIndexOf("\n", start - 1) + 1;
  return " ".repeat(start - lineStart);
}
function trimLineBreak(source, end) {
  while (end > 0 && (source[end - 1] === "\n" || source[end - 1] === "\r"))
    end--;
  return end;
}
function dedupeOutdated(actions) {
  return [...new Map(actions.map((action) => [action.name, action])).values()].sort((left, right) => left.name.localeCompare(right.name));
}
function resolveServerUrl(serverUrl) {
  let url7 = serverUrl || process.env.GITHUB_SERVER_URL || "https://github.com";
  if (!url7.startsWith("https://") && !url7.startsWith("http://")) {
    throw new PnpmError("GITHUB_ACTIONS_SERVER_PROTOCOL", `The GitHub Actions server URL must use the "https://" or "http://" protocol, but got ${JSON.stringify(url7)}`);
  }
  while (url7.endsWith("/"))
    url7 = url7.slice(0, -1);
  return url7;
}
function workflowError(operation5, filePath, cause) {
  const detail = util48.types.isNativeError(cause) ? cause.message : String(cause);
  return new PnpmError(`GITHUB_ACTIONS_WORKFLOW_${operation5}`, `Failed to ${operation5.toLowerCase()} GitHub Actions workflow ${filePath}: ${detail}`, { cause });
}
function isErrorCode(err2, code) {
  return util48.types.isNativeError(err2) && "code" in err2 && err2.code === code;
}
var import_semver47, import_write_file_atomic9, import_yaml4, SHA_PATTERN, limitRepoReads;
var init_lib139 = __esm({
  "../deps/github-actions/lib/index.js"() {
    "use strict";
    init_lib2();
    init_lib63();
    init_lib49();
    init_is_subdir();
    init_p_limit();
    import_semver47 = __toESM(require_semver2(), 1);
    import_write_file_atomic9 = __toESM(require_lib10(), 1);
    import_yaml4 = __toESM(require_dist6(), 1);
    SHA_PATTERN = /^[0-9a-f]{40}$/;
    limitRepoReads = pLimit(8);
  }
});

// ../deps/inspection/outdated/lib/createManifestGetter.js
var init_createManifestGetter = __esm({
  "../deps/inspection/outdated/lib/createManifestGetter.js"() {
    "use strict";
    init_lib37();
    init_lib59();
  }
});

// ../deps/inspection/outdated/lib/outdated.js
async function outdated(opts3) {
  if (packageHasNoDeps(opts3.manifest))
    return [];
  if (opts3.wantedLockfile == null) {
    throw new PnpmError("OUTDATED_NO_LOCKFILE", `No lockfile in directory "${opts3.lockfileDir}". Run \`pnpm install\` to generate one.`);
  }
  async function getOverriddenManifest() {
    const overrides = opts3.currentLockfile?.overrides ?? opts3.wantedLockfile?.overrides;
    if (overrides) {
      const readPackageHook = createReadPackageHook({
        lockfileDir: opts3.lockfileDir,
        overrides: parseOverrides(overrides, opts3.catalogs ?? {})
      });
      const manifest = await readPackageHook?.(opts3.manifest, opts3.lockfileDir);
      if (manifest)
        return manifest;
    }
    return opts3.manifest;
  }
  const allDeps = getAllDependenciesFromManifest(await getOverriddenManifest());
  const importerId = getLockfileImporterId(opts3.lockfileDir, opts3.prefix);
  const workspace = opts3.manifest.name?.trim() || importerId;
  const currentLockfile = opts3.currentLockfile ?? { lockfileVersion: LOCKFILE_VERSION, importers: { [importerId]: { specifiers: {} } } };
  const outdated2 = [];
  const ignoreDependenciesMatcher = opts3.ignoreDependencies?.length ? createMatcher(opts3.ignoreDependencies) : void 0;
  const resolveOpts = {
    lockfileDir: opts3.lockfileDir,
    preferredVersions: {},
    projectDir: opts3.prefix,
    publishedBy: opts3.publishedBy,
    publishedByExclude: opts3.publishedByExclude
  };
  await Promise.all(DEPENDENCIES_FIELDS.map(async (depType) => {
    if (opts3.include?.[depType] === false || opts3.wantedLockfile.importers[importerId][depType] == null)
      return;
    let pkgs = Object.keys(opts3.wantedLockfile.importers[importerId][depType]);
    if (opts3.match != null) {
      pkgs = pkgs.filter((pkgName) => opts3.match(pkgName));
    }
    const _replaceCatalogProtocolIfNecessary = replaceCatalogProtocolIfNecessary.bind(null, opts3.catalogs ?? {});
    await Promise.all(pkgs.map(async (alias) => {
      if (!allDeps[alias])
        return;
      const wantedRef = opts3.wantedLockfile.importers[importerId][depType][alias];
      if (isLocalRef(wantedRef))
        return;
      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 ? opts3.wantedLockfile.packages?.[wantedRelative] : void 0;
      const currentSnapshot = currentRelative != null ? currentLockfile.packages?.[currentRelative] : void 0;
      const packageName = (wantedRelative != null ? parse9(wantedRelative).name : void 0) ?? alias;
      const bareSpecifier = _replaceCatalogProtocolIfNecessary({ alias, bareSpecifier: allDeps[alias] });
      const info = await opts3.resolveLatest({ wantedDependency: { alias, bareSpecifier }, compatible: opts3.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
          });
        }
        return;
      }
      if (!current) {
        outdated2.push({
          alias,
          belongsTo: depType,
          latestManifest,
          packageName,
          wanted,
          workspace
        });
        return;
      }
      if (wanted !== current || isLowerVersion(wanted, latestManifest.version) || latestManifest.deprecated) {
        outdated2.push({
          alias,
          belongsTo: depType,
          current,
          latestManifest,
          packageName,
          wanted,
          workspace
        });
      }
    }));
  }));
  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 isLocalRef(ref) {
  return ref.startsWith("link:") || ref.startsWith("file:") || ref.startsWith("workspace:");
}
function displayVersion(ref, relativeDepPath, snapshotVersion) {
  if (relativeDepPath != null) {
    const parsed = parse9(relativeDepPath);
    if (parsed.version != null)
      return parsed.version;
    if (parsed.nonSemverVersion?.includes("/"))
      return ref;
  }
  return snapshotVersion ?? ref;
}
function isLowerVersion(current, latest) {
  if (!import_semver48.default.valid(current) || !import_semver48.default.valid(latest))
    return false;
  return import_semver48.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_semver48;
var init_outdated = __esm({
  "../deps/inspection/outdated/lib/outdated.js"() {
    "use strict";
    init_lib97();
    init_lib27();
    init_lib99();
    init_lib();
    init_lib68();
    init_lib2();
    init_lib105();
    init_lib80();
    init_lib11();
    init_lib9();
    import_semver48 = __toESM(require_semver2(), 1);
    init_createManifestGetter();
  }
});

// ../deps/inspection/outdated/lib/outdatedDepsOfProjects.js
import path163 from "node:path";
async function outdatedDepsOfProjects(pkgs, args, opts3) {
  if (!opts3.lockfileDir) {
    return unnest_default(await Promise.all(pkgs.map(async (pkg) => outdatedDepsOfProjects([pkg], args, { ...opts3, lockfileDir: pkg.rootDir }))));
  }
  const lockfileDir = opts3.lockfileDir ?? opts3.dir;
  const internalPnpmDir = path163.join(path163.join(lockfileDir, "node_modules/.pnpm"));
  const currentLockfile = await readCurrentLockfile(internalPnpmDir, { ignoreIncompatible: false });
  const wantedLockfile = await readWantedLockfile(lockfileDir, { ignoreIncompatible: false }) ?? currentLockfile;
  const { publishedBy, publishedByExclude } = getPublishedByPolicy(opts3);
  const { resolveLatest } = createResolver2({
    ...opts3,
    configByUri: opts3.configByUri,
    filterMetadata: false,
    fullMetadata: opts3.fullMetadata === true || Boolean(opts3.minimumReleaseAge),
    ignoreMissingTimeField: opts3.minimumReleaseAgeIgnoreMissingTime
  });
  return Promise.all(pkgs.map(async ({ rootDir, manifest }) => {
    const match = args.length > 0 && createMatcher(args) || void 0;
    return outdated({
      catalogs: opts3.catalogs,
      compatible: opts3.compatible,
      currentLockfile,
      resolveLatest,
      ignoreDependencies: opts3.ignoreDependencies,
      include: opts3.include,
      lockfileDir,
      manifest,
      match,
      minimumReleaseAge: opts3.minimumReleaseAge,
      minimumReleaseAgeExclude: opts3.minimumReleaseAgeExclude,
      prefix: rootDir,
      publishedBy,
      publishedByExclude,
      wantedLockfile
    });
  }));
}
var init_outdatedDepsOfProjects = __esm({
  "../deps/inspection/outdated/lib/outdatedDepsOfProjects.js"() {
    "use strict";
    init_lib27();
    init_lib37();
    init_lib59();
    init_lib80();
    init_es();
    init_outdated();
  }
});

// ../deps/inspection/outdated/lib/index.js
var init_lib140 = __esm({
  "../deps/inspection/outdated/lib/index.js"() {
    "use strict";
    init_outdatedDepsOfProjects();
  }
});

// ../installing/commands/lib/update/generateUpdateChangeset.js
import crypto11 from "node:crypto";
import fs93 from "node:fs";
import path164 from "node:path";
import util49 from "node:util";
async function captureUpdateChangesetContext(opts3) {
  const workspaceDir = opts3.workspaceDir ?? opts3.dir;
  const projects = opts3.allProjects ?? (opts3.workspaceDir ? await findWorkspaceProjects(opts3.workspaceDir, { ...opts3, patterns: opts3.workspacePackagePatterns }) : []);
  const rootDirs = projects.length > 0 ? projects.map(({ rootDir }) => rootDir) : [opts3.dir];
  const [depSpecsEntries, workspaceManifest] = await Promise.all([
    Promise.all(rootDirs.map(async (rootDir) => {
      const manifest = await safeReadProjectManifestOnly(rootDir);
      return [rootDir, manifest && pickUpdateDepSpecs(manifest)];
    })),
    readWorkspaceManifest(workspaceDir)
  ]);
  return {
    workspaceDir,
    rootDirs,
    depSpecsBefore: new Map(depSpecsEntries),
    catalogsBefore: getCatalogsFromWorkspaceManifest(workspaceManifest)
  };
}
async function generateUpdateChangeset(ctx) {
  const changesetDir = path164.join(ctx.workspaceDir, ".changeset");
  await ensureChangesetDirIsSafe(changesetDir);
  const changesetConfigPath = path164.join(changesetDir, "config.json");
  const changesetConfig = await readChangesetConfig(changesetConfigPath);
  if (changesetConfig == null) {
    globalWarn(`No changeset was generated because ${changesetConfigPath} does not exist`);
    return;
  }
  const catalogsAfter = getCatalogsFromWorkspaceManifest(await readWorkspaceManifest(ctx.workspaceDir));
  const changedCatalogEntries = findChangedCatalogEntries(ctx.catalogsBefore, catalogsAfter);
  const isIgnored = createMatcher(Array.isArray(changesetConfig.ignore) ? changesetConfig.ignore : []);
  const releases = (await Promise.all(ctx.rootDirs.map(async (rootDir) => {
    const manifest = await safeReadProjectManifestOnly(rootDir);
    if (!manifest?.name || manifest.private || isIgnored(manifest.name))
      return void 0;
    const depSpecs = pickUpdateDepSpecs(manifest);
    const depSpecsBefore = ctx.depSpecsBefore.get(rootDir);
    const peerDependenciesChanged = dependencyGroupChanged(depSpecsBefore, depSpecs, "peerDependencies") || usesChangedCatalogEntry([depSpecs.peerDependencies], changedCatalogEntries);
    if (peerDependenciesChanged)
      return { name: manifest.name, type: "major" };
    const productionDependenciesChanged = dependencyGroupChanged(depSpecsBefore, depSpecs, "dependencies") || dependencyGroupChanged(depSpecsBefore, depSpecs, "optionalDependencies") || usesChangedCatalogEntry([depSpecs.dependencies, depSpecs.optionalDependencies], changedCatalogEntries);
    return productionDependenciesChanged ? { name: manifest.name, type: "patch" } : void 0;
  }))).filter((release) => release != null);
  if (releases.length === 0) {
    globalInfo("No changeset was generated because the update did not change the production or peer dependencies of any workspace package");
    return;
  }
  releases.sort((a2, b) => (0, import_util20.lexCompare)(a2.name, b.name));
  await ensureChangesetDirIsSafe(changesetDir);
  const changesetPath = path164.join(changesetDir, `pnpm-update-${crypto11.randomBytes(4).toString("hex")}.md`);
  await fs93.promises.writeFile(changesetPath, formatChangeset(releases), { flag: "wx" });
  globalInfo(`Generated a changeset at ${changesetPath} for: ${releases.map(({ name, type: type4 }) => `${name} (${type4})`).join(", ")}`);
}
async function readChangesetConfig(configPath) {
  try {
    return await loadJsonFile(configPath);
  } catch (err2) {
    if (util49.types.isNativeError(err2) && "code" in err2 && err2.code === "ENOENT") {
      return null;
    }
    throw new PnpmError("INVALID_CHANGESET_CONFIG", `Failed to read changeset config at ${configPath}: ${util49.types.isNativeError(err2) ? err2.message : String(err2)}`, { cause: err2 });
  }
}
async function ensureChangesetDirIsSafe(changesetDir) {
  let stat2;
  try {
    stat2 = await fs93.promises.lstat(changesetDir);
  } catch (err2) {
    if (util49.types.isNativeError(err2) && "code" in err2 && err2.code === "ENOENT") {
      return;
    }
    throw new PnpmError("UNSAFE_CHANGESET_DIR", `Failed to inspect changeset directory at ${changesetDir}: ${util49.types.isNativeError(err2) ? err2.message : String(err2)}`, { cause: err2 });
  }
  if (stat2.isSymbolicLink() || !stat2.isDirectory()) {
    throw new PnpmError("UNSAFE_CHANGESET_DIR", `Refusing to use changeset directory at ${changesetDir} because it is a symlink or not a directory`);
  }
}
function pickUpdateDepSpecs(manifest) {
  const depSpecs = {};
  if (manifest.dependencies != null) {
    depSpecs.dependencies = manifest.dependencies;
  }
  if (manifest.optionalDependencies != null) {
    depSpecs.optionalDependencies = manifest.optionalDependencies;
  }
  if (manifest.peerDependencies != null) {
    depSpecs.peerDependencies = manifest.peerDependencies;
  }
  return depSpecs;
}
function dependencyGroupChanged(before, after, field) {
  return !equals_default(before?.[field] ?? {}, after[field] ?? {});
}
function findChangedCatalogEntries(before, after) {
  const changedEntries = /* @__PURE__ */ new Map();
  for (const catalogName of /* @__PURE__ */ new Set([...Object.keys(before), ...Object.keys(after)])) {
    for (const dependencyName of /* @__PURE__ */ new Set([
      ...Object.keys(before[catalogName] ?? {}),
      ...Object.keys(after[catalogName] ?? {})
    ])) {
      if (before[catalogName]?.[dependencyName] !== after[catalogName]?.[dependencyName]) {
        let dependencyNames = changedEntries.get(catalogName);
        if (dependencyNames == null) {
          dependencyNames = /* @__PURE__ */ new Set();
          changedEntries.set(catalogName, dependencyNames);
        }
        dependencyNames.add(dependencyName);
      }
    }
  }
  return changedEntries;
}
function usesChangedCatalogEntry(dependencyGroups, changedCatalogEntries) {
  if (changedCatalogEntries.size === 0)
    return false;
  for (const deps of dependencyGroups) {
    for (const [depName, spec] of Object.entries(deps ?? {})) {
      const catalogName = parseCatalogProtocol(spec);
      if (catalogName != null && changedCatalogEntries.get(catalogName)?.has(depName)) {
        return true;
      }
    }
  }
  return false;
}
function formatChangeset(releases) {
  const bumps = releases.map(({ name, type: type4 }) => `${JSON.stringify(name)}: ${type4}`).join("\n");
  return `---
${bumps}
---

Update dependencies.
`;
}
var import_util20;
var init_generateUpdateChangeset = __esm({
  "../installing/commands/lib/update/generateUpdateChangeset.js"() {
    "use strict";
    init_lib60();
    init_lib96();
    init_lib27();
    init_lib2();
    init_lib3();
    import_util20 = __toESM(require_dist4(), 1);
    init_lib15();
    init_lib42();
    init_lib43();
    init_load_json_file();
    init_es();
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/chalk/5.6.2/7b61e48ea6529f3478eb79333861d57da6d3107ae3fe1419c07c470318cb5181/node_modules/chalk/source/vendor/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({
  "../../../../../setup-pnpm/store/v11/links/@/chalk/5.6.2/7b61e48ea6529f3478eb79333861d57da6d3107ae3fe1419c07c470318cb5181/node_modules/chalk/source/vendor/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;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/chalk/5.6.2/7b61e48ea6529f3478eb79333861d57da6d3107ae3fe1419c07c470318cb5181/node_modules/chalk/source/vendor/supports-color/index.js
import process20 from "node:process";
import os13 from "node:os";
import tty4 from "node:tty";
function hasFlag2(flag, argv2 = globalThis.Deno ? globalThis.Deno.args : process20.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) {
    if (env2.FORCE_COLOR === "true") {
      return 1;
    }
    if (env2.FORCE_COLOR === "false") {
      return 0;
    }
    return env2.FORCE_COLOR.length === 0 ? 1 : Math.min(Number.parseInt(env2.FORCE_COLOR, 10), 3);
  }
}
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 (process20.platform === "win32") {
    const osRelease = os13.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, supports_color_default2;
var init_supports_color2 = __esm({
  "../../../../../setup-pnpm/store/v11/links/@/chalk/5.6.2/7b61e48ea6529f3478eb79333861d57da6d3107ae3fe1419c07c470318cb5181/node_modules/chalk/source/vendor/supports-color/index.js"() {
    ({ env: env2 } = process20);
    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) })
    };
    supports_color_default2 = supportsColor2;
  }
});

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

// ../../../../../setup-pnpm/store/v11/links/@/chalk/5.6.2/7b61e48ea6529f3478eb79333861d57da6d3107ae3fe1419c07c470318cb5181/node_modules/chalk/source/index.js
function createChalk2(options) {
  return chalkFactory2(options);
}
var stdoutColor2, stderrColor2, GENERATOR2, STYLER2, IS_EMPTY2, levelMapping, styles4, applyOptions2, chalkFactory2, getModelAnsi, usedModels2, proto2, createStyler2, createBuilder2, applyStyle2, chalk2, chalkStderr2, source_default2;
var init_source3 = __esm({
  "../../../../../setup-pnpm/store/v11/links/@/chalk/5.6.2/7b61e48ea6529f3478eb79333861d57da6d3107ae3fe1419c07c470318cb5181/node_modules/chalk/source/index.js"() {
    init_ansi_styles2();
    init_supports_color2();
    init_utilities3();
    ({ stdout: stdoutColor2, stderr: stderrColor2 } = supports_color_default2);
    GENERATOR2 = /* @__PURE__ */ Symbol("GENERATOR");
    STYLER2 = /* @__PURE__ */ Symbol("STYLER");
    IS_EMPTY2 = /* @__PURE__ */ Symbol("IS_EMPTY");
    levelMapping = [
      "ansi",
      "ansi",
      "ansi256",
      "ansi16m"
    ];
    styles4 = /* @__PURE__ */ Object.create(null);
    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;
    };
    chalkFactory2 = (options) => {
      const chalk3 = (...strings2) => strings2.join(" ");
      applyOptions2(chalk3, options);
      Object.setPrototypeOf(chalk3, createChalk2.prototype);
      return chalk3;
    };
    Object.setPrototypeOf(createChalk2.prototype, Function.prototype);
    for (const [styleName, style] of Object.entries(ansi_styles_default2)) {
      styles4[styleName] = {
        get() {
          const builder = createBuilder2(this, createStyler2(style.open, style.close, this[STYLER2]), this[IS_EMPTY2]);
          Object.defineProperty(this, styleName, { value: builder });
          return builder;
        }
      };
    }
    styles4.visible = {
      get() {
        const builder = createBuilder2(this, this[STYLER2], true);
        Object.defineProperty(this, "visible", { value: builder });
        return builder;
      }
    };
    getModelAnsi = (model, level, type4, ...arguments_) => {
      if (model === "rgb") {
        if (level === "ansi16m") {
          return ansi_styles_default2[type4].ansi16m(...arguments_);
        }
        if (level === "ansi256") {
          return ansi_styles_default2[type4].ansi256(ansi_styles_default2.rgbToAnsi256(...arguments_));
        }
        return ansi_styles_default2[type4].ansi(ansi_styles_default2.rgbToAnsi(...arguments_));
      }
      if (model === "hex") {
        return getModelAnsi("rgb", level, type4, ...ansi_styles_default2.hexToRgb(...arguments_));
      }
      return ansi_styles_default2[type4][model](...arguments_);
    };
    usedModels2 = ["rgb", "hex", "ansi256"];
    for (const model of usedModels2) {
      styles4[model] = {
        get() {
          const { level } = this;
          return function(...arguments_) {
            const styler = createStyler2(getModelAnsi(model, levelMapping[level], "color", ...arguments_), ansi_styles_default2.color.close, this[STYLER2]);
            return createBuilder2(this, styler, this[IS_EMPTY2]);
          };
        }
      };
      const bgModel = "bg" + model[0].toUpperCase() + model.slice(1);
      styles4[bgModel] = {
        get() {
          const { level } = this;
          return function(...arguments_) {
            const styler = createStyler2(getModelAnsi(model, levelMapping[level], "bgColor", ...arguments_), ansi_styles_default2.bgColor.close, this[STYLER2]);
            return createBuilder2(this, styler, this[IS_EMPTY2]);
          };
        }
      };
    }
    proto2 = Object.defineProperties(() => {
    }, {
      ...styles4,
      level: {
        enumerable: true,
        get() {
          return this[GENERATOR2].level;
        },
        set(level) {
          this[GENERATOR2].level = level;
        }
      }
    });
    createStyler2 = (open3, close, parent) => {
      let openAll;
      let closeAll;
      if (parent === void 0) {
        openAll = open3;
        closeAll = close;
      } else {
        openAll = parent.openAll + open3;
        closeAll = close + parent.closeAll;
      }
      return {
        open: open3,
        close,
        openAll,
        closeAll,
        parent
      };
    };
    createBuilder2 = (self2, _styler, _isEmpty) => {
      const builder = (...arguments_) => applyStyle2(builder, arguments_.length === 1 ? "" + arguments_[0] : arguments_.join(" "));
      Object.setPrototypeOf(builder, proto2);
      builder[GENERATOR2] = self2;
      builder[STYLER2] = _styler;
      builder[IS_EMPTY2] = _isEmpty;
      return builder;
    };
    applyStyle2 = (self2, string) => {
      if (self2.level <= 0 || !string) {
        return self2[IS_EMPTY2] ? "" : string;
      }
      let styler = self2[STYLER2];
      if (styler === void 0) {
        return string;
      }
      const { openAll, closeAll } = styler;
      if (string.includes("\x1B")) {
        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;
    };
    Object.defineProperties(createChalk2.prototype, styles4);
    chalk2 = createChalk2();
    chalkStderr2 = createChalk2({ level: stderrColor2 ? stderrColor2.level : 0 });
    source_default2 = chalk2;
  }
});

// ../../../../../setup-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_default2.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_lib141 = __esm({
  "../../../../../setup-pnpm/store/v11/links/@pnpm/colorize-semver-diff/2.0.0/f68166d46b526acb1b73c4e1c33bacdb1d0352eb5841882d6946716d5d9f09c4/node_modules/@pnpm/colorize-semver-diff/lib/index.js"() {
    init_source3();
    DIFF_COLORS = {
      feature: source_default2.yellowBright.bold,
      fix: source_default2.greenBright.bold
    };
  }
});

// ../../../../../setup-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: change3 } = semverDiff(version1Semver, version2Semver);
    return {
      change: change3,
      diff: [[], parseVersion(version2)]
    };
  }
  const version1Tuples = parseVersion(version1);
  const version2Tuples = parseVersion(version2);
  const same = [];
  let change2 = "unknown";
  const maxTuples = Math.max(version1Tuples.length, version2Tuples.length);
  const unstable = version1Tuples[0] === "0" || version2Tuples[0] === "0" || maxTuples > 3;
  for (let i4 = 0; i4 < maxTuples; i4++) {
    if (version1Tuples[i4] === version2Tuples[i4]) {
      same.push(version1Tuples[i4]);
      continue;
    }
    if (!unstable) {
      change2 = SEMVER_CHANGE_BY_TUPLE_NUMBER[i4] ?? "unknown";
    }
    return {
      change: change2,
      diff: [same, version2Tuples.slice(i4)]
    };
  }
  return {
    change: change2,
    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_lib142 = __esm({
  "../../../../../setup-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"];
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/grapheme-splitter/1.0.4/2e7a99905bbc9ab70d78be72b6034f403b1054cdd82e275b3982ea3412506b93/node_modules/grapheme-splitter/index.js
var require_grapheme_splitter = __commonJS({
  "../../../../../setup-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, L3 = 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 == L3 && (next2 == L3 || 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, index2) {
        if (index2 === void 0) {
          index2 = 0;
        }
        if (index2 < 0) {
          return 0;
        }
        if (index2 >= string.length - 1) {
          return string.length;
        }
        var prev = getGraphemeBreakProperty(codePointAt2(string, index2));
        var mid = [];
        for (var i4 = index2 + 1; i4 < string.length; i4++) {
          if (isSurrogate(string, i4 - 1)) {
            continue;
          }
          var next2 = getGraphemeBreakProperty(codePointAt2(string, i4));
          if (shouldBreak(prev, mid, next2)) {
            return i4;
          }
          mid.push(next2);
        }
        return string.length;
      };
      this.splitGraphemes = function(str2) {
        var res = [];
        var index2 = 0;
        var brk;
        while ((brk = this.nextBreak(str2, index2)) < str2.length) {
          res.push(str2.slice(index2, brk));
          index2 = brk;
        }
        if (index2 < str2.length) {
          res.push(str2.slice(index2));
        }
        return res;
      };
      this.iterateGraphemes = function(str2) {
        var index2 = 0;
        var res = {
          next: (function() {
            var value;
            var brk;
            if ((brk = this.nextBreak(str2, index2)) < str2.length) {
              value = str2.slice(index2, brk);
              index2 = brk;
              return { value, done: false };
            }
            if (index2 < str2.length) {
              value = str2.slice(index2);
              index2 = 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 index2 = 0;
        var brk;
        while ((brk = this.nextBreak(str2, index2)) < str2.length) {
          index2 = brk;
          count2++;
        }
        if (index2 < 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 L3;
        }
        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;
    }
  }
});

// ../../../../../setup-pnpm/store/v11/links/@pnpm/slice-ansi/1.1.3/e0f39b6e7a9f1e4f0c30b0d7f92981584fb472d1135663735ccbf37591c88a62/node_modules/@pnpm/slice-ansi/index.js
var require_slice_ansi2 = __commonJS({
  "../../../../../setup-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;
    };
  }
});

// ../../../../../setup-pnpm/store/v11/links/@zkochan/table/2.0.1/e5f5f5f7ec033ed39dc10647d0dd4a17fac51c45e299dcfd752aa7c9b7265d37/node_modules/@zkochan/table/dist/src/getBorderCharacters.js
var require_getBorderCharacters2 = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@zkochan/table/2.0.1/e5f5f5f7ec033ed39dc10647d0dd4a17fac51c45e299dcfd752aa7c9b7265d37/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;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@zkochan/table/2.0.1/e5f5f5f7ec033ed39dc10647d0dd4a17fac51c45e299dcfd752aa7c9b7265d37/node_modules/@zkochan/table/dist/src/utils.js
var require_utils15 = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@zkochan/table/2.0.1/e5f5f5f7ec033ed39dc10647d0dd4a17fac51c45e299dcfd752aa7c9b7265d37/node_modules/@zkochan/table/dist/src/utils.js"(exports2) {
    "use strict";
    var __importDefault2 = exports2 && exports2.__importDefault || function(mod2) {
      return mod2 && mod2.__esModule ? mod2 : { "default": mod2 };
    };
    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, index2) => {
        return element + (index2 < sum % length ? 1 : 0);
      });
    };
    exports2.distributeUnevenly = distributeUnevenly;
    var sequence = (start, end) => {
      return Array.from({ length: end - start + 1 }, (_, index2) => {
        return index2 + start;
      });
    };
    exports2.sequence = sequence;
    var sumArray = (array) => {
      return array.reduce((accumulator, element) => {
        return accumulator + element;
      }, 0);
    };
    exports2.sumArray = sumArray;
    var extractTruncates = (config2) => {
      return config2.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((height2, index2) => {
        return Array.from({ length: height2 }, () => {
          return index2;
        });
      }));
      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;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@zkochan/table/2.0.1/e5f5f5f7ec033ed39dc10647d0dd4a17fac51c45e299dcfd752aa7c9b7265d37/node_modules/@zkochan/table/dist/src/alignString.js
var require_alignString2 = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@zkochan/table/2.0.1/e5f5f5f7ec033ed39dc10647d0dd4a17fac51c45e299dcfd752aa7c9b7265d37/node_modules/@zkochan/table/dist/src/alignString.js"(exports2) {
    "use strict";
    var __importDefault2 = exports2 && exports2.__importDefault || function(mod2) {
      return mod2 && mod2.__esModule ? mod2 : { "default": mod2 };
    };
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.alignString = void 0;
    var string_width_1 = __importDefault2(require_string_width());
    var utils_1 = require_utils15();
    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;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@zkochan/table/2.0.1/e5f5f5f7ec033ed39dc10647d0dd4a17fac51c45e299dcfd752aa7c9b7265d37/node_modules/@zkochan/table/dist/src/alignTableData.js
var require_alignTableData2 = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@zkochan/table/2.0.1/e5f5f5f7ec033ed39dc10647d0dd4a17fac51c45e299dcfd752aa7c9b7265d37/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, config2) => {
      return rows.map((row, rowIndex) => {
        return row.map((cell, cellIndex) => {
          const { width, alignment } = config2.columns[cellIndex];
          const containingRange = config2.spanningCellManager?.getContainingRange({
            col: cellIndex,
            row: rowIndex
          }, { mapped: true });
          if (containingRange) {
            return cell;
          }
          return (0, alignString_1.alignString)(cell, width, alignment);
        });
      });
    };
    exports2.alignTableData = alignTableData;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@zkochan/table/2.0.1/e5f5f5f7ec033ed39dc10647d0dd4a17fac51c45e299dcfd752aa7c9b7265d37/node_modules/@zkochan/table/dist/src/wrapString.js
var require_wrapString2 = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@zkochan/table/2.0.1/e5f5f5f7ec033ed39dc10647d0dd4a17fac51c45e299dcfd752aa7c9b7265d37/node_modules/@zkochan/table/dist/src/wrapString.js"(exports2) {
    "use strict";
    var __importDefault2 = exports2 && exports2.__importDefault || function(mod2) {
      return mod2 && mod2.__esModule ? mod2 : { "default": mod2 };
    };
    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;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@zkochan/table/2.0.1/e5f5f5f7ec033ed39dc10647d0dd4a17fac51c45e299dcfd752aa7c9b7265d37/node_modules/@zkochan/table/dist/src/wrapWord.js
var require_wrapWord2 = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@zkochan/table/2.0.1/e5f5f5f7ec033ed39dc10647d0dd4a17fac51c45e299dcfd752aa7c9b7265d37/node_modules/@zkochan/table/dist/src/wrapWord.js"(exports2) {
    "use strict";
    var __importDefault2 = exports2 && exports2.__importDefault || function(mod2) {
      return mod2 && mod2.__esModule ? mod2 : { "default": mod2 };
    };
    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 wrapWord2 = (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 = wrapWord2;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@zkochan/table/2.0.1/e5f5f5f7ec033ed39dc10647d0dd4a17fac51c45e299dcfd752aa7c9b7265d37/node_modules/@zkochan/table/dist/src/wrapCell.js
var require_wrapCell2 = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@zkochan/table/2.0.1/e5f5f5f7ec033ed39dc10647d0dd4a17fac51c45e299dcfd752aa7c9b7265d37/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_utils15();
    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;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@zkochan/table/2.0.1/e5f5f5f7ec033ed39dc10647d0dd4a17fac51c45e299dcfd752aa7c9b7265d37/node_modules/@zkochan/table/dist/src/calculateCellHeight.js
var require_calculateCellHeight2 = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@zkochan/table/2.0.1/e5f5f5f7ec033ed39dc10647d0dd4a17fac51c45e299dcfd752aa7c9b7265d37/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;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@zkochan/table/2.0.1/e5f5f5f7ec033ed39dc10647d0dd4a17fac51c45e299dcfd752aa7c9b7265d37/node_modules/@zkochan/table/dist/src/calculateRowHeights.js
var require_calculateRowHeights2 = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@zkochan/table/2.0.1/e5f5f5f7ec033ed39dc10647d0dd4a17fac51c45e299dcfd752aa7c9b7265d37/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_utils15();
    var calculateRowHeights = (rows, config2) => {
      const rowHeights = [];
      for (const [rowIndex, row] of rows.entries()) {
        let rowHeight = 1;
        row.forEach((cell, cellIndex) => {
          const containingRange = config2.spanningCellManager?.getContainingRange({
            col: cellIndex,
            row: rowIndex
          });
          if (!containingRange) {
            const cellHeight = (0, calculateCellHeight_1.calculateCellHeight)(cell, config2.columns[cellIndex].width, config2.columns[cellIndex].wrapWord);
            rowHeight = Math.max(rowHeight, cellHeight);
            return;
          }
          const { topLeft, bottomRight, height: height2 } = 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 !config2.drawHorizontalLine?.(horizontalBorderIndex, rows.length);
            }).length;
            const cellHeight = height2 - totalOccupiedSpanningCellHeight - totalHorizontalBorderHeight + totalHiddenHorizontalBorderHeight;
            rowHeight = Math.max(rowHeight, cellHeight);
          }
        });
        rowHeights.push(rowHeight);
      }
      return rowHeights;
    };
    exports2.calculateRowHeights = calculateRowHeights;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@zkochan/table/2.0.1/e5f5f5f7ec033ed39dc10647d0dd4a17fac51c45e299dcfd752aa7c9b7265d37/node_modules/@zkochan/table/dist/src/drawContent.js
var require_drawContent2 = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@zkochan/table/2.0.1/e5f5f5f7ec033ed39dc10647d0dd4a17fac51c45e299dcfd752aa7c9b7265d37/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;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@zkochan/table/2.0.1/e5f5f5f7ec033ed39dc10647d0dd4a17fac51c45e299dcfd752aa7c9b7265d37/node_modules/@zkochan/table/dist/src/drawBorder.js
var require_drawBorder2 = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@zkochan/table/2.0.1/e5f5f5f7ec033ed39dc10647d0dd4a17fac51c45e299dcfd752aa7c9b7265d37/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 (index2, size) => {
        const drawBorderParameters = {
          ...parameters,
          horizontalBorderIndex: index2
        };
        if (index2 === 0) {
          return (0, exports2.drawBorderTop)(columnWidths, drawBorderParameters);
        } else if (index2 === size) {
          return (0, exports2.drawBorderBottom)(columnWidths, drawBorderParameters);
        }
        return (0, exports2.drawBorderJoin)(columnWidths, drawBorderParameters);
      };
    };
    exports2.createTableBorderGetter = createTableBorderGetter;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@zkochan/table/2.0.1/e5f5f5f7ec033ed39dc10647d0dd4a17fac51c45e299dcfd752aa7c9b7265d37/node_modules/@zkochan/table/dist/src/drawRow.js
var require_drawRow2 = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@zkochan/table/2.0.1/e5f5f5f7ec033ed39dc10647d0dd4a17fac51c45e299dcfd752aa7c9b7265d37/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, config2) => {
      const { border, drawVerticalLine, rowIndex, spanningCellManager } = config2;
      return (0, drawContent_1.drawContent)({
        contents: row,
        drawSeparator: drawVerticalLine,
        elementType: "cell",
        rowIndex,
        separatorGetter: (index2, columnCount) => {
          if (index2 === 0) {
            return border.bodyLeft;
          }
          if (index2 === columnCount) {
            return border.bodyRight;
          }
          return border.bodyJoin;
        },
        spanningCellManager
      }) + "\n";
    };
    exports2.drawRow = drawRow;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@zkochan/table/2.0.1/e5f5f5f7ec033ed39dc10647d0dd4a17fac51c45e299dcfd752aa7c9b7265d37/node_modules/@zkochan/table/dist/src/generated/validators.js
var require_validators2 = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@zkochan/table/2.0.1/e5f5f5f7ec033ed39dc10647d0dd4a17fac51c45e299dcfd752aa7c9b7265d37/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;
    }
  }
});

// ../../../../../setup-pnpm/store/v11/links/@zkochan/table/2.0.1/e5f5f5f7ec033ed39dc10647d0dd4a17fac51c45e299dcfd752aa7c9b7265d37/node_modules/@zkochan/table/dist/src/validateConfig.js
var require_validateConfig2 = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@zkochan/table/2.0.1/e5f5f5f7ec033ed39dc10647d0dd4a17fac51c45e299dcfd752aa7c9b7265d37/node_modules/@zkochan/table/dist/src/validateConfig.js"(exports2) {
    "use strict";
    var __importDefault2 = exports2 && exports2.__importDefault || function(mod2) {
      return mod2 && mod2.__esModule ? mod2 : { "default": mod2 };
    };
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.validateConfig = void 0;
    var validators_1 = __importDefault2(require_validators2());
    var validateConfig = (schemaId, config2) => {
      const validate2 = validators_1.default[schemaId];
      if (!validate2(config2) && validate2.errors) {
        const errors2 = validate2.errors.map((error) => {
          return {
            message: error.message,
            params: error.params,
            schemaPath: error.schemaPath
          };
        });
        console.log("config", config2);
        console.log("errors", errors2);
        throw new Error("Invalid config.");
      }
    };
    exports2.validateConfig = validateConfig;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@zkochan/table/2.0.1/e5f5f5f7ec033ed39dc10647d0dd4a17fac51c45e299dcfd752aa7c9b7265d37/node_modules/@zkochan/table/dist/src/makeStreamConfig.js
var require_makeStreamConfig2 = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@zkochan/table/2.0.1/e5f5f5f7ec033ed39dc10647d0dd4a17fac51c45e299dcfd752aa7c9b7265d37/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_utils15();
    var validateConfig_1 = require_validateConfig2();
    var makeColumnsConfig = (columnCount, columns = {}, columnDefault) => {
      return Array.from({ length: columnCount }).map((_, index2) => {
        return {
          alignment: "left",
          paddingLeft: 1,
          paddingRight: 1,
          truncate: Number.POSITIVE_INFINITY,
          verticalAlignment: "top",
          wrapWord: false,
          ...columnDefault,
          ...columns[index2]
        };
      });
    };
    var makeStreamConfig = (config2) => {
      (0, validateConfig_1.validateConfig)("streamConfig.json", config2);
      if (config2.columnDefault.width === void 0) {
        throw new Error("Must provide config.columnDefault.width when creating a stream.");
      }
      return {
        drawVerticalLine: () => {
          return true;
        },
        ...config2,
        border: (0, utils_1.makeBorderConfig)(config2.border),
        columns: makeColumnsConfig(config2.columnCount, config2.columns, config2.columnDefault)
      };
    };
    exports2.makeStreamConfig = makeStreamConfig;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@zkochan/table/2.0.1/e5f5f5f7ec033ed39dc10647d0dd4a17fac51c45e299dcfd752aa7c9b7265d37/node_modules/@zkochan/table/dist/src/mapDataUsingRowHeights.js
var require_mapDataUsingRowHeights2 = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@zkochan/table/2.0.1/e5f5f5f7ec033ed39dc10647d0dd4a17fac51c45e299dcfd752aa7c9b7265d37/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_utils15();
    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, config2) => {
      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 = config2.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, config2.columns[cellIndex].width, config2.columns[cellIndex].wrapWord);
          const paddedCellLines = (0, exports2.padCellVertically)(cellLines, outputRowHeight, config2.columns[cellIndex].verticalAlignment);
          paddedCellLines.forEach((cellLine, cellLineIndex) => {
            outputRow[cellLineIndex][cellIndex] = cellLine;
          });
        });
        return outputRow;
      });
      return (0, utils_1.flatten)(mappedRows);
    };
    exports2.mapDataUsingRowHeights = mapDataUsingRowHeights;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@zkochan/table/2.0.1/e5f5f5f7ec033ed39dc10647d0dd4a17fac51c45e299dcfd752aa7c9b7265d37/node_modules/@zkochan/table/dist/src/padTableData.js
var require_padTableData2 = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@zkochan/table/2.0.1/e5f5f5f7ec033ed39dc10647d0dd4a17fac51c45e299dcfd752aa7c9b7265d37/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, config2) => {
      return rows.map((cells, rowIndex) => {
        return cells.map((cell, cellIndex) => {
          const containingRange = config2.spanningCellManager?.getContainingRange({
            col: cellIndex,
            row: rowIndex
          }, { mapped: true });
          if (containingRange) {
            return cell;
          }
          const { paddingLeft, paddingRight } = config2.columns[cellIndex];
          return (0, exports2.padString)(cell, paddingLeft, paddingRight);
        });
      });
    };
    exports2.padTableData = padTableData;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@zkochan/table/2.0.1/e5f5f5f7ec033ed39dc10647d0dd4a17fac51c45e299dcfd752aa7c9b7265d37/node_modules/@zkochan/table/dist/src/stringifyTableData.js
var require_stringifyTableData2 = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@zkochan/table/2.0.1/e5f5f5f7ec033ed39dc10647d0dd4a17fac51c45e299dcfd752aa7c9b7265d37/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_utils15();
    var stringifyTableData = (rows) => {
      return rows.map((cells) => {
        return cells.map((cell) => {
          return (0, utils_1.normalizeString)(String(cell));
        });
      });
    };
    exports2.stringifyTableData = stringifyTableData;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@zkochan/table/2.0.1/e5f5f5f7ec033ed39dc10647d0dd4a17fac51c45e299dcfd752aa7c9b7265d37/node_modules/@zkochan/table/dist/src/truncateTableData.js
var require_truncateTableData2 = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@zkochan/table/2.0.1/e5f5f5f7ec033ed39dc10647d0dd4a17fac51c45e299dcfd752aa7c9b7265d37/node_modules/@zkochan/table/dist/src/truncateTableData.js"(exports2) {
    "use strict";
    var __importDefault2 = exports2 && exports2.__importDefault || function(mod2) {
      return mod2 && mod2.__esModule ? mod2 : { "default": mod2 };
    };
    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;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@zkochan/table/2.0.1/e5f5f5f7ec033ed39dc10647d0dd4a17fac51c45e299dcfd752aa7c9b7265d37/node_modules/@zkochan/table/dist/src/createStream.js
var require_createStream2 = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@zkochan/table/2.0.1/e5f5f5f7ec033ed39dc10647d0dd4a17fac51c45e299dcfd752aa7c9b7265d37/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_utils15();
    var prepareData = (data, config2) => {
      let rows = (0, stringifyTableData_1.stringifyTableData)(data);
      rows = (0, truncateTableData_1.truncateTableData)(rows, (0, utils_1.extractTruncates)(config2));
      const rowHeights = (0, calculateRowHeights_1.calculateRowHeights)(rows, config2);
      rows = (0, mapDataUsingRowHeights_1.mapDataUsingRowHeights)(rows, rowHeights, config2);
      rows = (0, alignTableData_1.alignTableData)(rows, config2);
      rows = (0, padTableData_1.padTableData)(rows, config2);
      return rows;
    };
    var create = (row, columnWidths, config2) => {
      const rows = prepareData([row], config2);
      const body = rows.map((literalRow) => {
        return (0, drawRow_1.drawRow)(literalRow, config2);
      }).join("");
      let output;
      output = "";
      output += (0, drawBorder_1.drawBorderTop)(columnWidths, config2);
      output += body;
      output += (0, drawBorder_1.drawBorderBottom)(columnWidths, config2);
      output = output.trimEnd();
      process.stdout.write(output);
    };
    var append = (row, columnWidths, config2) => {
      const rows = prepareData([row], config2);
      const body = rows.map((literalRow) => {
        return (0, drawRow_1.drawRow)(literalRow, config2);
      }).join("");
      let output = "";
      const bottom = (0, drawBorder_1.drawBorderBottom)(columnWidths, config2);
      if (bottom !== "\n") {
        output = "\r\x1B[K";
      }
      output += (0, drawBorder_1.drawBorderJoin)(columnWidths, config2);
      output += body;
      output += bottom;
      output = output.trimEnd();
      process.stdout.write(output);
    };
    var createStream = (userConfig) => {
      const config2 = (0, makeStreamConfig_1.makeStreamConfig)(userConfig);
      const columnWidths = Object.values(config2.columns).map((column) => {
        return column.width + column.paddingLeft + column.paddingRight;
      });
      let empty4 = true;
      return {
        write: (row) => {
          if (row.length !== config2.columnCount) {
            throw new Error("Row cell count does not match the config.columnCount.");
          }
          if (empty4) {
            empty4 = false;
            create(row, columnWidths, config2);
          } else {
            append(row, columnWidths, config2);
          }
        }
      };
    };
    exports2.createStream = createStream;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@zkochan/table/2.0.1/e5f5f5f7ec033ed39dc10647d0dd4a17fac51c45e299dcfd752aa7c9b7265d37/node_modules/@zkochan/table/dist/src/calculateOutputColumnWidths.js
var require_calculateOutputColumnWidths2 = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@zkochan/table/2.0.1/e5f5f5f7ec033ed39dc10647d0dd4a17fac51c45e299dcfd752aa7c9b7265d37/node_modules/@zkochan/table/dist/src/calculateOutputColumnWidths.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.calculateOutputColumnWidths = void 0;
    var calculateOutputColumnWidths = (config2) => {
      return config2.columns.map((col) => {
        return col.paddingLeft + col.width + col.paddingRight;
      });
    };
    exports2.calculateOutputColumnWidths = calculateOutputColumnWidths;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@zkochan/table/2.0.1/e5f5f5f7ec033ed39dc10647d0dd4a17fac51c45e299dcfd752aa7c9b7265d37/node_modules/@zkochan/table/dist/src/drawTable.js
var require_drawTable2 = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@zkochan/table/2.0.1/e5f5f5f7ec033ed39dc10647d0dd4a17fac51c45e299dcfd752aa7c9b7265d37/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_utils15();
    var drawTable = (rows, outputColumnWidths, rowHeights, config2) => {
      const { drawHorizontalLine, singleLine } = config2;
      const contents = (0, utils_1.groupBySizes)(rows, rowHeights).map((group, groupIndex) => {
        return group.map((row) => {
          return (0, drawRow_1.drawRow)(row, {
            ...config2,
            rowIndex: groupIndex
          });
        }).join("");
      });
      return (0, drawContent_1.drawContent)({
        contents,
        drawSeparator: (index2, size) => {
          if (index2 === 0 || index2 === size) {
            return drawHorizontalLine(index2, size);
          }
          return !singleLine && drawHorizontalLine(index2, size);
        },
        elementType: "row",
        rowIndex: -1,
        separatorGetter: (0, drawBorder_1.createTableBorderGetter)(outputColumnWidths, {
          ...config2,
          rowCount: contents.length
        }),
        spanningCellManager: config2.spanningCellManager
      });
    };
    exports2.drawTable = drawTable;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@zkochan/table/2.0.1/e5f5f5f7ec033ed39dc10647d0dd4a17fac51c45e299dcfd752aa7c9b7265d37/node_modules/@zkochan/table/dist/src/injectHeaderConfig.js
var require_injectHeaderConfig2 = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@zkochan/table/2.0.1/e5f5f5f7ec033ed39dc10647d0dd4a17fac51c45e299dcfd752aa7c9b7265d37/node_modules/@zkochan/table/dist/src/injectHeaderConfig.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.injectHeaderConfig = void 0;
    var injectHeaderConfig = (rows, config2) => {
      let spanningCellConfig = config2.spanningCells ?? [];
      const headerConfig = config2.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;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@zkochan/table/2.0.1/e5f5f5f7ec033ed39dc10647d0dd4a17fac51c45e299dcfd752aa7c9b7265d37/node_modules/@zkochan/table/dist/src/calculateMaximumColumnWidths.js
var require_calculateMaximumColumnWidths2 = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@zkochan/table/2.0.1/e5f5f5f7ec033ed39dc10647d0dd4a17fac51c45e299dcfd752aa7c9b7265d37/node_modules/@zkochan/table/dist/src/calculateMaximumColumnWidths.js"(exports2) {
    "use strict";
    var __importDefault2 = exports2 && exports2.__importDefault || function(mod2) {
      return mod2 && mod2.__esModule ? mod2 : { "default": mod2 };
    };
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.calculateMaximumColumnWidths = exports2.calculateMaximumCellWidth = void 0;
    var string_width_1 = __importDefault2(require_string_width());
    var utils_1 = require_utils15();
    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;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@zkochan/table/2.0.1/e5f5f5f7ec033ed39dc10647d0dd4a17fac51c45e299dcfd752aa7c9b7265d37/node_modules/@zkochan/table/dist/src/alignSpanningCell.js
var require_alignSpanningCell2 = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@zkochan/table/2.0.1/e5f5f5f7ec033ed39dc10647d0dd4a17fac51c45e299dcfd752aa7c9b7265d37/node_modules/@zkochan/table/dist/src/alignSpanningCell.js"(exports2) {
    "use strict";
    var __importDefault2 = exports2 && exports2.__importDefault || function(mod2) {
      return mod2 && mod2.__esModule ? mod2 : { "default": mod2 };
    };
    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_utils15();
    var wrapCell_1 = require_wrapCell2();
    var wrapRangeContent = (rangeConfig, rangeWidth, context) => {
      const { topLeft, paddingRight, paddingLeft, truncate, wrapWord: wrapWord2, 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, wrapWord2).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;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@zkochan/table/2.0.1/e5f5f5f7ec033ed39dc10647d0dd4a17fac51c45e299dcfd752aa7c9b7265d37/node_modules/@zkochan/table/dist/src/calculateSpanningCellWidth.js
var require_calculateSpanningCellWidth2 = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@zkochan/table/2.0.1/e5f5f5f7ec033ed39dc10647d0dd4a17fac51c45e299dcfd752aa7c9b7265d37/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_utils15();
    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;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@zkochan/table/2.0.1/e5f5f5f7ec033ed39dc10647d0dd4a17fac51c45e299dcfd752aa7c9b7265d37/node_modules/@zkochan/table/dist/src/makeRangeConfig.js
var require_makeRangeConfig2 = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@zkochan/table/2.0.1/e5f5f5f7ec033ed39dc10647d0dd4a17fac51c45e299dcfd752aa7c9b7265d37/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_utils15();
    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;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@zkochan/table/2.0.1/e5f5f5f7ec033ed39dc10647d0dd4a17fac51c45e299dcfd752aa7c9b7265d37/node_modules/@zkochan/table/dist/src/spanningCellManager.js
var require_spanningCellManager2 = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@zkochan/table/2.0.1/e5f5f5f7ec033ed39dc10647d0dd4a17fac51c45e299dcfd752aa7c9b7265d37/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_utils15();
    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((index2) => {
          return !drawHorizontalLine?.(index2, 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((config2) => {
        return (0, makeRangeConfig_1.makeRangeConfig)(config2, 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;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@zkochan/table/2.0.1/e5f5f5f7ec033ed39dc10647d0dd4a17fac51c45e299dcfd752aa7c9b7265d37/node_modules/@zkochan/table/dist/src/validateSpanningCellConfig.js
var require_validateSpanningCellConfig2 = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@zkochan/table/2.0.1/e5f5f5f7ec033ed39dc10647d0dd4a17fac51c45e299dcfd752aa7c9b7265d37/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_utils15();
    var inRange2 = (start, end, value) => {
      return start <= value && value <= end;
    };
    var validateSpanningCellConfig = (rows, configs) => {
      const [nRow, nCol] = [rows.length, rows[0].length];
      configs.forEach((config2, configIndex) => {
        const { colSpan, rowSpan } = config2;
        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 (!inRange2(0, nCol - 1, topLeft.col) || !inRange2(0, nRow - 1, topLeft.row) || !inRange2(0, nCol - 1, bottomRight.col) || !inRange2(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;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@zkochan/table/2.0.1/e5f5f5f7ec033ed39dc10647d0dd4a17fac51c45e299dcfd752aa7c9b7265d37/node_modules/@zkochan/table/dist/src/makeTableConfig.js
var require_makeTableConfig2 = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@zkochan/table/2.0.1/e5f5f5f7ec033ed39dc10647d0dd4a17fac51c45e299dcfd752aa7c9b7265d37/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_utils15();
    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, config2 = {}, injectedSpanningCellConfig) => {
      (0, validateConfig_1.validateConfig)("config.json", config2);
      (0, validateSpanningCellConfig_1.validateSpanningCellConfig)(rows, config2.spanningCells ?? []);
      const spanningCellConfigs = injectedSpanningCellConfig ?? config2.spanningCells ?? [];
      const columnsConfig = makeColumnsConfig(rows, config2.columns, config2.columnDefault, spanningCellConfigs);
      const drawVerticalLine = config2.drawVerticalLine ?? (() => {
        return true;
      });
      const drawHorizontalLine = config2.drawHorizontalLine ?? (() => {
        return true;
      });
      return {
        ...config2,
        border: (0, utils_1.makeBorderConfig)(config2.border),
        columns: columnsConfig,
        drawHorizontalLine,
        drawVerticalLine,
        singleLine: config2.singleLine ?? false,
        spanningCellManager: (0, spanningCellManager_1.createSpanningCellManager)({
          columnsConfig,
          drawHorizontalLine,
          drawVerticalLine,
          rows,
          spanningCellConfigs
        })
      };
    };
    exports2.makeTableConfig = makeTableConfig;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@zkochan/table/2.0.1/e5f5f5f7ec033ed39dc10647d0dd4a17fac51c45e299dcfd752aa7c9b7265d37/node_modules/@zkochan/table/dist/src/validateTableData.js
var require_validateTableData2 = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@zkochan/table/2.0.1/e5f5f5f7ec033ed39dc10647d0dd4a17fac51c45e299dcfd752aa7c9b7265d37/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_utils15();
    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;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@zkochan/table/2.0.1/e5f5f5f7ec033ed39dc10647d0dd4a17fac51c45e299dcfd752aa7c9b7265d37/node_modules/@zkochan/table/dist/src/table.js
var require_table2 = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@zkochan/table/2.0.1/e5f5f5f7ec033ed39dc10647d0dd4a17fac51c45e299dcfd752aa7c9b7265d37/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_utils15();
    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 config2 = (0, makeTableConfig_1.makeTableConfig)(injectedRows, userConfig, injectedSpanningCellConfig);
      rows = (0, truncateTableData_1.truncateTableData)(injectedRows, (0, utils_1.extractTruncates)(config2));
      const rowHeights = (0, calculateRowHeights_1.calculateRowHeights)(rows, config2);
      config2.spanningCellManager.setRowHeights(rowHeights);
      rows = (0, mapDataUsingRowHeights_1.mapDataUsingRowHeights)(rows, rowHeights, config2);
      rows = (0, alignTableData_1.alignTableData)(rows, config2);
      rows = (0, padTableData_1.padTableData)(rows, config2);
      const outputColumnWidths = (0, calculateOutputColumnWidths_1.calculateOutputColumnWidths)(config2);
      return (0, drawTable_1.drawTable)(rows, outputColumnWidths, rowHeights, config2);
    };
    exports2.table = table9;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@zkochan/table/2.0.1/e5f5f5f7ec033ed39dc10647d0dd4a17fac51c45e299dcfd752aa7c9b7265d37/node_modules/@zkochan/table/dist/src/types/api.js
var require_api3 = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@zkochan/table/2.0.1/e5f5f5f7ec033ed39dc10647d0dd4a17fac51c45e299dcfd752aa7c9b7265d37/node_modules/@zkochan/table/dist/src/types/api.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, "__esModule", { value: true });
  }
});

// ../../../../../setup-pnpm/store/v11/links/@zkochan/table/2.0.1/e5f5f5f7ec033ed39dc10647d0dd4a17fac51c45e299dcfd752aa7c9b7265d37/node_modules/@zkochan/table/dist/src/index.js
var require_src2 = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@zkochan/table/2.0.1/e5f5f5f7ec033ed39dc10647d0dd4a17fac51c45e299dcfd752aa7c9b7265d37/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);
  }
});

// ../../../../../setup-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({
  "../../../../../setup-pnpm/store/v11/links/@/ansi-regex/6.2.2/e87168740025744f72ca0c05c5e075a510c13de11cd9846cb8287b9a1caaed47/node_modules/ansi-regex/index.js"() {
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/strip-ansi/7.2.0/43698a1024e039b67ddc9e75eedc0106776977b92887e9f796855f189838084d/node_modules/strip-ansi/index.js
function stripAnsi(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({
  "../../../../../setup-pnpm/store/v11/links/@/strip-ansi/7.2.0/43698a1024e039b67ddc9e75eedc0106776977b92887e9f796855f189838084d/node_modules/strip-ansi/index.js"() {
    init_ansi_regex();
    regex = ansiRegex();
  }
});

// ../../../../../setup-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({
  "../../../../../setup-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];
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/get-east-asian-width/1.6.0/37e9246e73ebcb885c1face4cc4ea774962729e714e450dc09e40f0064a3529e/node_modules/get-east-asian-width/utilities.js
var isInRange;
var init_utilities4 = __esm({
  "../../../../../setup-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 i4 = mid * 2;
        if (codePoint < ranges[i4]) {
          high = mid - 1;
        } else if (codePoint > ranges[i4 + 1]) {
          low = mid + 1;
        } else {
          return true;
        }
      }
      return false;
    };
  }
});

// ../../../../../setup-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 index2 = 0; index2 < ranges.length; index2 += 2) {
    const start = ranges[index2];
    const end = ranges[index2 + 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, isFullWidth2, isWide;
var init_lookup = __esm({
  "../../../../../setup-pnpm/store/v11/links/@/get-east-asian-width/1.6.0/37e9246e73ebcb885c1face4cc4ea774962729e714e450dc09e40f0064a3529e/node_modules/get-east-asian-width/lookup.js"() {
    init_lookup_data();
    init_utilities4();
    commonCjkCodePoint = 19968;
    [wideFastPathStart, wideFastPathEnd] = /* @__PURE__ */ findWideFastPathRange(wideRanges);
    isAmbiguous = (codePoint) => {
      if (codePoint < ambiguousMinimalCodePoint || codePoint > ambiguousMaximumCodePoint) {
        return false;
      }
      return isInRange(ambiguousRanges, codePoint);
    };
    isFullWidth2 = (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);
    };
  }
});

// ../../../../../setup-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 (isFullWidth2(codePoint) || isWide(codePoint) || ambiguousAsWide && isAmbiguous(codePoint)) {
    return 2;
  }
  return 1;
}
var init_get_east_asian_width = __esm({
  "../../../../../setup-pnpm/store/v11/links/@/get-east-asian-width/1.6.0/37e9246e73ebcb885c1face4cc4ea774962729e714e450dc09e40f0064a3529e/node_modules/get-east-asian-width/index.js"() {
    init_lookup();
    init_lookup();
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/string-width/8.2.2/e09316091c64e1901513e1c1275adb2516eae4fe1da6ba06d0ba7978bcacf09d/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 index2 = 0; index2 < codePoints.length; index2++) {
    const codePoint = codePoints[index2];
    if (!isHangulJamo(codePoint)) {
      if (width === 0) {
        return void 0;
      }
      for (let remaining = index2; remaining < codePoints.length; remaining++) {
        width += eastAsianWidth(codePoints[remaining], eastAsianWidthOptions);
      }
      return width;
    }
    if (isHangulLeadingJamo(codePoint) && isHangulVowelJamo(codePoints[index2 + 1])) {
      width += 2;
      index2 += isHangulTrailingJamo(codePoints[index2 + 2]) ? 2 : 1;
      continue;
    }
    width += eastAsianWidth(codePoint, eastAsianWidthOptions);
  }
  return width;
}
function trailingWidth(visibleSegment, eastAsianWidthOptions) {
  let extra = 0;
  let first = true;
  for (const character of visibleSegment) {
    if (first) {
      first = false;
      continue;
    }
    if (spacingMarkRegex.test(character) || 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 = stripAnsi(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 += trailingWidth(visibleSegment, eastAsianWidthOptions);
  }
  return width;
}
var segmenter, zeroWidthClusterRegex, leadingNonPrintingRegex, spacingMarkRegex, rgiEmojiRegex, unqualifiedKeycapRegex, extendedPictographicRegex;
var init_string_width = __esm({
  "../../../../../setup-pnpm/store/v11/links/@/string-width/8.2.2/e09316091c64e1901513e1c1275adb2516eae4fe1da6ba06d0ba7978bcacf09d/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{Nonspacing_Mark}|\p{Enclosing_Mark}|\p{Surrogate})+$/v;
    leadingNonPrintingRegex = /^[\p{Default_Ignorable_Code_Point}\p{Control}\p{Format}\p{Nonspacing_Mark}\p{Enclosing_Mark}\p{Surrogate}]+/v;
    spacingMarkRegex = /\p{Spacing_Mark}/v;
    rgiEmojiRegex = /^\p{RGI_Emoji}$/v;
    unqualifiedKeycapRegex = /^[\d#*]\u20E3$/;
    extendedPictographicRegex = /\p{Extended_Pictographic}/gu;
  }
});

// ../installing/commands/lib/update/getUpdateChoices.js
function getUpdateChoices(outdatedPkgsOfProjects, workspacesEnabled) {
  if (isEmpty_default(outdatedPkgsOfProjects)) {
    return [];
  }
  const pkgUniqueKey = (outdatedPkg) => {
    return JSON.stringify([outdatedPkg.packageName, outdatedPkg.latestManifest?.version, outdatedPkg.current, outdatedPkg.dependencyType]);
  };
  const deduped = [];
  const workspacesByKey = /* @__PURE__ */ new Map();
  for (const outdatedPkg of outdatedPkgsOfProjects) {
    const key = pkgUniqueKey(outdatedPkg);
    let workspaces = workspacesByKey.get(key);
    if (workspaces == null) {
      workspaces = /* @__PURE__ */ new Set();
      workspacesByKey.set(key, workspaces);
      deduped.push(outdatedPkg);
    }
    if (outdatedPkg.workspace) {
      workspaces.add(outdatedPkg.workspace);
    }
  }
  const groupPkgsByType = groupBy_default((outdatedPkg) => outdatedPkg.dependencyType ?? outdatedPkg.belongsTo, deduped);
  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, workspacesByKey.get(pkgUniqueKey(choice))));
      }
    }
    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, i4) => {
      if (i4 === 0) {
        return {
          name: renderedTable[i4],
          message: renderedTable[i4],
          value: "",
          short: "",
          disabled: true,
          hint: ""
        };
      }
      return {
        name: outdatedPkg.name,
        message: renderedTable[i4],
        value: outdatedPkg.name,
        short: sanitizeCell(outdatedPkg.name)
      };
    });
    finalChoices.push({
      name: `[${depGroup}]`,
      choices,
      message: depGroup === "githubAction" ? "GitHub Actions" : depGroup
    });
  }
  return finalChoices;
}
function buildPkgChoice(outdatedPkg, workspacesEnabled, workspaces) {
  const sdiff = semverDiff(outdatedPkg.wanted, outdatedPkg.latestManifest.version);
  const nextVersion = sdiff.change === null ? outdatedPkg.latestManifest.version : colorizeSemverDiff(sdiff);
  const label = outdatedPkg.packageName;
  const raw = [
    sanitizeCell(label),
    outdatedPkg.current ?? "",
    "\u276F",
    // Not sanitized: `colorizeSemverDiff` puts the highlighting escapes
    // in here deliberately.
    nextVersion
  ];
  if (workspacesEnabled) {
    raw.push(Array.from(workspaces ?? []).map(sanitizeCell).join(", "));
  }
  raw.push(sanitizeCell(getPkgUrl(outdatedPkg)));
  return {
    raw,
    name: outdatedPkg.packageName
  };
}
function sanitizeCell(text) {
  return text.replace(/[\u0000-\u001F\u007F-\u009F\u00AD\u0600-\u0605\u061C\u06DD\u070F\u0890\u0891\u08E2\u180E\u200B-\u200F\u202A-\u202E\u2060-\u2064\u2066-\u206F\uFEFF\uFFF9-\uFFFB\u{110BD}\u{110CD}\u{13430}-\u{1343F}\u{1BCA0}-\u{1BCA3}\u{1D173}-\u{1D17A}\u{E0001}\u{E0020}-\u{E007F}]/gu, "");
}
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((max4, row) => {
    if (row[columnIndex] == null)
      return max4;
    return Math.max(max4, stringWidth(row[columnIndex]));
  }, minWidth);
}
var import_table2;
var init_getUpdateChoices = __esm({
  "../installing/commands/lib/update/getUpdateChoices.js"() {
    "use strict";
    init_lib141();
    init_lib142();
    import_table2 = __toESM(require_src2(), 1);
    init_es();
    init_string_width();
  }
});

// ../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",
    "node-experimental-package-map",
    "node-package-map-type",
    "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(),
    changeset: Boolean,
    "include-github-actions": Boolean,
    interactive: Boolean,
    latest: Boolean,
    recursive: Boolean,
    workspace: Boolean
  };
}
function help13() {
  return renderHelp({
    aliases: ["up", "upgrade"],
    description: 'Updates package dependencies to their latest version based on the specified range. GitHub Actions dependencies can be included with --include-github-actions. You can use "*" in a dependency name to update all dependencies 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"
          },
          {
            description: "Generate a changeset file declaring a patch bump for every workspace package whose production dependencies were changed by the update",
            name: "--changeset"
          },
          {
            description: "Also update GitHub Actions dependencies in workflow and action files",
            name: "--include-github-actions"
          },
          {
            description: "Don't update the ranges in package.json.",
            name: "--no-save"
          },
          OPTIONS.globalDir,
          ...UNIVERSAL_OPTIONS
        ]
      },
      FILTERING
    ],
    url: docsUrl("update"),
    usages: ["pnpm update [-g] [<pkg>...]"]
  });
}
async function handler13(opts3, params = [], commands2) {
  if (opts3.global) {
    if (!opts3.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({
      ...opts3,
      ...createGlobalPolicyCallbacks(opts3)
    }, params, commands2 ?? {});
  }
  const rebuildHandler = commands2?.rebuild;
  if (opts3.interactive) {
    return interactiveUpdate(params, opts3, rebuildHandler);
  }
  return update(params, opts3, rebuildHandler);
}
async function interactiveUpdate(input, opts3, rebuildHandler) {
  const include = makeIncludeDependenciesFromCLI(opts3.cliOptions);
  const projects = opts3.selectedProjectsGraph != null ? Object.values(opts3.selectedProjectsGraph).map((wsPkg) => wsPkg.package) : [
    {
      rootDir: opts3.dir,
      manifest: await readProjectManifestOnly2(opts3.dir, opts3)
    }
  ];
  const packageInput = input.filter((selector) => !isGitHubActionSelector(selector));
  const [outdatedPkgsOfProjects, outdatedActions] = await Promise.all([
    input.length === 0 || packageInput.length > 0 ? outdatedDepsOfProjects(projects, packageInput, {
      ...opts3,
      compatible: opts3.latest !== true,
      ignoreDependencies: opts3.updateConfig?.ignoreDependencies,
      include,
      retry: {
        factor: opts3.fetchRetryFactor,
        maxTimeout: opts3.fetchRetryMaxtimeout,
        minTimeout: opts3.fetchRetryMintimeout,
        retries: opts3.fetchRetries
      },
      timeout: opts3.fetchTimeout
    }) : projects.map(() => []),
    shouldUpdateGitHubActions(opts3, include) ? findOutdatedGitHubActions({
      compatible: opts3.latest !== true,
      dir: opts3.workspaceDir ?? opts3.lockfileDir ?? opts3.dir,
      match: input.length > 0 ? createMatcher(input.map(normalizeGitHubActionSelector)) : void 0,
      serverUrl: opts3.updateConfig?.githubActionsServer
    }) : []
  ]);
  const workspacesEnabled = !!opts3.workspaceDir;
  const choiceGroups = getUpdateChoices([
    ...unnest_default(outdatedPkgsOfProjects),
    ...outdatedActions.map((action) => ({
      alias: action.name,
      belongsTo: "devDependencies",
      current: action.current,
      dependencyType: "githubAction",
      latestManifest: { name: action.name, version: action.latest, homepage: action.homepage },
      packageName: action.name,
      wanted: action.wanted
    }))
  ], workspacesEnabled);
  if (choiceGroups.length === 0) {
    if (opts3.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 flatChoices = [];
  for (const group of choiceGroups) {
    flatChoices.push(new Separator(source_default.bold(`\u2500\u2500 ${group.message} \u2500\u2500`)));
    for (const choice of group.choices) {
      if (choice.disabled) {
        flatChoices.push(new Separator(`  ${choice.message ?? choice.name}`));
      } else {
        flatChoices.push({
          name: choice.message,
          value: choice.value,
          // `name` is the rendered table row (label + versions + workspace + url)
          // that lays out a single choice during selection. After submission
          // @inquirer/prompts comma-joins each choice's `short`, which without
          // this defaults to `name` and dumps the whole table back to stdout.
          short: choice.short
        });
      }
    }
  }
  const message = `Choose which dependencies to update (Press ${source_default.cyan("<space>")} to select, ${source_default.cyan("<a>")} to toggle all, ${source_default.cyan("<i>")} to invert selection)

Enter to start updating. Ctrl-c to cancel.`;
  let updatePkgNames;
  try {
    updatePkgNames = await dist_default4({
      choices: flatChoices,
      pageSize: interactivePromptPageSize(),
      message,
      required: true,
      validate: (values) => {
        if (values.length === 0) {
          return "You must choose at least one dependency.";
        }
        return true;
      },
      theme: {
        icon: { checked: "\u25CF", unchecked: "\u25CB", cursor: "\u276F" },
        style: {
          highlight: (text) => text
        },
        keybindings: ["vim"]
      }
    });
  } catch (err2) {
    if (err2 instanceof Error && err2.name === "ExitPromptError") {
      globalInfo("Update canceled");
      process.exit(0);
    }
    throw err2;
  }
  return update(updatePkgNames, opts3, rebuildHandler);
}
async function update(dependencies, opts3, rebuildHandler) {
  const includeDirect = makeIncludeDependenciesFromCLI(opts3.cliOptions);
  const updateActions = shouldUpdateGitHubActions(opts3, includeDirect);
  if (opts3.latest) {
    const dependenciesWithTags = dependencies.filter((name) => (!updateActions || !isGitHubActionSelector(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 packageDependencies = updateActions ? dependencies.filter((dependency) => !isGitHubActionSelector(dependency)) : dependencies;
  const include = {
    dependencies: true,
    devDependencies: true,
    optionalDependencies: true
  };
  const depth = opts3.depth ?? Infinity;
  let updateMatching;
  if (opts3.packageVulnerabilityAudit != null) {
    updateMatching = createVulnerabilityUpdateMatching(opts3.packageVulnerabilityAudit);
  } else if (packageDependencies.length > 0 && packageDependencies.every((dep) => !dep.substring(1).includes("@")) && depth > 0 && !opts3.latest) {
    updateMatching = createMatcher(packageDependencies);
  }
  const generateChangeset = opts3.changeset ?? opts3.updateConfig?.changeset ?? false;
  const changesetContext = generateChangeset ? await captureUpdateChangesetContext(opts3) : void 0;
  if (dependencies.length === 0 || packageDependencies.length > 0) {
    await installDeps({
      ...opts3,
      rebuildHandler,
      allowNew: false,
      depth,
      ignoreCurrentSpecifiers: false,
      include,
      includeDirect,
      update: true,
      updateToLatest: opts3.latest,
      updateMatching,
      updatePackageManifest: opts3.save !== false,
      resolutionMode: opts3.save === false ? "highest" : opts3.resolutionMode,
      // `--dry-run` is an `install`-only preview; never let a config-level
      // `dry-run` turn `update` into a no-op check.
      dryRun: false
    }, packageDependencies);
  }
  if (updateActions) {
    await updateGitHubActions({
      dir: opts3.workspaceDir ?? opts3.lockfileDir ?? opts3.dir,
      latest: opts3.latest,
      match: dependencies.length > 0 ? createMatcher(dependencies.map(normalizeGitHubActionSelector)) : void 0,
      serverUrl: opts3.updateConfig?.githubActionsServer
    });
  }
  if (changesetContext != null) {
    await generateUpdateChangeset(changesetContext);
  }
}
function shouldUpdateGitHubActions(opts3, include) {
  return include.devDependencies && opts3.save !== false && !opts3.lockfileOnly && shouldCheckGitHubActions(opts3);
}
function makeIncludeDependenciesFromCLI(opts3) {
  return {
    dependencies: opts3.production === true || opts3.dev !== true && opts3.optional !== true,
    devDependencies: opts3.dev === true || opts3.production !== true && opts3.optional !== true,
    optionalDependencies: opts3.optional === true || opts3.production !== true && opts3.dev !== true
  };
}
var shorthands4, commandNames13, completion2;
var init_update2 = __esm({
  "../installing/commands/lib/update/index.js"() {
    "use strict";
    init_dist14();
    init_lib94();
    init_lib41();
    init_lib27();
    init_lib64();
    init_lib139();
    init_lib140();
    init_lib2();
    init_lib131();
    init_lib3();
    init_source();
    init_es();
    init_lib66();
    init_installDeps();
    init_recursive2();
    init_resolutionPolicyManifest();
    init_generateUpdateChangeset();
    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_lib143 = __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 path165 from "node:path";
async function getAutomaticallyIgnoredBuilds(opts3) {
  const modulesDir = getModulesDir(opts3);
  const modulesManifest = await readModulesManifest(modulesDir);
  let automaticallyIgnoredBuilds;
  if (modulesManifest?.ignoredBuilds) {
    const ignoredPkgNames = /* @__PURE__ */ new Set();
    for (const depPath of modulesManifest.ignoredBuilds) {
      ignoredPkgNames.add(allowBuildKeyFromIgnoredBuild(depPath));
    }
    automaticallyIgnoredBuilds = Array.from(ignoredPkgNames);
  } else {
    automaticallyIgnoredBuilds = null;
  }
  return {
    automaticallyIgnoredBuilds,
    modulesDir,
    modulesManifest
  };
}
function getModulesDir(opts3) {
  return opts3.modulesDir ?? path165.join(opts3.lockfileDir ?? opts3.dir, "node_modules");
}
var init_getAutomaticallyIgnoredBuilds = __esm({
  "../building/commands/lib/policy/getAutomaticallyIgnoredBuilds.js"() {
    "use strict";
    init_lib69();
    init_lib77();
  }
});

// ../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(opts3, params = [], commands2) {
  if (opts3.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 (opts3.all && params.length) {
    throw new PnpmError("APPROVE_BUILDS_ALL_WITH_ARGS", "Cannot use --all with positional arguments");
  }
  const { automaticallyIgnoredBuilds, modulesDir, modulesManifest } = await getAutomaticallyIgnoredBuilds(opts3);
  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 (opts3.all) {
    buildPackages = sortUniqueStrings([...automaticallyIgnoredBuilds]);
  } else {
    try {
      const buildPackagesValues = await dist_default4({
        choices: sortUniqueStrings([...automaticallyIgnoredBuilds]).map((name) => ({
          name,
          value: name
        })),
        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)`,
        required: false,
        theme: {
          icon: { checked: "\u25CF", unchecked: "\u25CB", cursor: "\u276F" },
          style: {
            highlight: source_default.bgBlack.whiteBright
          },
          keybindings: ["vim"]
        }
      });
      buildPackages = buildPackagesValues;
    } catch (err2) {
      if (err2 instanceof Error && err2.name === "ExitPromptError") {
        process.exit(0);
      }
      throw err2;
    }
  }
  const allowBuilds = { ...opts3.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 (!opts3.all && !params.length) {
    if (buildPackages.length) {
      let isConfirmed;
      try {
        isConfirmed = await dist_default5({
          message: `The next packages will now be built: ${buildPackages.join(", ")}.
Do you approve?`,
          default: false
        });
      } catch (err2) {
        if (err2 instanceof Error && err2.name === "ExitPromptError") {
          process.exit(0);
        }
        throw err2;
      }
      if (!isConfirmed) {
        return;
      }
    } else {
      globalInfo("All packages were added to allowBuilds with value false.");
    }
  }
  await writeSettings({
    ...opts3,
    workspaceDir: opts3.settingsDir ?? opts3.workspaceDir ?? opts3.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 = allowBuildKeyFromIgnoredBuild(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 (opts3.enableGlobalVirtualStore) {
      await install_exports.handler({
        ...opts3,
        allowBuilds,
        frozenLockfile: true,
        optimisticRepeatInstall: false
      }, [], commands2);
      return;
    }
    return rebuild_exports.handler({
      ...opts3,
      allowBuilds
    }, buildPackages);
  }
}
function sortUniqueStrings(array) {
  return Array.from(new Set(array)).sort(import_util21.lexCompare);
}
var import_util21, commandNames14, recursiveByDefault4;
var init_approveBuilds = __esm({
  "../building/commands/lib/policy/approveBuilds.js"() {
    "use strict";
    init_dist14();
    init_lib69();
    init_lib102();
    init_lib2();
    init_lib143();
    init_lib77();
    init_lib3();
    import_util21 = __toESM(require_dist4(), 1);
    init_source();
    init_lib66();
    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(opts3) {
  const disallowedBuilds = opts3.allowBuilds ? Object.entries(opts3.allowBuilds).filter(([, value]) => value === false).map(([pkg]) => pkg) : [];
  let { automaticallyIgnoredBuilds } = await getAutomaticallyIgnoredBuilds(opts3);
  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_lib66();
    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_lib144 = __esm({
  "../building/commands/lib/index.js"() {
    "use strict";
    init_build();
    init_policy();
  }
});

// ../cache/api/lib/cacheList.js
import fs94 from "node:fs";
async function cacheListRegistries(opts3) {
  return fs94.readdirSync(opts3.cacheDir).sort().join("\n");
}
async function cacheList(opts3, filter14) {
  const metaFiles = await findMetadataFiles(opts3, filter14);
  return metaFiles.sort().join("\n");
}
async function findMetadataFiles(opts3, filter14) {
  const prefix = opts3.registry ? `${(0, import_encode_registry2.default)(opts3.registry)}` : "*";
  const patterns = filter14.length ? filter14.map((filter15) => `${prefix}/${filter15}.jsonl`) : [`${prefix}/**`];
  const metaFiles = await glob(patterns, {
    cwd: opts3.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_dist2();
  }
});

// ../cache/api/lib/cacheDelete.js
import fs95 from "node:fs";
import path166 from "node:path";
async function cacheDelete(opts3, filter14) {
  const metaFiles = await findMetadataFiles(opts3, filter14);
  for (const metaFile of metaFiles) {
    fs95.unlinkSync(path166.join(opts3.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 fs96 from "node:fs";
import path167 from "node:path";
async function cacheView(opts3, packageName) {
  const prefix = opts3.registry ? `${(0, import_encode_registry3.default)(opts3.registry)}` : "*";
  const metaFilePaths = (await glob(`${prefix}/${packageName}.jsonl`, {
    cwd: opts3.cacheDir,
    expandDirectories: false
  })).sort();
  const metaFilesByPath = {};
  const storeIndex = new StoreIndex(opts3.storeDir);
  try {
    for (const filePath of metaFilePaths) {
      let metaObject;
      const fullPath = path167.join(opts3.cacheDir, filePath);
      let mtime;
      try {
        const raw = fs96.readFileSync(fullPath, "utf8");
        mtime = fs96.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 (path167.dirname(registryName) !== ".") {
        registryName = path167.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_lib30();
    import_encode_registry3 = __toESM(require_encode_registry(), 1);
    init_dist2();
  }
});

// ../cache/api/lib/index.js
var init_lib145 = __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 path168 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(opts3, params) {
  const cacheType = opts3.resolutionMode === "time-based" && !opts3.registrySupportsTimeField ? FULL_FILTERED_META_DIR : ABBREVIATED_META_DIR;
  const cacheDir = path168.join(opts3.cacheDir, cacheType);
  switch (params[0]) {
    case "list-registries":
      return cacheListRegistries({
        ...opts3,
        cacheDir
      });
    case "list":
      return cacheList({
        ...opts3,
        cacheDir,
        registry: opts3.cliOptions["registry"]
      }, params.slice(1));
    case "delete": {
      const deleted = await Promise.all([ABBREVIATED_META_DIR, FULL_META_DIR, FULL_FILTERED_META_DIR].map((metaDir) => cacheDelete({
        ...opts3,
        cacheDir: path168.join(opts3.cacheDir, metaDir),
        registry: opts3.cliOptions["registry"]
      }, params.slice(1))));
      return [...new Set(deleted.flatMap((result2) => result2.split("\n")).filter(Boolean))].sort().join("\n");
    }
    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: opts3.storeDir,
        pnpmHomeDir: opts3.pnpmHomeDir
      });
      return cacheView({
        ...opts3,
        cacheDir,
        storeDir,
        registry: opts3.cliOptions["registry"]
      }, params[1]);
    }
    default:
      return help16();
  }
}
var rcOptionsTypes16, commandNames16;
var init_cache_cmd = __esm({
  "../cache/commands/lib/cache.cmd.js"() {
    "use strict";
    init_lib145();
    init_lib41();
    init_lib64();
    init_lib();
    init_lib2();
    init_lib91();
    init_es();
    init_lib66();
    rcOptionsTypes16 = cliOptionsTypes15;
    commandNames16 = ["cache"];
  }
});

// ../cache/commands/lib/index.js
var init_lib146 = __esm({
  "../cache/commands/lib/index.js"() {
    "use strict";
    init_cache_cmd();
  }
});

// ../../../../../setup-pnpm/store/v11/links/@pnpm/tabtab/0.5.4/80735727a3a4989293fd41d5168ae98f0c302c17b6b67fd4a629d3e0e4c11327/node_modules/@pnpm/tabtab/lib/constants.js
var require_constants17 = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@pnpm/tabtab/0.5.4/80735727a3a4989293fd41d5168ae98f0c302c17b6b67fd4a629d3e0e4c11327/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
    };
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/ansi-colors/4.1.3/fb2584472e25c00392a86e3665e7509442ce8e50ff4b6b0e4fdbf75a70f4f5b7/node_modules/ansi-colors/symbols.js
var require_symbols2 = __commonJS({
  "../../../../../setup-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 common4 = {
      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({}, common4, {
      check: "\u221A",
      cross: "\xD7",
      ellipsisLarge: "...",
      ellipsis: "...",
      info: "i",
      questionSmall: "?",
      pointer: ">",
      pointerSmall: "\xBB",
      radioOff: "( )",
      radioOn: "(*)",
      warning: "\u203C"
    });
    var other = Object.assign({}, common4, {
      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: common4 });
    Reflect.defineProperty(module2.exports, "windows", { enumerable: false, value: windows });
    Reflect.defineProperty(module2.exports, "other", { enumerable: false, value: other });
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/ansi-colors/4.1.3/fb2584472e25c00392a86e3665e7509442ce8e50ff4b6b0e4fdbf75a70f4f5b7/node_modules/ansi-colors/index.js
var require_ansi_colors = __commonJS({
  "../../../../../setup-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 open3 = 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 + open3);
          let output = open3 + input + close;
          return newline ? output.replace(/\r*\n/g, `${close}$&${open3}`) : output;
        };
        return style2;
      };
      const wrap2 = (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 = wrap2(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;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/enquirer/2.4.1/3850a38b4b3225ddd4e2cbd27798d0090d216576365369fd53d6b204c9016204/node_modules/enquirer/lib/utils.js
var require_utils16 = __commonJS({
  "../../../../../setup-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, index2, pos) => {
      let len = arr.length;
      let idx = pos === len ? 0 : pos < 0 ? len - 1 : pos;
      let choice = arr[index2];
      arr[index2] = 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, i4, arr) => {
        let value = arr.length - 1 > i4 ? acc[k2] || {} : val;
        if (!exports2.isObject(value) && i4 < 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 proto3 = emitter.constructor.prototype;
      for (let key of Object.keys(proto3)) {
        let val = proto3[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();
        }
      });
    };
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/enquirer/2.4.1/3850a38b4b3225ddd4e2cbd27798d0090d216576365369fd53d6b204c9016204/node_modules/enquirer/lib/combos.js
var require_combos = __commonJS({
  "../../../../../setup-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"
    };
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/enquirer/2.4.1/3850a38b4b3225ddd4e2cbd27798d0090d216576365369fd53d6b204c9016204/node_modules/enquirer/lib/queue.js
var require_queue2 = __commonJS({
  "../../../../../setup-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();
        });
      }
    };
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/enquirer/2.4.1/3850a38b4b3225ddd4e2cbd27798d0090d216576365369fd53d6b204c9016204/node_modules/enquirer/lib/keypress.js
var require_keypress = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/enquirer/2.4.1/3850a38b4b3225ddd4e2cbd27798d0090d216576365369fd53d6b204c9016204/node_modules/enquirer/lib/keypress.js"(exports2, module2) {
    "use strict";
    var readline7 = __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 isShiftKey2(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 = isShiftKey2(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 = readline7.createInterface({ terminal: true, input: stdin });
      readline7.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;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/enquirer/2.4.1/3850a38b4b3225ddd4e2cbd27798d0090d216576365369fd53d6b204c9016204/node_modules/enquirer/lib/timer.js
var require_timer = __commonJS({
  "../../../../../setup-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 opts3 = timers[key];
        if (typeof opts3 === "number") {
          opts3 = { interval: opts3 };
        }
        create(prompt, key, opts3);
      }
    };
    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;
    }
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/enquirer/2.4.1/3850a38b4b3225ddd4e2cbd27798d0090d216576365369fd53d6b204c9016204/node_modules/enquirer/lib/state.js
var require_state = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/enquirer/2.4.1/3850a38b4b3225ddd4e2cbd27798d0090d216576365369fd53d6b204c9016204/node_modules/enquirer/lib/state.js"(exports2, module2) {
    "use strict";
    var { define: define2, width } = require_utils16();
    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 styles6 = this.prompt.styles;
        if (this.cancelled) return styles6.cancelled;
        if (this.submitted) return styles6.submitted;
        let color = this._color || styles6[this.status];
        return typeof color === "function" ? color : styles6.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;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/enquirer/2.4.1/3850a38b4b3225ddd4e2cbd27798d0090d216576365369fd53d6b204c9016204/node_modules/enquirer/lib/styles.js
var require_styles = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/enquirer/2.4.1/3850a38b4b3225ddd4e2cbd27798d0090d216576365369fd53d6b204c9016204/node_modules/enquirer/lib/styles.js"(exports2, module2) {
    "use strict";
    var utils = require_utils16();
    var colors = require_ansi_colors();
    var styles6 = {
      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;
      }
    };
    styles6.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({}, styles6, 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 = styles6;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/enquirer/2.4.1/3850a38b4b3225ddd4e2cbd27798d0090d216576365369fd53d6b204c9016204/node_modules/enquirer/lib/symbols.js
var require_symbols3 = __commonJS({
  "../../../../../setup-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_utils16();
    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;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/enquirer/2.4.1/3850a38b4b3225ddd4e2cbd27798d0090d216576365369fd53d6b204c9016204/node_modules/enquirer/lib/theme.js
var require_theme = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/enquirer/2.4.1/3850a38b4b3225ddd4e2cbd27798d0090d216576365369fd53d6b204c9016204/node_modules/enquirer/lib/theme.js"(exports2, module2) {
    "use strict";
    var styles6 = require_styles();
    var symbols = require_symbols3();
    var utils = require_utils16();
    module2.exports = (prompt) => {
      prompt.options = utils.merge({}, prompt.options.theme, prompt.options);
      prompt.symbols = symbols.merge(prompt.options);
      prompt.styles = styles6.merge(prompt.options);
    };
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/enquirer/2.4.1/3850a38b4b3225ddd4e2cbd27798d0090d216576365369fd53d6b204c9016204/node_modules/enquirer/lib/ansi.js
var require_ansi = __commonJS({
  "../../../../../setup-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_utils16();
    var ansi = module2.exports = exports2;
    var ESC4 = "\x1B[";
    var BEL2 = "\x07";
    var hidden2 = false;
    var code = ansi.code = {
      bell: BEL2,
      beep: BEL2,
      beginning: `${ESC4}G`,
      down: `${ESC4}J`,
      esc: ESC4,
      getPosition: `${ESC4}6n`,
      hide: `${ESC4}?25l`,
      line: `${ESC4}2K`,
      lineEnd: `${ESC4}K`,
      lineStart: `${ESC4}1K`,
      restorePosition: ESC4 + (isTerm ? "8" : "u"),
      savePosition: ESC4 + (isTerm ? "7" : "s"),
      screen: `${ESC4}2J`,
      show: `${ESC4}?25h`,
      up: `${ESC4}1J`
    };
    var cursor = ansi.cursor = {
      get hidden() {
        return hidden2;
      },
      hide() {
        hidden2 = true;
        return code.hide;
      },
      show() {
        hidden2 = false;
        return code.show;
      },
      forward: (count2 = 1) => `${ESC4}${count2}C`,
      backward: (count2 = 1) => `${ESC4}${count2}D`,
      nextLine: (count2 = 1) => `${ESC4}E`.repeat(count2),
      prevLine: (count2 = 1) => `${ESC4}F`.repeat(count2),
      up: (count2 = 1) => count2 ? `${ESC4}${count2}A` : "",
      down: (count2 = 1) => count2 ? `${ESC4}${count2}B` : "",
      right: (count2 = 1) => count2 ? `${ESC4}${count2}C` : "",
      left: (count2 = 1) => count2 ? `${ESC4}${count2}D` : "",
      to(x3, y) {
        return y ? `${ESC4}${y + 1};${x3 + 1}H` : `${ESC4}${x3 + 1}G`;
      },
      move(x3 = 0, y = 0) {
        let res = "";
        res += x3 < 0 ? cursor.left(-x3) : x3 > 0 ? cursor.right(x3) : "";
        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 i4 = 0; i4 < len; i4++) {
          charCode = str2.charCodeAt(i4);
          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 diff2 = input.length - cursor2;
          if (diff2 > 0) {
            codes += ansi.cursor.left(diff2);
          }
          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 i4 = 0; i4 < n2; i4++) {
          str2 += ansi.erase.line + (i4 < 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);
    };
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/enquirer/2.4.1/3850a38b4b3225ddd4e2cbd27798d0090d216576365369fd53d6b204c9016204/node_modules/enquirer/lib/prompt.js
var require_prompt = __commonJS({
  "../../../../../setup-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_utils16();
    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(err2) {
        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(err2));
      }
      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 (err2) {
        }
        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 (resolve4, reject3) => {
          this.once("submit", resolve4);
          this.once("cancel", reject3);
          if (await this.skip()) {
            this.render = () => {
            };
            return this.submit();
          }
          await this.initialize();
          this.emit("run");
        });
      }
      async element(name, choice, i4) {
        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, i4);
        if (!res && choice && choice[name]) {
          return this.resolve(value, state, choice, i4);
        }
        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, i4) {
        let val = await this.element("pointer", choice, i4);
        if (typeof val === "string" && utils.hasColor(val)) {
          return val;
        }
        if (val) {
          let styles6 = this.styles;
          let focused = this.index === i4;
          let style = focused ? styles6.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, i4) {
        let val = await this.element("indicator", choice, i4);
        if (typeof val === "string" && utils.hasColor(val)) {
          return val;
        }
        if (val) {
          let styles6 = this.styles;
          let enabled = choice.enabled === true;
          let style = enabled ? styles6.success : styles6.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(err2) {
        return !this.state.submitted ? err2 || 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 pad4 = (i4) => i4 % 2 === 0 ? "\n" : " ";
      let res = [];
      for (let i4 = 0; i4 < 4; i4++) {
        let char = pad4(i4);
        if (arr[i4]) {
          res.push(char.repeat(arr[i4]));
        } else {
          res.push("");
        }
      }
      return res;
    }
    module2.exports = Prompt;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/enquirer/2.4.1/3850a38b4b3225ddd4e2cbd27798d0090d216576365369fd53d6b204c9016204/node_modules/enquirer/lib/roles.js
var require_roles = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/enquirer/2.4.1/3850a38b4b3225ddd4e2cbd27798d0090d216576365369fd53d6b204c9016204/node_modules/enquirer/lib/roles.js"(exports2, module2) {
    "use strict";
    var utils = require_utils16();
    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;
    };
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/enquirer/2.4.1/3850a38b4b3225ddd4e2cbd27798d0090d216576365369fd53d6b204c9016204/node_modules/enquirer/lib/types/array.js
var require_array2 = __commonJS({
  "../../../../../setup-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_utils16();
    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 index2 = 0;
        let toChoices = async (items, parent2) => {
          if (typeof items === "function") items = await items.call(this);
          if (items instanceof Promise) items = await items;
          for (let i4 = 0; i4 < items.length; i4++) {
            let choice = items[i4] = await this.toChoice(items[i4], index2++, 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, i4, 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 = i4;
        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, i4);
        }
        return ele;
      }
      async onChoice(choice, i4) {
        this.emit("choice", choice, i4, this);
        if (typeof choice.onChoice === "function") {
          await choice.onChoice.call(this, this.state, choice, i4);
        }
      }
      async addChoice(ele, i4, parent) {
        let choice = await this.toChoice(ele, i4, parent);
        this.choices.push(choice);
        this.index = this.choices.length - 1;
        this.limit = this.choices.length;
        return choice;
      }
      async newItem(item, i4, parent) {
        let ele = { name: "New choice name?", editable: true, newChoice: true, ...item };
        let choice = await this.addChoice(ele, i4, 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 i4 = Number(num);
          if (i4 > this.choices.length - 1) return this.alert();
          let focused = this.focused;
          let choice = this.choices.find((ch) => i4 === 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((resolve4) => {
          let len = this.choices.length;
          let num = this.num;
          let handle = (val = false, res) => {
            clearTimeout(this.numberTimeout);
            if (val) res = number(num);
            this.num = "";
            resolve4(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(i4 = 0) {
        this.choices = scrollUp2(this.choices);
        this.index = i4;
        if (this.isDisabled()) {
          return this.up();
        }
        return this.render();
      }
      scrollDown(i4 = this.visible.length - 1) {
        this.choices = scrollDown2(this.choices);
        this.index = i4;
        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, i4) => [ele.name, i4].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, i4) => [ele.name, i4].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(i4) {
        this.state.index = i4;
      }
      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;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/enquirer/2.4.1/3850a38b4b3225ddd4e2cbd27798d0090d216576365369fd53d6b204c9016204/node_modules/enquirer/lib/prompts/select.js
var require_select = __commonJS({
  "../../../../../setup-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_utils16();
    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, i4) {
        return !this.multiple || this.options.pointer ? super.pointer(choice, i4) : "";
      }
      indicator(choice, i4) {
        return this.multiple ? super.indicator(choice, i4) : "";
      }
      choiceMessage(choice, i4) {
        let message = this.resolve(choice.message, this.state, choice, i4);
        if (choice.role === "heading" && !utils.hasColor(message)) {
          message = this.styles.strong(message);
        }
        return this.resolve(message, this.state, choice, i4);
      }
      choiceSeparator() {
        return ":";
      }
      async renderChoice(choice, i4) {
        await this.onChoice(choice, i4);
        let focused = this.index === i4;
        let pointer = await this.pointer(choice, i4);
        let check2 = await this.indicator(choice, i4) + (choice.pad || "");
        let hint = await this.resolve(choice.hint, this.state, choice, i4);
        if (hint && !utils.hasColor(hint)) {
          hint = this.styles.muted(hint);
        }
        let ind = this.indent(choice);
        let msg = await this.choiceMessage(choice, i4);
        let line = () => [this.margin[3], ind + pointer + check2, 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, i4) => await this.renderChoice(ch, i4));
        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 help82 = await this.error() || await this.hint();
        let body = await this.renderChoices();
        let footer = await this.footer();
        if (output) prompt += output;
        if (help82 && !prompt.includes(help82)) prompt += " " + help82;
        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;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/enquirer/2.4.1/3850a38b4b3225ddd4e2cbd27798d0090d216576365369fd53d6b204c9016204/node_modules/enquirer/lib/prompts/autocomplete.js
var require_autocomplete = __commonJS({
  "../../../../../setup-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;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/enquirer/2.4.1/3850a38b4b3225ddd4e2cbd27798d0090d216576365369fd53d6b204c9016204/node_modules/enquirer/lib/placeholder.js
var require_placeholder = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/enquirer/2.4.1/3850a38b4b3225ddd4e2cbd27798d0090d216576365369fd53d6b204c9016204/node_modules/enquirer/lib/placeholder.js"(exports2, module2) {
    "use strict";
    var utils = require_utils16();
    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;
    };
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/enquirer/2.4.1/3850a38b4b3225ddd4e2cbd27798d0090d216576365369fd53d6b204c9016204/node_modules/enquirer/lib/prompts/form.js
var require_form = __commonJS({
  "../../../../../setup-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, i4) {
        let sep2 = await this.resolve(choice.separator, this.state, choice, i4) || ":";
        return sep2 ? " " + this.styles.disabled(sep2) : "";
      }
      async renderChoice(choice, i4) {
        await this.onChoice(choice, i4);
        let { state, styles: styles6 } = this;
        let { cursor, initial = "", name, input = "" } = choice;
        let { muted, submitted, primary, danger } = styles6;
        let focused = this.index === i4;
        let validate2 = choice.validate || (() => true);
        let sep2 = await this.choiceSeparator(choice, i4);
        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 = styles6[color];
        let indicator = style(await this.indicator(choice, i4)) + (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, i4);
        } 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, i4);
        }
        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;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/enquirer/2.4.1/3850a38b4b3225ddd4e2cbd27798d0090d216576365369fd53d6b204c9016204/node_modules/enquirer/lib/types/auth.js
var require_auth = __commonJS({
  "../../../../../setup-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();
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/enquirer/2.4.1/3850a38b4b3225ddd4e2cbd27798d0090d216576365369fd53d6b204c9016204/node_modules/enquirer/lib/prompts/basicauth.js
var require_basicauth = __commonJS({
  "../../../../../setup-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();
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/enquirer/2.4.1/3850a38b4b3225ddd4e2cbd27798d0090d216576365369fd53d6b204c9016204/node_modules/enquirer/lib/types/boolean.js
var require_boolean = __commonJS({
  "../../../../../setup-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_utils16();
    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: styles6, state } = this;
        return !state.submitted ? styles6.primary(value) : styles6.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 help82 = await this.error() || await this.hint();
        let footer = await this.footer();
        if (help82 && !promptLine.includes(help82)) output += " " + help82;
        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;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/enquirer/2.4.1/3850a38b4b3225ddd4e2cbd27798d0090d216576365369fd53d6b204c9016204/node_modules/enquirer/lib/prompts/confirm.js
var require_confirm = __commonJS({
  "../../../../../setup-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;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/enquirer/2.4.1/3850a38b4b3225ddd4e2cbd27798d0090d216576365369fd53d6b204c9016204/node_modules/enquirer/lib/prompts/editable.js
var require_editable = __commonJS({
  "../../../../../setup-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, i4) {
        let symbol = choice.indicator || "";
        let value = choice.editable ? symbol : super.indicator(choice, i4);
        return await this.resolve(value, this.state, choice, i4) || "";
      }
      indent(choice) {
        return choice.role === "heading" ? "" : choice.editable ? " " : "  ";
      }
      async renderChoice(choice, i4) {
        choice.indent = "";
        if (choice.editable) return form.renderChoice.call(this, choice, i4);
        return super.renderChoice(choice, i4);
      }
      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;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/enquirer/2.4.1/3850a38b4b3225ddd4e2cbd27798d0090d216576365369fd53d6b204c9016204/node_modules/enquirer/lib/types/string.js
var require_string3 = __commonJS({
  "../../../../../setup-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_utils16();
    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 isEnterKey2 = key.name === "return" || key.name === "enter";
        let prev = this.state.prevKeypress;
        let append;
        this.state.prevKeypress = key;
        if (this.keypressTimeout != null && isEnterKey2) {
          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 && isEnterKey2) {
          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 help82 = await this.error() || await this.hint();
        let footer = await this.footer();
        if (help82 && !output.includes(help82)) output += " " + help82;
        prompt += " " + output;
        this.clear(size);
        this.write([header, prompt, footer].filter(Boolean).join("\n"));
        this.restore();
      }
    };
    module2.exports = StringPrompt;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/enquirer/2.4.1/3850a38b4b3225ddd4e2cbd27798d0090d216576365369fd53d6b204c9016204/node_modules/enquirer/lib/completer.js
var require_completer = __commonJS({
  "../../../../../setup-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, i4) => arr.lastIndexOf(v) === i4);
    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}"`);
        }
      }
    };
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/enquirer/2.4.1/3850a38b4b3225ddd4e2cbd27798d0090d216576365369fd53d6b204c9016204/node_modules/enquirer/lib/prompts/input.js
var require_input = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/enquirer/2.4.1/3850a38b4b3225ddd4e2cbd27798d0090d216576365369fd53d6b204c9016204/node_modules/enquirer/lib/prompts/input.js"(exports2, module2) {
    "use strict";
    var Prompt = require_string3();
    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;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/enquirer/2.4.1/3850a38b4b3225ddd4e2cbd27798d0090d216576365369fd53d6b204c9016204/node_modules/enquirer/lib/prompts/invisible.js
var require_invisible = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/enquirer/2.4.1/3850a38b4b3225ddd4e2cbd27798d0090d216576365369fd53d6b204c9016204/node_modules/enquirer/lib/prompts/invisible.js"(exports2, module2) {
    "use strict";
    var StringPrompt = require_string3();
    var InvisiblePrompt = class extends StringPrompt {
      format() {
        return "";
      }
    };
    module2.exports = InvisiblePrompt;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/enquirer/2.4.1/3850a38b4b3225ddd4e2cbd27798d0090d216576365369fd53d6b204c9016204/node_modules/enquirer/lib/prompts/list.js
var require_list = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/enquirer/2.4.1/3850a38b4b3225ddd4e2cbd27798d0090d216576365369fd53d6b204c9016204/node_modules/enquirer/lib/prompts/list.js"(exports2, module2) {
    "use strict";
    var StringPrompt = require_string3();
    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;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/enquirer/2.4.1/3850a38b4b3225ddd4e2cbd27798d0090d216576365369fd53d6b204c9016204/node_modules/enquirer/lib/prompts/multiselect.js
var require_multiselect = __commonJS({
  "../../../../../setup-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;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/enquirer/2.4.1/3850a38b4b3225ddd4e2cbd27798d0090d216576365369fd53d6b204c9016204/node_modules/enquirer/lib/types/number.js
var require_number = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/enquirer/2.4.1/3850a38b4b3225ddd4e2cbd27798d0090d216576365369fd53d6b204c9016204/node_modules/enquirer/lib/types/number.js"(exports2, module2) {
    "use strict";
    var StringPrompt = require_string3();
    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;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/enquirer/2.4.1/3850a38b4b3225ddd4e2cbd27798d0090d216576365369fd53d6b204c9016204/node_modules/enquirer/lib/prompts/numeral.js
var require_numeral = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/enquirer/2.4.1/3850a38b4b3225ddd4e2cbd27798d0090d216576365369fd53d6b204c9016204/node_modules/enquirer/lib/prompts/numeral.js"(exports2, module2) {
    module2.exports = require_number();
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/enquirer/2.4.1/3850a38b4b3225ddd4e2cbd27798d0090d216576365369fd53d6b204c9016204/node_modules/enquirer/lib/prompts/password.js
var require_password = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/enquirer/2.4.1/3850a38b4b3225ddd4e2cbd27798d0090d216576365369fd53d6b204c9016204/node_modules/enquirer/lib/prompts/password.js"(exports2, module2) {
    "use strict";
    var StringPrompt = require_string3();
    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;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/enquirer/2.4.1/3850a38b4b3225ddd4e2cbd27798d0090d216576365369fd53d6b204c9016204/node_modules/enquirer/lib/prompts/scale.js
var require_scale = __commonJS({
  "../../../../../setup-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_utils16();
    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, i4) => ({ name: i4 + 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 i4 = 0; i4 < this.scale.length; i4++) {
            ch.scale.push({ index: i4 });
          }
        }
        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, i4) {
        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(max4) {
        let keys4 = this.scale.map((ele) => ele.name);
        if (typeof this.options.renderScaleHeading === "function") {
          keys4 = this.options.renderScaleHeading.call(this, max4);
        }
        let diff2 = this.scaleLength - keys4.join("").length;
        let spacing = Math.round(diff2 / (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, i4) {
        if (typeof this.options.scaleIndicator === "function") {
          return this.options.scaleIndicator.call(this, choice, item, i4);
        }
        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, i4) {
        let scale = choice.scale.map((item) => this.scaleIndicator(choice, item, i4));
        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, i4) {
        await this.onChoice(choice, i4);
        let focused = this.index === i4;
        let pointer = await this.pointer(choice, i4);
        let hint = await choice.hint;
        if (hint && !utils.hasColor(hint)) {
          hint = this.styles.muted(hint);
        }
        let pad4 = (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, i4);
        let scale = await this.renderScale(choice, i4);
        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) => pad4(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, i4) => await this.renderChoice(ch, i4));
        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 help82 = await this.error() || await this.hint();
        let body = await this.renderChoices();
        let footer = await this.footer();
        let err2 = this.emptyError;
        if (output) prompt += output;
        if (help82 && !prompt.includes(help82)) prompt += " " + help82;
        if (submitted && !output && !body.trim() && this.multiple && err2 != null) {
          prompt += this.styles.danger(err2);
        }
        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;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/enquirer/2.4.1/3850a38b4b3225ddd4e2cbd27798d0090d216576365369fd53d6b204c9016204/node_modules/enquirer/lib/interpolate.js
var require_interpolate = __commonJS({
  "../../../../../setup-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 clean2 = (str2 = "") => {
      return typeof str2 === "string" ? str2.replace(/^['"]|['"]$/g, "") : "";
    };
    var Item = class {
      constructor(token) {
        this.name = token.key;
        this.field = token.field || {};
        this.value = clean2(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 i4 = -1;
      let next2 = () => input[++i4];
      let peek = () => input[i4 + 1];
      let push = (token) => {
        token.line = line;
        tabstops.push(token);
      };
      push({ type: "bos", value: "" });
      while (i4 < 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 index2 = 0;
        state.required = required;
        state.items = items;
        state.keys = keys4;
        state.output = "";
        let validate2 = async (value, state2, item, index3) => {
          let error = await isValid(value, state2, item, index3);
          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, index2);
              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, index2);
              state.output += stripAnsi4(res);
              continue;
            }
            item.placeholder = false;
            let before = value;
            value = await format2(value, state, item, index2);
            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 (index2 === state.index) {
              if (before !== value) {
                value = prompt.styles.underline(value);
              } else {
                value = prompt.styles.heading(stripAnsi4(value));
              }
            }
            index2++;
          }
          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((i4) => {
              if (lines[i4][0] !== " ") return;
              lines[i4] = state.styles.danger(state.symbols.bullet) + lines[i4].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, index2) => {
        if (typeof item.field[prop3] === "function") {
          return item.field[prop3].call(prompt, value, state, item, index2);
        }
        return [fallback, value].find((v) => prompt.isValue(v));
      };
    }
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/enquirer/2.4.1/3850a38b4b3225ddd4e2cbd27798d0090d216576365369fd53d6b204c9016204/node_modules/enquirer/lib/prompts/snippet.js
var require_snippet = __commonJS({
  "../../../../../setup-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(i4) {
        return i4 >= this.state.keys.length - 1 ? 0 : i4 + 1;
      }
      decrement(i4) {
        return i4 <= 0 ? this.state.keys.length - 1 : i4 - 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: index2, 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[index2] || "";
        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: index2 } = this.state;
        let item = items.find((ch) => ch.name === keys4[index2]);
        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 err2 = "";
          for (let [key, value] of invalid) err2 += `Invalid ${key}: ${value}
`;
          this.state.error = err2;
          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;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/enquirer/2.4.1/3850a38b4b3225ddd4e2cbd27798d0090d216576365369fd53d6b204c9016204/node_modules/enquirer/lib/prompts/sort.js
var require_sort2 = __commonJS({
  "../../../../../setup-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, i4) {
        let str2 = await super.renderChoice(choice, i4);
        let sym = this.symbols.identicalTo + " ";
        let pre = this.index === i4 && this.sorting ? this.styles.muted(sym) : "  ";
        if (this.options.drag === false) pre = "";
        if (this.options.numbered === true) {
          return pre + `${i4 + 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;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/enquirer/2.4.1/3850a38b4b3225ddd4e2cbd27798d0090d216576365369fd53d6b204c9016204/node_modules/enquirer/lib/prompts/survey.js
var require_survey = __commonJS({
  "../../../../../setup-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, i4) {
        await this.onChoice(item, i4);
        let focused = this.index === i4;
        let isHyper = this.term === "Hyper";
        let n2 = !isHyper ? 8 : 9;
        let s = !isHyper ? " " : "";
        let ln2 = this.symbols.line.repeat(n2);
        let sp = " ".repeat(n2 + (isHyper ? 0 : 1));
        let dot = (enabled) => (enabled ? this.styles.success("\u25C9") : "\u25EF") + s;
        let num = i4 + 1 + ".";
        let color = focused ? this.styles.heading : this.styles.noop;
        let msg = await this.resolve(item.message, this.state, item, i4);
        let indent = this.indent(item);
        let scale = indent + item.scale.map((e, i5) => dot(i5 === item.scaleIdx)).join(ln2);
        let val = (i5) => i5 === item.scaleIdx ? color(i5) : i5;
        let next2 = indent + item.scale.map((e, i5) => val(i5)).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, i4) => await this.renderChoice(ch, i4));
        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 help82 = await this.error() || await this.hint();
        let body = await this.renderChoices();
        let footer = await this.footer();
        if (output || !help82) prompt += " " + output;
        if (help82 && !prompt.includes(help82)) prompt += " " + help82;
        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 i4 = 1; i4 < n2 + 1; i4++) scale.push({ i: i4, selected: false });
      return scale;
    }
    module2.exports = Survey;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/enquirer/2.4.1/3850a38b4b3225ddd4e2cbd27798d0090d216576365369fd53d6b204c9016204/node_modules/enquirer/lib/prompts/text.js
var require_text = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/enquirer/2.4.1/3850a38b4b3225ddd4e2cbd27798d0090d216576365369fd53d6b204c9016204/node_modules/enquirer/lib/prompts/text.js"(exports2, module2) {
    module2.exports = require_input();
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/enquirer/2.4.1/3850a38b4b3225ddd4e2cbd27798d0090d216576365369fd53d6b204c9016204/node_modules/enquirer/lib/prompts/toggle.js
var require_toggle = __commonJS({
  "../../../../../setup-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 help82 = await this.error() || await this.hint();
        let footer = await this.footer();
        let prompt = [prefix, message, separator, output].join(" ");
        this.state.prompt = prompt;
        if (help82 && !prompt.includes(help82)) prompt += " " + help82;
        this.clear(size);
        this.write([header, prompt, footer].filter(Boolean).join("\n"));
        this.write(this.margin[2]);
        this.restore();
      }
    };
    module2.exports = TogglePrompt;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/enquirer/2.4.1/3850a38b4b3225ddd4e2cbd27798d0090d216576365369fd53d6b204c9016204/node_modules/enquirer/lib/prompts/quiz.js
var require_quiz = __commonJS({
  "../../../../../setup-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;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/enquirer/2.4.1/3850a38b4b3225ddd4e2cbd27798d0090d216576365369fd53d6b204c9016204/node_modules/enquirer/lib/prompts/index.js
var require_prompts = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/enquirer/2.4.1/3850a38b4b3225ddd4e2cbd27798d0090d216576365369fd53d6b204c9016204/node_modules/enquirer/lib/prompts/index.js"(exports2) {
    "use strict";
    var utils = require_utils16();
    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());
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/enquirer/2.4.1/3850a38b4b3225ddd4e2cbd27798d0090d216576365369fd53d6b204c9016204/node_modules/enquirer/lib/types/index.js
var require_types2 = __commonJS({
  "../../../../../setup-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_string3()
    };
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/enquirer/2.4.1/3850a38b4b3225ddd4e2cbd27798d0090d216576365369fd53d6b204c9016204/node_modules/enquirer/index.js
var require_enquirer = __commonJS({
  "../../../../../setup-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_utils16();
    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 (err2) {
            return Promise.reject(err2);
          }
        }
        return this.answers;
      }
      async ask(question) {
        if (typeof question === "function") {
          question = await question.call(this);
        }
        let opts3 = utils.merge({}, this.options, question);
        let { type: type4, name } = question;
        let { set: set2, get: get2 } = 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](opts3);
        let value = get2(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 (opts3.autofill && value != null) {
          prompt.value = prompt.input = value;
          if (opts3.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_types2();
      }
      /**
       * 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 enquirer = new this(...rest);
          let emit = enquirer.emit.bind(enquirer);
          enquirer.emit = (...args) => {
            fn.emit(...args);
            return emit(...args);
          };
          return enquirer.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 run2 = (options) => new prompts[name](options).run();
      Enquirer.prompt[key] = run2;
      Enquirer[key] = run2;
      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;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/ms/2.1.3/e0f4c72e735898d92cc164c858cbd0c7b6ed2ec2b4d6da5e8a20fedffeed95cd/node_modules/ms/index.js
var require_ms = __commonJS({
  "../../../../../setup-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 d3 = h2 * 24;
    var w = d3 * 7;
    var y = d3 * 365.25;
    module2.exports = function(val, options) {
      options = options || {};
      var type4 = typeof val;
      if (type4 === "string" && val.length > 0) {
        return parse12(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 parse12(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 * d3;
        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 >= d3) {
        return Math.round(ms / d3) + "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 >= d3) {
        return plural2(ms, msAbs, d3, "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" : "");
    }
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/debug/4.4.3/d565ec0b596b28151df48e06ac8c9f83689f6bec2986b670c690d704d97d9f80/node_modules/debug/src/common.js
var require_common5 = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/debug/4.4.3/d565ec0b596b28151df48e06ac8c9f83689f6bec2986b670c690d704d97d9f80/node_modules/debug/src/common.js"(exports2, module2) {
    function setup(env4) {
      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(env4).forEach((key) => {
        createDebug[key] = env4[key];
      });
      createDebug.names = [];
      createDebug.skips = [];
      createDebug.formatters = {};
      function selectColor(namespace) {
        let hash2 = 0;
        for (let i4 = 0; i4 < namespace.length; i4++) {
          hash2 = (hash2 << 5) - hash2 + namespace.charCodeAt(i4);
          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 index2 = 0;
          args[0] = args[0].replace(/%([a-zA-Z%])/g, (match, format2) => {
            if (match === "%%") {
              return "%";
            }
            index2++;
            const formatter = createDebug.formatters[format2];
            if (typeof formatter === "function") {
              const val = args[index2];
              match = formatter.call(self2, val);
              args.splice(index2, 1);
              index2--;
            }
            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 split4 = (typeof namespaces === "string" ? namespaces : "").trim().replace(/\s+/g, ",").split(",").filter(Boolean);
        for (const ns of split4) {
          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 skip2 of createDebug.skips) {
          if (matchesTemplate(name, skip2)) {
            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;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/debug/4.4.3/d565ec0b596b28151df48e06ac8c9f83689f6bec2986b670c690d704d97d9f80/node_modules/debug/src/browser.js
var require_browser = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/debug/4.4.3/d565ec0b596b28151df48e06ac8c9f83689f6bec2986b670c690d704d97d9f80/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 index2 = 0;
      let lastC = 0;
      args[0].replace(/%[a-zA-Z%]/g, (match) => {
        if (match === "%%") {
          return;
        }
        index2++;
        if (match === "%c") {
          lastC = index2;
        }
      });
      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;
      }
    };
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/supports-color/10.2.2/d7b50f591c2c70caab44b381b07a2ac38e77d341cd4354f5d48cfc70624c8800/node_modules/supports-color/index.js
var supports_color_exports = {};
__export(supports_color_exports, {
  createSupportsColor: () => createSupportsColor3,
  default: () => supports_color_default3
});
import process21 from "node:process";
import os14 from "node:os";
import tty5 from "node:tty";
function hasFlag3(flag, argv2 = globalThis.Deno ? globalThis.Deno.args : process21.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 envForceColor3() {
  if (!("FORCE_COLOR" in env3)) {
    return;
  }
  if (env3.FORCE_COLOR === "true") {
    return 1;
  }
  if (env3.FORCE_COLOR === "false") {
    return 0;
  }
  if (env3.FORCE_COLOR.length === 0) {
    return 1;
  }
  const level = Math.min(Number.parseInt(env3.FORCE_COLOR, 10), 3);
  if (![0, 1, 2, 3].includes(level)) {
    return;
  }
  return level;
}
function translateLevel3(level) {
  if (level === 0) {
    return false;
  }
  return {
    level,
    hasBasic: true,
    has256: level >= 2,
    has16m: level >= 3
  };
}
function _supportsColor3(haveStream, { streamIsTTY, sniffFlags = true } = {}) {
  const noFlagForceColor = envForceColor3();
  if (noFlagForceColor !== void 0) {
    flagForceColor3 = noFlagForceColor;
  }
  const forceColor = sniffFlags ? flagForceColor3 : noFlagForceColor;
  if (forceColor === 0) {
    return 0;
  }
  if (sniffFlags) {
    if (hasFlag3("color=16m") || hasFlag3("color=full") || hasFlag3("color=truecolor")) {
      return 3;
    }
    if (hasFlag3("color=256")) {
      return 2;
    }
  }
  if ("TF_BUILD" in env3 && "AGENT_NAME" in env3) {
    return 1;
  }
  if (haveStream && !streamIsTTY && forceColor === void 0) {
    return 0;
  }
  const min = forceColor || 0;
  if (env3.TERM === "dumb") {
    return min;
  }
  if (process21.platform === "win32") {
    const osRelease = os14.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 (["GITHUB_ACTIONS", "GITEA_ACTIONS", "CIRCLECI"].some((key) => key in env3)) {
      return 3;
    }
    if (["TRAVIS", "APPVEYOR", "GITLAB_CI", "BUILDKITE", "DRONE"].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 (env3.TERM === "xterm-kitty") {
    return 3;
  }
  if (env3.TERM === "xterm-ghostty") {
    return 3;
  }
  if (env3.TERM === "wezterm") {
    return 3;
  }
  if ("TERM_PROGRAM" in env3) {
    const version2 = Number.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 createSupportsColor3(stream2, options = {}) {
  const level = _supportsColor3(stream2, {
    streamIsTTY: stream2 && stream2.isTTY,
    ...options
  });
  return translateLevel3(level);
}
var env3, flagForceColor3, supportsColor3, supports_color_default3;
var init_supports_color3 = __esm({
  "../../../../../setup-pnpm/store/v11/links/@/supports-color/10.2.2/d7b50f591c2c70caab44b381b07a2ac38e77d341cd4354f5d48cfc70624c8800/node_modules/supports-color/index.js"() {
    ({ env: env3 } = process21);
    if (hasFlag3("no-color") || hasFlag3("no-colors") || hasFlag3("color=false") || hasFlag3("color=never")) {
      flagForceColor3 = 0;
    } else if (hasFlag3("color") || hasFlag3("colors") || hasFlag3("color=true") || hasFlag3("color=always")) {
      flagForceColor3 = 1;
    }
    supportsColor3 = {
      stdout: createSupportsColor3({ isTTY: tty5.isatty(1) }),
      stderr: createSupportsColor3({ isTTY: tty5.isatty(2) })
    };
    supports_color_default3 = supportsColor3;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/debug/4.4.3/d565ec0b596b28151df48e06ac8c9f83689f6bec2986b670c690d704d97d9f80/node_modules/debug/src/node.js
var require_node = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/debug/4.4.3/d565ec0b596b28151df48e06ac8c9f83689f6bec2986b670c690d704d97d9f80/node_modules/debug/src/node.js"(exports2, module2) {
    var tty6 = __require("tty");
    var util70 = __require("util");
    exports2.init = init2;
    exports2.log = log3;
    exports2.formatArgs = formatArgs;
    exports2.save = save;
    exports2.load = load3;
    exports2.useColors = useColors;
    exports2.destroy = util70.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 supportsColor4 = (init_supports_color3(), __toCommonJS(supports_color_exports));
      if (supportsColor4 && (supportsColor4.stderr || supportsColor4).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) : tty6.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(util70.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 i4 = 0; i4 < keys4.length; i4++) {
        debug.inspectOpts[keys4[i4]] = exports2.inspectOpts[keys4[i4]];
      }
    }
    module2.exports = require_common5()(exports2);
    var { formatters } = module2.exports;
    formatters.o = function(v) {
      this.inspectOpts.colors = this.useColors;
      return util70.inspect(v, this.inspectOpts).split("\n").map((str2) => str2.trim()).join(" ");
    };
    formatters.O = function(v) {
      this.inspectOpts.colors = this.useColors;
      return util70.inspect(v, this.inspectOpts);
    };
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/debug/4.4.3/d565ec0b596b28151df48e06ac8c9f83689f6bec2986b670c690d704d97d9f80/node_modules/debug/src/index.js
var require_src3 = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/debug/4.4.3/d565ec0b596b28151df48e06ac8c9f83689f6bec2986b670c690d704d97d9f80/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();
    }
  }
});

// ../../../../../setup-pnpm/store/v11/links/@pnpm/tabtab/0.5.4/80735727a3a4989293fd41d5168ae98f0c302c17b6b67fd4a629d3e0e4c11327/node_modules/@pnpm/tabtab/lib/utils/tabtabDebug.js
var require_tabtabDebug = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@pnpm/tabtab/0.5.4/80735727a3a4989293fd41d5168ae98f0c302c17b6b67fd4a629d3e0e4c11327/node_modules/@pnpm/tabtab/lib/utils/tabtabDebug.js"(exports2, module2) {
    var fs131 = __require("fs");
    var util70 = __require("util");
    var tabtabDebug = (name) => {
      let debug = require_src3()(name);
      if (process.env.TABTAB_DEBUG) {
        const file = process.env.TABTAB_DEBUG;
        const stream2 = fs131.createWriteStream(file, {
          flags: "a+"
        });
        const log3 = (...args) => {
          args = args.map((arg) => {
            if (typeof arg === "string") return arg;
            return JSON.stringify(arg);
          });
          const str2 = `${util70.format(...args)}
`;
          stream2.write(str2);
        };
        if (process.env.COMP_LINE) {
          debug = log3;
        } else {
          debug.log = log3;
        }
      }
      return debug;
    };
    module2.exports = tabtabDebug;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@pnpm/tabtab/0.5.4/80735727a3a4989293fd41d5168ae98f0c302c17b6b67fd4a629d3e0e4c11327/node_modules/@pnpm/tabtab/lib/prompt.js
var require_prompt2 = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@pnpm/tabtab/0.5.4/80735727a3a4989293fd41d5168ae98f0c302c17b6b67fd4a629d3e0e4c11327/node_modules/@pnpm/tabtab/lib/prompt.js"(exports2, module2) {
    var enquirer = require_enquirer();
    var path240 = __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 enquirer.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 enquirer.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 enquirer.prompt({
          name: "userLocation",
          message: "Which path then ? Must be absolute.",
          type: "input",
          validate: (input) => {
            debug("Validating input", input);
            return path240.isAbsolute(input);
          }
        })
      );
      console.log(`Very well, we will install using ${userLocation}`);
      return { shell, location: userLocation };
    };
    module2.exports = prompt;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/untildify/4.0.0/e6d5d8325be308b02ddca4fe90e858e75c1834baef5bf832c644a23c40d2956b/node_modules/untildify/index.js
var require_untildify = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/untildify/4.0.0/e6d5d8325be308b02ddca4fe90e858e75c1834baef5bf832c644a23c40d2956b/node_modules/untildify/index.js"(exports2, module2) {
    "use strict";
    var os20 = __require("os");
    var homeDirectory = os20.homedir();
    module2.exports = (pathWithTilde) => {
      if (typeof pathWithTilde !== "string") {
        throw new TypeError(`Expected a string, got ${typeof pathWithTilde}`);
      }
      return homeDirectory ? pathWithTilde.replace(/^~(?=$|\/|\\)/, homeDirectory) : pathWithTilde;
    };
  }
});

// ../../../../../setup-pnpm/store/v11/links/@pnpm/tabtab/0.5.4/80735727a3a4989293fd41d5168ae98f0c302c17b6b67fd4a629d3e0e4c11327/node_modules/@pnpm/tabtab/lib/utils/exists.js
var require_exists = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@pnpm/tabtab/0.5.4/80735727a3a4989293fd41d5168ae98f0c302c17b6b67fd4a629d3e0e4c11327/node_modules/@pnpm/tabtab/lib/utils/exists.js"(exports2, module2) {
    var fs131 = __require("fs");
    var untildify = require_untildify();
    var { promisify: promisify15 } = __require("util");
    var readFile5 = promisify15(fs131.readFile);
    module2.exports = async (file) => {
      let fileExists;
      try {
        await readFile5(untildify(file));
        fileExists = true;
      } catch (err2) {
        fileExists = false;
      }
      return fileExists;
    };
  }
});

// ../../../../../setup-pnpm/store/v11/links/@pnpm/tabtab/0.5.4/80735727a3a4989293fd41d5168ae98f0c302c17b6b67fd4a629d3e0e4c11327/node_modules/@pnpm/tabtab/lib/utils/index.js
var require_utils17 = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@pnpm/tabtab/0.5.4/80735727a3a4989293fd41d5168ae98f0c302c17b6b67fd4a629d3e0e4c11327/node_modules/@pnpm/tabtab/lib/utils/index.js"(exports2, module2) {
    var tabtabDebug = require_tabtabDebug();
    var exists = require_exists();
    module2.exports = {
      tabtabDebug,
      exists
    };
  }
});

// ../../../../../setup-pnpm/store/v11/links/@pnpm/tabtab/0.5.4/80735727a3a4989293fd41d5168ae98f0c302c17b6b67fd4a629d3e0e4c11327/node_modules/@pnpm/tabtab/lib/filename.js
var require_filename = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@pnpm/tabtab/0.5.4/80735727a3a4989293fd41d5168ae98f0c302c17b6b67fd4a629d3e0e4c11327/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
    };
  }
});

// ../../../../../setup-pnpm/store/v11/links/@pnpm/tabtab/0.5.4/80735727a3a4989293fd41d5168ae98f0c302c17b6b67fd4a629d3e0e4c11327/node_modules/@pnpm/tabtab/lib/installer.js
var require_installer = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@pnpm/tabtab/0.5.4/80735727a3a4989293fd41d5168ae98f0c302c17b6b67fd4a629d3e0e4c11327/node_modules/@pnpm/tabtab/lib/installer.js"(exports2, module2) {
    var fs131 = __require("fs");
    var path240 = __require("path");
    var untildify = require_untildify();
    var { promisify: promisify15 } = __require("util");
    var { tabtabDebug, exists } = require_utils17();
    var { SUPPORTED_SHELLS: SUPPORTED_SHELLS3 } = require_constants17();
    var debug = tabtabDebug("tabtab:installer");
    var readFile5 = promisify15(fs131.readFile);
    var writeFile3 = promisify15(fs131.writeFile);
    var unlink = promisify15(fs131.unlink);
    var mkdir2 = promisify15(fs131.mkdir);
    var {
      SHELL_LOCATIONS,
      COMPLETION_DIR
    } = require_constants17();
    var {
      templateFileName,
      completionFileName,
      tabtabFileName
    } = require_filename();
    var scriptFromShell = (shell) => path240.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 readFile5(untildify(filename), "utf8");
      } catch (err2) {
        if (err2.code !== "ENOENT") {
          console.error(
            "Got an error while trying to read from %s file",
            filename,
            err2
          );
          return false;
        }
      }
      return !!filecontent.match(`${line}`);
    };
    var writeLineToFilename = ({ filename, scriptname, name, shell }) => new Promise((resolve4, reject3) => {
      const filepath = untildify(filename);
      debug("Creating directory for %s file", filepath);
      mkdir2(path240.dirname(filepath), { recursive: true }).then(() => {
        const stream2 = fs131.createWriteStream(filepath, { flags: "a" });
        stream2.on("error", reject3);
        stream2.on("finish", () => resolve4());
        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((err2) => {
        console.error("mkdirp ERROR", err2);
        reject3(err2);
      });
    });
    var writeToShellConfig = async ({ location, name, shell }) => {
      const scriptname = path240.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 = path240.join(
        COMPLETION_DIR,
        shell,
        tabtabFileName(shell)
      );
      const scriptname = path240.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 readFile5(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(
        path240.join(COMPLETION_DIR, shell, completionFileName(name, shell))
      );
      try {
        const filecontent = await getCompletionScript2({ name, completer, shell });
        debug("Writing completion script to", filename);
        await mkdir2(path240.dirname(filename), { recursive: true });
        await writeFile3(filename, filecontent);
        console.log("=> Wrote completion script to %s file", filename);
      } catch (err2) {
        console.error("ERROR:", err2);
      }
    };
    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 readFile5(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, index2) => {
        const match = line.match(sourceLine1) ?? line.match(sourceLine2);
        if (match) {
          lineIndex = index2;
        } else if (lineIndex + 3 <= index2) {
          lineIndex = -1;
        }
        return lineIndex === -1 ? line : "";
      }).map((line, index2, array) => {
        const next2 = array[index2 + 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(
        path240.join(COMPLETION_DIR, shell, completionFileName(name, shell))
      );
      if (await exists(completionScript)) {
        await unlink(completionScript);
        console.log("=> Removed completion script (%s)", completionScript);
      }
      const tabtabScript = untildify(
        path240.join(
          COMPLETION_DIR,
          shell,
          tabtabFileName(shell)
        )
      );
      await removeLinesFromFilename(tabtabScript, name);
      const isEmpty4 = (await readFile5(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
    };
  }
});

// ../../../../../setup-pnpm/store/v11/links/@pnpm/tabtab/0.5.4/80735727a3a4989293fd41d5168ae98f0c302c17b6b67fd4a629d3e0e4c11327/node_modules/@pnpm/tabtab/lib/index.js
var require_lib26 = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@pnpm/tabtab/0.5.4/80735727a3a4989293fd41d5168ae98f0c302c17b6b67fd4a629d3e0e4c11327/node_modules/@pnpm/tabtab/lib/index.js"(exports2, module2) {
    var path240 = __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 = (env4) => {
      if (!env4.SHELL) {
        throw new TypeError("SHELL cannot be empty");
      }
      const shell = path240.basename(env4.SHELL);
      if (!isShellSupported2(shell)) {
        const supportedValues = SUPPORTED_SHELLS3.map((x3) => `'${x3}'`).join(", ");
        throw new TypeError(`SHELL was set to an invalid value (${env4.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 (err2) {
        console.error("ERROR while uninstalling", err2);
      }
    };
    var parseEnv = (env4) => {
      if (!env4) {
        throw new Error("parseEnv: You must pass in an environment object.");
      }
      debug(
        "Parsing env. CWORD: %s, COMP_POINT: %s, COMP_LINE: %s",
        env4.COMP_CWORD,
        env4.COMP_POINT,
        env4.COMP_LINE
      );
      let cword = Number(env4.COMP_CWORD);
      let point = Number(env4.COMP_POINT);
      const line = env4.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 (!env4.COMP_CWORD || !env4.COMP_POINT || !env4.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 env4 = parseEnv(process.env);
        lines = lines.filter((arg) => arg.indexOf(env4.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
    };
  }
});

// ../../../../../setup-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({
  "../../../../../setup-pnpm/store/v11/links/@/split-cmd/1.1.0/3f9d27442300e1f1f730905e83374cdbde9ad409b74d058e50e548721f0a27b2/node_modules/split-cmd/index.modern.mjs"() {
  }
});

// ../workspace/root-finder/lib/index.js
import fs97 from "node:fs";
import path169 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 ? path169.join(workspaceManifestDirEnvVar, WORKSPACE_MANIFEST_FILENAME2) : any([WORKSPACE_MANIFEST_FILENAME2, ...INVALID_WORKSPACE_MANIFEST_FILENAME], { cwd: await getRealPath(cwd) });
  if (workspaceManifestLocation && path169.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 && path169.dirname(workspaceManifestLocation);
}
async function getRealPath(path240) {
  return new Promise((resolve4) => {
    fs97.realpath.native(path240, function(err2, resolvedPath) {
      resolve4(err2 !== null ? path240 : resolvedPath);
    });
  });
}
var WORKSPACE_DIR_ENV_VAR, WORKSPACE_MANIFEST_FILENAME2, INVALID_WORKSPACE_MANIFEST_FILENAME;
var init_lib147 = __esm({
  "../workspace/root-finder/lib/index.js"() {
    "use strict";
    init_lib2();
    init_find2();
    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"
    ];
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/abbrev/1.1.1/cf72007512c1bd439c4ca860661dd1303b3842cecfcc579eb6350b948982855c/node_modules/abbrev/abbrev.js
var require_abbrev = __commonJS({
  "../../../../../setup-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 i4 = 0, l = list2.length, args = []; i4 < l; i4++) {
        args[i4] = typeof list2[i4] === "string" ? list2[i4] : String(list2[i4]);
      }
      args = args.sort(lexSort);
      var abbrevs = {}, prev = "";
      for (var i4 = 0, l = args.length; i4 < l; i4++) {
        var current = args[i4], next2 = args[i4 + 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;
    }
  }
});

// ../../../../../setup-pnpm/store/v11/links/@pnpm/nopt/0.3.1/21583819d7d55a8477778d38daf7443140d483b22ad6063ba4ff9f481d01b43a/node_modules/@pnpm/nopt/lib/nopt.js
var require_nopt = __commonJS({
  "../../../../../setup-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 path240 = __require("path");
    var Stream = __require("stream").Stream;
    var abbrev = require_abbrev();
    var os20 = __require("os");
    URL.parse ??= (input, base) => {
      try {
        const url8 = new URL(input, base);
        return url8;
      } catch {
        return null;
      }
    };
    module2.exports = exports2 = nopt3;
    exports2.clean = clean2;
    exports2.typeDefs = {
      String: { type: String, validate: validateString },
      Boolean: { type: Boolean, validate: validateBoolean },
      url: { type: url7, validate: validateUrl },
      Number: { type: Number, validate: validateNumber },
      path: { type: path240, validate: validatePath },
      Stream: { type: Stream, validate: validateStream2 },
      Date: { type: Date, validate: validateDate }
    };
    function nopt3(types3, shorthands21, args, slice4, opts3) {
      args = args || process.argv;
      types3 = types3 || {};
      shorthands21 = shorthands21 || {};
      if (typeof slice4 !== "number") slice4 = 2;
      debug(types3, shorthands21, args, slice4);
      args = args.slice(slice4);
      var data = {}, key, argv2 = {
        remain: [],
        cooked: args,
        original: args.slice(0)
      };
      parse12(args, data, argv2.remain, types3, shorthands21, opts3);
      clean2(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 clean2(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 d3 = {};
          d3[k2] = val2;
          debug("prevalidated val", d3, val2, types3[k2]);
          if (!validate2(d3, 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", d3, val2, types3[k2]);
          return d3[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 = os20.homedir();
      if (home && val.match(homePattern)) {
        data[k2] = path240.resolve(home, val.substr(2));
      } else {
        data[k2] = path240.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 i4 = 0, l = type4.length; i4 < l; i4++) {
          if (type4[i4] === Array) continue;
          if (validate2(data, k2, val, type4[i4], 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 i4 = 0, l = types3.length; i4 < l; i4++) {
        debug("test type %j %j %j", k2, val, types3[i4]);
        var t2 = typeDefs[types3[i4]];
        if (t2 && (type4 && type4.name && t2.type && t2.type.name ? type4.name === t2.type.name : type4 === t2.type)) {
          var d3 = {};
          ok = false !== t2.validate(d3, k2, val);
          val = d3[k2];
          if (ok) {
            data[k2] = val;
            break;
          }
        }
      }
      debug("OK? %j (%j %j %j)", ok, k2, val, types3[i4]);
      if (!ok) delete data[k2];
      return ok;
    }
    function parse12(args, data, remain, types3, shorthands21, opts3) {
      debug("parse", args, data, remain);
      var escapeArgs = new Set(opts3 && opts3.escapeArgs ? opts3.escapeArgs : []);
      var key = null, abbrevs = abbrev(Object.keys(types3)), shortAbbr = abbrev(Object.keys(shorthands21));
      for (var i4 = 0; i4 < args.length; i4++) {
        var arg = args[i4];
        debug("arg", arg);
        if (arg.match(/^-{2,}$/)) {
          remain.push.apply(remain, args.slice(i4 + 1));
          args[i4] = "--";
          break;
        }
        if (escapeArgs.has(arg)) {
          remain.push.apply(remain, args.slice(i4));
          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(i4, 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, [i4, 1].concat(shRes));
            if (arg !== shRes[0]) {
              i4--;
              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[i4 + 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;
              i4++;
            }
            if (isTypeArray && la) {
              if (~argType.indexOf(la)) {
                val = la;
                i4++;
              } else if (la === "null" && ~argType.indexOf(null)) {
                val = null;
                i4++;
              } else if (!la.match(/^-{2,}[^-]/) && !isNaN(la) && ~argType.indexOf(Number)) {
                val = +la;
                i4++;
              } else if (!la.match(/^-[^-]/) && ~argType.indexOf(String)) {
                val = la;
                i4++;
              }
            }
            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 = "";
              i4--;
            }
          }
          if (la && la.match(/^-{2,}$/)) {
            la = void 0;
            i4--;
          }
          val = la === void 0 ? true : la;
          if (isArray) (data[arg] = data[arg] || []).push(val);
          else data[arg] = val;
          i4++;
          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" || input.lastOption === "-F") {
      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_lib42();
    init_lib147();
    init_lib43();
    init_getOptionType();
    init_optionTypesToCompletions();
  }
});

// ../cli/commands/lib/completion/completionServer.js
function createCompletionServer(opts3) {
  return async () => {
    const shell = (0, import_tabtab2.getShellFromEnv)(process.env);
    const env4 = import_tabtab.default.parseEnv(process.env);
    if (!env4.complete)
      return;
    const inputArgv = t(stripPartialWord(env4)).slice(1);
    if (inputArgv.includes("--"))
      return;
    const { params, options, cmd } = await opts3.parseCliArgs(inputArgv);
    import_tabtab.default.log(await complete(opts3, {
      cmd,
      currentTypedWordType: currentTypedWordType(env4),
      lastOption: getLastOption(env4),
      options,
      params
    }), shell);
  };
}
function stripPartialWord(env4) {
  if (env4.lastPartial.length > 0) {
    return env4.partial.slice(0, -env4.lastPartial.length);
  }
  return env4.partial;
}
var import_tabtab, import_tabtab2;
var init_completionServer = __esm({
  "../cli/commands/lib/completion/completionServer.js"() {
    "use strict";
    import_tabtab = __toESM(require_lib26(), 1);
    import_tabtab2 = __toESM(require_lib26(), 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_lib26(), 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 handler83(_opts, params) {
    const shell = getShellFromParams(params);
    const output = await (0, import_tabtab4.getCompletionScript)({ name: PNPM_COMMAND, completer: PNPM_COMMAND, shell });
    ctx.log(registerShortAlias(output, shell));
  };
}
function registerShortAlias(output, shell) {
  switch (shell) {
    case "bash":
      return output.replace(`complete -o default -F _${PNPM_COMMAND}_completion ${PNPM_COMMAND}`, `complete -o default -F _${PNPM_COMMAND}_completion ${PNPM_COMMAND} ${PNPM_SHORT_ALIAS}`);
    case "fish":
      return output.replace(`complete -f -d '${PNPM_COMMAND}' -c ${PNPM_COMMAND} -a "(_${PNPM_COMMAND}_completion)"`, `complete -f -d '${PNPM_COMMAND}' -c ${PNPM_COMMAND} -a "(_${PNPM_COMMAND}_completion)"
complete -f -d '${PNPM_COMMAND}' -c ${PNPM_SHORT_ALIAS} -a "(_${PNPM_COMMAND}_completion)"`);
    case "pwsh":
      return output.replace(`Register-ArgumentCompleter -CommandName '${PNPM_COMMAND}' -ScriptBlock`, `Register-ArgumentCompleter -CommandName '${PNPM_COMMAND}','${PNPM_SHORT_ALIAS}' -ScriptBlock`);
    case "zsh":
      return output.replace(`#compdef ${PNPM_COMMAND}`, `#compdef ${PNPM_COMMAND} ${PNPM_SHORT_ALIAS}`).replace(`compdef _${PNPM_COMMAND}_completion ${PNPM_COMMAND}`, `compdef _${PNPM_COMMAND}_completion ${PNPM_COMMAND} ${PNPM_SHORT_ALIAS}`);
  }
}
var import_tabtab4, commandNames17, skipPackageManagerCheck, rcOptionsTypes17, cliOptionsTypes16, PNPM_COMMAND, PNPM_SHORT_ALIAS, handler17;
var init_generateCompletion = __esm({
  "../cli/commands/lib/completion/generateCompletion.js"() {
    "use strict";
    import_tabtab4 = __toESM(require_lib26(), 1);
    init_lib66();
    init_getShell();
    commandNames17 = ["completion"];
    skipPackageManagerCheck = true;
    rcOptionsTypes17 = () => ({});
    cliOptionsTypes16 = () => ({});
    PNPM_COMMAND = "pnpm";
    PNPM_SHORT_ALIAS = "pn";
    handler17 = createCompletionGenerator({
      log: console.log
    });
  }
});

// ../cli/commands/lib/index.js
var init_lib148 = __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 parse12 of parsers) {
        const parseResult = parse12(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_parse2 = __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 path240 = Array.from(propertyPath);
  if (path240.length === 0)
    return;
  rejectUnsafeKeys(path240);
  let obj = object;
  for (let i4 = 0; i4 < path240.length - 1; i4++) {
    const key = path240[i4];
    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 = path240[path240.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_parse2();
    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_get2 = __esm({
  "../object/property-path/lib/get.js"() {
    "use strict";
    init_parse2();
    getObjectValueByPropertyPathString = (object, propertyPath) => getObjectValueByPropertyPath(object, parsePropertyPath(propertyPath));
  }
});

// ../object/property-path/lib/set.js
function setObjectValueByPropertyPath(object, propertyPath, value) {
  const path240 = Array.from(propertyPath);
  if (path240.length === 0)
    throw new EmptyPropertyPathError();
  rejectUnsafeKeys(path240);
  let obj = object;
  for (let i4 = 0; i4 < path240.length - 1; i4++) {
    const key = path240[i4];
    const current = obj[key];
    const needsArray = typeof path240[i4 + 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, path240[path240.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_parse2();
    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_lib149 = __esm({
  "../object/property-path/lib/index.js"() {
    "use strict";
    init_delete();
    init_get2();
    init_parse2();
    init_set2();
    init_token();
    init_unsafeKeys();
  }
});

// ../config/commands/lib/protectedSettings.js
function censorProtectedSettings(config2) {
  config2 = { ...config2 };
  for (const key in config2) {
    if (isSettingProtected(key)) {
      config2[key] = "(protected)";
    }
  }
  return config2;
}
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(config2, explicitlySetKeys) {
  const result2 = {};
  for (const kebabKey of Object.keys(types2)) {
    const camelKey = camelCase(kebabKey, { locale: "en-US" });
    if (!explicitlySetKeys.has(camelKey))
      continue;
    const value = config2[camelKey];
    if (value !== void 0) {
      result2[camelKey] = value;
    }
  }
  for (const [key, value] of Object.entries(config2)) {
    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(config2.authConfig)) {
    if (!(key in result2)) {
      result2[key] = value;
    }
  }
  if (config2.userAgent) {
    result2.userAgent = config2.userAgent;
  }
  return censorProtectedSettings(sortDirectKeys(result2));
}
var NON_SETTING_CONFIG_KEYS;
var init_configToRecord = __esm({
  "../config/commands/lib/configToRecord.js"() {
    "use strict";
    init_lib64();
    init_lib78();
    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_lib149();
    init_camelcase();
  }
});

// ../config/commands/lib/configGet.js
function configGet(opts3, key) {
  const isScopedKey = key.startsWith("@");
  const configResult = lookupConfig(opts3, key, isScopedKey) ?? (isPropertyPath(key) ? lookupByPropertyPath(opts3, key) : { value: void 0 });
  const output = displayConfig(configResult?.value, opts3);
  return { output, exitCode: 0 };
}
function lookupConfig(opts3, key, isScopedKey) {
  if (isScopedKey) {
    if (key.endsWith(":registry")) {
      const scope = key.slice(0, key.length - ":registry".length);
      const merged = opts3._config.registries?.[scope];
      if (merged !== void 0) {
        return { value: merged };
      }
    }
    return { value: opts3.authConfig[key] };
  }
  if (key === "globalconfig") {
    return { value: getGlobalConfigPath(opts3.configDir) };
  }
  const kebabKey = isCamelCase(key) ? (0, import_lodash4.default)(key) : key;
  if (Object.hasOwn(types2, kebabKey)) {
    const camelKey2 = camelCase(kebabKey, { locale: "en-US" });
    const explicit = opts3._context.explicitlySetKeys;
    if (!explicit || explicit.has(camelKey2)) {
      return { value: opts3._config[camelKey2] };
    }
    if (kebabKey in opts3.authConfig) {
      return { value: opts3.authConfig[kebabKey] };
    }
    return { value: void 0 };
  }
  if (isIniConfigKey(key)) {
    return { value: opts3.authConfig[key] };
  }
  const camelKey = camelCase(key, { locale: "en-US" });
  const record = configToRecord(opts3._config, opts3._context.explicitlySetKeys);
  if (Object.hasOwn(record, camelKey)) {
    return { value: record[camelKey] };
  }
  return void 0;
}
function lookupByPropertyPath(opts3, propertyPath) {
  const parsedPropertyPath = Array.from(parseConfigPropertyPath(propertyPath));
  if (parsedPropertyPath.length === 0) {
    return { value: configToRecord(opts3._config, opts3._context.explicitlySetKeys) };
  }
  const record = configToRecord(opts3._config, opts3._context.explicitlySetKeys);
  return {
    value: getObjectValueByPropertyPath(record, parsedPropertyPath)
  };
}
function isPropertyPath(key) {
  return key === "" || key.includes(".") || key.includes("[");
}
function displayConfig(config2, opts3) {
  if (Boolean(opts3.json) || Array.isArray(config2)) {
    return JSON.stringify(config2, void 0, 2);
  }
  if (typeof config2 === "object" && config2 != null) {
    return JSON.stringify(config2, void 0, 2);
  }
  return String(config2);
}
var import_lodash4;
var init_configGet = __esm({
  "../config/commands/lib/configGet.js"() {
    "use strict";
    init_lib64();
    init_lib149();
    init_lib62();
    init_camelcase();
    import_lodash4 = __toESM(require_lodash2(), 1);
    init_configToRecord();
    init_parseConfigPropertyPath();
  }
});

// ../config/commands/lib/configList.js
async function configList(opts3) {
  return JSON.stringify(configToRecord(opts3._config, opts3._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, opts3) {
  key = (0, import_lodash5.default)(key);
  const configDir = opts3.global ? opts3.configDir : opts3.dir;
  if (isIniConfigKey(key)) {
    const configFileName = opts3.global ? "auth.ini" : ".npmrc";
    return { configDir, configFileName };
  } else {
    const configFileName = opts3.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_lib64();
    init_lib();
    import_lodash5 = __toESM(require_lodash2(), 1);
  }
});

// ../config/commands/lib/configSet.js
import path170 from "node:path";
import util50 from "node:util";
async function configSet(opts3, key, valueParam) {
  let isAuthSetting = isIniConfigKey(key);
  if (!isAuthSetting) {
    key = validateSimpleKey(key);
    isAuthSetting = isIniConfigKey(key);
  }
  let value = valueParam;
  if (valueParam != null && opts3.json) {
    value = JSON.parse(valueParam);
  }
  if (isAuthSetting) {
    const configPath2 = opts3.global ? path170.join(opts3.configDir, "auth.ini") : path170.join(opts3.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, opts3);
  const configPath = path170.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) || isConfigFileKey(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 (err2) {
    if (util50.types.isNativeError(err2) && "code" in err2 && err2.code === "ENOENT")
      return {};
    throw err2;
  }
}
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_lib64();
    init_lib();
    init_lib2();
    init_lib149();
    init_lib62();
    init_lib101();
    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(opts3, params) {
  if (params.length === 0) {
    throw new PnpmError("CONFIG_NO_SUBCOMMAND", "Please specify the subcommand", {
      hint: help18()
    });
  }
  if (opts3.location) {
    opts3.global = opts3.location === "global";
  } else if (opts3.cliOptions["global"] == null) {
    opts3.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(opts3, key, value ?? "");
      } else {
        return configSet(opts3, params[1], null);
      }
    }
    case "get": {
      if (params[1]) {
        return configGet(opts3, params[1]);
      } else {
        return configList(opts3);
      }
    }
    case "list": {
      return configList(opts3);
    }
    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_lib41();
    init_lib2();
    init_lib66();
    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(opts3, params) {
  return handler18(opts3, ["get", ...params]);
}
var rcOptionsTypes19, cliOptionsTypes18, help19, commandNames19;
var init_get3 = __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(opts3, params) {
  return handler18(opts3, ["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_lib150 = __esm({
  "../config/commands/lib/index.js"() {
    "use strict";
    init_config2();
    init_get3();
    init_set3();
  }
});

// ../deps/compliance/audit/lib/lockfileToAuditIndex.js
function lockfileToAuditRequest(lockfile, opts3) {
  const importerIds = Object.keys(lockfile.importers);
  const importerWalkers = lockfileWalkerGroupImporterSteps(lockfile, importerIds, { include: opts3.include });
  const depTypes = opts3.depTypes ?? detectDepTypes(lockfile);
  const optionalOnly = opts3.optionalOnly ?? collectOptionalOnlyDepPaths(lockfile, opts3.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) => {
    return (rootStep) => {
      const stack = [{ dependencies: rootStep.dependencies, next: 0 }];
      while (stack.length > 0) {
        const frame = stack[stack.length - 1];
        if (frame.next >= frame.dependencies.length) {
          stack.pop();
          continue;
        }
        const { depPath, pkgSnapshot, next: next2 } = frame.dependencies[frame.next++];
        const { name, version: version2 } = nameVerFromPkgSnapshot(depPath, pkgSnapshot);
        if (version2) {
          registerOccurrence({
            name,
            version: version2,
            devOnly: graphDepTypes[depPath] === DepType.DevOnly,
            optionalOnly: graphOptionalOnly.has(depPath)
          });
        }
        stack.push({ dependencies: next2().dependencies, next: 0 });
      }
    };
  };
  const visitMain = makeVisitor(depTypes, optionalOnly);
  for (const importerWalker of importerWalkers) {
    visitMain(importerWalker.step);
  }
  if (opts3.envLockfile) {
    const envLockfileObject = envLockfileToLockfileObject(opts3.envLockfile);
    const envDepTypes = detectDepTypes(envLockfileObject);
    const envOptionalOnly = collectOptionalOnlyDepPaths(envLockfileObject, opts3.include);
    const visitEnv = makeVisitor(envDepTypes, envOptionalOnly);
    for (const { step: step2 } of lockfileWalkerGroupImporterSteps(envLockfileObject, Object.keys(envLockfileObject.importers), { include: opts3.include })) {
      visitEnv(step2);
    }
  }
  return { request, totalDependencies, dependencies, devDependencies, optionalDependencies };
}
function buildAuditPathIndex(lockfile, vulnerableNames, opts3) {
  const paths3 = /* @__PURE__ */ Object.create(null);
  const depTypes = opts3.depTypes ?? detectDepTypes(lockfile);
  const optionalOnly = opts3.optionalOnly ?? collectOptionalOnlyDepPaths(lockfile, opts3.include);
  walkForPaths({
    lockfile,
    vulnerableNames,
    paths: paths3,
    depTypes,
    optionalOnly,
    include: opts3.include,
    importerSegmentOf: (importerId) => importerId.replace(/\//g, "__")
  });
  if (opts3.envLockfile) {
    const envLockfileObject = envLockfileToLockfileObject(opts3.envLockfile);
    walkForPaths({
      lockfile: envLockfileObject,
      vulnerableNames,
      paths: paths3,
      depTypes: detectDepTypes(envLockfileObject),
      optionalOnly: collectOptionalOnlyDepPaths(envLockfileObject, opts3.include),
      include: opts3.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 reachableVulnerabilities = createReachableVulnerabilitiesGetter(lockfile, vulnerableNames, includeOptDeps);
  const inTrail = /* @__PURE__ */ new Set();
  const stack = [];
  const open3 = (edge, parentTrail) => {
    const reachable = reachableVulnerabilities(edge);
    if (reachable.size === 0 || allReachableVulnerabilitiesSaturated(paths3, reachable, depTypes, optionalOnly))
      return;
    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 trail = { name: resolvedName, parent: parentTrail };
    if (version2 && vulnerableNames.has(resolvedName)) {
      recordPath(paths3, resolvedName, version2, joinTrail(trail), depTypes[edge.depPath] === DepType.DevOnly, optionalOnly.has(edge.depPath));
    }
    if (allReachableVulnerabilitiesSaturated(paths3, reachable, depTypes, optionalOnly))
      return;
    const children = [];
    appendNamedDepPaths(children, pkgSnapshot.dependencies ?? {});
    if (includeOptDeps) {
      appendNamedDepPaths(children, pkgSnapshot.optionalDependencies ?? {});
    }
    inTrail.add(edge.depPath);
    stack.push({ depPath: edge.depPath, trail, children, next: 0 });
  };
  for (const [importerId, importer] of Object.entries(lockfile.importers)) {
    const trail = { name: importerSegmentOf(importerId), parent: null };
    const roots = [];
    if (includeDeps)
      appendNamedDepPaths(roots, importer.dependencies ?? {});
    if (includeDevDeps)
      appendNamedDepPaths(roots, importer.devDependencies ?? {});
    if (includeOptDeps)
      appendNamedDepPaths(roots, importer.optionalDependencies ?? {});
    for (const root of roots) {
      open3(root, trail);
      while (stack.length > 0) {
        const frame = stack[stack.length - 1];
        if (frame.next < frame.children.length) {
          open3(frame.children[frame.next++], frame.trail);
        } else {
          inTrail.delete(frame.depPath);
          stack.pop();
        }
      }
    }
  }
}
function joinTrail(node) {
  const parts = [];
  let current = node;
  while (current != null) {
    parts.push(current.name);
    current = current.parent;
  }
  parts.reverse();
  return parts.join(">");
}
function createReachableVulnerabilitiesGetter(lockfile, vulnerableNames, includeOptDeps) {
  const packages = lockfile.packages ?? {};
  const memo = /* @__PURE__ */ new Map();
  const partial = /* @__PURE__ */ new Map();
  const index2 = /* @__PURE__ */ new Map();
  const lowlink = /* @__PURE__ */ new Map();
  const onStack = /* @__PURE__ */ new Set();
  const sccStack = [];
  let counter = 0;
  const buildScc = (rootEdge) => {
    const work = [];
    const pushFrame = (edge) => {
      index2.set(edge.depPath, counter);
      lowlink.set(edge.depPath, counter);
      counter++;
      sccStack.push(edge.depPath);
      onStack.add(edge.depPath);
      const pkgSnapshot = packages[edge.depPath];
      const own = /* @__PURE__ */ new Set();
      const children = [];
      if (pkgSnapshot != null) {
        const { name, version: version2 } = nameVerFromPkgSnapshot(edge.depPath, pkgSnapshot);
        const resolvedName = name ?? edge.name;
        if (version2 && vulnerableNames.has(resolvedName)) {
          own.add(vulnerabilityKey(resolvedName, version2, edge.depPath));
        }
        appendNamedDepPaths(children, pkgSnapshot.dependencies ?? {});
        if (includeOptDeps) {
          appendNamedDepPaths(children, pkgSnapshot.optionalDependencies ?? {});
        }
      }
      partial.set(edge.depPath, own);
      work.push({ edge, own, children, next: 0 });
    };
    pushFrame(rootEdge);
    while (work.length > 0) {
      const frame = work[work.length - 1];
      if (frame.next < frame.children.length) {
        const child = frame.children[frame.next++];
        if (!index2.has(child.depPath)) {
          pushFrame(child);
          continue;
        }
        if (onStack.has(child.depPath)) {
          lowlink.set(frame.edge.depPath, Math.min(lowlink.get(frame.edge.depPath), index2.get(child.depPath)));
        }
        const childReachable = memo.get(child.depPath);
        if (childReachable)
          addAll(frame.own, childReachable);
        continue;
      }
      const edge = frame.edge;
      if (lowlink.get(edge.depPath) === index2.get(edge.depPath)) {
        const members = [];
        let shared;
        let member;
        do {
          member = sccStack.pop();
          onStack.delete(member);
          members.push(member);
          const own = partial.get(member);
          partial.delete(member);
          if (shared === void 0) {
            shared = own;
          } else {
            addAll(shared, own);
          }
        } while (member !== edge.depPath);
        for (const m of members) {
          memo.set(m, shared);
        }
      }
      work.pop();
      const parent = work[work.length - 1];
      if (parent != null) {
        lowlink.set(parent.edge.depPath, Math.min(lowlink.get(parent.edge.depPath), lowlink.get(edge.depPath)));
        const childReachable = memo.get(edge.depPath);
        if (childReachable)
          addAll(parent.own, childReachable);
      }
    }
  };
  return (edge) => {
    if (!index2.has(edge.depPath))
      buildScc(edge);
    const reachable = memo.get(edge.depPath);
    if (reachable == null) {
      throw new Error(`Reachable vulnerabilities were not computed for ${edge.depPath}`);
    }
    return reachable;
  };
}
function allReachableVulnerabilitiesSaturated(paths3, reachable, depTypes, optionalOnly) {
  for (const key of reachable) {
    const { name, version: version2, depPath } = parseVulnerabilityKey(key);
    const info = paths3[name]?.get(version2);
    if (!info || info.paths.length < MAX_PATHS_PER_FINDING)
      return false;
    if (depTypes[depPath] !== DepType.DevOnly && info.dev)
      return false;
    if (!optionalOnly.has(depPath) && info.optional)
      return false;
  }
  return true;
}
function vulnerabilityKey(name, version2, depPath) {
  return `${name}\0${version2}\0${depPath}`;
}
function parseVulnerabilityKey(key) {
  const [name, version2, depPath] = key.split("\0");
  return { name, version: version2, depPath };
}
function addAll(target2, source) {
  for (const value of source) {
    target2.add(value);
  }
}
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 appendNamedDepPaths(target2, deps) {
  for (const [alias, ref] of Object.entries(deps)) {
    const depPath = refToRelative(ref, alias);
    if (depPath != null)
      target2.push({ name: alias, depPath });
  }
}
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 ?? {};
  const stack = [];
  for (const depPath of depPaths)
    stack.push(depPath);
  while (stack.length > 0) {
    const depPath = stack.pop();
    if (seen.has(depPath))
      continue;
    seen.add(depPath);
    const snapshot = packages[depPath];
    if (!snapshot)
      continue;
    for (const child of resolvedDepsToDepPaths3(snapshot.dependencies ?? {}))
      stack.push(child);
    if (includeOptionalEdges) {
      for (const child of resolvedDepsToDepPaths3(snapshot.optionalDependencies ?? {}))
        stack.push(child);
    }
  }
}
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_lib68();
    init_lib127();
    init_lib80();
    init_lib73();
    init_lib90();
    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, opts3) {
  const depTypes = detectDepTypes(lockfile);
  const optionalOnly = collectOptionalOnlyDepPaths(lockfile, opts3.include);
  const auditRequest = lockfileToAuditRequest(lockfile, { envLockfile: opts3.envLockfile, include: opts3.include, depTypes, optionalOnly });
  const registry = opts3.registry.endsWith("/") ? opts3.registry : `${opts3.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: opts3.dispatcherOptions ?? {},
    body: JSON.stringify(auditRequest.request),
    headers: requestHeaders,
    method: "POST",
    retry: opts3.retry,
    timeout: opts3.timeout
  });
  if (res.status === 200) {
    const rawBody = await res.text();
    let body;
    try {
      body = JSON.parse(rawBody);
    } catch (err2) {
      const reason = err2 instanceof Error ? err2.message : String(err2);
      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: opts3.envLockfile, include: opts3.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_semver49.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_semver49.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_semver49, KNOWN_SEVERITIES, AuditEndpointNotExistsError;
var init_lib151 = __esm({
  "../deps/compliance/audit/lib/index.js"() {
    "use strict";
    init_lib2();
    init_lib127();
    init_lib23();
    import_semver49 = __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(opts3) {
  const lockfileDir = opts3.lockfileDir ?? opts3.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(opts3.workspaceDir ?? lockfileDir);
  return {
    envLockfile,
    include: {
      dependencies: opts3.production !== false,
      devDependencies: opts3.dev !== false,
      optionalDependencies: opts3.optional !== false
    },
    lockfile,
    lockfileDir
  };
}
function createAuditNetworkOptions(opts3) {
  return {
    ca: opts3.ca,
    cert: opts3.cert,
    configByUri: opts3.configByUri,
    fetchTimeout: opts3.fetchTimeout,
    httpProxy: opts3.httpProxy,
    httpsProxy: opts3.httpsProxy,
    key: opts3.key,
    localAddress: opts3.localAddress,
    maxSockets: opts3.maxSockets,
    noProxy: opts3.noProxy,
    retry: {
      factor: opts3.fetchRetryFactor,
      maxTimeout: opts3.fetchRetryMaxtimeout,
      minTimeout: opts3.fetchRetryMintimeout,
      retries: opts3.fetchRetries
    },
    strictSsl: opts3.strictSsl
  };
}
var init_auditContext = __esm({
  "../deps/compliance/commands/lib/audit/auditContext.js"() {
    "use strict";
    init_lib();
    init_lib2();
    init_lib80();
  }
});

// ../deps/compliance/commands/lib/audit/fix.js
async function fix(auditReport, opts3) {
  const fixableAdvisories = getFixableAdvisories(Object.values(auditReport.advisories), opts3.auditConfig?.ignoreGhsas);
  const vulnOverrides = createOverrides(fixableAdvisories);
  if (Object.values(vulnOverrides).length === 0)
    return { vulnOverrides, addedAgeExcludes: [] };
  const addedAgeExcludes = opts3.minimumReleaseAge ? createMinimumReleaseAgeExcludes(fixableAdvisories) : [];
  await writeSettings({
    updatedOverrides: vulnOverrides,
    addedMinimumReleaseAgeExcludes: addedAgeExcludes.length > 0 ? addedAgeExcludes : void 0,
    rootProjectManifest: opts3.rootProjectManifest,
    rootProjectManifestDir: opts3.rootProjectManifestDir,
    workspaceDir: opts3.workspaceDir ?? opts3.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_semver50.default.minVersion(patchedRange);
  return min ? `^${min.version}` : patchedRange;
}
function createMinimumReleaseAgeExcludes(advisories) {
  const specs = [];
  for (const advisory of advisories) {
    const patchedVersions = advisory.patched_versions;
    if (!patchedVersions)
      continue;
    const minVersion = import_semver50.default.minVersion(patchedVersions);
    if (!minVersion)
      continue;
    specs.push(`${advisory.module_name}@${minVersion.version}`);
  }
  return mergePackageVersionSpecs(specs);
}
var import_semver50;
var init_fix = __esm({
  "../deps/compliance/commands/lib/audit/fix.js"() {
    "use strict";
    init_lib37();
    init_lib102();
    init_lib151();
    init_lib78();
    import_semver50 = __toESM(require_semver2(), 1);
  }
});

// ../deps/compliance/commands/lib/audit/lockfileToPackages.js
function lockfileToPackages(lockfile, opts3) {
  const importerWalkers = lockfileWalkerGroupImporterSteps(lockfile, Object.keys(lockfile.importers), { include: opts3?.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_lib73();
    init_lib90();
  }
});

// ../deps/compliance/commands/lib/audit/fixWithUpdate.js
async function fixWithUpdate(auditReport, opts3) {
  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_semver51.default.Range(vulnerabilityWithRange.vulnerability.versionRange);
          vulnerabilityWithRange.semverRange = semverRange;
        }
        if (import_semver51.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 = opts3.minimumReleaseAge ? createMinimumReleaseAgeExcludes(Object.values(auditReport.advisories)) : [];
  const updateOpts = { ...opts3 };
  if (addedAgeExcludes.length > 0) {
    const existing = updateOpts.minimumReleaseAgeExclude ?? [];
    updateOpts.minimumReleaseAgeExclude = [...existing, ...addedAgeExcludes];
    await writeSettings({
      addedMinimumReleaseAgeExcludes: addedAgeExcludes,
      rootProjectManifest: opts3.rootProjectManifest,
      rootProjectManifestDir: opts3.rootProjectManifestDir,
      workspaceDir: opts3.workspaceDir ?? opts3.rootProjectManifestDir
    });
  }
  await update_exports.handler({
    ...updateOpts,
    packageVulnerabilityAudit
  }, []);
  const lockfileDir = opts3.lockfileDir ?? opts3.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: opts3.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_semver51.default.Range(vulnerability.vulnerability.versionRange);
          vulnerability.semverRange = semverRange;
        }
        if (import_semver51.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_semver51;
var init_fixWithUpdate = __esm({
  "../deps/compliance/commands/lib/audit/fixWithUpdate.js"() {
    "use strict";
    init_lib102();
    init_lib();
    init_lib2();
    init_lib143();
    init_lib80();
    import_semver51 = __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, i4) => {
      if (i4 === 0) {
        return {
          name: rendered[i4],
          message: rendered[i4],
          value: "",
          disabled: true,
          hint: ""
        };
      }
      return {
        name: row.key,
        message: rendered[i4],
        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_source();
    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(opts3) {
  const currentGhsas = (opts3?.auditConfig?.ignoreGhsas ?? []).map(normalizeGhsaId);
  const currentUniqueGhsas = new Set(currentGhsas);
  const advisoriesWithNoResolutions = filterAdvisoriesWithNoResolutions(Object.values(opts3.auditReport.advisories));
  if (opts3.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 (opts3.ignore) {
    for (const ghsa of opts3.ignore) {
      currentUniqueGhsas.add(normalizeGhsaId(ghsa));
    }
  }
  const newIgnoreGhsas = currentUniqueGhsas.size > 0 ? Array.from(currentUniqueGhsas) : void 0;
  const diffGhsas = difference_default(newIgnoreGhsas ?? [], currentGhsas);
  await writeSettings({
    ...opts3,
    updatedSettings: {
      auditConfig: {
        ...opts3.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_lib102();
    init_lib151();
    init_lib2();
    init_es();
  }
});

// ../deps/compliance/commands/lib/audit/signatures.js
async function auditSignatures(opts3) {
  const { envLockfile, include, lockfile } = await loadAuditContext(opts3);
  const auditRequest = lockfileToAuditRequest(lockfile, { envLockfile, include });
  const packages = Object.entries(auditRequest.request).flatMap(([name, versions]) => versions.map((version2) => ({ name, registry: pickRegistryForPackage(opts3.registries, name), version: version2 })));
  if (packages.length === 0) {
    throw new PnpmError("AUDIT_NO_PACKAGES", "No installed packages found to audit");
  }
  const getAuthHeader = createGetAuthHeaderByURI(opts3.configByUri);
  const networkOptions = createAuditNetworkOptions(opts3);
  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: opts3.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: opts3.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_lib41();
    init_lib28();
    init_lib151();
    init_lib136();
    init_lib2();
    init_lib52();
    import_table4 = __toESM(require_src2(), 1);
    init_source();
    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(opts3, 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(opts3);
    }
    throw new PnpmError("AUDIT_UNKNOWN_SUBCOMMAND", `Unknown audit subcommand: ${params[0]}`);
  }
  const { envLockfile, include, lockfile } = await loadAuditContext(opts3);
  const networkOptions = createAuditNetworkOptions(opts3);
  let auditReport;
  const getAuthHeader = createGetAuthHeaderByURI(opts3.configByUri);
  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: opts3.registries.default,
      retry: networkOptions.retry,
      timeout: networkOptions.fetchTimeout
    });
  } catch (err2) {
    if (opts3.ignoreRegistryErrors) {
      return {
        exitCode: 0,
        output: err2.message
      };
    }
    throw err2;
  }
  let fixMethod;
  if (opts3.fix === "update" || opts3.fix === "override") {
    fixMethod = opts3.fix;
  } else if (opts3.fix === true || opts3.interactive && !opts3.fix) {
    fixMethod = DEFAULT_FIX_METHOD;
  } else if (!opts3.fix) {
    fixMethod = void 0;
  } else {
    throw new PnpmError("INVALID_FIX_OPTION", `Invalid value for --fix: ${opts3.fix}. Should be one of "override" or "update"`);
  }
  if (fixMethod != null) {
    let filteredAuditReport = {
      ...auditReport,
      advisories: filterAdvisoriesForFix(auditReport.advisories, opts3)
    };
    if (opts3.interactive) {
      filteredAuditReport = await interactiveAuditFix(filteredAuditReport);
    }
    if (fixMethod === "update") {
      const result2 = await fixWithUpdate(filteredAuditReport, { ...opts3, 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, opts3);
    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 (opts3.ignore !== void 0 || opts3.ignoreUnfixable) {
    const newIgnores = await ignore({
      auditConfig: opts3.auditConfig,
      auditReport,
      ignore: opts3.ignore,
      ignoreUnfixable: opts3.ignoreUnfixable === true,
      dir: opts3.dir,
      rootProjectManifest: opts3.rootProjectManifest,
      rootProjectManifestDir: opts3.rootProjectManifestDir,
      workspaceDir: opts3.workspaceDir ?? opts3.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 = opts3.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[opts3.auditLevel ?? "low"];
  const advisoryEntries = Object.entries(auditReport.advisories).filter(([, { severity }]) => AUDIT_LEVEL_NUMBER[severity] >= auditLevel);
  if (opts3.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, opts3) {
  const auditLevel = AUDIT_LEVEL_NUMBER[opts3.auditLevel ?? "low"];
  const ignoreGhsas = opts3.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 choiceGroups = getAuditFixChoices(Object.values(auditReport.advisories));
  if (choiceGroups.length === 0) {
    return auditReport;
  }
  const flatChoices = [];
  for (const group of choiceGroups) {
    flatChoices.push(new Separator(source_default.bold(`\u2500\u2500 ${group.message} \u2500\u2500`)));
    for (const choice of group.choices) {
      if (choice.disabled) {
        flatChoices.push(new Separator(`  ${choice.message ?? choice.name}`));
      } else {
        flatChoices.push({
          name: choice.message,
          value: choice.value,
          // Same shape as the update prompt: `name` is the rendered table
          // row, but the post-submission line uses `short` per choice.
          // Without this, every selected row's full table dump is comma-
          // joined back to stdout.
          short: choice.value
        });
      }
    }
  }
  const 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)

Enter to start fixing. Ctrl-c to cancel.`;
  let selectedKeys;
  try {
    selectedKeys = await dist_default4({
      choices: flatChoices,
      pageSize: interactivePromptPageSize(),
      message,
      required: true,
      validate: (values) => {
        if (values.length === 0) {
          return "You must choose at least one vulnerability.";
        }
        return true;
      },
      theme: {
        icon: { checked: "\u25CF", unchecked: "\u25CB", cursor: "\u276F" },
        style: {
          highlight: (text) => text
        },
        keybindings: ["vim"]
      }
    });
  } catch (err2) {
    if (err2 instanceof Error && err2.name === "ExitPromptError") {
      globalInfo("Audit fix canceled");
      process.exit(0);
    }
    throw err2;
  }
  const selectedKeySet = new Set(selectedKeys);
  const selectedAdvisories = Object.fromEntries(Object.entries(auditReport.advisories).filter(([, advisory]) => selectedKeySet.has(`${advisory.module_name}@${advisory.vulnerable_versions}`)));
  return { ...auditReport, advisories: selectedAdvisories };
}
var import_table5, 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_dist14();
    init_lib41();
    init_lib64();
    init_lib151();
    init_lib2();
    init_lib143();
    init_lib3();
    init_lib52();
    import_table5 = __toESM(require_src2(), 1);
    init_source();
    init_es();
    init_lib66();
    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 readFile3 } from "node:fs/promises";
import path171 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 readFile3(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 = path171.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_lib152 = __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 path172 from "node:path";
async function readPackageFileMap(packageResolution, packageId, opts3) {
  if (packageResolution.type === "directory") {
    const localInfo = await fetchFromDir(path172.join(opts3.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 = opts3.storeIndex.get(pkgIndexFilePath);
  if (!pkgFilesIndex) {
    const err2 = new Error(`ENOENT: package index not found for '${pkgIndexFilePath}'`);
    err2.code = "ENOENT";
    err2.path = pkgIndexFilePath;
    throw err2;
  }
  const { files: indexFiles } = pkgFilesIndex;
  const files = /* @__PURE__ */ new Map();
  for (const [name, info] of indexFiles) {
    files.set(name, getFilePathByModeInCafs(opts3.storeDir, info.digest, info.mode));
  }
  return files;
}
var init_lib153 = __esm({
  "../store/pkg-finder/lib/index.js"() {
    "use strict";
    init_lib19();
    init_lib83();
    init_lib30();
  }
});

// ../deps/compliance/license-scanner/lib/getPkgInfo.js
import path173 from "node:path";
async function getPkgInfo3(pkg, opts3) {
  const packageResolution = pkgSnapshotToResolution(pkg.depPath, pkg.snapshot, pkg.registries);
  let files;
  try {
    const result2 = await readPackageFileMap(packageResolution, pkg.id, {
      storeDir: opts3.storeDir,
      storeIndex: opts3.storeIndex,
      lockfileDir: opts3.dir,
      virtualStoreDirMaxLength: opts3.virtualStoreDirMaxLength
    });
    if (!result2) {
      throw new PnpmError("UNSUPPORTED_PACKAGE_TYPE", `Unsupported package resolution type for ${pkg.id}`);
    }
    files = result2;
  } catch (err2) {
    if (err2.code === "ENOENT") {
      throw new PnpmError("MISSING_PACKAGE_INDEX_FILE", `Failed to find package index file for ${pkg.id} (at ${err2.path}), please consider running 'pnpm install'`);
    }
    throw err2;
  }
  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 readPackageJson(manifestPath);
  const modulesDir = opts3.modulesDir ?? "node_modules";
  const virtualStoreDir = pathAbsolute(opts3.virtualStoreDir ?? path173.join(modulesDir, ".pnpm"), opts3.dir);
  const packageModulePath = path173.join(virtualStoreDir, depPathToFilename(pkg.depPath, opts3.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_lib152();
    init_lib68();
    init_lib2();
    init_lib73();
    init_lib5();
    init_lib153();
    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 [depPath, dep];
  }))).filter(Boolean));
  return dependencies;
}
async function lockfileToLicenseNodeTree(lockfile, opts3) {
  const importerWalkers = lockfileWalkerGroupImporterSteps(lockfile, opts3.includedImporterIds ?? Object.keys(lockfile.importers), { include: opts3?.include });
  const depTypes = detectDepTypes(lockfile);
  const storeIndex = new StoreIndex(opts3.storeDir);
  const dependencies = Object.fromEntries(await Promise.all(importerWalkers.map(async (importerWalker) => {
    const importerDeps = await lockfileToLicenseNode(importerWalker.step, {
      storeDir: opts3.storeDir,
      storeIndex,
      virtualStoreDir: opts3.virtualStoreDir,
      virtualStoreDirMaxLength: opts3.virtualStoreDirMaxLength,
      modulesDir: opts3.modulesDir,
      dir: opts3.dir,
      registries: opts3.registries,
      supportedArchitectures: opts3.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(licenseNodes) {
  return Object.fromEntries(Object.entries(licenseNodes).map(([key, licenseNode]) => [licenseNode.name ?? key, licenseNode.version]));
}
var init_lockfileToLicenseNodeTree = __esm({
  "../deps/compliance/license-scanner/lib/lockfileToLicenseNodeTree.js"() {
    "use strict";
    init_lib40();
    init_lib127();
    init_lib73();
    init_lib90();
    init_lib30();
    init_getPkgInfo3();
  }
});

// ../deps/compliance/license-scanner/lib/licenses.js
function getDependenciesFromLicenseNode(licenseNode) {
  const dependencies = [];
  appendDependenciesFromLicenseNode(licenseNode, dependencies);
  return dependencies;
}
function appendDependenciesFromLicenseNode(licenseNode, dependencies) {
  for (const dependencyNode of Object.values(licenseNode.dependencies ?? {})) {
    appendDependenciesFromLicenseNode(dependencyNode, dependencies);
    dependencies.push({
      belongsTo: dependencyNode.dev ? "devDependencies" : "dependencies",
      version: dependencyNode.version,
      name: dependencyNode.name,
      license: dependencyNode.license,
      licenseContents: dependencyNode.licenseContents,
      author: dependencyNode.author,
      homepage: dependencyNode.homepage,
      description: dependencyNode.description,
      repository: dependencyNode.repository,
      path: dependencyNode.dir
    });
  }
}
async function findDependencyLicenses(opts3) {
  if (opts3.wantedLockfile == null) {
    throw new PnpmError("LICENSES_NO_LOCKFILE", `No lockfile in directory "${opts3.lockfileDir}". Run \`pnpm install\` to generate one.`);
  }
  const depTypes = detectDepTypes(opts3.wantedLockfile);
  const licenseNodeTree = await lockfileToLicenseNodeTree(opts3.wantedLockfile, {
    dir: opts3.lockfileDir,
    modulesDir: opts3.modulesDir,
    storeDir: opts3.storeDir,
    virtualStoreDir: opts3.virtualStoreDir,
    virtualStoreDirMaxLength: opts3.virtualStoreDirMaxLength,
    include: opts3.include,
    registries: opts3.registries,
    includedImporterIds: opts3.includedImporterIds,
    supportedArchitectures: opts3.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_semver52.default.compare(pkg1.version, pkg2.version));
}
var import_semver52;
var init_licenses = __esm({
  "../deps/compliance/license-scanner/lib/licenses.js"() {
    "use strict";
    init_lib2();
    init_lib127();
    import_semver52 = __toESM(require_semver2(), 1);
    init_lockfileToLicenseNodeTree();
  }
});

// ../deps/compliance/license-scanner/lib/index.js
var init_lib154 = __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, opts3) {
  if (opts3.json) {
    return { output: renderLicensesJson(licensesMap), exitCode: 0 };
  }
  return { output: renderLicensesTable(licensesMap, opts3), 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_semver53.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, opts3) {
  const columnNames = ["Package", "License"];
  const columnFns = [renderPackageName, renderPackageLicense];
  if (opts3.long) {
    columnNames.push("Details");
    columnFns.push(renderDetails);
  }
  for (let i4 = 0; i4 < columnNames.length; i4++)
    columnNames[i4] = source_default.blueBright(columnNames[i4]);
  const data = [
    columnNames,
    ...deduplicateLicensesPackages(sortLicensesPackages(licensePackages)).map((licensePkg) => columnFns.map((fn) => fn(licensePkg)))
  ];
  let detailsColumnMaxWidth = 40;
  let packageColumnMaxWidth = 0;
  let licenseColumnMaxWidth = 0;
  if (opts3.long) {
    detailsColumnMaxWidth = licensePackages.reduce((max4, pkg) => Math.max(max4, pkg.homepage?.length ?? 0), 0);
    for (let i4 = 1; i4 < data.length; i4++) {
      const row = data[i4];
      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((x3) => rowEqual(row, x3));
  for (const row of licensePackages.reverse()) {
    if (!hasRow(row))
      result2.unshift(row);
  }
  return result2;
}
var import_table6, import_semver53;
var init_outputRenderer = __esm({
  "../deps/compliance/commands/lib/licenses/outputRenderer.js"() {
    "use strict";
    init_lib41();
    import_table6 = __toESM(require_src2(), 1);
    init_source();
    init_es();
    import_semver53 = __toESM(require_semver2(), 1);
  }
});

// ../deps/compliance/commands/lib/licenses/licensesList.js
import path174 from "node:path";
async function licensesList(opts3) {
  const lockfile = await readWantedLockfile(opts3.lockfileDir ?? opts3.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: opts3.production !== false,
    devDependencies: opts3.dev !== false,
    optionalDependencies: opts3.optional !== false
  };
  const manifest = await readProjectManifestOnly2(opts3.dir);
  const includedImporterIds = opts3.selectedProjectsGraph ? Object.keys(opts3.selectedProjectsGraph).map((path240) => getLockfileImporterId(opts3.lockfileDir ?? opts3.dir, path240)) : void 0;
  const storeDir = await getStorePath({
    pkgRoot: opts3.dir,
    storePath: opts3.storeDir,
    pnpmHomeDir: opts3.pnpmHomeDir
  });
  const licensePackages = await findDependencyLicenses({
    include,
    lockfileDir: opts3.lockfileDir ?? opts3.dir,
    storeDir,
    virtualStoreDir: opts3.virtualStoreDir ?? path174.join(opts3.modulesDir ?? "node_modules", ".pnpm"),
    virtualStoreDirMaxLength: opts3.virtualStoreDirMaxLength,
    modulesDir: opts3.modulesDir,
    registries: opts3.registries,
    wantedLockfile: lockfile,
    manifest,
    includedImporterIds,
    supportedArchitectures: opts3.supportedArchitectures
  });
  if (licensePackages.length === 0)
    return { output: "No licenses in packages found", exitCode: 0 };
  return renderLicences(licensePackages, opts3);
}
var init_licensesList = __esm({
  "../deps/compliance/commands/lib/licenses/licensesList.js"() {
    "use strict";
    init_lib41();
    init_lib();
    init_lib154();
    init_lib2();
    init_lib80();
    init_lib91();
    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(opts3, 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(opts3);
    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_lib94();
    init_lib41();
    init_lib64();
    init_lib2();
    init_es();
    init_lib66();
    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, opts3) {
  return limitMetadataReads(() => getPkgMetadataUnclamped(depPath, snapshot, registries, opts3));
}
async function getPkgMetadataUnclamped(depPath, snapshot, registries, opts3) {
  const id = packageIdFromSnapshot(depPath, snapshot);
  const resolution = pkgSnapshotToResolution(depPath, snapshot, registries);
  let files;
  try {
    const result2 = await readPackageFileMap(resolution, id, opts3);
    if (!result2)
      return {};
    files = result2;
  } catch {
    return {};
  }
  const manifestPath = files.get("package.json");
  if (!manifestPath)
    return {};
  const manifest = await readPackageJson(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),
    bugsUrl: bugsUrlFromField(manifest.bugs)
  };
}
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;
}
function bugsUrlFromField(field) {
  let candidate;
  if (typeof field === "string") {
    candidate = field.trim();
  } else if (field && typeof field === "object" && "url" in field) {
    const value = field.url;
    if (typeof value === "string")
      candidate = value.trim();
  }
  if (!candidate)
    return void 0;
  let parsed;
  try {
    parsed = new URL(candidate);
  } catch {
    return void 0;
  }
  if (parsed.protocol !== "http:" && parsed.protocol !== "https:")
    return void 0;
  parsed.username = "";
  parsed.password = "";
  return parsed.href;
}
var limitMetadataReads;
var init_getPkgMetadata = __esm({
  "../deps/compliance/sbom/lib/getPkgMetadata.js"() {
    "use strict";
    init_lib152();
    init_lib73();
    init_lib5();
    init_lib153();
    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(opts3) {
  if (opts3.nonSemverVersion) {
    const encodedUrl = encodeURIComponent(opts3.nonSemverVersion);
    return `pkg:npm/${encodePurlName(opts3.name)}@${encodeURIComponent(opts3.version)}?vcs_url=${encodedUrl}`;
  }
  return `pkg:npm/${encodePurlName(opts3.name)}@${opts3.version}`;
}
var init_purl = __esm({
  "../deps/compliance/sbom/lib/purl.js"() {
    "use strict";
  }
});

// ../deps/compliance/sbom/lib/collectComponents.js
import path175 from "node:path";
async function collectSbomComponents(opts3) {
  const depTypes = detectDepTypes(opts3.lockfile);
  const importerIds = opts3.includedImporterIds ?? Object.keys(opts3.lockfile.importers);
  const componentsMap = /* @__PURE__ */ new Map();
  const relationships = [];
  const rootPurl = `pkg:npm/${encodePurlName(opts3.rootName)}@${opts3.rootVersion}`;
  const workspaceDeps = opts3.resolvedWorkspaceDeps ?? (opts3.lockfileOnly ? { links: [], additionalImporterIds: [] } : resolveWorkspaceDeps(opts3.lockfile, importerIds, opts3.include));
  const allImporterIds = [...importerIds, ...workspaceDeps.additionalImporterIds];
  const importerWalkers = opts3.excludePeerNamesByImporter ? allImporterIds.flatMap((importerId) => lockfileWalkerGroupImporterSteps(opts3.lockfile, [importerId], { include: opts3.include })) : lockfileWalkerGroupImporterSteps(opts3.lockfile, allImporterIds, { include: opts3.include });
  const importerIdSet = new Set(importerIds);
  if (opts3.workspacePackages) {
    const workspaceDepTypes = /* @__PURE__ */ new Map();
    for (const dep of workspaceDeps.links) {
      const info = opts3.workspacePackages[dep.targetImporterId];
      if (!info)
        continue;
      const purl = buildPurl({ name: info.name, version: info.version });
      const current = workspaceDepTypes.get(purl);
      if (!dep.devOnly) {
        workspaceDepTypes.set(purl, DepType.ProdOnly);
      } else if (current === void 0) {
        workspaceDepTypes.set(purl, DepType.DevOnly);
      }
    }
    for (const dep of workspaceDeps.links) {
      const info = opts3.workspacePackages[dep.targetImporterId];
      if (!info)
        continue;
      const purl = buildPurl({ name: info.name, version: info.version });
      let parentPurl;
      if (importerIdSet.has(dep.sourceImporterId)) {
        parentPurl = rootPurl;
      } else {
        const sourceInfo = opts3.workspacePackages[dep.sourceImporterId];
        parentPurl = sourceInfo ? buildPurl({ name: sourceInfo.name, version: sourceInfo.version }) : rootPurl;
      }
      relationships.push({ from: parentPurl, to: purl });
      if (!componentsMap.has(purl)) {
        componentsMap.set(purl, {
          name: info.name,
          version: info.version,
          purl,
          depPath: `link:${dep.targetImporterId}`,
          depType: workspaceDepTypes.get(purl) ?? DepType.ProdOnly,
          license: info.license,
          description: info.description,
          author: info.author,
          repository: info.repository
        });
      }
    }
  }
  const storeIndex = !opts3.lockfileOnly && opts3.storeDir ? new StoreIndex(opts3.storeDir) : void 0;
  const metadataOpts = storeIndex && opts3.storeDir ? {
    storeDir: opts3.storeDir,
    storeIndex,
    lockfileDir: opts3.lockfileDir,
    virtualStoreDirMaxLength: opts3.virtualStoreDirMaxLength ?? 120
  } : void 0;
  const walkImporter = pLimit(IMPORTER_WALK_CONCURRENCY);
  await Promise.all(importerWalkers.map(({ importerId, step: step2 }) => walkImporter(async () => {
    let parentPurl = rootPurl;
    if (!importerIdSet.has(importerId)) {
      const info = opts3.workspacePackages?.[importerId];
      if (!info)
        return;
      parentPurl = buildPurl({ name: info.name, version: info.version });
    }
    const peerNames = opts3.excludePeerNamesByImporter?.get(importerId);
    const filteredStep = peerNames?.size ? {
      ...step2,
      dependencies: step2.dependencies.filter((dep) => {
        const { name } = nameVerFromPkgSnapshot(dep.depPath, dep.pkgSnapshot);
        return !name || !peerNames.has(name);
      })
    } : step2;
    await walkStep(filteredStep, parentPurl, depTypes, componentsMap, relationships, opts3, metadataOpts);
  })));
  storeIndex?.close();
  return {
    rootComponent: {
      name: opts3.rootName,
      version: opts3.rootVersion,
      type: opts3.sbomType ?? "library",
      license: opts3.rootLicense,
      description: opts3.rootDescription,
      author: opts3.rootAuthor,
      repository: opts3.rootRepository,
      bugsUrl: opts3.rootBugsUrl
    },
    components: Array.from(componentsMap.values()),
    relationships
  };
}
async function walkStep(step2, parentPurl, depTypes, componentsMap, relationships, opts3, 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, opts3.registries);
    const tarballUrl = resolution.tarball ?? gitDownloadUrl(resolution);
    let metadata = {};
    if (metadataOpts) {
      metadata = await getPkgMetadata(depPath, pkgSnapshot, opts3.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, opts3, 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}`;
}
function resolveWorkspaceDeps(lockfile, importerIds, include) {
  const links = [];
  const visited = new Set(importerIds);
  const queue2 = [...importerIds];
  const additionalImporterIds = [];
  for (let head2 = 0; head2 < queue2.length; head2++) {
    const importerId = queue2[head2];
    const snapshot = lockfile.importers[importerId];
    if (!snapshot)
      continue;
    const devDepNames = new Set(Object.keys(snapshot.devDependencies ?? {}));
    const prodDeps = {
      ...include?.dependencies !== false ? snapshot.dependencies : {},
      ...include?.optionalDependencies !== false ? snapshot.optionalDependencies : {}
    };
    const allDeps = {
      ...prodDeps,
      ...include?.devDependencies !== false ? snapshot.devDependencies : {}
    };
    for (const [depName, reference] of Object.entries(allDeps)) {
      if (!reference.startsWith("link:"))
        continue;
      const linkPath = reference.slice(5);
      const targetId = path175.posix.normalize(importerId === "." ? linkPath : path175.posix.join(importerId, linkPath));
      if (path175.posix.isAbsolute(targetId) || targetId === ".." || targetId.startsWith("../"))
        continue;
      if (!Object.prototype.hasOwnProperty.call(lockfile.importers, targetId))
        continue;
      const devOnly = devDepNames.has(depName) && !(depName in prodDeps);
      links.push({ sourceImporterId: importerId, targetImporterId: targetId, depName, devOnly });
      if (!visited.has(targetId)) {
        visited.add(targetId);
        additionalImporterIds.push(targetId);
        queue2.push(targetId);
      }
    }
  }
  return { links, additionalImporterIds };
}
var IMPORTER_WALK_CONCURRENCY;
var init_collectComponents = __esm({
  "../deps/compliance/sbom/lib/collectComponents.js"() {
    "use strict";
    init_lib127();
    init_lib73();
    init_lib90();
    init_lib30();
    init_p_limit();
    init_getPkgMetadata();
    init_purl();
    IMPORTER_WALK_CONCURRENCY = 8;
  }
});

// ../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_lib18(), 1);
  }
});

// ../../../../../setup-pnpm/store/v11/links/@cyclonedx/cyclonedx-library/10.1.0/09722eca9f92ff404c8aec372bb1b6dbad7c01b712ee64b43ea09abb21013a67/node_modules/@cyclonedx/cyclonedx-library/res/schema/spdx.SNAPSHOT.schema.json
var require_spdx_SNAPSHOT_schema = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@cyclonedx/cyclonedx-library/10.1.0/09722eca9f92ff404c8aec372bb1b6dbad7c01b712ee64b43ea09abb21013a67/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"
      }
    };
  }
});

// ../../../../../setup-pnpm/store/v11/links/@cyclonedx/cyclonedx-library/10.1.0/09722eca9f92ff404c8aec372bb1b6dbad7c01b712ee64b43ea09abb21013a67/node_modules/@cyclonedx/cyclonedx-library/dist.node/spdx.js
var require_spdx = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@cyclonedx/cyclonedx-library/10.1.0/09722eca9f92ff404c8aec372bb1b6dbad7c01b712ee64b43ea09abb21013a67/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 crypto12 from "node:crypto";
function serializeCycloneDx(result2, opts3) {
  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 (comp.depType === DepType.DevOnly) {
      cdxComp.scope = "excluded";
      cdxComp.properties = [{ name: "cdx:npm:package:development", value: "true" }];
    }
    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 (comp.bugsUrl) {
      externalRefs.push({
        type: "issue-tracker",
        url: comp.bugsUrl
      });
    }
    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;
  }
  const rootExternalRefs = [];
  if (rootComponent.repository) {
    rootExternalRefs.push({ type: "vcs", url: rootComponent.repository });
  }
  if (rootComponent.bugsUrl) {
    rootExternalRefs.push({ type: "issue-tracker", url: rootComponent.bugsUrl });
  }
  if (rootExternalRefs.length > 0) {
    rootCdxComponent.externalReferences = rootExternalRefs;
  }
  const toolComponents = [];
  if (opts3?.pnpmVersion) {
    toolComponents.push({
      type: "application",
      name: "pnpm",
      version: opts3.pnpmVersion
    });
  }
  const metadata = {
    timestamp: (/* @__PURE__ */ new Date()).toISOString(),
    lifecycles: [{ phase: opts3?.lockfileOnly ? "pre-build" : "build" }],
    tools: { components: toolComponents },
    component: rootCdxComponent
  };
  if (opts3?.sbomAuthors?.length) {
    metadata.authors = opts3.sbomAuthors.map((name) => ({ name }));
  }
  if (opts3?.sbomSupplier) {
    metadata.supplier = { name: opts3.sbomSupplier };
  }
  const version2 = opts3?.specVersion || "1.7";
  const bom = {
    $schema: `http://cyclonedx.org/schema/bom-${version2}.schema.json`,
    bomFormat: "CycloneDX",
    specVersion: version2,
    serialNumber: `urn:uuid:${crypto12.randomUUID()}`,
    version: 1,
    metadata,
    components: bomComponents,
    dependencies: bomDependencies
  };
  return JSON.stringify(bom, null, opts3?.compact ? void 0 : 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_lib127();
    init_integrity();
    init_license();
    init_purl();
  }
});

// ../deps/compliance/sbom/lib/serializeSpdx.js
import crypto13 from "node:crypto";
function serializeSpdx(result2, opts3) {
  const { rootComponent, components, relationships } = result2;
  const rootSpdxId = "SPDXRef-RootPackage";
  const documentNamespace = `https://spdx.org/spdxdocs/${sanitizeSpdxId(rootComponent.name)}-${rootComponent.version}-${crypto13.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, opts3?.compact ? void 0 : 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_lib155 = __esm({
  "../deps/compliance/sbom/lib/index.js"() {
    "use strict";
    init_collectComponents();
    init_getPkgMetadata();
    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,
  recursiveByDefault: () => recursiveByDefault6,
  shorthands: () => shorthands7
});
import fs98 from "node:fs";
import { realpath as realpath3 } from "node:fs/promises";
import path176 from "node:path";
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"
          },
          {
            description: "Write SBOM to a file instead of stdout. Use %s for the package name and %v for the version.",
            name: "--out <path>"
          },
          {
            description: "Generate a separate SBOM for each matched workspace package. Outputs NDJSON to stdout, or files when combined with --out.",
            name: "--split"
          },
          {
            description: "Exclude peer dependencies (and their exclusive transitive subtrees)",
            name: "--exclude-peers"
          }
        ]
      },
      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",
      "pnpm sbom --sbom-format cyclonedx --filter ./apps/my-app",
      "pnpm sbom --sbom-format cyclonedx --out out/%s.cdx.json",
      "pnpm sbom --sbom-format cyclonedx --split"
    ]
  });
}
async function handler23(opts3, _params = []) {
  if (!opts3.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 = opts3.sbomFormat.toLowerCase();
  if (format2 !== "cyclonedx" && format2 !== "spdx") {
    throw new PnpmError("SBOM_INVALID_FORMAT", `Invalid SBOM format "${opts3.sbomFormat}". Use "cyclonedx" or "spdx".`);
  }
  const sbomType = validateSbomType(opts3.sbomType);
  const sbomSpecVersion = validateSbomSpecVersion(opts3.sbomSpecVersion, format2);
  const ctx = await buildSharedContext(opts3);
  const serialOpts = { format: format2, sbomType, sbomSpecVersion };
  const hasWorkspaceGraph = opts3.selectedProjectsGraph != null || opts3.allProjectsGraph != null;
  const shouldSplit = opts3.split || opts3.out != null && opts3.out.includes("%s") && hasWorkspaceGraph;
  if (shouldSplit) {
    return handleSplit(opts3, serialOpts, ctx);
  }
  const { output, rootName, rootVersion } = await generateSbomForProject(opts3, serialOpts, ctx);
  if (opts3.out) {
    const filePath = opts3.out.replaceAll("%s", sanitizePathSegment(sanitizePackageName(rootName))).replaceAll("%v", sanitizePathSegment(rootVersion));
    fs98.mkdirSync(path176.dirname(filePath), { recursive: true });
    fs98.writeFileSync(filePath, output);
    return { output: filePath, exitCode: 0 };
  }
  return { output, exitCode: 0 };
}
async function handleSplit(opts3, serialOpts, ctx) {
  const projectsGraph = opts3.selectedProjectsGraph ?? opts3.allProjectsGraph;
  if (!projectsGraph) {
    throw new PnpmError("SBOM_NO_PROJECTS", "No workspace projects found. --split requires a workspace.");
  }
  if (opts3.out && !opts3.out.includes("%s")) {
    throw new PnpmError("SBOM_OUT_MISSING_PLACEHOLDER", "When using --split with --out, the path must contain %s as a placeholder for the package name.");
  }
  const entries = Object.entries(projectsGraph);
  const ndjsonLines = [];
  const files = [];
  const writtenPaths = /* @__PURE__ */ new Set();
  const compact = !opts3.out;
  const createdDirs2 = /* @__PURE__ */ new Set();
  for (const [dir, entry] of entries) {
    const manifest = entry.package.manifest;
    if (!manifest.name)
      continue;
    const singleProjectGraph = { [dir]: entry };
    const { output } = await generateSbomForProject({ ...opts3, selectedProjectsGraph: singleProjectGraph, allProjectsGraph: void 0, split: false, out: void 0 }, serialOpts, ctx, compact);
    if (opts3.out) {
      const filePath = opts3.out.replaceAll("%s", sanitizePathSegment(sanitizePackageName(manifest.name))).replaceAll("%v", sanitizePathSegment(manifest.version ?? "0.0.0"));
      if (writtenPaths.has(filePath)) {
        throw new PnpmError("SBOM_OUT_PATH_COLLISION", `Multiple workspace packages resolve to the same output path "${filePath}". Include %v in the --out pattern to disambiguate.`);
      }
      writtenPaths.add(filePath);
      const fileDir = path176.dirname(filePath);
      if (!createdDirs2.has(fileDir)) {
        fs98.mkdirSync(fileDir, { recursive: true });
        createdDirs2.add(fileDir);
      }
      fs98.writeFileSync(filePath, output);
      files.push(filePath);
    } else {
      ndjsonLines.push(output);
    }
  }
  if (opts3.out) {
    return {
      output: `Generated ${files.length} SBOMs:
${files.map((f) => `  ${f}`).join("\n")}`,
      exitCode: 0
    };
  }
  return { output: ndjsonLines.join("\n"), exitCode: 0 };
}
async function buildSharedContext(opts3) {
  const lockfile = await readWantedLockfile(opts3.lockfileDir ?? opts3.dir, {
    ignoreIncompatible: true
  });
  if (lockfile == null) {
    throw new PnpmError("SBOM_NO_LOCKFILE", `No ${WANTED_LOCKFILE} found: Cannot generate SBOM without a lockfile`);
  }
  const rootManifestDir = opts3.rootProjectManifestDir ?? opts3.dir;
  const rootManifest = opts3.rootProjectManifest ?? await readProjectManifestOnly2(rootManifestDir);
  const lockfileDir = opts3.lockfileDir ?? opts3.dir;
  let excludePeerNamesByImporter;
  if (opts3.excludePeers) {
    const byImporter = /* @__PURE__ */ new Map();
    const graphs = [opts3.allProjectsGraph, opts3.selectedProjectsGraph].filter(Boolean);
    if (graphs.length > 0) {
      for (const graph of graphs) {
        for (const [projectDir, { package: project }] of Object.entries(graph)) {
          byImporter.set(getLockfileImporterId(lockfileDir, projectDir), peerNamesFromManifest(project.manifest));
        }
      }
    } else {
      const lockfileRoot = await realpath3(lockfileDir);
      const limitManifestReads = pLimit(16);
      await Promise.all(Object.keys(lockfile.importers).map((importerId) => limitManifestReads(async () => {
        let importerDir;
        try {
          importerDir = await realpath3(path176.resolve(lockfileDir, importerId));
        } catch {
          return;
        }
        const rel = path176.relative(lockfileRoot, importerDir);
        if (rel !== "" && (rel.startsWith("..") || path176.isAbsolute(rel)))
          return;
        let importerManifest;
        try {
          importerManifest = await safeReadProjectManifestOnly(importerDir);
        } catch {
          return;
        }
        if (importerManifest) {
          byImporter.set(importerId, peerNamesFromManifest(importerManifest));
        }
      })));
    }
    excludePeerNamesByImporter = byImporter;
  }
  let storeDir;
  if (!opts3.lockfileOnly) {
    storeDir = await getStorePath({
      pkgRoot: opts3.dir,
      storePath: opts3.storeDir,
      pnpmHomeDir: opts3.pnpmHomeDir
    });
  }
  const workspaceManifestsByImporterId = /* @__PURE__ */ new Map();
  for (const graph of [opts3.allProjectsGraph, opts3.selectedProjectsGraph]) {
    if (!graph)
      continue;
    for (const [dir, entry] of Object.entries(graph)) {
      workspaceManifestsByImporterId.set(getLockfileImporterId(lockfileDir, dir), entry.package.manifest);
    }
  }
  const rootLicense = await resolveRootLicense(rootManifest, rootManifestDir);
  return { lockfile, rootManifest, rootManifestDir, rootLicense, storeDir, workspaceManifestsByImporterId, excludePeerNamesByImporter };
}
async function generateSbomForProject(opts3, serialOpts, ctx, compact) {
  const { lockfile, rootManifest, rootManifestDir, rootLicense: cachedRootLicense } = ctx;
  const include = {
    dependencies: opts3.production !== false,
    devDependencies: opts3.dev !== false,
    optionalDependencies: opts3.optional !== false
  };
  const selectedEntries = opts3.selectedProjectsGraph ? Object.entries(opts3.selectedProjectsGraph) : void 0;
  const singleProject = selectedEntries?.length === 1 ? selectedEntries[0] : void 0;
  const manifest = singleProject ? singleProject[1].package.manifest : rootManifest;
  const projectDir = singleProject ? singleProject[0] : rootManifestDir;
  const rootName = manifest.name ?? "unknown";
  const rootVersion = manifest.version ?? "0.0.0";
  const rootLicense = singleProject ? await resolveRootLicense(manifest, projectDir) ?? cachedRootLicense : cachedRootLicense;
  const rootAuthor = extractAuthor(manifest) ?? (singleProject ? extractAuthor(rootManifest) : void 0);
  const rootRepository = extractRepository(manifest) ?? (singleProject ? extractRepository(rootManifest) : void 0);
  const rootDescription = manifest.description ?? (singleProject ? rootManifest.description : void 0);
  const rootBugsUrl = bugsUrlFromField(manifest.bugs) ?? (singleProject ? bugsUrlFromField(rootManifest.bugs) : void 0);
  const lockfileDir = opts3.lockfileDir ?? opts3.dir;
  const includedImporterIds = opts3.selectedProjectsGraph ? Object.keys(opts3.selectedProjectsGraph).map((p) => getLockfileImporterId(lockfileDir, p)) : void 0;
  const resolvedWorkspaceDeps = opts3.lockfileOnly ? void 0 : resolveWorkspaceDeps(lockfile, includedImporterIds ?? Object.keys(lockfile.importers), include);
  const workspacePackages = resolvedWorkspaceDeps ? await buildWorkspacePackagesMap(resolvedWorkspaceDeps.additionalImporterIds, lockfileDir, ctx.workspaceManifestsByImporterId) : void 0;
  const result2 = await collectSbomComponents({
    lockfile,
    rootName,
    rootVersion,
    rootLicense,
    rootDescription,
    rootAuthor,
    rootRepository,
    rootBugsUrl,
    sbomType: serialOpts.sbomType,
    include,
    registries: opts3.registries,
    lockfileDir,
    includedImporterIds,
    lockfileOnly: opts3.lockfileOnly,
    storeDir: ctx.storeDir,
    virtualStoreDirMaxLength: opts3.virtualStoreDirMaxLength,
    workspacePackages,
    resolvedWorkspaceDeps,
    excludePeerNamesByImporter: ctx.excludePeerNamesByImporter
  });
  const output = serialOpts.format === "cyclonedx" ? serializeCycloneDx(result2, {
    pnpmVersion: packageManager.version,
    lockfileOnly: opts3.lockfileOnly,
    sbomAuthors: opts3.sbomAuthors?.split(",").map((s) => s.trim()).filter(Boolean),
    sbomSupplier: opts3.sbomSupplier,
    specVersion: serialOpts.sbomSpecVersion,
    compact
  }) : serializeSpdx(result2, { compact });
  return { output, exitCode: 0, rootName, rootVersion };
}
function peerNamesFromManifest(manifest) {
  const regular = /* @__PURE__ */ new Set([
    ...Object.keys(manifest.dependencies ?? {}),
    ...Object.keys(manifest.devDependencies ?? {}),
    ...Object.keys(manifest.optionalDependencies ?? {})
  ]);
  return new Set(Object.keys(manifest.peerDependencies ?? {}).filter((name) => !regular.has(name)));
}
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;
}
async function resolveRootLicense(manifest, dir) {
  if (typeof manifest.license === "string" && isSpdxLicenseExpression(manifest.license)) {
    return manifest.license;
  }
  const info = await resolveLicenseFromDir({ manifest, dir });
  if (info && info.name !== "Unknown" && (!info.licenseFile || isSpdxLicenseExpression(info.name))) {
    return info.name;
  }
  return void 0;
}
function extractAuthor(manifest) {
  if (typeof manifest.author === "string")
    return manifest.author;
  return manifest.author?.name;
}
function extractRepository(manifest) {
  if (typeof manifest.repository === "string")
    return manifest.repository;
  return manifest.repository?.url;
}
async function buildWorkspacePackagesMap(reachableImporterIds, lockfileDir, manifestsByImporterId) {
  if (reachableImporterIds.length === 0)
    return {};
  const readManifest = pLimit(WORKSPACE_MANIFEST_READ_CONCURRENCY);
  const entries = await Promise.all(reachableImporterIds.map((importerId) => readManifest(async () => {
    const known = manifestsByImporterId.get(importerId);
    const manifest = known ? known : isInsideDir(lockfileDir, importerId) ? await readManifestSafe(path176.join(lockfileDir, importerId)) : void 0;
    if (!manifest?.name)
      return null;
    return [importerId, {
      name: manifest.name,
      version: manifest.version ?? "0.0.0",
      license: typeof manifest.license === "string" ? manifest.license : void 0,
      description: manifest.description,
      author: extractAuthor(manifest),
      repository: extractRepository(manifest)
    }];
  })));
  return Object.fromEntries(entries.filter((e) => e !== null));
}
async function readManifestSafe(dir) {
  try {
    return await readProjectManifestOnly2(dir);
  } catch {
    return void 0;
  }
}
function sanitizePackageName(name) {
  return name.replace(/^@/, "").replace(/\//g, "-");
}
function sanitizePathSegment(value) {
  const sanitized = value.replace(/[/\\:*?"<>|\x00-\x1F\x7F]/g, "-");
  return sanitized === "." || sanitized === ".." || sanitized.trim() === "" ? "-" : sanitized;
}
function isInsideDir(parentDir, childRelativePath) {
  const rel = path176.relative(parentDir, path176.resolve(parentDir, childRelativePath));
  return rel === "" || !rel.startsWith("..") && !path176.isAbsolute(rel);
}
var cliOptionsTypes22, shorthands7, commandNames23, recursiveByDefault6, SUPPORTED_CYCLONEDX_SPEC_VERSIONS, WORKSPACE_MANIFEST_READ_CONCURRENCY;
var init_sbom = __esm({
  "../deps/compliance/commands/lib/sbom/sbom.js"() {
    "use strict";
    init_lib94();
    init_lib24();
    init_lib41();
    init_lib64();
    init_lib();
    init_lib152();
    init_lib155();
    init_lib2();
    init_lib80();
    init_lib91();
    init_lib15();
    init_p_limit();
    init_es();
    init_lib66();
    cliOptionsTypes22 = () => ({
      ...rcOptionsTypes23(),
      recursive: Boolean,
      "sbom-format": String,
      "sbom-type": String,
      "sbom-spec-version": String,
      "sbom-authors": String,
      "sbom-supplier": String,
      "lockfile-only": Boolean,
      out: String,
      split: Boolean,
      "exclude-peers": Boolean
    });
    shorthands7 = {
      D: "--dev",
      P: "--production"
    };
    commandNames23 = ["sbom"];
    recursiveByDefault6 = true;
    SUPPORTED_CYCLONEDX_SPEC_VERSIONS = ["1.5", "1.6", "1.7"];
    WORKSPACE_MANIFEST_READ_CONCURRENCY = 8;
  }
});

// ../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_lib156 = __esm({
  "../deps/compliance/commands/lib/index.js"() {
    "use strict";
    init_audit2();
    init_licenses3();
    init_sbom2();
  }
});

// ../deps/inspection/commands/lib/fetchPackageInfo.js
async function fetchPackageInfo(opts3, packageSpec) {
  let parsed;
  try {
    parsed = (0, import_npm_package_arg5.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(opts3.registries, packageName);
  const fetchFromRegistry = createFetchFromRegistry(opts3);
  const getAuthHeader = createGetAuthHeaderByURI(opts3.configByUri ?? {});
  const fetchResult = await fetchMetadataFromFromRegistry({
    fetch: fetchFromRegistry,
    retry: {
      factor: opts3.fetchRetryFactor,
      maxTimeout: opts3.fetchRetryMaxtimeout,
      minTimeout: opts3.fetchRetryMintimeout,
      retries: opts3.fetchRetries
    },
    timeout: opts3.fetchTimeout ?? 6e4,
    fetchWarnTimeoutMs: 1e4
  }, packageName, {
    registry,
    authHeaderValue: getAuthHeader(registry, { pkgName: packageName }),
    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_arg5;
var init_fetchPackageInfo = __esm({
  "../deps/inspection/commands/lib/fetchPackageInfo.js"() {
    "use strict";
    init_lib28();
    init_lib2();
    init_lib52();
    init_lib23();
    import_npm_package_arg5 = __toESM(require_npa(), 1);
    init_lib38();
  }
});

// ../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> ...]]",
      "pnpm issues [<pkgname> [<pkgname> ...]]"
    ]
  });
}
async function handler24(opts3, params) {
  const urls = params.length === 0 ? [await getBugsUrlFromCurrentProject(opts3)] : await Promise.all(params.map((spec) => getBugsUrlFromRegistry(opts3, spec)));
  for (const url7 of urls) {
    await open_default(url7);
  }
}
async function getBugsUrlFromCurrentProject(opts3) {
  const manifest = await readProjectManifestOnly2(opts3.dir, {
    engineStrict: opts3.engineStrict,
    nodeVersion: opts3.nodeVersion,
    supportedArchitectures: opts3.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(opts3, packageSpec) {
  const info = await fetchPackageInfo(opts3, 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, commandNames24;
var init_bugs = __esm({
  "../deps/inspection/commands/lib/bugs/index.js"() {
    "use strict";
    init_lib41();
    init_lib64();
    init_lib2();
    import_hosted_git_info2 = __toESM(require_hosted_git_info2(), 1);
    init_open();
    init_es();
    init_lib66();
    init_fetchPackageInfo();
    commandNames24 = ["bugs", "issues"];
  }
});

// ../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(opts3, 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(opts3, packageSpec);
  const url7 = isHttpUrl2(info.homepage) ? info.homepage : `https://npmx.dev/package/${info.name}`;
  await open_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 commandNames25;
var init_docs = __esm({
  "../deps/inspection/commands/lib/docs/index.js"() {
    "use strict";
    init_lib64();
    init_lib2();
    init_open();
    init_es();
    init_lib66();
    init_fetchPackageInfo();
    commandNames25 = ["docs", "home"];
  }
});

// ../deps/inspection/commands/lib/listing/common.js
function computeInclude(opts3) {
  return {
    dependencies: opts3.production !== false,
    devDependencies: opts3.dev !== false,
    optionalDependencies: opts3.optional !== false
  };
}
function resolveFinders(opts3) {
  const finders = [];
  if (opts3.findBy) {
    for (const finderName of opts3.findBy) {
      if (opts3.finders?.[finderName] == null) {
        throw new PnpmError("FINDER_NOT_FOUND", `No finder with name ${finderName} is found`);
      }
      finders.push(opts3.finders[finderName]);
    }
  }
  return finders;
}
function determineReportAs(opts3) {
  return opts3.parseable ? "parseable" : opts3.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 util51 from "node:util";
async function listRecursive(pkgs, params, opts3) {
  const depth = opts3.depth ?? 0;
  if (opts3.lockfileDir) {
    return render2(pkgs.map((pkg) => pkg.rootDir), params, {
      ...opts3,
      alwaysPrintRootPackage: depth === -1,
      lockfileDir: opts3.lockfileDir
    });
  }
  const outputs = (await Promise.all(pkgs.map(async ({ rootDir }) => {
    try {
      return await render2([rootDir], params, {
        ...opts3,
        alwaysPrintRootPackage: depth === -1,
        lockfileDir: opts3.lockfileDir ?? rootDir
      });
    } catch (err2) {
      assert11(util51.types.isNativeError(err2));
      const errWithPrefix = Object.assign(err2, {
        prefix: rootDir
      });
      logger2.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 init_recursive3 = __esm({
  "../deps/inspection/commands/lib/listing/recursive.js"() {
    "use strict";
    init_lib63();
    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: () => recursiveByDefault7,
  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(opts3, params) {
  const include = computeInclude(opts3);
  const depth = opts3.cliOptions?.["depth"] ?? 0;
  if (opts3.global && opts3.globalPkgDir) {
    if (depth > 0) {
      const allInstallDirs = findGlobalInstallDirs(opts3.globalPkgDir, []);
      if (allInstallDirs.length === 1) {
        return render2([allInstallDirs[0]], params, {
          ...opts3,
          depth,
          include,
          lockfileDir: allInstallDirs[0],
          checkWantedLockfileOnly: opts3.lockfileOnly,
          onlyProjects: opts3.cliOptions?.["only-projects"] ?? opts3.onlyProjects
        });
      }
      const matchingInstallDirs = findGlobalInstallDirs(opts3.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]], [], {
          ...opts3,
          depth,
          include,
          lockfileDir: matchingInstallDirs[0],
          checkWantedLockfileOnly: opts3.lockfileOnly,
          onlyProjects: opts3.cliOptions?.["only-projects"] ?? opts3.onlyProjects
        });
      }
    }
    return listGlobalPackages(opts3.globalPkgDir, params, {
      long: opts3.long,
      reportAs: determineReportAs(opts3)
    });
  }
  if (opts3.recursive && opts3.selectedProjectsGraph != null) {
    const pkgs = Object.values(opts3.selectedProjectsGraph).map((wsPkg) => wsPkg.package);
    return listRecursive(pkgs, params, { ...opts3, depth, include, checkWantedLockfileOnly: opts3.lockfileOnly, onlyProjects: opts3.cliOptions?.["only-projects"] ?? opts3.onlyProjects });
  }
  return render2([opts3.dir], params, {
    ...opts3,
    depth,
    include,
    lockfileDir: opts3.lockfileDir ?? opts3.dir,
    checkWantedLockfileOnly: opts3.lockfileOnly,
    onlyProjects: opts3.cliOptions?.["only-projects"] ?? opts3.onlyProjects
  });
}
async function render2(prefixes, params, opts3) {
  const finders = resolveFinders(opts3);
  const listOpts = {
    alwaysPrintRootPackage: opts3.alwaysPrintRootPackage,
    depth: opts3.depth ?? 0,
    excludePeerDependencies: opts3.excludePeers,
    include: opts3.include,
    lockfileDir: opts3.lockfileDir,
    checkWantedLockfileOnly: opts3.checkWantedLockfileOnly,
    long: opts3.long,
    onlyProjects: opts3.onlyProjects,
    reportAs: determineReportAs(opts3),
    showExtraneous: false,
    showSummary: true,
    modulesDir: opts3.modulesDir,
    virtualStoreDirMaxLength: opts3.virtualStoreDirMaxLength,
    finders
  };
  return params.length > 0 || listOpts.finders.length > 0 ? listForPackages(params, prefixes, listOpts) : list(prefixes, listOpts);
}
var EXCLUDE_PEERS_HELP, cliOptionsTypes25, commandNames26, recursiveByDefault7;
var init_list = __esm({
  "../deps/inspection/commands/lib/listing/list.js"() {
    "use strict";
    init_lib94();
    init_lib41();
    init_lib64();
    init_lib130();
    init_lib2();
    init_lib131();
    init_es();
    init_lib66();
    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"];
    recursiveByDefault7 = 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: () => recursiveByDefault8
});
function cliOptionsTypes26() {
  return omit_default(["long"], cliOptionsTypes25());
}
async function handler27(opts3, params) {
  return handler26({ ...opts3, long: true }, params);
}
var commandNames27, recursiveByDefault8, rcOptionsTypes27, help27;
var init_ll = __esm({
  "../deps/inspection/commands/lib/listing/ll.js"() {
    "use strict";
    init_es();
    init_list();
    commandNames27 = ["ll", "la"];
    recursiveByDefault8 = 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: () => recursiveByDefault9,
  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(opts3, params) {
  if (params.length === 0 && opts3.findBy == null) {
    throw new PnpmError("MISSING_PACKAGE_NAME", "`pnpm why` requires the package name or --find-by=<finder-name>");
  }
  const include = computeInclude(opts3);
  const finders = resolveFinders(opts3);
  const lockfileDir = opts3.lockfileDir ?? opts3.dir;
  const reportAs = determineReportAs(opts3);
  const depth = opts3.cliOptions?.["depth"];
  const projectPaths = opts3.recursive && opts3.selectedProjectsGraph ? Object.keys(opts3.selectedProjectsGraph) : [opts3.dir];
  return whyForPackages(params, projectPaths, {
    depth,
    include,
    long: opts3.long,
    lockfileDir,
    reportAs,
    modulesDir: opts3.modulesDir,
    checkWantedLockfileOnly: opts3.lockfileOnly,
    finders
  });
}
var cliOptionsTypes27, commandNames28, recursiveByDefault9;
var init_why = __esm({
  "../deps/inspection/commands/lib/listing/why.js"() {
    "use strict";
    init_lib94();
    init_lib41();
    init_lib64();
    init_lib130();
    init_lib2();
    init_es();
    init_lib66();
    init_common();
    init_list();
    init_common();
    cliOptionsTypes27 = () => ({
      ...rcOptionsTypes28(),
      "exclude-peers": Boolean,
      recursive: Boolean,
      "find-by": [String, Array]
    });
    commandNames28 = ["why"];
    recursiveByDefault9 = 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_utils4 = __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, opts3) {
  const outdatedMap = {};
  const packageParams = params.filter((param) => !isGitHubActionSelector(param));
  const outdatedPackagesByProject = params.length === 0 || packageParams.length > 0 ? await outdatedDepsOfProjects(pkgs, packageParams, {
    ...opts3,
    fullMetadata: opts3.long,
    ignoreDependencies: opts3.updateConfig?.ignoreDependencies,
    minimumReleaseAge: opts3.minimumReleaseAge,
    minimumReleaseAgeExclude: opts3.minimumReleaseAgeExclude,
    retry: {
      factor: opts3.fetchRetryFactor,
      maxTimeout: opts3.fetchRetryMaxtimeout,
      minTimeout: opts3.fetchRetryMintimeout,
      retries: opts3.fetchRetries
    },
    timeout: opts3.fetchTimeout
  }) : pkgs.map(() => []);
  for (let i4 = 0; i4 < outdatedPackagesByProject.length; i4++) {
    const { rootDir, manifest } = pkgs[i4];
    for (const outdatedPkg of outdatedPackagesByProject[i4]) {
      const key = JSON.stringify([outdatedPkg.packageName, outdatedPkg.current, outdatedPkg.belongsTo]);
      if (!outdatedMap[key]) {
        outdatedMap[key] = { ...outdatedPkg, dependentPkgs: [] };
      }
      outdatedMap[key].dependentPkgs.push({ location: rootDir, manifest });
    }
  }
  if (opts3.include.devDependencies && shouldCheckGitHubActions(opts3)) {
    const outdatedActions = await findOutdatedGitHubActions({
      compatible: opts3.compatible,
      dir: opts3.workspaceDir ?? opts3.lockfileDir ?? opts3.dir,
      match: params.length > 0 ? createMatcher(params.map(normalizeGitHubActionSelector)) : void 0,
      serverUrl: opts3.updateConfig?.githubActionsServer
    });
    for (const action of outdatedActions) {
      const outdatedAction = toOutdatedAction(action);
      const key = JSON.stringify([outdatedAction.packageName, outdatedAction.current, outdatedAction.dependencyType]);
      outdatedMap[key] = {
        ...outdatedAction,
        dependentPkgs: [{ location: opts3.workspaceDir ?? opts3.lockfileDir ?? opts3.dir, manifest: { name: ".github" } }]
      };
    }
  }
  let output;
  switch (opts3.format ?? "table") {
    case "table": {
      output = renderOutdatedTable(outdatedMap, opts3);
      break;
    }
    case "list": {
      output = renderOutdatedList(outdatedMap, opts3);
      break;
    }
    case "json": {
      output = renderOutdatedJSON(outdatedMap, opts3);
      break;
    }
    default: {
      throw new PnpmError("BAD_OUTDATED_FORMAT", `Unsupported format: ${opts3.format?.toString() ?? "undefined"}`);
    }
  }
  return {
    output,
    exitCode: isEmpty_default(outdatedMap) ? 0 : 1
  };
}
function renderOutdatedTable(outdatedMap, opts3) {
  if (isEmpty_default(outdatedMap))
    return "";
  const columnNames = [
    "Package",
    "Current",
    "Latest",
    "Dependents"
  ];
  const columnFns = [
    renderPackageName2,
    renderCurrent,
    renderLatest,
    dependentPackages
  ];
  if (opts3.long) {
    columnNames.push("Details");
    columnFns.push(renderDetails2);
  }
  for (let i4 = 0; i4 < columnNames.length; i4++)
    columnNames[i4] = source_default.blueBright(columnNames[i4]);
  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, opts3) {
  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 (opts3.long) {
      const details = renderDetails2(outdatedPkg);
      if (details) {
        info += `
${details}`;
      }
    }
    return info;
  }).join("\n\n") + "\n";
}
function renderOutdatedJSON(outdatedMap, opts3) {
  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.dependencyType ?? outdatedPkg.belongsTo,
      dependentPackages: outdatedPkg.dependentPkgs.map(({ manifest, location }) => ({ name: manifest.name, location }))
    };
    if (opts3.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_lib41();
    init_lib27();
    init_lib139();
    init_lib140();
    init_lib2();
    import_table7 = __toESM(require_src2(), 1);
    init_source();
    init_es();
    init_outdated2();
    init_utils4();
    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,
  toOutdatedAction: () => toOutdatedAction,
  toOutdatedWithVersionDiff: () => toOutdatedWithVersionDiff
});
import { stripVTControlCharacters as stripAnsi2 } 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 package dependencies. GitHub Actions dependencies can be included with --include-github-actions. The check can be limited to a subset of dependencies 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: "Also check GitHub Actions dependencies in workflow and action files",
            name: "--include-github-actions"
          },
          {
            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(opts3, params = []) {
  const include = {
    dependencies: opts3.production !== false,
    devDependencies: opts3.dev !== false,
    optionalDependencies: opts3.optional !== false
  };
  if (opts3.recursive && opts3.selectedProjectsGraph != null) {
    const pkgs = Object.values(opts3.selectedProjectsGraph).map((wsPkg) => wsPkg.package);
    return outdatedRecursive(pkgs, params, { ...opts3, include });
  }
  let packages;
  if (opts3.global && opts3.globalPkgDir) {
    const globalPackages = scanGlobalPackages(opts3.globalPkgDir);
    packages = await Promise.all(globalPackages.map(async (pkg) => ({
      rootDir: pkg.installDir,
      manifest: await readProjectManifestOnly2(pkg.installDir, opts3)
    })));
  } else {
    const manifest = await readProjectManifestOnly2(opts3.dir, opts3);
    packages = [
      {
        rootDir: opts3.dir,
        manifest
      }
    ];
  }
  const packageParams = params.filter((param) => !isGitHubActionSelector(param));
  const [outdatedPerProject, outdatedActions] = await Promise.all([
    params.length === 0 || packageParams.length > 0 ? outdatedDepsOfProjects(packages, packageParams, {
      ...opts3,
      fullMetadata: opts3.long,
      ignoreDependencies: opts3.updateConfig?.ignoreDependencies,
      include,
      minimumReleaseAge: opts3.minimumReleaseAge,
      minimumReleaseAgeExclude: opts3.minimumReleaseAgeExclude,
      retry: {
        factor: opts3.fetchRetryFactor,
        maxTimeout: opts3.fetchRetryMaxtimeout,
        minTimeout: opts3.fetchRetryMintimeout,
        retries: opts3.fetchRetries
      },
      timeout: opts3.fetchTimeout
    }) : [],
    opts3.global || !include.devDependencies || !shouldCheckGitHubActions(opts3) ? [] : findOutdatedGitHubActions({
      compatible: opts3.compatible,
      dir: opts3.workspaceDir ?? opts3.lockfileDir ?? opts3.dir,
      match: params.length > 0 ? createMatcher(params.map(normalizeGitHubActionSelector)) : void 0,
      serverUrl: opts3.updateConfig?.githubActionsServer
    })
  ]);
  const outdatedPackages = [
    ...outdatedPerProject.flat(),
    ...outdatedActions.map(toOutdatedAction)
  ];
  let output;
  switch (opts3.format ?? "table") {
    case "table": {
      output = renderOutdatedTable2(outdatedPackages, opts3);
      break;
    }
    case "list": {
      output = renderOutdatedList2(outdatedPackages, opts3);
      break;
    }
    case "json": {
      output = renderOutdatedJSON2(outdatedPackages, opts3);
      break;
    }
    default: {
      throw new PnpmError("BAD_OUTDATED_FORMAT", `Unsupported format: ${opts3.format?.toString() ?? "undefined"}`);
    }
  }
  return {
    output,
    exitCode: outdatedPackages.length === 0 ? 0 : 1
  };
}
function renderOutdatedTable2(outdatedPackages, opts3) {
  if (outdatedPackages.length === 0)
    return "";
  const columnNames = [
    "Package",
    "Current",
    "Latest"
  ];
  const columnFns = [
    renderPackageName2,
    renderCurrent,
    renderLatest
  ];
  if (opts3.long) {
    columnNames.push("Details");
    columnFns.push(renderDetails2);
  }
  for (let i4 = 0; i4 < columnNames.length; i4++)
    columnNames[i4] = source_default.blueBright(columnNames[i4]);
  const data = [
    columnNames,
    ...sortOutdatedPackages2(outdatedPackages, { sortBy: opts3.sortBy }).map((outdatedPkg) => columnFns.map((fn) => fn(outdatedPkg)))
  ];
  const tableOptions = {
    ...TABLE_OPTIONS
  };
  if (opts3.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, opts3) {
  if (outdatedPackages.length === 0)
    return "";
  return sortOutdatedPackages2(outdatedPackages, { sortBy: opts3.sortBy }).map((outdatedPkg) => {
    let info = `${source_default.bold(renderPackageName2(outdatedPkg))}
${renderCurrent(outdatedPkg)} ${source_default.grey("=>")} ${renderLatest(outdatedPkg)}`;
    if (opts3.long) {
      const details = renderDetails2(outdatedPkg);
      if (details) {
        info += `
${details}`;
      }
    }
    return info;
  }).join("\n\n") + "\n";
}
function renderOutdatedJSON2(outdatedPackages, opts3) {
  const outdatedPackagesJSON = sortOutdatedPackages2(outdatedPackages, { sortBy: opts3.sortBy }).reduce((acc, outdatedPkg) => {
    acc[outdatedPkg.packageName] = {
      current: outdatedPkg.current,
      latest: outdatedPkg.latestManifest?.version,
      wanted: outdatedPkg.wanted,
      isDeprecated: Boolean(outdatedPkg.latestManifest?.deprecated),
      dependencyType: outdatedPkg.dependencyType ?? outdatedPkg.belongsTo
    };
    if (opts3.long) {
      acc[outdatedPkg.packageName].latestManifest = outdatedPkg.latestManifest;
    }
    return acc;
  }, {});
  return JSON.stringify(outdatedPackagesJSON, null, 2);
}
function sortOutdatedPackages2(outdatedPackages, opts3) {
  const sortBy3 = opts3?.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 = stripAnsi2(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, dependencyType, packageName }) {
  if (dependencyType === "githubAction")
    return `${packageName} ${source_default.dim("(github action)")}`;
  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: change2, diff: diff2 } = outdatedPkg;
  if (latestManifest == null)
    return "";
  if (change2 === null || diff2 == null) {
    return latestManifest.deprecated ? source_default.redBright.bold("Deprecated") : latestManifest.version;
  }
  const versionText = colorizeSemverDiff({ change: change2, diff: diff2 });
  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");
}
function toOutdatedAction(action) {
  return {
    alias: action.name,
    belongsTo: "devDependencies",
    current: action.current,
    dependencyType: "githubAction",
    latestManifest: {
      name: action.name,
      version: action.latest,
      homepage: action.homepage
    },
    packageName: action.name,
    wanted: action.wanted
  };
}
var import_table8, cliOptionsTypes28, shorthands9, commandNames29, completion4;
var init_outdated2 = __esm({
  "../deps/inspection/commands/lib/outdated/outdated.js"() {
    "use strict";
    init_lib94();
    init_lib41();
    init_lib141();
    init_lib27();
    init_lib64();
    init_lib139();
    init_lib140();
    init_lib2();
    init_lib103();
    init_lib142();
    import_table8 = __toESM(require_src2(), 1);
    init_source();
    init_es();
    init_lib66();
    init_recursive4();
    init_utils4();
    cliOptionsTypes28 = () => ({
      ...rcOptionsTypes29(),
      "include-github-actions": Boolean,
      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 path177 from "node:path";
async function checkPeerDependencies(projectPaths, opts3) {
  const modulesDir = opts3.modulesDir ?? "node_modules";
  const lockfile = opts3.checkWantedLockfileOnly ? await readWantedLockfile(opts3.lockfileDir, { ignoreIncompatible: false }) : await readCurrentLockfile(path177.join(opts3.lockfileDir, modulesDir, ".pnpm"), { ignoreIncompatible: false }) ?? await readWantedLockfile(opts3.lockfileDir, { ignoreIncompatible: false });
  if (!lockfile)
    return {};
  const issues = checkPeerDependenciesFromLockfile(projectPaths, lockfile, opts3.lockfileDir);
  if (opts3.peerDependencyRules) {
    return filterPeerDependencyIssues2(issues, opts3.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 = parse9(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, rawPeerRange] of Object.entries(pkgSnapshot.peerDependencies)) {
        const peerRange = getPeerVersionRange(rawPeerRange);
        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 = parse9(depPath);
    return packages[depPath].version ?? parsed2.version;
  }
  const parsed = parse9(`${alias}@${ref}`);
  return parsed.version;
}
function satisfies2(version2, range) {
  if (range === "*")
    return true;
  return import_semver54.default.satisfies(version2, range, { includePrerelease: true, loose: 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_semver54.default.satisfies(issue.foundVersion, range)))
          return false;
        const declaringParent = issue.parents.at(-1);
        if (declaringParent && allowedVersionsByParent[declaringParent.name]?.[peerName]?.some((range) => import_semver54.default.satisfies(issue.foundVersion, range)))
          return false;
        return true;
      });
      if (remaining.length > 0) {
        filteredBad[peerName] = remaining;
      }
    }
    result2[projectId] = {
      bad: filteredBad,
      missing: filteredMissing,
      conflicts: conflicts.filter((peerName) => filteredMissing[peerName] != null),
      intersections: filteredIntersections
    };
  }
  return result2;
}
function parseAllowedVersions2(allowedVersions) {
  let overrides;
  try {
    overrides = parseOverrides(allowedVersions);
  } catch (err2) {
    throw new PnpmError("INVALID_ALLOWED_VERSION_SELECTOR", `${err2.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_semver54, import_semver_range_intersect2;
var init_checkPeerDependencies = __esm({
  "../deps/inspection/peers-checker/lib/checkPeerDependencies.js"() {
    "use strict";
    init_lib27();
    init_lib99();
    init_lib68();
    init_lib10();
    init_lib2();
    init_lib80();
    init_lib90();
    import_semver54 = __toESM(require_semver2(), 1);
    import_semver_range_intersect2 = __toESM(require_dist7(), 1);
  }
});

// ../deps/inspection/peers-checker/lib/index.js
var init_lib157 = __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_lib158 = __esm({
  "../deps/inspection/peers-issues-renderer/lib/index.js"() {
    "use strict";
    init_source();
  }
});

// ../deps/inspection/commands/lib/peers.js
var peers_exports = {};
__export(peers_exports, {
  cliOptionsTypes: () => cliOptionsTypes29,
  commandNames: () => commandNames30,
  handler: () => handler30,
  help: () => help30,
  rcOptionsTypes: () => rcOptionsTypes30,
  recursiveByDefault: () => recursiveByDefault10,
  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(opts3, params) {
  switch (params[0]) {
    case "check":
    case void 0:
      return checkCmd(opts3);
    default:
      return { output: help30(), exitCode: 1 };
  }
}
async function checkCmd(opts3) {
  const lockfileDir = opts3.lockfileDir ?? opts3.dir;
  const projectPaths = opts3.recursive && opts3.selectedProjectsGraph ? Object.keys(opts3.selectedProjectsGraph) : [opts3.dir];
  const issues = await checkPeerDependencies(projectPaths, {
    lockfileDir,
    checkWantedLockfileOnly: opts3.lockfileOnly,
    modulesDir: opts3.modulesDir,
    peerDependencyRules: opts3.peerDependencyRules
  });
  const noIssues = hasNoIssues(issues);
  const json2 = opts3.json ?? opts3.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, recursiveByDefault10;
var init_peers = __esm({
  "../deps/inspection/commands/lib/peers.js"() {
    "use strict";
    init_lib94();
    init_lib41();
    init_lib64();
    init_lib157();
    init_lib158();
    init_es();
    init_lib66();
    cliOptionsTypes29 = () => ({
      ...rcOptionsTypes30(),
      recursive: Boolean
    });
    shorthands10 = {};
    commandNames30 = ["peers"];
    recursiveByDefault10 = 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(opts3, params) {
  const urls = params.length === 0 ? [await getRepoUrlFromCurrentProject(opts3)] : await Promise.all(params.map((spec) => getRepoUrlFromRegistry(opts3, spec)));
  for (const url7 of urls) {
    await open_default(url7);
  }
}
async function getRepoUrlFromCurrentProject(opts3) {
  const manifest = await readProjectManifestOnly2(opts3.dir, {
    engineStrict: opts3.engineStrict,
    nodeVersion: opts3.nodeVersion,
    supportedArchitectures: opts3.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(opts3, packageSpec) {
  const info = await fetchPackageInfo(opts3, 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, commandNames31;
var init_repo = __esm({
  "../deps/inspection/commands/lib/repo/index.js"() {
    "use strict";
    init_lib41();
    init_lib64();
    init_lib2();
    import_hosted_git_info3 = __toESM(require_hosted_git_info2(), 1);
    init_open();
    init_es();
    init_lib66();
    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
});
import path178 from "node:path";
function rcOptionsTypes32() {
  return pick_default(["registry"], types2);
}
function cliOptionsTypes31() {
  return {
    ...rcOptionsTypes32(),
    json: Boolean
  };
}
function help32() {
  return renderHelp({
    description: "View package information from the registry. If package name is omitted, searches upward for the nearest package manifest.",
    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(opts3, params) {
  let packageSpec = params[0];
  if (!packageSpec) {
    const nearestManifest = await findNearestProjectManifest(opts3.dir ?? process.cwd(), opts3);
    if (!nearestManifest) {
      throw new PnpmError("MISSING_PACKAGE_NAME", "Package name is required. Usage: pnpm view [<package-name>]");
    }
    if (typeof nearestManifest.manifest.name !== "string" || nearestManifest.manifest.name.length === 0) {
      throw new PnpmError("INVALID_PACKAGE_JSON", `Invalid ${nearestManifest.fileName} at "${nearestManifest.projectDir}". The "name" field is required and must be a non-empty string.`);
    }
    packageSpec = nearestManifest.manifest.name;
  }
  const fields = params.slice(1);
  const info = await fetchPackageInfo(opts3, packageSpec);
  if (fields.length > 0) {
    const selectedFields = {};
    for (const field of fields) {
      selectedFields[field] = getNestedProperty(info, field);
    }
    if (opts3.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 (opts3.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.deprecated) {
    lines.push("");
    lines.push(`${source_default.red("DEPRECATED!")} - ${info.deprecated}`);
  }
  if (info.keywords && info.keywords.length > 0) {
    lines.push("");
    lines.push(`keywords: ${source_default.cyan(info.keywords.join(", "))}`);
  }
  if (info.bin) {
    let bins = [];
    if (typeof info.bin === "string") {
      if (info.bin.length > 0 && info.name) {
        bins = [info.name[0] === "@" ? info.name.slice(info.name.indexOf("/") + 1) : info.name];
      }
    } else {
      bins = Object.keys(info.bin);
    }
    if (bins.length > 0) {
      lines.push("");
      lines.push(`bin: ${source_default.cyan(bins.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 = 1e3;
  const sizes = ["B", "kB", "MB", "GB", "TB", "PB"];
  const i4 = Math.min(Math.floor(Math.log(bytes) / Math.log(k2)), sizes.length - 1);
  return Math.round(bytes / Math.pow(k2, i4) * 100) / 100 + " " + sizes[i4];
}
function getNestedProperty(obj, path240) {
  return path240.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)}`;
}
async function findNearestProjectManifest(startDir, _opts) {
  try {
    const result2 = await tryReadProjectManifest(startDir);
    if (result2.manifest != null) {
      return {
        manifest: result2.manifest,
        fileName: result2.fileName,
        projectDir: startDir
      };
    }
  } catch (err2) {
    const message = err2 instanceof Error ? err2.message : String(err2);
    throw new PnpmError("INVALID_PACKAGE_JSON", `Failed to read or parse project manifest in "${startDir}": ${message}`);
  }
  const parentDir = path178.dirname(startDir);
  if (parentDir === startDir) {
    return null;
  }
  return findNearestProjectManifest(parentDir, _opts);
}
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_lib64();
    init_lib2();
    init_lib38();
    init_lib15();
    init_source();
    init_es();
    init_lib66();
    init_fetchPackageInfo();
    commandNames32 = ["view", "info", "show", "v"];
  }
});

// ../deps/inspection/commands/lib/index.js
var init_lib159 = __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/verifyPnpmEngineIdentity.js
async function verifyPnpmEngineIdentity(envLockfile, pnpmVersion, opts3) {
  const trustedKeys = opts3.trustedKeys ?? getNpmSigningKeys();
  if (trustedKeys.length === 0)
    return;
  const toVerify = collectEnginePackagesToVerify(envLockfile, opts3.registries);
  if (toVerify.length === 0) {
    throw new PnpmError("PNPM_ENGINE_IDENTITY_UNVERIFIABLE", `Cannot verify the identity of pnpm@${pnpmVersion}: its integrity metadata is missing from pnpm-lock.yaml.`);
  }
  const getAuthHeader = createGetAuthHeaderByURI(opts3.configByUri ?? {});
  let result2;
  try {
    result2 = await verifyInstalledPackageSignatures(toVerify, trustedKeys, getAuthHeader, opts3);
  } catch (err2) {
    throw new PnpmError("PNPM_ENGINE_IDENTITY_UNVERIFIABLE", `Refusing to run pnpm@${pnpmVersion}: its npm registry signature could not be verified (${String(err2)}).`, { hint: "The registry signing keys / packument must be reachable to verify the pnpm release. Set `pmOnFail` to `ignore` to skip the version switch." });
  }
  if (result2.verified)
    return;
  const onlyUnreachable = result2.failures.every((f) => f.category === "unreachable");
  throw new PnpmError(onlyUnreachable ? "PNPM_ENGINE_IDENTITY_UNVERIFIABLE" : "PNPM_ENGINE_IDENTITY_MISMATCH", `Refusing to run pnpm@${pnpmVersion}: its npm registry signature could not be verified (${describe(result2.failures)}). The bytes selected by this project's lockfile/registry do not match a published, signed pnpm release.`, { hint: "This can indicate a tampered lockfile or a malicious/unreachable registry. Set `pmOnFail` to `ignore` to skip the version switch if this is unexpected." });
}
function collectEnginePackagesToVerify(envLockfile, registries) {
  const pmDeps = envLockfile.importers["."]?.packageManagerDependencies ?? {};
  const toVerify = [];
  for (const name of ["pnpm", "@pnpm/exe"]) {
    const version2 = pmDeps[name]?.version;
    if (version2 == null)
      continue;
    toVerify.push(engineComponentToVerify(envLockfile, registries, { name, version: version2 }));
  }
  const exeVersion = pmDeps["@pnpm/exe"]?.version;
  if (exeVersion != null) {
    const optionalDeps = envLockfile.snapshots[`@pnpm/exe@${exeVersion}`]?.optionalDependencies ?? {};
    const libcFamily = (0, import_detect_libc5.familySync)();
    const candidateNames = [
      `@pnpm/${exePlatformPkgDirName(process.platform, process.arch, libcFamily)}`,
      `@pnpm/${exePlatformPkgDirNameNext(process.platform, process.arch, libcFamily)}`
    ];
    for (const platformName of candidateNames) {
      const platformVersion = optionalDeps[platformName];
      if (platformVersion == null)
        continue;
      toVerify.push(engineComponentToVerify(envLockfile, registries, { name: platformName, version: platformVersion }));
      break;
    }
  }
  return toVerify;
}
function engineComponentToVerify(envLockfile, registries, { name, version: version2 }) {
  const integrity = registryIntegrity2(envLockfile.packages[`${name}@${version2}`]?.resolution);
  if (integrity == null) {
    throw new PnpmError("PNPM_ENGINE_IDENTITY_UNVERIFIABLE", `Cannot verify the identity of ${name}@${version2}: its integrity metadata is missing from pnpm-lock.yaml.`);
  }
  return { name, version: version2, registry: pickRegistryForPackage(registries, name), integrity };
}
function registryIntegrity2(resolution) {
  const integrity = resolution?.integrity;
  return typeof integrity === "string" && integrity ? integrity : void 0;
}
function describe(failures) {
  return failures.map(({ name, version: version2, reason }) => `${name}@${version2}: ${reason}`).join("; ");
}
var import_detect_libc5;
var init_verifyPnpmEngineIdentity = __esm({
  "../engine/pm/commands/lib/self-updater/verifyPnpmEngineIdentity.js"() {
    "use strict";
    init_lib28();
    init_lib136();
    init_lib2();
    init_lib52();
    import_detect_libc5 = __toESM(require_detect_libc(), 1);
    init_installPnpm();
  }
});

// ../engine/pm/commands/lib/self-updater/installPnpm.js
import fs99 from "node:fs";
import os15 from "node:os";
import path179 from "node:path";
import util52 from "node:util";
function assertReleaseIsInstallable(version2) {
  if (!BROKEN_RELEASES.has(version2))
    return;
  throw new PnpmError("BROKEN_PNPM_RELEASE", `pnpm v${version2} is a broken release and cannot be installed`, {
    hint: 'Its "@pnpm/exe" build shipped without a binary and does not run. Even where it does run, pinning it would break everyone on the project who uses "@pnpm/exe", because the pin is shared. Choose another version, or run "pnpm self-update latest".'
  });
}
function pnpmPackageNameToInstall(pnpmVersion) {
  const parsed = import_semver55.default.parse(pnpmVersion, { loose: true });
  if (parsed != null && parsed.major >= 12)
    return "pnpm";
  return getCurrentPackageName();
}
async function installPnpm(pnpmVersion, opts3) {
  const pkgName = pnpmPackageNameToInstall(pnpmVersion);
  const wantedLockfile = opts3.envLockfile ? buildLockfileFromEnvLockfile(opts3.envLockfile, pkgName, pnpmVersion) : void 0;
  const result2 = await installPnpmToGlobalDir(opts3, pkgName, pnpmVersion, wantedLockfile);
  return {
    alreadyExisted: result2.alreadyExisted,
    baseDir: result2.installDir,
    binDir: result2.binDir
  };
}
async function installPnpmToStore(pnpmVersion, opts3) {
  const pkgName = pnpmPackageNameToInstall(pnpmVersion);
  const wantedLockfile = buildLockfileFromEnvLockfile(opts3.envLockfile, pkgName, pnpmVersion);
  const globalVirtualStoreDir = path179.join(opts3.storeDir, "links");
  const pnpmGvsPath = findPnpmGvsPath(wantedLockfile, pkgName, globalVirtualStoreDir, PNPM_ALLOW_BUILDS);
  const pnpmPkgDir = path179.join(pnpmGvsPath, "node_modules", pkgName);
  const binDir = path179.join(pnpmGvsPath, "bin");
  if (fs99.existsSync(path179.join(pnpmPkgDir, "package.json"))) {
    if (!fs99.existsSync(binDir)) {
      await linkBins(path179.join(pnpmGvsPath, "node_modules"), binDir, { warn: noop4 });
    }
    return { binDir };
  }
  await verifyPnpmEngineIdentity(opts3.envLockfile, pnpmVersion, opts3);
  const tmpInstallDir = path179.join(opts3.storeDir, ".tmp", `pnpm-${pnpmVersion}-${Date.now()}`);
  fs99.mkdirSync(tmpInstallDir, { recursive: true });
  try {
    await installFromLockfile(tmpInstallDir, binDir, {
      wantedLockfile,
      allowBuilds: PNPM_ALLOW_BUILDS,
      storeController: opts3.storeController,
      storeDir: opts3.storeDir,
      registries: opts3.registries,
      virtualStoreDirMaxLength: opts3.virtualStoreDirMaxLength,
      packageManager: opts3.packageManager
    });
    linkExePlatformBinary(pnpmGvsPath, pkgName);
    await linkBins(path179.join(pnpmGvsPath, "node_modules"), binDir, { warn: noop4 });
    return { binDir };
  } finally {
    try {
      fs99.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 path179.join(globalVirtualStoreDir, hash2);
    }
  }
  throw new Error(`Could not find ${pkgName} in lockfile`);
}
async function installPnpmToGlobalDir(opts3, pkgName, version2, wantedLockfile) {
  const globalDir = opts3.globalPkgDir;
  cleanOrphanedInstallDirs(globalDir);
  const existingInstallDir = await findGlobalPnpmInstallDir(globalDir, pkgName, version2);
  if (existingInstallDir != null) {
    return { alreadyExisted: true, installDir: existingInstallDir, binDir: path179.join(existingInstallDir, "bin") };
  }
  const installDir = createInstallDir(globalDir);
  const binDir = path179.join(installDir, "bin");
  try {
    if (wantedLockfile != null && opts3.storeController != null && opts3.storeDir != null) {
      if (opts3.envLockfile != null) {
        await verifyPnpmEngineIdentity(opts3.envLockfile, version2, opts3);
      }
      await installFromLockfile(installDir, binDir, {
        wantedLockfile,
        allowBuilds: PNPM_ALLOW_BUILDS,
        storeController: opts3.storeController,
        storeDir: opts3.storeDir,
        registries: opts3.registries,
        virtualStoreDirMaxLength: opts3.virtualStoreDirMaxLength,
        packageManager: opts3.packageManager
      });
      await registerProject(opts3.storeDir, installDir);
    } else {
      await installFromResolution(installDir, opts3, [`${pkgName}@${version2}`]);
    }
    linkExePlatformBinary(installDir, pkgName);
    await linkBins(path179.join(installDir, "node_modules"), binDir, { warn: noop4 });
    assertPnpmRuns(binDir, version2);
    const pkgJson2 = JSON.parse(fs99.readFileSync(path179.join(installDir, "package.json"), "utf8"));
    const aliases = Object.keys(pkgJson2.dependencies ?? {});
    const cacheHash = createGlobalCacheKey({ aliases, registries: opts3.registries });
    const hashLink = getHashLink(globalDir, cacheHash);
    await symlinkDir(installDir, hashLink, { overwrite: true });
    return { alreadyExisted: false, installDir, binDir };
  } catch (err2) {
    try {
      fs99.rmSync(installDir, { recursive: true, force: true });
    } catch {
    }
    throw err2;
  }
}
function assertPnpmRuns(binDir, version2) {
  const pnpmBinPath = path179.join(binDir, "pnpm");
  const probeDir = fs99.mkdtempSync(path179.join(os15.tmpdir(), "pnpm-self-update-check-"));
  let result2;
  try {
    result2 = import_cross_spawn2.default.sync(pnpmBinPath, ["--version"], {
      encoding: "utf8",
      cwd: probeDir
    });
  } finally {
    try {
      fs99.rmSync(probeDir, { recursive: true, force: true });
    } catch {
    }
  }
  const { status, error, stderr } = result2;
  if (error == null && status === 0)
    return;
  const exit2 = status != null ? `code ${status}` : "a signal";
  const reason = error != null ? error.message : `it exited with ${exit2}${(stderr ?? "").trim() ? `: ${stderr.trim()}` : ""}`;
  throw new PnpmError("BROKEN_PNPM_INSTALL", `The pnpm v${version2} that was just installed cannot run: ${reason}`, {
    hint: `The installation at "${pnpmBinPath}" was discarded and the currently active pnpm was left in place, so pnpm still works. A release that installs but cannot run is a packaging fault \u2014 please report it at https://github.com/pnpm/pnpm/issues. To move to a different version meanwhile, pass one to "pnpm self-update".`
  });
}
async function findGlobalPnpmInstallDir(globalDir, pkgName, version2) {
  const existing = findGlobalPackage(globalDir, pkgName);
  if (!existing)
    return void 0;
  try {
    const pkgJson2 = JSON.parse(await fs99.promises.readFile(path179.join(existing.installDir, "node_modules", pkgName, "package.json"), "utf8"));
    if (pkgJson2.version === version2)
      return existing.installDir;
  } catch {
  }
  return void 0;
}
async function installFromLockfile(installDir, binDir, opts3) {
  const rootImporter = opts3.wantedLockfile.importers["."];
  const dependencies = rootImporter?.dependencies ?? {};
  fs99.writeFileSync(path179.join(installDir, "package.json"), JSON.stringify({ dependencies }));
  await headlessInstall({
    wantedLockfile: opts3.wantedLockfile,
    lockfileDir: installDir,
    storeController: opts3.storeController,
    storeDir: opts3.storeDir,
    registries: opts3.registries,
    enableGlobalVirtualStore: true,
    globalVirtualStoreDir: path179.join(opts3.storeDir, "links"),
    allowBuilds: opts3.allowBuilds,
    ignoreScripts: true,
    force: false,
    engineStrict: false,
    currentEngine: {
      pnpmVersion: opts3.packageManager?.version ?? ""
    },
    include: {
      dependencies: true,
      devDependencies: false,
      optionalDependencies: true
    },
    selectedProjectDirs: [installDir],
    allProjects: {
      [installDir]: {
        binsDir: binDir,
        buildIndex: 0,
        manifest: { dependencies },
        modulesDir: path179.join(installDir, "node_modules"),
        id: ".",
        rootDir: installDir
      }
    },
    hoistedDependencies: {},
    virtualStoreDirMaxLength: opts3.virtualStoreDirMaxLength,
    sideEffectsCacheRead: false,
    sideEffectsCacheWrite: false,
    configByUri: {},
    unsafePerm: false,
    userAgent: "",
    packageManager: opts3.packageManager ?? { name: "pnpm", version: "" },
    pruneStore: false,
    pendingBuilds: [],
    skipped: /* @__PURE__ */ new Set()
  });
}
async function installFromResolution(installDir, opts3, params) {
  const include = {
    dependencies: true,
    devDependencies: false,
    optionalDependencies: true
  };
  await installGlobalPackages({
    ...opts3,
    global: false,
    bin: path179.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,
    include,
    includeDirect: include,
    allowBuilds: {}
  }, params);
}
function exePlatformPkgDirName(platform5, arch2, libcFamily) {
  const normalizedArch = platform5 === "win32" && arch2 === "ia32" ? "x86" : arch2;
  return `${legacyOsSegment(platform5, libcFamily)}-${normalizedArch}`;
}
function legacyOsSegment(platform5, libcFamily) {
  switch (platform5) {
    case "darwin":
      return "macos";
    case "win32":
      return "win";
    case "linux":
      return libcFamily === "musl" ? "linuxstatic" : "linux";
    default:
      return platform5;
  }
}
function exePlatformPkgDirNameNext(platform5, arch2, libcFamily) {
  const normalizedArch = platform5 === "win32" && arch2 === "ia32" ? "x86" : arch2;
  const libcSuffix = platform5 === "linux" && libcFamily === "musl" ? "-musl" : "";
  return `exe.${platform5}-${normalizedArch}${libcSuffix}`;
}
function linkExePlatformBinary(installDir, wrapperPkgName = "@pnpm/exe") {
  const wrapperDir = path179.join(installDir, "node_modules", ...wrapperPkgName.split("/"));
  if (!fs99.existsSync(wrapperDir))
    return;
  const platform5 = process.platform;
  const arch2 = process.arch;
  const libcFamily = (0, import_detect_libc6.familySync)();
  const executable = platform5 === "win32" ? "pnpm.exe" : "pnpm";
  const wrapperRealDir = fs99.realpathSync(wrapperDir);
  const adjacentScopeDir = wrapperPkgName.startsWith("@") ? path179.dirname(wrapperRealDir) : path179.join(path179.dirname(wrapperRealDir), "@pnpm");
  const scopeDirs = /* @__PURE__ */ new Set([
    adjacentScopeDir,
    path179.join(installDir, "node_modules", "@pnpm")
  ]);
  const candidateDirNames = [
    exePlatformPkgDirName(platform5, arch2, libcFamily),
    exePlatformPkgDirNameNext(platform5, arch2, libcFamily)
  ];
  let src2;
  for (const scopeDir of scopeDirs) {
    for (const dirName of candidateDirNames) {
      const candidate = path179.join(scopeDir, dirName, executable);
      if (fs99.existsSync(candidate)) {
        src2 = candidate;
        break;
      }
    }
    if (src2 != null)
      break;
  }
  if (src2 == null)
    return;
  const dest = path179.join(wrapperDir, executable);
  forceLink(src2, dest);
  if (platform5 === "win32") {
    for (const alias of ["pn", "pnpx", "pnx"]) {
      forceLink(src2, path179.join(wrapperDir, `${alias}.exe`));
    }
    const wrapperPkgJsonPath = path179.join(wrapperDir, "package.json");
    const wrapperPkg = JSON.parse(fs99.readFileSync(wrapperPkgJsonPath, "utf8"));
    wrapperPkg.bin.pnpm = "pnpm.exe";
    wrapperPkg.bin.pn = "pn.exe";
    wrapperPkg.bin.pnpx = "pnpx.exe";
    wrapperPkg.bin.pnx = "pnx.exe";
    const tempPkgJsonPath = `${wrapperPkgJsonPath}.pnpm-tmp`;
    try {
      fs99.writeFileSync(tempPkgJsonPath, JSON.stringify(wrapperPkg, null, 2));
      fs99.renameSync(tempPkgJsonPath, wrapperPkgJsonPath);
    } catch (err2) {
      try {
        fs99.rmSync(tempPkgJsonPath, { force: true });
      } catch {
      }
      throw err2;
    }
  }
}
function forceLink(src2, dest) {
  try {
    fs99.unlinkSync(dest);
  } catch (err2) {
    if (!util52.types.isNativeError(err2) || !("code" in err2) || err2.code !== "ENOENT") {
      throw err2;
    }
  }
  fs99.linkSync(src2, dest);
  fs99.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_cross_spawn2, import_detect_libc6, import_semver55, PNPM_ALLOW_BUILDS, BROKEN_RELEASES;
var init_installPnpm = __esm({
  "../engine/pm/commands/lib/self-updater/installPnpm.js"() {
    "use strict";
    init_lib16();
    init_lib69();
    init_lib24();
    init_lib74();
    init_lib2();
    init_lib131();
    init_lib103();
    init_lib121();
    init_lib88();
    import_cross_spawn2 = __toESM(require_cross_spawn(), 1);
    import_detect_libc6 = __toESM(require_detect_libc(), 1);
    import_semver55 = __toESM(require_semver2(), 1);
    init_dist3();
    init_verifyPnpmEngineIdentity();
    PNPM_ALLOW_BUILDS = { "@pnpm/exe": true, "pnpm": true };
    BROKEN_RELEASES = /* @__PURE__ */ new Set(["11.12.0", "11.13.0"]);
  }
});

// ../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 fs100 from "node:fs";
import path180 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(opts3, params) {
  if (isExecutedByCorepack()) {
    throw new PnpmError("CANT_SELF_UPDATE_IN_COREPACK", "You should update pnpm with corepack");
  }
  globalInfo("Checking for updates...");
  const fullMetadata = shouldFetchFullMetadata(opts3);
  const bootstrapConfig = getPackageManagerBootstrapConfig(opts3);
  const { resolve: resolve4 } = createResolver2({
    ...opts3,
    ...bootstrapConfig,
    fullMetadata,
    filterMetadata: fullMetadata,
    ignoreMissingTimeField: opts3.minimumReleaseAgeIgnoreMissingTime
  });
  const pkgName = "pnpm";
  const { publishedBy, publishedByExclude } = getPublishedByPolicy(opts3);
  const isImplicitLatest = params.length === 0;
  const bareSpecifier = params[0] ?? "latest";
  const resolution = await resolve4({ alias: pkgName, bareSpecifier }, {
    lockfileDir: opts3.lockfileDir ?? opts3.dir,
    preferredVersions: {},
    projectDir: opts3.dir,
    publishedBy,
    publishedByExclude,
    // Unlike `dlx` (whose real install re-resolves through the store
    // controller), this `resolve` is self-update's only version selection,
    // so the trust policy has to be passed here for the no-downgrade check
    // to run.
    trustPolicy: opts3.trustPolicy,
    trustPolicyExclude: opts3.trustPolicyExclude ? createPackageVersionPolicyOrThrow(opts3.trustPolicyExclude, "trustPolicyExclude") : void 0,
    trustPolicyIgnoreAfter: opts3.trustPolicyIgnoreAfter
  });
  if (!resolution?.manifest) {
    throw new PnpmError("CANNOT_RESOLVE_PNPM", `Cannot find "${bareSpecifier}" version of pnpm`);
  }
  await enforceResolutionPolicy(resolution.policyViolation, opts3);
  const targetVersion = resolution.manifest.version;
  assertReleaseIsInstallable(targetVersion);
  let previousVersion;
  if (opts3.wantedPackageManager?.name === packageManager.name) {
    if (opts3.wantedPackageManager.version !== targetVersion) {
      previousVersion = opts3.wantedPackageManager.version;
    }
  } else if (packageManager.version !== targetVersion) {
    previousVersion = packageManager.version;
  }
  const previousMajor = previousVersion != null ? import_semver56.default.coerce(previousVersion)?.major : void 0;
  const targetMajor = import_semver56.default.major(targetVersion);
  if (previousMajor != null && targetMajor > previousMajor) {
    const hint = MAJOR_UPGRADE_HINTS[targetMajor];
    if (hint)
      globalWarn(hint);
  }
  if (opts3.wantedPackageManager?.name === packageManager.name) {
    if (opts3.wantedPackageManager?.version !== resolution.manifest.version) {
      if (isImplicitLatest) {
        const projectCurrentVersion = await readProjectPinnedPnpmVersion(opts3.rootProjectManifestDir, opts3.wantedPackageManager?.version);
        if (projectCurrentVersion != null && import_semver56.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(opts3.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);
        if (shouldPersistLockfile({ ...opts3.wantedPackageManager, fromDevEngines: true })) {
          const store2 = await createStoreController({ ...opts3, ...bootstrapConfig });
          await resolvePackageManagerIntegrities(resolution.manifest.version, {
            registries: bootstrapConfig.registries,
            rootDir: opts3.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 && await findGlobalPnpmInstallDir(opts3.globalPkgDir, pnpmPackageNameToInstall(resolution.manifest.version), resolution.manifest.version) != null) {
    return `The currently active ${packageManager.name} v${packageManager.version} is already "${bareSpecifier}" and doesn't need an update`;
  }
  if (isImplicitLatest && import_semver56.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({ ...opts3, ...bootstrapConfig });
  const envLockfile = await resolvePackageManagerIntegrities(resolution.manifest.version, {
    registries: bootstrapConfig.registries,
    rootDir: opts3.pnpmHomeDir,
    storeController: store.ctrl,
    storeDir: store.dir
  });
  const { baseDir, alreadyExisted } = await installPnpm(resolution.manifest.version, {
    ...opts3,
    ...bootstrapConfig,
    envLockfile,
    storeController: store.ctrl,
    storeDir: store.dir
  });
  await linkBins(path180.join(baseDir, "node_modules"), path180.join(opts3.pnpmHomeDir, "bin"), { warn: globalWarn });
  if (hasLegacyHomeDirShim(opts3.pnpmHomeDir)) {
    await linkBins(path180.join(baseDir, "node_modules"), opts3.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}`;
}
async function enforceResolutionPolicy(violation, opts3) {
  if (violation == null)
    return;
  if (violation.code !== MINIMUM_RELEASE_AGE_VIOLATION_CODE) {
    throw policyViolationToError(violation);
  }
  if (!opts3.minimumReleaseAge || opts3.minimumReleaseAgeStrict !== true)
    return;
  const message = `${violation.name}@${violation.version} ${violation.reason}.`;
  const canPrompt = !(opts3.ci ?? import_ci_info3.isCI) && Boolean(process.stdin.isTTY);
  if (!canPrompt) {
    throw new PnpmError("NO_MATURE_MATCHING_VERSION", message, {
      hint: "Wait for the release to mature past the cutoff, or set PNPM_CONFIG_MINIMUM_RELEASE_AGE=0 to update anyway."
    });
  }
  let confirmed;
  try {
    confirmed = await dist_default5({ message: `${message}
Update anyway?`, default: false });
  } catch (err2) {
    if (err2 instanceof Error && err2.name === "ExitPromptError") {
      confirmed = false;
    } else {
      throw err2;
    }
  }
  if (!confirmed) {
    throw new PnpmError("MINIMUM_RELEASE_AGE_DENIED", "Aborted: the immature pnpm version was not approved.");
  }
}
function hasLegacyHomeDirShim(pnpmHomeDir) {
  const shShim = path180.join(pnpmHomeDir, "pnpm");
  if (fs100.existsSync(shShim)) {
    const target2 = readShimTarget(shShim);
    if (target2 === void 0)
      return true;
    return fs100.existsSync(path180.resolve(path180.dirname(shShim), target2));
  }
  return fs100.existsSync(path180.join(pnpmHomeDir, "pnpm.cmd"));
}
function readShimTarget(shimPath) {
  try {
    return fs100.readFileSync(shimPath, "utf8").match(/^#\s*cmd-shim-target=(.+)$/m)?.[1];
  } catch {
  }
  return void 0;
}
function updateVersionConstraint(current, newVersion) {
  if (current == null)
    return newVersion;
  if (import_semver56.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_semver56.default.minVersion(spec)?.version;
    } catch {
    }
  }
  if (lockfilePinned != null && specMin != null) {
    return import_semver56.default.gt(lockfilePinned, specMin) ? lockfilePinned : specMin;
  }
  return lockfilePinned ?? specMin;
}
var import_ci_info3, import_semver56, commandNames33, MAJOR_UPGRADE_HINTS, skipPackageManagerCheck2;
var init_selfUpdate = __esm({
  "../engine/pm/commands/lib/self-updater/selfUpdate.js"() {
    "use strict";
    init_dist14();
    init_lib16();
    init_lib24();
    init_lib41();
    init_lib64();
    init_lib37();
    init_lib2();
    init_lib59();
    init_lib132();
    init_lib80();
    init_lib3();
    init_lib38();
    init_lib92();
    init_lib15();
    import_ci_info3 = __toESM(require_ci_info(), 1);
    init_es();
    init_lib66();
    import_semver56 = __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();
  }
});

// ../../../../../setup-pnpm/store/v11/links/@pnpm/os.env.path-extender-posix/3.0.1/e4945a60e1ffb283072309c3a1976443cd9ac7749218a65c5fd7bfe7bcdf9684/node_modules/@pnpm/os.env.path-extender-posix/dist/path-extender-posix.js
var require_path_extender_posix = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@pnpm/os.env.path-extender-posix/3.0.1/e4945a60e1ffb283072309c3a1976443cd9ac7749218a65c5fd7bfe7bcdf9684/node_modules/@pnpm/os.env.path-extender-posix/dist/path-extender-posix.js"(exports2) {
    "use strict";
    var __importDefault2 = exports2 && exports2.__importDefault || function(mod2) {
      return mod2 && mod2.__esModule ? mod2 : { "default": mod2 };
    };
    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_lib7();
    var BadShellSectionError = class extends error_1.PnpmError {
      constructor(opts3) {
        super("BAD_SHELL_SECTION", `The config file at "${opts3.configFile} already contains a ${opts3.configSectionName} section but with other configuration`);
        this.current = opts3.current;
        this.wanted = opts3.wanted;
      }
    };
    async function addDirToPosixEnvPath(dir, opts3) {
      const currentShell = detectCurrentShell();
      return await updateShell(currentShell, dir, opts3);
    }
    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, opts3) {
      switch (currentShell) {
        case "bash":
        case "zsh":
        case "ksh":
        case "dash":
        case "sh": {
          return setupShell(currentShell, pnpmHomeDir, opts3);
        }
        case "fish": {
          return setupFishShell(pnpmHomeDir, opts3);
        }
        case "nu": {
          return setupNuShell(pnpmHomeDir, opts3);
        }
      }
      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, opts3) {
      const configFile = getConfigFilePath(shell);
      let newSettings;
      const _createPathValue = createPathValue.bind(null, opts3.position ?? "start");
      if (opts3.proxyVarName) {
        const pathRef = opts3.proxyVarSubDir ? `$${opts3.proxyVarName}/${opts3.proxyVarSubDir}` : `$${opts3.proxyVarName}`;
        newSettings = `export ${opts3.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(opts3.configSectionName, newSettings);
      const { changeType, oldSettings } = await updateShellConfig(configFile, content, opts3);
      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, opts3) {
      const configFile = path_1.default.join(os_1.default.homedir(), ".config/fish/config.fish");
      let newSettings;
      const _createPathValue = createFishPathValue.bind(null, opts3.position ?? "start");
      if (opts3.proxyVarName) {
        const pathRef = opts3.proxyVarSubDir ? `$${opts3.proxyVarName}/${opts3.proxyVarSubDir}` : `$${opts3.proxyVarName}`;
        const matchPattern = opts3.proxyVarSubDir ? `"${pathRef}"` : pathRef;
        newSettings = `set -gx ${opts3.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(opts3.configSectionName, newSettings);
      const { changeType, oldSettings } = await updateShellConfig(configFile, content, opts3);
      return {
        configFile: {
          path: configFile,
          changeType
        },
        oldSettings,
        newSettings
      };
    }
    async function setupNuShell(dir, opts3) {
      const configFile = path_1.default.join(os_1.default.homedir(), ".config/nushell/env.nu");
      let newSettings;
      const addingCommand = (opts3.position ?? "start") === "start" ? "prepend" : "append";
      if (opts3.proxyVarName) {
        const pathRef = opts3.proxyVarSubDir ? `($env.${opts3.proxyVarName} | path join "${opts3.proxyVarSubDir}")` : `$env.${opts3.proxyVarName}`;
        newSettings = `$env.${opts3.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(opts3.configSectionName, newSettings);
      const { changeType, oldSettings } = await updateShellConfig(configFile, content, opts3);
      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, opts3) {
      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(`# ${opts3.configSectionName}
([\\s\\S]*)
# ${opts3.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 (!opts3.overwrite) {
          throw new BadShellSectionError({
            configSectionName: opts3.configSectionName,
            current: match[0],
            wanted: newContent,
            configFile
          });
        }
        const newConfigContent = replaceSection(configContent, newContent, opts3.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);
    }
  }
});

// ../../../../../setup-pnpm/store/v11/links/@pnpm/os.env.path-extender-posix/3.0.1/e4945a60e1ffb283072309c3a1976443cd9ac7749218a65c5fd7bfe7bcdf9684/node_modules/@pnpm/os.env.path-extender-posix/dist/index.js
var require_dist8 = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@pnpm/os.env.path-extender-posix/3.0.1/e4945a60e1ffb283072309c3a1976443cd9ac7749218a65c5fd7bfe7bcdf9684/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;
    } });
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/es-object-atoms/1.1.2/d35853a81d27e2407e673cab2a7f5b5c86ed5c9d9f30d58425b71f0d1f70d1c9/node_modules/es-object-atoms/index.js
var require_es_object_atoms = __commonJS({
  "../../../../../setup-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;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/es-errors/1.3.0/24993ac1c6e95a2b909d66d53cf24fe67e51ef7cbac7b8368110586e0aaf2463/node_modules/es-errors/index.js
var require_es_errors = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/es-errors/1.3.0/24993ac1c6e95a2b909d66d53cf24fe67e51ef7cbac7b8368110586e0aaf2463/node_modules/es-errors/index.js"(exports2, module2) {
    "use strict";
    module2.exports = Error;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/es-errors/1.3.0/24993ac1c6e95a2b909d66d53cf24fe67e51ef7cbac7b8368110586e0aaf2463/node_modules/es-errors/eval.js
var require_eval = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/es-errors/1.3.0/24993ac1c6e95a2b909d66d53cf24fe67e51ef7cbac7b8368110586e0aaf2463/node_modules/es-errors/eval.js"(exports2, module2) {
    "use strict";
    module2.exports = EvalError;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/es-errors/1.3.0/24993ac1c6e95a2b909d66d53cf24fe67e51ef7cbac7b8368110586e0aaf2463/node_modules/es-errors/range.js
var require_range4 = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/es-errors/1.3.0/24993ac1c6e95a2b909d66d53cf24fe67e51ef7cbac7b8368110586e0aaf2463/node_modules/es-errors/range.js"(exports2, module2) {
    "use strict";
    module2.exports = RangeError;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/es-errors/1.3.0/24993ac1c6e95a2b909d66d53cf24fe67e51ef7cbac7b8368110586e0aaf2463/node_modules/es-errors/ref.js
var require_ref = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/es-errors/1.3.0/24993ac1c6e95a2b909d66d53cf24fe67e51ef7cbac7b8368110586e0aaf2463/node_modules/es-errors/ref.js"(exports2, module2) {
    "use strict";
    module2.exports = ReferenceError;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/es-errors/1.3.0/24993ac1c6e95a2b909d66d53cf24fe67e51ef7cbac7b8368110586e0aaf2463/node_modules/es-errors/syntax.js
var require_syntax = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/es-errors/1.3.0/24993ac1c6e95a2b909d66d53cf24fe67e51ef7cbac7b8368110586e0aaf2463/node_modules/es-errors/syntax.js"(exports2, module2) {
    "use strict";
    module2.exports = SyntaxError;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/es-errors/1.3.0/24993ac1c6e95a2b909d66d53cf24fe67e51ef7cbac7b8368110586e0aaf2463/node_modules/es-errors/type.js
var require_type3 = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/es-errors/1.3.0/24993ac1c6e95a2b909d66d53cf24fe67e51ef7cbac7b8368110586e0aaf2463/node_modules/es-errors/type.js"(exports2, module2) {
    "use strict";
    module2.exports = TypeError;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/es-errors/1.3.0/24993ac1c6e95a2b909d66d53cf24fe67e51ef7cbac7b8368110586e0aaf2463/node_modules/es-errors/uri.js
var require_uri = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/es-errors/1.3.0/24993ac1c6e95a2b909d66d53cf24fe67e51ef7cbac7b8368110586e0aaf2463/node_modules/es-errors/uri.js"(exports2, module2) {
    "use strict";
    module2.exports = URIError;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/math-intrinsics/1.1.0/eb7290b0383a2a7d69eefb42bf190b3fe17b17b46f85a94b9ea9af2e1a55cb40/node_modules/math-intrinsics/abs.js
var require_abs = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/math-intrinsics/1.1.0/eb7290b0383a2a7d69eefb42bf190b3fe17b17b46f85a94b9ea9af2e1a55cb40/node_modules/math-intrinsics/abs.js"(exports2, module2) {
    "use strict";
    module2.exports = Math.abs;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/math-intrinsics/1.1.0/eb7290b0383a2a7d69eefb42bf190b3fe17b17b46f85a94b9ea9af2e1a55cb40/node_modules/math-intrinsics/floor.js
var require_floor2 = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/math-intrinsics/1.1.0/eb7290b0383a2a7d69eefb42bf190b3fe17b17b46f85a94b9ea9af2e1a55cb40/node_modules/math-intrinsics/floor.js"(exports2, module2) {
    "use strict";
    module2.exports = Math.floor;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/math-intrinsics/1.1.0/eb7290b0383a2a7d69eefb42bf190b3fe17b17b46f85a94b9ea9af2e1a55cb40/node_modules/math-intrinsics/max.js
var require_max2 = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/math-intrinsics/1.1.0/eb7290b0383a2a7d69eefb42bf190b3fe17b17b46f85a94b9ea9af2e1a55cb40/node_modules/math-intrinsics/max.js"(exports2, module2) {
    "use strict";
    module2.exports = Math.max;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/math-intrinsics/1.1.0/eb7290b0383a2a7d69eefb42bf190b3fe17b17b46f85a94b9ea9af2e1a55cb40/node_modules/math-intrinsics/min.js
var require_min2 = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/math-intrinsics/1.1.0/eb7290b0383a2a7d69eefb42bf190b3fe17b17b46f85a94b9ea9af2e1a55cb40/node_modules/math-intrinsics/min.js"(exports2, module2) {
    "use strict";
    module2.exports = Math.min;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/math-intrinsics/1.1.0/eb7290b0383a2a7d69eefb42bf190b3fe17b17b46f85a94b9ea9af2e1a55cb40/node_modules/math-intrinsics/pow.js
var require_pow = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/math-intrinsics/1.1.0/eb7290b0383a2a7d69eefb42bf190b3fe17b17b46f85a94b9ea9af2e1a55cb40/node_modules/math-intrinsics/pow.js"(exports2, module2) {
    "use strict";
    module2.exports = Math.pow;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/math-intrinsics/1.1.0/eb7290b0383a2a7d69eefb42bf190b3fe17b17b46f85a94b9ea9af2e1a55cb40/node_modules/math-intrinsics/round.js
var require_round2 = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/math-intrinsics/1.1.0/eb7290b0383a2a7d69eefb42bf190b3fe17b17b46f85a94b9ea9af2e1a55cb40/node_modules/math-intrinsics/round.js"(exports2, module2) {
    "use strict";
    module2.exports = Math.round;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/math-intrinsics/1.1.0/eb7290b0383a2a7d69eefb42bf190b3fe17b17b46f85a94b9ea9af2e1a55cb40/node_modules/math-intrinsics/isNaN.js
var require_isNaN2 = __commonJS({
  "../../../../../setup-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;
    };
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/math-intrinsics/1.1.0/eb7290b0383a2a7d69eefb42bf190b3fe17b17b46f85a94b9ea9af2e1a55cb40/node_modules/math-intrinsics/sign.js
var require_sign = __commonJS({
  "../../../../../setup-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;
    };
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/gopd/1.2.0/f83db696149e1f92e61b84fd56d397b4a9d56d819d173c63633a270d168f3c88/node_modules/gopd/gOPD.js
var require_gOPD = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/gopd/1.2.0/f83db696149e1f92e61b84fd56d397b4a9d56d819d173c63633a270d168f3c88/node_modules/gopd/gOPD.js"(exports2, module2) {
    "use strict";
    module2.exports = Object.getOwnPropertyDescriptor;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/gopd/1.2.0/f83db696149e1f92e61b84fd56d397b4a9d56d819d173c63633a270d168f3c88/node_modules/gopd/index.js
var require_gopd = __commonJS({
  "../../../../../setup-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;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/es-define-property/1.0.1/ee5c44fd2919d2411289ae5b1c29479563f4e47f76066129b6b05b6d740f0ae7/node_modules/es-define-property/index.js
var require_es_define_property = __commonJS({
  "../../../../../setup-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;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/has-symbols/1.1.0/939c5c72561d9447674a7f37519fa93acf88f422db90655c3f29274aed5082a9/node_modules/has-symbols/shams.js
var require_shams = __commonJS({
  "../../../../../setup-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;
    };
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/has-symbols/1.1.0/939c5c72561d9447674a7f37519fa93acf88f422db90655c3f29274aed5082a9/node_modules/has-symbols/index.js
var require_has_symbols = __commonJS({
  "../../../../../setup-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();
    };
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/get-proto/1.0.1/c319adda50fbebe4927d68fed4a69f8edb8dbc48270c5911efa8a1c1ce746368/node_modules/get-proto/Reflect.getPrototypeOf.js
var require_Reflect_getPrototypeOf = __commonJS({
  "../../../../../setup-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;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/get-proto/1.0.1/c319adda50fbebe4927d68fed4a69f8edb8dbc48270c5911efa8a1c1ce746368/node_modules/get-proto/Object.getPrototypeOf.js
var require_Object_getPrototypeOf = __commonJS({
  "../../../../../setup-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;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/function-bind/1.1.2/1ee678fc4cb7ca74adda07d426fb4315247838415d6fbaf0ac6ac13ade3bc4e2/node_modules/function-bind/implementation.js
var require_implementation = __commonJS({
  "../../../../../setup-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 max4 = Math.max;
    var funcType = "[object Function]";
    var concatty = function concatty2(a2, b) {
      var arr = [];
      for (var i4 = 0; i4 < a2.length; i4 += 1) {
        arr[i4] = a2[i4];
      }
      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 i4 = offset || 0, j2 = 0; i4 < arrLike.length; i4 += 1, j2 += 1) {
        arr[j2] = arrLike[i4];
      }
      return arr;
    };
    var joiny = function(arr, joiner) {
      var str2 = "";
      for (var i4 = 0; i4 < arr.length; i4 += 1) {
        str2 += arr[i4];
        if (i4 + 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 = max4(0, target2.length - args.length);
      var boundArgs = [];
      for (var i4 = 0; i4 < boundLength; i4++) {
        boundArgs[i4] = "$" + i4;
      }
      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;
    };
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/function-bind/1.1.2/1ee678fc4cb7ca74adda07d426fb4315247838415d6fbaf0ac6ac13ade3bc4e2/node_modules/function-bind/index.js
var require_function_bind = __commonJS({
  "../../../../../setup-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;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/call-bind-apply-helpers/1.0.2/ec36d394337159da41576a129a9a2daa51e1bab3d7431da59057bf4df92aa13a/node_modules/call-bind-apply-helpers/functionCall.js
var require_functionCall = __commonJS({
  "../../../../../setup-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;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/call-bind-apply-helpers/1.0.2/ec36d394337159da41576a129a9a2daa51e1bab3d7431da59057bf4df92aa13a/node_modules/call-bind-apply-helpers/functionApply.js
var require_functionApply = __commonJS({
  "../../../../../setup-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;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/call-bind-apply-helpers/1.0.2/ec36d394337159da41576a129a9a2daa51e1bab3d7431da59057bf4df92aa13a/node_modules/call-bind-apply-helpers/reflectApply.js
var require_reflectApply = __commonJS({
  "../../../../../setup-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;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/call-bind-apply-helpers/1.0.2/ec36d394337159da41576a129a9a2daa51e1bab3d7431da59057bf4df92aa13a/node_modules/call-bind-apply-helpers/actualApply.js
var require_actualApply = __commonJS({
  "../../../../../setup-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);
  }
});

// ../../../../../setup-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({
  "../../../../../setup-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);
    };
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/dunder-proto/1.0.1/31970353ac79f0c3444d11fa987ef18a78aaf8876aa75cf3776a7b90c2b1d926/node_modules/dunder-proto/get.js
var require_get2 = __commonJS({
  "../../../../../setup-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;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/get-proto/1.0.1/c319adda50fbebe4927d68fed4a69f8edb8dbc48270c5911efa8a1c1ce746368/node_modules/get-proto/index.js
var require_get_proto = __commonJS({
  "../../../../../setup-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_get2();
    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;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/hasown/2.0.4/d4bed03a9addf772885dcaa6e1cf6562bd6050ef004a097611d9f5efd3460849/node_modules/hasown/index.js
var require_hasown = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/hasown/2.0.4/d4bed03a9addf772885dcaa6e1cf6562bd6050ef004a097611d9f5efd3460849/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);
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/get-intrinsic/1.3.0/5ee6b98721a6765f4762e2d5b9d35d9a4a8b0c7dff3df867ab4e27161fbe7713/node_modules/get-intrinsic/index.js
var require_get_intrinsic = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/get-intrinsic/1.3.0/5ee6b98721a6765f4762e2d5b9d35d9a4a8b0c7dff3df867ab4e27161fbe7713/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 abs2 = require_abs();
    var floor = require_floor2();
    var max4 = 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%": abs2,
      "%Math.floor%": floor,
      "%Math.max%": max4,
      "%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 gen2 = doEval2("%AsyncGenerator%");
        if (gen2 && getProto) {
          value = getProto(gen2.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 hasOwn2 = 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 (hasOwn2(LEGACY_ALIASES, intrinsicName)) {
        alias = LEGACY_ALIASES[intrinsicName];
        intrinsicName = "%" + alias[0] + "%";
      }
      if (hasOwn2(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 i4 = 1, isOwn = true; i4 < parts.length; i4 += 1) {
        var part = parts[i4];
        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 (hasOwn2(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 && i4 + 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 = hasOwn2(value, part);
            value = value[part];
          }
          if (isOwn && !skipFurtherCaching) {
            INTRINSICS[intrinsicRealName] = value;
          }
        }
      }
      return value;
    };
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/define-data-property/1.1.4/cc7c98ca6a3e90a428d5047c4769761611ef1ac50c23cc259097e2e551d5af0c/node_modules/define-data-property/index.js
var require_define_data_property = __commonJS({
  "../../../../../setup-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.");
      }
    };
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/has-property-descriptors/1.0.2/f43ec73a676512c6f4ab797b0b36c4c1982d903414c5df6277d6cf1d09662148/node_modules/has-property-descriptors/index.js
var require_has_property_descriptors = __commonJS({
  "../../../../../setup-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;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/set-function-length/1.2.2/5ab815de03e0a454b19494f4ffee87584e4a1be5ddb4d56719a170fc8d0cf4d6/node_modules/set-function-length/index.js
var require_set_function_length = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/set-function-length/1.2.2/5ab815de03e0a454b19494f4ffee87584e4a1be5ddb4d56719a170fc8d0cf4d6/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;
    };
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/call-bind-apply-helpers/1.0.2/ec36d394337159da41576a129a9a2daa51e1bab3d7431da59057bf4df92aa13a/node_modules/call-bind-apply-helpers/applyBind.js
var require_applyBind = __commonJS({
  "../../../../../setup-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);
    };
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/call-bind/1.0.9/9b09bc80c0b815caf32b58ca73206a234bb427aca0ecfea5fc05a483883a9fd6/node_modules/call-bind/index.js
var require_call_bind = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/call-bind/1.0.9/9b09bc80c0b815caf32b58ca73206a234bb427aca0ecfea5fc05a483883a9fd6/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;
    }
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/object-keys/1.1.1/58477a00855acdcf562413483b00ceca079f637e0816908fc5ef653c014cfe3b/node_modules/object-keys/isArguments.js
var require_isArguments2 = __commonJS({
  "../../../../../setup-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;
    };
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/object-keys/1.1.1/58477a00855acdcf562413483b00ceca079f637e0816908fc5ef653c014cfe3b/node_modules/object-keys/implementation.js
var require_implementation2 = __commonJS({
  "../../../../../setup-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 i4 = 0; i4 < object.length; ++i4) {
            theKeys.push(String(i4));
          }
        }
        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;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/object-keys/1.1.1/58477a00855acdcf562413483b00ceca079f637e0816908fc5ef653c014cfe3b/node_modules/object-keys/index.js
var require_object_keys = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/object-keys/1.1.1/58477a00855acdcf562413483b00ceca079f637e0816908fc5ef653c014cfe3b/node_modules/object-keys/index.js"(exports2, module2) {
    "use strict";
    var slice4 = 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(slice4.call(object));
            }
            return originalKeys(object);
          };
        }
      } else {
        Object.keys = keysShim;
      }
      return Object.keys || keysShim;
    };
    module2.exports = keysShim;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/define-properties/1.2.1/47c44c4cec973fb176b237c32638f21b4613cdc783af4a9d6c893574415bb1ca/node_modules/define-properties/index.js
var require_define_properties = __commonJS({
  "../../../../../setup-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 concat2 = 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 = concat2.call(props3, Object.getOwnPropertySymbols(map26));
      }
      for (var i4 = 0; i4 < props3.length; i4 += 1) {
        defineProperty(object, props3[i4], map26[props3[i4]], predicates[props3[i4]]);
      }
    };
    defineProperties.supportsDescriptors = !!supportsDescriptors;
    module2.exports = defineProperties;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/call-bound/1.0.4/fb7f9942b8bb9aca4c3afadadaca3946cabacf8e63222edb8f277b588033370c/node_modules/call-bound/index.js
var require_call_bound = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/call-bound/1.0.4/fb7f9942b8bb9aca4c3afadadaca3946cabacf8e63222edb8f277b588033370c/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;
    };
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/es-abstract/1.24.2/ff366a304c022c821dcfb7453f7540677739d8f4807a5d3b624c4151368b5c14/node_modules/es-abstract/helpers/IsArray.js
var require_IsArray = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/es-abstract/1.24.2/ff366a304c022c821dcfb7453f7540677739d8f4807a5d3b624c4151368b5c14/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]";
    };
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/es-abstract/1.24.2/ff366a304c022c821dcfb7453f7540677739d8f4807a5d3b624c4151368b5c14/node_modules/es-abstract/2024/IsArray.js
var require_IsArray2 = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/es-abstract/1.24.2/ff366a304c022c821dcfb7453f7540677739d8f4807a5d3b624c4151368b5c14/node_modules/es-abstract/2024/IsArray.js"(exports2, module2) {
    "use strict";
    module2.exports = require_IsArray();
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/es-abstract/1.24.2/ff366a304c022c821dcfb7453f7540677739d8f4807a5d3b624c4151368b5c14/node_modules/es-abstract/2024/Call.js
var require_Call = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/es-abstract/1.24.2/ff366a304c022c821dcfb7453f7540677739d8f4807a5d3b624c4151368b5c14/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);
    };
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/object-inspect/1.13.4/14f7d528809a692dc6ab35c97cd514983e8be8ec48eb7abed298493a4800b7d3/node_modules/object-inspect/util.inspect.js
var require_util_inspect = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/object-inspect/1.13.4/14f7d528809a692dc6ab35c97cd514983e8be8ec48eb7abed298493a4800b7d3/node_modules/object-inspect/util.inspect.js"(exports2, module2) {
    module2.exports = __require("util").inspect;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/object-inspect/1.13.4/14f7d528809a692dc6ab35c97cd514983e8be8ec48eb7abed298493a4800b7d3/node_modules/object-inspect/index.js
var require_object_inspect = __commonJS({
  "../../../../../setup-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 opts3 = options || {};
      if (has(opts3, "quoteStyle") && !has(quotes, opts3.quoteStyle)) {
        throw new TypeError('option "quoteStyle" must be "single" or "double"');
      }
      if (has(opts3, "maxStringLength") && (typeof opts3.maxStringLength === "number" ? opts3.maxStringLength < 0 && opts3.maxStringLength !== Infinity : opts3.maxStringLength !== null)) {
        throw new TypeError('option "maxStringLength", if provided, must be a positive integer, Infinity, or `null`');
      }
      var customInspect = has(opts3, "customInspect") ? opts3.customInspect : true;
      if (typeof customInspect !== "boolean" && customInspect !== "symbol") {
        throw new TypeError("option \"customInspect\", if provided, must be `true`, `false`, or `'symbol'`");
      }
      if (has(opts3, "indent") && opts3.indent !== null && opts3.indent !== "	" && !(parseInt(opts3.indent, 10) === opts3.indent && opts3.indent > 0)) {
        throw new TypeError('option "indent" must be "\\t", an integer > 0, or `null`');
      }
      if (has(opts3, "numericSeparator") && typeof opts3.numericSeparator !== "boolean") {
        throw new TypeError('option "numericSeparator", if provided, must be `true` or `false`');
      }
      var numericSeparator = opts3.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, opts3);
      }
      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 opts3.depth === "undefined" ? 5 : opts3.depth;
      if (typeof depth === "undefined") {
        depth = 0;
      }
      if (depth >= maxDepth && maxDepth > 0 && typeof obj === "object") {
        return isArray(obj) ? "[Array]" : "[Object]";
      }
      var indent = getIndent(opts3, 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: opts3.depth
          };
          if (has(opts3, "quoteStyle")) {
            newOpts.quoteStyle = opts3.quoteStyle;
          }
          return inspect_(value, newOpts, depth + 1, seen);
        }
        return inspect_(value, opts3, 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 i4 = 0; i4 < attrs.length; i4++) {
          s += " " + attrs[i4].name + "=" + wrapQuotes(quote2(attrs[i4].value), "double", opts3);
        }
        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 (isMap2(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 isPlainObject5 = gPO ? gPO(obj) === Object.prototype : obj instanceof Object || obj.constructor === Object;
        var protoTag = obj instanceof Object ? "" : "null prototype";
        var stringTag = !isPlainObject5 && toStringTag && Object(obj) === obj && toStringTag in obj ? $slice.call(toStr(obj), 8, -1) : protoTag ? "Object" : "";
        var constructorTag = isPlainObject5 || 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, opts3) {
      var style = opts3.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 hasOwn2 = Object.prototype.hasOwnProperty || function(key) {
      return key in this;
    };
    function has(obj, key) {
      return hasOwn2.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, x3) {
      if (xs.indexOf) {
        return xs.indexOf(x3);
      }
      for (var i4 = 0, l = xs.length; i4 < l; i4++) {
        if (xs[i4] === x3) {
          return i4;
        }
      }
      return -1;
    }
    function isMap2(x3) {
      if (!mapSize || !x3 || typeof x3 !== "object") {
        return false;
      }
      try {
        mapSize.call(x3);
        try {
          setSize.call(x3);
        } catch (s) {
          return true;
        }
        return x3 instanceof Map;
      } catch (e) {
      }
      return false;
    }
    function isWeakMap(x3) {
      if (!weakMapHas || !x3 || typeof x3 !== "object") {
        return false;
      }
      try {
        weakMapHas.call(x3, weakMapHas);
        try {
          weakSetHas.call(x3, weakSetHas);
        } catch (s) {
          return true;
        }
        return x3 instanceof WeakMap;
      } catch (e) {
      }
      return false;
    }
    function isWeakRef(x3) {
      if (!weakRefDeref || !x3 || typeof x3 !== "object") {
        return false;
      }
      try {
        weakRefDeref.call(x3);
        return true;
      } catch (e) {
      }
      return false;
    }
    function isSet(x3) {
      if (!setSize || !x3 || typeof x3 !== "object") {
        return false;
      }
      try {
        setSize.call(x3);
        try {
          mapSize.call(x3);
        } catch (m) {
          return true;
        }
        return x3 instanceof Set;
      } catch (e) {
      }
      return false;
    }
    function isWeakSet(x3) {
      if (!weakSetHas || !x3 || typeof x3 !== "object") {
        return false;
      }
      try {
        weakSetHas.call(x3, weakSetHas);
        try {
          weakMapHas.call(x3, weakMapHas);
        } catch (s) {
          return true;
        }
        return x3 instanceof WeakSet;
      } catch (e) {
      }
      return false;
    }
    function isElement(x3) {
      if (!x3 || typeof x3 !== "object") {
        return false;
      }
      if (typeof HTMLElement !== "undefined" && x3 instanceof HTMLElement) {
        return true;
      }
      return typeof x3.nodeName === "string" && typeof x3.getAttribute === "function";
    }
    function inspectString(str2, opts3) {
      if (str2.length > opts3.maxStringLength) {
        var remaining = str2.length - opts3.maxStringLength;
        var trailer = "... " + remaining + " more character" + (remaining > 1 ? "s" : "");
        return inspectString($slice.call(str2, 0, opts3.maxStringLength), opts3) + trailer;
      }
      var quoteRE = quoteREs[opts3.quoteStyle || "single"];
      quoteRE.lastIndex = 0;
      var s = $replace.call($replace.call(str2, quoteRE, "\\$1"), /[\x00-\x1f]/g, lowbyte);
      return wrapQuotes(s, "single", opts3);
    }
    function lowbyte(c3) {
      var n2 = c3.charCodeAt(0);
      var x3 = {
        8: "b",
        9: "t",
        10: "n",
        12: "f",
        13: "r"
      }[n2];
      if (x3) {
        return "\\" + x3;
      }
      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 i4 = 0; i4 < xs.length; i4++) {
        if (indexOf2(xs[i4], "\n") >= 0) {
          return false;
        }
      }
      return true;
    }
    function getIndent(opts3, depth) {
      var baseIndent;
      if (opts3.indent === "	") {
        baseIndent = "	";
      } else if (typeof opts3.indent === "number" && opts3.indent > 0) {
        baseIndent = $join.call(Array(opts3.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 i4 = 0; i4 < obj.length; i4++) {
          xs[i4] = has(obj, i4) ? inspect3(obj[i4], 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;
    }
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/es-abstract/1.24.2/ff366a304c022c821dcfb7453f7540677739d8f4807a5d3b624c4151368b5c14/node_modules/es-abstract/helpers/isPropertyKey.js
var require_isPropertyKey = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/es-abstract/1.24.2/ff366a304c022c821dcfb7453f7540677739d8f4807a5d3b624c4151368b5c14/node_modules/es-abstract/helpers/isPropertyKey.js"(exports2, module2) {
    "use strict";
    module2.exports = function isPropertyKey(argument) {
      return typeof argument === "string" || typeof argument === "symbol";
    };
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/es-object-atoms/1.1.2/d35853a81d27e2407e673cab2a7f5b5c86ed5c9d9f30d58425b71f0d1f70d1c9/node_modules/es-object-atoms/isObject.js
var require_isObject2 = __commonJS({
  "../../../../../setup-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(x3) {
      return !!x3 && (typeof x3 === "function" || typeof x3 === "object");
    };
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/es-abstract/1.24.2/ff366a304c022c821dcfb7453f7540677739d8f4807a5d3b624c4151368b5c14/node_modules/es-abstract/2024/Get.js
var require_Get = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/es-abstract/1.24.2/ff366a304c022c821dcfb7453f7540677739d8f4807a5d3b624c4151368b5c14/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];
    };
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/es-abstract/1.24.2/ff366a304c022c821dcfb7453f7540677739d8f4807a5d3b624c4151368b5c14/node_modules/es-abstract/2024/GetV.js
var require_GetV = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/es-abstract/1.24.2/ff366a304c022c821dcfb7453f7540677739d8f4807a5d3b624c4151368b5c14/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];
    };
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/is-callable/1.2.7/0fa81dff8334465c4588283759a800b3c5e1f70e612527b15e53953a569322cc/node_modules/is-callable/index.js
var require_is_callable = __commonJS({
  "../../../../../setup-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);
    };
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/es-abstract/1.24.2/ff366a304c022c821dcfb7453f7540677739d8f4807a5d3b624c4151368b5c14/node_modules/es-abstract/2024/IsCallable.js
var require_IsCallable = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/es-abstract/1.24.2/ff366a304c022c821dcfb7453f7540677739d8f4807a5d3b624c4151368b5c14/node_modules/es-abstract/2024/IsCallable.js"(exports2, module2) {
    "use strict";
    module2.exports = require_is_callable();
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/es-abstract/1.24.2/ff366a304c022c821dcfb7453f7540677739d8f4807a5d3b624c4151368b5c14/node_modules/es-abstract/2024/GetMethod.js
var require_GetMethod = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/es-abstract/1.24.2/ff366a304c022c821dcfb7453f7540677739d8f4807a5d3b624c4151368b5c14/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;
    };
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/has-tostringtag/1.0.2/6c12594cd679ae455e293e034a8799789c6cb9306591e6ef64c95927f1324bc1/node_modules/has-tostringtag/shams.js
var require_shams2 = __commonJS({
  "../../../../../setup-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;
    };
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/is-regex/1.2.1/4199ceeb39d8983e22aa250d7bdd040309560a3547438ca9e0f71518cd90b1c9/node_modules/is-regex/index.js
var require_is_regex = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/is-regex/1.2.1/4199ceeb39d8983e22aa250d7bdd040309560a3547438ca9e0f71518cd90b1c9/node_modules/is-regex/index.js"(exports2, module2) {
    "use strict";
    var callBound = require_call_bound();
    var hasToStringTag = require_shams2()();
    var hasOwn2 = 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 && hasOwn2(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;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/es-abstract/1.24.2/ff366a304c022c821dcfb7453f7540677739d8f4807a5d3b624c4151368b5c14/node_modules/es-abstract/2024/ToBoolean.js
var require_ToBoolean = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/es-abstract/1.24.2/ff366a304c022c821dcfb7453f7540677739d8f4807a5d3b624c4151368b5c14/node_modules/es-abstract/2024/ToBoolean.js"(exports2, module2) {
    "use strict";
    module2.exports = function ToBoolean(value) {
      return !!value;
    };
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/es-abstract/1.24.2/ff366a304c022c821dcfb7453f7540677739d8f4807a5d3b624c4151368b5c14/node_modules/es-abstract/2024/IsRegExp.js
var require_IsRegExp = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/es-abstract/1.24.2/ff366a304c022c821dcfb7453f7540677739d8f4807a5d3b624c4151368b5c14/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);
    };
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/es-abstract/1.24.2/ff366a304c022c821dcfb7453f7540677739d8f4807a5d3b624c4151368b5c14/node_modules/es-abstract/2024/ToString.js
var require_ToString = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/es-abstract/1.24.2/ff366a304c022c821dcfb7453f7540677739d8f4807a5d3b624c4151368b5c14/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);
    };
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/es-object-atoms/1.1.2/d35853a81d27e2407e673cab2a7f5b5c86ed5c9d9f30d58425b71f0d1f70d1c9/node_modules/es-object-atoms/RequireObjectCoercible.js
var require_RequireObjectCoercible = __commonJS({
  "../../../../../setup-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;
    };
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/functions-have-names/1.2.3/3deecccf3db8e1d426dbdb5d31d7dbe08f5ce2f712e422af9697224f0af8218f/node_modules/functions-have-names/index.js
var require_functions_have_names = __commonJS({
  "../../../../../setup-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;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/set-function-name/2.0.2/7e2b9052ca8b042810f228f8573b15fff76f7f6c7a7d893c9548940dd071980e/node_modules/set-function-name/index.js
var require_set_function_name = __commonJS({
  "../../../../../setup-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;
    };
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/regexp.prototype.flags/1.5.4/db5f86bf5e0884becc4b39a8f283bfcbb337798619e0e02546cc34ba7693e0f4/node_modules/regexp.prototype.flags/implementation.js
var require_implementation3 = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/regexp.prototype.flags/1.5.4/db5f86bf5e0884becc4b39a8f283bfcbb337798619e0e02546cc34ba7693e0f4/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);
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/regexp.prototype.flags/1.5.4/db5f86bf5e0884becc4b39a8f283bfcbb337798619e0e02546cc34ba7693e0f4/node_modules/regexp.prototype.flags/polyfill.js
var require_polyfill = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/regexp.prototype.flags/1.5.4/db5f86bf5e0884becc4b39a8f283bfcbb337798619e0e02546cc34ba7693e0f4/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;
    };
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/regexp.prototype.flags/1.5.4/db5f86bf5e0884becc4b39a8f283bfcbb337798619e0e02546cc34ba7693e0f4/node_modules/regexp.prototype.flags/shim.js
var require_shim = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/regexp.prototype.flags/1.5.4/db5f86bf5e0884becc4b39a8f283bfcbb337798619e0e02546cc34ba7693e0f4/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 proto3 = getProto(regex2);
      var descriptor = gOPD(proto3, "flags");
      if (!descriptor || descriptor.get !== polyfill) {
        defineProperty(proto3, "flags", {
          configurable: true,
          enumerable: false,
          get: polyfill
        });
      }
      return polyfill;
    };
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/regexp.prototype.flags/1.5.4/db5f86bf5e0884becc4b39a8f283bfcbb337798619e0e02546cc34ba7693e0f4/node_modules/regexp.prototype.flags/index.js
var require_regexp_prototype = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/regexp.prototype.flags/1.5.4/db5f86bf5e0884becc4b39a8f283bfcbb337798619e0e02546cc34ba7693e0f4/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;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/es-abstract/1.24.2/ff366a304c022c821dcfb7453f7540677739d8f4807a5d3b624c4151368b5c14/node_modules/es-abstract/helpers/isLeadingSurrogate.js
var require_isLeadingSurrogate = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/es-abstract/1.24.2/ff366a304c022c821dcfb7453f7540677739d8f4807a5d3b624c4151368b5c14/node_modules/es-abstract/helpers/isLeadingSurrogate.js"(exports2, module2) {
    "use strict";
    module2.exports = function isLeadingSurrogate(charCode) {
      return typeof charCode === "number" && charCode >= 55296 && charCode <= 56319;
    };
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/es-abstract/1.24.2/ff366a304c022c821dcfb7453f7540677739d8f4807a5d3b624c4151368b5c14/node_modules/es-abstract/helpers/isTrailingSurrogate.js
var require_isTrailingSurrogate = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/es-abstract/1.24.2/ff366a304c022c821dcfb7453f7540677739d8f4807a5d3b624c4151368b5c14/node_modules/es-abstract/helpers/isTrailingSurrogate.js"(exports2, module2) {
    "use strict";
    module2.exports = function isTrailingSurrogate(charCode) {
      return typeof charCode === "number" && charCode >= 56320 && charCode <= 57343;
    };
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/es-abstract/1.24.2/ff366a304c022c821dcfb7453f7540677739d8f4807a5d3b624c4151368b5c14/node_modules/es-abstract/2024/UTF16SurrogatePairToCodePoint.js
var require_UTF16SurrogatePairToCodePoint = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/es-abstract/1.24.2/ff366a304c022c821dcfb7453f7540677739d8f4807a5d3b624c4151368b5c14/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);
    };
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/es-abstract/1.24.2/ff366a304c022c821dcfb7453f7540677739d8f4807a5d3b624c4151368b5c14/node_modules/es-abstract/2024/CodePointAt.js
var require_CodePointAt = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/es-abstract/1.24.2/ff366a304c022c821dcfb7453f7540677739d8f4807a5d3b624c4151368b5c14/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
      };
    };
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/math-intrinsics/1.1.0/eb7290b0383a2a7d69eefb42bf190b3fe17b17b46f85a94b9ea9af2e1a55cb40/node_modules/math-intrinsics/isFinite.js
var require_isFinite2 = __commonJS({
  "../../../../../setup-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(x3) {
      return (typeof x3 === "number" || typeof x3 === "bigint") && !$isNaN(x3) && x3 !== Infinity && x3 !== -Infinity;
    };
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/math-intrinsics/1.1.0/eb7290b0383a2a7d69eefb42bf190b3fe17b17b46f85a94b9ea9af2e1a55cb40/node_modules/math-intrinsics/isInteger.js
var require_isInteger2 = __commonJS({
  "../../../../../setup-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;
    };
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/math-intrinsics/1.1.0/eb7290b0383a2a7d69eefb42bf190b3fe17b17b46f85a94b9ea9af2e1a55cb40/node_modules/math-intrinsics/constants/maxSafeInteger.js
var require_maxSafeInteger = __commonJS({
  "../../../../../setup-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;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/es-abstract/1.24.2/ff366a304c022c821dcfb7453f7540677739d8f4807a5d3b624c4151368b5c14/node_modules/es-abstract/2024/AdvanceStringIndex.js
var require_AdvanceStringIndex = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/es-abstract/1.24.2/ff366a304c022c821dcfb7453f7540677739d8f4807a5d3b624c4151368b5c14/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(S3, index2, unicode) {
      if (typeof S3 !== "string") {
        throw new $TypeError("Assertion failed: `S` must be a String");
      }
      if (!isInteger2(index2) || index2 < 0 || index2 > 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 index2 + 1;
      }
      var length = S3.length;
      if (index2 + 1 >= length) {
        return index2 + 1;
      }
      var cp = CodePointAt(S3, index2);
      return index2 + cp["[[CodeUnitCount]]"];
    };
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/es-abstract/1.24.2/ff366a304c022c821dcfb7453f7540677739d8f4807a5d3b624c4151368b5c14/node_modules/es-abstract/2024/CreateIterResultObject.js
var require_CreateIterResultObject = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/es-abstract/1.24.2/ff366a304c022c821dcfb7453f7540677739d8f4807a5d3b624c4151368b5c14/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
      };
    };
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/es-abstract/1.24.2/ff366a304c022c821dcfb7453f7540677739d8f4807a5d3b624c4151368b5c14/node_modules/es-abstract/helpers/records/property-descriptor.js
var require_property_descriptor = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/es-abstract/1.24.2/ff366a304c022c821dcfb7453f7540677739d8f4807a5d3b624c4151368b5c14/node_modules/es-abstract/helpers/records/property-descriptor.js"(exports2, module2) {
    "use strict";
    var $TypeError = require_type3();
    var hasOwn2 = 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 (hasOwn2(Desc, key) && !allowed[key]) {
          return false;
        }
      }
      var isData = hasOwn2(Desc, "[[Value]]") || hasOwn2(Desc, "[[Writable]]");
      var IsAccessor = hasOwn2(Desc, "[[Get]]") || hasOwn2(Desc, "[[Set]]");
      if (isData && IsAccessor) {
        throw new $TypeError("Property Descriptors may not be both accessor and data descriptors");
      }
      return true;
    };
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/es-abstract/1.24.2/ff366a304c022c821dcfb7453f7540677739d8f4807a5d3b624c4151368b5c14/node_modules/es-abstract/helpers/DefineOwnProperty.js
var require_DefineOwnProperty = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/es-abstract/1.24.2/ff366a304c022c821dcfb7453f7540677739d8f4807a5d3b624c4151368b5c14/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;
    };
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/es-abstract/1.24.2/ff366a304c022c821dcfb7453f7540677739d8f4807a5d3b624c4151368b5c14/node_modules/es-abstract/helpers/fromPropertyDescriptor.js
var require_fromPropertyDescriptor = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/es-abstract/1.24.2/ff366a304c022c821dcfb7453f7540677739d8f4807a5d3b624c4151368b5c14/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;
    };
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/es-abstract/1.24.2/ff366a304c022c821dcfb7453f7540677739d8f4807a5d3b624c4151368b5c14/node_modules/es-abstract/2024/FromPropertyDescriptor.js
var require_FromPropertyDescriptor = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/es-abstract/1.24.2/ff366a304c022c821dcfb7453f7540677739d8f4807a5d3b624c4151368b5c14/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);
    };
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/es-abstract/1.24.2/ff366a304c022c821dcfb7453f7540677739d8f4807a5d3b624c4151368b5c14/node_modules/es-abstract/2024/IsDataDescriptor.js
var require_IsDataDescriptor = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/es-abstract/1.24.2/ff366a304c022c821dcfb7453f7540677739d8f4807a5d3b624c4151368b5c14/node_modules/es-abstract/2024/IsDataDescriptor.js"(exports2, module2) {
    "use strict";
    var $TypeError = require_type3();
    var hasOwn2 = 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 (!hasOwn2(Desc, "[[Value]]") && !hasOwn2(Desc, "[[Writable]]")) {
        return false;
      }
      return true;
    };
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/es-abstract/1.24.2/ff366a304c022c821dcfb7453f7540677739d8f4807a5d3b624c4151368b5c14/node_modules/es-abstract/2024/SameValue.js
var require_SameValue = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/es-abstract/1.24.2/ff366a304c022c821dcfb7453f7540677739d8f4807a5d3b624c4151368b5c14/node_modules/es-abstract/2024/SameValue.js"(exports2, module2) {
    "use strict";
    var $isNaN = require_isNaN2();
    module2.exports = function SameValue(x3, y) {
      if (x3 === y) {
        if (x3 === 0) {
          return 1 / x3 === 1 / y;
        }
        return true;
      }
      return $isNaN(x3) && $isNaN(y);
    };
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/es-abstract/1.24.2/ff366a304c022c821dcfb7453f7540677739d8f4807a5d3b624c4151368b5c14/node_modules/es-abstract/2024/ToPropertyDescriptor.js
var require_ToPropertyDescriptor = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/es-abstract/1.24.2/ff366a304c022c821dcfb7453f7540677739d8f4807a5d3b624c4151368b5c14/node_modules/es-abstract/2024/ToPropertyDescriptor.js"(exports2, module2) {
    "use strict";
    var hasOwn2 = 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 (hasOwn2(Obj, "enumerable")) {
        desc["[[Enumerable]]"] = ToBoolean(Obj.enumerable);
      }
      if (hasOwn2(Obj, "configurable")) {
        desc["[[Configurable]]"] = ToBoolean(Obj.configurable);
      }
      if (hasOwn2(Obj, "value")) {
        desc["[[Value]]"] = Obj.value;
      }
      if (hasOwn2(Obj, "writable")) {
        desc["[[Writable]]"] = ToBoolean(Obj.writable);
      }
      if (hasOwn2(Obj, "get")) {
        var getter = Obj.get;
        if (typeof getter !== "undefined" && !IsCallable(getter)) {
          throw new $TypeError("getter must be a function");
        }
        desc["[[Get]]"] = getter;
      }
      if (hasOwn2(Obj, "set")) {
        var setter = Obj.set;
        if (typeof setter !== "undefined" && !IsCallable(setter)) {
          throw new $TypeError("setter must be a function");
        }
        desc["[[Set]]"] = setter;
      }
      if ((hasOwn2(desc, "[[Get]]") || hasOwn2(desc, "[[Set]]")) && (hasOwn2(desc, "[[Value]]") || hasOwn2(desc, "[[Writable]]"))) {
        throw new $TypeError("Invalid property descriptor. Cannot both specify accessors and a value or writable attribute");
      }
      return desc;
    };
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/es-abstract/1.24.2/ff366a304c022c821dcfb7453f7540677739d8f4807a5d3b624c4151368b5c14/node_modules/es-abstract/2024/DefinePropertyOrThrow.js
var require_DefinePropertyOrThrow = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/es-abstract/1.24.2/ff366a304c022c821dcfb7453f7540677739d8f4807a5d3b624c4151368b5c14/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
      );
    };
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/es-abstract/1.24.2/ff366a304c022c821dcfb7453f7540677739d8f4807a5d3b624c4151368b5c14/node_modules/es-abstract/helpers/isPrimitive.js
var require_isPrimitive2 = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/es-abstract/1.24.2/ff366a304c022c821dcfb7453f7540677739d8f4807a5d3b624c4151368b5c14/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";
    };
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/es-abstract/1.24.2/ff366a304c022c821dcfb7453f7540677739d8f4807a5d3b624c4151368b5c14/node_modules/es-abstract/2024/IsExtensible.js
var require_IsExtensible = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/es-abstract/1.24.2/ff366a304c022c821dcfb7453f7540677739d8f4807a5d3b624c4151368b5c14/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);
    };
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/es-abstract/1.24.2/ff366a304c022c821dcfb7453f7540677739d8f4807a5d3b624c4151368b5c14/node_modules/es-abstract/2024/DefineMethodProperty.js
var require_DefineMethodProperty = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/es-abstract/1.24.2/ff366a304c022c821dcfb7453f7540677739d8f4807a5d3b624c4151368b5c14/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);
    };
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/es-abstract/1.24.2/ff366a304c022c821dcfb7453f7540677739d8f4807a5d3b624c4151368b5c14/node_modules/es-abstract/helpers/forEach.js
var require_forEach2 = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/es-abstract/1.24.2/ff366a304c022c821dcfb7453f7540677739d8f4807a5d3b624c4151368b5c14/node_modules/es-abstract/helpers/forEach.js"(exports2, module2) {
    "use strict";
    module2.exports = function forEach(array, callback2) {
      for (var i4 = 0; i4 < array.length; i4 += 1) {
        callback2(array[i4], i4, array);
      }
    };
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/side-channel-list/1.0.1/eef57ddc90ee97d95113ce76dda93cbda2f5cdbc875b86e48e85572f3fcaa1fa/node_modules/side-channel-list/index.js
var require_side_channel_list = __commonJS({
  "../../../../../setup-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;
    };
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/side-channel-map/1.0.1/26d16c65feee1f5341d7c166ae63a45d5508db73071c7ff4667c20abf4322747/node_modules/side-channel-map/index.js
var require_side_channel_map = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/side-channel-map/1.0.1/26d16c65feee1f5341d7c166ae63a45d5508db73071c7ff4667c20abf4322747/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;
    };
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/side-channel-weakmap/1.0.2/859148e6a75fce7a44811f56e280bea89b467a6e2efc3842f8e67e1377e96dbc/node_modules/side-channel-weakmap/index.js
var require_side_channel_weakmap = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/side-channel-weakmap/1.0.2/859148e6a75fce7a44811f56e280bea89b467a6e2efc3842f8e67e1377e96dbc/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;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/side-channel/1.1.1/a51b29d7ebf87842fc355a6e61dc975c62ba41a2e40826f05fd2be26feffded4/node_modules/side-channel/index.js
var require_side_channel = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/side-channel/1.1.1/a51b29d7ebf87842fc355a6e61dc975c62ba41a2e40826f05fd2be26feffded4/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)) {
            var keyDesc = key && Object(key) === key ? "the given object key" : inspect3(key);
            throw new $TypeError("Side channel does not contain " + keyDesc);
          }
        },
        "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;
    };
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/internal-slot/1.1.0/ffbe7e6edcf5c85fe1402bae8c714aecd1159de51214f115cde580abfb2b5e8c/node_modules/internal-slot/index.js
var require_internal_slot = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/internal-slot/1.1.0/ffbe7e6edcf5c85fe1402bae8c714aecd1159de51214f115cde580abfb2b5e8c/node_modules/internal-slot/index.js"(exports2, module2) {
    "use strict";
    var hasOwn2 = 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 && hasOwn2(
          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;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/has-proto/1.2.0/de8970d26fb60753e9daa3de299a4af5e0b792e814f8e9962ba0fbd7e27e4bdb/node_modules/has-proto/index.js
var require_has_proto = __commonJS({
  "../../../../../setup-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;
    };
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/es-abstract/1.24.2/ff366a304c022c821dcfb7453f7540677739d8f4807a5d3b624c4151368b5c14/node_modules/es-abstract/2024/OrdinaryObjectCreate.js
var require_OrdinaryObjectCreate = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/es-abstract/1.24.2/ff366a304c022c821dcfb7453f7540677739d8f4807a5d3b624c4151368b5c14/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(proto3) {
      if (proto3 !== null && !isObject4(proto3)) {
        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__: proto3 };
      } else if ($ObjectCreate) {
        O2 = $ObjectCreate(proto3);
      } else {
        if (proto3 === null) {
          throw new $SyntaxError("native Object.create support is required to create null objects");
        }
        var T2 = function T3() {
        };
        T2.prototype = proto3;
        O2 = new T2();
      }
      if (additionalInternalSlotsList.length > 0) {
        forEach(additionalInternalSlotsList, function(slot) {
          SLOT.set(O2, slot, void 0);
        });
      }
      return O2;
    };
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/es-abstract/1.24.2/ff366a304c022c821dcfb7453f7540677739d8f4807a5d3b624c4151368b5c14/node_modules/es-abstract/2024/RegExpExec.js
var require_RegExpExec = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/es-abstract/1.24.2/ff366a304c022c821dcfb7453f7540677739d8f4807a5d3b624c4151368b5c14/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, S3) {
      if (!isObject4(R2)) {
        throw new $TypeError("Assertion failed: `R` must be an Object");
      }
      if (typeof S3 !== "string") {
        throw new $TypeError("Assertion failed: `S` must be a String");
      }
      var exec2 = Get(R2, "exec");
      if (IsCallable(exec2)) {
        var result2 = Call(exec2, R2, [S3]);
        if (result2 === null || isObject4(result2)) {
          return result2;
        }
        throw new $TypeError('"exec" method must return `null` or an Object');
      }
      return regexExec(R2, S3);
    };
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/es-abstract/1.24.2/ff366a304c022c821dcfb7453f7540677739d8f4807a5d3b624c4151368b5c14/node_modules/es-abstract/2024/Set.js
var require_Set = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/es-abstract/1.24.2/ff366a304c022c821dcfb7453f7540677739d8f4807a5d3b624c4151368b5c14/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;
      }
    };
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/is-date-object/1.1.0/3db0fc260211fae816fec45c64939e91f1881f32d77ddc7d2f28fbb528931095/node_modules/is-date-object/index.js
var require_is_date_object = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/is-date-object/1.1.0/3db0fc260211fae816fec45c64939e91f1881f32d77ddc7d2f28fbb528931095/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;
    };
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/safe-regex-test/1.1.0/4713096ae6bdba51e62863b76917af41f4920d3bab5693a8641108d2b3f599b7/node_modules/safe-regex-test/index.js
var require_safe_regex_test = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/safe-regex-test/1.1.0/4713096ae6bdba51e62863b76917af41f4920d3bab5693a8641108d2b3f599b7/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;
      };
    };
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/is-symbol/1.1.1/a3806ee277a0b685752fcb5371bc13bae9d278de0dc16572d23f9df42908aa27/node_modules/is-symbol/index.js
var require_is_symbol = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/is-symbol/1.1.1/a3806ee277a0b685752fcb5371bc13bae9d278de0dc16572d23f9df42908aa27/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;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/es-to-primitive/1.3.4/93aefe4c11701a39a1e9023751ee78ad4f16cd5d85b97c8c846e1032f86ac0d4/node_modules/es-to-primitive/helpers/isPrimitive.js
var require_isPrimitive3 = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/es-to-primitive/1.3.4/93aefe4c11701a39a1e9023751ee78ad4f16cd5d85b97c8c846e1032f86ac0d4/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";
    };
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/es-abstract-get/1.0.0/241c0b8440086726b4349f9f37ef72d09456a0c094ccbbd9185a4ff79a3e62c6/node_modules/es-abstract-get/isPropertyKey.js
var require_isPropertyKey2 = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/es-abstract-get/1.0.0/241c0b8440086726b4349f9f37ef72d09456a0c094ccbbd9185a4ff79a3e62c6/node_modules/es-abstract-get/isPropertyKey.js"(exports2, module2) {
    "use strict";
    module2.exports = function isPropertyKey(argument) {
      return typeof argument === "string" || typeof argument === "symbol";
    };
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/es-abstract-get/1.0.0/241c0b8440086726b4349f9f37ef72d09456a0c094ccbbd9185a4ff79a3e62c6/node_modules/es-abstract-get/GetV.js
var require_GetV2 = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/es-abstract-get/1.0.0/241c0b8440086726b4349f9f37ef72d09456a0c094ccbbd9185a4ff79a3e62c6/node_modules/es-abstract-get/GetV.js"(exports2, module2) {
    "use strict";
    var $TypeError = require_type3();
    var inspect3 = require_object_inspect();
    var isPropertyKey = require_isPropertyKey2();
    module2.exports = function GetV(V, P2) {
      if (!isPropertyKey(P2)) {
        throw new $TypeError("Assertion failed: P is not a Property Key, got " + inspect3(P2));
      }
      return (
        /** @type {Record<typeof P, unknown>} */
        V[P2]
      );
    };
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/es-abstract-get/1.0.0/241c0b8440086726b4349f9f37ef72d09456a0c094ccbbd9185a4ff79a3e62c6/node_modules/es-abstract-get/GetMethod.js
var require_GetMethod2 = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/es-abstract-get/1.0.0/241c0b8440086726b4349f9f37ef72d09456a0c094ccbbd9185a4ff79a3e62c6/node_modules/es-abstract-get/GetMethod.js"(exports2, module2) {
    "use strict";
    var $TypeError = require_type3();
    var isCallable = require_is_callable();
    var inspect3 = require_object_inspect();
    var GetV = require_GetV2();
    var isPropertyKey = require_isPropertyKey2();
    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;
    };
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/es-to-primitive/1.3.4/93aefe4c11701a39a1e9023751ee78ad4f16cd5d85b97c8c846e1032f86ac0d4/node_modules/es-to-primitive/es2015.js
var require_es2015 = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/es-to-primitive/1.3.4/93aefe4c11701a39a1e9023751ee78ad4f16cd5d85b97c8c846e1032f86ac0d4/node_modules/es-to-primitive/es2015.js"(exports2, module2) {
    "use strict";
    var hasSymbols = typeof Symbol === "function" && typeof Symbol.iterator === "symbol";
    var isCallable = require_is_callable();
    var isDate = require_is_date_object();
    var isSymbol = require_is_symbol();
    var $TypeError = require_type3();
    var isPrimitive2 = require_isPrimitive3();
    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 method2, result2, i4;
      for (i4 = 0; i4 < methodNames.length; ++i4) {
        method2 = O2[methodNames[i4]];
        if (isCallable(method2)) {
          result2 = method2.call(O2);
          if (isPrimitive2(result2)) {
            return (
              /** @type {primitiveES6} */
              result2
            );
          }
        }
      }
      throw new $TypeError("No default value");
    }
    var GetMethod = require_GetMethod2();
    module2.exports = function ToPrimitive(input) {
      if (isPrimitive2(input)) {
        return (
          /** @type {primitiveES6} */
          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 {{ [k in SymbolConstructor['toPrimitive']]?: Function }} */
            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 (
            /** @type {primitiveES6} */
            result2
          );
        }
        throw new $TypeError("unable to convert exotic object to primitive");
      }
      if (hint === "default" && (isDate(input) || isSymbol(input))) {
        hint = /** @type {const} */
        "string";
      }
      return OrdinaryToPrimitive(input, hint === "default" ? "number" : hint);
    };
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/es-abstract/1.24.2/ff366a304c022c821dcfb7453f7540677739d8f4807a5d3b624c4151368b5c14/node_modules/es-abstract/2024/ToPrimitive.js
var require_ToPrimitive = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/es-abstract/1.24.2/ff366a304c022c821dcfb7453f7540677739d8f4807a5d3b624c4151368b5c14/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);
    };
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/es-abstract/1.24.2/ff366a304c022c821dcfb7453f7540677739d8f4807a5d3b624c4151368b5c14/node_modules/es-abstract/2025/ToString.js
var require_ToString2 = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/es-abstract/1.24.2/ff366a304c022c821dcfb7453f7540677739d8f4807a5d3b624c4151368b5c14/node_modules/es-abstract/2025/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);
    };
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/string.prototype.trim/1.2.11/1709e4b1f4bc61e1d09c0ec1eaa548d8eb11282c0b1e04a05b47ea22029a7b57/node_modules/string.prototype.trim/implementation.js
var require_implementation4 = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/string.prototype.trim/1.2.11/1709e4b1f4bc61e1d09c0ec1eaa548d8eb11282c0b1e04a05b47ea22029a7b57/node_modules/string.prototype.trim/implementation.js"(exports2, module2) {
    "use strict";
    var RequireObjectCoercible = require_RequireObjectCoercible();
    var ToString = require_ToString2();
    var callBound = require_call_bound();
    var safeRegexTester = require_safe_regex_test();
    var $replace = callBound("String.prototype.replace");
    var $charAt = callBound("String.prototype.charAt");
    var $slice = callBound("String.prototype.slice");
    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 isWhitespace2 = safeRegexTester(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 S3 = $replace(ToString(RequireObjectCoercible(this)), leftWhitespace, "");
      var end = S3.length;
      while (end > 0 && isWhitespace2($charAt(S3, end - 1))) {
        end -= 1;
      }
      return $slice(S3, 0, end);
    };
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/string.prototype.trim/1.2.11/1709e4b1f4bc61e1d09c0ec1eaa548d8eb11282c0b1e04a05b47ea22029a7b57/node_modules/string.prototype.trim/polyfill.js
var require_polyfill2 = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/string.prototype.trim/1.2.11/1709e4b1f4bc61e1d09c0ec1eaa548d8eb11282c0b1e04a05b47ea22029a7b57/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;
    };
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/string.prototype.trim/1.2.11/1709e4b1f4bc61e1d09c0ec1eaa548d8eb11282c0b1e04a05b47ea22029a7b57/node_modules/string.prototype.trim/shim.js
var require_shim2 = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/string.prototype.trim/1.2.11/1709e4b1f4bc61e1d09c0ec1eaa548d8eb11282c0b1e04a05b47ea22029a7b57/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;
    };
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/string.prototype.trim/1.2.11/1709e4b1f4bc61e1d09c0ec1eaa548d8eb11282c0b1e04a05b47ea22029a7b57/node_modules/string.prototype.trim/index.js
var require_string_prototype = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/string.prototype.trim/1.2.11/1709e4b1f4bc61e1d09c0ec1eaa548d8eb11282c0b1e04a05b47ea22029a7b57/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;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/es-abstract/1.24.2/ff366a304c022c821dcfb7453f7540677739d8f4807a5d3b624c4151368b5c14/node_modules/es-abstract/2024/StringToNumber.js
var require_StringToNumber = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/es-abstract/1.24.2/ff366a304c022c821dcfb7453f7540677739d8f4807a5d3b624c4151368b5c14/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;
    };
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/es-abstract/1.24.2/ff366a304c022c821dcfb7453f7540677739d8f4807a5d3b624c4151368b5c14/node_modules/es-abstract/2024/ToNumber.js
var require_ToNumber = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/es-abstract/1.24.2/ff366a304c022c821dcfb7453f7540677739d8f4807a5d3b624c4151368b5c14/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;
    };
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/es-abstract/1.24.2/ff366a304c022c821dcfb7453f7540677739d8f4807a5d3b624c4151368b5c14/node_modules/es-abstract/2024/floor.js
var require_floor3 = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/es-abstract/1.24.2/ff366a304c022c821dcfb7453f7540677739d8f4807a5d3b624c4151368b5c14/node_modules/es-abstract/2024/floor.js"(exports2, module2) {
    "use strict";
    var $floor = require_floor2();
    module2.exports = function floor(x3) {
      if (typeof x3 === "bigint") {
        return x3;
      }
      return $floor(x3);
    };
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/es-abstract/1.24.2/ff366a304c022c821dcfb7453f7540677739d8f4807a5d3b624c4151368b5c14/node_modules/es-abstract/2024/truncate.js
var require_truncate4 = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/es-abstract/1.24.2/ff366a304c022c821dcfb7453f7540677739d8f4807a5d3b624c4151368b5c14/node_modules/es-abstract/2024/truncate.js"(exports2, module2) {
    "use strict";
    var floor = require_floor3();
    var $TypeError = require_type3();
    module2.exports = function truncate(x3) {
      if (typeof x3 !== "number" && typeof x3 !== "bigint") {
        throw new $TypeError("argument must be a Number or a BigInt");
      }
      var result2 = x3 < 0 ? -floor(-x3) : floor(x3);
      return result2 === 0 ? 0 : result2;
    };
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/es-abstract/1.24.2/ff366a304c022c821dcfb7453f7540677739d8f4807a5d3b624c4151368b5c14/node_modules/es-abstract/2024/ToIntegerOrInfinity.js
var require_ToIntegerOrInfinity = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/es-abstract/1.24.2/ff366a304c022c821dcfb7453f7540677739d8f4807a5d3b624c4151368b5c14/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);
    };
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/es-abstract/1.24.2/ff366a304c022c821dcfb7453f7540677739d8f4807a5d3b624c4151368b5c14/node_modules/es-abstract/2024/ToLength.js
var require_ToLength = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/es-abstract/1.24.2/ff366a304c022c821dcfb7453f7540677739d8f4807a5d3b624c4151368b5c14/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;
    };
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/es-set-tostringtag/2.1.0/d9dd2f16892c2504307b56135d8f62f7949a43ad434c684fa3c850f55cc47879/node_modules/es-set-tostringtag/index.js
var require_es_set_tostringtag = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/es-set-tostringtag/2.1.0/d9dd2f16892c2504307b56135d8f62f7949a43ad434c684fa3c850f55cc47879/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 hasOwn2 = 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 || !hasOwn2(object, toStringTag))) {
        if ($defineProperty) {
          $defineProperty(object, toStringTag, {
            configurable: !nonConfigurable,
            enumerable: false,
            value,
            writable: false
          });
        } else {
          object[toStringTag] = value;
        }
      }
    };
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/es-abstract/1.24.2/ff366a304c022c821dcfb7453f7540677739d8f4807a5d3b624c4151368b5c14/node_modules/es-abstract/2024/CreateRegExpStringIterator.js
var require_CreateRegExpStringIterator = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/es-abstract/1.24.2/ff366a304c022c821dcfb7453f7540677739d8f4807a5d3b624c4151368b5c14/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, S3, global3, fullUnicode) {
      if (typeof S3 !== "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]]", S3);
      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 S3 = SLOT.get(O2, "[[IteratedString]]");
      var global3 = SLOT.get(O2, "[[Global]]");
      var fullUnicode = SLOT.get(O2, "[[Unicode]]");
      var match = RegExpExec(R2, S3);
      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(S3, 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, S3, global3, fullUnicode) {
      return new RegExpStringIterator(R2, S3, global3, fullUnicode);
    };
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/es-abstract/1.24.2/ff366a304c022c821dcfb7453f7540677739d8f4807a5d3b624c4151368b5c14/node_modules/es-abstract/GetIntrinsic.js
var require_GetIntrinsic = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/es-abstract/1.24.2/ff366a304c022c821dcfb7453f7540677739d8f4807a5d3b624c4151368b5c14/node_modules/es-abstract/GetIntrinsic.js"(exports2, module2) {
    "use strict";
    module2.exports = require_get_intrinsic();
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/es-abstract/1.24.2/ff366a304c022c821dcfb7453f7540677739d8f4807a5d3b624c4151368b5c14/node_modules/es-abstract/2024/IsConstructor.js
var require_IsConstructor = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/es-abstract/1.24.2/ff366a304c022c821dcfb7453f7540677739d8f4807a5d3b624c4151368b5c14/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 (err2) {
          return err2 === isConstructorMarker;
        }
      };
    } else {
      module2.exports = function IsConstructor(argument) {
        return typeof argument === "function" && !!argument.prototype;
      };
    }
    var isConstructorMarker;
    var badArrayLike;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/es-abstract/1.24.2/ff366a304c022c821dcfb7453f7540677739d8f4807a5d3b624c4151368b5c14/node_modules/es-abstract/2024/SpeciesConstructor.js
var require_SpeciesConstructor = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/es-abstract/1.24.2/ff366a304c022c821dcfb7453f7540677739d8f4807a5d3b624c4151368b5c14/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 S3 = $species ? C[$species] : void 0;
      if (S3 == null) {
        return defaultConstructor;
      }
      if (IsConstructor(S3)) {
        return S3;
      }
      throw new $TypeError("no constructor found");
    };
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/es-abstract/1.24.2/ff366a304c022c821dcfb7453f7540677739d8f4807a5d3b624c4151368b5c14/node_modules/es-abstract/5/Type.js
var require_Type = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/es-abstract/1.24.2/ff366a304c022c821dcfb7453f7540677739d8f4807a5d3b624c4151368b5c14/node_modules/es-abstract/5/Type.js"(exports2, module2) {
    "use strict";
    var isObject4 = require_isObject2();
    module2.exports = function Type2(x3) {
      if (x3 === null) {
        return "Null";
      }
      if (typeof x3 === "undefined") {
        return "Undefined";
      }
      if (isObject4(x3)) {
        return "Object";
      }
      if (typeof x3 === "number") {
        return "Number";
      }
      if (typeof x3 === "boolean") {
        return "Boolean";
      }
      if (typeof x3 === "string") {
        return "String";
      }
    };
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/es-abstract/1.24.2/ff366a304c022c821dcfb7453f7540677739d8f4807a5d3b624c4151368b5c14/node_modules/es-abstract/2024/Type.js
var require_Type2 = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/es-abstract/1.24.2/ff366a304c022c821dcfb7453f7540677739d8f4807a5d3b624c4151368b5c14/node_modules/es-abstract/2024/Type.js"(exports2, module2) {
    "use strict";
    var ES5Type = require_Type();
    module2.exports = function Type2(x3) {
      if (typeof x3 === "symbol") {
        return "Symbol";
      }
      if (typeof x3 === "bigint") {
        return "BigInt";
      }
      return ES5Type(x3);
    };
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/string.prototype.matchall/4.0.12/7b750c88c8610bf2646fedae9464aafd98820b8685c7166febd4f3a26f974336/node_modules/string.prototype.matchall/regexp-matchall.js
var require_regexp_matchall = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/string.prototype.matchall/4.0.12/7b750c88c8610bf2646fedae9464aafd98820b8685c7166febd4f3a26f974336/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 S3 = 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, S3, global3, fullUnicode);
    }, "[Symbol.matchAll]", true);
    module2.exports = regexMatchAll;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/string.prototype.matchall/4.0.12/7b750c88c8610bf2646fedae9464aafd98820b8685c7166febd4f3a26f974336/node_modules/string.prototype.matchall/polyfill-regexp-matchall.js
var require_polyfill_regexp_matchall = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/string.prototype.matchall/4.0.12/7b750c88c8610bf2646fedae9464aafd98820b8685c7166febd4f3a26f974336/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];
    };
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/string.prototype.matchall/4.0.12/7b750c88c8610bf2646fedae9464aafd98820b8685c7166febd4f3a26f974336/node_modules/string.prototype.matchall/implementation.js
var require_implementation5 = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/string.prototype.matchall/4.0.12/7b750c88c8610bf2646fedae9464aafd98820b8685c7166febd4f3a26f974336/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 S3 = ToString(O2);
      var rx = new $RegExp(regexp, "g");
      return Call(getMatcher(rx), rx, [S3]);
    };
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/string.prototype.matchall/4.0.12/7b750c88c8610bf2646fedae9464aafd98820b8685c7166febd4f3a26f974336/node_modules/string.prototype.matchall/polyfill.js
var require_polyfill3 = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/string.prototype.matchall/4.0.12/7b750c88c8610bf2646fedae9464aafd98820b8685c7166febd4f3a26f974336/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;
    };
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/string.prototype.matchall/4.0.12/7b750c88c8610bf2646fedae9464aafd98820b8685c7166febd4f3a26f974336/node_modules/string.prototype.matchall/shim.js
var require_shim3 = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/string.prototype.matchall/4.0.12/7b750c88c8610bf2646fedae9464aafd98820b8685c7166febd4f3a26f974336/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;
    };
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/string.prototype.matchall/4.0.12/7b750c88c8610bf2646fedae9464aafd98820b8685c7166febd4f3a26f974336/node_modules/string.prototype.matchall/index.js
var require_string_prototype2 = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/string.prototype.matchall/4.0.12/7b750c88c8610bf2646fedae9464aafd98820b8685c7166febd4f3a26f974336/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;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/strip-final-newline/2.0.0/2c0ee6fd926adbf0c99bc5709a4241ee954e61534a646d9259c579bba4f1915f/node_modules/strip-final-newline/index.js
var require_strip_final_newline = __commonJS({
  "../../../../../setup-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;
    };
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/npm-run-path/4.0.1/790b7737eb354bc6a99b7c833987eddc3119975e5622b7482bf4a095e53103d5/node_modules/npm-run-path/index.js
var require_npm_run_path = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/npm-run-path/4.0.1/790b7737eb354bc6a99b7c833987eddc3119975e5622b7482bf4a095e53103d5/node_modules/npm-run-path/index.js"(exports2, module2) {
    "use strict";
    var path240 = __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 = path240.resolve(options.cwd);
      const result2 = [];
      while (previous !== cwdPath) {
        result2.push(path240.join(cwdPath, "node_modules/.bin"));
        previous = cwdPath;
        cwdPath = path240.resolve(cwdPath, "..");
      }
      const execPathDir = path240.resolve(options.cwd, options.execPath, "..");
      result2.push(execPathDir);
      return result2.concat(options.path).join(path240.delimiter);
    };
    module2.exports = npmRunPath2;
    module2.exports.default = npmRunPath2;
    module2.exports.env = (options) => {
      options = {
        env: process.env,
        ...options
      };
      const env4 = { ...options.env };
      const path241 = pathKey2({ env: env4 });
      options.path = env4[path241];
      env4[path241] = module2.exports(options);
      return env4;
    };
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/mimic-fn/2.1.0/661fe86562ed40cbf3a8de1ddde06d94ead5d33b1f8957ecfc185e96daabcb71/node_modules/mimic-fn/index.js
var require_mimic_fn2 = __commonJS({
  "../../../../../setup-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;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/onetime/5.1.2/3b3396ba47d4c8f2008b9953f98a652de8e9d76595c92aaa3d9cb4ae786b2098/node_modules/onetime/index.js
var require_onetime = __commonJS({
  "../../../../../setup-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_);
    };
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/human-signals/2.1.0/37f6712f9c648b03511f8d0440097c44c1dc5f305107499d0bfb9ea79e2c4ee0/node_modules/human-signals/build/src/core.js
var require_core6 = __commonJS({
  "../../../../../setup-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;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/human-signals/2.1.0/37f6712f9c648b03511f8d0440097c44c1dc5f305107499d0bfb9ea79e2c4ee0/node_modules/human-signals/build/src/realtime.js
var require_realtime = __commonJS({
  "../../../../../setup-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, index2) {
      return {
        name: `SIGRT${index2 + 1}`,
        number: SIGRTMIN2 + index2,
        action: "terminate",
        description: "Application-specific signal (realtime)",
        standard: "posix"
      };
    };
    var SIGRTMIN2 = 34;
    var SIGRTMAX2 = 64;
    exports2.SIGRTMAX = SIGRTMAX2;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/human-signals/2.1.0/37f6712f9c648b03511f8d0440097c44c1dc5f305107499d0bfb9ea79e2c4ee0/node_modules/human-signals/build/src/signals.js
var require_signals3 = __commonJS({
  "../../../../../setup-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 };
    };
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/human-signals/2.1.0/37f6712f9c648b03511f8d0440097c44c1dc5f305107499d0bfb9ea79e2c4ee0/node_modules/human-signals/build/src/main.js
var require_main2 = __commonJS({
  "../../../../../setup-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;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/execa/5.1.1/62699bd39e784a61ca7e36e367cd0c01479cb83b35e41d0c0cac26ec31616a9b/node_modules/execa/lib/error.js
var require_error2 = __commonJS({
  "../../../../../setup-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;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/execa/5.1.1/62699bd39e784a61ca7e36e367cd0c01479cb83b35e41d0c0cac26ec31616a9b/node_modules/execa/lib/stdio.js
var require_stdio = __commonJS({
  "../../../../../setup-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, index2) => stdio[index2]);
    };
    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"];
    };
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/execa/5.1.1/62699bd39e784a61ca7e36e367cd0c01479cb83b35e41d0c0cac26ec31616a9b/node_modules/execa/lib/kill.js
var require_kill = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/execa/5.1.1/62699bd39e784a61ca7e36e367cd0c01479cb83b35e41d0c0cac26ec31616a9b/node_modules/execa/lib/kill.js"(exports2, module2) {
    "use strict";
    var os20 = __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 === os20.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((resolve4, 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: cleanup2, detached }, timedPromise) => {
      if (!cleanup2 || detached) {
        return timedPromise;
      }
      const removeExitHandler = onExit2(() => {
        spawned.kill();
      });
      return timedPromise.finally(() => {
        removeExitHandler();
      });
    };
    module2.exports = {
      spawnedKill,
      spawnedCancel,
      setupTimeout,
      validateTimeout: validateTimeout2,
      setExitHandler
    };
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/is-stream/2.0.1/43a2859fe2e1c051e1d7631b16be73251bcfca844f9202a3d169e5d6c6166c2a/node_modules/is-stream/index.js
var require_is_stream = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/is-stream/2.0.1/43a2859fe2e1c051e1d7631b16be73251bcfca844f9202a3d169e5d6c6166c2a/node_modules/is-stream/index.js"(exports2, module2) {
    "use strict";
    var isStream4 = (stream2) => stream2 !== null && typeof stream2 === "object" && typeof stream2.pipe === "function";
    isStream4.writable = (stream2) => isStream4(stream2) && stream2.writable !== false && typeof stream2._write === "function" && typeof stream2._writableState === "object";
    isStream4.readable = (stream2) => isStream4(stream2) && stream2.readable !== false && typeof stream2._read === "function" && typeof stream2._readableState === "object";
    isStream4.duplex = (stream2) => isStream4.writable(stream2) && isStream4.readable(stream2);
    isStream4.transform = (stream2) => isStream4.duplex(stream2) && typeof stream2._transform === "function";
    module2.exports = isStream4;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/get-stream/6.0.1/ed221139473d56f3d5fd32143fdfac5cd645d3304b8043a719062c0a5d0300de/node_modules/get-stream/buffer-stream.js
var require_buffer_stream = __commonJS({
  "../../../../../setup-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;
    };
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/get-stream/6.0.1/ed221139473d56f3d5fd32143fdfac5cd645d3304b8043a719062c0a5d0300de/node_modules/get-stream/index.js
var require_get_stream = __commonJS({
  "../../../../../setup-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: promisify15 } = __require("util");
    var bufferStream2 = require_buffer_stream();
    var streamPipelinePromisified = promisify15(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((resolve4, reject3) => {
        const rejectPromise = (error) => {
          if (error && stream3.getBufferedLength() <= BufferConstants.MAX_LENGTH) {
            error.bufferedData = stream3.getBufferedValue();
          }
          reject3(error);
        };
        (async () => {
          try {
            await streamPipelinePromisified(inputStream, stream3);
            resolve4();
          } 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;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/merge-stream/2.0.0/e7755731ccbfb409bfbce4d8871909d4330f91365aad9aecb163a88f2a9196bb/node_modules/merge-stream/index.js
var require_merge_stream = __commonJS({
  "../../../../../setup-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 = add2;
      output.isEmpty = isEmpty4;
      output.on("unpipe", remove);
      Array.prototype.slice.call(arguments).forEach(add2);
      return output;
      function add2(source) {
        if (Array.isArray(source)) {
          source.forEach(add2);
          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();
        }
      }
    };
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/execa/5.1.1/62699bd39e784a61ca7e36e367cd0c01479cb83b35e41d0c0cac26ec31616a9b/node_modules/execa/lib/stream.js
var require_stream5 = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/execa/5.1.1/62699bd39e784a61ca7e36e367cd0c01479cb83b35e41d0c0cac26ec31616a9b/node_modules/execa/lib/stream.js"(exports2, module2) {
    "use strict";
    var isStream4 = 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 (isStream4(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 (isStream4(input)) {
        throw new TypeError("The `input` option cannot be a stream in sync mode");
      }
    };
    module2.exports = {
      handleInput,
      makeAllStream: makeAllStream2,
      getSpawnedResult,
      validateInputSync
    };
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/execa/5.1.1/62699bd39e784a61ca7e36e367cd0c01479cb83b35e41d0c0cac26ec31616a9b/node_modules/execa/lib/promise.js
var require_promise2 = __commonJS({
  "../../../../../setup-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((resolve4, reject3) => {
        spawned.on("exit", (exitCode, signal) => {
          resolve4({ exitCode, signal });
        });
        spawned.on("error", (error) => {
          reject3(error);
        });
        if (spawned.stdin) {
          spawned.stdin.on("error", (error) => {
            reject3(error);
          });
        }
      });
    };
    module2.exports = {
      mergePromise: mergePromise2,
      getSpawnedPromise
    };
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/execa/5.1.1/62699bd39e784a61ca7e36e367cd0c01479cb83b35e41d0c0cac26ec31616a9b/node_modules/execa/lib/command.js
var require_command = __commonJS({
  "../../../../../setup-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
    };
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/execa/5.1.1/62699bd39e784a61ca7e36e367cd0c01479cb83b35e41d0c0cac26ec31616a9b/node_modules/execa/index.js
var require_execa = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/execa/5.1.1/62699bd39e784a61ca7e36e367cd0c01479cb83b35e41d0c0cac26ec31616a9b/node_modules/execa/index.js"(exports2, module2) {
    "use strict";
    var path240 = __require("path");
    var childProcess4 = __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 env4 = extendEnv ? { ...process.env, ...envOption } : envOption;
      if (preferLocal) {
        return npmRunPath2.env({ env: env4, cwd: localDir, execPath: execPath2 });
      }
      return env4;
    };
    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" && path240.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 = childProcess4.spawn(parsed.file, parsed.args, parsed.options);
      } catch (error) {
        const dummySpawned = new childProcess4.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 = childProcess4.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
        }
      );
    };
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/safe-execa/0.1.4/fa3d7b48397c472dbcf0ba513516be9e0e9d7511b95d7ef25b34193cee2ad466/node_modules/safe-execa/lib/index.js
var require_lib27 = __commonJS({
  "../../../../../setup-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(mod2) {
      return mod2 && mod2.__esModule ? mod2 : { "default": mod2 };
    };
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.sync = void 0;
    var which_1 = __importDefault2(require_which2());
    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 _a2;
      try {
        which_1.default.sync(file, { path: (_a2 = options === null || options === void 0 ? void 0 : options.cwd) !== null && _a2 !== void 0 ? _a2 : process.cwd() });
      } catch (err2) {
        if (err2.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 _a2, _b2;
      if (file.includes("\\") || file.includes("/"))
        return file;
      const path240 = (_b2 = (_a2 = options === null || options === void 0 ? void 0 : options.env) === null || _a2 === void 0 ? void 0 : _a2[path_name_1.default]) !== null && _b2 !== void 0 ? _b2 : process.env[path_name_1.default];
      const key = JSON.stringify([path240, file]);
      let fileAbsolutePath = pathCache2.get(key);
      if (fileAbsolutePath == null) {
        fileAbsolutePath = which_1.default.sync(file, { path: path240 });
        pathCache2.set(key, fileAbsolutePath);
      }
      if (fileAbsolutePath == null) {
        throw new Error(`Couldn't find ${file}`);
      }
      return fileAbsolutePath;
    }
    function default_1(file, args, options) {
      var _a2;
      try {
        which_1.default.sync(file, { path: (_a2 = options === null || options === void 0 ? void 0 : options.cwd) !== null && _a2 !== void 0 ? _a2 : process.cwd() });
      } catch (err2) {
        if (err2.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;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@pnpm/os.env.path-extender-windows/3.0.1/78946118391d807a9cbc53b3cbf99ce1ab6dc7f96a049ecde13047113bd60178/node_modules/@pnpm/os.env.path-extender-windows/dist/path-extender-windows.js
var require_path_extender_windows = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@pnpm/os.env.path-extender-windows/3.0.1/78946118391d807a9cbc53b3cbf99ce1ab6dc7f96a049ecde13047113bd60178/node_modules/@pnpm/os.env.path-extender-windows/dist/path-extender-windows.js"(exports2) {
    "use strict";
    var __importDefault2 = exports2 && exports2.__importDefault || function(mod2) {
      return mod2 && mod2.__esModule ? mod2 : { "default": mod2 };
    };
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.addDirToWindowsEnvPath = void 0;
    var error_1 = require_lib7();
    var string_prototype_matchall_1 = __importDefault2(require_string_prototype2());
    var path_1 = __require("path");
    var safe_execa_1 = __importDefault2(require_lib27());
    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, opts3) {
      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, opts3);
        await refreshEnvVars();
        return report3;
      } finally {
        await (0, safe_execa_1.default)("chcp", [cpBak.toString()]);
      }
    }
    exports2.addDirToWindowsEnvPath = addDirToWindowsEnvPath;
    async function _addDirToWindowsEnvPath(dir, opts3 = {}) {
      const addedDir = path_1.win32.normalize(dir);
      const registryOutput = await getRegistryOutput();
      const changes = [];
      if (opts3.proxyVarName) {
        changes.push(await updateEnvVariable(registryOutput, opts3.proxyVarName, addedDir, {
          expandableString: false,
          overwrite: opts3.overwriteProxyVar ?? false
        }));
        const pathEntry = opts3.proxyVarSubDir ? `%${opts3.proxyVarName}%${path_1.win32.sep}${opts3.proxyVarSubDir}` : `%${opts3.proxyVarName}%`;
        changes.push(await addToPath(registryOutput, pathEntry, opts3.position));
      } else {
        changes.push(await addToPath(registryOutput, addedDir, opts3.position));
      }
      return changes;
    }
    async function updateEnvVariable(registryOutput, name, value, opts3) {
      const currentValue = await getEnvValueFromRegistry(registryOutput, name);
      if (currentValue && !opts3.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: opts3.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 (err2) {
        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, opts3) {
      const regType = opts3.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 (err2) {
        throw new error_1.PnpmError("FAILED_SET_ENV", `Failed to set "${envVarName}" to "${envVarValue}": ${err2.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);
    }
  }
});

// ../../../../../setup-pnpm/store/v11/links/@pnpm/os.env.path-extender-windows/3.0.1/78946118391d807a9cbc53b3cbf99ce1ab6dc7f96a049ecde13047113bd60178/node_modules/@pnpm/os.env.path-extender-windows/dist/index.js
var require_dist9 = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@pnpm/os.env.path-extender-windows/3.0.1/78946118391d807a9cbc53b3cbf99ce1ab6dc7f96a049ecde13047113bd60178/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;
    } });
  }
});

// ../../../../../setup-pnpm/store/v11/links/@pnpm/os.env.path-extender/3.0.1/beaadccc1886ba8219e2d8ff3db4abbe1c89a37dbd63d9a522d1db755a7bd6ef/node_modules/@pnpm/os.env.path-extender/dist/path-extender.js
var require_path_extender = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@pnpm/os.env.path-extender/3.0.1/beaadccc1886ba8219e2d8ff3db4abbe1c89a37dbd63d9a522d1db755a7bd6ef/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_lib7();
    var os_env_path_extender_posix_1 = require_dist8();
    var os_env_path_extender_windows_1 = require_dist9();
    async function addDirToEnvPath2(dir, opts3) {
      if (opts3.proxyVarSubDir) {
        if (opts3.proxyVarSubDir.startsWith("/") || opts3.proxyVarSubDir.startsWith("\\") || opts3.proxyVarSubDir.includes("..") || /[;%"'`$<>&|\n\r]/.test(opts3.proxyVarSubDir)) {
          throw new error_1.PnpmError("INVALID_SUBDIR", `Invalid proxyVarSubDir: "${opts3.proxyVarSubDir}"`);
        }
      }
      if (process.platform === "win32") {
        return renderWindowsReport(await (0, os_env_path_extender_windows_1.addDirToWindowsEnvPath)(dir, {
          position: opts3.position,
          proxyVarName: opts3.proxyVarName,
          proxyVarSubDir: opts3.proxyVarSubDir,
          overwriteProxyVar: opts3.overwrite
        }));
      }
      return (0, os_env_path_extender_posix_1.addDirToPosixEnvPath)(dir, opts3);
    }
    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;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@pnpm/os.env.path-extender/3.0.1/beaadccc1886ba8219e2d8ff3db4abbe1c89a37dbd63d9a522d1db755a7bd6ef/node_modules/@pnpm/os.env.path-extender/dist/index.js
var require_dist10 = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@pnpm/os.env.path-extender/3.0.1/beaadccc1886ba8219e2d8ff3db4abbe1c89a37dbd63d9a522d1db755a7bd6ef/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/ghActionsEnv.js
import fs101 from "node:fs";
import util53 from "node:util";
function validateGHActionsEnvFileValues(pnpmHomeDir, binDir) {
  if (!shouldWriteGHActionsEnvFiles())
    return;
  validateGHActionsEnvFileValue("PNPM_HOME", pnpmHomeDir);
  validateGHActionsEnvFileValue("pnpm setup bin directory", binDir);
}
function writeGHActionsEnvFiles(pnpmHomeDir, binDir) {
  if (!shouldWriteGHActionsEnvFiles())
    return;
  const githubEnv = process.env.GITHUB_ENV;
  const githubPath = process.env.GITHUB_PATH;
  if (githubEnv != null) {
    appendGHActionsEnvFile("GITHUB_ENV", githubEnv, `PNPM_HOME=${pnpmHomeDir}`);
  }
  if (githubPath != null) {
    appendGHActionsEnvFile("GITHUB_PATH", githubPath, binDir);
  }
}
function shouldWriteGHActionsEnvFiles() {
  return process.env.GITHUB_ACTIONS === "true" && (process.env.GITHUB_ENV != null || process.env.GITHUB_PATH != null);
}
function validateGHActionsEnvFileValue(name, value) {
  if (value.includes("\n") || value.includes("\r") || value.includes("\0")) {
    throw new PnpmError("BAD_GITHUB_ACTIONS_ENVIRONMENT_VALUE", `${name} cannot contain newline or NUL characters`);
  }
}
function appendGHActionsEnvFile(targetName, filePath, line) {
  try {
    if (!fs101.lstatSync(filePath).isFile())
      return;
    appendLineToRegularFile(filePath, line);
  } catch (err2) {
    if (util53.types.isNativeError(err2) && err2.code === "ENOENT")
      return;
    logger.warn({
      message: `Failed to write GitHub Actions environment file ${targetName} (${filePath}): ${util53.types.isNativeError(err2) ? err2.message : String(err2)}`,
      prefix: process.cwd()
    });
  }
}
function appendLineToRegularFile(filePath, line) {
  const fd2 = fs101.openSync(filePath, fs101.constants.O_RDWR | fs101.constants.O_APPEND | (process.platform === "win32" ? 0 : fs101.constants.O_NOFOLLOW));
  try {
    const stats = fs101.fstatSync(fd2);
    if (!stats.isFile())
      return;
    fs101.writeSync(fd2, `${missingLineBreak(fd2, stats.size)}${line}
`, null, "utf8");
  } finally {
    fs101.closeSync(fd2);
  }
}
function missingLineBreak(fd2, size) {
  if (size === 0)
    return "";
  const lastByte = Buffer.allocUnsafe(1);
  const bytesRead = fs101.readSync(fd2, lastByte, 0, 1, size - 1);
  return bytesRead === 1 && lastByte[0] !== 10 ? "\n" : "";
}
var init_ghActionsEnv = __esm({
  "../engine/pm/commands/lib/setup/ghActionsEnv.js"() {
    "use strict";
    init_lib2();
    init_lib3();
  }
});

// ../engine/pm/commands/lib/setup/setup.js
var setup_exports = {};
__export(setup_exports, {
  LEGACY_HOME_DIR_SHIM_NAMES: () => LEGACY_HOME_DIR_SHIM_NAMES,
  cliOptionsTypes: () => cliOptionsTypes33,
  commandNames: () => commandNames34,
  handler: () => handler34,
  help: () => help34,
  overridableByScript: () => overridableByScript2,
  rcOptionsTypes: () => rcOptionsTypes34,
  shorthands: () => shorthands11
});
import { spawnSync as spawnSync3 } from "node:child_process";
import fs102 from "node:fs";
import path181 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 = path181.dirname(execPath2);
  const execName = path181.basename(execPath2);
  const pkgJsonPath = path181.join(execDir, "package.json");
  let createdPkgJson = false;
  if (!fs102.existsSync(pkgJsonPath)) {
    fs102.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 = path181.join(pnpmHomeDir, "bin");
    const { status, error } = spawnSync3(execPath2, ["add", "-g", "--ignore-scripts", `file:${execDir}`], {
      stdio: "inherit",
      env: {
        ...process.env,
        PNPM_HOME: pnpmHomeDir,
        [import_path_name3.default]: `${binDir}${path181.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) {
      fs102.unlinkSync(pkgJsonPath);
    }
  }
}
function createAliasScripts(targetDir) {
  fs102.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} "$@"
`;
  fs102.writeFileSync(path181.join(targetDir, name), shellScript, { mode: 493 });
  if (process.platform === "win32") {
    fs102.writeFileSync(path181.join(targetDir, `${name}.cmd`), `@echo off
${command} %*
`);
    fs102.writeFileSync(path181.join(targetDir, `${name}.ps1`), `${command} @args
`);
  }
}
function removeLegacyHomeDirShims(pnpmHomeDir) {
  for (const name of LEGACY_HOME_DIR_SHIM_NAMES) {
    try {
      fs102.rmSync(path181.join(pnpmHomeDir, name), { force: true });
    } catch {
    }
  }
}
async function handler34(opts3) {
  const execPath2 = getExecPath();
  const binDir = path181.join(opts3.pnpmHomeDir, "bin");
  validateGHActionsEnvFileValues(opts3.pnpmHomeDir, binDir);
  if (execPath2.match(/\.[cm]?js$/) == null) {
    installCliGlobally(execPath2, opts3.pnpmHomeDir);
    createAliasScripts(binDir);
  }
  try {
    const report3 = await (0, import_os_env.addDirToEnvPath)(opts3.pnpmHomeDir, {
      configSectionName: "pnpm",
      proxyVarName: "PNPM_HOME",
      proxyVarSubDir: "bin",
      overwrite: opts3.force,
      position: "start"
    });
    writeGHActionsEnvFiles(opts3.pnpmHomeDir, binDir);
    removeLegacyHomeDirShims(opts3.pnpmHomeDir);
    return renderSetupOutput(report3);
  } catch (err2) {
    switch (err2.code) {
      case "ERR_PNPM_BAD_ENV_FOUND":
        err2.hint = "If you want to override the existing env variable, use the --force option";
        break;
      case "ERR_PNPM_BAD_SHELL_SECTION":
        err2.hint = "If you want to override the existing configuration section, use the --force option";
        break;
    }
    throw err2;
  }
}
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, LEGACY_HOME_DIR_SHIM_NAMES;
var init_setup2 = __esm({
  "../engine/pm/commands/lib/setup/setup.js"() {
    "use strict";
    init_lib24();
    init_lib41();
    init_lib3();
    import_os_env = __toESM(require_dist10(), 1);
    import_path_name3 = __toESM(require_path_name(), 1);
    init_lib66();
    init_ghActionsEnv();
    rcOptionsTypes34 = () => ({});
    cliOptionsTypes33 = () => ({
      force: Boolean
    });
    shorthands11 = {};
    commandNames34 = ["setup"];
    overridableByScript2 = true;
    LEGACY_HOME_DIR_SHIM_NAMES = [
      "pnpm",
      "pnpm.cmd",
      "pnpm.ps1",
      "pn",
      "pn.cmd",
      "pn.ps1",
      "pnpx",
      "pnpx.cmd",
      "pnpx.ps1",
      "pnx",
      "pnx.cmd",
      "pnx.ps1"
    ];
  }
});

// ../engine/pm/commands/lib/setup/index.js
var init_setup3 = __esm({
  "../engine/pm/commands/lib/setup/index.js"() {
    "use strict";
    init_setup2();
    init_setup2();
  }
});

// ../shell/path/lib/index.js
import path182 from "node:path";
function prependDirsToPath(prependDirs, env4 = process.env) {
  const prepend = prependDirs.join(path182.delimiter);
  const envPath = env4[import_path_name4.default];
  if (envPath != null && (envPath === prepend || envPath.startsWith(`${prepend}${path182.delimiter}`))) {
    return {
      name: import_path_name4.default,
      value: envPath,
      updated: false
    };
  }
  return {
    name: import_path_name4.default,
    value: [
      prepend,
      ...envPath != null ? [envPath] : []
    ].join(path182.delimiter),
    updated: true
  };
}
var import_path_name4;
var init_lib160 = __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 fs103 from "node:fs";
import path183 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(opts3, 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;
  fs103.mkdirSync(opts3.pnpmHomeDir, { recursive: true });
  const store = await createStoreController(opts3);
  let binDir;
  try {
    const envLockfile = await resolvePackageManagerIntegrities(spec, {
      rootDir: opts3.pnpmHomeDir,
      registries: opts3.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: opts3.registries,
      virtualStoreDirMaxLength: opts3.virtualStoreDirMaxLength,
      packageManager: { name: packageManager.name, version: packageManager.version },
      // Network settings so the engine identity check can reach the canonical
      // npm registry through the user's proxy / TLS configuration.
      ca: opts3.ca,
      cert: opts3.cert,
      key: opts3.key,
      httpProxy: opts3.httpProxy,
      httpsProxy: opts3.httpsProxy,
      noProxy: opts3.noProxy,
      strictSsl: opts3.strictSsl,
      localAddress: opts3.localAddress,
      maxSockets: opts3.maxSockets,
      configByUri: opts3.configByUri,
      timeout: opts3.fetchTimeout
    }));
  } 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 = path183.join(binDir, "pnpm");
  const { status, signal, error } = import_cross_spawn3.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_spawn3, commandNames35, skipPackageManagerCheck3, rcOptionsTypes35;
var init_with = __esm({
  "../engine/pm/commands/lib/with/with.js"() {
    "use strict";
    init_lib24();
    init_lib41();
    init_lib64();
    init_lib2();
    init_lib132();
    init_lib160();
    init_lib92();
    import_cross_spawn3 = __toESM(require_cross_spawn(), 1);
    init_es();
    init_lib66();
    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_lib161 = __esm({
  "../engine/pm/commands/lib/index.js"() {
    "use strict";
    init_self_updater();
    init_installPnpm();
    init_verifyPnpmEngineIdentity();
    init_setup3();
    init_setup2();
    init_with2();
  }
});

// ../engine/runtime/commands/lib/env/envList.js
async function envList(opts3, params) {
  const nodeVersionList = await listRemoteVersions(opts3, params[0]);
  return nodeVersionList.reverse().join("\n");
}
async function listRemoteVersions(opts3, versionSpec) {
  const fetch3 = createFetchFromRegistry(opts3);
  const { releaseChannel, versionSpecifier } = versionSpec ? parseNodeSpecifier(versionSpec) : { releaseChannel: "release", versionSpecifier: "" };
  const nodeMirrorBaseUrl = getNodeMirror(opts3.nodeDownloadMirrors, releaseChannel);
  return resolveNodeVersions(fetch3, versionSpecifier, nodeMirrorBaseUrl);
}
var init_envList = __esm({
  "../engine/runtime/commands/lib/env/envList.js"() {
    "use strict";
    init_lib46();
    init_lib23();
  }
});

// ../exec/pnpm-cli-runner/lib/index.js
import path184 from "node:path";
function runPnpmCli(command, { cwd, reporter }) {
  const execOpts = {
    cwd,
    stdio: "inherit"
  };
  const cliCommand = reporter ? [...command, `--reporter=${reporter}`] : command;
  const execFileName = path184.basename(process.execPath).toLowerCase();
  if (execFileName === "pnpm" || execFileName === "pnpm.exe") {
    sync2(process.execPath, cliCommand, execOpts);
  } else if (path184.basename(process.argv[1]) === "pnpm.mjs") {
    sync2(process.execPath, [process.argv[1], ...cliCommand], execOpts);
  } else {
    sync2("pnpm", cliCommand, execOpts);
  }
}
var init_lib162 = __esm({
  "../exec/pnpm-cli-runner/lib/index.js"() {
    "use strict";
    init_lib25();
  }
});

// ../engine/runtime/commands/lib/env/envUse.js
async function envUse(opts3, params) {
  globalWarn('"pnpm env use" is deprecated. Use "pnpm runtime set node <version> -g" instead.');
  if (!opts3.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 (opts3.bin)
    args.push("--global-bin-dir", opts3.bin);
  if (opts3.storeDir)
    args.push("--store-dir", opts3.storeDir);
  if (opts3.cacheDir)
    args.push("--cache-dir", opts3.cacheDir);
  runPnpmCli(args, { cwd: opts3.pnpmHomeDir });
}
var init_envUse = __esm({
  "../engine/runtime/commands/lib/env/envUse.js"() {
    "use strict";
    init_lib2();
    init_lib162();
    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(opts3, params) {
  if (params.length === 0) {
    throw new PnpmError("ENV_NO_SUBCOMMAND", "Please specify the subcommand", {
      hint: help36()
    });
  }
  if (opts3.global && !opts3.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(opts3, params.slice(1));
      return;
    }
    case "list":
    case "ls": {
      return envList(opts3, 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_lib41();
    init_lib2();
    init_lib66();
    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,
    "save-dev": Boolean,
    "save-prod": 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"
          },
          {
            description: "Save the runtime to `devEngines.runtime`. This is the default",
            name: "--save-dev",
            shortAlias: "-D"
          },
          {
            description: "Save the runtime to `engines.runtime`",
            name: "--save-prod",
            shortAlias: "-P"
          }
        ]
      }
    ],
    url: docsUrl("runtime"),
    usages: [
      "pnpm runtime set node 22",
      "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(opts3, params) {
  if (params.length === 0) {
    throw new PnpmError("RUNTIME_NO_SUBCOMMAND", "Please specify the subcommand", {
      hint: help37()
    });
  }
  switch (params[0]) {
    case "set": {
      runtimeSet(opts3, params.slice(1));
      return;
    }
    default: {
      throw new PnpmError("RUNTIME_UNKNOWN_SUBCOMMAND", `Unknown subcommand: ${params[0]}`, {
        hint: help37()
      });
    }
  }
}
function runtimeSet(opts3, 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)');
  }
  if (!isRuntimeAlias(runtimeName)) {
    throw new PnpmError("INVALID_RUNTIME_NAME", `"${runtimeName}" is not a supported runtime. Supported runtimes are: ${RUNTIME_NAMES.join(", ")}`);
  }
  const versionSpec = params[1]?.trim();
  if (versionSpec?.includes(",")) {
    throw new PnpmError("INVALID_RUNTIME_VERSION", `Invalid runtime version "${versionSpec}": a version cannot contain a comma`);
  }
  const args = ["add", `${runtimeName}@runtime:${versionSpec ?? ""}`];
  if (opts3.saveDev || !opts3.saveProd) {
    args.push("--save-dev");
  } else {
    args.push("--save-prod");
  }
  if (opts3.global) {
    args.push("--global");
    if (opts3.bin)
      args.push("--global-bin-dir", opts3.bin);
  } else {
    args.push("--ignore-workspace-root-check");
  }
  if (opts3.storeDir)
    args.push("--store-dir", opts3.storeDir);
  if (opts3.cacheDir)
    args.push("--cache-dir", opts3.cacheDir);
  runPnpmCli(args, { cwd: opts3.global ? opts3.pnpmHomeDir : opts3.dir });
}
var skipPackageManagerCheck5, commandNames37;
var init_runtime = __esm({
  "../engine/runtime/commands/lib/runtime/runtime.js"() {
    "use strict";
    init_lib41();
    init_lib2();
    init_lib162();
    init_lib9();
    init_lib66();
    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_lib163 = __esm({
  "../engine/runtime/commands/lib/index.js"() {
    "use strict";
    init_env3();
    init_runtime2();
  }
});

// ../exec/commands/lib/makeEnv.js
import path185 from "node:path";
function makeEnv2(opts3) {
  for (const prependPath of opts3.prependPaths) {
    if (prependPath.includes(path185.delimiter)) {
      throw new PnpmError("BAD_PATH_DIR", `Cannot add ${prependPath} to PATH because it contains the path delimiter character (${path185.delimiter})`);
    }
  }
  const pathEnv = prependDirsToPath(opts3.prependPaths);
  return {
    ...process.env,
    ...opts3.extraEnv,
    npm_config_user_agent: opts3.userAgent ?? "pnpm",
    [pathEnv.name]: pathEnv.value
  };
}
var init_makeEnv = __esm({
  "../exec/commands/lib/makeEnv.js"() {
    "use strict";
    init_lib2();
    init_lib160();
  }
});

// ../exec/commands/lib/trackedExeca.js
var trackedExeca;
var init_trackedExeca = __esm({
  "../exec/commands/lib/trackedExeca.js"() {
    "use strict";
    init_lib21();
    init_lib25();
    trackedExeca = ((...args) => {
      const child = safeExeca(...args);
      trackChildProcess(child);
      return child;
    });
  }
});

// ../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 fs104, {} from "node:fs";
import path186 from "node:path";
import util54 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(opts3, [command, ...args], commands2) {
  if (!command && (!opts3.package || opts3.package.length === 0)) {
    return { exitCode: 1, output: help38() };
  }
  const pkgs = opts3.package ?? [command];
  const fullMetadata = (opts3.resolutionMode === "time-based" || opts3.trustPolicy === "no-downgrade" || Boolean(opts3.minimumReleaseAge)) && !opts3.registrySupportsTimeField;
  const catalogResolver = resolveFromCatalog.bind(null, opts3.catalogs ?? {});
  const { resolve: baseResolve } = createResolver2({
    ...opts3,
    configByUri: opts3.configByUri,
    fullMetadata,
    filterMetadata: fullMetadata,
    ignoreMissingTimeField: opts3.minimumReleaseAgeIgnoreMissingTime,
    retry: {
      factor: opts3.fetchRetryFactor,
      maxTimeout: opts3.fetchRetryMaxtimeout,
      minTimeout: opts3.fetchRetryMintimeout,
      retries: opts3.fetchRetries
    },
    timeout: opts3.fetchTimeout
  });
  const strictResolution = Boolean(opts3.minimumReleaseAge) && opts3.minimumReleaseAgeStrict === true || opts3.trustPolicy === "no-downgrade";
  const resolve4 = strictResolution ? makeResolutionStrict(baseResolve) : baseResolve;
  const resolvedPkgAliases = [];
  const { publishedBy, publishedByExclude } = getPublishedByPolicy(opts3);
  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 resolve4({ alias, bareSpecifier: resolvedBareSpecifier }, {
      lockfileDir: opts3.lockfileDir ?? opts3.dir,
      preferredVersions: {},
      projectDir: opts3.dir,
      publishedBy,
      publishedByExclude
    });
    return resolved.id;
  }));
  let { cacheLink, cacheExists, cachedDir } = findCache({
    packages: resolvedPkgs,
    dlxCacheMaxAge: opts3.dlxCacheMaxAge,
    cacheDir: opts3.cacheDir,
    registries: opts3.registries,
    allowBuild: opts3.allowBuild,
    supportedArchitectures: opts3.supportedArchitectures
  });
  if (!cacheExists) {
    const allowBuilds = Object.fromEntries([...resolvedPkgAliases, ...opts3.allowBuild ?? []].map((pkg) => [pkg, true]));
    try {
      fs104.mkdirSync(cachedDir, { recursive: true });
      await add_exports.handler({
        ...opts3,
        // 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: opts3.enableGlobalVirtualStore ?? true,
        bin: path186.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: opts3 }, commands2);
      try {
        await symlinkDir(cachedDir, cacheLink, { overwrite: true });
      } catch (error) {
        if (!util54.types.isNativeError(error) || !("code" in error) || error.code !== "EBUSY" && error.code !== "EEXIST" && error.code !== "EPERM") {
          throw error;
        }
      }
    } catch (err2) {
      const completedDir = getValidCacheDir(cacheLink, opts3.dlxCacheMaxAge);
      if (completedDir != null) {
        cachedDir = completedDir;
      } else {
        try {
          await fs104.promises.rm(cachedDir, { recursive: true, force: true, maxRetries: 10, retryDelay: 100 });
        } catch (cleanupErr) {
          logger.warn({
            error: cleanupErr,
            message: `Failed to clean up the dlx cache directory at "${cachedDir}"`,
            prefix: cachedDir
          });
        }
        throw err2;
      }
    }
  }
  const binsDir = path186.join(cachedDir, "node_modules/.bin");
  const env4 = makeEnv2({
    userAgent: opts3.userAgent,
    prependPaths: [binsDir, ...opts3.extraBinPaths]
  });
  const binName = opts3.package ? command : await getBinName(cachedDir, opts3);
  try {
    const child = trackedExeca(binName, args, {
      cwd: process.cwd(),
      env: env4,
      stdio: "inherit",
      shell: opts3.shellMode ?? false
    });
    await child;
  } catch (err2) {
    if (util54.types.isNativeError(err2) && "exitCode" in err2 && err2.exitCode != null) {
      return {
        exitCode: err2.exitCode
      };
    }
    throw err2;
  }
  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, opts3) {
  const pkgName = await getPkgName(cachedDir);
  const pkgDir = path186.join(cachedDir, "node_modules", pkgName);
  let manifest;
  try {
    manifest = await readProjectManifestOnly2(pkgDir, opts3);
  } catch (err2) {
    if (util54.types.isNativeError(err2) && "code" in err2 && err2.code === "ERR_PNPM_NO_IMPORTER_MANIFEST_FOUND") {
      return scopeless(pkgName);
    }
    throw err2;
  }
  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(opts3, 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: opts3.cachedDir,
    lockfileDir: opts3.cachedDir
  });
  if (!automaticallyIgnoredBuilds?.length)
    return;
  await commands2["approve-builds"]({
    ...opts3.inheritedOpts,
    dir: opts3.cachedDir,
    lockfileDir: opts3.cachedDir,
    rootProjectManifestDir: opts3.cachedDir,
    modulesDir: void 0,
    workspaceDir: void 0,
    allProjects: void 0,
    selectedProjectsGraph: void 0,
    workspacePackagePatterns: void 0,
    rootProjectManifest: void 0,
    global: false,
    pending: false,
    allowBuilds: opts3.allowBuilds,
    all: autoApproveForTests ? true : void 0
  }, [], commands2);
}
function findCache(opts3) {
  const dlxCommandCacheDir = createDlxCommandCacheDir(opts3);
  const cacheLink = path186.join(dlxCommandCacheDir, "pkg");
  const cachedDir = getValidCacheDir(cacheLink, opts3.dlxCacheMaxAge);
  return {
    cacheLink,
    cachedDir: cachedDir ?? getPrepareDir(dlxCommandCacheDir),
    cacheExists: cachedDir != null
  };
}
function createDlxCommandCacheDir(opts3) {
  const dlxCacheDir = path186.resolve(opts3.cacheDir, "dlx");
  const cacheKey = createCacheKey(opts3);
  const cachePath = path186.join(dlxCacheDir, cacheKey);
  fs104.mkdirSync(cachePath, { recursive: true });
  return cachePath;
}
function createCacheKey(opts3) {
  const sortedPkgs = [...opts3.packages].sort(import_util22.lexCompare);
  const sortedRegistries = Object.entries(opts3.registries).sort(([k1], [k2]) => (0, import_util22.lexCompare)(k1, k2));
  const args = [sortedPkgs, sortedRegistries];
  if (opts3.allowBuild?.length) {
    args.push({ allowBuild: opts3.allowBuild.sort(import_util22.lexCompare) });
  }
  if (opts3.supportedArchitectures) {
    const supportedArchitecturesKeys = ["cpu", "libc", "os"];
    for (const key of supportedArchitecturesKeys) {
      const value = opts3.supportedArchitectures[key];
      if (!value?.length)
        continue;
      args.push({
        supportedArchitectures: {
          [key]: [...new Set(value)].sort(import_util22.lexCompare)
        }
      });
    }
  }
  const hashStr = JSON.stringify(args);
  return createShortHash(hashStr);
}
function getValidCacheDir(cacheLink, dlxCacheMaxAge) {
  let stats;
  let target2;
  try {
    stats = fs104.lstatSync(cacheLink);
    if (stats.isSymbolicLink()) {
      target2 = fs104.realpathSync(cacheLink);
      if (!target2)
        return void 0;
    } else {
      return void 0;
    }
  } catch (err2) {
    if (util54.types.isNativeError(err2) && "code" in err2 && err2.code === "ENOENT") {
      return void 0;
    }
    throw err2;
  }
  const isValid = stats.mtime.getTime() + dlxCacheMaxAge * 6e4 >= (/* @__PURE__ */ new Date()).getTime();
  return isValid ? target2 : void 0;
}
function getPrepareDir(cachePath) {
  const name = `${Date.now().toString(36)}-${process.pid.toString(36)}`;
  return path186.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_util22, skipPackageManagerCheck6, commandNames38, AUTO_APPROVE_FOR_TESTS_ENV2, shorthands12, cliOptionsTypes37;
var init_dlx = __esm({
  "../exec/commands/lib/dlx.js"() {
    "use strict";
    init_lib7();
    init_lib144();
    init_lib97();
    init_lib94();
    init_lib41();
    init_lib64();
    init_lib37();
    init_lib34();
    init_lib2();
    init_lib59();
    init_lib143();
    init_lib3();
    init_lib5();
    init_lib98();
    import_util22 = __toESM(require_dist4(), 1);
    init_es();
    init_lib66();
    init_dist3();
    init_makeEnv();
    init_trackedExeca();
    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_lib41();
    init_lib2();
    init_lib66();
    init_dlx();
    commandNames39 = ["create"];
    CREATE_PREFIX = "create-";
  }
});

// ../../../../../setup-pnpm/store/v11/links/@pnpm/which/3.0.1/4fd9e3d906a2cdd0e41519cdc727bd23122799ded6f6ffd91efc6236ecd0b5f1/node_modules/@pnpm/which/lib/index.js
var require_lib28 = __commonJS({
  "../../../../../setup-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: join5, 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 + join5(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;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/fastest-levenshtein/1.0.16/1a94efea91b7386c22954849b2fc2ef2b19eb064efc7e850d2fd39ccbe7520c6/node_modules/fastest-levenshtein/mod.js
var require_mod = __commonJS({
  "../../../../../setup-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 i4 = n2;
      while (i4--) {
        peq[a2.charCodeAt(i4)] |= 1 << i4;
      }
      for (i4 = 0; i4 < m; i4++) {
        var eq = peq[b.charCodeAt(i4)];
        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;
      }
      i4 = n2;
      while (i4--) {
        peq[a2.charCodeAt(i4)] = 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 i4 = 0; i4 < hsize; i4++) {
        phc[i4] = -1;
        mhc[i4] = 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 i4 = 0; i4 < n2; i4++) {
          var eq = peq[a2.charCodeAt(i4)];
          var pb = phc[i4 / 32 | 0] >>> i4 & 1;
          var mb = mhc[i4 / 32 | 0] >>> i4 & 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[i4 / 32 | 0] ^= 1 << i4;
          }
          if (mh >>> 31 ^ mb) {
            mhc[i4 / 32 | 0] ^= 1 << i4;
          }
          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 i4 = 0; i4 < n2; i4++) {
        var eq = peq[a2.charCodeAt(i4)];
        var pb = phc[i4 / 32 | 0] >>> i4 & 1;
        var mb = mhc[i4 / 32 | 0] >>> i4 & 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[i4 / 32 | 0] ^= 1 << i4;
        }
        if (mh >>> 31 ^ mb) {
          mhc[i4 / 32 | 0] ^= 1 << i4;
        }
        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 i4 = 0; i4 < arr.length; i4++) {
        var dist = distance2(str2, arr[i4]);
        if (dist < min_distance) {
          min_distance = dist;
          min_index = i4;
        }
      }
      return arr[min_index];
    };
    exports2.closest = closest;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/lodash.deburr/4.1.0/ca2f7301f9c053aa259a3cd44916c60cafd853a7e5b31a0ff10c0e73833b586c/node_modules/lodash.deburr/index.js
var require_lodash4 = __commonJS({
  "../../../../../setup-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;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/didyoumean2/7.0.4/086e49db7e5ac01bace1b1a9d9797375cc9e58bfbd4a822a040a2928deb2c3a3/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 [i4, score] of scores.entries()) {
        if (checkIfMatched(score) && score === marginValue) {
          matchedIndexes.push(i4);
        }
      }
      break;
    }
    case ReturnTypeEnums.ALL_MATCHES:
      for (const [i4, matchItem] of matchList.entries()) {
        const score = scoreProcessor(matchItem);
        if (checkIfMatched(score)) {
          matchedIndexes.push(i4);
        }
      }
      break;
    case ReturnTypeEnums.ALL_SORTED_MATCHES: {
      const unsortedResults = [];
      for (const [i4, matchItem] of matchList.entries()) {
        const score = scoreProcessor(matchItem);
        if (checkIfMatched(score)) {
          unsortedResults.push({
            score,
            index: i4
          });
        }
      }
      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 [i4, matchItem] of matchList.entries()) {
        const score = scoreProcessor(matchItem);
        if (checkIfMatched(score)) {
          matchedIndexes.push(i4);
          break;
        }
      }
      break;
  }
  return resultProcessor(matchList, matchedIndexes, returnType);
}
var import_fastest_levenshtein, import_lodash7, ReturnTypeEnums, ThresholdTypeEnums, fillDefaultOptions, getSimilarity, normalizeString, getMatchItemStr, matchItemProcessor, resultProcessor;
var init_dist20 = __esm({
  "../../../../../setup-pnpm/store/v11/links/@/didyoumean2/7.0.4/086e49db7e5ac01bace1b1a9d9797375cc9e58bfbd4a822a040a2928deb2c3a3/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 path187 from "node:path";
function getNearestProgram({ dir, modulesDir, programName, workspaceDir }) {
  try {
    const binDir = path187.join(dir, modulesDir, ".bin");
    const programList = readProgramsFromDir(binDir);
    if (workspaceDir && workspaceDir !== dir) {
      const workspaceBinDir = path187.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 } = path187.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_dist20();
  }
});

// ../exec/commands/lib/existsInDir.js
import fs105 from "node:fs";
import path188 from "node:path";
function existsInDir(entityName, dir) {
  const entityPath = path188.join(dir, entityName);
  if (fs105.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 fs106 from "node:fs";
import path189 from "node:path";
import util55 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((path240) => !(path240 in newIndex)).map((path240) => ({ path: path240, oldValue: oldIndex[path240] }));
  const added = newPaths.filter((path240) => !(path240 in oldIndex)).map((path240) => ({ path: path240, newValue: newIndex[path240] }));
  const modified = oldPaths.filter((path240) => path240 in newIndex && oldIndex[path240] !== newIndex[path240]).map((path240) => ({ path: path240, oldValue: oldIndex[path240], newValue: newIndex[path240] }));
  return { added, removed, modified };
}
async function applyPatch2(optimizedDirPatch, sourceDir, targetDir) {
  async function addRecursive(sourcePath, targetPath, value) {
    if (value === DIR) {
      await fs106.promises.mkdir(targetPath, { recursive: true });
    } else if (typeof value === "number") {
      fs106.mkdirSync(path189.dirname(targetPath), { recursive: true });
      await fs106.promises.link(sourcePath, targetPath);
    } else {
      const _ = value;
    }
  }
  async function removeRecursive(targetPath) {
    try {
      await fs106.promises.rm(targetPath, { recursive: true, force: true });
    } catch (error) {
      if (!util55.types.isNativeError(error) || !("code" in error) || error.code !== "ENOENT") {
        throw error;
      }
    }
  }
  const adding = Promise.all(optimizedDirPatch.added.map(async (item) => {
    const sourcePath = path189.join(sourceDir, item.path);
    const targetPath = path189.join(targetDir, item.path);
    await addRecursive(sourcePath, targetPath, item.newValue);
  }));
  const removing = Promise.all(optimizedDirPatch.removed.map(async (item) => {
    const targetPath = path189.join(targetDir, item.path);
    await removeRecursive(targetPath);
  }));
  const modifying = Promise.all(optimizedDirPatch.modified.map(async (item) => {
    const sourcePath = path189.join(sourceDir, item.path);
    const targetPath = path189.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(relativePath2, value) {
    if (relativePath2 && relativePath2 !== "." && !result2[relativePath2]) {
      result2[relativePath2] = value;
      addInodeAndAncestors(path189.dirname(relativePath2), DIR);
    }
  }
  await Promise.all(Array.from(filesMap.entries()).map(async ([relativePath2, realPath]) => {
    const stats = filesStats?.[relativePath2] ?? await fs106.promises.stat(realPath);
    if (stats.isFile()) {
      addInodeAndAncestors(relativePath2, stats.ino);
    } else if (stats.isDirectory()) {
      addInodeAndAncestors(relativePath2, 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_lib19();
    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 diff2 = diffDir(targetMap, sourceMap);
          diff2.removed.reverse();
          return new this(diff2, sourceDir, targetDir);
        });
      }
      async apply() {
        await applyPatch2(this.patch, this.sourceDir, this.targetDir);
      }
    };
  }
});

// ../workspace/injected-deps-syncer/lib/index.js
import path190 from "node:path";
async function syncInjectedDeps(opts3) {
  if (!opts3.pkgName) {
    logger3.debug({
      reason: "no-name",
      message: `Skipping sync of ${opts3.pkgRootDir} as an injected dependency because, without a name, it cannot be a dependency`,
      opts: opts3
    });
    return;
  }
  if (!opts3.workspaceDir) {
    throw new PnpmError("NO_WORKSPACE_DIR", "Cannot update injected dependencies without workspace dir");
  }
  const pkgRootDir = path190.resolve(opts3.workspaceDir, opts3.pkgRootDir);
  const modulesDir = path190.resolve(opts3.workspaceDir, "node_modules");
  const modules = await readModulesManifest(modulesDir);
  if (!modules?.injectedDeps) {
    logger3.debug({
      reason: "no-injected-deps",
      message: "Skipping sync of injected dependencies because none were detected",
      opts: opts3
    });
    return;
  }
  const injectedDepKey = (0, import_normalize_path13.default)(path190.relative(opts3.workspaceDir, pkgRootDir), true);
  const targetDirs = modules.injectedDeps[injectedDepKey];
  if (!targetDirs || targetDirs.length === 0) {
    logger3.debug({
      reason: "no-injected-deps",
      message: `There are no injected dependencies from ${opts3.pkgRootDir}`,
      opts: opts3
    });
    return;
  }
  const patchers = await DirPatcher.fromMultipleTargets(pkgRootDir, targetDirs.map((targetDir) => path190.resolve(opts3.workspaceDir, targetDir)));
  await Promise.all(patchers.map((patcher) => patcher.apply()));
  await syncBinLinks(pkgRootDir, targetDirs, opts3.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 = path190.resolve(workspaceDir, targetDir);
    const parentNodeModulesDir = path190.dirname(resolvedTargetDir);
    const binDir = path190.join(parentNodeModulesDir, ".bin");
    await linkBinsOfPackages([{
      manifest,
      location: resolvedTargetDir
    }], binDir, {});
  });
  const allProjects = await findWorkspaceProjectsNoCheck(workspaceDir, {});
  const consumerLinkPromises = allProjects.map(async (project) => {
    const projectNodeModules = path190.join(project.rootDir, "node_modules");
    const projectBinDir = path190.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_path13, logger3;
var init_lib164 = __esm({
  "../workspace/injected-deps-syncer/lib/index.js"() {
    "use strict";
    init_lib16();
    init_lib2();
    init_lib77();
    init_lib3();
    init_lib5();
    init_lib42();
    import_normalize_path13 = __toESM(require_normalize_path(), 1);
    init_DirPatcher();
    logger3 = 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(opts3) {
  const ignoredWorkspaceStateSettings = ["dev", "optional", "production"];
  opts3.ignoredWorkspaceStateSettings = ignoredWorkspaceStateSettings;
  const { upToDate, issue, workspaceState } = await checkDepsStatus(opts3);
  if (upToDate === true)
    return;
  if (upToDate === void 0 && opts3.allProjects == null && opts3.rootProjectManifest == null)
    return;
  const command = ["install", ...createInstallArgs(workspaceState?.settings)];
  const install2 = runPnpmCli.bind(null, command, { cwd: opts3.dir, reporter: opts3.reporter });
  switch (opts3.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 dist_default5({
          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"?`,
          default: true
        });
      } catch (err2) {
        if (err2 instanceof Error && err2.name === "ExitPromptError") {
          process.exit(1);
        }
        throw err2;
      }
      if (confirmed) {
        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(opts3) {
  const args = [];
  if (!opts3)
    return args;
  const { dev, optional, production } = opts3;
  if (production && !dev) {
    args.push("--production");
  } else if (dev && !production) {
    args.push("--dev");
  }
  if (!optional) {
    args.push("--no-optional");
  }
  return args;
}
var init_runDepsStatusCheck = __esm({
  "../exec/commands/lib/runDepsStatusCheck.js"() {
    "use strict";
    init_dist14();
    init_lib134();
    init_lib2();
    init_lib162();
    init_lib3();
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/ci-info/3.9.0/97768b0390b3e5872d2e24d63fe9cc36a3ff993b5d18f29c8b61a53bfe70d148/node_modules/ci-info/vendors.json
var require_vendors2 = __commonJS({
  "../../../../../setup-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"
      }
    ];
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/ci-info/3.9.0/97768b0390b3e5872d2e24d63fe9cc36a3ff993b5d18f29c8b61a53bfe70d148/node_modules/ci-info/index.js
var require_ci_info2 = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/ci-info/3.9.0/97768b0390b3e5872d2e24d63fe9cc36a3ff993b5d18f29c8b61a53bfe70d148/node_modules/ci-info/index.js"(exports2) {
    "use strict";
    var vendors = require_vendors2();
    var env4 = 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 isCI4 = envs.every(function(obj) {
        return checkEnv(obj);
      });
      exports2[vendor.constant] = isCI4;
      if (!isCI4) {
        return;
      }
      exports2.name = vendor.name;
      switch (typeof vendor.pr) {
        case "string":
          exports2.isPR = !!env4[vendor.pr];
          break;
        case "object":
          if ("env" in vendor.pr) {
            exports2.isPR = vendor.pr.env in env4 && env4[vendor.pr.env] !== vendor.pr.ne;
          } else if ("any" in vendor.pr) {
            exports2.isPR = vendor.pr.any.some(function(key) {
              return !!env4[key];
            });
          } else {
            exports2.isPR = checkEnv(vendor.pr);
          }
          break;
        default:
          exports2.isPR = null;
      }
    });
    exports2.isCI = !!(env4.CI !== "false" && // Bypass all checks if CI env is explicitly set to 'false'
    (env4.BUILD_ID || // Jenkins, Cloudbees
    env4.BUILD_NUMBER || // Jenkins, TeamCity
    env4.CI || // Travis CI, CircleCI, Cirrus CI, Gitlab CI, Appveyor, CodeShip, dsari
    env4.CI_APP_ID || // Appflow
    env4.CI_BUILD_ID || // Appflow
    env4.CI_BUILD_NUMBER || // Appflow
    env4.CI_NAME || // Codeship and others
    env4.CONTINUOUS_INTEGRATION || // Travis CI, Cirrus CI
    env4.RUN_ID || // TaskCluster, dsari
    exports2.name || false));
    function checkEnv(obj) {
      if (typeof obj === "string") return !!env4[obj];
      if ("env" in obj) {
        return env4[obj.env] && env4[obj.env].includes(obj.includes);
      }
      if ("any" in obj) {
        return obj.any.some(function(k2) {
          return !!env4[k2];
        });
      }
      return Object.keys(obj).every(function(k2) {
        return env4[k2] === obj[k2];
      });
    }
  }
});

// ../../../../../setup-pnpm/store/v11/links/@pnpm/log.group/4.0.1/27889972ab62bb37aebe5867a783548e7c6d35d9f0de939c9389e855a83bd96d/node_modules/@pnpm/log.group/dist/group.js
var require_group = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@pnpm/log.group/4.0.1/27889972ab62bb37aebe5867a783548e7c6d35d9f0de939c9389e855a83bd96d/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(mod2) {
      if (mod2 && mod2.__esModule) return mod2;
      var result2 = {};
      if (mod2 != null) {
        for (var k2 in mod2) if (k2 !== "default" && Object.prototype.hasOwnProperty.call(mod2, k2)) __createBinding2(result2, mod2, k2);
      }
      __setModuleDefault2(result2, mod2);
      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;
    }
  }
});

// ../../../../../setup-pnpm/store/v11/links/@pnpm/log.group/4.0.1/27889972ab62bb37aebe5867a783548e7c6d35d9f0de939c9389e855a83bd96d/node_modules/@pnpm/log.group/dist/index.js
var require_dist11 = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@pnpm/log.group/4.0.1/27889972ab62bb37aebe5867a783548e7c6d35d9f0de939c9389e855a83bd96d/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 path191 from "node:path";
import util56 from "node:util";
async function runRecursive(params, opts3) {
  if (opts3.sequential) {
    opts3.workspaceConcurrency = 1;
  }
  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 = opts3.sort ? sortFilteredProjects(opts3) : [Object.keys(opts3.selectedProjectsGraph).sort()];
  let packageChunks = opts3.reverse ? sortedPackageChunks.reverse() : sortedPackageChunks;
  if (opts3.resumeFrom) {
    packageChunks = getResumedPackageChunks({
      resumeFrom: opts3.resumeFrom,
      chunks: packageChunks,
      selectedProjectsGraph: opts3.selectedProjectsGraph
    });
  }
  const limitRun = pLimit(getWorkspaceConcurrency(opts3.workspaceConcurrency));
  const stdio = !opts3.stream && (opts3.workspaceConcurrency === 1 || packageChunks.length === 1 && packageChunks[0].length === 1) ? "inherit" : "pipe";
  const existsPnp = existsInDir.bind(null, ".pnp.cjs");
  const workspacePnpPath = opts3.workspaceDir && existsPnp(opts3.workspaceDir);
  const existsPackageMap = existsInDir.bind(null, path191.join(opts3.modulesDir ?? "node_modules", ".package-map.json"));
  const workspacePackageMapPath = opts3.nodeExperimentalPackageMap && opts3.workspaceDir && existsPackageMap(opts3.workspaceDir);
  const requiredScripts = opts3.requiredScripts ?? [];
  if (requiredScripts.includes(scriptName)) {
    const missingScriptPackages = packageChunks.flat().map((prefix) => opts3.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);
  const failedPrefixes = /* @__PURE__ */ new Set();
  for (const chunk of packageChunks) {
    const selectedScripts = chunk.map((prefix) => {
      const pkg = opts3.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 = opts3.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);
      }
      if (!failedPrefixes.has(prefix)) {
        result2[prefix].status = "running";
      }
      const startTime = process.hrtime();
      hasCommand++;
      try {
        const lifecycleOpts2 = {
          depPath: prefix,
          extraBinPaths: opts3.extraBinPaths,
          extraEnv: opts3.extraEnv,
          pkgRoot: prefix,
          userAgent: opts3.userAgent,
          rootModulesDir: await realpathMissing(path191.join(prefix, "node_modules")),
          scriptsPrependNodePath: opts3.scriptsPrependNodePath,
          scriptShell: opts3.scriptShell,
          silent: opts3.reporter === "silent",
          shellEmulator: opts3.shellEmulator,
          stdio,
          unsafePerm: true
          // when running scripts explicitly, assume that they're trusted.
        };
        const pnpPath = workspacePnpPath ?? existsPnp(prefix);
        if (pnpPath) {
          lifecycleOpts2.extraEnv = {
            ...lifecycleOpts2.extraEnv,
            ...makeNodeRequireOption(pnpPath, lifecycleOpts2.extraEnv)
          };
        }
        const packageMapPath = workspacePackageMapPath || opts3.nodeExperimentalPackageMap && existsPackageMap(prefix);
        if (packageMapPath) {
          lifecycleOpts2.extraEnv = {
            ...lifecycleOpts2.extraEnv,
            ...makeNodePackageMapOption(packageMapPath, lifecycleOpts2.extraEnv)
          };
        }
        const runScriptOptions = {
          enablePrePostScripts: opts3.enablePrePostScripts ?? false,
          syncInjectedDepsAfterScripts: opts3.syncInjectedDepsAfterScripts,
          workspaceDir: opts3.workspaceDir
        };
        const _runScript = runScript.bind(null, { manifest: pkg.package.manifest, lifecycleOpts: lifecycleOpts2, runScriptOptions, passedThruArgs });
        const groupEnd = Boolean(lifecycleOpts2.silent) || getWorkspaceConcurrency(opts3.workspaceConcurrency) > 1 ? void 0 : (0, import_log6.groupStart)(formatSectionName({
          name: pkg.package.manifest.name,
          script: scriptName2,
          version: pkg.package.manifest.version,
          prefix: path191.normalize(path191.relative(opts3.workspaceDir, prefix))
        }));
        await _runScript(scriptName2);
        groupEnd?.();
        if (!failedPrefixes.has(prefix)) {
          result2[prefix].status = "passed";
          result2[prefix].duration = getExecutionDuration(startTime);
        }
      } catch (err2) {
        assert12(util56.types.isNativeError(err2));
        failedPrefixes.add(prefix);
        result2[prefix] = {
          status: "failure",
          duration: getExecutionDuration(startTime),
          error: err2,
          message: err2.message,
          prefix
        };
        if (!opts3.bail) {
          return;
        }
        Object.assign(err2, {
          code: "ERR_PNPM_RECURSIVE_RUN_FIRST_FAIL",
          prefix
        });
        if (opts3.reportSummary) {
          await writeRecursiveSummary({
            dir: opts3.workspaceDir ?? opts3.dir,
            summary: result2
          });
        }
        throw err2;
      }
    })));
  }
  if (scriptName !== "test" && !hasCommand && !opts3.ifPresent) {
    const allPackagesAreSelected = Object.keys(opts3.selectedProjectsGraph).length === opts3.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 (opts3.reportSummary) {
    await writeRecursiveSummary({
      dir: opts3.workspaceDir ?? opts3.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) {
    return Object.keys(scripts).filter((script) => script.match(scriptSelector));
  }
  return [];
}
var import_log6;
var init_runRecursive = __esm({
  "../exec/commands/lib/runRecursive.js"() {
    "use strict";
    init_lib41();
    init_lib64();
    init_lib2();
    init_lib21();
    import_log6 = __toESM(require_dist11(), 1);
    init_lib95();
    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 path192 from "node:path";
function rcOptionsTypes40() {
  return {
    ...pick_default([
      "npm-path",
      "node-experimental-package-map",
      "node-package-map-type"
    ], 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,
    sequential: 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: "Continue running the remaining scripts even if one of them fails, instead of aborting on the first failure. The command still exits with a non-zero exit code if any script failed",
            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(opts3, params) {
  if (opts3.sequential) {
    opts3.workspaceConcurrency = 1;
  }
  let dir;
  if (opts3.fallbackCommandUsed && (params[0] === "t" || params[0] === "tst")) {
    params[0] = "test";
  }
  const [scriptName, ...passedThruArgs] = params;
  if (opts3.verifyDepsBeforeRun) {
    await runDepsStatusCheck(opts3);
  }
  if (opts3.nodeOptions) {
    opts3.extraEnv = {
      ...opts3.extraEnv,
      NODE_OPTIONS: opts3.nodeOptions
    };
  }
  if (opts3.recursive) {
    if (scriptName || Object.keys(opts3.selectedProjectsGraph).length > 1) {
      return runRecursive(params, opts3);
    }
    dir = Object.keys(opts3.selectedProjectsGraph)[0];
  } else {
    dir = opts3.dir;
  }
  const manifest = await readProjectManifestOnly2(dir, opts3);
  if (!scriptName) {
    const rootManifest = opts3.workspaceDir && opts3.workspaceDir !== dir ? (await tryReadProjectManifest2(opts3.workspaceDir, opts3)).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 (opts3.ifPresent)
      return;
    if (opts3.fallbackCommandUsed) {
      if (opts3.argv == null)
        throw new Error("Could not fallback because opts.argv.original was not passed to the script runner");
      const params2 = opts3.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,
        ...opts3
      }, params2);
    }
    if (opts3.workspaceDir) {
      const { manifest: rootManifest } = await tryReadProjectManifest2(opts3.workspaceDir, opts3);
      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(opts3.workspaceConcurrency);
  const lifecycleOpts2 = {
    depPath: dir,
    extraBinPaths: opts3.extraBinPaths,
    extraEnv: opts3.extraEnv,
    pkgRoot: dir,
    rootModulesDir: await realpathMissing(path192.join(dir, "node_modules")),
    scriptsPrependNodePath: opts3.scriptsPrependNodePath,
    scriptShell: opts3.scriptShell,
    silent: opts3.reporter === "silent",
    shellEmulator: opts3.shellEmulator,
    stdio: specifiedScripts.length > 1 && concurrency > 1 ? "pipe" : "inherit",
    unsafePerm: true,
    // when running scripts explicitly, assume that they're trusted.
    userAgent: opts3.userAgent
  };
  const existsPnp = existsInDir.bind(null, ".pnp.cjs");
  const pnpPath = (opts3.workspaceDir && existsPnp(opts3.workspaceDir)) ?? existsPnp(dir);
  if (pnpPath) {
    lifecycleOpts2.extraEnv = {
      ...lifecycleOpts2.extraEnv,
      ...makeNodeRequireOption(pnpPath, lifecycleOpts2.extraEnv)
    };
  }
  const existsPackageMap = existsInDir.bind(null, path192.join(opts3.modulesDir ?? "node_modules", ".package-map.json"));
  const packageMapPath = opts3.nodeExperimentalPackageMap ? (opts3.workspaceDir && existsPackageMap(opts3.workspaceDir)) ?? existsPackageMap(dir) : void 0;
  if (packageMapPath) {
    lifecycleOpts2.extraEnv = {
      ...lifecycleOpts2.extraEnv,
      ...makeNodePackageMapOption(packageMapPath, lifecycleOpts2.extraEnv)
    };
  }
  const limitRun = pLimit(concurrency);
  const runScriptOptions = {
    enablePrePostScripts: opts3.enablePrePostScripts ?? false,
    syncInjectedDepsAfterScripts: opts3.syncInjectedDepsAfterScripts,
    workspaceDir: opts3.workspaceDir
  };
  const _runScript = runScript.bind(null, { manifest, lifecycleOpts: lifecycleOpts2, runScriptOptions, passedThruArgs });
  if (opts3.bail !== false) {
    await Promise.all(specifiedScripts.map((script) => limitRun(() => _runScript(script))));
  } else {
    const results = await Promise.allSettled(specifiedScripts.map((script) => limitRun(() => _runScript(script))));
    const failures = results.map((result2, index2) => ({ result: result2, script: specifiedScripts[index2] })).filter((entry) => entry.result.status === "rejected");
    if (failures.length > 0) {
      throw new PnpmError("RUN_FAILED", `Some scripts failed: ${failures.length} of ${specifiedScripts.length}`, {
        hint: failures.map(({ script, result: result2 }) => `${script}: ${result2.reason?.message ?? String(result2.reason)}`).join("\n")
      });
    }
  }
  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(opts3, scriptName) {
  if (opts3.runScriptOptions.enablePrePostScripts && opts3.manifest.scripts?.[`pre${scriptName}`] && !opts3.manifest.scripts[scriptName].includes(`pre${scriptName}`)) {
    await runLifecycleHook(`pre${scriptName}`, opts3.manifest, opts3.lifecycleOpts);
  }
  await runLifecycleHook(scriptName, opts3.manifest, { ...opts3.lifecycleOpts, args: opts3.passedThruArgs });
  if (opts3.runScriptOptions.enablePrePostScripts && opts3.manifest.scripts?.[`post${scriptName}`] && !opts3.manifest.scripts[scriptName].includes(`post${scriptName}`)) {
    await runLifecycleHook(`post${scriptName}`, opts3.manifest, opts3.lifecycleOpts);
  }
  if (opts3.runScriptOptions.syncInjectedDepsAfterScripts?.includes(scriptName)) {
    await syncInjectedDeps({
      pkgName: opts3.manifest.name,
      pkgRootDir: opts3.lifecycleOpts.pkgRoot,
      workspaceDir: opts3.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_lib94();
    init_lib41();
    init_lib64();
    init_lib2();
    init_lib21();
    init_lib164();
    init_p_limit();
    init_es();
    init_realpath_missing();
    init_lib66();
    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",
      shortAlias: "-s"
    };
    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"
      ],
      s: [
        "--sequential",
        "--workspace-concurrency=1"
      ],
      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 path193 from "node:path";
function rcOptionsTypes41() {
  return {
    ...pick_default([
      "bail",
      "sort",
      "unsafe-perm",
      "workspace-concurrency",
      "reporter-hide-prefix",
      "node-experimental-package-map",
      "node-package-map-type"
    ], 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(opts3) {
  await writeJsonFile(path193.join(opts3.dir, "pnpm-exec-summary.json"), {
    executionStatus: opts3.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(opts3, 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(opts3.workspaceConcurrency));
  if (opts3.verifyDepsBeforeRun) {
    await runDepsStatusCheck(opts3);
  }
  let chunks;
  if (opts3.recursive) {
    chunks = opts3.sort ? sortFilteredProjects(opts3) : [Object.keys(opts3.selectedProjectsGraph).sort()];
    if (opts3.reverse) {
      chunks = chunks.reverse();
    }
  } else {
    chunks = [[opts3.cliOptions.dir ?? process.cwd()]];
    const project = await tryReadProjectManifest(opts3.dir);
    if (project.manifest != null) {
      opts3.selectedProjectsGraph = {
        [opts3.dir]: {
          dependencies: [],
          package: {
            ...project,
            rootDir: opts3.dir,
            rootDirRealPath: opts3.dir
          }
        }
      };
    }
  }
  if (!opts3.selectedProjectsGraph) {
    throw new PnpmError("RECURSIVE_EXEC_NO_PACKAGE", "No package found in this workspace");
  }
  if (opts3.resumeFrom) {
    chunks = getResumedPackageChunks({
      resumeFrom: opts3.resumeFrom,
      chunks,
      selectedProjectsGraph: opts3.selectedProjectsGraph
    });
  }
  const result2 = createEmptyRecursiveSummary(chunks);
  const existsPnp = existsInDir.bind(null, ".pnp.cjs");
  const workspacePnpPath = opts3.workspaceDir && existsPnp(opts3.workspaceDir);
  const existsPackageMap = existsInDir.bind(null, path193.join(opts3.modulesDir ?? "node_modules", ".package-map.json"));
  const workspacePackageMapPath = opts3.nodeExperimentalPackageMap && opts3.workspaceDir && existsPackageMap(opts3.workspaceDir);
  let exitCode = 0;
  const prependPaths = [
    "./node_modules/.bin",
    ...opts3.extraBinPaths ?? []
  ];
  const reporterShowPrefix = opts3.recursive && opts3.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 packageMapPath = workspacePackageMapPath || opts3.nodeExperimentalPackageMap && existsPackageMap(prefix);
        const extraEnv = {
          ...opts3.extraEnv,
          ...opts3.nodeOptions ? { NODE_OPTIONS: opts3.nodeOptions } : {}
        };
        if (pnpPath) {
          Object.assign(extraEnv, makeNodeRequireOption(pnpPath, extraEnv));
        }
        if (packageMapPath) {
          Object.assign(extraEnv, makeNodePackageMapOption(packageMapPath, extraEnv));
        }
        const env4 = makeEnv2({
          extraEnv: {
            ...extraEnv,
            PNPM_PACKAGE_NAME: opts3.selectedProjectsGraph[prefix]?.package.manifest.name
          },
          prependPaths,
          userAgent: opts3.userAgent
        });
        const [cmd, ...args] = params;
        if (reporterShowPrefix) {
          const manifest = await readProjectManifestOnly2(prefix);
          const child = trackedExeca(cmd, args, {
            cwd: prefix,
            env: env4,
            stdio: "pipe",
            shell: opts3.shellMode ?? false
          });
          const lifecycleOpts2 = {
            wd: prefix,
            depPath: manifest.name ?? path193.relative(opts3.dir, prefix),
            stage: "(exec)"
          };
          const logFn = (stdio) => (data) => {
            for (const line of String(data).split("\n")) {
              lifecycleLogger.debug({
                ...lifecycleOpts2,
                stdio,
                line
              });
            }
          };
          child.stdout.on("data", logFn("stdout"));
          child.stderr.on("data", logFn("stderr"));
          await new Promise((resolve4) => {
            void child.once("close", (exitCode2) => {
              lifecycleLogger.debug({
                ...lifecycleOpts2,
                exitCode: exitCode2 ?? 1,
                optional: false
              });
              resolve4();
            });
          });
          await child;
        } else {
          const child = trackedExeca(cmd, args, {
            cwd: prefix,
            env: env4,
            stdio: "inherit",
            shell: opts3.shellMode ?? false
          });
          await child;
        }
        result2[prefix].status = "passed";
        result2[prefix].duration = getExecutionDuration(startTime);
      } catch (err2) {
        if (isErrorCommandNotFound(params[0], err2, prefix, prependPaths)) {
          err2.message = `Command "${params[0]}" not found`;
          err2.hint = await createExecCommandNotFoundHint(params[0], {
            implicitlyFellbackFromRun: opts3.implicitlyFellbackFromRun ?? false,
            dir: opts3.dir,
            workspaceDir: opts3.workspaceDir,
            modulesDir: opts3.modulesDir ?? "node_modules"
          });
        } else if (!opts3.recursive && typeof err2.exitCode === "number") {
          exitCode = err2.exitCode;
          return;
        }
        logger.info(err2);
        result2[prefix] = {
          status: "failure",
          duration: getExecutionDuration(startTime),
          error: err2,
          message: err2.message,
          prefix
        };
        if (!opts3.bail) {
          return;
        }
        if (!err2["code"]?.startsWith("ERR_PNPM_")) {
          err2["code"] = "ERR_PNPM_RECURSIVE_EXEC_FIRST_FAIL";
        }
        err2["prefix"] = prefix;
        if (opts3.reportSummary) {
          await writeRecursiveSummary({
            dir: opts3.lockfileDir ?? opts3.dir,
            summary: result2
          });
        }
        throw err2;
      }
    })));
  }
  if (opts3.reportSummary) {
    await writeRecursiveSummary({
      dir: opts3.lockfileDir ?? opts3.dir,
      summary: result2
    });
  }
  throwOnCommandFail("pnpm recursive exec", result2);
  return { exitCode };
}
async function createExecCommandNotFoundHint(programName, opts3) {
  if (opts3.implicitlyFellbackFromRun) {
    let nearestScript;
    try {
      nearestScript = getNearestScript(programName, (await readProjectManifestOnly2(opts3.dir)).scripts);
    } catch {
    }
    if (nearestScript) {
      return `Did you mean "pnpm ${nearestScript}"?`;
    }
    const nearestProgram2 = getNearestProgram({
      programName,
      dir: opts3.dir,
      workspaceDir: opts3.workspaceDir,
      modulesDir: opts3.modulesDir
    });
    if (nearestProgram2) {
      return `Did you mean "pnpm ${nearestProgram2}"?`;
    }
    return void 0;
  }
  const nearestProgram = getNearestProgram({
    programName,
    dir: opts3.dir,
    workspaceDir: opts3.workspaceDir,
    modulesDir: opts3.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) => path193.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_lib94();
    init_lib41();
    init_lib64();
    init_lib6();
    init_lib2();
    init_lib21();
    init_lib3();
    init_lib160();
    init_lib15();
    init_lib95();
    init_p_limit();
    init_es();
    init_lib66();
    import_which3 = __toESM(require_lib28(), 1);
    init_write_json_file();
    init_buildCommandNotFoundHint();
    init_existsInDir();
    init_makeEnv();
    init_run();
    init_runDepsStatusCheck();
    init_trackedExeca();
    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(opts3, params) {
  await handler41(opts3, ["stop", ...params]);
  await handler41(opts3, ["restart", ...params]);
  await handler41(opts3, ["start", ...params]);
}
var commandNames42;
var init_restart = __esm({
  "../exec/commands/lib/restart.js"() {
    "use strict";
    init_lib64();
    init_es();
    init_lib66();
    init_run();
    commandNames42 = ["restart"];
  }
});

// ../exec/commands/lib/index.js
var init_lib165 = __esm({
  "../exec/commands/lib/index.js"() {
    "use strict";
    init_create2();
    init_dlx();
    init_exec();
    init_restart();
    init_run();
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/environment/1.1.0/675e07dac9042e2346cd9a637e6a3cbd31b101f23b0a81d3db44c1dfbf92c7d0/node_modules/environment/index.js
var isBrowser, isNode2, isBun, isDeno, isElectron, isJsDom, isWebWorker, isDedicatedWorker, isSharedWorker, isServiceWorker, platform4, isMacOs, isWindows12, isLinux, isIos, isAndroid;
var init_environment = __esm({
  "../../../../../setup-pnpm/store/v11/links/@/environment/1.1.0/675e07dac9042e2346cd9a637e6a3cbd31b101f23b0a81d3db44c1dfbf92c7d0/node_modules/environment/index.js"() {
    isBrowser = globalThis.window?.document !== void 0;
    isNode2 = 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;
    platform4 = globalThis.navigator?.userAgentData?.platform;
    isMacOs = platform4 === "macOS" || globalThis.navigator?.platform === "MacIntel" || globalThis.navigator?.userAgent?.includes(" Mac ") === true || globalThis.process?.platform === "darwin";
    isWindows12 = platform4 === "Windows" || globalThis.navigator?.platform === "Win32" || globalThis.process?.platform === "win32";
    isLinux = platform4 === "Linux" || globalThis.navigator?.platform?.startsWith("Linux") === true || globalThis.navigator?.userAgent?.includes(" Linux ") === true || globalThis.process?.platform === "linux";
    isIos = platform4 === "iOS" || globalThis.navigator?.platform === "MacIntel" && globalThis.navigator?.maxTouchPoints > 1 || /iPad|iPhone|iPod/.test(globalThis.navigator?.platform);
    isAndroid = platform4 === "Android" || globalThis.navigator?.platform === "Android" || globalThis.navigator?.userAgent?.includes(" Android ") === true || globalThis.process?.platform === "android";
  }
});

// ../../../../../setup-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: () => cursorDown2,
  cursorForward: () => cursorForward,
  cursorGetPosition: () => cursorGetPosition,
  cursorHide: () => cursorHide2,
  cursorLeft: () => cursorLeft2,
  cursorMove: () => cursorMove,
  cursorNextLine: () => cursorNextLine,
  cursorPrevLine: () => cursorPrevLine,
  cursorRestorePosition: () => cursorRestorePosition,
  cursorSavePosition: () => cursorSavePosition,
  cursorShow: () => cursorShow2,
  cursorTo: () => cursorTo2,
  cursorUp: () => cursorUp2,
  endSynchronizedOutput: () => endSynchronizedOutput,
  enterAlternativeScreen: () => enterAlternativeScreen,
  eraseDown: () => eraseDown,
  eraseEndLine: () => eraseEndLine,
  eraseLine: () => eraseLine2,
  eraseLines: () => eraseLines2,
  eraseScreen: () => eraseScreen,
  eraseStartLine: () => eraseStartLine,
  eraseUp: () => eraseUp,
  exitAlternativeScreen: () => exitAlternativeScreen,
  iTerm: () => iTerm,
  image: () => image,
  link: () => link,
  scrollDown: () => scrollDown,
  scrollUp: () => scrollUp,
  setCwd: () => setCwd,
  synchronizedOutput: () => synchronizedOutput
});
import process22 from "node:process";
import os16 from "node:os";
var ESC3, OSC, BEL, SEP2, isTerminalApp, isWindows13, isTmux, cwdFunction, wrapOsc, cursorTo2, cursorMove, cursorUp2, cursorDown2, cursorForward, cursorBackward, cursorLeft2, cursorSavePosition, cursorRestorePosition, cursorGetPosition, cursorNextLine, cursorPrevLine, cursorHide2, cursorShow2, eraseLines2, eraseEndLine, eraseStartLine, eraseLine2, eraseDown, eraseUp, eraseScreen, scrollUp, scrollDown, clearScreen, clearViewport, isOldWindows, clearTerminal, enterAlternativeScreen, exitAlternativeScreen, beginSynchronizedOutput, endSynchronizedOutput, synchronizedOutput, beep, link, image, iTerm, ConEmu, setCwd;
var init_base2 = __esm({
  "../../../../../setup-pnpm/store/v11/links/@/ansi-escapes/7.3.0/62b6e83f9a34721332f143e06a960e160f36fd158f241c4844ff3f49276b7b68/node_modules/ansi-escapes/base.js"() {
    init_environment();
    ESC3 = "\x1B[";
    OSC = "\x1B]";
    BEL = "\x07";
    SEP2 = ";";
    isTerminalApp = !isBrowser && process22.env.TERM_PROGRAM === "Apple_Terminal";
    isWindows13 = !isBrowser && process22.platform === "win32";
    isTmux = !isBrowser && (process22.env.TERM?.startsWith("screen") || process22.env.TERM?.startsWith("tmux") || process22.env.TMUX !== void 0);
    cwdFunction = isBrowser ? () => {
      throw new Error("`process.cwd()` only works in Node.js, not the browser.");
    } : process22.cwd;
    wrapOsc = (sequence) => {
      if (isTmux) {
        return "\x1BPtmux;" + sequence.replaceAll("\x1B", "\x1B\x1B") + "\x1B\\";
      }
      return sequence;
    };
    cursorTo2 = (x3, y) => {
      if (typeof x3 !== "number") {
        throw new TypeError("The `x` argument is required");
      }
      if (typeof y !== "number") {
        return ESC3 + (x3 + 1) + "G";
      }
      return ESC3 + (y + 1) + SEP2 + (x3 + 1) + "H";
    };
    cursorMove = (x3, y) => {
      if (typeof x3 !== "number") {
        throw new TypeError("The `x` argument is required");
      }
      let returnValue = "";
      if (x3 < 0) {
        returnValue += ESC3 + -x3 + "D";
      } else if (x3 > 0) {
        returnValue += ESC3 + x3 + "C";
      }
      if (y < 0) {
        returnValue += ESC3 + -y + "A";
      } else if (y > 0) {
        returnValue += ESC3 + y + "B";
      }
      return returnValue;
    };
    cursorUp2 = (count2 = 1) => ESC3 + count2 + "A";
    cursorDown2 = (count2 = 1) => ESC3 + count2 + "B";
    cursorForward = (count2 = 1) => ESC3 + count2 + "C";
    cursorBackward = (count2 = 1) => ESC3 + count2 + "D";
    cursorLeft2 = ESC3 + "G";
    cursorSavePosition = isTerminalApp ? "\x1B7" : ESC3 + "s";
    cursorRestorePosition = isTerminalApp ? "\x1B8" : ESC3 + "u";
    cursorGetPosition = ESC3 + "6n";
    cursorNextLine = ESC3 + "E";
    cursorPrevLine = ESC3 + "F";
    cursorHide2 = ESC3 + "?25l";
    cursorShow2 = ESC3 + "?25h";
    eraseLines2 = (count2) => {
      let clear = "";
      for (let i4 = 0; i4 < count2; i4++) {
        clear += eraseLine2 + (i4 < count2 - 1 ? cursorUp2() : "");
      }
      if (count2) {
        clear += cursorLeft2;
      }
      return clear;
    };
    eraseEndLine = ESC3 + "K";
    eraseStartLine = ESC3 + "1K";
    eraseLine2 = ESC3 + "2K";
    eraseDown = ESC3 + "J";
    eraseUp = ESC3 + "1J";
    eraseScreen = ESC3 + "2J";
    scrollUp = ESC3 + "S";
    scrollDown = ESC3 + "T";
    clearScreen = "\x1Bc";
    clearViewport = `${eraseScreen}${ESC3}H`;
    isOldWindows = () => {
      if (isBrowser || !isWindows13) {
        return false;
      }
      const parts = os16.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}${ESC3}0f` : `${eraseScreen}${ESC3}3J${ESC3}H`;
    enterAlternativeScreen = ESC3 + "?1049h";
    exitAlternativeScreen = ESC3 + "?1049l";
    beginSynchronizedOutput = ESC3 + "?2026h";
    endSynchronizedOutput = ESC3 + "?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);
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/ansi-escapes/7.3.0/62b6e83f9a34721332f143e06a960e160f36fd158f241c4844ff3f49276b7b68/node_modules/ansi-escapes/index.js
var init_ansi_escapes = __esm({
  "../../../../../setup-pnpm/store/v11/links/@/ansi-escapes/7.3.0/62b6e83f9a34721332f143e06a960e160f36fd158f241c4844ff3f49276b7b68/node_modules/ansi-escapes/index.js"() {
    init_base2();
    init_base2();
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/has-flag/5.0.1/673edecc2e2469b1f29821316680ead7c540327937f392e0a7d409de8210053e/node_modules/has-flag/index.js
import process23 from "process";
function hasFlag4(flag, argv2 = process23.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({
  "../../../../../setup-pnpm/store/v11/links/@/has-flag/5.0.1/673edecc2e2469b1f29821316680ead7c540327937f392e0a7d409de8210053e/node_modules/has-flag/index.js"() {
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/supports-hyperlinks/4.5.0/64e92d23adf8d464f8293a4f9513104bbf63897d126bca93c1c58dbd66fc1991/node_modules/supports-hyperlinks/index.js
import process24 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
  } = process24.env;
  if (FORCE_HYPERLINK) {
    return !(FORCE_HYPERLINK.length > 0 && Number.parseInt(FORCE_HYPERLINK, 10) === 0);
  }
  if (hasFlag4("no-hyperlink") || hasFlag4("no-hyperlinks") || hasFlag4("hyperlink=false") || hasFlag4("hyperlink=never")) {
    return false;
  }
  if (hasFlag4("hyperlink=true") || hasFlag4("hyperlink=always")) {
    return true;
  }
  if (NETLIFY) {
    return true;
  }
  if (!createSupportsColor3(stream2)) {
    return false;
  }
  if (stream2 && !stream2.isTTY) {
    return false;
  }
  if ("WT_SESSION" in process24.env) {
    return true;
  }
  if (process24.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;
      }
      case "Orca": {
        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({
  "../../../../../setup-pnpm/store/v11/links/@/supports-hyperlinks/4.5.0/64e92d23adf8d464f8293a4f9513104bbf63897d126bca93c1c58dbd66fc1991/node_modules/supports-hyperlinks/index.js"() {
    init_supports_color3();
    init_has_flag();
    supportsHyperlinks = {
      stdout: createSupportsHyperlinks(process24.stdout),
      stderr: createSupportsHyperlinks(process24.stderr)
    };
    supports_hyperlinks_default = supportsHyperlinks;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/terminal-link/5.0.0/3f0753bc5f3bff97a4851888efc9467f089b1d4714bfe55f4c77877fa81f1aa3/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({
  "../../../../../setup-pnpm/store/v11/links/@/terminal-link/5.0.0/3f0753bc5f3bff97a4851888efc9467f089b1d4714bfe55f4c77877fa81f1aa3/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 path194 from "node:path";
function getEditDirPath(param, patchedDep, opts3) {
  const editDirName = getEditDirNameFromParsedDep(patchedDep) ?? param;
  return path194.join(opts3.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 path195 from "node:path";
async function getPatchedDependency(rawDependency, opts3) {
  const dep = parseWantedDependency(rawDependency);
  const { versions, preferredVersions } = await getVersionsFromLockfile(dep, opts3);
  if (!preferredVersions.length) {
    throw new PnpmError("PATCH_VERSION_NOT_FOUND", `Can not find ${rawDependency} in project ${opts3.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) {
    let version2;
    let applyToAll;
    try {
      version2 = await dist_default8({
        message: "Choose which version to patch",
        choices: preferredVersions.map((preferred) => ({
          name: preferred.version,
          value: preferred.gitTarballUrl ?? preferred.version,
          description: preferred.gitTarballUrl ? "Git Hosted" : void 0
        })),
        theme: { keybindings: ["vim"] }
      });
      applyToAll = await dist_default5({
        message: "Apply this patch to all versions?"
      });
    } catch (err2) {
      if (err2 instanceof Error && err2.name === "ExitPromptError") {
        throw new PnpmError("PATCH_CANCELED", "Canceled");
      }
      throw err2;
    }
    return {
      ...dep,
      applyToAll,
      bareSpecifier: version2
    };
  } else {
    const preferred = preferredVersions[0];
    if (preferred.gitTarballUrl) {
      return {
        ...dep,
        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, opts3) {
  const modulesDir = await realpathMissing(path195.join(opts3.lockfileDir, opts3.modulesDir ?? "node_modules"));
  const lockfile = await readCurrentLockfile(path195.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: isGitHostedTarballUrl(tarball) || isPkgPrNewUrl(tarball) ? tarball : void 0
    };
  }).filter(({ name }) => name === pkgName).sort((v1, v2) => import_semver57.default.compare(v1.version, v2.version));
  return {
    versions,
    preferredVersions: versions.filter(({ version: version2 }) => dep.alias && dep.bareSpecifier ? import_semver57.default.satisfies(version2, dep.bareSpecifier) : true)
  };
}
var import_semver57;
var init_getPatchedDependency = __esm({
  "../patching/commands/lib/getPatchedDependency.js"() {
    "use strict";
    init_dist14();
    init_lib2();
    init_lib80();
    init_lib73();
    init_lib98();
    init_realpath_missing();
    import_semver57 = __toESM(require_semver2(), 1);
  }
});

// ../patching/commands/lib/stateFile.js
import fs107 from "node:fs";
import path196 from "node:path";
import util57 from "node:util";
function readEditDirState(opts3) {
  const state = readStateFile(opts3.modulesDir);
  if (!state)
    return void 0;
  const key = createEditDirKey(opts3);
  return state[key];
}
function writeEditDirState(opts3) {
  modifyStateFile(opts3.modulesDir, (state) => {
    const key = createEditDirKey(opts3);
    state[key] = {
      patchedPkg: opts3.patchedPkg,
      applyToAll: opts3.applyToAll
    };
  });
}
function modifyStateFile(modulesDir, modifyState) {
  const filePath = getStateFilePath(modulesDir);
  let state = readStateFile(modulesDir);
  if (!state) {
    state = {};
    fs107.mkdirSync(path196.dirname(filePath), { recursive: true });
  }
  modifyState(state);
  fs107.writeFileSync(filePath, JSON.stringify(state, void 0, 2));
}
function readStateFile(modulesDir) {
  let fileContent;
  try {
    fileContent = fs107.readFileSync(getStateFilePath(modulesDir), "utf-8");
  } catch (err2) {
    if (util57.types.isNativeError(err2) && "code" in err2 && err2.code === "ENOENT") {
      return void 0;
    }
    throw err2;
  }
  return JSON.parse(fileContent);
}
function getStateFilePath(modulesDir) {
  return path196.join(modulesDir, ".pnpm_patches", "state.json");
}
var createEditDirKey;
var init_stateFile = __esm({
  "../patching/commands/lib/stateFile.js"() {
    "use strict";
    createEditDirKey = (opts3) => opts3.editDir;
  }
});

// ../patching/commands/lib/writePackage.js
async function writePackage(dep, dest, opts3) {
  const store = await createStoreController({
    ...opts3,
    packageImportMethod: "clone-or-copy"
  });
  const pkgResponse = await store.ctrl.requestPackage(dep, {
    downloadPriority: 1,
    lockfileDir: opts3.dir,
    preferredVersions: {},
    projectDir: opts3.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_lib92();
  }
});

// ../patching/commands/lib/patch.js
var patch_exports = {};
__export(patch_exports, {
  cliOptionsTypes: () => cliOptionsTypes42,
  commandNames: () => commandNames43,
  handler: () => handler43,
  help: () => help43,
  rcOptionsTypes: () => rcOptionsTypes43,
  recursiveByDefault: () => recursiveByDefault11,
  shorthands: () => shorthands15
});
import fs108 from "node:fs";
import path197 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(opts3, params) {
  if (opts3.editDir && fs108.existsSync(opts3.editDir) && fs108.readdirSync(opts3.editDir).length > 0) {
    throw new PnpmError("PATCH_EDIT_DIR_EXISTS", `The target directory already exists: '${opts3.editDir}'`);
  }
  if (!params[0]) {
    throw new PnpmError("MISSING_PACKAGE_NAME", "`pnpm patch` requires the package name");
  }
  const lockfileDir = opts3.lockfileDir ?? opts3.dir ?? process.cwd();
  const patchedDep = await getPatchedDependency(params[0], {
    lockfileDir,
    modulesDir: opts3.modulesDir,
    virtualStoreDir: opts3.virtualStoreDir
  });
  const quote2 = (0, import_is_windows9.default)() ? '"' : "'";
  const modulesDir = path197.join(lockfileDir, opts3.modulesDir ?? "node_modules");
  const editDir = opts3.editDir ? path197.resolve(opts3.dir, opts3.editDir) : getEditDirPath(params[0], patchedDep, { modulesDir });
  if (fs108.existsSync(editDir) && fs108.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, opts3);
  writeEditDirState({
    editDir,
    modulesDir,
    patchedPkg: params[0],
    applyToAll: patchedDep.applyToAll
  });
  if (!opts3.ignoreExisting && opts3.patchedDependencies) {
    tryPatchWithExistingPatchFile({
      patchedDep,
      patchedDir: editDir,
      patchedDependencies: opts3.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 = path197.resolve(lockfileDir, existingPatchFile);
  if (!fs108.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, recursiveByDefault11;
var init_patch = __esm({
  "../patching/commands/lib/patch.js"() {
    "use strict";
    init_lib41();
    init_lib64();
    init_lib2();
    init_lib112();
    init_source();
    import_is_windows9 = __toESM(require_is_windows(), 1);
    init_es();
    init_lib66();
    init_terminal_link();
    init_getEditDirPath();
    init_getPatchedDependency();
    init_stateFile();
    init_writePackage();
    shorthands15 = {
      d: "--edit-dir"
    };
    commandNames43 = ["patch"];
    recursiveByDefault11 = true;
  }
});

// ../patching/commands/lib/updatePatchedDependencies.js
import path198 from "node:path";
async function updatePatchedDependencies(patchedDependencies, opts3) {
  const workspaceDir = opts3.workspaceDir ?? opts3.rootProjectManifestDir;
  for (const [patchName, patchPath] of Object.entries(patchedDependencies)) {
    if (path198.isAbsolute(patchPath)) {
      patchedDependencies[patchName] = (0, import_normalize_path14.default)(path198.relative(workspaceDir, patchPath));
    }
  }
  await writeSettings({
    ...opts3,
    workspaceDir,
    updatedSettings: {
      patchedDependencies: Object.keys(patchedDependencies).length ? patchedDependencies : void 0
    }
  });
}
var import_normalize_path14;
var init_updatePatchedDependencies = __esm({
  "../patching/commands/lib/updatePatchedDependencies.js"() {
    "use strict";
    init_lib102();
    import_normalize_path14 = __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: () => recursiveByDefault12
});
import fs109 from "node:fs";
import path199 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(opts3, params) {
  const userDir = params[0];
  const lockfileDir = opts3.lockfileDir ?? opts3.dir ?? process.cwd();
  const patchesDirName = (0, import_normalize_path15.default)(path199.normalize(opts3.patchesDir ?? "patches"));
  const patchesDir = path199.join(lockfileDir, patchesDirName);
  const patchedPkgManifest = await readPackageJsonFromDir(userDir);
  const editDir = path199.resolve(opts3.dir, userDir);
  const stateValue = readEditDirState({
    editDir,
    modulesDir: path199.join(lockfileDir, opts3.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: opts3.modulesDir,
      virtualStoreDir: opts3.virtualStoreDir
    });
  }
  const patchedPkg = parseWantedDependency(gitTarballUrl ? `${patchedPkgManifest.name}@${gitTarballUrl}` : nameAndVersion);
  const patchedPkgDir = await preparePkgFilesForDiff(userDir);
  const patchContent = await getPatchContent({
    patchedPkg,
    patchedPkgDir,
    tmpName: createShortHash(editDir)
  }, opts3);
  if (patchedPkgDir !== userDir) {
    fs109.rmSync(patchedPkgDir, { recursive: true });
  }
  if (!patchContent.length) {
    return `No changes were found to the following directory: ${userDir}`;
  }
  await fs109.promises.mkdir(patchesDir, { recursive: true });
  const patchFileName = patchKey.replace("/", "__");
  await fs109.promises.writeFile(path199.join(patchesDir, `${patchFileName}.patch`), patchContent, "utf8");
  const patchedDependencies = {
    ...opts3.patchedDependencies,
    [patchKey]: `${patchesDirName}/${patchFileName}.patch`
  };
  await updatePatchedDependencies(patchedDependencies, {
    ...opts3,
    workspaceDir: opts3.workspaceDir ?? opts3.rootProjectManifestDir
  });
  await install_exports.handler({
    ...opts3,
    patchedDependencies,
    frozenLockfile: false
  });
  return void 0;
}
async function getPatchContent(ctx, opts3) {
  const storeDir = await getStorePath({
    pkgRoot: opts3.dir,
    storePath: opts3.storeDir,
    pnpmHomeDir: opts3.pnpmHomeDir
  });
  const srcDir = path199.join(storeDir, "tmp", "patch-commit", ctx.tmpName);
  await writePackage(ctx.patchedPkg, srcDir, opts3);
  const patchContent = await diffFolders(srcDir, ctx.patchedPkgDir);
  try {
    fs109.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 (err2) {
    stdout = err2.stdout;
    stderr = err2.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) => path199.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 = path199.join(src2, file);
    const destFile = path199.join(dest, file);
    const destDir = path199.dirname(destFile);
    await fs109.promises.mkdir(destDir, { recursive: true });
    await fs109.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, opts3) {
  const { preferredVersions } = await getVersionsFromLockfile(dep, opts3);
  return preferredVersions[0]?.gitTarballUrl;
}
var import_normalize_path15, rcOptionsTypes44, commandNames44, recursiveByDefault12;
var init_patchCommit = __esm({
  "../patching/commands/lib/patchCommit.js"() {
    "use strict";
    init_lib41();
    init_lib64();
    init_lib34();
    init_lib2();
    init_lib18();
    init_lib143();
    init_lib3();
    init_lib5();
    init_lib98();
    init_lib91();
    init_escape_string_regexp();
    init_make_empty_dir();
    import_normalize_path15 = __toESM(require_normalize_path(), 1);
    init_es();
    init_lib66();
    init_lib25();
    init_dist2();
    init_getPatchedDependency();
    init_stateFile();
    init_updatePatchedDependencies();
    init_writePackage();
    rcOptionsTypes44 = cliOptionsTypes43;
    commandNames44 = ["patch-commit"];
    recursiveByDefault12 = true;
  }
});

// ../patching/commands/lib/isSubdirectory.js
import path200 from "node:path";
function isSubdirectory(parentDir, childPath, pathUtils = path200) {
  const relativePath2 = pathUtils.relative(parentDir, childPath);
  return relativePath2 === "" || relativePath2 !== ".." && !relativePath2.startsWith(`..${pathUtils.sep}`) && !pathUtils.isAbsolute(relativePath2);
}
var init_isSubdirectory = __esm({
  "../patching/commands/lib/isSubdirectory.js"() {
    "use strict";
  }
});

// ../patching/commands/lib/patchRemove.js
var patchRemove_exports = {};
__export(patchRemove_exports, {
  cliOptionsTypes: () => cliOptionsTypes44,
  commandNames: () => commandNames45,
  handler: () => handler45,
  help: () => help45,
  rcOptionsTypes: () => rcOptionsTypes45,
  recursiveByDefault: () => recursiveByDefault13
});
import fs110 from "node:fs/promises";
import path201 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(opts3, params) {
  let patchesToRemove = params;
  const patchedDependencies = { ...opts3.patchedDependencies };
  if (!params.length) {
    const allPatches = Object.keys(patchedDependencies);
    if (allPatches.length) {
      try {
        patchesToRemove = await dist_default4({
          choices: allPatches.map((name) => ({ name, value: name })),
          message: "Select the patch to be removed",
          required: true,
          validate: (values) => {
            return values.length === 0 ? "Select at least one option." : true;
          },
          theme: { keybindings: ["vim"] }
        });
      } catch (err2) {
        if (err2 instanceof Error && err2.name === "ExitPromptError") {
          throw new PnpmError("PATCH_REMOVE_CANCELED", "Canceled");
        }
        throw err2;
      }
    }
  }
  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 patchRemovalContext = await getPatchRemovalContext(opts3);
  const patchesToRemoveTargets = await Promise.all(patchesToRemove.map(async (patch) => {
    const patchFile = patchedDependencies[patch];
    if (patchFile == null) {
      throw new PnpmError("PATCH_NOT_FOUND", `Patch "${patch}" not found in patched dependencies`);
    }
    return getPatchRemovalTarget(patch, patchFile, patchRemovalContext);
  }));
  await Promise.all(patchesToRemoveTargets.map(unlinkPatchIfExists));
  for (const { patch } of patchesToRemoveTargets) {
    delete patchedDependencies[patch];
  }
  const patchesDirs = new Set(patchesToRemoveTargets.map(({ parentDir }) => parentDir));
  await Promise.all(Array.from(patchesDirs).map(async (dir) => {
    try {
      const files = await fs110.readdir(dir);
      if (!files.length) {
        await fs110.rmdir(dir);
      }
    } catch {
    }
  }));
  await updatePatchedDependencies(patchedDependencies, {
    ...opts3,
    workspaceDir: opts3.workspaceDir ?? opts3.rootProjectManifestDir
  });
  await install_exports.handler({
    ...opts3,
    patchedDependencies
  });
}
async function getPatchRemovalContext(opts3) {
  const lockfileDir = path201.resolve(opts3.lockfileDir ?? opts3.dir ?? process.cwd());
  const realLockfileDir = await fs110.realpath(lockfileDir);
  const patchesDirSetting = opts3.patchesDir ?? "patches";
  const patchesDir = path201.join(lockfileDir, path201.normalize(patchesDirSetting));
  if (!isSubdirectory(lockfileDir, patchesDir)) {
    throw new PnpmError("PATCHES_DIR_OUTSIDE_PROJECT", `The configured patches directory is outside the project: ${patchesDirSetting}`);
  }
  const realPatchesDir = await realpathIfExists(patchesDir);
  if (realPatchesDir != null && !isSubdirectory(realLockfileDir, realPatchesDir)) {
    throw new PnpmError("PATCHES_DIR_OUTSIDE_PROJECT", `The configured patches directory is outside the project: ${patchesDirSetting}`);
  }
  return {
    lockfileDir,
    patchesDir,
    realPatchesDir
  };
}
async function getPatchRemovalTarget(patch, patchFile, ctx) {
  const targetPath = path201.resolve(ctx.lockfileDir, patchFile);
  if (targetPath === ctx.patchesDir || !isSubdirectory(ctx.patchesDir, targetPath)) {
    throw new PnpmError("PATCH_FILE_OUTSIDE_PATCHES_DIR", `Patch file "${patchFile}" is outside the configured patches directory`);
  }
  const parentDir = path201.dirname(targetPath);
  const targetStats = await lstatIfExists(targetPath);
  const realParentDir = await realpathIfExists(parentDir);
  const realPatchesDir = ctx.realPatchesDir ?? await realpathIfExists(ctx.patchesDir);
  if (realParentDir != null && realPatchesDir != null && !isSubdirectory(realPatchesDir, realParentDir)) {
    throw new PnpmError("PATCH_FILE_OUTSIDE_PATCHES_DIR", `Patch file "${patchFile}" is outside the configured patches directory`);
  }
  if (targetStats?.isDirectory()) {
    throw new PnpmError("PATCH_FILE_IS_DIRECTORY", `Patch file "${patchFile}" is a directory`);
  }
  return {
    patch,
    patchFile,
    parentDir,
    targetPath,
    targetExists: targetStats != null
  };
}
async function unlinkPatchIfExists({ targetExists, targetPath }) {
  if (!targetExists)
    return;
  try {
    await fs110.unlink(targetPath);
  } catch (err2) {
    if (isErrorWithCode2(err2, "ENOENT"))
      return;
    throw err2;
  }
}
async function lstatIfExists(targetPath) {
  try {
    return await fs110.lstat(targetPath);
  } catch (err2) {
    if (isErrorWithCode2(err2, "ENOENT"))
      return void 0;
    throw err2;
  }
}
async function realpathIfExists(targetPath) {
  try {
    return await fs110.realpath(targetPath);
  } catch (err2) {
    if (isErrorWithCode2(err2, "ENOENT"))
      return void 0;
    throw err2;
  }
}
function isErrorWithCode2(err2, code) {
  return typeof err2 === "object" && err2 !== null && "code" in err2 && err2.code === code;
}
var commandNames45, recursiveByDefault13;
var init_patchRemove = __esm({
  "../patching/commands/lib/patchRemove.js"() {
    "use strict";
    init_dist14();
    init_lib41();
    init_lib64();
    init_lib2();
    init_lib143();
    init_es();
    init_lib66();
    init_isSubdirectory();
    init_updatePatchedDependencies();
    commandNames45 = ["patch-remove"];
    recursiveByDefault13 = true;
  }
});

// ../patching/commands/lib/index.js
var init_lib166 = __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 path202 from "node:path";
function cliOptionsTypes45() {
  const types3 = types2;
  return {
    dir: types3["dir"],
    json: Boolean,
    recursive: Boolean
  };
}
async function handler46(opts3, 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 (opts3.recursive) {
    return handleRecursiveCommand(opts3, subcmd, args);
  }
  return runSubcommand(opts3, subcmd, args);
}
async function runSubcommand(opts3, subcmd, args) {
  switch (subcmd) {
    case "get":
      return pkgGet(opts3, args);
    case "set":
      return pkgSet(opts3, args);
    case "delete":
      return pkgDelete(opts3, args);
    case "fix":
      return pkgFix(opts3);
    default:
      throw new PnpmError("PKG_UNKNOWN_SUBCOMMAND", `Unknown subcommand "${subcmd}"`, {
        hint: help46()
      });
  }
}
async function handleRecursiveCommand(opts3, subcmd, args) {
  const workspaceDir = opts3.workspaceDir;
  if (!workspaceDir) {
    throw new PnpmError("PKG_RECURSIVE_NO_ROOT", "Cannot run recursively outside of a workspace");
  }
  const selectedProjects = opts3.selectedProjectsGraph == null ? [] : Object.values(opts3.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 ?? path202.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({ ...opts3, dir: pkg.rootDir }, subcmd, args)));
}
async function pkgGet(opts3, args) {
  const manifest = await readProjectManifestOnly2(opts3.dir);
  if (args.length === 1) {
    const value = getObjectValueByPropertyPathString(manifest, args[0]);
    if (value === void 0)
      return "";
    if (opts3.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(opts3, args) {
  if (args.length === 0) {
    throw new PnpmError("PKG_SET_MISSING_ARGS", "Missing key=value pairs", {
      hint: help46()
    });
  }
  const { manifest, writeProjectManifest: writeProjectManifest2 } = await readProjectManifest2(opts3.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 (opts3.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(opts3, args) {
  if (args.length === 0) {
    throw new PnpmError("PKG_DELETE_MISSING_ARGS", "Missing keys to delete", {
      hint: help46()
    });
  }
  const { manifest, writeProjectManifest: writeProjectManifest2 } = await readProjectManifest2(opts3.dir);
  for (const key of args) {
    deleteObjectValueByPropertyPathString(manifest, key);
  }
  await writeProjectManifest2(manifest);
}
async function pkgFix(opts3) {
  const { manifest, writeProjectManifest: writeProjectManifest2 } = await readProjectManifest2(opts3.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 && !isPlainObject4(m[field])) {
      delete m[field];
    }
  }
  if ("bin" in m && typeof m.bin !== "string" && !isPlainObject4(m.bin)) {
    delete m.bin;
  }
  await writeProjectManifest2(manifest);
}
function isPlainObject4(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_lib41();
    init_lib64();
    init_lib2();
    init_lib149();
    init_lib66();
    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(opts3, 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(opts3.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_lib41();
    init_lib64();
    init_lib2();
    init_lib149();
    init_lib66();
    rcOptionsTypes47 = cliOptionsTypes46;
    commandNames47 = ["set-script", "ss"];
  }
});

// ../pkg-manifest/commands/lib/index.js
var init_lib167 = __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_arg6.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 normalizeRegistryUrl8(registryUrl) {
  return registryUrl.endsWith("/") ? registryUrl : `${registryUrl}/`;
}
async function readErrorBody(response) {
  const reader = response.body?.getReader();
  if (reader == null)
    return "";
  const chunks = [];
  let total = 0;
  let truncated = false;
  while (total < ERROR_BODY_LIMIT) {
    const { done, value } = await reader.read();
    if (done)
      break;
    const need = ERROR_BODY_LIMIT - total;
    if (value.length > need) {
      chunks.push(value.subarray(0, need));
      truncated = true;
      break;
    }
    chunks.push(value);
    total += value.length;
  }
  reader.cancel().catch(() => {
  });
  let body = new TextDecoder().decode(Buffer.concat(chunks));
  if (truncated) {
    if (body.length > 0 && !body.endsWith(" ")) {
      body += " ";
    }
    body += "(response body truncated)";
  }
  return body;
}
var import_npm_package_arg6, ERROR_BODY_LIMIT;
var init_common2 = __esm({
  "../registry-access/commands/lib/common.js"() {
    "use strict";
    init_lib64();
    init_lib2();
    import_npm_package_arg6 = __toESM(require_npa(), 1);
    init_es();
    ERROR_BODY_LIMIT = 64 * 1024;
  }
});

// ../registry-access/commands/lib/access.js
var access_exports = {};
__export(access_exports, {
  cliOptionsTypes: () => cliOptionsTypes47,
  commandNames: () => commandNames48,
  handler: () => handler48,
  help: () => help48,
  rcOptionsTypes: () => rcOptionsTypes48
});
function getRegistries(opts3) {
  return opts3.registries ?? { default: DEFAULT_REGISTRY_URL };
}
function cliOptionsTypes47() {
  return {
    ...rcOptionsTypes48(),
    json: Boolean,
    otp: String
  };
}
function help48() {
  return renderHelp({
    description: "Manages package access and visibility on the registry.",
    descriptionLists: [
      {
        title: "Commands",
        list: [
          {
            description: "List packages a user, scope, or team can access.",
            name: "list packages"
          },
          {
            description: "List collaborators on a package.",
            name: "list collaborators"
          },
          {
            description: "Get the public/restricted status of a package.",
            name: "get status"
          },
          {
            description: "Set the package visibility (public/private).",
            name: "set status"
          },
          {
            description: "Set the 2FA requirement for a package (none/publish/automation).",
            name: "set mfa"
          },
          {
            description: "Grant read-only or read-write access to a team.",
            name: "grant"
          },
          {
            description: "Revoke a team's access to a package.",
            name: "revoke"
          }
        ]
      },
      {
        title: "Options",
        list: [
          {
            description: "The base URL of the npm registry.",
            name: "--registry <url>"
          },
          {
            description: "Output results in JSON format.",
            name: "--json"
          },
          {
            description: "One-time password for registries that require two-factor authentication.",
            name: "--otp"
          }
        ]
      }
    ],
    url: docsUrl("access"),
    usages: [
      "pnpm access list packages [<user>|<scope>|<scope:team>]",
      "pnpm access list collaborators [<package> [<user>]]",
      "pnpm access get status [<package>]",
      "pnpm access set status=public|private [<package>]",
      "pnpm access set mfa=none|publish|automation [<package>]",
      "pnpm access grant <read-only|read-write> <scope:team> [<package>]",
      "pnpm access revoke <scope:team> [<package>]"
    ]
  });
}
async function handler48(opts3, params) {
  if (params.length === 0) {
    throw new PnpmError("ACCESS_SUBCOMMAND_REQUIRED", 'A subcommand is required (e.g., "list packages", "get status", "set status=public", "grant", "revoke")');
  }
  const first = params[0];
  const second = params[1];
  if (first === "list" && second === "packages") {
    return listPackages(opts3, params.slice(2));
  }
  if (first === "list" && second === "collaborators") {
    return listCollaborators(opts3, params.slice(2));
  }
  if (first === "ls" && (second == null || second === "packages")) {
    return listPackages(opts3, second === "packages" ? params.slice(2) : params.slice(1));
  }
  if (first === "get" && second === "status") {
    return getStatus(opts3, params.slice(2));
  }
  if (first === "set") {
    if (second == null) {
      throw new PnpmError("ACCESS_SET_REQUIRED", 'A value is required (e.g., "status=public" or "mfa=none")');
    }
    if (second.startsWith("status=")) {
      return setStatus(opts3, params.slice(1));
    }
    if (second.startsWith("mfa=")) {
      return setMfa(opts3, params.slice(1));
    }
    throw new PnpmError("ACCESS_SET_INVALID", `Unknown set parameter "${second}". Use "status=public|private" or "mfa=none|publish|automation".`);
  }
  if (first === "grant") {
    return grantAccess(opts3, params.slice(1));
  }
  if (first === "revoke") {
    return revokeAccess(opts3, params.slice(1));
  }
  if (first === "public") {
    return setStatus(opts3, ["status=public", ...params.slice(1)]);
  }
  if (first === "restricted") {
    return setStatus(opts3, ["status=restricted", ...params.slice(1)]);
  }
  throw new PnpmError("ACCESS_UNKNOWN_SUBCOMMAND", `Unknown subcommand: ${params.join(" ")}. Run "pnpm help access" for available subcommands.`);
}
async function listPackages(opts3, params) {
  const registries = getRegistries(opts3);
  const fetchFromRegistry = createFetchFromRegistry(opts3);
  const authHeader = getAuthHeaderForRegistry(opts3.configByUri, registries.default ?? DEFAULT_REGISTRY_URL);
  const jsonMode = opts3.cliOptions?.json ?? false;
  const ctx = { registries, fetchFromRegistry, authHeader, jsonMode };
  let entity;
  let entityType;
  if (params.length > 0) {
    const raw = params[0];
    if (raw.includes(":")) {
      entityType = "team";
      entity = raw;
    } else if (raw.startsWith("@")) {
      entityType = "org";
      entity = raw.replace(/^@/, "");
    } else {
      entityType = "user";
      entity = raw;
    }
  }
  if (entityType == null || entity == null) {
    return listOwnPackages(ctx);
  }
  return listEntityPackages(entityType, entity, ctx);
}
async function listOwnPackages(ctx) {
  const registryUrl = normalizeRegistryUrl8(ctx.registries.default ?? DEFAULT_REGISTRY_URL);
  const url7 = new URL("-/-/package?format=cli", registryUrl).href;
  return fetchListResponse(url7, ctx);
}
async function listEntityPackages(entityType, entity, ctx) {
  const registryUrl = normalizeRegistryUrl8(ctx.registries.default ?? DEFAULT_REGISTRY_URL);
  let listUrl;
  if (entityType === "team") {
    const [scope, team] = entity.split(":");
    listUrl = new URL(`-/team/${encodeURIComponent(scope.startsWith("@") ? scope.slice(1) : scope)}/${encodeURIComponent(team)}/package?format=cli`, registryUrl).href;
  } else if (entityType === "org") {
    listUrl = new URL(`-/org/${encodeURIComponent(entity)}/package?format=cli`, registryUrl).href;
  } else {
    listUrl = new URL(`-/user/${encodeURIComponent(entity)}/package?format=cli`, registryUrl).href;
  }
  return fetchListResponse(listUrl, ctx);
}
async function fetchListResponse(url7, ctx) {
  const response = await ctx.fetchFromRegistry(url7, {
    authHeaderValue: ctx.authHeader
  });
  if (!response.ok) {
    await throwRegistryError(response, "list packages from");
  }
  const data = await response.json();
  if (ctx.jsonMode) {
    return JSON.stringify(data, null, 2);
  }
  return formatPackagesList(data);
}
function formatPackagesList(data) {
  const lines = [];
  for (const [pkg, access2] of Object.entries(data)) {
    if (typeof access2 === "string") {
      lines.push(`${pkg}: ${access2}`);
    } else {
      lines.push(pkg);
    }
  }
  return lines.sort().join("\n");
}
async function listCollaborators(opts3, params) {
  if (params.length === 0) {
    throw new PnpmError("ACCESS_LIST_COLLABORATORS_PACKAGE_REQUIRED", "Package name is required (e.g., pnpm access list collaborators @scope/pkg)");
  }
  const packageName = params[0];
  const user = params[1];
  const registries = getRegistries(opts3);
  const registryUrl = pickRegistryForPackage(registries, packageName);
  const authHeader = getAuthHeaderForRegistry(opts3.configByUri, registryUrl, packageName);
  const fetchFromRegistry = createFetchFromRegistry(opts3);
  const jsonMode = opts3.cliOptions?.json ?? false;
  let collaboratorsUrl;
  if (user) {
    collaboratorsUrl = new URL(`-/package/${escapePackageName(packageName)}/collaborators?format=cli&user=${encodeURIComponent(user)}`, normalizeRegistryUrl8(registryUrl)).href;
  } else {
    collaboratorsUrl = new URL(`-/package/${escapePackageName(packageName)}/collaborators?format=cli`, normalizeRegistryUrl8(registryUrl)).href;
  }
  const response = await fetchFromRegistry(collaboratorsUrl, {
    authHeaderValue: authHeader
  });
  if (!response.ok) {
    if (response.status === 404) {
      throw new PnpmError("PACKAGE_NOT_FOUND", `Package "${packageName}" not found in registry`);
    }
    await throwRegistryError(response, "list collaborators for");
  }
  const data = await response.json();
  if (jsonMode) {
    return JSON.stringify(data, null, 2);
  }
  return formatCollaboratorsList(data);
}
function formatCollaboratorsList(data) {
  const lines = [];
  for (const entry of data) {
    const user = entry.user ?? entry.username ?? "unknown";
    const email = entry.email ?? "";
    const permissions = entry.permissions ?? "read-only";
    lines.push(`${String(user)}${email ? ` <${email}>` : ""}: ${permissions}`);
  }
  return lines.sort().join("\n");
}
async function getStatus(opts3, params) {
  if (params.length === 0) {
    throw new PnpmError("ACCESS_GET_STATUS_PACKAGE_REQUIRED", "Package name is required (e.g., pnpm access get status @scope/pkg)");
  }
  const packageName = params[0];
  const registries = getRegistries(opts3);
  const registryUrl = pickRegistryForPackage(registries, packageName);
  const authHeader = getAuthHeaderForRegistry(opts3.configByUri, registryUrl, packageName);
  const fetchFromRegistry = createFetchFromRegistry(opts3);
  const jsonMode = opts3.cliOptions?.json ?? false;
  const accessUrl = new URL(`-/package/${escapePackageName(packageName)}/access`, normalizeRegistryUrl8(registryUrl)).href;
  const response = await fetchFromRegistry(accessUrl, {
    authHeaderValue: authHeader
  });
  if (!response.ok) {
    if (response.status === 404) {
      throw new PnpmError("PACKAGE_NOT_FOUND", `Package "${packageName}" not found in registry`);
    }
    await throwRegistryError(response, "get status of");
  }
  const data = await response.json();
  if (jsonMode) {
    return JSON.stringify(data, null, 2);
  }
  const lines = [];
  if (data.access) {
    lines.push(`package: ${packageName}`);
    lines.push(`access: ${data.access}`);
  } else {
    lines.push(`package: ${packageName}`);
    lines.push("access: public");
  }
  return lines.join("\n");
}
async function setStatus(opts3, params) {
  if (params.length === 0 || !params[0].startsWith("status=")) {
    throw new PnpmError("ACCESS_SET_STATUS_REQUIRED", "Package visibility is required (e.g., pnpm access set status=public @scope/pkg)");
  }
  const accessValue = params[0].slice("status=".length);
  if (accessValue !== "public" && accessValue !== "private" && accessValue !== "restricted") {
    throw new PnpmError("ACCESS_SET_STATUS_INVALID", `Invalid access value "${accessValue}". Must be "public" or "private".`);
  }
  const normalizedAccess = accessValue === "private" || accessValue === "restricted" ? "restricted" : "public";
  const packageName = params[1];
  if (!packageName) {
    throw new PnpmError("ACCESS_SET_STATUS_PACKAGE_REQUIRED", "Package name is required (e.g., pnpm access set status=public @scope/pkg)");
  }
  if (!packageName.startsWith("@")) {
    throw new PnpmError("ACCESS_SET_STATUS_UNSCOPED", "Access settings can only be changed for scoped packages (@scope/name). Unscoped packages are always public.");
  }
  const registries = getRegistries(opts3);
  const registryUrl = pickRegistryForPackage(registries, packageName);
  const authHeader = getAuthHeaderForRegistry(opts3.configByUri, registryUrl, packageName);
  const fetchFromRegistry = createFetchFromRegistry(opts3);
  const otp = opts3.cliOptions?.otp;
  const accessUrl = new URL(`-/package/${escapePackageName(packageName)}/access`, normalizeRegistryUrl8(registryUrl)).href;
  const response = await fetchFromRegistry(accessUrl, {
    authHeaderValue: authHeader,
    method: "POST",
    headers: {
      "content-type": "application/json",
      ...otp ? { "npm-otp": otp } : {}
    },
    body: JSON.stringify({ access: normalizedAccess })
  });
  if (!response.ok) {
    await throwRegistryError(response, `set access to "${normalizedAccess}" for`);
  }
  return `${packageName}: ${normalizedAccess === "public" ? "public" : "restricted"}`;
}
async function setMfa(opts3, params) {
  if (params.length === 0 || !params[0].startsWith("mfa=")) {
    throw new PnpmError("ACCESS_SET_MFA_REQUIRED", "MFA level is required (e.g., pnpm access set mfa=automation @scope/pkg)");
  }
  const mfaValue = params[0].slice("mfa=".length);
  if (!["none", "publish", "automation"].includes(mfaValue)) {
    throw new PnpmError("ACCESS_SET_MFA_INVALID", `Invalid MFA value "${mfaValue}". Must be "none", "publish", or "automation".`);
  }
  const packageName = params[1];
  if (!packageName) {
    throw new PnpmError("ACCESS_SET_MFA_PACKAGE_REQUIRED", "Package name is required (e.g., pnpm access set mfa=automation @scope/pkg)");
  }
  const registries = getRegistries(opts3);
  const registryUrl = pickRegistryForPackage(registries, packageName);
  const authHeader = getAuthHeaderForRegistry(opts3.configByUri, registryUrl, packageName);
  const fetchFromRegistry = createFetchFromRegistry(opts3);
  const otp = opts3.cliOptions?.otp;
  const accessUrl = new URL(`-/package/${escapePackageName(packageName)}/access`, normalizeRegistryUrl8(registryUrl)).href;
  const publishRequiresTfa = mfaValue !== "none";
  const response = await fetchFromRegistry(accessUrl, {
    authHeaderValue: authHeader,
    method: "POST",
    headers: {
      "content-type": "application/json",
      ...otp ? { "npm-otp": otp } : {}
    },
    body: JSON.stringify({ publish_requires_tfa: publishRequiresTfa })
  });
  if (!response.ok) {
    await throwRegistryError(response, "set MFA for");
  }
  return `${packageName}: mfa=${mfaValue}`;
}
async function grantAccess(opts3, params) {
  if (params.length < 2) {
    throw new PnpmError("ACCESS_GRANT_ARGS_REQUIRED", "Permissions and scope:team are required (e.g., pnpm access grant read-only @scope:developers @scope/pkg)");
  }
  const permissions = params[0];
  if (permissions !== "read-only" && permissions !== "read-write") {
    throw new PnpmError("ACCESS_GRANT_INVALID_PERMISSIONS", `Invalid permissions "${permissions}". Must be "read-only" or "read-write".`);
  }
  const scopeTeam = params[1];
  if (!scopeTeam.includes(":")) {
    throw new PnpmError("ACCESS_GRANT_INVALID_TEAM", `Invalid team "${scopeTeam}". Format must be "scope:team".`);
  }
  const packageName = params[2];
  if (!packageName) {
    throw new PnpmError("ACCESS_GRANT_PACKAGE_REQUIRED", "Package name is required (e.g., pnpm access grant read-only @scope:developers @scope/pkg)");
  }
  const [scope, team] = scopeTeam.split(":");
  const registries = getRegistries(opts3);
  const registryUrl = pickRegistryForPackage(registries, packageName);
  const authHeader = getAuthHeaderForRegistry(opts3.configByUri, registryUrl, packageName);
  const fetchFromRegistry = createFetchFromRegistry(opts3);
  const otp = opts3.cliOptions?.otp;
  const grantUrl = new URL(`-/team/${encodeURIComponent(scope.startsWith("@") ? scope.slice(1) : scope)}/${encodeURIComponent(team)}/package`, normalizeRegistryUrl8(registryUrl)).href;
  const response = await fetchFromRegistry(grantUrl, {
    authHeaderValue: authHeader,
    method: "PUT",
    headers: {
      "content-type": "application/json",
      ...otp ? { "npm-otp": otp } : {}
    },
    body: JSON.stringify({ package: packageName, permissions })
  });
  if (!response.ok) {
    await throwRegistryError(response, `grant ${permissions} access for ${scopeTeam} on`);
  }
  return `+${scopeTeam} (${permissions}): ${packageName}`;
}
async function revokeAccess(opts3, params) {
  if (params.length < 1) {
    throw new PnpmError("ACCESS_REVOKE_ARGS_REQUIRED", "scope:team and package name are required (e.g., pnpm access revoke @scope:developers @scope/pkg)");
  }
  const scopeTeam = params[0];
  if (!scopeTeam.includes(":")) {
    throw new PnpmError("ACCESS_REVOKE_INVALID_TEAM", `Invalid team "${scopeTeam}". Format must be "scope:team".`);
  }
  const packageName = params[1];
  if (!packageName) {
    throw new PnpmError("ACCESS_REVOKE_PACKAGE_REQUIRED", "Package name is required (e.g., pnpm access revoke @scope:developers @scope/pkg)");
  }
  const [scope, team] = scopeTeam.split(":");
  const registries = getRegistries(opts3);
  const registryUrl = pickRegistryForPackage(registries, packageName);
  const authHeader = getAuthHeaderForRegistry(opts3.configByUri, registryUrl, packageName);
  const fetchFromRegistry = createFetchFromRegistry(opts3);
  const otp = opts3.cliOptions?.otp;
  const revokeUrl = new URL(`-/team/${encodeURIComponent(scope.startsWith("@") ? scope.slice(1) : scope)}/${encodeURIComponent(team)}/package`, normalizeRegistryUrl8(registryUrl)).href;
  const response = await fetchFromRegistry(revokeUrl, {
    authHeaderValue: authHeader,
    method: "DELETE",
    headers: {
      "content-type": "application/json",
      ...otp ? { "npm-otp": otp } : {}
    },
    body: JSON.stringify({ package: packageName })
  });
  if (!response.ok) {
    await throwRegistryError(response, `revoke ${scopeTeam}'s access to`);
  }
  return `-${scopeTeam}: ${packageName}`;
}
function getAuthHeaderForRegistry(configByUri, registryUrl, packageName) {
  const getAuthHeader = createGetAuthHeaderByURI(configByUri ?? {});
  return getAuthHeader(registryUrl, packageName ? { pkgName: packageName } : void 0);
}
function escapePackageName(packageName) {
  let parsed;
  try {
    parsed = (0, import_npm_package_arg7.default)(packageName);
  } catch {
    throw new PnpmError("ACCESS_INVALID_PACKAGE_NAME", `Invalid package name "${packageName}"`);
  }
  return parsed.escapedName ?? encodeURIComponent(packageName).replace(/^%40/, "@");
}
async function throwRegistryError(response, action) {
  const errorBody = sanitize(await readErrorBody(response));
  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}`);
  }
  if (response.status === 422) {
    throw new PnpmError("ACCESS_VALIDATION_ERROR", `Invalid request: ${errorBody}`);
  }
  throw new PnpmError("REGISTRY_ERROR", `Failed to ${action} package: ${response.status} ${response.statusText}. ${errorBody}`);
}
function sanitize(text) {
  let result2 = "";
  for (let i4 = 0; i4 < text.length; i4++) {
    const code = text.charCodeAt(i4);
    if (code > 31 && code !== 127 || code === 9 || code === 10) {
      result2 += text[i4];
    }
  }
  return result2;
}
var import_npm_package_arg7, DEFAULT_REGISTRY_URL, commandNames48;
var init_access = __esm({
  "../registry-access/commands/lib/access.js"() {
    "use strict";
    init_lib41();
    init_lib28();
    init_lib2();
    init_lib52();
    init_lib23();
    import_npm_package_arg7 = __toESM(require_npa(), 1);
    init_lib66();
    init_common2();
    DEFAULT_REGISTRY_URL = "https://registry.npmjs.org/";
    commandNames48 = ["access"];
  }
});

// ../registry-access/commands/lib/deprecation/common.js
function cliOptionsTypes48() {
  return {
    ...rcOptionsTypes48(),
    otp: String
  };
}
async function updateDeprecation(opts3, { deprecated, packageName, versionRange }) {
  const registryUrl = pickRegistryForPackage(opts3.registries ?? { default: "https://registry.npmjs.org/" }, packageName);
  const getAuthHeader = createGetAuthHeaderByURI(opts3.configByUri ?? {});
  const authHeader = getAuthHeader(registryUrl, { pkgName: packageName });
  const packageUrl = new URL((0, import_npm_package_arg8.default)(packageName).escapedName, registryUrl).href;
  const fetchFromRegistry = createFetchFromRegistry(opts3);
  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 = opts3.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_semver58.default.satisfies(v, range));
}
var import_npm_package_arg8, import_semver58;
var init_common3 = __esm({
  "../registry-access/commands/lib/deprecation/common.js"() {
    "use strict";
    init_lib28();
    init_lib2();
    init_lib52();
    init_lib23();
    import_npm_package_arg8 = __toESM(require_npa(), 1);
    import_semver58 = __toESM(require_semver2(), 1);
    init_common2();
  }
});

// ../registry-access/commands/lib/deprecation/deprecate.js
var deprecate_exports = {};
__export(deprecate_exports, {
  cliOptionsTypes: () => cliOptionsTypes48,
  commandNames: () => commandNames49,
  handler: () => handler49,
  help: () => help49,
  rcOptionsTypes: () => rcOptionsTypes48
});
function help49() {
  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 handler49(opts3, 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(opts3, { deprecated, packageName: name, versionRange });
}
var commandNames49;
var init_deprecate = __esm({
  "../registry-access/commands/lib/deprecation/deprecate.js"() {
    "use strict";
    init_lib41();
    init_lib2();
    init_lib66();
    init_common3();
    commandNames49 = ["deprecate"];
  }
});

// ../registry-access/commands/lib/deprecation/undeprecate.js
var undeprecate_exports = {};
__export(undeprecate_exports, {
  cliOptionsTypes: () => cliOptionsTypes48,
  commandNames: () => commandNames50,
  handler: () => handler50,
  help: () => help50,
  rcOptionsTypes: () => rcOptionsTypes48
});
function help50() {
  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 handler50(opts3, 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(opts3, { deprecated: void 0, packageName: name, versionRange });
}
var commandNames50;
var init_undeprecate = __esm({
  "../registry-access/commands/lib/deprecation/undeprecate.js"() {
    "use strict";
    init_lib41();
    init_lib2();
    init_lib66();
    init_common3();
    commandNames50 = ["undeprecate"];
  }
});

// ../registry-access/commands/lib/distTag.js
var distTag_exports = {};
__export(distTag_exports, {
  cliOptionsTypes: () => cliOptionsTypes49,
  commandNames: () => commandNames51,
  handler: () => handler51,
  help: () => help51,
  rcOptionsTypes: () => rcOptionsTypes48
});
import readline5 from "node:readline";
function cliOptionsTypes49() {
  return {
    ...rcOptionsTypes48(),
    otp: String
  };
}
function help51() {
  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 handler51(opts3, params) {
  const subcommand = params[0];
  if (subcommand === "add") {
    return distTagAdd(opts3, params.slice(1));
  }
  if (subcommand === "rm") {
    return distTagRm(opts3, params.slice(1));
  }
  if (subcommand === "ls" || subcommand === "list") {
    return distTagLs(opts3, params.slice(1));
  }
  return distTagLs(opts3, params);
}
async function distTagLs(opts3, params) {
  if (params.length === 0) {
    throw new PnpmError("DIST_TAG_LS_PACKAGE_REQUIRED", "Package name is required");
  }
  const packageName = params[0];
  const registryUrl = pickRegistryForPackage(opts3.registries ?? { default: "https://registry.npmjs.org/" }, packageName);
  const authHeader = getAuthHeaderForRegistry2(opts3.configByUri, registryUrl, packageName);
  const fetchFromRegistry = createFetchFromRegistry(opts3);
  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(opts3, 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_semver59.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(opts3.registries ?? { default: "https://registry.npmjs.org/" }, packageName);
  const authHeader = getAuthHeaderForRegistry2(opts3.configByUri, registryUrl, packageName);
  const fetchFromRegistry = createFetchFromRegistry(opts3);
  const cliOtp = opts3.cliOptions?.otp;
  const authType = cliOtp ? "legacy" : "web";
  await withOtpHandling({
    context: createOtpContext(opts3),
    fetchOptions: WEB_AUTH_FETCH_OPTIONS,
    operation: (otp) => setDistTag({
      packageName,
      version: version2,
      distTag: tag,
      registryUrl,
      authHeader,
      authType,
      fetchFromRegistry,
      otp: otp ?? cliOtp
    })
  });
  return `+${tag}: ${packageName}@${version2}`;
}
async function distTagRm(opts3, 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(opts3.registries ?? { default: "https://registry.npmjs.org/" }, packageName);
  const authHeader = getAuthHeaderForRegistry2(opts3.configByUri, registryUrl, packageName);
  const fetchFromRegistry = createFetchFromRegistry(opts3);
  const cliOtp = opts3.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 authType = cliOtp ? "legacy" : "web";
  await withOtpHandling({
    context: createOtpContext(opts3),
    fetchOptions: WEB_AUTH_FETCH_OPTIONS,
    operation: (otp) => deleteDistTag({
      authHeader,
      authType,
      distTagUrl,
      fetchFromRegistry,
      otp: otp ?? cliOtp,
      tag
    })
  });
  return `-${tag}: ${packageName}@${distTags[tag]}`;
}
async function deleteDistTag({ authHeader, authType, distTagUrl, fetchFromRegistry, otp, tag }) {
  const response = await fetchFromRegistry(distTagUrl, {
    authHeaderValue: authHeader,
    method: "DELETE",
    headers: {
      "npm-auth-type": authType,
      ...otp ? { "npm-otp": otp } : {}
    }
  });
  if (response.ok)
    return;
  const body = await response.text();
  const action = `remove dist-tag "${tag}" from`;
  if (response.status === 401) {
    throw parseAuthError2(body, action);
  }
  if (response.status === 403) {
    throw new PnpmError("FORBIDDEN", `You do not have permission to ${action} this package. ${body}`);
  }
  throw new PnpmError("REGISTRY_ERROR", `Failed to ${action} package: ${response.status} ${response.statusText}. ${body}`);
}
function parseAuthError2(body, action) {
  let parsed;
  try {
    parsed = JSON.parse(body);
  } catch {
    parsed = void 0;
  }
  if (parsed != null && typeof parsed === "object" && "authUrl" in parsed && "doneUrl" in parsed) {
    return new SyntheticOtpError({
      authUrl: typeof parsed.authUrl === "string" ? parsed.authUrl : void 0,
      doneUrl: typeof parsed.doneUrl === "string" ? parsed.doneUrl : void 0
    });
  }
  if (/one-time pass/i.test(body)) {
    return new SyntheticOtpError(void 0);
  }
  return new PnpmError("UNAUTHORIZED", `You must be logged in to ${action} packages. ${body}`);
}
function getAuthHeaderForRegistry2(configByUri, registryUrl, packageName) {
  const getAuthHeader = createGetAuthHeaderByURI(configByUri ?? {});
  return getAuthHeader(registryUrl, { pkgName: packageName });
}
function getDistTagUrl(packageName, registryUrl, tag) {
  const encodedName = (0, import_npm_package_arg9.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_arg9.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();
}
function createOtpContext(opts3) {
  return {
    Date,
    createReadlineInterface: readline5.createInterface.bind(null, { input: process.stdin }),
    enquirer: { input: dist_default6 },
    fetch: createFetchFromRegistry(opts3),
    globalInfo,
    globalWarn,
    process,
    setTimeout
  };
}
var import_npm_package_arg9, import_semver59, commandNames51, WEB_AUTH_FETCH_OPTIONS;
var init_distTag = __esm({
  "../registry-access/commands/lib/distTag.js"() {
    "use strict";
    init_dist14();
    init_lib41();
    init_lib28();
    init_lib2();
    init_lib3();
    init_lib52();
    init_lib23();
    init_lib22();
    import_npm_package_arg9 = __toESM(require_npa(), 1);
    init_lib65();
    init_lib66();
    import_semver59 = __toESM(require_semver2(), 1);
    init_common2();
    commandNames51 = ["dist-tag", "dist-tags"];
    WEB_AUTH_FETCH_OPTIONS = {
      method: "GET"
    };
  }
});

// ../registry-access/commands/lib/owner.js
var owner_exports = {};
__export(owner_exports, {
  cliOptionsTypes: () => cliOptionsTypes50,
  commandNames: () => commandNames52,
  handler: () => handler52,
  help: () => help52,
  rcOptionsTypes: () => rcOptionsTypes48
});
function cliOptionsTypes50() {
  return {
    ...rcOptionsTypes48(),
    otp: String
  };
}
function help52() {
  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 handler52(opts3, params) {
  switch (params[0]) {
    case "add":
      return ownerAdd(opts3, params.slice(1));
    case "rm":
      return ownerRm(opts3, params.slice(1));
    case "ls":
    case "list":
      return ownerLs(opts3, params.slice(1));
    default:
      return ownerLs(opts3, params);
  }
}
async function ownerLs(opts3, 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(opts3.registries ?? { default: "https://registry.npmjs.org/" }, packageName);
  const authHeader = getAuthHeaderForRegistry3(opts3.configByUri, registryUrl, packageName);
  const fetchFromRegistry = createFetchFromRegistry(opts3);
  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(opts3, 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(opts3.registries ?? { default: "https://registry.npmjs.org/" }, packageName);
  const authHeader = getAuthHeaderForRegistry3(opts3.configByUri, registryUrl, packageName);
  const fetchFromRegistry = createFetchFromRegistry(opts3);
  const otp = opts3.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(opts3, 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(opts3.registries ?? { default: "https://registry.npmjs.org/" }, packageName);
  const authHeader = getAuthHeaderForRegistry3(opts3.configByUri, registryUrl, packageName);
  const fetchFromRegistry = createFetchFromRegistry(opts3);
  const otp = opts3.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 getAuthHeaderForRegistry3(configByUri, registryUrl, packageName) {
  const getAuthHeader = createGetAuthHeaderByURI(configByUri ?? {});
  return getAuthHeader(registryUrl, { pkgName: packageName });
}
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`);
    }
    await throwRegistryError2(response, "fetch owners of");
  }
  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 commandNames52;
var init_owner = __esm({
  "../registry-access/commands/lib/owner.js"() {
    "use strict";
    init_lib41();
    init_lib28();
    init_lib2();
    init_lib52();
    init_lib23();
    init_lib66();
    init_common2();
    commandNames52 = ["owner", "owners"];
  }
});

// ../registry-access/commands/lib/ping.js
var ping_exports = {};
__export(ping_exports, {
  cliOptionsTypes: () => cliOptionsTypes51,
  commandNames: () => commandNames53,
  handler: () => handler53,
  help: () => help53,
  rcOptionsTypes: () => rcOptionsTypes49
});
import util58 from "node:util";
function cliOptionsTypes51() {
  return {
    ...rcOptionsTypes48()
  };
}
function rcOptionsTypes49() {
  return rcOptionsTypes48();
}
function help53() {
  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 handler53(opts3) {
  const registryUrl = opts3.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(opts3.configByUri ?? {});
  const authHeaderValue = getAuthHeader(normalizedRegistryUrl);
  const fetchFromRegistry = createFetchFromRegistry(opts3);
  const start = Date.now();
  let response;
  try {
    response = await fetchFromRegistry(pingUrl, {
      retry: { retries: 0 },
      authHeaderValue
    });
  } catch (err2) {
    const errorMessage = util58.types.isNativeError(err2) ? err2.message : String(err2);
    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 commandNames53;
var init_ping = __esm({
  "../registry-access/commands/lib/ping.js"() {
    "use strict";
    init_lib41();
    init_lib2();
    init_lib52();
    init_lib23();
    init_lib66();
    init_common2();
    commandNames53 = ["ping"];
  }
});

// ../registry-access/commands/lib/search.js
var search_exports = {};
__export(search_exports, {
  cliOptionsTypes: () => cliOptionsTypes52,
  commandNames: () => commandNames54,
  handler: () => handler54,
  help: () => help54,
  rcOptionsTypes: () => rcOptionsTypes48
});
function cliOptionsTypes52() {
  return {
    ...rcOptionsTypes48(),
    json: Boolean,
    "search-limit": Number
  };
}
function help54() {
  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 handler54(opts3, params) {
  const query = params.join(" ");
  if (!query) {
    throw new PnpmError("MISSING_SEARCH_QUERY", "Search query is required. Usage: pnpm search <keyword>");
  }
  const registry = opts3.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", (opts3.searchLimit ?? 20).toString());
  const fetchFromRegistry = createFetchFromRegistry(opts3);
  const getAuthHeader = createGetAuthHeaderByURI(opts3.configByUri ?? {});
  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 (opts3.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 commandNames54;
var init_search = __esm({
  "../registry-access/commands/lib/search.js"() {
    "use strict";
    init_lib41();
    init_lib2();
    init_lib52();
    init_lib23();
    init_source();
    init_lib66();
    init_common2();
    commandNames54 = ["search", "s", "se", "find"];
  }
});

// ../registry-access/commands/lib/whoami.js
var whoami_exports = {};
__export(whoami_exports, {
  cliOptionsTypes: () => cliOptionsTypes53,
  commandNames: () => commandNames55,
  fetchWhoami: () => fetchWhoami,
  handler: () => handler55,
  help: () => help55,
  rcOptionsTypes: () => rcOptionsTypes50
});
function cliOptionsTypes53() {
  return {
    ...rcOptionsTypes48()
  };
}
function rcOptionsTypes50() {
  return rcOptionsTypes48();
}
function help55() {
  return renderHelp({
    description: "Displays your pnpm username.",
    url: docsUrl("whoami"),
    usages: ["pnpm whoami"]
  });
}
async function handler55(opts3) {
  const registryUrl = normalizeRegistryUrl8(opts3.registries?.default ?? "https://registry.npmjs.org/");
  const getAuthHeader = createGetAuthHeaderByURI(opts3.configByUri ?? {});
  const authHeader = getAuthHeader(registryUrl);
  if (!authHeader) {
    throw new PnpmError("WHOAMI_UNAUTHORIZED", "You must be logged in to use whoami");
  }
  return fetchWhoami(registryUrl, createFetchFromRegistry(opts3), authHeader);
}
async function fetchWhoami(registryUrl, fetchFromRegistry, authHeader) {
  const whoamiUrl = new URL("./-/whoami", normalizeRegistryUrl8(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 commandNames55;
var init_whoami = __esm({
  "../registry-access/commands/lib/whoami.js"() {
    "use strict";
    init_lib41();
    init_lib2();
    init_lib52();
    init_lib23();
    init_lib66();
    init_common2();
    commandNames55 = ["whoami"];
  }
});

// ../registry-access/commands/lib/star/common.js
function cliOptionsTypes54() {
  return {
    ...rcOptionsTypes48()
  };
}
function rcOptionsTypes51() {
  return rcOptionsTypes48();
}
async function performStarAction(opts3, { packageName, star }) {
  const { escapedName } = parsePackageSpec(packageName);
  const registryUrl = normalizeRegistryUrl8(pickRegistryForPackage(opts3.registries ?? { default: "https://registry.npmjs.org/" }, packageName));
  const authHeader = getAuthHeaderForRegistry4(opts3.configByUri, registryUrl, packageName);
  const action = star ? "star" : "unstar";
  if (!authHeader) {
    throw new PnpmError("STAR_UNAUTHORIZED", `You must be logged in to ${action} packages`);
  }
  const fetchFromRegistry = createFetchFromRegistry(opts3);
  const method2 = star ? "PUT" : "DELETE";
  const starUrl = new URL("./-/user/v1/star", registryUrl).href;
  let response = await fetchFromRegistry(starUrl, {
    authHeaderValue: authHeader,
    method: method2,
    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: method2,
      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 getAuthHeaderForRegistry4(configByUri, registryUrl, packageName) {
  const getAuthHeader = createGetAuthHeaderByURI(configByUri ?? {});
  return getAuthHeader(registryUrl, packageName ? { pkgName: packageName } : void 0);
}
var init_common4 = __esm({
  "../registry-access/commands/lib/star/common.js"() {
    "use strict";
    init_lib28();
    init_lib2();
    init_lib52();
    init_lib23();
    init_common2();
    init_whoami();
  }
});

// ../registry-access/commands/lib/star/star.js
var star_exports = {};
__export(star_exports, {
  cliOptionsTypes: () => cliOptionsTypes54,
  commandNames: () => commandNames56,
  handler: () => handler56,
  help: () => help56,
  rcOptionsTypes: () => rcOptionsTypes51
});
function help56() {
  return renderHelp({
    description: "Marks a package as a favorite.",
    url: docsUrl("star"),
    usages: ["pnpm star <package>"]
  });
}
async function handler56(opts3, params) {
  if (params.length === 0) {
    throw new PnpmError("STAR_PACKAGE_REQUIRED", "Package name is required");
  }
  await performStarAction(opts3, { packageName: params[0], star: true });
}
var commandNames56;
var init_star = __esm({
  "../registry-access/commands/lib/star/star.js"() {
    "use strict";
    init_lib41();
    init_lib2();
    init_lib66();
    init_common4();
    commandNames56 = ["star"];
  }
});

// ../registry-access/commands/lib/star/stars.js
var stars_exports = {};
__export(stars_exports, {
  cliOptionsTypes: () => cliOptionsTypes54,
  commandNames: () => commandNames57,
  handler: () => handler57,
  help: () => help57,
  rcOptionsTypes: () => rcOptionsTypes51
});
function help57() {
  return renderHelp({
    description: "Lists all packages starred by a specific user.",
    url: docsUrl("stars"),
    usages: ["pnpm stars [<user>]"]
  });
}
async function handler57(opts3, params) {
  const registryUrl = normalizeRegistryUrl8(opts3.registries?.default ?? "https://registry.npmjs.org/");
  const fetchFromRegistry = createFetchFromRegistry(opts3);
  const authHeader = getAuthHeaderForRegistry4(opts3.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 commandNames57;
var init_stars = __esm({
  "../registry-access/commands/lib/star/stars.js"() {
    "use strict";
    init_lib41();
    init_lib2();
    init_lib23();
    init_lib66();
    init_common2();
    init_whoami();
    init_common4();
    commandNames57 = ["stars"];
  }
});

// ../registry-access/commands/lib/star/unstar.js
var unstar_exports = {};
__export(unstar_exports, {
  cliOptionsTypes: () => cliOptionsTypes54,
  commandNames: () => commandNames58,
  handler: () => handler58,
  help: () => help58,
  rcOptionsTypes: () => rcOptionsTypes51
});
function help58() {
  return renderHelp({
    description: "Removes a package from your favorites.",
    url: docsUrl("unstar"),
    usages: ["pnpm unstar <package>"]
  });
}
async function handler58(opts3, params) {
  if (params.length === 0) {
    throw new PnpmError("UNSTAR_PACKAGE_REQUIRED", "Package name is required");
  }
  await performStarAction(opts3, { packageName: params[0], star: false });
}
var commandNames58;
var init_unstar = __esm({
  "../registry-access/commands/lib/star/unstar.js"() {
    "use strict";
    init_lib41();
    init_lib2();
    init_lib66();
    init_common4();
    commandNames58 = ["unstar"];
  }
});

// ../registry-access/commands/lib/team.js
var team_exports = {};
__export(team_exports, {
  cliOptionsTypes: () => cliOptionsTypes55,
  commandNames: () => commandNames59,
  handler: () => handler59,
  help: () => help59,
  rcOptionsTypes: () => rcOptionsTypes48
});
function cliOptionsTypes55() {
  return {
    ...rcOptionsTypes48(),
    otp: String,
    parseable: Boolean,
    json: Boolean
  };
}
function help59() {
  return renderHelp({
    description: "Manage organization teams and team memberships.",
    descriptionLists: [
      {
        title: "Commands",
        list: [
          {
            description: "Create a new team in an organization.",
            name: "create"
          },
          {
            description: "Destroy an existing team.",
            name: "destroy"
          },
          {
            description: "Add a user to an existing team.",
            name: "add"
          },
          {
            description: "Remove a user from an existing team.",
            name: "rm"
          },
          {
            description: "List teams in an organization or users in a team.",
            name: "ls"
          }
        ]
      },
      {
        title: "Options",
        list: [
          {
            description: "The base URL of the npm registry.",
            name: "--registry <url>"
          },
          {
            description: "One-time password for registries that require two-factor authentication.",
            name: "--otp"
          },
          {
            description: "Output parseable results.",
            name: "--parseable"
          },
          {
            description: "Output results as JSON.",
            name: "--json"
          }
        ]
      }
    ],
    url: docsUrl("team"),
    usages: [
      "pnpm team create <scope:team> [--otp <code>]",
      "pnpm team destroy <scope:team> [--otp <code>]",
      "pnpm team add <scope:team> <user> [--otp <code>]",
      "pnpm team rm <scope:team> <user> [--otp <code>]",
      "pnpm team ls <scope|scope:team>"
    ]
  });
}
async function handler59(opts3, params) {
  switch (params[0]) {
    case "create":
      return teamCreate(opts3, params.slice(1));
    case "destroy":
      return teamDestroy(opts3, params.slice(1));
    case "add":
      return teamAdd(opts3, params.slice(1));
    case "rm":
      return teamRm(opts3, params.slice(1));
    case "ls":
    case "list":
      return teamLs(opts3, params.slice(1));
    default:
      if (params.length > 0 && (params[0].startsWith("@") || params[0].startsWith(":"))) {
        return teamLs(opts3, params);
      }
      throw new PnpmError("TEAM_SUBCOMMAND_REQUIRED", "Subcommand is required (create, destroy, add, rm, ls). Use `pnpm team ls <scope>` to list teams.");
  }
}
async function teamCreate(opts3, params) {
  if (params.length === 0) {
    throw new PnpmError("TEAM_CREATE_SCOPE_REQUIRED", "Team scope is required (e.g., pnpm team create @org:newteam)");
  }
  const { scope, team } = parseScopeTeam(params[0]);
  if (!team) {
    throw new PnpmError("TEAM_CREATE_NAME_REQUIRED", "Team name is required (e.g., pnpm team create @org:newteam)");
  }
  const { registryUrl, authHeader } = getRegistryAndAuthForOrg(opts3, scope);
  const fetchFromRegistry = createFetchFromRegistry(opts3);
  const otp = opts3.cliOptions?.otp;
  const teamUrl = getOrgTeamsUrl(registryUrl, scope);
  const response = await fetchFromRegistry(teamUrl, {
    authHeaderValue: authHeader,
    method: "PUT",
    headers: {
      "content-type": "application/json",
      ...otp ? { "npm-otp": otp } : {}
    },
    body: JSON.stringify({ name: team })
  });
  if (!response.ok) {
    await throwRegistryError3(response, `create team "${scope}:${team}"`);
  }
  return `+${scope}:${team}`;
}
async function teamDestroy(opts3, params) {
  if (params.length === 0) {
    throw new PnpmError("TEAM_DESTROY_SCOPE_REQUIRED", "Team scope is required (e.g., pnpm team destroy @org:newteam)");
  }
  const { scope, team } = parseScopeTeam(params[0]);
  if (!team) {
    throw new PnpmError("TEAM_DESTROY_NAME_REQUIRED", "Team name is required (e.g., pnpm team destroy @org:newteam)");
  }
  const { registryUrl, authHeader } = getRegistryAndAuthForOrg(opts3, scope);
  const fetchFromRegistry = createFetchFromRegistry(opts3);
  const otp = opts3.cliOptions?.otp;
  const teamUrl = getTeamUrl(registryUrl, scope, team);
  const response = await fetchFromRegistry(teamUrl, {
    authHeaderValue: authHeader,
    method: "DELETE",
    headers: {
      ...otp ? { "npm-otp": otp } : {}
    }
  });
  if (!response.ok) {
    await throwRegistryError3(response, `destroy team "${scope}:${team}"`);
  }
  return `-${scope}:${team}`;
}
async function teamAdd(opts3, params) {
  if (params.length < 2) {
    throw new PnpmError("TEAM_ADD_ARGS_REQUIRED", "Team scope and user are required (e.g., pnpm team add @org:team username)");
  }
  const { scope, team } = parseScopeTeam(params[0]);
  if (!team) {
    throw new PnpmError("TEAM_ADD_NAME_REQUIRED", "Team name is required (e.g., pnpm team add @org:team username)");
  }
  const username = params[1];
  const { registryUrl, authHeader } = getRegistryAndAuthForOrg(opts3, scope);
  const fetchFromRegistry = createFetchFromRegistry(opts3);
  const otp = opts3.cliOptions?.otp;
  const membersUrl = getTeamMembersUrl(registryUrl, scope, team);
  const response = await fetchFromRegistry(membersUrl, {
    authHeaderValue: authHeader,
    method: "PUT",
    headers: {
      "content-type": "application/json",
      ...otp ? { "npm-otp": otp } : {}
    },
    body: JSON.stringify({ user: username })
  });
  if (!response.ok) {
    await throwRegistryError3(response, `add user "${username}" to team "${scope}:${team}"`);
  }
  return `+${username} added to @${scope}:${team}`;
}
async function teamRm(opts3, params) {
  if (params.length < 2) {
    throw new PnpmError("TEAM_RM_ARGS_REQUIRED", "Team scope and user are required (e.g., pnpm team rm @org:team username)");
  }
  const { scope, team } = parseScopeTeam(params[0]);
  if (!team) {
    throw new PnpmError("TEAM_RM_NAME_REQUIRED", "Team name is required (e.g., pnpm team rm @org:team username)");
  }
  const username = params[1];
  const { registryUrl, authHeader } = getRegistryAndAuthForOrg(opts3, scope);
  const fetchFromRegistry = createFetchFromRegistry(opts3);
  const otp = opts3.cliOptions?.otp;
  const membersUrl = getTeamMembersUrl(registryUrl, scope, team);
  const response = await fetchFromRegistry(membersUrl, {
    authHeaderValue: authHeader,
    method: "DELETE",
    headers: {
      "content-type": "application/json",
      ...otp ? { "npm-otp": otp } : {}
    },
    body: JSON.stringify({ user: username })
  });
  if (!response.ok) {
    await throwRegistryError3(response, `remove user "${username}" from team "${scope}:${team}"`);
  }
  return `-${username} removed from @${scope}:${team}`;
}
async function teamLs(opts3, params) {
  if (params.length === 0) {
    throw new PnpmError("TEAM_LS_SCOPE_REQUIRED", "Organization scope is required (e.g., pnpm team ls @org or pnpm team ls @org:team)");
  }
  const { scope, team } = parseScopeTeam(params[0]);
  const { registryUrl, authHeader } = getRegistryAndAuthForOrg(opts3, scope);
  const fetchFromRegistry = createFetchFromRegistry(opts3);
  const parseable = opts3.cliOptions?.parseable ?? false;
  const json2 = opts3.cliOptions?.json ?? false;
  if (team) {
    return teamListMembers({ scope, team, registryUrl, fetchFromRegistry, authHeader, parseable, json: json2 });
  }
  return teamListTeams({ scope, registryUrl, fetchFromRegistry, authHeader, parseable, json: json2 });
}
async function teamListTeams(options) {
  const { scope, registryUrl, fetchFromRegistry, authHeader, parseable, json: json2 } = options;
  const teamsUrl = getOrgTeamsUrl(registryUrl, scope);
  const response = await fetchFromRegistry(teamsUrl, {
    authHeaderValue: authHeader
  });
  if (!response.ok) {
    if (response.status === 404) {
      throw new PnpmError("ORG_NOT_FOUND", `Organization "@${scope}" not found in registry`);
    }
    await throwRegistryError3(response, `fetch teams for "@${scope}"`);
  }
  const teams = await response.json();
  if (json2) {
    return JSON.stringify(teams.map((t2) => t2.name), null, 2);
  }
  if (parseable) {
    return teams.map((t2) => t2.name).join("\n");
  }
  if (teams.length === 0) {
    return `@${scope} has no teams`;
  }
  const lines = [`@${scope} has the following teams:`];
  for (const { name } of teams) {
    lines.push(`  @${scope}:${name}`);
  }
  return lines.join("\n");
}
async function teamListMembers(options) {
  const { scope, team, registryUrl, fetchFromRegistry, authHeader, parseable, json: json2 } = options;
  const membersUrl = getTeamMembersUrl(registryUrl, scope, team);
  const response = await fetchFromRegistry(membersUrl, {
    authHeaderValue: authHeader
  });
  if (!response.ok) {
    if (response.status === 404) {
      throw new PnpmError("TEAM_NOT_FOUND", `Team "@${scope}:${team}" not found in registry`);
    }
    await throwRegistryError3(response, `fetch team members for "@${scope}:${team}"`);
  }
  const members = await response.json();
  if (json2) {
    return JSON.stringify(members.map((m) => m.name), null, 2);
  }
  if (parseable) {
    return members.map((m) => m.name).join("\n");
  }
  if (members.length === 0) {
    return `@${scope}:${team} has no members`;
  }
  const lines = [`@${scope}:${team} has the following members:`];
  for (const { name } of members) {
    lines.push(`  ${name}`);
  }
  return lines.join("\n");
}
function parseScopeTeam(spec) {
  if (!spec.startsWith("@")) {
    throw new PnpmError("TEAM_INVALID_SCOPE", `Team spec must start with @scope, got "${spec}". Use @scope or @scope:team format.`);
  }
  const inner = spec.slice(1);
  if (!inner) {
    throw new PnpmError("TEAM_INVALID_SCOPE", `Team spec must start with @scope, got "${spec}". Use @scope or @scope:team format.`);
  }
  const colonIndex = inner.indexOf(":");
  if (colonIndex === -1) {
    return { scope: inner };
  }
  const scope = inner.slice(0, colonIndex);
  const team = inner.slice(colonIndex + 1);
  if (!scope || !team) {
    throw new PnpmError("TEAM_INVALID_SCOPE", `Team spec must start with @scope, got "${spec}". Use @scope or @scope:team format.`);
  }
  return { scope, team };
}
function getRegistryAndAuthForOrg(opts3, scope) {
  const pkgName = `@${scope}/__pnpm_team__`;
  const registryUrl = pickRegistryForPackage(opts3.registries ?? { default: "https://registry.npmjs.org/" }, pkgName);
  const authHeader = getAuthHeaderForRegistry5(opts3.configByUri, registryUrl, pkgName);
  if (!authHeader) {
    throw new PnpmError("TEAM_MISSING_AUTH", "Authentication required for registry access");
  }
  return { registryUrl, authHeader };
}
function getAuthHeaderForRegistry5(configByUri, registryUrl, packageName) {
  const getAuthHeader = createGetAuthHeaderByURI(configByUri ?? {});
  return getAuthHeader(registryUrl, { pkgName: packageName });
}
function getOrgTeamsUrl(registryUrl, scope) {
  return new URL(`-/org/${encodeURIComponent(scope)}/team`, normalizeRegistryUrl8(registryUrl)).href;
}
function getTeamUrl(registryUrl, scope, team) {
  return new URL(`-/team/${encodeURIComponent(scope)}/${encodeURIComponent(team)}`, normalizeRegistryUrl8(registryUrl)).href;
}
function getTeamMembersUrl(registryUrl, scope, team) {
  return new URL(`-/team/${encodeURIComponent(scope)}/${encodeURIComponent(team)}/user`, normalizeRegistryUrl8(registryUrl)).href;
}
async function throwRegistryError3(response, action) {
  const errorBody = await readErrorBody(response);
  const safeErrorBody = [...errorBody].filter((c3) => {
    const code = c3.charCodeAt(0);
    return code > 31 && (code < 127 || code > 159);
  }).join("").slice(0, 500);
  if (response.status === 401) {
    throw new PnpmError("UNAUTHORIZED", `You must be logged in to ${action}. ${safeErrorBody}`);
  }
  if (response.status === 403) {
    throw new PnpmError("FORBIDDEN", `You do not have permission to ${action}. ${safeErrorBody}`);
  }
  if (response.status === 404) {
    throw new PnpmError("NOT_FOUND", `Organization or team not found. ${safeErrorBody}`);
  }
  if (response.status === 409) {
    throw new PnpmError("TEAM_CONFLICT", `Team operation failed due to conflict. ${safeErrorBody}`);
  }
  throw new PnpmError("REGISTRY_ERROR", `Failed to ${action}: ${response.status} ${response.statusText}. ${safeErrorBody}`);
}
var commandNames59;
var init_team = __esm({
  "../registry-access/commands/lib/team.js"() {
    "use strict";
    init_lib41();
    init_lib28();
    init_lib2();
    init_lib52();
    init_lib23();
    init_lib66();
    init_common2();
    commandNames59 = ["team"];
  }
});

// ../registry-access/commands/lib/unpublish.js
var unpublish_exports = {};
__export(unpublish_exports, {
  cliOptionsTypes: () => cliOptionsTypes56,
  commandNames: () => commandNames60,
  handler: () => handler60,
  help: () => help60,
  rcOptionsTypes: () => rcOptionsTypes48
});
function cliOptionsTypes56() {
  return {
    ...rcOptionsTypes48(),
    force: Boolean,
    otp: String
  };
}
function help60() {
  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 handler60(opts3, 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, opts3);
}
async function unpublishPackage(packageName, versionRange, opts3) {
  const registryUrl = pickRegistryForPackage(opts3.registries ?? { default: "https://registry.npmjs.org/" }, packageName);
  const getAuthHeader = createGetAuthHeaderByURI(opts3.configByUri ?? {});
  const authHeader = getAuthHeader(registryUrl, { pkgName: packageName });
  const packageUrl = new URL((0, import_npm_package_arg10.default)(packageName).escapedName, registryUrl).href;
  const fetchFromRegistry = createFetchFromRegistry(opts3);
  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 = opts3.cliOptions?.otp;
  if (!versionRange) {
    return unpublishAll(packageUrl, pkg, fetchFromRegistry, authHeader, otp, opts3.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, opts3.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_semver60.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 throwRegistryError4(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 throwRegistryError4(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 throwRegistryError4(deleteResponse, "unpublish");
  }
  return `Successfully unpublished all ${versionCount} version(s) of ${packageName}`;
}
async function throwRegistryError4(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_semver60.default.satisfies(v, range));
}
var import_npm_package_arg10, import_semver60, commandNames60;
var init_unpublish = __esm({
  "../registry-access/commands/lib/unpublish.js"() {
    "use strict";
    init_lib41();
    init_lib28();
    init_lib2();
    init_lib52();
    init_lib23();
    import_npm_package_arg10 = __toESM(require_npa(), 1);
    init_lib66();
    import_semver60 = __toESM(require_semver2(), 1);
    init_common2();
    commandNames60 = ["unpublish"];
  }
});

// ../registry-access/commands/lib/index.js
var init_lib168 = __esm({
  "../registry-access/commands/lib/index.js"() {
    "use strict";
    init_access();
    init_deprecate();
    init_undeprecate();
    init_distTag();
    init_owner();
    init_ping();
    init_search();
    init_star();
    init_stars();
    init_unstar();
    init_team();
    init_unpublish();
    init_whoami();
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/human-id/4.2.0/3438e0cef38c4cd15e6ae360cffd28a5d645043202f3253e2c49a2bc447cca68/node_modules/human-id/dist/index.js
function random(arr) {
  return arr[Math.floor(Math.random() * arr.length)];
}
function humanId(options = {}) {
  if (typeof options === "string")
    options = { separator: options };
  if (typeof options === "boolean")
    options = { capitalize: options };
  const { separator = "", capitalize = true, adjectiveCount = 1, addAdverb = false } = options;
  let res = [
    ...[...Array(adjectiveCount)].map((_) => random(adjectives)),
    random(nouns),
    random(verbs),
    ...addAdverb ? [random(adverbs)] : []
  ];
  if (capitalize)
    res = res.map((r) => r.charAt(0).toUpperCase() + r.substr(1));
  return res.join(separator);
}
var adjectives, nouns, verbs, adverbs;
var init_dist21 = __esm({
  "../../../../../setup-pnpm/store/v11/links/@/human-id/4.2.0/3438e0cef38c4cd15e6ae360cffd28a5d645043202f3253e2c49a2bc447cca68/node_modules/human-id/dist/index.js"() {
    adjectives = ["afraid", "all", "beige", "better", "big", "blue", "bold", "brave", "breezy", "bright", "brown", "bumpy", "busy", "calm", "chatty", "chilly", "chubby", "clean", "clear", "clever", "cold", "common", "cool", "cozy", "crisp", "cuddly", "curly", "curvy", "cute", "cyan", "dark", "deep", "dirty", "dry", "dull", "eager", "early", "easy", "eight", "eighty", "eleven", "empty", "every", "fair", "famous", "fancy", "fast", "few", "fiery", "fifty", "fine", "five", "flat", "floppy", "fluffy", "forty", "four", "frank", "free", "fresh", "fruity", "full", "funky", "funny", "fuzzy", "gentle", "giant", "gold", "good", "goofy", "great", "green", "grumpy", "happy", "heavy", "hip", "honest", "hot", "huge", "humble", "hungry", "icy", "itchy", "jolly", "khaki", "kind", "large", "late", "lazy", "legal", "lemon", "light", "little", "long", "loose", "loud", "lovely", "lucky", "major", "many", "metal", "mighty", "modern", "moody", "neat", "new", "nice", "nine", "ninety", "odd", "old", "olive", "open", "orange", "perky", "petite", "pink", "plain", "plenty", "polite", "pretty", "proud", "public", "puny", "purple", "quick", "quiet", "rare", "ready", "real", "red", "rich", "ripe", "salty", "seven", "shaggy", "shaky", "sharp", "shiny", "short", "shy", "silent", "silly", "silver", "six", "sixty", "slick", "slimy", "slow", "small", "smart", "smooth", "social", "soft", "solid", "some", "sour", "sparkly", "spicy", "spotty", "stale", "strict", "strong", "sunny", "sweet", "swift", "tall", "tame", "tangy", "tasty", "ten", "tender", "thick", "thin", "thirty", "three", "tidy", "tiny", "tired", "tough", "tricky", "true", "twelve", "twenty", "two", "upset", "vast", "violet", "wacky", "warm", "wet", "whole", "wicked", "wide", "wild", "wise", "witty", "yellow", "young", "yummy"];
    nouns = [
      "actors",
      "ads",
      "adults",
      "aliens",
      "animals",
      "ants",
      "apes",
      "apples",
      "areas",
      "baboons",
      "badgers",
      "bags",
      "balloons",
      "bananas",
      "banks",
      "bars",
      "baths",
      "bats",
      "beans",
      "bears",
      "beds",
      "beers",
      "bees",
      "berries",
      "bikes",
      "birds",
      "boats",
      "bobcats",
      "books",
      "bottles",
      "boxes",
      "breads",
      "brooms",
      "buckets",
      "bugs",
      "buses",
      "bushes",
      "buttons",
      "camels",
      "cameras",
      "candies",
      "candles",
      "canyons",
      "carpets",
      "carrots",
      "cars",
      "cases",
      "cats",
      "chairs",
      "chefs",
      "chicken",
      "cities",
      "clocks",
      "cloths",
      "clouds",
      "clowns",
      "clubs",
      "coats",
      "cobras",
      "coins",
      "colts",
      "comics",
      "cooks",
      "corners",
      "cougars",
      "cows",
      "crabs",
      "crews",
      "cups",
      "cycles",
      "dancers",
      "days",
      "deer",
      "deserts",
      "dingos",
      "dodos",
      "dogs",
      "dolls",
      "donkeys",
      "donuts",
      "doodles",
      "doors",
      "dots",
      "dragons",
      "drinks",
      "dryers",
      "ducks",
      "eagles",
      "ears",
      "eels",
      "eggs",
      "emus",
      "ends",
      "experts",
      "eyes",
      "facts",
      "falcons",
      "fans",
      "feet",
      "files",
      "flies",
      "flowers",
      "forks",
      "foxes",
      "friends",
      "frogs",
      "games",
      "garlics",
      "geckos",
      "geese",
      "ghosts",
      "gifts",
      "glasses",
      "goats",
      "grapes",
      "groups",
      "guests",
      "hairs",
      "hands",
      "hats",
      "heads",
      "hoops",
      "hornets",
      "horses",
      "hotels",
      "hounds",
      "houses",
      "humans",
      "icons",
      "ideas",
      "impalas",
      "insects",
      "islands",
      "items",
      "jars",
      "jeans",
      "jobs",
      "jokes",
      "keys",
      "kids",
      "kings",
      "kiwis",
      "knives",
      "lamps",
      "lands",
      "laws",
      "lemons",
      "lies",
      "lights",
      "lilies",
      "lines",
      "lions",
      "lizards",
      "llamas",
      "loops",
      "mails",
      "mammals",
      "mangos",
      "maps",
      "masks",
      "meals",
      "melons",
      "memes",
      "meteors",
      "mice",
      "mirrors",
      "moles",
      "moments",
      "monkeys",
      "months",
      "moons",
      "moose",
      "mugs",
      "nails",
      "needles",
      "news",
      "nights",
      "numbers",
      "olives",
      "onions",
      "oranges",
      "otters",
      "owls",
      "pandas",
      "pans",
      "pants",
      "papayas",
      "papers",
      "parents",
      "parks",
      "parrots",
      "parts",
      "paths",
      "paws",
      "peaches",
      "pears",
      "peas",
      "pens",
      "pets",
      "phones",
      "pianos",
      "pigs",
      "pillows",
      "places",
      "planes",
      "planets",
      "plants",
      "plums",
      "poems",
      "poets",
      "points",
      "pots",
      "pugs",
      "pumas",
      "queens",
      "rabbits",
      "radios",
      "rats",
      "ravens",
      "readers",
      "regions",
      "results",
      "rice",
      "rings",
      "rivers",
      "rockets",
      "rocks",
      "rooms",
      "roses",
      "rules",
      "sails",
      "schools",
      "seals",
      "seas",
      "sheep",
      "shirts",
      "shoes",
      "showers",
      "shrimps",
      "sides",
      "signs",
      "singers",
      "sites",
      "sloths",
      "snails",
      "snakes",
      "socks",
      "spiders",
      "spies",
      "spoons",
      "squids",
      "stamps",
      "stars",
      "states",
      "steaks",
      "streets",
      "suits",
      "suns",
      "swans",
      "symbols",
      "tables",
      "taxes",
      "taxis",
      "teams",
      "teeth",
      "terms",
      "things",
      "ties",
      "tigers",
      "times",
      "tips",
      "tires",
      "toes",
      "tools",
      "towns",
      "toys",
      "trains",
      "trams",
      "trees",
      "turkeys",
      "turtles",
      "vans",
      "views",
      "walls",
      "wasps",
      "waves",
      "ways",
      "webs",
      "weeks",
      "windows",
      "wings",
      "wolves",
      "wombats",
      "words",
      "worlds",
      "worms",
      "yaks",
      "years",
      "zebras",
      "zoos"
    ];
    verbs = ["accept", "act", "add", "admire", "agree", "allow", "appear", "argue", "arrive", "ask", "attack", "attend", "bake", "bathe", "battle", "beam", "beg", "begin", "behave", "bet", "boil", "bow", "brake", "brush", "build", "burn", "buy", "call", "camp", "care", "carry", "change", "cheat", "check", "cheer", "chew", "clap", "clean", "cough", "count", "cover", "crash", "create", "cross", "cry", "cut", "dance", "decide", "deny", "design", "dig", "divide", "do", "double", "doubt", "draw", "dream", "dress", "drive", "drop", "drum", "eat", "end", "enjoy", "enter", "exist", "fail", "fall", "feel", "fetch", "film", "find", "fix", "flash", "float", "flow", "fly", "fold", "follow", "fry", "give", "glow", "go", "grab", "greet", "grin", "grow", "guess", "hammer", "hang", "happen", "heal", "hear", "help", "hide", "hope", "hug", "hunt", "invent", "invite", "itch", "jam", "jog", "join", "joke", "judge", "juggle", "jump", "kick", "kiss", "kneel", "knock", "know", "laugh", "lay", "lead", "learn", "leave", "lick", "lie", "like", "listen", "live", "look", "lose", "love", "make", "march", "marry", "mate", "matter", "melt", "mix", "move", "nail", "notice", "obey", "occur", "open", "own", "pay", "peel", "pick", "play", "poke", "post", "press", "prove", "pull", "pump", "punch", "push", "raise", "read", "refuse", "relate", "relax", "remain", "repair", "repeat", "reply", "report", "rescue", "rest", "retire", "return", "rhyme", "ring", "roll", "rule", "run", "rush", "say", "scream", "search", "see", "sell", "send", "serve", "shake", "share", "shave", "shine", "shop", "shout", "show", "sin", "sing", "sink", "sip", "sit", "sleep", "slide", "smash", "smell", "smile", "smoke", "sneeze", "sniff", "sort", "speak", "spend", "stand", "stare", "start", "stay", "stick", "stop", "strive", "study", "swim", "switch", "take", "talk", "tan", "tap", "taste", "teach", "tease", "tell", "thank", "think", "throw", "tickle", "tie", "trade", "train", "travel", "try", "turn", "type", "unite", "vanish", "visit", "wait", "walk", "warn", "wash", "watch", "wave", "wear", "win", "wink", "wish", "wonder", "work", "worry", "write", "yawn", "yell"];
    adverbs = ["bravely", "brightly", "busily", "daily", "freely", "hungrily", "joyously", "knowingly", "lazily", "noisily", "oddly", "politely", "quickly", "quietly", "rapidly", "safely", "sleepily", "slowly", "truly", "yearly"];
  }
});

// ../releasing/versioning/lib/intents.js
import fs111 from "node:fs/promises";
import path203 from "node:path";
import util59 from "node:util";
function parseChangeIntent(content, id, filePath) {
  const lines = content.replace(/^\uFEFF/, "").split(/\r?\n/);
  const closingIndex = lines[0]?.trim() === "---" ? lines.findIndex((line, index2) => index2 > 0 && line.trim() === "---") : -1;
  if (closingIndex === -1) {
    throw new PnpmError("INVALID_CHANGE_INTENT", `Change intent file ${filePath} has no YAML frontmatter`);
  }
  let frontmatter;
  try {
    frontmatter = yaml3.parse(lines.slice(1, closingIndex).join("\n")) ?? {};
  } catch (err2) {
    throw new PnpmError("INVALID_CHANGE_INTENT", `Change intent file ${filePath} has invalid YAML frontmatter: ${util59.types.isNativeError(err2) ? err2.message : String(err2)}`);
  }
  if (typeof frontmatter !== "object" || frontmatter === null || Array.isArray(frontmatter)) {
    throw new PnpmError("INVALID_CHANGE_INTENT", `Change intent file ${filePath} frontmatter must be a mapping of package names to bump types`);
  }
  const releases = {};
  for (const [pkgName, bumpType] of Object.entries(frontmatter)) {
    if (typeof bumpType !== "string" || !BUMP_TYPES2.includes(bumpType)) {
      throw new PnpmError("INVALID_CHANGE_INTENT", `Change intent file ${filePath} declares an invalid bump type for ${pkgName}: ${String(bumpType)}. Expected one of ${BUMP_TYPES2.join(", ")}`);
    }
    releases[pkgName] = bumpType;
  }
  return {
    id,
    filePath,
    releases,
    summary: lines.slice(closingIndex + 1).join("\n").trim()
  };
}
async function readChangeIntents(workspaceDir) {
  const changesDir = path203.join(workspaceDir, CHANGES_DIR);
  let fileNames;
  try {
    fileNames = await fs111.readdir(changesDir);
  } catch (err2) {
    if (util59.types.isNativeError(err2) && "code" in err2 && err2.code === "ENOENT") {
      return [];
    }
    throw err2;
  }
  const intentFileNames = fileNames.filter((fileName) => fileName.endsWith(".md") && fileName.toLowerCase() !== "readme.md").sort();
  return Promise.all(intentFileNames.map(async (fileName) => {
    const filePath = path203.join(changesDir, fileName);
    const content = await fs111.readFile(filePath, "utf8");
    return parseChangeIntent(content, fileName.slice(0, -".md".length), filePath);
  }));
}
async function writeChangeIntent(workspaceDir, opts3) {
  const changesDir = path203.join(workspaceDir, CHANGES_DIR);
  await fs111.mkdir(changesDir, { recursive: true });
  const existing = new Set(await fs111.readdir(changesDir));
  let id = humanId({ separator: "-", capitalize: false });
  while (existing.has(`${id}.md`)) {
    id = humanId({ separator: "-", capitalize: false });
  }
  const frontmatterLines = Object.entries(opts3.releases).map(([pkgName, bumpType]) => `${JSON.stringify(pkgName)}: ${bumpType}`);
  const content = `---
${frontmatterLines.join("\n")}
---

${opts3.summary.trim()}
`;
  await fs111.writeFile(path203.join(changesDir, `${id}.md`), content, "utf8");
  return id;
}
var yaml3, CHANGES_DIR, BUMP_TYPES2;
var init_intents = __esm({
  "../releasing/versioning/lib/intents.js"() {
    "use strict";
    init_lib2();
    init_dist21();
    yaml3 = __toESM(require_dist6(), 1);
    CHANGES_DIR = ".changeset";
    BUMP_TYPES2 = ["none", "patch", "minor", "major"];
  }
});

// ../releasing/versioning/lib/ledger.js
import fs112 from "node:fs/promises";
import path204 from "node:path";
import util60 from "node:util";
function ledgerEntryIds(entry) {
  return Array.isArray(entry) ? entry : entry.intents;
}
async function readLedger(workspaceDir) {
  const ledgerPath = path204.join(workspaceDir, CHANGES_DIR, LEDGER_FILENAME);
  let content;
  try {
    content = await fs112.readFile(ledgerPath, "utf8");
  } catch (err2) {
    if (util60.types.isNativeError(err2) && "code" in err2 && err2.code === "ENOENT") {
      return {};
    }
    throw err2;
  }
  const parsed = yaml4.parse(content) ?? {};
  if (typeof parsed !== "object" || parsed === null || Array.isArray(parsed)) {
    throw new PnpmError("INVALID_VERSIONING_LEDGER", `Expected ${ledgerPath} to be a mapping of package@version keys to consumed-intent entries`);
  }
  const ledger = /* @__PURE__ */ Object.create(null);
  for (const [key, entry] of Object.entries(parsed)) {
    const normalized = normalizeLedgerEntry(entry);
    if (normalized == null) {
      throw new PnpmError("INVALID_VERSIONING_LEDGER", `Invalid entry for ${key} in ${ledgerPath}. Expected a list of intent ids, or a mapping with "dir" and "intents"`);
    }
    ledger[key] = normalized;
  }
  return ledger;
}
function normalizeLedgerEntry(entry) {
  if (entry == null)
    return [];
  if (Array.isArray(entry)) {
    return entry.every((id) => typeof id === "string") ? entry : void 0;
  }
  if (typeof entry !== "object")
    return void 0;
  const { dir, intents } = entry;
  if (typeof dir !== "string")
    return void 0;
  if (intents == null)
    return { dir, intents: [] };
  if (!Array.isArray(intents) || !intents.every((id) => typeof id === "string"))
    return void 0;
  return { dir, intents };
}
async function appendToLedger(workspaceDir, newEntries) {
  const ledger = await readLedger(workspaceDir);
  if (Object.keys(newEntries).length === 0)
    return ledger;
  for (const [key, entry] of Object.entries(newEntries)) {
    const existingIds = ledger[key] != null ? ledgerEntryIds(ledger[key]) : [];
    ledger[key] = {
      dir: entry.dir,
      intents: Array.from(/* @__PURE__ */ new Set([...existingIds, ...entry.intents])).sort()
    };
  }
  const sorted = Object.fromEntries(Object.entries(ledger).sort(([left], [right]) => left.localeCompare(right)));
  const changesDir = path204.join(workspaceDir, CHANGES_DIR);
  await fs112.mkdir(changesDir, { recursive: true });
  await fs112.writeFile(path204.join(changesDir, LEDGER_FILENAME), yaml4.stringify(sorted), "utf8");
  return sorted;
}
function buildConsumptionIndex(ledger, resolveNameDirs) {
  const stableIdsByDir = /* @__PURE__ */ new Map();
  const prereleaseIdsByDir = /* @__PURE__ */ new Map();
  for (const [key, entry] of Object.entries(ledger)) {
    const atIndex = key.lastIndexOf("@");
    if (atIndex <= 0)
      continue;
    const version2 = key.slice(atIndex + 1);
    let dir;
    if (Array.isArray(entry)) {
      const pkgName = key.slice(0, atIndex);
      const dirs2 = resolveNameDirs(pkgName);
      if (dirs2.length === 0)
        continue;
      if (dirs2.length > 1) {
        throw new PnpmError("INVALID_VERSIONING_LEDGER", `The ledger entry ${key} names ${pkgName}, which matches multiple workspace projects (${dirs2.join(", ")}). Rewrite the entry with an explicit "dir".`);
      }
      dir = dirs2[0];
    } else {
      dir = normalizeProjectDir(entry.dir);
    }
    const isPrerelease = version2.split("+")[0].includes("-");
    const byDir = isPrerelease ? prereleaseIdsByDir : stableIdsByDir;
    let idSet = byDir.get(dir);
    if (idSet == null) {
      idSet = /* @__PURE__ */ new Set();
      byDir.set(dir, idSet);
    }
    for (const id of ledgerEntryIds(entry)) {
      idSet.add(id);
    }
  }
  const consumptionByDir = /* @__PURE__ */ new Map();
  for (const dir of /* @__PURE__ */ new Set([...stableIdsByDir.keys(), ...prereleaseIdsByDir.keys()])) {
    const stableIds = stableIdsByDir.get(dir) ?? /* @__PURE__ */ new Set();
    const prereleaseIds = prereleaseIdsByDir.get(dir) ?? /* @__PURE__ */ new Set();
    consumptionByDir.set(dir, {
      allIds: /* @__PURE__ */ new Set([...stableIds, ...prereleaseIds]),
      prereleaseOnlyIds: new Set([...prereleaseIds].filter((id) => !stableIds.has(id)))
    });
  }
  return (projectDir) => consumptionByDir.get(projectDir) ?? { allIds: /* @__PURE__ */ new Set(), prereleaseOnlyIds: /* @__PURE__ */ new Set() };
}
function normalizeProjectDir(dir) {
  let normalized = dir.replaceAll("\\", "/");
  while (normalized.startsWith("./")) {
    normalized = normalized.slice(2);
  }
  return normalized.replace(/\/+$/, "");
}
var yaml4, LEDGER_FILENAME;
var init_ledger = __esm({
  "../releasing/versioning/lib/ledger.js"() {
    "use strict";
    init_lib2();
    yaml4 = __toESM(require_dist6(), 1);
    init_intents();
    LEDGER_FILENAME = "ledger.yaml";
  }
});

// ../releasing/versioning/lib/assembleReleasePlan.js
import path205 from "node:path";
function isDirRef(ref) {
  return ref.startsWith("./");
}
function indexProjectRefs(projects, workspaceDir) {
  const dirs2 = /* @__PURE__ */ new Set();
  const dirsByName = /* @__PURE__ */ new Map();
  for (const project of projects) {
    const dir = toProjectDir(workspaceDir, project.rootDir);
    dirs2.add(dir);
    const name = project.manifest.name;
    if (name == null)
      continue;
    let named = dirsByName.get(name);
    if (named == null) {
      named = [];
      dirsByName.set(name, named);
    }
    named.push(dir);
  }
  return {
    refToDirs: (ref) => {
      if (isDirRef(ref)) {
        const dir = normalizeProjectDir(ref);
        return dirs2.has(dir) ? [dir] : [];
      }
      return dirsByName.get(ref) ?? [];
    },
    nameToDirs: (name) => dirsByName.get(name) ?? []
  };
}
function toProjectDir(workspaceDir, rootDir) {
  return normalizeProjectDir(path205.relative(workspaceDir, rootDir));
}
function assembleReleasePlan(opts3) {
  const refs = indexProjectRefs(opts3.projects, opts3.workspaceDir);
  const participants = collectParticipants(opts3.projects, refs, opts3);
  const lanesByDir = resolveLanes(refs, participants, opts3.versioning);
  const fixedGroups = resolveFixedGroups(refs, participants, opts3.versioning);
  validateFixedGroupLanes(fixedGroups, lanesByDir, opts3.versioning);
  const epics = resolveEpics(refs, participants, opts3.versioning);
  validateEpics(epics, fixedGroups);
  const intentBumps = resolveIntents(opts3.intents, refs, participants);
  if (opts3.enforceWorkspaceProtocol) {
    assertInternalDepsUseWorkspaceProtocol(participants);
  }
  const consumptionOf = buildConsumptionIndex(opts3.ledger, refs.nameToDirs);
  const ctx = { participants, lanesByDir, fixedGroups, epics, intentBumps, consumptionOf, opts: opts3 };
  let selection = opts3.filter;
  for (; ; ) {
    const plan = assemble(ctx, selection);
    if (selection == null)
      return plan;
    const expanded = new Set(selection);
    for (const release of plan.releases) {
      expanded.add(release.dir);
    }
    if (expanded.size === selection.size)
      return plan;
    selection = expanded;
  }
}
function assemble(ctx, selection) {
  const { participants, lanesByDir, fixedGroups, epics, opts: opts3 } = ctx;
  const pendingByDir = collectPendingIntents(ctx);
  const laneConsumedByDir = collectLaneConsumedIntents(ctx);
  const state = /* @__PURE__ */ new Map();
  const bumpAtLeast = (dir, bumpType, cause) => {
    const existing = state.get(dir);
    if (existing == null) {
      state.set(dir, { bumpType, causes: /* @__PURE__ */ new Set([cause]), dependencyUpdates: /* @__PURE__ */ new Map() });
      return true;
    }
    existing.causes.add(cause);
    if (BUMP_ORDER[bumpType] > BUMP_ORDER[existing.bumpType]) {
      existing.bumpType = bumpType;
      return true;
    }
    return false;
  };
  const intentBumpFor = (intent, dir) => ctx.intentBumps.get(intent.id)?.get(dir);
  for (const [dir, pending] of pendingByDir.entries()) {
    if (selection != null && !selection.has(dir))
      continue;
    const direct = maxBumpType(pending.map((intent) => intentBumpFor(intent, dir)));
    if (direct != null) {
      bumpAtLeast(dir, direct, "intent");
    }
  }
  for (const [dir, laneConsumed] of laneConsumedByDir.entries()) {
    if (selection != null && !selection.has(dir))
      continue;
    if (lanesByDir.has(dir) || laneConsumed.length === 0)
      continue;
    const graduated = maxBumpType(laneConsumed.map((intent) => intentBumpFor(intent, dir)));
    if (graduated != null) {
      bumpAtLeast(dir, graduated, "intent");
    }
  }
  const cumulativeBump = (dir, planned) => {
    const laneConsumed = laneConsumedByDir.get(dir) ?? [];
    return maxBumpType([planned, ...laneConsumed.map((intent) => intentBumpFor(intent, dir))]) ?? planned;
  };
  const newVersions = /* @__PURE__ */ new Map();
  const computeVersions = () => {
    newVersions.clear();
    for (const [dir, pkgState] of state.entries()) {
      const participant = participants.get(dir);
      newVersions.set(dir, computeNewVersion(participant, pkgState.bumpType, {
        laneTag: lanesByDir.get(dir),
        cumulativeBump: cumulativeBump(dir, pkgState.bumpType),
        firstRelease: opts3.unpublishedDirs?.has(dir) ?? false
      }));
    }
    applyFixedGroupVersions({ participants, state, newVersions, cumulativeBump, fixedGroups, lanesByDir });
    applyEpicBandVersions({ participants, state, newVersions, epics, lanesByDir });
  };
  for (let changed = true; changed; ) {
    changed = false;
    computeVersions();
    for (const dependent of participants.values()) {
      for (const dep of dependent.internalDeps) {
        const target2 = participants.get(dep.targetDir);
        const targetNewVersion = newVersions.get(dep.targetDir);
        if (target2 == null || targetNewVersion == null)
          continue;
        const materializedRange = materializeWorkspaceRange(dep.spec, target2.currentVersion);
        if (materializedRange == null || (0, import_semver61.satisfies)(targetNewVersion, materializedRange))
          continue;
        if (bumpAtLeast(dependent.dir, "patch", "dependencies")) {
          changed = true;
        }
        state.get(dependent.dir).dependencyUpdates.set(dep.targetName, targetNewVersion);
      }
    }
    for (const group of fixedGroups) {
      const groupBump = maxBumpType(group.map((dir) => state.get(dir)?.bumpType));
      if (groupBump == null)
        continue;
      for (const dir of group) {
        if (bumpAtLeast(dir, groupBump, "fixed")) {
          changed = true;
        }
      }
    }
    for (const epic of epics) {
      if (epicRebaseFloor(epic, participants, newVersions) == null)
        continue;
      for (const memberDir of epic.memberDirs) {
        if (bumpAtLeast(memberDir, "major", "epic")) {
          changed = true;
        }
      }
    }
  }
  computeVersions();
  const releases = [];
  for (const [dir, pkgState] of state.entries()) {
    const participant = participants.get(dir);
    const consumedForChangelog = [
      ...pendingByDir.get(dir) ?? [],
      ...lanesByDir.has(dir) ? [] : laneConsumedByDir.get(dir) ?? []
    ];
    releases.push({
      name: participant.name,
      dir,
      rootDir: participant.rootDir,
      currentVersion: participant.currentVersion,
      newVersion: opts3.snapshotSuffix != null ? `0.0.0-${opts3.snapshotSuffix}` : newVersions.get(dir),
      bumpType: pkgState.bumpType,
      intents: consumedForChangelog,
      dependencyUpdates: Array.from(pkgState.dependencyUpdates.entries()).map(([depName, newVersion]) => ({ name: depName, newVersion })).sort((left, right) => left.name.localeCompare(right.name)),
      causes: Array.from(pkgState.causes).sort()
    });
  }
  releases.sort((left, right) => left.name.localeCompare(right.name) || left.dir.localeCompare(right.dir));
  assertNoDuplicateReleaseIdentity(releases);
  if (opts3.snapshotSuffix == null) {
    enforceEpicBands(epics, participants, newVersions);
    enforceMaxBump(releases, opts3.versioning);
  }
  return { releases };
}
function assertNoDuplicateReleaseIdentity(releases) {
  const byIdentity = /* @__PURE__ */ new Map();
  for (const release of releases) {
    const identity5 = `${release.name}@${release.newVersion}`;
    const other = byIdentity.get(identity5);
    if (other != null) {
      throw new PnpmError("VERSIONING_DUPLICATE_RELEASE", `Two projects both release ${identity5}: ./${other} and ./${release.dir}. A package name and version identify one published artifact, so same-named projects must release on different version lines (e.g. different lanes or majors).`);
    }
    byIdentity.set(identity5, release.dir);
  }
}
function collectParticipants(projects, refs, opts3) {
  const ignoredDirs = /* @__PURE__ */ new Set();
  for (const ref of opts3.versioning?.ignore ?? []) {
    for (const dir of resolveConfigRef(refs, ref, "versioning.ignore")) {
      ignoredDirs.add(dir);
    }
  }
  const participants = /* @__PURE__ */ new Map();
  for (const project of projects) {
    const { name, version: version2 } = project.manifest;
    const dir = toProjectDir(opts3.workspaceDir, project.rootDir);
    if (name == null || version2 == null || (0, import_semver61.valid)(version2) == null || ignoredDirs.has(dir))
      continue;
    participants.set(dir, {
      name,
      dir,
      rootDir: project.rootDir,
      currentVersion: version2,
      manifest: project.manifest,
      internalDeps: []
    });
  }
  for (const participant of participants.values()) {
    for (const fieldName of PROPAGATED_DEP_FIELDS) {
      for (const [alias, spec] of Object.entries(participant.manifest[fieldName] ?? {})) {
        const targetName = internalDepTargetName(alias, spec, refs);
        if (targetName == null)
          continue;
        const targetDirs = refs.nameToDirs(targetName).filter((dir) => participants.has(dir));
        if (targetDirs.length === 0)
          continue;
        if (targetDirs.length > 1) {
          throw new PnpmError("VERSIONING_AMBIGUOUS_PACKAGE", `Package ${participant.name} (./${participant.dir}) depends on ${targetName}, which matches multiple workspace projects: ${targetDirs.map((dir) => `./${dir}`).join(", ")}`);
        }
        participant.internalDeps.push({ targetDir: targetDirs[0], targetName, fieldName, alias, spec });
      }
    }
  }
  return participants;
}
function internalDepTargetName(alias, spec, refs) {
  if (spec.startsWith("workspace:")) {
    const targetName = WorkspaceSpec.parse(spec)?.alias ?? alias;
    return refs.nameToDirs(targetName).length > 0 ? targetName : null;
  }
  if (refs.nameToDirs(alias).length === 0)
    return null;
  if (spec.startsWith("catalog:") || (0, import_semver61.validRange)(spec) != null)
    return alias;
  return null;
}
function resolveConfigRef(refs, ref, settingName) {
  const dirs2 = refs.refToDirs(ref);
  if (dirs2.length > 1) {
    throw new PnpmError("VERSIONING_AMBIGUOUS_PACKAGE", `${settingName} references ${ref}, which matches multiple workspace projects: ${dirs2.map((dir) => `./${dir}`).join(", ")}. Reference the project by directory instead.`);
  }
  return dirs2;
}
function resolveLanes(refs, participants, versioning) {
  const lanesByDir = /* @__PURE__ */ new Map();
  for (const [ref, lane2] of Object.entries(versioning?.lanes ?? {})) {
    if (lane2.toLowerCase() === "main") {
      throw new PnpmError("VERSIONING_INVALID_LANE_NAME", `versioning.lanes assigns ${ref} to the "${lane2}" lane, but "main" is the reserved default lane. Remove the entry instead.`);
    }
    for (const dir of resolveConfigRef(refs, ref, "versioning.lanes")) {
      if (participants.has(dir)) {
        lanesByDir.set(dir, lane2);
      }
    }
  }
  return lanesByDir;
}
function resolveFixedGroups(refs, participants, versioning) {
  return (versioning?.fixed ?? []).map((group) => group.flatMap((ref) => resolveConfigRef(refs, ref, "versioning.fixed")).filter((dir) => participants.has(dir)));
}
function validateFixedGroupLanes(fixedGroups, lanesByDir, versioning) {
  for (const [index2, group] of fixedGroups.entries()) {
    const tags = new Set(group.map((dir) => lanesByDir.get(dir)));
    if (tags.size > 1) {
      throw new PnpmError("VERSIONING_CONFLICTING_CONFIG", `The fixed group [${(versioning?.fixed ?? [])[index2].join(", ")}] mixes packages on different lanes. A fixed group must move between lanes together.`);
    }
  }
}
function resolveEpics(refs, participants, versioning) {
  return (versioning?.epics ?? []).map((epic) => {
    const leadDir = resolveConfigRef(refs, epic.lead, "versioning.epics lead")[0];
    if (leadDir == null || !participants.has(leadDir)) {
      throw new PnpmError("VERSIONING_EPIC_UNKNOWN_LEAD", `versioning.epics lead "${epic.lead}" is not a releasable workspace project (it must be a named package with a semver version).`);
    }
    const selectors = epic.packages.map(compileEpicSelector);
    const memberDirs = /* @__PURE__ */ new Set();
    for (const participant of participants.values()) {
      if (participant.dir === leadDir)
        continue;
      if (matchesEpicSelectors(selectors, participant.dir, participant.name)) {
        memberDirs.add(participant.dir);
      }
    }
    return { leadRef: epic.lead, leadDir, memberDirs };
  });
}
function compileEpicSelector(selector) {
  const negated = selector.startsWith("!");
  const body = negated ? selector.slice(1) : selector;
  const onDir = isDirRef(body);
  return { negated, onDir, match: wildcardMatch(onDir ? normalizeProjectDir(body) : body) };
}
function matchesEpicSelectors(selectors, dir, name) {
  let included = false;
  for (const selector of selectors) {
    if (selector.match(selector.onDir ? dir : name)) {
      included = !selector.negated;
    }
  }
  return included;
}
function wildcardMatch(pattern) {
  if (pattern === "*")
    return () => true;
  let source = "^";
  for (const character of pattern) {
    source += character === "*" ? ".*" : character.replace(/[.+?^${}()|[\]\\]/g, "\\$&");
  }
  source += "$";
  const regexp = new RegExp(source);
  return (input) => regexp.test(input);
}
function validateEpics(epics, fixedGroups) {
  const epicOfMember = /* @__PURE__ */ new Map();
  for (const epic of epics) {
    for (const memberDir of epic.memberDirs) {
      const other = epicOfMember.get(memberDir);
      if (other != null && other !== epic.leadRef) {
        throw new PnpmError("VERSIONING_EPIC_OVERLAP", `Package ./${memberDir} is matched by two epics (leads "${other}" and "${epic.leadRef}"). A package can belong to at most one epic.`);
      }
      epicOfMember.set(memberDir, epic.leadRef);
    }
  }
  for (const epic of epics) {
    for (const group of fixedGroups) {
      if (!group.some((dir) => epic.memberDirs.has(dir)))
        continue;
      const outsiders = group.filter((dir) => !epic.memberDirs.has(dir));
      if (outsiders.length > 0) {
        throw new PnpmError("VERSIONING_EPIC_FIXED_GROUP_CONFLICT", `A fixed group straddles the epic led by "${epic.leadRef}": it mixes epic members with outside package(s) ${outsiders.map((dir) => `./${dir}`).join(", ")}. A fixed group must sit entirely inside or entirely outside an epic.`);
      }
    }
  }
}
function resolveIntents(intents, refs, participants) {
  const intentBumps = /* @__PURE__ */ new Map();
  for (const intent of intents) {
    const byDir = /* @__PURE__ */ new Map();
    for (const [ref, bumpType] of Object.entries(intent.releases)) {
      const dirs2 = refs.refToDirs(ref);
      if (dirs2.length === 0) {
        throw new PnpmError("VERSIONING_UNKNOWN_PACKAGE", `Change intent file ${intent.filePath} names ${ref}, which is not a package in this workspace`);
      }
      if (dirs2.length > 1) {
        throw new PnpmError("VERSIONING_AMBIGUOUS_PACKAGE", `Change intent file ${intent.filePath} names ${ref}, which matches multiple workspace projects: ${dirs2.map((dir2) => `./${dir2}`).join(", ")}. Reference the project by directory instead, e.g. "./` + dirs2[0] + '": ' + bumpType);
      }
      const dir = dirs2[0];
      if (bumpType !== "none" && !participants.has(dir)) {
        throw new PnpmError("VERSIONING_UNRELEASABLE_PACKAGE", `Change intent file ${intent.filePath} requests a ${bumpType} release of ${ref}, which cannot release (it is listed in versioning.ignore, has no version field, or has a non-semver version). Remove the entry or change it to "none".`);
      }
      const existing = byDir.get(dir);
      if (existing == null || bumpType !== "none" && BUMP_ORDER[bumpType] > (existing === "none" ? 0 : BUMP_ORDER[existing])) {
        byDir.set(dir, bumpType);
      }
    }
    intentBumps.set(intent.id, byDir);
  }
  return intentBumps;
}
function assertInternalDepsUseWorkspaceProtocol(participants) {
  for (const participant of participants.values()) {
    for (const dep of participant.internalDeps) {
      if (!dep.spec.startsWith("workspace:")) {
        throw new PnpmError("VERSIONING_INTERNAL_RANGE", `Package ${participant.name} declares the internal dependency ${dep.alias} in ${dep.fieldName} as "${dep.spec}". Internal dependencies must use the workspace: protocol so that dependency ranges never need rewriting at release time.`);
      }
    }
  }
}
function collectPendingIntents(ctx) {
  const pending = /* @__PURE__ */ new Map();
  for (const dir of ctx.participants.keys()) {
    const consumed = ctx.consumptionOf(dir);
    const pkgIntents = ctx.opts.intents.filter((intent) => {
      const bump = ctx.intentBumps.get(intent.id)?.get(dir);
      return bump != null && bump !== "none" && !consumed.allIds.has(intent.id);
    });
    if (pkgIntents.length > 0) {
      pending.set(dir, pkgIntents);
    }
  }
  return pending;
}
function collectLaneConsumedIntents(ctx) {
  const laneConsumed = /* @__PURE__ */ new Map();
  for (const dir of ctx.participants.keys()) {
    const consumed = ctx.consumptionOf(dir);
    if (consumed.prereleaseOnlyIds.size === 0)
      continue;
    const pkgIntents = ctx.opts.intents.filter((intent) => {
      const bump = ctx.intentBumps.get(intent.id)?.get(dir);
      return bump != null && bump !== "none" && consumed.prereleaseOnlyIds.has(intent.id);
    });
    if (pkgIntents.length > 0) {
      laneConsumed.set(dir, pkgIntents);
    }
  }
  return laneConsumed;
}
function maxBumpType(types3) {
  let result2 = null;
  for (const type4 of types3) {
    if (type4 !== "patch" && type4 !== "minor" && type4 !== "major")
      continue;
    if (result2 == null || BUMP_ORDER[type4] > BUMP_ORDER[result2]) {
      result2 = type4;
    }
  }
  return result2;
}
function computeNewVersion(participant, bumpType, opts3) {
  const current = participant.currentVersion;
  if (opts3.laneTag == null) {
    if (opts3.firstRelease)
      return current;
    if ((0, import_semver61.prerelease)(current) == null) {
      return (0, import_semver61.inc)(current, bumpType);
    }
    return escalateStableTarget(stablePart(current), opts3.cumulativeBump);
  }
  if (opts3.firstRelease) {
    return isPrereleaseOnLane(current, opts3.laneTag) ? current : `${stablePart(current)}-${opts3.laneTag}.0`;
  }
  const target2 = (0, import_semver61.prerelease)(current) == null ? (0, import_semver61.inc)(current, opts3.cumulativeBump) : escalateStableTarget(stablePart(current), opts3.cumulativeBump);
  return `${target2}-${opts3.laneTag}.${nextPrereleaseNumber(current, target2, opts3.laneTag)}`;
}
function isPrereleaseOnLane(version2, laneTag) {
  const prerelease = (0, import_semver61.prerelease)(version2);
  return prerelease != null && String(prerelease[0]) === laneTag;
}
function escalateStableTarget(target2, cumulativeBump) {
  const [major, minor, patch] = target2.split(".").map(Number);
  switch (cumulativeBump) {
    case "major":
      return minor === 0 && patch === 0 ? target2 : `${major + 1}.0.0`;
    case "minor":
      return patch === 0 ? target2 : `${major}.${minor + 1}.0`;
    case "patch":
      return target2;
  }
}
function stablePart(version2) {
  return version2.split("-")[0];
}
function nextPrereleaseNumber(current, target2, laneTag) {
  const currentPrerelease = (0, import_semver61.prerelease)(current);
  if (currentPrerelease == null)
    return 0;
  const [currentTag, currentN] = currentPrerelease;
  if (stablePart(current) !== target2 || String(currentTag) !== laneTag || typeof currentN !== "number")
    return 0;
  return currentN + 1;
}
function applyFixedGroupVersions({ participants, state, newVersions, cumulativeBump, fixedGroups, lanesByDir }) {
  for (const group of fixedGroups) {
    const bumpedMembers = group.filter((dir) => state.has(dir));
    if (bumpedMembers.length === 0)
      continue;
    const groupBump = maxBumpType(bumpedMembers.map((dir) => cumulativeBump(dir, state.get(dir).bumpType)));
    const highestCurrent = group.map((dir) => participants.get(dir).currentVersion).sort(import_semver61.compare).at(-1);
    const target2 = (0, import_semver61.prerelease)(highestCurrent) == null ? (0, import_semver61.inc)(highestCurrent, groupBump) : escalateStableTarget(stablePart(highestCurrent), groupBump);
    const laneTag = lanesByDir.get(group[0]);
    let sharedVersion = target2;
    if (laneTag != null) {
      const nextN = Math.max(...group.map((dir) => nextPrereleaseNumber(participants.get(dir).currentVersion, target2, laneTag)));
      sharedVersion = `${target2}-${laneTag}.${nextN}`;
    }
    for (const dir of group) {
      if (state.has(dir)) {
        newVersions.set(dir, sharedVersion);
      }
    }
  }
}
function epicRebaseFloor(epic, participants, newVersions) {
  const lead = participants.get(epic.leadDir);
  const newLeadVersion = newVersions.get(epic.leadDir);
  if (lead == null || newLeadVersion == null || (0, import_semver61.prerelease)(newLeadVersion) != null)
    return null;
  const newMajor = Number(newLeadVersion.split(".")[0]);
  const currentMajor = Number(lead.currentVersion.split(".")[0]);
  return newMajor > currentMajor ? newMajor * 100 : null;
}
function applyEpicBandVersions({ participants, state, newVersions, epics, lanesByDir }) {
  for (const epic of epics) {
    const floor = epicRebaseFloor(epic, participants, newVersions);
    if (floor == null)
      continue;
    const target2 = `${floor}.0.0`;
    for (const memberDir of epic.memberDirs) {
      if (!state.has(memberDir))
        continue;
      const laneTag = lanesByDir.get(memberDir);
      newVersions.set(memberDir, laneTag == null ? target2 : `${target2}-${laneTag}.${nextPrereleaseNumber(participants.get(memberDir).currentVersion, target2, laneTag)}`);
    }
  }
}
function epicBandMajor(epic, participants, newVersions) {
  const floor = epicRebaseFloor(epic, participants, newVersions);
  return floor != null ? floor / 100 : Number(participants.get(epic.leadDir).currentVersion.split(".")[0]);
}
function enforceEpicBands(epics, participants, newVersions) {
  for (const epic of epics) {
    const bandMajor = epicBandMajor(epic, participants, newVersions);
    const low = bandMajor * 100;
    const high = low + 99;
    for (const memberDir of epic.memberDirs) {
      const memberVersion = newVersions.get(memberDir);
      if (memberVersion == null)
        continue;
      const memberMajor = Number(memberVersion.split(".")[0]);
      if (memberMajor < low || memberMajor > high) {
        throw new PnpmError("VERSIONING_EPIC_OUT_OF_BAND", `The release plan takes ${participants.get(memberDir).name} to ${memberVersion}, whose major ${memberMajor} is outside the band ${low}-${high} of the epic led by "${epic.leadRef}" (major ${bandMajor}). ` + (memberMajor > high ? "The band is exhausted - the lead must advance to a new major to open the next band." : "Re-base the member into the band, or remove it from the epic."));
      }
    }
  }
}
function materializeWorkspaceRange(spec, depCurrentVersion) {
  const parsed = WorkspaceSpec.parse(spec);
  if (parsed == null)
    return null;
  switch (parsed.version) {
    case "^":
      return `^${depCurrentVersion}`;
    case "~":
      return `~${depCurrentVersion}`;
    case "*":
    case "":
      return depCurrentVersion;
    default:
      return parsed.version;
  }
}
function enforceMaxBump(releases, versioning) {
  const maxBump = versioning?.maxBump;
  if (maxBump == null)
    return;
  for (const release of releases) {
    const effectiveBump = effectiveBumpClass(release);
    if (BUMP_ORDER[effectiveBump] <= BUMP_ORDER[maxBump])
      continue;
    const intentFiles = release.intents.filter((intent) => Object.values(intent.releases).includes(effectiveBump)).map((intent) => intent.filePath);
    const raisedBy = intentFiles.length > 0 ? `intent file(s) ${intentFiles.join(", ")}` : `constraint chain: ${release.causes.join(", ")}`;
    throw new PnpmError("VERSIONING_MAX_BUMP_EXCEEDED", `The release plan bumps ${release.name} by ${effectiveBump}, but versioning.maxBump caps releases from this branch at ${maxBump}. Raised by ${raisedBy}.`);
  }
}
function effectiveBumpClass(release) {
  const diffClass = (0, import_semver61.diff)(release.currentVersion, release.newVersion);
  const normalized = diffClass?.replace(/^pre(?!release)/, "");
  return maxBumpType([release.bumpType, normalized ?? void 0]) ?? release.bumpType;
}
var import_semver61, BUMP_ORDER, PROPAGATED_DEP_FIELDS;
var init_assembleReleasePlan = __esm({
  "../releasing/versioning/lib/assembleReleasePlan.js"() {
    "use strict";
    init_lib2();
    init_lib36();
    import_semver61 = __toESM(require_semver2(), 1);
    init_ledger();
    BUMP_ORDER = { patch: 1, minor: 2, major: 3 };
    PROPAGATED_DEP_FIELDS = ["dependencies", "optionalDependencies", "peerDependencies"];
  }
});

// ../releasing/versioning/lib/changelog.js
import fs113 from "node:fs/promises";
import path206 from "node:path";
import util61 from "node:util";
function composeChangelogSection(release) {
  const entriesByBump = { major: [], minor: [], patch: [] };
  for (const intent of release.intents) {
    const bumpType = releaseBumpFor(intent.releases, release);
    if (bumpType == null || bumpType === "none" || intent.summary === "")
      continue;
    entriesByBump[bumpType].push(formatListItem(intent.summary));
  }
  if (release.dependencyUpdates.length > 0) {
    const depLines = release.dependencyUpdates.map((dep) => `  - ${dep.name}@${dep.newVersion}`);
    entriesByBump.patch.push(`- Updated dependencies:
${depLines.join("\n")}`);
  }
  const parts = [`## ${release.newVersion}`];
  for (const bumpType of ["major", "minor", "patch"]) {
    if (entriesByBump[bumpType].length === 0)
      continue;
    parts.push(`### ${SECTION_TITLES[bumpType]}`);
    parts.push(entriesByBump[bumpType].join("\n\n"));
  }
  return `${parts.join("\n\n")}
`;
}
function releaseBumpFor(releases, release) {
  for (const [ref, bumpType] of Object.entries(releases)) {
    if (ref === release.name)
      return bumpType;
    if (isDirRef(ref) && normalizeProjectDir(ref) === release.dir)
      return bumpType;
  }
  return void 0;
}
function formatListItem(summary) {
  const [firstLine, ...restLines] = summary.split("\n");
  const rest = restLines.map((line) => line === "" ? "" : `  ${line}`);
  return ["- " + firstLine, ...rest].join("\n");
}
function renderChangelog(existing, pkgName, section) {
  if (existing == null) {
    return `# ${pkgName}

${section}`;
  }
  const newlineIndex = existing.indexOf("\n");
  const firstLine = newlineIndex === -1 ? existing : existing.slice(0, newlineIndex);
  if (firstLine.startsWith("# ")) {
    const body = (newlineIndex === -1 ? "" : existing.slice(newlineIndex + 1)).replace(/^[\r\n]+/, "");
    return `${firstLine}

${section}${body === "" ? "" : `
${body}`}`;
  }
  return `${section}
${existing}`;
}
async function prependChangelogSection(pkgDir, pkgName, section) {
  const changelogPath = path206.join(pkgDir, "CHANGELOG.md");
  let existing = null;
  try {
    existing = await fs113.readFile(changelogPath, "utf8");
  } catch (err2) {
    if (!(util61.types.isNativeError(err2) && "code" in err2 && err2.code === "ENOENT")) {
      throw err2;
    }
  }
  await fs113.writeFile(changelogPath, renderChangelog(existing, pkgName, section), "utf8");
}
var SECTION_TITLES;
var init_changelog = __esm({
  "../releasing/versioning/lib/changelog.js"() {
    "use strict";
    init_assembleReleasePlan();
    init_ledger();
    SECTION_TITLES = {
      major: "Major Changes",
      minor: "Minor Changes",
      patch: "Patch Changes"
    };
  }
});

// ../releasing/versioning/lib/pendingChangelog.js
import fs114 from "node:fs/promises";
import path207 from "node:path";
import util62 from "node:util";
function pendingChangelogFilename(pkgName, version2) {
  return `${pkgName}@${version2}`.replaceAll("/", "!") + ".md";
}
function pendingChangelogPath(workspaceDir, pkgName, version2) {
  return path207.join(workspaceDir, CHANGES_DIR, PENDING_CHANGELOGS_DIR, pendingChangelogFilename(pkgName, version2));
}
async function listPendingChangelogs(workspaceDir) {
  const dir = path207.join(workspaceDir, CHANGES_DIR, PENDING_CHANGELOGS_DIR);
  let fileNames;
  try {
    fileNames = await fs114.readdir(dir);
  } catch (err2) {
    if (util62.types.isNativeError(err2) && "code" in err2 && err2.code === "ENOENT") {
      return [];
    }
    throw err2;
  }
  const pending = [];
  for (const fileName of fileNames) {
    if (!fileName.endsWith(".md"))
      continue;
    const key = fileName.slice(0, -".md".length);
    const atIndex = key.lastIndexOf("@");
    if (atIndex <= 0)
      continue;
    pending.push({ name: key.slice(0, atIndex).replaceAll("!", "/"), version: key.slice(atIndex + 1) });
  }
  return pending;
}
async function writePendingChangelog(workspaceDir, pkgName, version2, section) {
  const filePath = pendingChangelogPath(workspaceDir, pkgName, version2);
  await fs114.mkdir(path207.dirname(filePath), { recursive: true });
  await fs114.writeFile(filePath, section, "utf8");
}
async function readPendingChangelog(workspaceDir, pkgName, version2) {
  try {
    return await fs114.readFile(pendingChangelogPath(workspaceDir, pkgName, version2), "utf8");
  } catch (err2) {
    if (util62.types.isNativeError(err2) && "code" in err2 && err2.code === "ENOENT") {
      return null;
    }
    throw err2;
  }
}
async function removePendingChangelog(workspaceDir, pkgName, version2) {
  try {
    await fs114.rm(pendingChangelogPath(workspaceDir, pkgName, version2));
  } catch (err2) {
    if (!(util62.types.isNativeError(err2) && "code" in err2 && err2.code === "ENOENT")) {
      throw err2;
    }
  }
}
var PENDING_CHANGELOGS_DIR;
var init_pendingChangelog = __esm({
  "../releasing/versioning/lib/pendingChangelog.js"() {
    "use strict";
    init_intents();
    PENDING_CHANGELOGS_DIR = "changelogs";
  }
});

// ../releasing/versioning/lib/applyReleasePlan.js
import fs115 from "node:fs/promises";
function changelogStorage(versioning) {
  return versioning?.changelog?.storage ?? "registry";
}
async function applyReleasePlan(plan, opts3) {
  const storage = changelogStorage(opts3.versioning);
  const applied = await Promise.all(plan.releases.map(async (release) => {
    const { manifest, writeProjectManifest: writeProjectManifest2 } = await readProjectManifest(release.rootDir);
    manifest.version = release.newVersion;
    await writeProjectManifest2(manifest);
    return {
      name: release.name,
      currentVersion: release.currentVersion,
      newVersion: release.newVersion
    };
  }));
  await Promise.all(plan.releases.map(async (release) => {
    const section = composeChangelogSection(release);
    if (storage === "repository") {
      await prependChangelogSection(release.rootDir, release.name, section);
    } else {
      await writePendingChangelog(opts3.workspaceDir, release.name, release.newVersion, section);
    }
  }));
  const newEntries = {};
  for (const release of plan.releases) {
    if (release.intents.length === 0)
      continue;
    newEntries[`${release.name}@${release.newVersion}`] = {
      dir: release.dir,
      intents: release.intents.map((intent) => intent.id).sort()
    };
  }
  const ledger = await appendToLedger(opts3.workspaceDir, newEntries);
  const refs = indexProjectRefs(opts3.projects, opts3.workspaceDir);
  const consumedLedger = storage === "repository" ? ledger : await confirmPublished(ledger, opts3);
  const consumptionOf = buildConsumptionIndex(consumedLedger, refs.nameToDirs);
  const laneDirs = /* @__PURE__ */ new Set();
  for (const ref of Object.keys(opts3.versioning?.lanes ?? {})) {
    for (const dir of refs.refToDirs(ref)) {
      laneDirs.add(dir);
    }
  }
  const deletable = opts3.allIntents.filter((intent) => Object.entries(intent.releases).every(([ref, bumpType]) => {
    if (bumpType === "none")
      return true;
    const dirs2 = refs.refToDirs(ref);
    if (dirs2.length !== 1)
      return false;
    const consumption = consumptionOf(dirs2[0]);
    return consumption.allIds.has(intent.id) && !(laneDirs.has(dirs2[0]) && consumption.prereleaseOnlyIds.has(intent.id));
  }));
  await Promise.all(deletable.map(async (intent) => fs115.rm(intent.filePath)));
  return applied;
}
async function confirmPublished(ledger, opts3) {
  const { verifyPublished } = opts3;
  const confirmed = /* @__PURE__ */ Object.create(null);
  if (verifyPublished == null)
    return confirmed;
  const pending = await listPendingChangelogs(opts3.workspaceDir);
  await Promise.all(pending.map(async ({ name, version: version2 }) => {
    const section = await readPendingChangelog(opts3.workspaceDir, name, version2);
    if (section == null)
      return;
    if (!await verifyPublished(name, version2, section))
      return;
    const key = `${name}@${version2}`;
    if (ledger[key] != null)
      confirmed[key] = ledger[key];
    await removePendingChangelog(opts3.workspaceDir, name, version2);
  }));
  return confirmed;
}
var init_applyReleasePlan = __esm({
  "../releasing/versioning/lib/applyReleasePlan.js"() {
    "use strict";
    init_lib15();
    init_assembleReleasePlan();
    init_changelog();
    init_ledger();
    init_pendingChangelog();
  }
});

// ../releasing/versioning/lib/index.js
var init_lib169 = __esm({
  "../releasing/versioning/lib/index.js"() {
    "use strict";
    init_applyReleasePlan();
    init_assembleReleasePlan();
    init_changelog();
    init_intents();
    init_ledger();
    init_pendingChangelog();
  }
});

// ../releasing/commands/lib/publishedNames.js
function publishedName(manifest) {
  const renamed2 = manifest.publishConfig?.name;
  return typeof renamed2 === "string" && renamed2 !== "" ? renamed2 : manifest.name;
}
function publishedNameByManifestName(projects) {
  const renames = /* @__PURE__ */ new Map();
  for (const { manifest } of projects) {
    const published = publishedName(manifest);
    if (manifest.name && published != null && published !== manifest.name) {
      renames.set(manifest.name, published);
    }
  }
  return renames;
}
var init_publishedNames = __esm({
  "../releasing/commands/lib/publishedNames.js"() {
    "use strict";
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/events-universal/1.0.1/ad995f3f53e57cef158856108b2d9efd2788f3935bdac476cee6308963825cf2/node_modules/events-universal/default.js
var require_default = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/events-universal/1.0.1/ad995f3f53e57cef158856108b2d9efd2788f3935bdac476cee6308963825cf2/node_modules/events-universal/default.js"(exports2, module2) {
    module2.exports = __require("events");
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/fast-fifo/1.3.2/b6533611649aa221ffbeec4e18526a92a2e7afdceb5d452fc8af48f0e80b0f3f/node_modules/fast-fifo/fixed-size.js
var require_fixed_size = __commonJS({
  "../../../../../setup-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;
      }
    };
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/fast-fifo/1.3.2/b6533611649aa221ffbeec4e18526a92a2e7afdceb5d452fc8af48f0e80b0f3f/node_modules/fast-fifo/index.js
var require_fast_fifo = __commonJS({
  "../../../../../setup-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;
      }
    };
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/b4a/1.8.1/030010a2f1bfe2d9ee726c26dd8a10daba27251ddf27640b9142025f9233e7c1/node_modules/b4a/index.js
var require_b4a = __commonJS({
  "../../../../../setup-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 byteLength2(string, encoding) {
      return Buffer.byteLength(string, encoding);
    }
    function compare3(a2, b) {
      return Buffer.compare(a2, b);
    }
    function concat2(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: byteLength2,
      compare: compare3,
      concat: concat2,
      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
    };
  }
});

// ../../../../../setup-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({
  "../../../../../setup-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 "";
      }
    };
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/text-decoder/1.2.7/b3213d62c3bf59365d2d9a8f1e39dc74e32ec82e9e2d2d94f58e46d62515a050/node_modules/text-decoder/lib/utf8-decoder.js
var require_utf8_decoder = __commonJS({
  "../../../../../setup-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 i4 = end; i4 < data.byteLength; i4++) {
          const byte = data[i4];
          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";
            i4--;
            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 i4 = len - 1;
      while (i4 > limit && (data[i4] & 192) === 128) i4--;
      if (i4 < start) return 0;
      const byte = data[i4];
      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 - i4;
      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 i4 = len - 2;
      while (i4 >= limit && (data[i4] & 192) === 128) i4--;
      if (i4 < 0) return 1;
      const first = data[i4];
      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 - i4 !== needed) return 1;
      if (needed >= 3) {
        const second = data[i4 + 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;
    }
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/text-decoder/1.2.7/b3213d62c3bf59365d2d9a8f1e39dc74e32ec82e9e2d2d94f58e46d62515a050/node_modules/text-decoder/index.js
var require_text_decoder = __commonJS({
  "../../../../../setup-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);
      }
    }
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/streamx/2.28.0/0c181a0d7e135c3323ef2e83cec9ad65d6827d199ea03bf2974929b0c269b0df/node_modules/streamx/lib/errors.js
var require_errors7 = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/streamx/2.28.0/0c181a0d7e135c3323ef2e83cec9ad65d6827d199ea03bf2974929b0c269b0df/node_modules/streamx/lib/errors.js"(exports2, module2) {
    module2.exports = class StreamError extends Error {
      constructor(msg, code, fn = StreamError) {
        super(msg);
        this.code = code;
        if (Error.captureStackTrace) {
          Error.captureStackTrace(this, fn);
        }
      }
      static isStreamDestroyed(err2) {
        return err2 && err2.code === "STREAM_DESTROYED";
      }
      static isPrematureClose(err2) {
        return err2 && err2.code === "PREMATURE_CLOSE";
      }
      static isAborted(err2) {
        return err2 && err2.code === "ABORTED";
      }
      static isBadArgument(err2) {
        return err2 && err2.code === "BAD_ARGUMENT";
      }
      get name() {
        return "StreamError";
      }
      static STREAM_DESTROYED() {
        return new StreamError("Stream was destroyed", "STREAM_DESTROYED", StreamError.STREAM_DESTROYED);
      }
      static PREMATURE_CLOSE(msg = "Premature close") {
        return new StreamError(msg, "PREMATURE_CLOSE", StreamError.PREMATURE_CLOSE);
      }
      static ABORTED() {
        return new StreamError("Stream aborted", "ABORTED", StreamError.ABORTED);
      }
      static BAD_ARGUMENT(msg = "Bad argument") {
        return new StreamError(msg, "BAD_ARGUMENT", StreamError.BAD_ARGUMENT);
      }
    };
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/streamx/2.28.0/0c181a0d7e135c3323ef2e83cec9ad65d6827d199ea03bf2974929b0c269b0df/node_modules/streamx/index.js
var require_streamx = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/streamx/2.28.0/0c181a0d7e135c3323ef2e83cec9ad65d6827d199ea03bf2974929b0c269b0df/node_modules/streamx/index.js"(exports2, module2) {
    var { EventEmitter: EventEmitter4 } = require_default();
    var FIFO = require_fast_fifo();
    var TextDecoder2 = require_text_decoder();
    var StreamError = require_errors7();
    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: byteLength2, 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 || byteLength2 || 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: byteLength2, 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 || byteLength2 || 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 StreamError.BAD_ARGUMENT("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 i4 = 0; i4 < pending.length - 1; i4++) {
          const data2 = pending[i4];
          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, err2) {
        if (err2) this.error = err2;
        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 || StreamError.PREMATURE_CLOSE("Writable stream closed"));
            }
            return;
          }
        }
        if (stream2 === this.from) {
          this.from = null;
          if (this.to !== null) {
            if ((stream2._duplexState & READ_DONE) === 0) {
              this.to.destroy(this.error || StreamError.PREMATURE_CLOSE("Readable stream closed"));
            }
            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(err2) {
      const stream2 = this.stream;
      if (err2) stream2.destroy(err2);
      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(err2) {
      const stream2 = this.stream;
      if (!err2 && !StreamError.isStreamDestroyed(this.error)) err2 = this.error;
      if (err2) stream2.emit("error", err2);
      stream2._duplexState |= DESTROYED;
      stream2.emit("close");
      const rs = stream2._readableState;
      const ws = stream2._writableState;
      if (rs !== null && rs.pipeline !== null) {
        rs.pipeline.done(stream2, err2);
      }
      if (ws !== null) {
        while (ws.drains !== null && ws.drains.length > 0) {
          ws.drains.shift().resolve(false);
        }
        if (ws.pipeline !== null) {
          ws.pipeline.done(stream2, err2);
        }
      }
    }
    function afterWrite(err2) {
      const stream2 = this.stream;
      if (err2) stream2.destroy(err2);
      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(err2) {
      if (err2) this.stream.destroy(err2);
      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 i4 = 0; i4 < drains.length; i4++) {
        if (--drains[i4].writes === 0) {
          drains.shift().resolve(true);
          i4--;
        }
      }
    }
    function afterOpen(err2) {
      const stream2 = this.stream;
      if (err2) stream2.destroy(err2);
      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(err2, data) {
      if (data !== void 0 && data !== null) this.push(data);
      this._writableState.afterWrite(err2);
    }
    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(opts3) {
        super();
        this._duplexState = 0;
        this._readableState = null;
        this._writableState = null;
        if (opts3) {
          if (opts3.open) this._open = opts3.open;
          if (opts3.destroy) this._destroy = opts3.destroy;
          if (opts3.predestroy) this._predestroy = opts3.predestroy;
          if (opts3.signal) opts3.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(err2) {
        if ((this._duplexState & DESTROY_STATUS) === 0) {
          if (!err2) err2 = StreamError.STREAM_DESTROYED();
          this._duplexState = (this._duplexState | DESTROYING) & NON_PRIMARY;
          if (this._readableState !== null) {
            this._readableState.highWaterMark = 0;
            this._readableState.error = err2;
          }
          if (this._writableState !== null) {
            this._writableState.highWaterMark = 0;
            this._writableState.error = err2;
          }
          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(opts3) {
        super(opts3);
        this._duplexState |= OPENING | WRITE_DONE | READ_READ_AHEAD;
        this._readableState = new ReadableState(this, opts3);
        if (opts3) {
          if (this._readableState.readAhead === false) this._duplexState &= READ_NO_READ_AHEAD;
          if (opts3.read) this._read = opts3.read;
          if (opts3.eagerOpen) this._readableState.updateNextTick();
          if (opts3.encoding) this.setEncoding(opts3.encoding);
        }
      }
      static deferred(fn, opts3) {
        const out = new PassThrough3(opts3);
        fn().then((src2) => {
          if (src2 === null) return out.end();
          if (out.destroying) return;
          pipeline2(src2, out, noop5);
        }).catch((err2) => out.destroy(err2));
        return out;
      }
      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, opts3) {
        let destroy;
        const rs = new _Readable({
          ...opts3,
          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, opts3) {
        if (isReadStreamx(data)) return data;
        if (data[asyncIterator]) return this._fromAsyncIterator(data[asyncIterator](), opts3);
        if (!Array.isArray(data)) data = data === void 0 ? [] : [data];
        let i4 = 0;
        return new _Readable({
          ...opts3,
          read(cb) {
            this.push(i4 === data.length ? null : data[i4++]);
            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", (err2) => {
          error = err2;
        });
        this.on("readable", onreadable);
        this.on("close", onclose);
        return {
          [asyncIterator]() {
            return this;
          },
          next() {
            return new Promise(function(resolve4, reject3) {
              promiseResolve = resolve4;
              promiseReject = reject3;
              const data = stream2.read();
              if (data !== null) ondata(data);
              else if ((stream2._duplexState & DESTROYED) !== 0) ondata(null);
            });
          },
          return() {
            return destroy(null);
          },
          throw(err2) {
            return destroy(err2);
          }
        };
        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(StreamError.STREAM_DESTROYED());
          } else {
            promiseResolve({ value: data, done: data === null });
          }
          promiseReject = promiseResolve = null;
        }
        function destroy(err2) {
          stream2.destroy(err2);
          return new Promise((resolve4, reject3) => {
            if (stream2._duplexState & DESTROYED) return resolve4({ value: void 0, done: true });
            stream2.once("close", function() {
              if (err2) reject3(err2);
              else resolve4({ value: void 0, done: true });
            });
          });
        }
      }
    };
    var Writable4 = class extends Stream {
      constructor(opts3) {
        super(opts3);
        this._duplexState |= OPENING | READ_DONE;
        this._writableState = new WritableState(this, opts3);
        if (opts3) {
          if (opts3.writev) this._writev = opts3.writev;
          if (opts3.write) this._write = opts3.write;
          if (opts3.final) this._final = opts3.final;
          if (opts3.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((resolve4) => {
          state.drains.push({ writes, resolve: resolve4 });
        });
      }
      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(opts3) {
        super(opts3);
        this._duplexState = OPENING | this._duplexState & READ_READ_AHEAD;
        this._writableState = new WritableState(this, opts3);
        if (opts3) {
          if (opts3.writev) this._writev = opts3.writev;
          if (opts3.write) this._write = opts3.write;
          if (opts3.final) this._final = opts3.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(opts3) {
        super(opts3);
        this._transformState = new TransformState(this);
        if (opts3) {
          if (opts3.transform) this._transform = opts3.transform;
          if (opts3.flush) this._flush = opts3.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(err2) {
        super.destroy(err2);
        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(err2, data) {
      const cb = this._transformState.afterFinal;
      if (err2) return cb(err2);
      if (data !== null && data !== void 0) this.push(data);
      this.push(null);
      cb(null);
    }
    function pipelinePromise(...streams) {
      return new Promise((resolve4, reject3) => {
        return pipeline2(...streams, (err2) => {
          if (err2) return reject3(err2);
          resolve4();
        });
      });
    }
    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 StreamError.BAD_ARGUMENT("Pipeline requires at least 2 streams");
      let src2 = all[0];
      let dest = null;
      let error = null;
      for (let i4 = 1; i4 < all.length; i4++) {
        dest = all[i4];
        if (isStreamx(src2)) {
          src2.pipe(dest, onerror);
        } else {
          errorHandle(src2, true, i4 > 1, onerror);
          src2.pipe(dest);
        }
        src2 = dest;
      }
      if (done) {
        let fin = false;
        const autoDestroy = isStreamx(dest) || !!(dest._writableState && dest._writableState.autoDestroy);
        dest.on("error", (err2) => {
          if (error === null) error = err2;
        });
        dest.on("finish", () => {
          fin = true;
          if (!autoDestroy) done(error);
        });
        if (autoDestroy) {
          dest.on("close", () => done(error || (fin ? null : StreamError.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(StreamError.PREMATURE_CLOSE());
          }
          if (wr && s._writableState && !s._writableState.ended) {
            return onerror2(StreamError.PREMATURE_CLOSE());
          }
        }
      }
      function onerror(err2) {
        if (!err2 || error) return;
        error = err2;
        for (const s of all) {
          s.destroy(err2);
        }
      }
    }
    function echo(s) {
      return s;
    }
    function isStream4(stream2) {
      return !!stream2._readableState || !!stream2._writableState;
    }
    function isStreamx(stream2) {
      return typeof stream2._duplexState === "number" && isStream4(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, opts3 = {}) {
      const err2 = stream2._readableState && stream2._readableState.error || stream2._writableState && stream2._writableState.error;
      return !opts3.all && StreamError.isStreamDestroyed(err2) ? null : err2;
    }
    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(StreamError.ABORTED());
    }
    function isWritev(s) {
      return s._writev !== Writable4.prototype._writev && s._writev !== Duplex4.prototype._writev;
    }
    module2.exports = {
      pipeline: pipeline2,
      pipelinePromise,
      isStream: isStream4,
      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
    };
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/tar-stream/3.2.0/08211fe6b43a24c2ad4d8a21d4db7bbf02b9e186d45dc849c27762824a688c48/node_modules/tar-stream/headers.js
var require_headers3 = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/tar-stream/3.2.0/08211fe6b43a24c2ad4d8a21d4db7bbf02b9e186d45dc849c27762824a688c48/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(opts3) {
      let result2 = "";
      if (opts3.name) result2 += addLength(" path=" + opts3.name + "\n");
      if (opts3.linkname) result2 += addLength(" linkpath=" + opts3.linkname + "\n");
      const pax = opts3.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 i4 = 0;
        while (i4 < buf.length && buf[i4] !== 32) i4++;
        const len = parseInt(b4a.toString(buf.subarray(0, i4)), 10);
        if (!len) return result2;
        const b = b4a.toString(buf.subarray(i4 + 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 encode3(opts3) {
      const buf = b4a.alloc(512);
      let name = opts3.name;
      let prefix = "";
      if (opts3.typeflag === 5 && name[name.length - 1] !== "/") name += "/";
      if (b4a.byteLength(name) !== name.length) return null;
      while (b4a.byteLength(name) > 100) {
        const i4 = name.indexOf("/");
        if (i4 === -1) return null;
        prefix += prefix ? "/" + name.slice(0, i4) : name.slice(0, i4);
        name = name.slice(i4 + 1);
      }
      if (b4a.byteLength(name) > 100 || b4a.byteLength(prefix) > 155) return null;
      if (opts3.linkname && b4a.byteLength(opts3.linkname) > 100) return null;
      b4a.write(buf, name);
      b4a.write(buf, encodeOct(opts3.mode & MASK, 6), 100);
      b4a.write(buf, encodeOct(opts3.uid, 6), 108);
      b4a.write(buf, encodeOct(opts3.gid, 6), 116);
      encodeSize(opts3.size, buf, 124);
      b4a.write(buf, encodeOct(opts3.mtime.getTime() / 1e3 | 0, 11), 136);
      buf[156] = ZERO_OFFSET + toTypeflag(opts3.type);
      if (opts3.linkname) b4a.write(buf, opts3.linkname, 157);
      b4a.copy(USTAR_MAGIC, buf, MAGIC_OFFSET);
      b4a.copy(USTAR_VER, buf, VERSION_OFFSET);
      if (opts3.uname) b4a.write(buf, opts3.uname, 265);
      if (opts3.gname) b4a.write(buf, opts3.gname, 297);
      b4a.write(buf, encodeOct(opts3.devmajor || 0, 6), 329);
      b4a.write(buf, encodeOct(opts3.devminor || 0, 6), 337);
      if (prefix) b4a.write(buf, prefix, 345);
      b4a.write(buf, encodeOct(cksum(buf), 6), 148);
      return buf;
    };
    exports2.decode = function decode3(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(index2, len, defaultValue) {
      if (typeof index2 !== "number") return defaultValue;
      index2 = ~~index2;
      if (index2 >= len) return len;
      if (index2 >= 0) return index2;
      index2 += len;
      if (index2 >= 0) return index2;
      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 i4 = 0; i4 < 148; i4++) sum += block[i4];
      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 i4 = 11; i4 > 0; i4--) {
        buf[off + i4] = 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 i4;
      for (i4 = buf.length - 1; i4 > 0; i4--) {
        const byte = buf[i4];
        if (positive) tuple.push(byte);
        else tuple.push(255 - byte);
      }
      let sum = 0;
      const l = tuple.length;
      for (i4 = 0; i4 < l; i4++) {
        sum += tuple[i4] * Math.pow(256, i4);
      }
      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;
    }
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/tar-stream/3.2.0/08211fe6b43a24c2ad4d8a21d4db7bbf02b9e186d45dc849c27762824a688c48/node_modules/tar-stream/extract.js
var require_extract = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/tar-stream/3.2.0/08211fe6b43a24c2ad4d8a21d4db7bbf02b9e186d45dc849c27762824a688c48/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(opts3) {
        super(opts3);
        if (!opts3) opts3 = {};
        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 = opts3.filenameEncoding || "utf-8";
        this._allowUnknownFormat = !!opts3.allowUnknownFormat;
        this._unlockBound = this._unlock.bind(this);
      }
      _unlock(err2) {
        this._locked = false;
        if (err2) {
          this.destroy(err2);
          this._continueWrite(err2);
          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 (err2) {
          this._continueWrite(err2);
          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 (err2) {
          this._continueWrite(err2);
          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(err2) {
        const cb = this._callback;
        this._callback = noop5;
        cb(err2);
      }
      _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", (err2) => {
          error = err2;
        });
        this.on("close", onclose);
        return {
          [Symbol.asyncIterator]() {
            return this;
          },
          next() {
            return new Promise(onnext);
          },
          return() {
            return destroy(null);
          },
          throw(err2) {
            return destroy(err2);
          }
        };
        function consumeCallback(err2) {
          if (!entryCallback) return;
          const cb = entryCallback;
          entryCallback = null;
          cb(err2);
        }
        function onnext(resolve4, reject3) {
          if (error) {
            return reject3(error);
          }
          if (entryStream) {
            resolve4({ value: entryStream, done: false });
            entryStream = null;
            return;
          }
          promiseResolve = resolve4;
          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(err2) {
          extract.destroy(err2);
          consumeCallback(err2);
          return new Promise((resolve4, reject3) => {
            if (extract.destroyed) return resolve4({ value: void 0, done: true });
            extract.once("close", function() {
              if (err2) reject3(err2);
              else resolve4({ value: void 0, done: true });
            });
          });
        }
      }
    };
    module2.exports = function extract(opts3) {
      return new Extract(opts3);
    };
    function noop5() {
    }
    function overflow(size) {
      size &= 511;
      return size && 512 - size;
    }
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/tar-stream/3.2.0/08211fe6b43a24c2ad4d8a21d4db7bbf02b9e186d45dc849c27762824a688c48/node_modules/tar-stream/constants.js
var require_constants18 = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/tar-stream/3.2.0/08211fe6b43a24c2ad4d8a21d4db7bbf02b9e186d45dc849c27762824a688c48/node_modules/tar-stream/constants.js"(exports2, module2) {
    var constants6 = {
      // 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 || constants6;
    } catch {
      module2.exports = constants6;
    }
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/tar-stream/3.2.0/08211fe6b43a24c2ad4d8a21d4db7bbf02b9e186d45dc849c27762824a688c48/node_modules/tar-stream/pack.js
var require_pack = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/tar-stream/3.2.0/08211fe6b43a24c2ad4d8a21d4db7bbf02b9e186d45dc849c27762824a688c48/node_modules/tar-stream/pack.js"(exports2, module2) {
    var { Readable: Readable4, Writable: Writable4, getStreamError } = require_streamx();
    var b4a = require_b4a();
    var constants6 = 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(pack3, 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 = pack3;
        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(err2) {
        if (this._callback === null) return;
        const callback2 = this._callback;
        this._callback = null;
        callback2(err2);
      }
      _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(opts3) {
        super(opts3);
        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 err2 = getStreamError(this);
        if (this._stream) this._stream.destroy(err2);
        while (this._pending.length) {
          const stream2 = this._pending.shift();
          stream2.destroy(err2);
          stream2._continueOpen();
        }
        this._doDrain();
      }
      _read(cb) {
        this._doDrain();
        cb();
      }
    };
    module2.exports = function pack3(opts3) {
      return new Pack(opts3);
    };
    function modeToType(mode) {
      switch (mode & constants6.S_IFMT) {
        case constants6.S_IFBLK:
          return "block-device";
        case constants6.S_IFCHR:
          return "character-device";
        case constants6.S_IFDIR:
          return "directory";
        case constants6.S_IFIFO:
          return "fifo";
        case constants6.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);
    }
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/tar-stream/3.2.0/08211fe6b43a24c2ad4d8a21d4db7bbf02b9e186d45dc849c27762824a688c48/node_modules/tar-stream/index.js
var require_tar_stream = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/tar-stream/3.2.0/08211fe6b43a24c2ad4d8a21d4db7bbf02b9e186d45dc849c27762824a688c48/node_modules/tar-stream/index.js"(exports2) {
    exports2.extract = require_extract();
    exports2.pack = require_pack();
  }
});

// ../releasing/commands/lib/publish/previousChangelog.js
import { gunzipSync as gunzipSync2 } from "node:zlib";
function createRegistryClient(opts3) {
  return {
    fetch: createFetchFromRegistry(opts3),
    getAuthHeader: createGetAuthHeaderByURI(opts3.configByUri ?? {})
  };
}
async function fetchPreviousChangelog(opts3, pkgName, version2) {
  const client = createRegistryClient(opts3);
  const meta = await fetchPackument3(client, opts3, pkgName);
  if (meta == null)
    return void 0;
  const previousVersion = pickPreviousVersion(meta, version2);
  if (previousVersion == null)
    return void 0;
  return downloadTarballChangelog(client, pkgName, meta, previousVersion);
}
async function fetchPublishedChangelog(opts3, pkgName, version2) {
  const client = createRegistryClient(opts3);
  const meta = await fetchPackument3(client, opts3, pkgName);
  if (meta?.versions[version2] == null)
    return void 0;
  return downloadTarballChangelog(client, pkgName, meta, version2);
}
function changelogHasSection(changelog, section) {
  return changelog.includes(section.trim());
}
function createVersionPublishedChecker(opts3) {
  const client = createRegistryClient(opts3);
  return async (pkgName, version2) => {
    const meta = await fetchPackument3(client, opts3, pkgName);
    return meta?.versions[version2] != null;
  };
}
async function fetchPackument3(client, opts3, pkgName) {
  const registry = pickRegistryForPackage(opts3.registries, pkgName);
  let fetchResult;
  try {
    fetchResult = await fetchMetadataFromFromRegistry({
      fetch: client.fetch,
      retry: {
        factor: opts3.fetchRetryFactor,
        maxTimeout: opts3.fetchRetryMaxtimeout,
        minTimeout: opts3.fetchRetryMintimeout,
        retries: opts3.fetchRetries
      },
      timeout: opts3.fetchTimeout ?? 6e4,
      fetchWarnTimeoutMs: 1e4
    }, pkgName, {
      registry,
      authHeaderValue: client.getAuthHeader(registry, { pkgName }),
      fullMetadata: false
    });
  } catch (err2) {
    if (err2 != null && typeof err2 === "object" && "code" in err2 && err2.code === "ERR_PNPM_FETCH_404") {
      return void 0;
    }
    throw err2;
  }
  return fetchResult.notModified ? void 0 : fetchResult.meta;
}
function pickPreviousVersion(meta, version2) {
  const candidates = Object.keys(meta.versions).filter((candidate) => (0, import_semver62.valid)(candidate) != null && (0, import_semver62.lt)(candidate, version2));
  return candidates.length > 0 ? (0, import_semver62.rsort)(candidates)[0] : void 0;
}
async function downloadTarballChangelog(client, pkgName, meta, version2) {
  const tarballUrl = meta.versions[version2]?.dist?.tarball;
  if (tarballUrl == null)
    return void 0;
  const response = await client.fetch(tarballUrl, { authHeaderValue: client.getAuthHeader(tarballUrl, { pkgName }) });
  if (!response.ok) {
    throw new PnpmError("CHANGELOG_TARBALL_FETCH_FAILED", `Failed to download ${pkgName}@${version2} tarball (${response.status}) to compose the changelog: ${tarballUrl}`);
  }
  const tarballData = await readCapped(response, MAX_TARBALL_BYTES);
  if (tarballData == null)
    return void 0;
  return extractTarballEntry(tarballData, CHANGELOG_ENTRY);
}
async function readCapped(response, maxBytes) {
  const reader = response.body?.getReader();
  if (reader == null) {
    const buffer3 = Buffer.from(await response.arrayBuffer());
    return buffer3.byteLength > maxBytes ? void 0 : buffer3;
  }
  const chunks = [];
  let total = 0;
  for (; ; ) {
    const { done, value } = await reader.read();
    if (done)
      break;
    total += value.byteLength;
    if (total > maxBytes) {
      await reader.cancel().catch(() => {
      });
      return void 0;
    }
    chunks.push(Buffer.from(value));
  }
  return Buffer.concat(chunks);
}
async function extractTarballEntry(tarballData, entryName) {
  const tarData = gunzipCapped(tarballData);
  if (tarData == null)
    return void 0;
  const extract = import_tar_stream.default.extract();
  return new Promise((resolve4) => {
    let contents;
    extract.on("entry", (header, stream2, next2) => {
      if (header.name !== entryName) {
        stream2.resume();
        stream2.on("end", next2);
        stream2.on("error", () => resolve4(void 0));
        return;
      }
      const chunks = [];
      stream2.on("data", (chunk) => chunks.push(Buffer.from(chunk)));
      stream2.on("error", () => resolve4(void 0));
      stream2.on("end", () => {
        contents = Buffer.concat(chunks).toString("utf8");
        next2();
      });
    });
    extract.on("error", () => resolve4(void 0));
    extract.on("finish", () => resolve4(contents));
    extract.end(tarData);
  });
}
function gunzipCapped(tarballData) {
  try {
    return gunzipSync2(tarballData, { maxOutputLength: MAX_TARBALL_BYTES });
  } catch {
    return void 0;
  }
}
var import_semver62, import_tar_stream, CHANGELOG_ENTRY, MAX_TARBALL_BYTES;
var init_previousChangelog = __esm({
  "../releasing/commands/lib/publish/previousChangelog.js"() {
    "use strict";
    init_lib28();
    init_lib2();
    init_lib52();
    init_lib23();
    init_lib38();
    import_semver62 = __toESM(require_semver2(), 1);
    import_tar_stream = __toESM(require_tar_stream(), 1);
    CHANGELOG_ENTRY = "package/CHANGELOG.md";
    MAX_TARBALL_BYTES = 256 * 1024 * 1024;
  }
});

// ../releasing/commands/lib/resolveUnpublishedDirs.js
async function resolveUnpublishedDirs(plan, opts3) {
  const checkVersionPublished = opts3.checkVersionPublished ?? createVersionPublishedChecker(opts3);
  const limit = pLimit(opts3.networkConcurrency ?? DEFAULT_NETWORK_CONCURRENCY);
  const probed = await Promise.all(plan.releases.map((release) => limit(async () => ({
    dir: release.dir,
    published: await checkVersionPublished(opts3.publishedNames?.get(release.name) ?? release.name, release.currentVersion)
  }))));
  return new Set(probed.filter(({ published }) => !published).map(({ dir }) => dir));
}
var DEFAULT_NETWORK_CONCURRENCY;
var init_resolveUnpublishedDirs = __esm({
  "../releasing/commands/lib/resolveUnpublishedDirs.js"() {
    "use strict";
    init_p_limit();
    init_previousChangelog();
    DEFAULT_NETWORK_CONCURRENCY = 16;
  }
});

// ../releasing/commands/lib/change/index.js
function rcOptionsTypes52() {
  return {};
}
function cliOptionsTypes57() {
  return {
    bump: String,
    summary: String,
    recursive: Boolean
  };
}
function help61() {
  return renderHelp({
    description: "Records a change intent: which packages a change affects, the bump type for each, and a summary that becomes the changelog entry. The intent file is written to .changeset/ in the changesets format.",
    usages: [
      "pnpm change [--bump <type>] [--summary <text>] [<pkg>...]",
      "pnpm change status"
    ],
    descriptionLists: [
      {
        title: "Options",
        list: [
          {
            description: `Bump type for the named packages: ${BUMP_TYPES2.join(", ")}. "none" records an explicit decline \u2014 the change needs no release`,
            name: "--bump <type>"
          },
          {
            description: "The summary for the changelog entry. Runs non-interactively when given together with package names",
            name: "--summary <text>"
          }
        ]
      }
    ]
  });
}
async function handler61(opts3, params) {
  const workspaceDir = opts3.workspaceDir;
  if (!workspaceDir) {
    throw new PnpmError("WORKSPACE_ONLY", "pnpm change is only supported in a workspace");
  }
  if (params.length === 1 && params[0] === "status" && opts3.bump == null && opts3.summary == null) {
    return renderStatus(workspaceDir, opts3);
  }
  return recordChange(workspaceDir, opts3, params);
}
async function recordChange(workspaceDir, opts3, params) {
  const releasable = getReleasableProjects(opts3.allProjects ?? [], workspaceDir, opts3.versioning);
  if (releasable.length === 0) {
    throw new PnpmError("VERSIONING_NO_PACKAGES", "No releasable packages found in this workspace");
  }
  const releasableDirs = new Set(releasable.map((project) => project.dir));
  const refs = indexProjectRefs(opts3.allProjects ?? [], workspaceDir);
  for (const ref of params) {
    const dirs2 = refs.refToDirs(ref);
    if (dirs2.length > 1) {
      throw new PnpmError("VERSIONING_AMBIGUOUS_PACKAGE", `${ref} matches multiple workspace projects: ${dirs2.map((dir) => `./${dir}`).join(", ")}. Reference the project by directory instead.`);
    }
    if (dirs2.length === 0 || !releasableDirs.has(dirs2[0])) {
      throw new PnpmError("VERSIONING_UNKNOWN_PACKAGE", `${ref} is not a releasable package of this workspace`);
    }
  }
  if (opts3.bump != null && !BUMP_TYPES2.includes(opts3.bump)) {
    throw new PnpmError("VERSIONING_INVALID_BUMP", `Invalid bump type: ${opts3.bump}. Expected one of ${BUMP_TYPES2.join(", ")}`);
  }
  const pkgRefs = params.length > 0 ? params : await promptForPackages(releasable, workspaceDir, opts3);
  const releases = opts3.bump != null ? Object.fromEntries(pkgRefs.map((ref) => [ref, opts3.bump])) : await promptBumpTypes(pkgRefs);
  const summary = opts3.summary ?? await dist_default6({ message: "Summary of the change (becomes the changelog entry):", required: true });
  const id = await writeChangeIntent(workspaceDir, { releases, summary });
  return `Recorded change intent .changeset/${id}.md`;
}
async function promptForPackages(releasable, workspaceDir, opts3) {
  const changedDirs = await detectChangedDirs(releasable, workspaceDir, opts3);
  const label = (project) => project.ref === project.name ? project.name : `${project.name} (./${project.dir})`;
  let choices;
  if (changedDirs.size > 0) {
    const changed = releasable.filter((project) => changedDirs.has(project.dir));
    const unchanged = releasable.filter((project) => !changedDirs.has(project.dir));
    choices = [
      new Separator("changed packages"),
      ...changed.map((project) => ({ value: project.ref, name: label(project), checked: true })),
      ...unchanged.length > 0 ? [new Separator("unchanged packages")] : [],
      ...unchanged.map((project) => ({ value: project.ref, name: label(project) }))
    ];
  } else {
    choices = releasable.map((project) => ({ value: project.ref, name: label(project) }));
  }
  return dist_default4({
    message: "Which packages does this change affect?",
    choices,
    required: true
  });
}
async function detectChangedDirs(releasable, workspaceDir, opts3) {
  const baseCommit = await detectBaseCommit(workspaceDir);
  if (baseCommit == null)
    return /* @__PURE__ */ new Set();
  try {
    const projectDirs = (opts3.allProjects ?? []).map((project) => project.rootDir);
    const [changedRootDirs] = await getChangedProjects(projectDirs, baseCommit, {
      workspaceDir,
      testPattern: opts3.testPattern,
      changedFilesIgnorePattern: opts3.changedFilesIgnorePattern
    });
    const releasableDirs = new Set(releasable.map((project) => project.dir));
    return new Set(changedRootDirs.map((rootDir) => toProjectDir(workspaceDir, rootDir)).filter((dir) => releasableDirs.has(dir)));
  } catch {
    return /* @__PURE__ */ new Set();
  }
}
async function detectBaseCommit(cwd) {
  for (const branch of ["main", "master"]) {
    try {
      const { stdout } = await safeExeca("git", ["merge-base", "HEAD", branch], { cwd });
      const commit = String(stdout).trim();
      if (commit !== "")
        return commit;
    } catch {
    }
  }
  return void 0;
}
async function promptBumpTypes(pkgRefs) {
  const bumpByRef = /* @__PURE__ */ new Map();
  let remaining = [...pkgRefs];
  for (const bumpType of ["major", "minor"]) {
    if (remaining.length === 0)
      break;
    const chosen = new Set(await dist_default4({
      message: `Which packages should have a ${bumpType} bump?`,
      choices: remaining.map((ref) => ({ value: ref }))
    }));
    for (const ref of chosen)
      bumpByRef.set(ref, bumpType);
    remaining = remaining.filter((ref) => !chosen.has(ref));
  }
  for (const ref of remaining)
    bumpByRef.set(ref, "patch");
  return Object.fromEntries(pkgRefs.map((ref) => [ref, bumpByRef.get(ref)]));
}
async function renderStatus(workspaceDir, opts3) {
  const intents = await readChangeIntents(workspaceDir);
  const ledger = await readLedger(workspaceDir);
  const baseArgs = {
    workspaceDir,
    projects: toWorkspaceProjects(opts3.allProjects ?? []),
    intents,
    ledger,
    versioning: opts3.versioning
  };
  const publishedNames = publishedNameByManifestName(baseArgs.projects);
  const unpublishedDirs = await resolveUnpublishedDirs(assembleReleasePlan(baseArgs), { ...opts3, publishedNames });
  const plan = assembleReleasePlan({ ...baseArgs, unpublishedDirs });
  if (plan.releases.length === 0) {
    return "No pending changes.";
  }
  const consumedIds = new Set(plan.releases.flatMap((release) => release.intents.map((intent) => intent.id)));
  let output = "Pending change intents:\n";
  for (const intent of intents.filter(({ id }) => consumedIds.has(id))) {
    output += `  .changeset/${intent.id}.md
`;
  }
  output += "\n";
  output += renderReleasePlan(plan);
  return output;
}
function renderReleasePlan(plan) {
  let output = "Release plan:\n";
  for (const release of plan.releases) {
    output += `  ${release.name}: ${release.currentVersion} \u2192 ${release.newVersion} (${release.bumpType}, via ${release.causes.join("+")})
`;
  }
  return output;
}
function getReleasableProjects(allProjects, workspaceDir, versioning) {
  const refs = indexProjectRefs(allProjects, workspaceDir);
  const ignoredDirs = new Set((versioning?.ignore ?? []).flatMap((ref) => refs.refToDirs(ref)));
  return allProjects.filter(({ manifest }) => manifest.name != null && manifest.version != null && (0, import_semver63.valid)(manifest.version) != null).map((project) => ({ name: project.manifest.name, dir: toProjectDir(workspaceDir, project.rootDir) })).filter(({ dir }) => !ignoredDirs.has(dir)).map(({ name, dir }) => ({
    name,
    dir,
    ref: refs.nameToDirs(name).length > 1 ? `./${dir}` : name
  })).sort((left, right) => left.ref.localeCompare(right.ref));
}
function toWorkspaceProjects(allProjects) {
  return allProjects.map((project) => ({ rootDir: project.rootDir, manifest: project.manifest }));
}
var import_semver63, commandNames61, change;
var init_change = __esm({
  "../releasing/commands/lib/change/index.js"() {
    "use strict";
    init_dist14();
    init_lib2();
    init_lib169();
    init_lib44();
    init_lib25();
    init_lib66();
    import_semver63 = __toESM(require_semver2(), 1);
    init_publishedNames();
    init_resolveUnpublishedDirs();
    commandNames61 = ["change"];
    change = {
      handler: handler61,
      help: help61,
      commandNames: commandNames61,
      cliOptionsTypes: cliOptionsTypes57,
      rcOptionsTypes: rcOptionsTypes52,
      recursiveByDefault: true
    };
  }
});

// ../fs/is-empty-dir-or-nothing/lib/index.js
import fs116 from "node:fs";
function isEmptyDirOrNothing(path240) {
  try {
    const pathStat = fs116.statSync(path240);
    if (pathStat.isFile()) {
      return false;
    }
    return isDirEmpty(path240);
  } catch (error) {
    if (error && typeof error === "object" && "code" in error && error.code === "ENOENT") {
      return true;
    }
    return false;
  }
}
function isDirEmpty(path240) {
  const files = fs116.readdirSync(path240);
  return files.length === 0;
}
var init_lib170 = __esm({
  "../fs/is-empty-dir-or-nothing/lib/index.js"() {
    "use strict";
  }
});

// ../releasing/commands/lib/deploy/createDeployFiles.js
import path208 from "node:path";
import url6 from "node:url";
function createDeployFiles({ allProjects, deployDir, include, lockfile, lockfileDir, patchedDependencies, selectedProjectManifest, projectId, rootProjectManifestDir, allowBuilds }) {
  const deployedProjectRealPath = path208.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 = path208.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: path208.resolve(lockfileDir, projectId)
      });
      if (!resolveResult) {
        targetSpecifiers[name] = targetDependencies[name] = version2;
        continue;
      }
      resolveResult.packageName ??= name;
      targetSpecifiers[name] = targetDependencies[name] = resolveResult.resolvedPath === deployedProjectRealPath ? "link:." : createFileUrlDepPath(resolveResult, allProjects);
    }
  }
  const deployPackageSnapshots = filterDeployPackageSnapshots(targetSnapshot, targetPackageSnapshots, include);
  const result2 = {
    lockfile: {
      ...lockfile,
      // The deployed manifest contains concrete versions, and catalogs are not copied to the target.
      catalogs: void 0,
      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: deployPackageSnapshots
    },
    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 relativePath2 = (0, import_normalize_path16.default)(path208.relative(deployDir, absolutePath));
      deployManifestPatchedDeps[name] = relativePath2;
    }
    result2.workspaceManifest = {
      ...result2.workspaceManifest,
      patchedDependencies: deployManifestPatchedDeps
    };
  }
  if (allowBuilds) {
    result2.workspaceManifest = {
      ...result2.workspaceManifest,
      allowBuilds
    };
  }
  return result2;
}
function filterDeployPackageSnapshots(importer, packages, include) {
  const queue2 = [];
  const enqueue = (dependencies) => {
    for (const [alias, reference] of Object.entries(dependencies ?? {})) {
      const depPath = refToRelative(reference, alias);
      if (depPath != null && packages[depPath] != null)
        queue2.push(depPath);
    }
  };
  if (include.dependencies)
    enqueue(importer.dependencies);
  if (include.devDependencies)
    enqueue(importer.devDependencies);
  if (include.optionalDependencies)
    enqueue(importer.optionalDependencies);
  const reachable = /* @__PURE__ */ new Set();
  let head2 = 0;
  while (head2 < queue2.length) {
    const depPath = queue2[head2++];
    if (reachable.has(depPath))
      continue;
    reachable.add(depPath);
    const snapshot = packages[depPath];
    if (snapshot == null)
      continue;
    enqueue(snapshot.dependencies);
    if (include.optionalDependencies)
      enqueue(snapshot.optionalDependencies);
  }
  return Object.fromEntries(Array.from(reachable, (depPath) => [depPath, packages[depPath]]));
}
function convertPackageSnapshot(inputSnapshot, opts3) {
  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 = path208.resolve(opts3.lockfileDir, inputPath);
      const outputPath = (0, import_normalize_path16.default)(path208.relative(opts3.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 = path208.resolve(opts3.lockfileDir, dirResolution.directory);
    const directory = (0, import_normalize_path16.default)(path208.relative(opts3.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, opts3),
    optionalDependencies: convertResolvedDependencies(inputSnapshot.optionalDependencies, opts3)
  };
}
function convertProjectSnapshotToPackageSnapshot(projectSnapshot, opts3) {
  const resolution = {
    type: "directory",
    directory: (0, import_normalize_path16.default)(path208.relative(opts3.deployDir, opts3.projectRootDirRealPath))
  };
  const dependencies = convertResolvedDependencies(projectSnapshot.dependencies, opts3);
  const optionalDependencies = convertResolvedDependencies(projectSnapshot.optionalDependencies, opts3);
  return {
    dependencies,
    optionalDependencies,
    resolution
  };
}
function convertResolvedDependencies(input, opts3) {
  if (!input)
    return void 0;
  const output = {};
  for (const key in input) {
    const version2 = input[key];
    const resolveResult = resolveLinkOrFile(version2, opts3);
    if (!resolveResult) {
      output[key] = version2;
      continue;
    }
    if (resolveResult.resolvedPath === opts3.deployedProjectRealPath) {
      output[key] = "link:.";
      continue;
    }
    resolveResult.packageName ??= key;
    output[key] = createFileUrlDepPath(resolveResult, opts3.allProjects);
  }
  return output;
}
function resolveLinkOrFile(pkgVer, opts3) {
  const { lockfileDir, projectRootDirRealPath } = opts3;
  function resolveScheme(scheme, base) {
    if (!pkgVer.startsWith(scheme))
      return void 0;
    const { id, peerDepGraphHash: suffix } = parseDepPath(pkgVer.slice(scheme.length));
    const resolvedPath = path208.resolve(base, id);
    return { scheme, resolvedPath, suffix };
  }
  const resolveSchemeResult = resolveScheme("file:", lockfileDir) ?? resolveScheme("link:", projectRootDirRealPath);
  if (resolveSchemeResult)
    return resolveSchemeResult;
  const { name, nonSemverVersion, patchHash, peerDepGraphHash, version: version2 } = parse9(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, opts3);
  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 ?? ""}`;
  parseResult.packageName = name;
  return parseResult;
}
function createFileUrlDepPath({ resolvedPath, suffix, packageName }, allProjects) {
  const depFileUrl = url6.pathToFileURL(resolvedPath).toString();
  const project = allProjects.find((project2) => project2.rootDirRealPath === resolvedPath);
  const name = project?.manifest.name ?? packageName ?? path208.basename(resolvedPath);
  return `${name}@${depFileUrl}${suffix ?? ""}`;
}
var import_normalize_path16, DEPENDENCIES_FIELD;
var init_createDeployFiles = __esm({
  "../releasing/commands/lib/deploy/createDeployFiles.js"() {
    "use strict";
    init_lib68();
    import_normalize_path16 = __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_lib9();
  }
});

// ../releasing/commands/lib/deploy/deploy.js
var deploy_exports = {};
__export(deploy_exports, {
  cliOptionsTypes: () => cliOptionsTypes58,
  commandNames: () => commandNames62,
  handler: () => handler62,
  help: () => help62,
  overridableByScript: () => overridableByScript3,
  rcOptionsTypes: () => rcOptionsTypes53,
  shorthands: () => shorthands16
});
import fs117 from "node:fs";
import path209 from "node:path";
function rcOptionsTypes53() {
  return {
    ...install_exports.rcOptionsTypes(),
    ...DEPLOY_OWN_OPTIONS
  };
}
function cliOptionsTypes58() {
  return {
    ...install_exports.cliOptionsTypes(),
    ...DEPLOY_OWN_OPTIONS
  };
}
function help62() {
  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 handler62(opts3, params) {
  if (!opts3.workspaceDir) {
    let hint;
    if (opts3.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(opts3.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 = path209.isAbsolute(deployDirParam) ? deployDirParam : path209.join(opts3.dir, deployDirParam);
  validateDeployTarget(deployDir, {
    dir: opts3.dir,
    force: opts3.force,
    projectDir: selectedProject.rootDir,
    workspaceDir: opts3.workspaceDir
  });
  const normalizedDeployDir = path209.resolve(deployDir);
  const normalizedWorkspaceDir = path209.resolve(opts3.workspaceDir);
  const workspaceChildTarget = isChildPath(normalizedDeployDir, normalizedWorkspaceDir);
  if (workspaceChildTarget) {
    createWorkspaceChildTargetParents(normalizedWorkspaceDir, normalizedDeployDir);
  }
  if (!isEmptyDirOrNothing(deployDir)) {
    if (!opts3.force) {
      throw new PnpmError("DEPLOY_DIR_NOT_EMPTY", `Deploy path ${deployDir} is not empty`);
    }
    logger.warn({ message: "using --force, deleting deploy path", prefix: deployDir });
  }
  if (workspaceChildTarget) {
    validateWorkspaceChildTargetComponents(normalizedWorkspaceDir, normalizedDeployDir);
  }
  await rimraf(deployDir);
  if (workspaceChildTarget) {
    createWorkspaceChildTargetParents(normalizedWorkspaceDir, normalizedDeployDir);
    createWorkspaceChildTargetDir(normalizedWorkspaceDir, normalizedDeployDir);
  } else {
    await fs117.promises.mkdir(deployDir, { recursive: true });
  }
  const includeOnlyPackageFiles = !opts3.deployAllFiles;
  await copyProject(selectedProject.rootDir, deployDir, { includeOnlyPackageFiles });
  if (opts3.sharedWorkspaceLockfile) {
    const warning = opts3.forceLegacyDeploy ? "Shared workspace lockfile detected but configuration forces legacy deploy implementation." : await deployFromSharedLockfile(opts3, selectedProject, deployDir);
    if (warning) {
      globalWarn(warning);
    } else {
      return;
    }
  }
  const deployedProject = opts3.allProjects?.find(({ rootDir }) => rootDir === selectedProject.rootDir);
  if (deployedProject) {
    deployedProject.modulesDir = path209.relative(selectedProject.rootDir, path209.join(deployDir, "node_modules"));
  }
  await install_exports.handler({
    ...opts3,
    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: {
      ...opts3.hooks,
      readPackage: [
        ...opts3.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: opts3.nodeLinker !== "hoisted",
    saveLockfile: false,
    virtualStoreDir: path209.join(deployDir, "node_modules/.pnpm"),
    modulesDir: path209.relative(opts3.workspaceDir, path209.join(deployDir, "node_modules")),
    includeOnlyPackageFiles
  });
}
async function copyProject(src2, dest, opts3) {
  const { filesMap } = await fetchFromDir(src2, opts3);
  const importPkg = createIndexedPkgImporter("clone-or-copy");
  importPkg(dest, { filesMap, force: true, resolvedFrom: "local-dir" });
}
function validateDeployTarget(deployDir, opts3) {
  const normalizedDeployDir = path209.resolve(deployDir);
  const workspaceDir = path209.resolve(opts3.workspaceDir);
  const projectDir = path209.resolve(opts3.projectDir);
  const dir = path209.resolve(opts3.dir);
  if (samePath(normalizedDeployDir, workspaceDir)) {
    throw unsafeDeployTarget(normalizedDeployDir, "target is the workspace root");
  }
  if (isAncestorPath(normalizedDeployDir, workspaceDir)) {
    throw unsafeDeployTarget(normalizedDeployDir, "target contains the workspace root");
  }
  if (samePath(normalizedDeployDir, projectDir)) {
    throw unsafeDeployTarget(normalizedDeployDir, "target is the selected project root");
  }
  if (isAncestorPath(normalizedDeployDir, projectDir)) {
    throw unsafeDeployTarget(normalizedDeployDir, "target contains the selected project");
  }
  if (samePath(normalizedDeployDir, dir)) {
    throw unsafeDeployTarget(normalizedDeployDir, "target is the current directory");
  }
  if (isAncestorPath(normalizedDeployDir, dir)) {
    throw unsafeDeployTarget(normalizedDeployDir, "target contains the current directory");
  }
  if (opts3.force && !isChildPath(normalizedDeployDir, workspaceDir)) {
    throw unsafeDeployTarget(normalizedDeployDir, "target is outside the workspace");
  }
  if (isChildPath(normalizedDeployDir, workspaceDir)) {
    validateWorkspaceChildTargetComponents(workspaceDir, normalizedDeployDir);
  }
}
function validateWorkspaceChildTargetComponents(workspaceDir, deployDir) {
  const relative2 = path209.relative(workspaceDir, deployDir);
  let current = workspaceDir;
  for (const component of relative2.split(path209.sep)) {
    if (!component)
      continue;
    current = path209.join(current, component);
    let stat2;
    try {
      stat2 = fs117.lstatSync(current);
    } catch (error) {
      if (isENOENT(error))
        return;
      throw error;
    }
    if (stat2.isSymbolicLink()) {
      throw unsafeDeployTarget(current, "target path contains a symlink");
    }
  }
}
function createWorkspaceChildTargetParents(workspaceDir, deployDir) {
  const parent = path209.dirname(deployDir);
  const relative2 = path209.relative(workspaceDir, parent);
  let current = workspaceDir;
  for (const component of relative2.split(path209.sep)) {
    if (!component)
      continue;
    current = path209.join(current, component);
    createWorkspaceChildTargetComponent(current);
  }
}
function createWorkspaceChildTargetDir(workspaceDir, deployDir) {
  try {
    fs117.mkdirSync(deployDir);
  } catch (error) {
    if (isEEXIST(error)) {
      throw unsafeDeployTarget(deployDir, "target changed during deploy preparation");
    }
    throw error;
  }
  validateWorkspaceChildTargetComponents(workspaceDir, deployDir);
}
function createWorkspaceChildTargetComponent(component) {
  try {
    fs117.mkdirSync(component);
  } catch (error) {
    if (!isEEXIST(error))
      throw error;
  }
  const stat2 = fs117.lstatSync(component);
  if (stat2.isSymbolicLink()) {
    throw unsafeDeployTarget(component, "target path contains a symlink");
  }
  if (!stat2.isDirectory()) {
    throw unsafeDeployTarget(component, "target path contains a non-directory");
  }
}
function unsafeDeployTarget(deployDir, reason) {
  return new PnpmError("INVALID_DEPLOY_TARGET", `Refusing to deploy to unsafe target ${deployDir}: ${reason}`);
}
function samePath(left, right) {
  return path209.normalize(left) === path209.normalize(right);
}
function isAncestorPath(parent, child) {
  return isChildPath(child, parent);
}
function isChildPath(child, parent) {
  return !samePath(child, parent) && isSubdir(parent, child);
}
function isENOENT(error) {
  return typeof error === "object" && error != null && "code" in error && error.code === "ENOENT";
}
function isEEXIST(error) {
  return typeof error === "object" && error != null && "code" in error && error.code === "EEXIST";
}
async function deployFromSharedLockfile(opts3, selectedProject, deployDir) {
  if (!opts3.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 } = opts3;
  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,
    include: {
      dependencies: opts3.production !== false,
      devDependencies: opts3.dev !== false,
      optionalDependencies: opts3.optional !== false
    },
    lockfile,
    lockfileDir,
    patchedDependencies: opts3.patchedDependencies,
    selectedProjectManifest: selectedProject.manifest,
    projectId,
    rootProjectManifestDir,
    allowBuilds: opts3.allowBuilds
  });
  const filesToWrite = [
    fs117.promises.writeFile(path209.join(deployDir, "package.json"), JSON.stringify(deployFiles.manifest, void 0, 2) + "\n"),
    writeWantedLockfile(deployDir, deployFiles.lockfile)
  ];
  if (deployFiles.workspaceManifest) {
    filesToWrite.push(writeYamlFile(path209.join(deployDir, WORKSPACE_MANIFEST_FILENAME), deployFiles.workspaceManifest));
  }
  await Promise.all(filesToWrite);
  try {
    await install_exports.handler({
      ...opts3,
      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: {
        ...opts3.hooks,
        readPackage: [
          ...opts3.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, commandNames62, overridableByScript3;
var init_deploy = __esm({
  "../releasing/commands/lib/deploy/deploy.js"() {
    "use strict";
    init_lib94();
    init_lib41();
    init_lib64();
    init_lib();
    init_lib2();
    init_lib19();
    init_lib85();
    init_lib170();
    init_lib143();
    init_lib80();
    init_lib3();
    init_rimraf();
    init_is_subdir();
    init_es();
    init_lib66();
    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);
    commandNames62 = ["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/lane/index.js
function rcOptionsTypes54() {
  return {};
}
function cliOptionsTypes59() {
  return {
    recursive: Boolean
  };
}
function help63() {
  return renderHelp({
    description: 'Manages per-package release lanes. A lane is a parallel release track: while a package is on one, the bare "pnpm version -r" releases it as X.Y.Z-<lane>.N prereleases while the rest of the workspace keeps releasing stable versions. Moving a package back to the main lane releases its accumulated stable version on the next run. Membership lives under the versioning.lanes key of pnpm-workspace.yaml; this command is a convenience editor for that key.',
    usages: [
      "pnpm lane",
      "pnpm lane <name> --filter <pattern>",
      "pnpm lane main --filter <pattern>"
    ],
    descriptionLists: [
      {
        title: "Options",
        list: [
          {
            description: "Select the packages to move between lanes",
            name: "--filter <pattern>"
          }
        ]
      }
    ]
  });
}
async function handler63(opts3, params) {
  const workspaceDir = opts3.workspaceDir;
  if (!workspaceDir) {
    throw new PnpmError("WORKSPACE_ONLY", "pnpm lane is only supported in a workspace");
  }
  if (params.length === 0) {
    return renderLanes(opts3.versioning?.lanes ?? {});
  }
  const laneName = params[0];
  if ((opts3.filter ?? []).length === 0) {
    throw new PnpmError("VERSIONING_LANE_FILTER_REQUIRED", 'Select the packages to move with --filter, e.g. "pnpm lane alpha --filter <pkg>..."');
  }
  const refs = indexProjectRefs(opts3.allProjects ?? [], workspaceDir);
  const releasableDirs = new Set(getReleasableProjects(opts3.allProjects ?? [], workspaceDir, opts3.versioning).map((project) => project.dir));
  const selected = Object.values(opts3.selectedProjectsGraph ?? {}).map((node) => ({
    name: node.package.manifest.name,
    dir: toProjectDir(workspaceDir, node.package.rootDir)
  })).filter((project) => project.name != null && releasableDirs.has(project.dir));
  if (selected.length === 0) {
    throw new PnpmError("VERSIONING_NO_PACKAGES", "The filter selected no releasable packages");
  }
  const lanes = { ...opts3.versioning?.lanes };
  const laneByDir = /* @__PURE__ */ new Map();
  for (const [key, lane2] of Object.entries(lanes)) {
    for (const dir of refs.refToDirs(key)) {
      laneByDir.set(dir, { key, lane: lane2 });
    }
  }
  let output;
  if (laneName === MAIN_LANE) {
    for (const project of selected) {
      const existing = laneByDir.get(project.dir);
      if (existing != null) {
        delete lanes[existing.key];
      }
    }
    output = `Moved to the main lane:
${selected.map((project) => `  ${refFor(project, refs)}
`).join("")}The accumulated stable versions release on the next "pnpm version -r" run.`;
  } else {
    if (laneName.toLowerCase() === MAIN_LANE) {
      throw new PnpmError("VERSIONING_INVALID_LANE_NAME", `Invalid lane name: ${laneName}. "main" is the reserved default lane; spell it in lowercase to move packages back onto it.`);
    }
    if (!/^[0-9A-Z-]+$/i.test(laneName) || /^\d+$/.test(laneName)) {
      throw new PnpmError("VERSIONING_INVALID_LANE_NAME", `Invalid lane name: ${laneName}. Lane names may contain only alphanumerics and hyphens, and cannot be purely numeric.`);
    }
    for (const project of selected) {
      const existing = laneByDir.get(project.dir);
      if (existing != null && existing.lane !== laneName) {
        throw new PnpmError("VERSIONING_ALREADY_ON_LANE", `${refFor(project, refs)} is already on the "${existing.lane}" lane. Move it back with "pnpm lane main" first.`);
      }
      if (existing == null) {
        lanes[refFor(project, refs)] = laneName;
      }
    }
    output = `Moved to the "${laneName}" lane:
${selected.map((project) => `  ${refFor(project, refs)}
`).join("")}`;
  }
  const versioning = { ...opts3.versioning };
  if (Object.keys(lanes).length > 0) {
    versioning.lanes = lanes;
  } else {
    delete versioning.lanes;
  }
  await updateWorkspaceManifest(workspaceDir, {
    updatedFields: {
      versioning: Object.keys(versioning).length > 0 ? versioning : void 0
    }
  });
  return output;
}
function refFor(project, refs) {
  return refs.nameToDirs(project.name).length > 1 ? `./${project.dir}` : project.name;
}
function renderLanes(lanes) {
  const laneEntries = Object.entries(lanes);
  if (laneEntries.length === 0) {
    return "All packages are on the main lane.";
  }
  const byLane = /* @__PURE__ */ new Map();
  for (const [ref, laneName] of laneEntries) {
    let members = byLane.get(laneName);
    if (members == null) {
      members = [];
      byLane.set(laneName, members);
    }
    members.push(ref);
  }
  let output = "Lanes:\n";
  for (const [laneName, members] of Array.from(byLane.entries()).sort(([left], [right]) => left.localeCompare(right))) {
    output += `  ${laneName}:
`;
    for (const ref of members.sort()) {
      output += `    ${ref}
`;
    }
  }
  return output;
}
var commandNames63, MAIN_LANE, lane;
var init_lane = __esm({
  "../releasing/commands/lib/lane/index.js"() {
    "use strict";
    init_lib2();
    init_lib169();
    init_lib101();
    init_lib66();
    init_change();
    commandNames63 = ["lane"];
    MAIN_LANE = "main";
    lane = {
      handler: handler63,
      help: help63,
      commandNames: commandNames63,
      cliOptionsTypes: cliOptionsTypes59,
      rcOptionsTypes: rcOptionsTypes54
    };
  }
});

// ../releasing/commands/lib/pack-app/packApp.js
var packApp_exports = {};
__export(packApp_exports, {
  cliOptionsTypes: () => cliOptionsTypes60,
  commandNames: () => commandNames64,
  handler: () => handler64,
  help: () => help64,
  rcOptionsTypes: () => rcOptionsTypes55,
  shorthands: () => shorthands17
});
import fs118 from "node:fs";
import { mkdir, mkdtemp, readFile as readFile4, rm as rm2, writeFile as writeFile2 } from "node:fs/promises";
import os17 from "node:os";
import path210 from "node:path";
function rcOptionsTypes55() {
  return {};
}
function cliOptionsTypes60() {
  return {
    entry: String,
    target: [String, Array],
    runtime: String,
    "output-dir": String,
    "output-name": String
  };
}
function help64() {
  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 handler64(opts3, params) {
  const project = await readProjectAppConfig(opts3.dir);
  const entryPath = opts3.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.');
  }
  if (pathEscapesProject(entryPath)) {
    throw new PnpmError("PACK_APP_ENTRY_OUTSIDE_PROJECT", `The entry path "${entryPath}" resolves outside the project directory.`, { hint: 'The entry must be a relative path inside the project directory, not an absolute path or one that escapes via "..".' });
  }
  const resolvedEntry = path210.resolve(opts3.dir, entryPath);
  let entryStat;
  try {
    entryStat = fs118.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}`);
  }
  if (!isWithinDir(resolvedEntry, opts3.dir)) {
    throw new PnpmError("PACK_APP_ENTRY_OUTSIDE_PROJECT", `The entry path "${entryPath}" resolves outside the project directory.`, { hint: 'The entry must be a relative path inside the project directory, not an absolute path or one that escapes via "..".' });
  }
  const cliTargets = opts3.target == null ? void 0 : Array.isArray(opts3.target) ? opts3.target : [opts3.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 = opts3.runtime ?? project.app?.runtime ?? `node@${process.version.slice(1)}`;
  const { version: requestedNodeSpec } = parseRuntime(runtimeSpec);
  const outputDirRaw = opts3.outputDir ?? project.app?.outputDir ?? "dist-app";
  if (pathEscapesProject(outputDirRaw)) {
    throw new PnpmError("PACK_APP_OUTPUT_DIR_OUTSIDE_PROJECT", `The output directory "${outputDirRaw}" resolves outside the project directory.`, { hint: 'The output directory must be a relative path inside the project directory, not an absolute path or one that escapes via "..".' });
  }
  const outputDir = path210.resolve(opts3.dir, outputDirRaw);
  await mkdir(outputDir, { recursive: true });
  if (!isWithinDir(outputDir, opts3.dir)) {
    throw new PnpmError("PACK_APP_OUTPUT_DIR_OUTSIDE_PROJECT", `The output directory "${outputDirRaw}" resolves outside the project directory.`, { hint: 'The output directory must be a relative path inside the project directory, not an absolute path or one that escapes via "..".' });
  }
  const outputName = validateOutputName(opts3.outputName ?? project.app?.outputName ?? deriveOutputNameFromPackage(project, opts3.dir));
  for (const target2 of targets) {
    rejectNonRegularOutputFile(path210.join(outputDir, target2.raw, outputFileName(outputName, target2.platform)));
  }
  const fetch3 = createFetchFromRegistry(opts3);
  const buildRoot = path210.join(opts3.pnpmHomeDir, "pack-app");
  const resolvedTargetVersion = await resolveVersion(fetch3, requestedNodeSpec, opts3.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 = path210.join(outputDir, target2.raw);
    await mkdir(targetOutputDir, { recursive: true });
    if (!isWithinDir(targetOutputDir, opts3.dir)) {
      throw new PnpmError("PACK_APP_OUTPUT_DIR_OUTSIDE_PROJECT", `The output directory "${targetOutputDir}" resolves outside the project directory.`, { hint: 'The output directory must be a relative path inside the project directory, not an absolute path or one that escapes via "..".' });
    }
    const outputFile = path210.join(targetOutputDir, outputFileName(outputName, target2.platform));
    rejectNonRegularOutputFile(outputFile);
    const seaConfig = {
      main: resolvedEntry,
      output: outputFile,
      executable: embeddedNodeBin,
      disableExperimentalSEAWarning: true,
      useCodeCache: false,
      useSnapshot: false
    };
    const tmpConfigDir = await mkdtemp(path210.join(os17.tmpdir(), "pnpm-pack-app-"));
    const configPath = path210.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, opts3.dir);
    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_libc7.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(opts3) {
  const libc = opts3.platform === "linux" ? opts3.libc ?? "glibc" : opts3.libc;
  const targetId = [opts3.platform, opts3.arch, libc].filter(Boolean).join("-");
  const installDir = path210.join(opts3.buildRoot, `${targetId}-${opts3.version}`);
  const nodeDir = path210.join(installDir, "node_modules", "node");
  const binaryPath = nodeBinaryPath(nodeDir, opts3.platform);
  if (fs118.existsSync(binaryPath))
    return binaryPath;
  await mkdir(installDir, { recursive: true });
  await writeFile2(path210.join(installDir, "package.json"), `${JSON.stringify({ name: `pnpm-pack-app-${targetId}`, private: true }, null, 2)}
`);
  const args = [
    "add",
    "--ignore-scripts",
    "--ignore-workspace",
    `--os=${opts3.platform}`,
    `--cpu=${opts3.arch}`
  ];
  if (libc != null) {
    args.push(`--libc=${libc}`);
  }
  args.push(`node@runtime:${opts3.version}`);
  runPnpmCli(args, { cwd: installDir });
  if (!fs118.existsSync(binaryPath)) {
    throw new PnpmError("PACK_APP_NODE_BINARY_MISSING", `Expected Node.js binary at ${binaryPath} after installing node@runtime:${opts3.version}, but it was not found.`);
  }
  return binaryPath;
}
function nodeBinaryPath(nodeDir, platform5) {
  return platform5 === "win32" ? path210.join(nodeDir, "node.exe") : path210.join(nodeDir, "bin", "node");
}
async function resolveVersion(fetch3, specifier, nodeDownloadMirrors) {
  const { releaseChannel, versionSpecifier } = parseNodeSpecifier(specifier);
  const nodeMirrorBaseUrl = getNodeMirror(nodeDownloadMirrors, releaseChannel);
  const version2 = await resolveNodeVersion(fetch3, 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 [, platform5, arch2, libc] = match;
  if (libc === "musl" && platform5 !== "linux") {
    throw new PnpmError("PACK_APP_INVALID_TARGET", `The "musl" libc suffix is only valid for linux targets (got "${raw}").`);
  }
  return { raw, platform: platform5, arch: arch2, 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 !== path210.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 readFile4(path210.join(dir, "package.json"), "utf8");
  } catch {
    return {};
  }
  let manifest;
  try {
    manifest = JSON.parse(raw);
  } catch (err2) {
    throw new PnpmError("PACK_APP_INVALID_PACKAGE_JSON", `Failed to parse ${path210.join(dir, "package.json")}: ${err2.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 config2 = {};
  if (raw.entry != null) {
    if (typeof raw.entry !== "string") {
      throw new PnpmError("PACK_APP_INVALID_CONFIG", '"pnpm.app.entry" must be a string.');
    }
    config2.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.');
    }
    config2.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.');
    }
    config2.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.');
    }
    config2.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.');
    }
    config2.outputName = raw.outputName;
  }
  return config2;
}
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);
}
function pathEscapesProject(rawPath) {
  if (path210.parse(rawPath).root !== "")
    return true;
  return rawPath.split(/[/\\]/).includes("..");
}
function isWithinDir(target2, dir) {
  let realDir;
  let realTarget;
  try {
    realDir = fs118.realpathSync(dir);
    realTarget = fs118.realpathSync(target2);
  } catch {
    return false;
  }
  const rel = path210.relative(realDir, realTarget);
  return rel === "" || !rel.startsWith("..") && !path210.isAbsolute(rel);
}
function outputFileName(outputName, platform5) {
  return platform5 === "win32" ? `${outputName}.exe` : outputName;
}
function rejectNonRegularOutputFile(outputFile) {
  const existing = fs118.lstatSync(outputFile, { throwIfNoEntry: false });
  if (existing && !existing.isFile()) {
    throw new PnpmError("PACK_APP_OUTPUT_FILE_NOT_REGULAR", `The output file "${outputFile}" already exists and is not a regular file (e.g. a symlink); refusing to write through it.`, { hint: "Remove the existing path, or choose a different --output-name or --output-dir." });
  }
}
async function adHocSignMacBinary(target2, outputFile, dir) {
  if (target2.platform !== "darwin")
    return;
  if (process.platform === "darwin") {
    await safeExeca("/usr/bin/codesign", ["--sign", "-", outputFile], { stdio: "inherit" });
    return;
  }
  if (process.platform === "linux") {
    const ldid = resolveTrustedSigner("ldid", dir, outputFile);
    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.' });
}
function resolveTrustedSigner(name, dir, outputFile) {
  for (const entry of (process.env.PATH ?? "").split(path210.delimiter)) {
    if (entry === "")
      continue;
    const candidate = path210.join(entry, name);
    let stat2;
    try {
      stat2 = fs118.statSync(candidate);
    } catch {
      continue;
    }
    if (!stat2.isFile())
      continue;
    if (isWithinDir(candidate, dir))
      continue;
    try {
      fs118.accessSync(candidate, fs118.constants.X_OK);
    } catch {
      continue;
    }
    return candidate;
  }
  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>".' });
}
var import_detect_libc7, MIN_BUILDER_VERSION, SUPPORTED_OS, SUPPORTED_TARGETS, commandNames64, 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_lib41();
    init_lib46();
    init_lib2();
    init_lib162();
    init_lib23();
    import_detect_libc7 = __toESM(require_detect_libc(), 1);
    init_lib25();
    init_lib66();
    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";
    commandNames64 = ["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([
      // Lets a package be published under a name it cannot carry in the workspace
      // — typically because a sibling project already owns that name. Nothing else
      // in the workspace observes the rename: dependents, pnpm-lock.yaml, and the
      // changeset ledger all keep addressing the project by its manifest name.
      "name",
      // 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_bin2 = __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/repository.js
function transformRepository(manifest) {
  if (typeof manifest.repository !== "string")
    return manifest;
  return {
    ...manifest,
    repository: {
      type: "git",
      url: manifest.repository
    }
  };
}
var init_repository = __esm({
  "../releasing/exportable-manifest/lib/transform/repository.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 transform2;
var init_transform = __esm({
  "../releasing/exportable-manifest/lib/transform/index.js"() {
    "use strict";
    init_es();
    init_bin2();
    init_peerDependenciesMeta();
    init_repository();
    init_requiredFields();
    transform2 = pipe(transformRequiredFields, transformBin, transformPeerDependenciesMeta, transformRepository);
  }
});

// ../releasing/exportable-manifest/lib/index.js
import fs119 from "node:fs";
import path211 from "node:path";
import util63 from "node:util";
async function createExportableManifest(dir, originalManifest, opts3) {
  let publishManifest;
  if (opts3.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, opts3.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: opts3?.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: opts3?.modulesDir,
      convertDependencyForPublish: convertPeersForPublish
    });
  }
  overridePublishConfig(publishManifest);
  if (publishManifest.readme == null && opts3?.embedReadme) {
    const readme = await readReadmeFile(dir);
    if (readme != null) {
      publishManifest.readme = readme;
    }
  }
  for (const hook of opts3?.hooks?.beforePacking ?? []) {
    publishManifest = await hook(publishManifest, dir) ?? publishManifest;
  }
  return transform2(publishManifest);
}
async function readReadmeFile(projectDir) {
  const entries = await fs119.promises.readdir(projectDir, { withFileTypes: true });
  const readmeEntry = entries.find((entry) => entry.isFile() && /^readme\.md$/i.test(entry.name));
  if (readmeEntry == null)
    return void 0;
  let handle;
  try {
    handle = await fs119.promises.open(path211.join(projectDir, readmeEntry.name), README_READ_FLAGS);
    return await handle.readFile("utf8");
  } catch (err2) {
    if (util63.types.isNativeError(err2) && "code" in err2 && err2.code === "ELOOP")
      return void 0;
    throw err2;
  } finally {
    await handle?.close();
  }
}
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 ?? path211.join(dir, "node_modules");
    const manifest = await readAndCheckManifest(depName, path211.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, path211.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 ?? path211.join(dir, "node_modules");
    const manifest = await readAndCheckManifest(depName, path211.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, README_READ_FLAGS;
var init_lib171 = __esm({
  "../releasing/exportable-manifest/lib/index.js"() {
    "use strict";
    init_lib97();
    init_lib2();
    init_lib32();
    init_lib15();
    init_lib122();
    init_es();
    init_overridePublishConfig();
    init_transform();
    PREPUBLISH_SCRIPTS2 = [
      "prepublishOnly",
      "prepack",
      "prepare",
      "postpack",
      "publish",
      "postpublish"
    ];
    README_READ_FLAGS = fs119.constants.O_RDONLY | (process.platform === "win32" ? 0 : fs119.constants.O_NOFOLLOW);
  }
});

// ../releasing/commands/lib/tarball/safeTarballFilename.js
import path212 from "node:path";
function createTarballFilename({ name, version: version2, suffix }) {
  if (!(0, import_validate_npm_package_name7.default)(name).validForOldPackages) {
    throw new PnpmError("INVALID_PACKAGE_NAME", `Invalid package name "${name}".`);
  }
  if (!(0, import_semver64.valid)(version2)) {
    throw new PnpmError("INVALID_PACKAGE_VERSION", `Invalid package version "${version2}".`);
  }
  const filename = `${normalizePackageName(name)}-${version2}${suffix == null ? "" : `-${suffix}`}.tgz`;
  if (path212.basename(filename) !== filename || path212.win32.basename(filename) !== filename) {
    throw new PnpmError("INVALID_TARBALL_FILENAME", `Invalid tarball filename "${filename}".`);
  }
  return filename;
}
function normalizePackageName(name) {
  return name.replace("@", "").replace("/", "-");
}
var import_semver64, import_validate_npm_package_name7;
var init_safeTarballFilename = __esm({
  "../releasing/commands/lib/tarball/safeTarballFilename.js"() {
    "use strict";
    init_lib2();
    import_semver64 = __toESM(require_semver2(), 1);
    import_validate_npm_package_name7 = __toESM(require_lib19(), 1);
  }
});

// ../releasing/commands/lib/publish/extractManifestFromPacked.js
import fs120 from "node:fs";
import path213 from "node:path";
import { createGunzip } from "node:zlib";
async function extractPublishManifestFromPacked(tarballPath) {
  const { manifest, readme } = await extractEntriesFromPacked(tarballPath, true);
  const parsed = JSON.parse(manifest);
  if (parsed.readme == null && readme != null) {
    parsed.readme = readme;
  }
  return parsed;
}
async function extractEntriesFromPacked(tarballPath, wantReadme) {
  const extract = import_tar_stream2.default.extract();
  const gunzip2 = createGunzip();
  const tarballStream = fs120.createReadStream(tarballPath);
  let cleanedUp = false;
  function cleanup2() {
    if (cleanedUp)
      return;
    cleanedUp = true;
    extract.destroy();
    gunzip2.destroy();
    tarballStream.destroy();
  }
  const promise2 = new Promise((resolve4, reject3) => {
    let settled = false;
    let manifest;
    let readme;
    function handleError(error) {
      cleanup2();
      reject3(error);
    }
    function settle() {
      if (settled)
        return;
      settled = true;
      cleanup2();
      if (manifest == null) {
        reject3(new PublishArchiveMissingManifestError(tarballPath));
        return;
      }
      resolve4({ manifest, readme });
    }
    tarballStream.once("error", handleError);
    gunzip2.once("error", handleError);
    extract.on("entry", (header, stream2, next2) => {
      const normalizedPath = path213.normalize(header.name).replaceAll("\\", "/");
      const isManifest = normalizedPath === "package/package.json";
      const isReadme = wantReadme && /^package\/readme\.md$/i.test(normalizedPath);
      if (!isManifest && !isReadme) {
        stream2.once("end", next2);
        stream2.resume();
        return;
      }
      const chunks = [];
      stream2.on("data", (chunk) => {
        chunks.push(chunk);
      });
      stream2.once("end", () => {
        const text = Buffer.concat(chunks).toString();
        if (isManifest) {
          manifest = text;
        } else {
          readme = text;
        }
        if (manifest != null && (!wantReadme || readme != null)) {
          settle();
          return;
        }
        next2();
      });
      stream2.once("error", handleError);
    });
    extract.once("finish", settle);
    extract.once("error", handleError);
  });
  tarballStream.pipe(gunzip2).pipe(extract);
  return promise2;
}
var import_tar_stream2, TARBALL_SUFFIXES, isTarballPath, PublishArchiveMissingManifestError;
var init_extractManifestFromPacked = __esm({
  "../releasing/commands/lib/publish/extractManifestFromPacked.js"() {
    "use strict";
    init_lib2();
    import_tar_stream2 = __toESM(require_tar_stream(), 1);
    TARBALL_SUFFIXES = [".tar.gz", ".tgz"];
    isTarballPath = (path240) => TARBALL_SUFFIXES.some((suffix) => path240.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 = (opts3, { [ENV_KEY]: otp }) => Boolean(opts3.otp) || !otp ? opts3 : { ...opts3, otp };
  }
});

// ../releasing/commands/lib/tarball/publishSummary.js
import { createHash as createHash3 } from "node:crypto";
import path214 from "node:path";
function createPublishSummary({ publishedManifest, tarballPath, contents, unpackedSize }, tarballData) {
  const { name, version: version2 } = publishedManifest;
  return {
    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: createHash3("sha1").update(tarballData).digest("hex"),
    integrity: `sha512-${createHash3("sha512").update(tarballData).digest("base64")}`,
    filename: path214.basename(tarballPath),
    files: contents.map((file) => ({ path: file })),
    entryCount: contents.length,
    bundled: extractBundledDependencies(publishedManifest)
  };
}
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], opts3) {
  const execResult = sync2(cmd, args, {
    stdio: "pipe"
  });
  const stderr = execResult.stderr?.toString() ?? "";
  if (stderr.trim()) {
    for (const line of stderr.trimEnd().split("\n")) {
      opts3.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_lib25();
  }
});

// ../releasing/commands/lib/publish/FailedToPublishError.js
async function createFailedToPublishError(pack3, fetchResponse) {
  const { status, statusText } = fetchResponse;
  let text;
  try {
    text = await fetchResponse.text();
  } catch {
    text = "";
  }
  return new FailedToPublishError({ pack: pack3, 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(opts3) {
        const { pack: pack3, status, statusText, text } = opts3;
        const { name, version: version2 } = pack3.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 = pack3;
        this.status = status;
        this.statusText = statusText;
        this.text = text;
      }
    };
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/npm-registry-fetch/19.1.1/f03465a7fe9805e8ce5f535900466236d00953a450180307912230c3e79fd9af/node_modules/npm-registry-fetch/lib/errors.js
var require_errors8 = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/npm-registry-fetch/19.1.1/f03465a7fe9805e8ce5f535900466236d00953a450180307912230c3e79fd9af/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 index2 = basePath.indexOf("_rewrite");
          if (index2 === -1) {
            index2 = basePath.length - 1;
          } else {
            index2++;
          }
          return decodeURIComponent(basePath[index2]);
        }
      } catch {
      }
    }
    var HttpErrorBase = class extends Error {
      constructor(method2, 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 = method2;
        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(method2, res, body, spec) {
        super(method2, 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(method2, res, body, spec) {
        super(method2, res, body, spec);
        this.message = "OTP required for authentication";
        this.code = "EOTP";
      }
    };
    var HttpErrorAuthIPAddress = class extends HttpErrorBase {
      constructor(method2, res, body, spec) {
        super(method2, res, body, spec);
        this.message = "Login is not allowed from your IP address";
        this.code = "EAUTHIP";
      }
    };
    var HttpErrorAuthUnknown = class extends HttpErrorBase {
      constructor(method2, res, body, spec) {
        super(method2, res, body, spec);
        this.message = "Unable to authenticate, need: " + res.headers.get("www-authenticate");
      }
    };
    module2.exports = {
      HttpErrorBase,
      HttpErrorGeneral,
      HttpErrorAuthOTP,
      HttpErrorAuthIPAddress,
      HttpErrorAuthUnknown
    };
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/minizlib/3.1.0/c3412b7eb83e1106e4af887256fe062e781d4534763bcd53ad4c91261a49ff69/node_modules/minizlib/dist/commonjs/constants.js
var require_constants19 = __commonJS({
  "../../../../../setup-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(mod2) {
      return mod2 && mod2.__esModule ? mod2 : { "default": mod2 };
    };
    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));
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/minizlib/3.1.0/c3412b7eb83e1106e4af887256fe062e781d4534763bcd53ad4c91261a49ff69/node_modules/minizlib/dist/commonjs/index.js
var require_commonjs5 = __commonJS({
  "../../../../../setup-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(mod2) {
        if (mod2 && mod2.__esModule) return mod2;
        var result2 = {};
        if (mod2 != null) {
          for (var k2 = ownKeys2(mod2), i4 = 0; i4 < k2.length; i4++) if (k2[i4] !== "default") __createBinding2(result2, mod2, k2[i4]);
        }
        __setModuleDefault2(result2, mod2);
        return result2;
      };
    })();
    var __importDefault2 = exports2 && exports2.__importDefault || function(mod2) {
      return mod2 && mod2.__esModule ? mod2 : { "default": mod2 };
    };
    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_commonjs4();
    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(err2, origin) {
        super("zlib: " + err2.message, { cause: err2 });
        this.code = err2.code;
        this.errno = err2.errno;
        if (!this.code)
          this.code = "ZLIB_ERROR";
        this.message = "zlib: " + err2.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(opts3, mode) {
        if (!opts3 || typeof opts3 !== "object")
          throw new TypeError("invalid options for ZlibBase constructor");
        super(opts3);
        this.#flushFlag = opts3.flush ?? 0;
        this.#finishFlushFlag = opts3.finishFlush ?? 0;
        this.#fullFlushFlag = opts3.fullFlushFlag ?? 0;
        if (typeof realZlib[mode] !== "function") {
          throw new TypeError("Compression method not supported: " + mode);
        }
        try {
          this.#handle = new realZlib[mode](opts3);
        } catch (er) {
          throw new ZlibError(er, this.constructor);
        }
        this.#onError = (err2) => {
          if (this.#sawError)
            return;
          this.#sawError = true;
          this.close();
          this.emit("error", err2);
        };
        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 (err2) {
          passthroughBufferConcat(false);
          this.#onError(new ZlibError(err2, 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 i4 = 1; i4 < result2.length; i4++) {
              writeReturn = this[_superWrite](result2[i4]);
            }
          } else {
            writeReturn = this[_superWrite](buffer_1.Buffer.from(result2));
          }
        }
        if (cb)
          cb();
        return writeReturn;
      }
    };
    var Zlib2 = class extends ZlibBase {
      #level;
      #strategy;
      constructor(opts3, mode) {
        opts3 = opts3 || {};
        opts3.flush = opts3.flush || constants_js_1.constants.Z_NO_FLUSH;
        opts3.finishFlush = opts3.finishFlush || constants_js_1.constants.Z_FINISH;
        opts3.fullFlushFlag = constants_js_1.constants.Z_FULL_FLUSH;
        super(opts3, mode);
        this.#level = opts3.level;
        this.#strategy = opts3.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 = Zlib2;
    var Deflate2 = class extends Zlib2 {
      constructor(opts3) {
        super(opts3, "Deflate");
      }
    };
    exports2.Deflate = Deflate2;
    var Inflate2 = class extends Zlib2 {
      constructor(opts3) {
        super(opts3, "Inflate");
      }
    };
    exports2.Inflate = Inflate2;
    var Gzip = class extends Zlib2 {
      #portable;
      constructor(opts3) {
        super(opts3, "Gzip");
        this.#portable = opts3 && !!opts3.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 Zlib2 {
      constructor(opts3) {
        super(opts3, "Gunzip");
      }
    };
    exports2.Gunzip = Gunzip;
    var DeflateRaw = class extends Zlib2 {
      constructor(opts3) {
        super(opts3, "DeflateRaw");
      }
    };
    exports2.DeflateRaw = DeflateRaw;
    var InflateRaw = class extends Zlib2 {
      constructor(opts3) {
        super(opts3, "InflateRaw");
      }
    };
    exports2.InflateRaw = InflateRaw;
    var Unzip = class extends Zlib2 {
      constructor(opts3) {
        super(opts3, "Unzip");
      }
    };
    exports2.Unzip = Unzip;
    var Brotli = class extends ZlibBase {
      constructor(opts3, mode) {
        opts3 = opts3 || {};
        opts3.flush = opts3.flush || constants_js_1.constants.BROTLI_OPERATION_PROCESS;
        opts3.finishFlush = opts3.finishFlush || constants_js_1.constants.BROTLI_OPERATION_FINISH;
        opts3.fullFlushFlag = constants_js_1.constants.BROTLI_OPERATION_FLUSH;
        super(opts3, mode);
      }
    };
    var BrotliCompress = class extends Brotli {
      constructor(opts3) {
        super(opts3, "BrotliCompress");
      }
    };
    exports2.BrotliCompress = BrotliCompress;
    var BrotliDecompress = class extends Brotli {
      constructor(opts3) {
        super(opts3, "BrotliDecompress");
      }
    };
    exports2.BrotliDecompress = BrotliDecompress;
    var Zstd = class extends ZlibBase {
      constructor(opts3, mode) {
        opts3 = opts3 || {};
        opts3.flush = opts3.flush || constants_js_1.constants.ZSTD_e_continue;
        opts3.finishFlush = opts3.finishFlush || constants_js_1.constants.ZSTD_e_end;
        opts3.fullFlushFlag = constants_js_1.constants.ZSTD_e_flush;
        super(opts3, mode);
      }
    };
    var ZstdCompress = class extends Zstd {
      constructor(opts3) {
        super(opts3, "ZstdCompress");
      }
    };
    exports2.ZstdCompress = ZstdCompress;
    var ZstdDecompress = class extends Zstd {
      constructor(opts3) {
        super(opts3, "ZstdDecompress");
      }
    };
    exports2.ZstdDecompress = ZstdDecompress;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/minipass-sized/2.0.0/1173ef7f10a8f86e8b2a40679a0e7b68099fa8e042f0b188a8a0652a0673df74/node_modules/minipass-sized/dist/commonjs/index.js
var require_commonjs6 = __commonJS({
  "../../../../../setup-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_commonjs4();
    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;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/minipass-fetch/5.0.2/674bbfc94f8ccb7b01485badbade48dd193792bab868779ee4e2181857c0e9b2/node_modules/minipass-fetch/lib/blob.js
var require_blob = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/minipass-fetch/5.0.2/674bbfc94f8ccb7b01485badbade48dd193792bab868779ee4e2181857c0e9b2/node_modules/minipass-fetch/lib/blob.js"(exports2, module2) {
    "use strict";
    var { Minipass } = require_commonjs4();
    var TYPE2 = /* @__PURE__ */ Symbol("type");
    var BUFFER = /* @__PURE__ */ Symbol("buffer");
    var Blob2 = class _Blob {
      constructor(blobParts, options) {
        this[TYPE2] = "";
        const buffers = [];
        let size = 0;
        if (blobParts) {
          const a2 = blobParts;
          const length = Number(a2.length);
          for (let i4 = 0; i4 < length; i4++) {
            const element = a2[i4];
            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[TYPE2] = type4;
        }
      }
      get size() {
        return this[BUFFER].length;
      }
      get type() {
        return this[TYPE2];
      }
      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;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/minipass-fetch/5.0.2/674bbfc94f8ccb7b01485badbade48dd193792bab868779ee4e2181857c0e9b2/node_modules/minipass-fetch/lib/fetch-error.js
var require_fetch_error = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/minipass-fetch/5.0.2/674bbfc94f8ccb7b01485badbade48dd193792bab868779ee4e2181857c0e9b2/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;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/minipass-fetch/5.0.2/674bbfc94f8ccb7b01485badbade48dd193792bab868779ee4e2181857c0e9b2/node_modules/minipass-fetch/lib/body.js
var require_body2 = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/minipass-fetch/5.0.2/674bbfc94f8ccb7b01485badbade48dd193792bab868779ee4e2181857c0e9b2/node_modules/minipass-fetch/lib/body.js"(exports2, module2) {
    "use strict";
    var { Minipass } = require_commonjs4();
    var { MinipassSized } = require_commonjs6();
    var Blob2 = require_blob();
    var { BUFFER } = Blob2;
    var FetchError2 = require_fetch_error();
    var decode3;
    try {
      decode3 = require_lib22().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 decode3 !== "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((resolve4) => {
          if (stream2 !== upstream) {
            upstream.on("error", (er) => stream2.emit("error", er));
            upstream.pipe(stream2);
          }
          resolve4();
        }).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 tee2 = new Minipass();
          const p1 = new Minipass();
          const p2 = new Minipass();
          tee2.on("error", (er) => {
            p1.emit("error", er);
            p2.emit("error", er);
          });
          body.on("error", (er) => tee2.emit("error", er));
          tee2.pipe(p1);
          tee2.pipe(p2);
          body.pipe(tee2);
          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 decode3(buffer3, charset).toString();
      } catch {
        return buffer3.toString("UTF-8");
      }
    };
    module2.exports = Body;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/minipass-fetch/5.0.2/674bbfc94f8ccb7b01485badbade48dd193792bab868779ee4e2181857c0e9b2/node_modules/minipass-fetch/lib/headers.js
var require_headers4 = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/minipass-fetch/5.0.2/674bbfc94f8ccb7b01485badbade48dd193792bab868779ee4e2181857c0e9b2/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 method2 = init2[Symbol.iterator];
          if (method2 !== null && method2 !== void 0) {
            if (typeof method2 !== "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 i4 = 0; i4 < pairs2.length; i4++) {
          const [name, value] = pairs2[i4];
          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: index2 } = this[INTERNAL];
        const values = getHeaders2(target2, kind);
        const len = values.length;
        if (index2 >= len) {
          return {
            value: void 0,
            done: true
          };
        }
        this[INTERNAL].index++;
        return { value: values[index2], done: false };
      }
    };
    Object.setPrototypeOf(
      HeadersIterator.prototype,
      Object.getPrototypeOf(Object.getPrototypeOf([][Symbol.iterator]()))
    );
    module2.exports = Headers2;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/minipass-fetch/5.0.2/674bbfc94f8ccb7b01485badbade48dd193792bab868779ee4e2181857c0e9b2/node_modules/minipass-fetch/lib/response.js
var require_response2 = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/minipass-fetch/5.0.2/674bbfc94f8ccb7b01485badbade48dd193792bab868779ee4e2181857c0e9b2/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: clone4, extractContentType } = Body;
    var INTERNALS = /* @__PURE__ */ Symbol("Response internals");
    var Response = class _Response extends Body {
      constructor(body = null, opts3 = {}) {
        super(body, opts3);
        const status = opts3.status || 200;
        const headers = new Headers2(opts3.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: opts3.url,
          status,
          statusText: opts3.statusText || STATUS_CODES[status],
          headers,
          counter: opts3.counter,
          trailer: Promise.resolve(opts3.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(clone4(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 }
    });
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/minipass-fetch/5.0.2/674bbfc94f8ccb7b01485badbade48dd193792bab868779ee4e2181857c0e9b2/node_modules/minipass-fetch/package.json
var require_package = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/minipass-fetch/5.0.2/674bbfc94f8ccb7b01485badbade48dd193792bab868779ee4e2181857c0e9b2/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"
      }
    };
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/minipass-fetch/5.0.2/674bbfc94f8ccb7b01485badbade48dd193792bab868779ee4e2181857c0e9b2/node_modules/minipass-fetch/lib/request.js
var require_request3 = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/minipass-fetch/5.0.2/674bbfc94f8ccb7b01485badbade48dd193792bab868779ee4e2181857c0e9b2/node_modules/minipass-fetch/lib/request.js"(exports2, module2) {
    "use strict";
    var { URL: URL7 } = __require("url");
    var { Minipass } = require_commonjs4();
    var Headers2 = require_headers4();
    var { exportNodeCompatibleHeaders } = Headers2;
    var Body = require_body2();
    var { clone: clone4, 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 proto3 = signal && typeof signal === "object" && Object.getPrototypeOf(signal);
      return !!(proto3 && proto3.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 method2 = (init2.method || input.method || "GET").toUpperCase();
        const isGETHEAD = method2 === "GET" || method2 === "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 ? clone4(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: method2,
          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 }
    });
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/minipass-fetch/5.0.2/674bbfc94f8ccb7b01485badbade48dd193792bab868779ee4e2181857c0e9b2/node_modules/minipass-fetch/lib/abort-error.js
var require_abort_error = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/minipass-fetch/5.0.2/674bbfc94f8ccb7b01485badbade48dd193792bab868779ee4e2181857c0e9b2/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;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/minipass-fetch/5.0.2/674bbfc94f8ccb7b01485badbade48dd193792bab868779ee4e2181857c0e9b2/node_modules/minipass-fetch/lib/index.js
var require_lib29 = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/minipass-fetch/5.0.2/674bbfc94f8ccb7b01485badbade48dd193792bab868779ee4e2181857c0e9b2/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 zlib2 = require_commonjs5();
    var { Minipass } = require_commonjs4();
    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 fetch3 = async (url7, opts3) => {
      if (/^data:/.test(url7)) {
        const request = new Request(url7, opts3);
        return Promise.resolve().then(() => new Promise((resolve4, reject3) => {
          let type4, data;
          try {
            const { pathname, search: search2 } = new URL7(url7);
            const split4 = pathname.split(",");
            if (split4.length < 2) {
              throw new Error("invalid data: URI");
            }
            const mime = split4.shift();
            const base64 = /;base64$/.test(mime);
            type4 = base64 ? mime.slice(0, -1 * ";base64".length) : mime;
            const rawData = decodeURIComponent(split4.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 resolve4(new Response(data, { headers }));
        }));
      }
      return new Promise((resolve4, reject3) => {
        const request = new Request(url7, opts3);
        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 (fetch3.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 (err2) {
                  reject3(err2);
                }
              }
            } 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");
              }
              resolve4(fetch3(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);
            resolve4(response);
            return;
          }
          const zlibOptions = {
            flush: zlib2.constants.Z_SYNC_FLUSH,
            finishFlush: zlib2.constants.Z_SYNC_FLUSH
          };
          if (codings === "gzip" || codings === "x-gzip") {
            const unzip = new zlib2.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
            );
            resolve4(response);
            return;
          }
          if (codings === "deflate" || codings === "x-deflate") {
            res.once("data", (chunk) => {
              const decoder3 = (chunk[0] & 15) === 8 ? new zlib2.Inflate() : new zlib2.InflateRaw();
              body.on(
                "error",
                /* istanbul ignore next */
                (er) => decoder3.emit("error", er)
              ).pipe(decoder3);
              response = new Response(decoder3, responseOptions);
              resolve4(response);
            });
            return;
          }
          if (codings === "br") {
            try {
              var decoder2 = new zlib2.BrotliDecompress();
            } catch (err2) {
              reject3(err2);
              finalize();
              return;
            }
            body.on(
              "error",
              /* istanbul ignore next */
              (er) => decoder2.emit("error", er)
            ).pipe(decoder2);
            response = new Response(decoder2, responseOptions);
            resolve4(response);
            return;
          }
          response = new Response(body, responseOptions);
          resolve4(response);
        });
        writeToStream(req2, request);
      });
    };
    module2.exports = fetch3;
    fetch3.isRedirect = (code) => code === 301 || code === 302 || code === 303 || code === 307 || code === 308;
    fetch3.Headers = Headers2;
    fetch3.Request = Request;
    fetch3.Response = Response;
    fetch3.FetchError = FetchError2;
    fetch3.AbortError = AbortError;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/npm-registry-fetch/19.1.1/f03465a7fe9805e8ce5f535900466236d00953a450180307912230c3e79fd9af/node_modules/npm-registry-fetch/package.json
var require_package2 = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/npm-registry-fetch/19.1.1/f03465a7fe9805e8ce5f535900466236d00953a450180307912230c3e79fd9af/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"
      }
    };
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/npm-registry-fetch/19.1.1/f03465a7fe9805e8ce5f535900466236d00953a450180307912230c3e79fd9af/node_modules/npm-registry-fetch/lib/default-opts.js
var require_default_opts = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/npm-registry-fetch/19.1.1/f03465a7fe9805e8ce5f535900466236d00953a450180307912230c3e79fd9af/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})`
    };
  }
});

// ../../../../../setup-pnpm/store/v11/links/@npmcli/redact/4.0.0/21c637ff0b70f94f92283febd5356d4867e9fbec97dbdcf5f42138cbba3161d4/node_modules/@npmcli/redact/lib/matchers.js
var require_matchers = __commonJS({
  "../../../../../setup-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: path240 }) => path240.endsWith(".headers.authorization"),
      replacement: "[REDACTED_HEADER_AUTHORIZATION]"
    };
    var DEEP_HEADER_SET_COOKIE = {
      type: TYPE_PATH,
      predicate: ({ path: path240 }) => path240.endsWith(".headers.set-cookie"),
      replacement: "[REDACTED_HEADER_SET_COOKIE]"
    };
    var DEEP_HEADER_COOKIE = {
      type: TYPE_PATH,
      predicate: ({ path: path240 }) => path240.endsWith(".headers.cookie"),
      replacement: "[REDACTED_HEADER_COOKIE]"
    };
    var REWRITE_REQUEST = {
      type: TYPE_PATH,
      predicate: ({ path: path240 }) => path240.endsWith(".request"),
      replacement: (input) => ({
        method: input?.method,
        path: input?.path,
        headers: input?.headers,
        url: input?.url
      })
    };
    var REWRITE_RESPONSE = {
      type: TYPE_PATH,
      predicate: ({ path: path240 }) => path240.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
    };
  }
});

// ../../../../../setup-pnpm/store/v11/links/@npmcli/redact/4.0.0/21c637ff0b70f94f92283febd5356d4867e9fbec97dbdcf5f42138cbba3161d4/node_modules/@npmcli/redact/lib/utils.js
var require_utils18 = __commonJS({
  "../../../../../setup-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 i4 = 0; i4 < values.length; i4++) {
        pattern += strings2[i4] + `(${urlEncodeRegexGroup(values[i4])})`;
      }
      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 (err2) {
        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 path240 = rawPath.join(".").toLowerCase();
        const { predicate, replacement } = matcher;
        const replace = typeof replacement === "function" ? replacement : () => replacement;
        const shouldRun = predicate({ rawPath, path: path240 });
        if (shouldRun) {
          value = replace(value, { rawPath, path: path240 });
        }
        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
    };
  }
});

// ../../../../../setup-pnpm/store/v11/links/@npmcli/redact/4.0.0/21c637ff0b70f94f92283febd5356d4867e9fbec97dbdcf5f42138cbba3161d4/node_modules/@npmcli/redact/lib/index.js
var require_lib30 = __commonJS({
  "../../../../../setup-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 index2 = 0;
      while (match = splitChars.exec(str2)) {
        result2 += redact(str2.slice(index2, match.index)) + match[0];
        index2 = splitChars.lastIndex;
      }
      return result2 + redact(str2.slice(index2));
    };
    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
    };
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/npm-registry-fetch/19.1.1/f03465a7fe9805e8ce5f535900466236d00953a450180307912230c3e79fd9af/node_modules/npm-registry-fetch/lib/check-response.js
var require_check_response = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/npm-registry-fetch/19.1.1/f03465a7fe9805e8ce5f535900466236d00953a450180307912230c3e79fd9af/node_modules/npm-registry-fetch/lib/check-response.js"(exports2, module2) {
    "use strict";
    var errors2 = require_errors8();
    var { Response } = require_lib29();
    var defaultOpts = require_default_opts();
    var { log: log3 } = require_lib15();
    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: method2, uri, res, startTime, auth, opts: opts3 }) => {
      opts3 = { ...defaultOpts, ...opts3 };
      if (res.headers.has("npm-notice") && !res.headers.has("x-local-cache")) {
        log3.notice("", res.headers.get("npm-notice"));
      }
      if (res.status >= 400) {
        logRequest(method2, 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(method2, res, startTime, opts3);
      } else {
        res.body.on("end", () => logRequest(method2, res, startTime, opts3));
        if (opts3.ignoreBody) {
          res.body.resume();
          return new Response(null, res);
        }
        return res;
      }
    };
    module2.exports = checkResponse;
    function logRequest(method2, 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",
          `${method2.toUpperCase()} ${res.status} ${urlStr} ${elapsedTime}ms${attemptStr}${cacheStr}`
        );
      }
    }
    function checkErrors(method2, res, startTime, opts3) {
      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(
              method2,
              res,
              parsed,
              opts3.spec
            );
          } else if (auth.indexOf("otp") !== -1) {
            throw new errors2.HttpErrorAuthOTP(
              method2,
              res,
              parsed,
              opts3.spec
            );
          } else {
            throw new errors2.HttpErrorAuthUnknown(
              method2,
              res,
              parsed,
              opts3.spec
            );
          }
        } else if (res.status === 401 && body != null && /one-time pass/.test(body.toString("utf8"))) {
          throw new errors2.HttpErrorAuthOTP(
            method2,
            res,
            parsed,
            opts3.spec
          );
        } else {
          throw new errors2.HttpErrorGeneral(
            method2,
            res,
            parsed,
            opts3.spec
          );
        }
      });
    }
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/npm-package-arg/13.0.2/a35ca26e56f80b994704b375c3e2b6150e19e75ed4cd0f984da62d1314fdfc41/node_modules/npm-package-arg/lib/npa.js
var require_npa2 = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/npm-package-arg/13.0.2/a35ca26e56f80b994704b375c3e2b6150e19e75ed4cd0f984da62d1314fdfc41/node_modules/npm-package-arg/lib/npa.js"(exports2, module2) {
    "use strict";
    var isWindows15 = process.platform === "win32";
    var { URL: URL7 } = __require("node:url");
    var path240 = isWindows15 ? __require("node:path/win32") : __require("node:path");
    var { homedir } = __require("node:os");
    var HostedGit4 = require_lib();
    var semver64 = require_semver2();
    var validatePackageName2 = require_lib19();
    var { log: log3 } = require_lib15();
    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 npa14(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 npa14.resolve(arg.name, arg.rawSpec, where || arg.where);
        } else {
          return npa14(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 valid6 = validatePackageName2(arg);
        if (valid6.validForOldPackages) {
          name = arg;
          spec = "*";
        } else {
          spec = arg;
        }
      }
      return resolve4(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 resolve4(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 = npa14(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, valid6, raw) {
      const err2 = new Error(`Invalid package name "${name}" of package "${raw}": ${valid6.errors.join("; ")}.`);
      err2.code = "EINVALIDPACKAGENAME";
      return err2;
    }
    function invalidTagName(name, raw) {
      const err2 = new Error(`Invalid tag name "${name}" of package "${raw}": Tags may not have any characters that encodeURIComponent encodes.`);
      err2.code = "EINVALIDTAGNAME";
      return err2;
    }
    function invalidPurlType(type4, raw) {
      const err2 = new Error(`Invalid type "${type4}" of package "${raw}": Purl can only be generated for "version" types.`);
      err2.code = "EINVALIDPURLTYPE";
      return err2;
    }
    var Result = class {
      constructor(opts3) {
        this.type = opts3.type;
        this.registry = opts3.registry;
        this.where = opts3.where;
        if (opts3.raw == null) {
          this.raw = opts3.name ? `${opts3.name}@${opts3.rawSpec}` : opts3.rawSpec;
        } else {
          this.raw = opts3.raw;
        }
        this.name = void 0;
        this.escapedName = void 0;
        this.scope = void 0;
        this.rawSpec = opts3.rawSpec || "";
        this.saveSpec = opts3.saveSpec;
        this.fetchSpec = opts3.fetchSpec;
        if (opts3.name) {
          this.setName(opts3.name);
        }
        this.gitRange = opts3.gitRange;
        this.gitCommittish = opts3.gitCommittish;
        this.gitSubdir = opts3.gitSubdir;
        this.hosted = opts3.hosted;
      }
      // TODO move this to a getter/setter in a semver major
      setName(name) {
        const valid6 = validatePackageName2(name);
        if (!valid6.validForOldPackages) {
          throw invalidPackageName(name, valid6, 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 pathToFileURL4(str2) {
      let result2 = "";
      for (let i4 = 0; i4 < str2.length; i4++) {
        result2 = `${result2}${encodedPathChars.get(str2[i4]) ?? str2[i4]}`;
      }
      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 = pathToFileURL4(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, `${pathToFileURL4(path240.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 = path240.resolve(homedir(), specPath.substr(3));
      } else if (!path240.isAbsolute(rawSpec.slice(5))) {
        res.saveSpec = `file:${path240.relative(where, resolvedPath)}`;
      } else {
        res.saveSpec = `file:${path240.resolve(resolvedPath)}`;
      }
      res.fetchSpec = path240.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 err2 = new Error(`Unsupported URL Type "${protocol}": ${spec}`);
      err2.code = "EUNSUPPORTEDPROTOCOL";
      return err2;
    }
    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 = npa14(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 = semver64.valid(spec, true);
      const range = semver64.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 = npa14;
    module2.exports.resolve = resolve4;
    module2.exports.toPurl = toPurl;
    module2.exports.Result = Result;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/npm-registry-fetch/19.1.1/f03465a7fe9805e8ce5f535900466236d00953a450180307912230c3e79fd9af/node_modules/npm-registry-fetch/lib/auth.js
var require_auth2 = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/npm-registry-fetch/19.1.1/f03465a7fe9805e8ce5f535900466236d00953a450180307912230c3e79fd9af/node_modules/npm-registry-fetch/lib/auth.js"(exports2, module2) {
    "use strict";
    var fs131 = __require("fs");
    var npa14 = require_npa2();
    var { URL: URL7 } = __require("url");
    var regFromURI = (uri, opts3) => {
      const parsed = new URL7(uri);
      let regKey = `//${parsed.host}${parsed.pathname}`;
      while (regKey.length > "//".length) {
        const authKey = hasAuth(regKey, opts3);
        if (authKey) {
          return { regKey, authKey };
        }
        regKey = regKey.replace(/([^/]+|\/)$/, "");
      }
      return { regKey: false, authKey: null };
    };
    var hasAuth = (regKey, opts3) => {
      if (opts3[`${regKey}:_authToken`]) {
        return "_authToken";
      }
      if (opts3[`${regKey}:_auth`]) {
        return "_auth";
      }
      if (opts3[`${regKey}:username`] && opts3[`${regKey}:_password`]) {
        return "username";
      }
      if (opts3[`${regKey}:certfile`] && opts3[`${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 = (opts3) => {
      const { spec } = opts3;
      const { scope: specScope, subSpec } = spec ? npa14(spec) : {};
      const subSpecScope = subSpec && subSpec.scope;
      const scope = subSpec ? subSpecScope : specScope;
      const scopeReg = scope && opts3[`${scope}:registry`];
      return scopeReg || opts3.registry;
    };
    var maybeReadFile = (file) => {
      try {
        return fs131.readFileSync(file, "utf8");
      } catch (er) {
        if (er.code !== "ENOENT") {
          throw er;
        }
        return null;
      }
    };
    var getAuth = (uri, opts3 = {}) => {
      const { forceAuth } = opts3;
      if (!uri) {
        throw new Error("URI is required");
      }
      const { regKey, authKey } = regFromURI(uri, forceAuth || opts3);
      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(opts3);
        if (registry && uri !== registry && sameHost(uri, registry)) {
          return getAuth(registry, opts3);
        } else if (registry !== opts3.registry) {
          const { regKey: scopeAuthKey, authKey: _authKey } = regFromURI(registry, opts3);
          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
      } = opts3;
      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;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/make-fetch-happen/15.0.6/c233388eda321f30d30b7aa8e10f4a9e3ad31f6bdc5e3f1308eb4707f0ae8b74/node_modules/make-fetch-happen/lib/options.js
var require_options2 = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/make-fetch-happen/15.0.6/c233388eda321f30d30b7aa8e10f4a9e3ad31f6bdc5e3f1308eb4707f0ae8b74/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 = (opts3) => {
      const { strictSSL, ...options } = { ...opts3 };
      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;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/http-cache-semantics/4.2.0/9c0ba231f27b65a16a30b70c4e5da007415344a2c0dde60ba8c2d7ea5a651a2d/node_modules/http-cache-semantics/index.js
var require_http_cache_semantics = __commonJS({
  "../../../../../setup-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
        };
      }
    };
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/negotiator/1.0.0/942118d0c8072b93440ee4e06590f00c2213076f3a458c319bdbf4267bd5f35e/node_modules/negotiator/lib/charset.js
var require_charset = __commonJS({
  "../../../../../setup-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 i4 = 0, j2 = 0; i4 < accepts.length; i4++) {
        var charset = parseCharset(accepts[i4].trim(), i4);
        if (charset) {
          accepts[j2++] = charset;
        }
      }
      accepts.length = j2;
      return accepts;
    }
    function parseCharset(str2, i4) {
      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: i4
      };
    }
    function getCharsetPriority(charset, accepted, index2) {
      var priority = { o: -1, q: 0, s: 0 };
      for (var i4 = 0; i4 < accepted.length; i4++) {
        var spec = specify(charset, accepted[i4], index2);
        if (spec && (priority.s - spec.s || priority.q - spec.q || priority.o - spec.o) < 0) {
          priority = spec;
        }
      }
      return priority;
    }
    function specify(charset, spec, index2) {
      var s = 0;
      if (spec.charset.toLowerCase() === charset.toLowerCase()) {
        s |= 1;
      } else if (spec.charset !== "*") {
        return null;
      }
      return {
        i: index2,
        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, index2) {
        return getCharsetPriority(type4, accepts, index2);
      });
      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;
    }
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/negotiator/1.0.0/942118d0c8072b93440ee4e06590f00c2213076f3a458c319bdbf4267bd5f35e/node_modules/negotiator/lib/encoding.js
var require_encoding2 = __commonJS({
  "../../../../../setup-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 i4 = 0, j2 = 0; i4 < accepts.length; i4++) {
        var encoding = parseEncoding(accepts[i4].trim(), i4);
        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: i4
        };
      }
      accepts.length = j2;
      return accepts;
    }
    function parseEncoding(str2, i4) {
      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: i4
      };
    }
    function getEncodingPriority(encoding, accepted, index2) {
      var priority = { encoding, o: -1, q: 0, s: 0 };
      for (var i4 = 0; i4 < accepted.length; i4++) {
        var spec = specify(encoding, accepted[i4], index2);
        if (spec && (priority.s - spec.s || priority.q - spec.q || priority.o - spec.o) < 0) {
          priority = spec;
        }
      }
      return priority;
    }
    function specify(encoding, spec, index2) {
      var s = 0;
      if (spec.encoding.toLowerCase() === encoding.toLowerCase()) {
        s |= 1;
      } else if (spec.encoding !== "*") {
        return null;
      }
      return {
        encoding,
        i: index2,
        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, index2) {
        return getEncodingPriority(type4, accepts, index2);
      });
      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;
    }
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/negotiator/1.0.0/942118d0c8072b93440ee4e06590f00c2213076f3a458c319bdbf4267bd5f35e/node_modules/negotiator/lib/language.js
var require_language = __commonJS({
  "../../../../../setup-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 i4 = 0, j2 = 0; i4 < accepts.length; i4++) {
        var language = parseLanguage(accepts[i4].trim(), i4);
        if (language) {
          accepts[j2++] = language;
        }
      }
      accepts.length = j2;
      return accepts;
    }
    function parseLanguage(str2, i4) {
      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: i4,
        full
      };
    }
    function getLanguagePriority(language, accepted, index2) {
      var priority = { o: -1, q: 0, s: 0 };
      for (var i4 = 0; i4 < accepted.length; i4++) {
        var spec = specify(language, accepted[i4], index2);
        if (spec && (priority.s - spec.s || priority.q - spec.q || priority.o - spec.o) < 0) {
          priority = spec;
        }
      }
      return priority;
    }
    function specify(language, spec, index2) {
      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: index2,
        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, index2) {
        return getLanguagePriority(type4, accepts, index2);
      });
      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;
    }
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/negotiator/1.0.0/942118d0c8072b93440ee4e06590f00c2213076f3a458c319bdbf4267bd5f35e/node_modules/negotiator/lib/mediaType.js
var require_mediaType = __commonJS({
  "../../../../../setup-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 i4 = 0, j2 = 0; i4 < accepts.length; i4++) {
        var mediaType = parseMediaType2(accepts[i4].trim(), i4);
        if (mediaType) {
          accepts[j2++] = mediaType;
        }
      }
      accepts.length = j2;
      return accepts;
    }
    function parseMediaType2(str2, i4) {
      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: i4
      };
    }
    function getMediaTypePriority(type4, accepted, index2) {
      var priority = { o: -1, q: 0, s: 0 };
      for (var i4 = 0; i4 < accepted.length; i4++) {
        var spec = specify(type4, accepted[i4], index2);
        if (spec && (priority.s - spec.s || priority.q - spec.q || priority.o - spec.o) < 0) {
          priority = spec;
        }
      }
      return priority;
    }
    function specify(type4, spec, index2) {
      var p = parseMediaType2(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: index2,
        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, index2) {
        return getMediaTypePriority(type4, accepts, index2);
      });
      return priorities.filter(isQuality).sort(compareSpecs).map(function getType2(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 index2 = 0;
      while ((index2 = string.indexOf('"', index2)) !== -1) {
        count2++;
        index2++;
      }
      return count2;
    }
    function splitKeyValuePair(str2) {
      var index2 = str2.indexOf("=");
      var key;
      var val;
      if (index2 === -1) {
        key = str2;
      } else {
        key = str2.slice(0, index2);
        val = str2.slice(index2 + 1);
      }
      return [key, val];
    }
    function splitMediaTypes(accept) {
      var accepts = accept.split(",");
      for (var i4 = 1, j2 = 0; i4 < accepts.length; i4++) {
        if (quoteCount(accepts[j2]) % 2 == 0) {
          accepts[++j2] = accepts[i4];
        } else {
          accepts[j2] += "," + accepts[i4];
        }
      }
      accepts.length = j2 + 1;
      return accepts;
    }
    function splitParameters(str2) {
      var parameters = str2.split(";");
      for (var i4 = 1, j2 = 0; i4 < parameters.length; i4++) {
        if (quoteCount(parameters[j2]) % 2 == 0) {
          parameters[++j2] = parameters[i4];
        } else {
          parameters[j2] += ";" + parameters[i4];
        }
      }
      parameters.length = j2 + 1;
      for (var i4 = 0; i4 < parameters.length; i4++) {
        parameters[i4] = parameters[i4].trim();
      }
      return parameters;
    }
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/negotiator/1.0.0/942118d0c8072b93440ee4e06590f00c2213076f3a458c319bdbf4267bd5f35e/node_modules/negotiator/index.js
var require_negotiator = __commonJS({
  "../../../../../setup-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, opts3) {
      var set2 = this.encodings(available, opts3);
      return set2 && set2[0];
    };
    Negotiator.prototype.encodings = function encodings(available, options) {
      var opts3 = options || {};
      return preferredEncodings(this.request.headers["accept-encoding"], available, opts3.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;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/make-fetch-happen/15.0.6/c233388eda321f30d30b7aa8e10f4a9e3ad31f6bdc5e3f1308eb4707f0ae8b74/node_modules/make-fetch-happen/lib/cache/policy.js
var require_policy = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/make-fetch-happen/15.0.6/c233388eda321f30d30b7aa8e10f4a9e3ad31f6bdc5e3f1308eb4707f0ae8b74/node_modules/make-fetch-happen/lib/cache/policy.js"(exports2, module2) {
    var CacheSemantics = require_http_cache_semantics();
    var Negotiator = require_negotiator();
    var ssri6 = require_lib18();
    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;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/make-fetch-happen/15.0.6/c233388eda321f30d30b7aa8e10f4a9e3ad31f6bdc5e3f1308eb4707f0ae8b74/node_modules/make-fetch-happen/lib/cache/errors.js
var require_errors9 = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/make-fetch-happen/15.0.6/c233388eda321f30d30b7aa8e10f4a9e3ad31f6bdc5e3f1308eb4707f0ae8b74/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
    };
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/minipass/3.3.6/b0ecfa20f1a9f03b76f728a076257742bd0337c03708e018d6cb5f2779177023/node_modules/minipass/index.js
var require_minipass = __commonJS({
  "../../../../../setup-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, opts3) {
        this.src = src2;
        this.dest = dest;
        this.opts = opts3;
        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, opts3) {
        super(src2, dest, opts3);
        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, opts3) {
        if (this[DESTROYED])
          return;
        const ended = this[EMITTED_END];
        opts3 = opts3 || {};
        if (dest === proc.stdout || dest === proc.stderr)
          opts3.end = false;
        else
          opts3.end = opts3.end !== false;
        opts3.proxyErrors = !!opts3.proxyErrors;
        if (ended) {
          if (opts3.end)
            dest.end();
        } else {
          this.pipes.push(!opts3.proxyErrors ? new Pipe(this, dest, opts3) : new PipeProxyErrors(this, dest, opts3));
          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((resolve4, reject3) => {
          this.on(DESTROYED, () => reject3(new Error("stream destroyed")));
          this.on("error", (er) => reject3(er));
          this.on("end", () => resolve4());
        });
      }
      // 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 resolve4 = 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();
            resolve4({ value, done: !!this[EOF] });
          };
          const onend = () => {
            this.removeListener("error", onerr);
            this.removeListener("data", ondata);
            resolve4({ done: true });
          };
          const ondestroy = () => onerr(new Error("stream destroyed"));
          return new Promise((res2, rej) => {
            reject3 = rej;
            resolve4 = 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"));
      }
    };
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/minipass-flush/1.0.7/692da9c20e9453e1b774919876d4780c0eb2e16bfb4c80ab59ea77560c4837c2/node_modules/minipass-flush/index.js
var require_minipass_flush = __commonJS({
  "../../../../../setup-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;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/minipass-collect/2.0.1/1500899019b1d0db0b33a43bc32e2fccd2df58d0bf6298bbb955303b3dcbe839/node_modules/minipass-collect/index.js
var require_minipass_collect = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/minipass-collect/2.0.1/1500899019b1d0db0b33a43bc32e2fccd2df58d0bf6298bbb955303b3dcbe839/node_modules/minipass-collect/index.js"(exports2, module2) {
    var { Minipass } = require_commonjs4();
    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;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/minipass-pipeline/1.2.4/f8e966786ed1c760697f4c7bc9f904148cfb1ab34d6a2d533a0a17563e3e3fcc/node_modules/minipass-pipeline/index.js
var require_minipass_pipeline = __commonJS({
  "../../../../../setup-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 isStream4 = (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(opts3, ...streams) {
        if (isStream4(opts3)) {
          streams.unshift(opts3);
          opts3 = {};
        }
        super(opts3);
        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;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@npmcli/fs/5.0.0/165c419cc6a274ceda8dd7531d811d2b4d60dfdba9e7783ac46713844a9cad43/node_modules/@npmcli/fs/lib/common/get-options.js
var require_get_options = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@npmcli/fs/5.0.0/165c419cc6a274ceda8dd7531d811d2b4d60dfdba9e7783ac46713844a9cad43/node_modules/@npmcli/fs/lib/common/get-options.js"(exports2, module2) {
    var getOptions2 = (input, { copy: copy2, wrap: wrap2 }) => {
      const result2 = {};
      if (input && typeof input === "object") {
        for (const prop3 of copy2) {
          if (input[prop3] !== void 0) {
            result2[prop3] = input[prop3];
          }
        }
      } else {
        result2[wrap2] = input;
      }
      return result2;
    };
    module2.exports = getOptions2;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@npmcli/fs/5.0.0/165c419cc6a274ceda8dd7531d811d2b4d60dfdba9e7783ac46713844a9cad43/node_modules/@npmcli/fs/lib/common/node.js
var require_node2 = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@npmcli/fs/5.0.0/165c419cc6a274ceda8dd7531d811d2b4d60dfdba9e7783ac46713844a9cad43/node_modules/@npmcli/fs/lib/common/node.js"(exports2, module2) {
    var semver64 = require_semver2();
    var satisfies4 = (range) => {
      return semver64.satisfies(process.version, range, { includePrerelease: true });
    };
    module2.exports = {
      satisfies: satisfies4
    };
  }
});

// ../../../../../setup-pnpm/store/v11/links/@npmcli/fs/5.0.0/165c419cc6a274ceda8dd7531d811d2b4d60dfdba9e7783ac46713844a9cad43/node_modules/@npmcli/fs/lib/cp/errors.js
var require_errors10 = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@npmcli/fs/5.0.0/165c419cc6a274ceda8dd7531d811d2b4d60dfdba9e7783ac46713844a9cad43/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}`;
      }
    };
  }
});

// ../../../../../setup-pnpm/store/v11/links/@npmcli/fs/5.0.0/165c419cc6a274ceda8dd7531d811d2b4d60dfdba9e7783ac46713844a9cad43/node_modules/@npmcli/fs/lib/cp/polyfill.js
var require_polyfill4 = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@npmcli/fs/5.0.0/165c419cc6a274ceda8dd7531d811d2b4d60dfdba9e7783ac46713844a9cad43/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_errors10();
    var {
      constants: {
        errno: {
          EEXIST,
          EISDIR,
          EINVAL,
          ENOTDIR
        }
      }
    } = __require("os");
    var {
      chmod,
      copyFile,
      lstat: lstat2,
      mkdir: mkdir2,
      readdir: readdir3,
      readlink,
      stat: stat2,
      symlink,
      unlink,
      utimes
    } = __require("fs/promises");
    var {
      dirname: dirname3,
      isAbsolute: isAbsolute4,
      join: join5,
      parse: parse12,
      resolve: resolve4,
      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, opts3) {
      if (opts3 != null && typeof opts3 !== "object") {
        throw new ERR_INVALID_ARG_TYPE("options", ["Object"], opts3);
      }
      return cpFn(
        toNamespacedPath(getValidatedPath(src2)),
        toNamespacedPath(getValidatedPath(dest)),
        { ...defaultOptions4, ...opts3 }
      );
    }
    function getValidatedPath(fileURLOrPath) {
      const path240 = fileURLOrPath != null && fileURLOrPath.href && fileURLOrPath.origin ? fileURLToPath7(fileURLOrPath) : fileURLOrPath;
      return path240;
    }
    async function cpFn(src2, dest, opts3) {
      if (opts3.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, opts3);
      const { srcStat, destStat } = stats;
      await checkParentPaths(src2, srcStat, dest);
      if (opts3.filter) {
        return handleFilter(checkParentDir, destStat, src2, dest, opts3);
      }
      return checkParentDir(destStat, src2, dest, opts3);
    }
    async function checkPaths(src2, dest, opts3) {
      const { 0: srcStat, 1: destStat } = await getStats2(src2, dest, opts3);
      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, opts3) {
      const statFunc = opts3.dereference ? (file) => stat2(file, { bigint: true }) : (file) => lstat2(file, { bigint: true });
      return Promise.all([
        statFunc(src2),
        statFunc(dest).catch((err2) => {
          if (err2.code === "ENOENT") {
            return null;
          }
          throw err2;
        })
      ]);
    }
    async function checkParentDir(destStat, src2, dest, opts3) {
      const destParent = dirname3(dest);
      const dirExists = await pathExists3(destParent);
      if (dirExists) {
        return getStatsForCopy(destStat, src2, dest, opts3);
      }
      await mkdir2(destParent, { recursive: true });
      return getStatsForCopy(destStat, src2, dest, opts3);
    }
    function pathExists3(dest) {
      return stat2(dest).then(
        () => true,
        // istanbul ignore next: not sure when this would occur
        (err2) => err2.code === "ENOENT" ? false : Promise.reject(err2)
      );
    }
    async function checkParentPaths(src2, srcStat, dest) {
      const srcParent = resolve4(dirname3(src2));
      const destParent = resolve4(dirname3(dest));
      if (destParent === srcParent || destParent === parse12(destParent).root) {
        return;
      }
      let destStat;
      try {
        destStat = await stat2(destParent, { bigint: true });
      } catch (err2) {
        if (err2.code === "ENOENT") {
          return;
        }
        throw err2;
      }
      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 = (path240) => resolve4(path240).split(sep2).filter(Boolean);
    function isSrcSubdir(src2, dest) {
      const srcArr = normalizePathToArray(src2);
      const destArr = normalizePathToArray(dest);
      return srcArr.every((cur, i4) => destArr[i4] === cur);
    }
    async function handleFilter(onInclude, destStat, src2, dest, opts3, cb) {
      const include = await opts3.filter(src2, dest);
      if (include) {
        return onInclude(destStat, src2, dest, opts3, cb);
      }
    }
    function startCopy(destStat, src2, dest, opts3) {
      if (opts3.filter) {
        return handleFilter(getStatsForCopy, destStat, src2, dest, opts3);
      }
      return getStatsForCopy(destStat, src2, dest, opts3);
    }
    async function getStatsForCopy(destStat, src2, dest, opts3) {
      const statFn = opts3.dereference ? stat2 : lstat2;
      const srcStat = await statFn(src2);
      if (srcStat.isDirectory() && opts3.recursive) {
        return onDir(srcStat, destStat, src2, dest, opts3);
      } 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, opts3);
      } 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, opts3) {
      if (!destStat) {
        return _copyFile(srcStat, src2, dest, opts3);
      }
      return mayCopyFile(srcStat, src2, dest, opts3);
    }
    async function mayCopyFile(srcStat, src2, dest, opts3) {
      if (opts3.force) {
        await unlink(dest);
        return _copyFile(srcStat, src2, dest, opts3);
      } else if (opts3.errorOnExist) {
        throw new ERR_FS_CP_EEXIST({
          message: `${dest} already exists`,
          path: dest,
          syscall: "cp",
          errno: EEXIST
        });
      }
    }
    async function _copyFile(srcStat, src2, dest, opts3) {
      await copyFile(src2, dest);
      if (opts3.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, opts3) {
      if (!destStat) {
        return mkDirAndCopy(srcStat.mode, src2, dest, opts3);
      }
      return copyDir(src2, dest, opts3);
    }
    async function mkDirAndCopy(srcMode, src2, dest, opts3) {
      await mkdir2(dest);
      await copyDir(src2, dest, opts3);
      return setDestMode(dest, srcMode);
    }
    async function copyDir(src2, dest, opts3) {
      const dir = await readdir3(src2);
      for (let i4 = 0; i4 < dir.length; i4++) {
        const item = dir[i4];
        const srcItem = join5(src2, item);
        const destItem = join5(dest, item);
        const { destStat } = await checkPaths(srcItem, destItem, opts3);
        await startCopy(destStat, srcItem, destItem, opts3);
      }
    }
    async function onLink(destStat, src2, dest) {
      let resolvedSrc = await readlink(src2);
      if (!isAbsolute4(resolvedSrc)) {
        resolvedSrc = resolve4(dirname3(src2), resolvedSrc);
      }
      if (!destStat) {
        return symlink(resolvedSrc, dest);
      }
      let resolvedDest;
      try {
        resolvedDest = await readlink(dest);
      } catch (err2) {
        if (err2.code === "EINVAL" || err2.code === "UNKNOWN") {
          return symlink(resolvedSrc, dest);
        }
        throw err2;
      }
      if (!isAbsolute4(resolvedDest)) {
        resolvedDest = resolve4(dirname3(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;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@npmcli/fs/5.0.0/165c419cc6a274ceda8dd7531d811d2b4d60dfdba9e7783ac46713844a9cad43/node_modules/@npmcli/fs/lib/cp/index.js
var require_cp = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@npmcli/fs/5.0.0/165c419cc6a274ceda8dd7531d811d2b4d60dfdba9e7783ac46713844a9cad43/node_modules/@npmcli/fs/lib/cp/index.js"(exports2, module2) {
    var fs131 = __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, opts3) => {
      const options = getOptions2(opts3, {
        copy: ["dereference", "errorOnExist", "filter", "force", "preserveTimestamps", "recursive"]
      });
      return useNative ? fs131.cp(src2, dest, options) : polyfill(src2, dest, options);
    };
    module2.exports = cp;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@npmcli/fs/5.0.0/165c419cc6a274ceda8dd7531d811d2b4d60dfdba9e7783ac46713844a9cad43/node_modules/@npmcli/fs/lib/with-temp-dir.js
var require_with_temp_dir = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@npmcli/fs/5.0.0/165c419cc6a274ceda8dd7531d811d2b4d60dfdba9e7783ac46713844a9cad43/node_modules/@npmcli/fs/lib/with-temp-dir.js"(exports2, module2) {
    var { join: join5, sep: sep2 } = __require("path");
    var getOptions2 = require_get_options();
    var { mkdir: mkdir2, mkdtemp: mkdtemp2, rm: rm3 } = __require("fs/promises");
    var withTempDir = async (root, fn, opts3) => {
      const options = getOptions2(opts3, {
        copy: ["tmpPrefix"]
      });
      await mkdir2(root, { recursive: true });
      const target2 = await mkdtemp2(join5(`${root}${sep2}`, options.tmpPrefix || ""));
      let err2;
      let result2;
      try {
        result2 = await fn(target2);
      } catch (_err) {
        err2 = _err;
      }
      try {
        await rm3(target2, { force: true, recursive: true });
      } catch {
      }
      if (err2) {
        throw err2;
      }
      return result2;
    };
    module2.exports = withTempDir;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@npmcli/fs/5.0.0/165c419cc6a274ceda8dd7531d811d2b4d60dfdba9e7783ac46713844a9cad43/node_modules/@npmcli/fs/lib/readdir-scoped.js
var require_readdir_scoped = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@npmcli/fs/5.0.0/165c419cc6a274ceda8dd7531d811d2b4d60dfdba9e7783ac46713844a9cad43/node_modules/@npmcli/fs/lib/readdir-scoped.js"(exports2, module2) {
    var { readdir: readdir3 } = __require("fs/promises");
    var { join: join5 } = __require("path");
    var readdirScoped = async (dir) => {
      const results = [];
      for (const item of await readdir3(dir)) {
        if (item.startsWith("@")) {
          for (const scopedItem of await readdir3(join5(dir, item))) {
            results.push(join5(item, scopedItem));
          }
        } else {
          results.push(item);
        }
      }
      return results;
    };
    module2.exports = readdirScoped;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@npmcli/fs/5.0.0/165c419cc6a274ceda8dd7531d811d2b4d60dfdba9e7783ac46713844a9cad43/node_modules/@npmcli/fs/lib/move-file.js
var require_move_file = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@npmcli/fs/5.0.0/165c419cc6a274ceda8dd7531d811d2b4d60dfdba9e7783ac46713844a9cad43/node_modules/@npmcli/fs/lib/move-file.js"(exports2, module2) {
    var { dirname: dirname3, join: join5, resolve: resolve4, relative: relative2, isAbsolute: isAbsolute4 } = __require("path");
    var fs131 = __require("fs/promises");
    var pathExists3 = async (path240) => {
      try {
        await fs131.access(path240);
        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 fs131.mkdir(dirname3(destination), { recursive: true });
      try {
        await fs131.rename(source, destination);
      } catch (error) {
        if (error.code === "EXDEV" || error.code === "EPERM") {
          const sourceStat = await fs131.lstat(source);
          if (sourceStat.isDirectory()) {
            const files = await fs131.readdir(source);
            await Promise.all(files.map(
              (file) => moveFile(join5(source, file), join5(destination, file), options, false, symlinks)
            ));
          } else if (sourceStat.isSymbolicLink()) {
            symlinks.push({ source, destination });
          } else {
            await fs131.copyFile(source, destination);
          }
        } else {
          throw error;
        }
      }
      if (root) {
        await Promise.all(symlinks.map(async ({ source: symSource, destination: symDestination }) => {
          let target2 = await fs131.readlink(symSource);
          if (isAbsolute4(target2)) {
            target2 = resolve4(symDestination, relative2(symSource, target2));
          }
          let targetStat = "file";
          try {
            targetStat = await fs131.stat(resolve4(dirname3(symSource), target2));
            if (targetStat.isDirectory()) {
              targetStat = "junction";
            }
          } catch {
          }
          await fs131.symlink(
            target2,
            symDestination,
            targetStat
          );
        }));
        await fs131.rm(source, { recursive: true, force: true });
      }
    };
    module2.exports = moveFile;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@npmcli/fs/5.0.0/165c419cc6a274ceda8dd7531d811d2b4d60dfdba9e7783ac46713844a9cad43/node_modules/@npmcli/fs/lib/index.js
var require_lib31 = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@npmcli/fs/5.0.0/165c419cc6a274ceda8dd7531d811d2b4d60dfdba9e7783ac46713844a9cad43/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
    };
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/cacache/20.0.4/9069421e65b8c869fd001cfde347ef1ab7a971e601609830b2c8574d797cd78d/node_modules/cacache/lib/util/tmp.js
var require_tmp = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/cacache/20.0.4/9069421e65b8c869fd001cfde347ef1ab7a971e601609830b2c8574d797cd78d/node_modules/cacache/lib/util/tmp.js"(exports2, module2) {
    "use strict";
    var crypto14 = __require("crypto");
    var { withTempDir } = require_lib31();
    var fs131 = __require("fs/promises");
    var path240 = __require("path");
    module2.exports.mkdir = mktmpdir;
    module2.exports.tmpName = function tmpName(cache, tmpPrefix) {
      const id = crypto14.randomUUID();
      return path240.join(cache, "tmp", tmpPrefix ? `${tmpPrefix}-${id}` : id);
    };
    async function mktmpdir(cache, opts3 = {}) {
      const { tmpPrefix } = opts3;
      const tmpDir = path240.join(cache, "tmp");
      await fs131.mkdir(tmpDir, { recursive: true, owner: "inherit" });
      const target2 = `${tmpDir}${path240.sep}${tmpPrefix || ""}`;
      return fs131.mkdtemp(target2, { owner: "inherit" });
    }
    module2.exports.withTmp = withTmp;
    function withTmp(cache, opts3, cb) {
      if (!cb) {
        cb = opts3;
        opts3 = {};
      }
      return withTempDir(path240.join(cache, "tmp"), cb, opts3);
    }
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/cacache/20.0.4/9069421e65b8c869fd001cfde347ef1ab7a971e601609830b2c8574d797cd78d/node_modules/cacache/package.json
var require_package3 = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/cacache/20.0.4/9069421e65b8c869fd001cfde347ef1ab7a971e601609830b2c8574d797cd78d/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/**"
        ]
      }
    };
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/cacache/20.0.4/9069421e65b8c869fd001cfde347ef1ab7a971e601609830b2c8574d797cd78d/node_modules/cacache/lib/util/hash-to-segments.js
var require_hash_to_segments = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/cacache/20.0.4/9069421e65b8c869fd001cfde347ef1ab7a971e601609830b2c8574d797cd78d/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)];
    }
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/cacache/20.0.4/9069421e65b8c869fd001cfde347ef1ab7a971e601609830b2c8574d797cd78d/node_modules/cacache/lib/content/path.js
var require_path4 = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/cacache/20.0.4/9069421e65b8c869fd001cfde347ef1ab7a971e601609830b2c8574d797cd78d/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 path240 = __require("path");
    var ssri6 = require_lib18();
    module2.exports = contentPath;
    function contentPath(cache, integrity) {
      const sri = ssri6.parse(integrity, { single: true });
      return path240.join(
        contentDir(cache),
        sri.algorithm,
        ...hashToSegments(sri.hexDigest())
      );
    }
    module2.exports.contentDir = contentDir;
    function contentDir(cache) {
      return path240.join(cache, `content-v${contentVer}`);
    }
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/cacache/20.0.4/9069421e65b8c869fd001cfde347ef1ab7a971e601609830b2c8574d797cd78d/node_modules/cacache/lib/entry-index.js
var require_entry_index = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/cacache/20.0.4/9069421e65b8c869fd001cfde347ef1ab7a971e601609830b2c8574d797cd78d/node_modules/cacache/lib/entry-index.js"(exports2, module2) {
    "use strict";
    var crypto14 = __require("crypto");
    var {
      appendFile,
      mkdir: mkdir2,
      readFile: readFile5,
      readdir: readdir3,
      rm: rm3,
      writeFile: writeFile3
    } = __require("fs/promises");
    var { Minipass } = require_commonjs4();
    var path240 = __require("path");
    var ssri6 = require_lib18();
    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, opts3 = {}) {
      const bucket = bucketPath(cache, key);
      const entries = await bucketEntries(bucket);
      const newEntries = [];
      for (let i4 = entries.length - 1; i4 >= 0; --i4) {
        const entry = entries[i4];
        if (entry.integrity === null && !opts3.validateEntry) {
          break;
        }
        if ((!opts3.validateEntry || opts3.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, opts3.tmpPrefix);
        await mkdir2(path240.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(path240.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, opts3 = {}) {
      const { metadata, size, time } = opts3;
      const bucket = bucketPath(cache, key);
      const entry = {
        key,
        integrity: integrity && ssri6.stringify(integrity),
        time: time || Date.now(),
        size,
        metadata
      };
      try {
        await mkdir2(path240.dirname(bucket), { recursive: true });
        const stringified = JSON.stringify(entry);
        await appendFile(bucket, `
${hashEntry(stringified)}	${stringified}`);
      } catch (err2) {
        if (err2.code === "ENOENT") {
          return void 0;
        }
        throw err2;
      }
      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 (err2) {
        if (err2.code === "ENOENT") {
          return null;
        } else {
          throw err2;
        }
      }
    }
    module2.exports.delete = del;
    function del(cache, key, opts3 = {}) {
      if (!opts3.removeFully) {
        return insert(cache, key, null, opts3);
      }
      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 = path240.join(indexDir, bucket);
            const subbuckets = await readdirOrEmpty(bucketPath2);
            await pMap2(
              subbuckets,
              async (subbucket) => {
                const subbucketPath = path240.join(bucketPath2, subbucket);
                const subbucketEntries = await readdirOrEmpty(subbucketPath);
                await pMap2(
                  subbucketEntries,
                  async (entry) => {
                    const entryPath = path240.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 (err2) {
                      if (err2.code === "ENOENT") {
                        return void 0;
                      }
                      throw err2;
                    }
                  },
                  { concurrency: lsStreamConcurrency }
                );
              },
              { concurrency: lsStreamConcurrency }
            );
          },
          { concurrency: lsStreamConcurrency }
        );
        stream2.end();
        return stream2;
      }).catch((err2) => stream2.emit("error", err2));
      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 readFile5(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 path240.join(cache, `index-v${indexV}`);
    }
    module2.exports.bucketPath = bucketPath;
    function bucketPath(cache, key) {
      const hashed = hashKey(key);
      return path240.join.apply(
        path240,
        [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 crypto14.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((err2) => {
        if (err2.code === "ENOENT" || err2.code === "ENOTDIR") {
          return [];
        }
        throw err2;
      });
    }
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/cacache/20.0.4/9069421e65b8c869fd001cfde347ef1ab7a971e601609830b2c8574d797cd78d/node_modules/cacache/lib/memoization.js
var require_memoization = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/cacache/20.0.4/9069421e65b8c869fd001cfde347ef1ab7a971e601609830b2c8574d797cd78d/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, opts3) {
      pickMem(opts3).set(`key:${cache}:${entry.key}`, { entry, data });
      putDigest(cache, entry.integrity, data, opts3);
    }
    module2.exports.put.byDigest = putDigest;
    function putDigest(cache, integrity, data, opts3) {
      pickMem(opts3).set(`digest:${cache}:${integrity}`, data);
    }
    module2.exports.get = get2;
    function get2(cache, key, opts3) {
      return pickMem(opts3).get(`key:${cache}:${key}`);
    }
    module2.exports.get.byDigest = getDigest;
    function getDigest(cache, integrity, opts3) {
      return pickMem(opts3).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(opts3) {
      if (!opts3 || !opts3.memoize) {
        return MEMOIZED;
      } else if (opts3.memoize.get && opts3.memoize.set) {
        return opts3.memoize;
      } else if (typeof opts3.memoize === "object") {
        return new ObjProxy(opts3.memoize);
      } else {
        return MEMOIZED;
      }
    }
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/fs-minipass/3.0.3/a713279255f033336363b93b27bbbca43b5b300c7648a63f09c0e9402d1b9e30/node_modules/fs-minipass/lib/index.js
var require_lib32 = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/fs-minipass/3.0.3/a713279255f033336363b93b27bbbca43b5b300c7648a63f09c0e9402d1b9e30/node_modules/fs-minipass/lib/index.js"(exports2) {
    "use strict";
    var { Minipass } = require_commonjs4();
    var EE = __require("events").EventEmitter;
    var fs131 = __require("fs");
    var writev = fs131.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(path240, opt) {
        opt = opt || {};
        super(opt);
        this.readable = true;
        this.writable = false;
        if (typeof path240 !== "string") {
          throw new TypeError("path must be a string");
        }
        this[_errored] = false;
        this[_fd] = typeof opt.fd === "number" ? opt.fd : null;
        this[_path] = path240;
        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]() {
        fs131.open(this[_path], "r", (er, fd2) => this[_onopen](er, fd2));
      }
      [_onopen](er, fd2) {
        if (er) {
          this[_onerror](er);
        } else {
          this[_fd] = fd2;
          this.emit("open", fd2);
          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));
          }
          fs131.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 fd2 = this[_fd];
          this[_fd] = null;
          fs131.close(fd2, (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, fs131.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 : fs131.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 fd2 = this[_fd];
          this[_fd] = null;
          fs131.closeSync(fd2);
          this.emit("close");
        }
      }
    };
    var WriteStream = class extends EE {
      constructor(path240, 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] = path240;
        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]() {
        fs131.open(
          this[_path],
          this[_flags],
          this[_mode],
          (er, fd2) => this[_onopen](er, fd2)
        );
      }
      [_onopen](er, fd2) {
        if (this[_defaultFlag] && this[_flags] === "r+" && er && er.code === "ENOENT") {
          this[_flags] = "w";
          this[_open]();
        } else if (er) {
          this[_onerror](er);
        } else {
          this[_fd] = fd2;
          this.emit("open", fd2);
          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) {
        fs131.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 fd2 = this[_fd];
          this[_fd] = null;
          fs131.close(fd2, (er) => er ? this.emit("error", er) : this.emit("close"));
        }
      }
    };
    var WriteStreamSync = class extends WriteStream {
      [_open]() {
        let fd2;
        if (this[_defaultFlag] && this[_flags] === "r+") {
          try {
            fd2 = fs131.openSync(this[_path], this[_flags], this[_mode]);
          } catch (er) {
            if (er.code === "ENOENT") {
              this[_flags] = "w";
              return this[_open]();
            } else {
              throw er;
            }
          }
        } else {
          fd2 = fs131.openSync(this[_path], this[_flags], this[_mode]);
        }
        this[_onopen](null, fd2);
      }
      [_close]() {
        if (this[_autoClose] && typeof this[_fd] === "number") {
          const fd2 = this[_fd];
          this[_fd] = null;
          fs131.closeSync(fd2);
          this.emit("close");
        }
      }
      [_write](buf) {
        let threw = true;
        try {
          this[_onwrite](
            null,
            fs131.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;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/cacache/20.0.4/9069421e65b8c869fd001cfde347ef1ab7a971e601609830b2c8574d797cd78d/node_modules/cacache/lib/content/read.js
var require_read2 = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/cacache/20.0.4/9069421e65b8c869fd001cfde347ef1ab7a971e601609830b2c8574d797cd78d/node_modules/cacache/lib/content/read.js"(exports2, module2) {
    "use strict";
    var fs131 = __require("fs/promises");
    var fsm = require_lib32();
    var ssri6 = require_lib18();
    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, opts3 = {}) {
      const { size } = opts3;
      const { stat: stat2, cpath, sri } = await withContentSri(cache, integrity, async (cpath2, sri2) => {
        const stat3 = size ? { size } : await fs131.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 fs131.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, opts3 = {}) {
      const { size } = opts3;
      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 fs131.stat(cpath2);
          return { stat: stat3, cpath: cpath2, sri: sri2 };
        });
        return readPipeline(cpath, stat2.size, sri, stream2);
      }).catch((err2) => stream2.emit("error", err2));
      return stream2;
    }
    module2.exports.copy = copy2;
    function copy2(cache, integrity, dest) {
      return withContentSri(cache, integrity, (cpath) => {
        return fs131.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 fs131.stat(cpath);
          return { size: stat2.size, sri, stat: stat2 };
        });
      } catch (err2) {
        if (err2.code === "ENOENT") {
          return false;
        }
        if (err2.code === "EPERM") {
          if (process.platform !== "win32") {
            throw err2;
          } 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 (err2) {
            if (err2.code === "ENOENT") {
              return Object.assign(
                new Error("No matching content found for " + sri.toString()),
                { code: "ENOENT" }
              );
            }
            return err2;
          }
        }));
        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 err2 = new Error(`Bad data size: expected inserted data to be ${expected} bytes, but got ${found} instead`);
      err2.expected = expected;
      err2.found = found;
      err2.code = "EBADSIZE";
      return err2;
    }
    function integrityError(sri, path240) {
      const err2 = new Error(`Integrity verification failed for ${sri} (${path240})`);
      err2.code = "EINTEGRITY";
      err2.sri = sri;
      err2.path = path240;
      return err2;
    }
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/cacache/20.0.4/9069421e65b8c869fd001cfde347ef1ab7a971e601609830b2c8574d797cd78d/node_modules/cacache/lib/get.js
var require_get3 = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/cacache/20.0.4/9069421e65b8c869fd001cfde347ef1ab7a971e601609830b2c8574d797cd78d/node_modules/cacache/lib/get.js"(exports2, module2) {
    "use strict";
    var Collect = require_minipass_collect();
    var { Minipass } = require_commonjs4();
    var Pipeline = require_minipass_pipeline();
    var index2 = require_entry_index();
    var memo = require_memoization();
    var read2 = require_read2();
    async function getData(cache, key, opts3 = {}) {
      const { integrity, memoize: memoize2, size } = opts3;
      const memoized2 = memo.get(cache, key, opts3);
      if (memoized2 && memoize2 !== false) {
        return {
          metadata: memoized2.entry.metadata,
          data: memoized2.data,
          integrity: memoized2.entry.integrity,
          size: memoized2.entry.size
        };
      }
      const entry = await index2.find(cache, key, opts3);
      if (!entry) {
        throw new index2.NotFoundError(cache, key);
      }
      const data = await read2(cache, entry.integrity, { integrity, size });
      if (memoize2) {
        memo.put(cache, entry, data, opts3);
      }
      return {
        data,
        metadata: entry.metadata,
        size: entry.size,
        integrity: entry.integrity
      };
    }
    module2.exports = getData;
    async function getDataByDigest(cache, key, opts3 = {}) {
      const { integrity, memoize: memoize2, size } = opts3;
      const memoized2 = memo.get.byDigest(cache, key, opts3);
      if (memoized2 && memoize2 !== false) {
        return memoized2;
      }
      const res = await read2(cache, key, { integrity, size });
      if (memoize2) {
        memo.put.byDigest(cache, key, res, opts3);
      }
      return res;
    }
    module2.exports.byDigest = getDataByDigest;
    var getMemoizedStream = (memoized2) => {
      const stream2 = new Minipass();
      stream2.on("newListener", function(ev, cb) {
        ev === "metadata" && cb(memoized2.entry.metadata);
        ev === "integrity" && cb(memoized2.entry.integrity);
        ev === "size" && cb(memoized2.entry.size);
      });
      stream2.end(memoized2.data);
      return stream2;
    };
    function getStream(cache, key, opts3 = {}) {
      const { memoize: memoize2, size } = opts3;
      const memoized2 = memo.get(cache, key, opts3);
      if (memoized2 && memoize2 !== false) {
        return getMemoizedStream(memoized2);
      }
      const stream2 = new Pipeline();
      Promise.resolve().then(async () => {
        const entry = await index2.find(cache, key);
        if (!entry) {
          throw new index2.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,
          { ...opts3, size: typeof size !== "number" ? entry.size : size }
        );
        if (memoize2) {
          const memoStream = new Collect.PassThrough();
          memoStream.on("collect", (data) => memo.put(cache, entry, data, opts3));
          stream2.unshift(memoStream);
        }
        stream2.unshift(src2);
        return stream2;
      }).catch((err2) => stream2.emit("error", err2));
      return stream2;
    }
    module2.exports.stream = getStream;
    function getStreamDigest(cache, integrity, opts3 = {}) {
      const { memoize: memoize2 } = opts3;
      const memoized2 = memo.get.byDigest(cache, integrity, opts3);
      if (memoized2 && memoize2 !== false) {
        const stream2 = new Minipass();
        stream2.end(memoized2);
        return stream2;
      } else {
        const stream2 = read2.readStream(cache, integrity, opts3);
        if (!memoize2) {
          return stream2;
        }
        const memoStream = new Collect.PassThrough();
        memoStream.on("collect", (data) => memo.put.byDigest(
          cache,
          integrity,
          data,
          opts3
        ));
        return new Pipeline(stream2, memoStream);
      }
    }
    module2.exports.stream.byDigest = getStreamDigest;
    function info(cache, key, opts3 = {}) {
      const { memoize: memoize2 } = opts3;
      const memoized2 = memo.get(cache, key, opts3);
      if (memoized2 && memoize2 !== false) {
        return Promise.resolve(memoized2.entry);
      } else {
        return index2.find(cache, key);
      }
    }
    module2.exports.info = info;
    async function copy2(cache, key, dest, opts3 = {}) {
      const entry = await index2.find(cache, key, opts3);
      if (!entry) {
        throw new index2.NotFoundError(cache, key);
      }
      await read2.copy(cache, entry.integrity, dest, opts3);
      return {
        metadata: entry.metadata,
        size: entry.size,
        integrity: entry.integrity
      };
    }
    module2.exports.copy = copy2;
    async function copyByDigest(cache, key, dest, opts3 = {}) {
      await read2.copy(cache, key, dest, opts3);
      return key;
    }
    module2.exports.copy.byDigest = copyByDigest;
    module2.exports.hasContent = read2.hasContent;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/cacache/20.0.4/9069421e65b8c869fd001cfde347ef1ab7a971e601609830b2c8574d797cd78d/node_modules/cacache/lib/content/write.js
var require_write = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/cacache/20.0.4/9069421e65b8c869fd001cfde347ef1ab7a971e601609830b2c8574d797cd78d/node_modules/cacache/lib/content/write.js"(exports2, module2) {
    "use strict";
    var events = __require("events");
    var contentPath = require_path4();
    var fs131 = __require("fs/promises");
    var { moveFile } = require_lib31();
    var { Minipass } = require_commonjs4();
    var Pipeline = require_minipass_pipeline();
    var Flush = require_minipass_flush();
    var path240 = __require("path");
    var ssri6 = require_lib18();
    var { tmpName } = require_tmp();
    var fsm = require_lib32();
    module2.exports = write;
    var moveOperations = /* @__PURE__ */ new Map();
    async function write(cache, data, opts3 = {}) {
      const { algorithms, size, integrity } = opts3;
      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, opts3)) {
        throw checksumError(integrity, sri);
      }
      for (const algo in sri) {
        const tmp = await makeTmp(cache, opts3);
        const hash2 = sri[algo].toString();
        try {
          await fs131.writeFile(tmp.target, data, { flag: "wx" });
          await moveToDestination(tmp, cache, hash2, opts3);
        } finally {
          if (!tmp.moved) {
            await fs131.rm(tmp.target, { recursive: true, force: true });
          }
        }
      }
      return { integrity: sri, size: data.length };
    }
    module2.exports.stream = writeStream;
    var CacacheWriteStream = class extends Flush {
      constructor(cache, opts3) {
        super();
        this.opts = opts3;
        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, opts3 = {}) {
      return new CacacheWriteStream(cache, opts3);
    }
    async function handleContent(inputStream, cache, opts3) {
      const tmp = await makeTmp(cache, opts3);
      try {
        const res = await pipeToTmp(inputStream, cache, tmp.target, opts3);
        await moveToDestination(
          tmp,
          cache,
          res.integrity,
          opts3
        );
        return res;
      } finally {
        if (!tmp.moved) {
          await fs131.rm(tmp.target, { recursive: true, force: true });
        }
      }
    }
    async function pipeToTmp(inputStream, cache, tmpTarget, opts3) {
      const outStream = new fsm.WriteStream(tmpTarget, {
        flags: "wx"
      });
      if (opts3.integrityEmitter) {
        const [integrity2, size2] = await Promise.all([
          events.once(opts3.integrityEmitter, "integrity").then((res) => res[0]),
          events.once(opts3.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: opts3.integrity,
        algorithms: opts3.algorithms,
        size: opts3.size
      });
      hashStream.on("integrity", (i4) => {
        integrity = i4;
      });
      hashStream.on("size", (s) => {
        size = s;
      });
      const pipeline2 = new Pipeline(inputStream, hashStream, outStream);
      await pipeline2.promise();
      return { integrity, size };
    }
    async function makeTmp(cache, opts3) {
      const tmpTarget = tmpName(cache, opts3.tmpPrefix);
      await fs131.mkdir(path240.dirname(tmpTarget), { recursive: true });
      return {
        target: tmpTarget,
        moved: false
      };
    }
    async function moveToDestination(tmp, cache, sri) {
      const destination = contentPath(cache, sri);
      const destDir = path240.dirname(destination);
      if (moveOperations.has(destination)) {
        return moveOperations.get(destination);
      }
      moveOperations.set(
        destination,
        fs131.mkdir(destDir, { recursive: true }).then(async () => {
          await moveFile(tmp.target, destination, { overwrite: false });
          tmp.moved = true;
          return tmp.moved;
        }).catch((err2) => {
          if (!err2.message.startsWith("The destination file exists")) {
            throw Object.assign(err2, { code: "EEXIST" });
          }
        }).finally(() => {
          moveOperations.delete(destination);
        })
      );
      return moveOperations.get(destination);
    }
    function sizeError(expected, found) {
      const err2 = new Error(`Bad data size: expected inserted data to be ${expected} bytes, but got ${found} instead`);
      err2.expected = expected;
      err2.found = found;
      err2.code = "EBADSIZE";
      return err2;
    }
    function checksumError(expected, found) {
      const err2 = new Error(`Integrity check failed:
  Wanted: ${expected}
   Found: ${found}`);
      err2.code = "EINTEGRITY";
      err2.expected = expected;
      err2.found = found;
      return err2;
    }
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/cacache/20.0.4/9069421e65b8c869fd001cfde347ef1ab7a971e601609830b2c8574d797cd78d/node_modules/cacache/lib/put.js
var require_put = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/cacache/20.0.4/9069421e65b8c869fd001cfde347ef1ab7a971e601609830b2c8574d797cd78d/node_modules/cacache/lib/put.js"(exports2, module2) {
    "use strict";
    var index2 = 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 = (opts3) => ({
      algorithms: ["sha512"],
      ...opts3
    });
    module2.exports = putData;
    async function putData(cache, key, data, opts3 = {}) {
      const { memoize: memoize2 } = opts3;
      opts3 = putOpts(opts3);
      const res = await write(cache, data, opts3);
      const entry = await index2.insert(cache, key, res.integrity, { ...opts3, size: res.size });
      if (memoize2) {
        memo.put(cache, entry, data, opts3);
      }
      return res.integrity;
    }
    module2.exports.stream = putStream;
    function putStream(cache, key, opts3 = {}) {
      const { memoize: memoize2 } = opts3;
      opts3 = putOpts(opts3);
      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, opts3).on("integrity", (int2) => {
        integrity = int2;
      }).on("size", (s) => {
        size = s;
      }).on("error", (err2) => {
        error = err2;
      });
      pipeline2.push(contentStream);
      pipeline2.push(new Flush({
        async flush() {
          if (!error) {
            const entry = await index2.insert(cache, key, integrity, { ...opts3, size });
            if (memoize2 && memoData) {
              memo.put(cache, entry, memoData, opts3);
            }
            pipeline2.emit("integrity", integrity);
            pipeline2.emit("size", size);
          }
        }
      }));
      return pipeline2;
    }
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/glob/13.0.6/ad03a092ed224ca05b214e3d03546c90ceafa857f4515376a1863c4ee64d2673/node_modules/glob/dist/commonjs/index.min.js
var require_index_min3 = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/glob/13.0.6/ad03a092ed224ca05b214e3d03546c90ceafa857f4515376a1863c4ee64d2673/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((Y2) => {
      "use strict";
      Object.defineProperty(Y2, "__esModule", { value: true });
      Y2.range = Y2.balanced = void 0;
      var Gs = (n2, t2, e) => {
        let s = n2 instanceof RegExp ? Ie(n2, e) : n2, i4 = t2 instanceof RegExp ? Ie(t2, e) : t2, r = s !== null && i4 != null && (0, Y2.range)(s, i4, 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] + i4.length) };
      };
      Y2.balanced = Gs;
      var Ie = (n2, t2) => {
        let e = t2.match(n2);
        return e ? e[0] : null;
      }, zs = (n2, t2, e) => {
        let s, i4, 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 i4 = s.pop(), i4 !== void 0 && i4 < r && (r = i4, 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;
      };
      Y2.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: i4, post: r } = e, h2 = s.split(",");
        h2[h2.length - 1] += "{" + i4 + "}";
        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 = [], i4 = (0, ze.balanced)("{", "}", n2);
        if (!i4) return [n2];
        let r = i4.pre, h2 = i4.post.length ? ht(i4.post, t2, false) : [""];
        if (/\$$/.test(i4.pre)) for (let o2 = 0; o2 < h2.length && o2 < t2; o2++) {
          let a2 = r + "{" + i4.body + "}" + h2[o2];
          s.push(a2);
        }
        else {
          let o2 = /^-?\d+\.\.-?\d+(?:\.\.-?\d+)?$/.test(i4.body), a2 = /^[a-zA-Z]\.\.[a-zA-Z](?:\.\.-?\d+)?$/.test(i4.body), l = o2 || a2, f = i4.body.indexOf(",") >= 0;
          if (!l && !f) return i4.post.match(/,(?!,).*\}/) ? (n2 = i4.pre + "{" + i4.body + ue + i4.post, ht(n2, t2, true)) : [n2];
          let c3;
          if (l) c3 = i4.body.split(/\.\./);
          else if (c3 = Ve(i4.body), c3.length === 1 && c3[0] !== void 0 && (c3 = ht(c3[0], t2, false).map(si), c3.length === 1)) return h2.map((u2) => i4.pre + c3[0] + u2);
          let d3;
          if (l && c3[0] !== void 0 && c3[1] !== void 0) {
            let u2 = 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 < u2 && (b *= -1, w = ni);
            let E = c3.some(ii);
            d3 = [];
            for (let y = u2; w(y, m); y += b) {
              let S3;
              if (a2) S3 = String.fromCharCode(y), S3 === "\\" && (S3 = "");
              else if (S3 = String(y), E) {
                let B = p - S3.length;
                if (B > 0) {
                  let U2 = new Array(B + 1).join("0");
                  y < 0 ? S3 = "-" + U2 + S3.slice(1) : S3 = U2 + S3;
                }
              }
              d3.push(S3);
            }
          } else {
            d3 = [];
            for (let u2 = 0; u2 < c3.length; u2++) d3.push.apply(d3, ht(c3[u2], t2, false));
          }
          for (let u2 = 0; u2 < d3.length; u2++) for (let m = 0; m < h2.length && s.length < t2; m++) {
            let p = r + d3[u2] + 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 = [], i4 = [], 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 ? i4.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 && !i4.length) return ["$.", false, n2.length - e, true];
        if (i4.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 d3 = "[" + (l ? "^" : "") + Ye(s) + "]", u2 = "[" + (l ? "" : "^") + Ye(i4) + "]";
        return [s.length && i4.length ? "(" + d3 + "|" + u2 + ")" : s.length ? d3 : u2, 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 i4 = e.#S + 1; !s.type && i4 < s.#r.length; i4++) for (let r of t2.#r) {
                if (typeof r == "string") throw new Error("string part in extglob AST??");
                r.copyIn(s.#r[i4]);
              }
              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, i4) {
          let r = false, h2 = false, o2 = -1, a2 = false;
          if (e.type === null) {
            let u2 = s, m = "";
            for (; u2 < t2.length; ) {
              let p = t2.charAt(u2++);
              if (r || p === "\\") {
                r = !r, m += p;
                continue;
              }
              if (h2) {
                u2 === o2 + 1 ? (p === "^" || p === "!") && (a2 = true) : p === "]" && !(u2 === o2 + 2 && a2) && (h2 = false), m += p;
                continue;
              } else if (p === "[") {
                h2 = true, o2 = u2, a2 = false, m += p;
                continue;
              }
              if (!i4.noext && Ze(p) && t2.charAt(u2) === "(") {
                e.push(m), m = "";
                let b = new n2(p, e);
                u2 = n2.#i(t2, b, u2, i4), e.push(b);
                continue;
              }
              m += p;
            }
            return e.push(m), u2;
          }
          let l = s + 1, f = new n2(null, e), c3 = [], d3 = "";
          for (; l < t2.length; ) {
            let u2 = t2.charAt(l++);
            if (r || u2 === "\\") {
              r = !r, d3 += u2;
              continue;
            }
            if (h2) {
              l === o2 + 1 ? (u2 === "^" || u2 === "!") && (a2 = true) : u2 === "]" && !(l === o2 + 2 && a2) && (h2 = false), d3 += u2;
              continue;
            } else if (u2 === "[") {
              h2 = true, o2 = l, a2 = false, d3 += u2;
              continue;
            }
            if (Ze(u2) && t2.charAt(l) === "(") {
              f.push(d3), d3 = "";
              let m = new n2(u2, f);
              f.push(m), l = n2.#i(t2, m, l, i4);
              continue;
            }
            if (u2 === "|") {
              f.push(d3), d3 = "", c3.push(f), f = new n2(null, e);
              continue;
            }
            if (u2 === ")") return d3 === "" && e.#r.length === 0 && (e.#u = true), f.push(d3), d3 = "", e.push(...c3, f), l;
            d3 += u2;
          }
          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, i4, r] = this.toRegExpSource();
          if (!(i4 || 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((u2) => typeof u2 != "string"), l = this.#r.map((u2) => {
              let [m, p, b, w] = typeof u2 == "string" ? n2.#v(u2, this.#s, a2) : u2.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 === "+", i4 = 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 = i4 + 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, i4, 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 i4 = false, r = "", h2 = false, o2 = false;
          for (let a2 = 0; a2 < t2.length; a2++) {
            let l = t2.charAt(a2);
            if (i4) {
              i4 = 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 += "\\\\" : i4 = true;
              continue;
            }
            if (l === "[") {
              let [f, c3, d3, u2] = (0, fi.parseClass)(t2, a2);
              if (d3) {
                r += f, h2 = h2 || c3, a2 += d3 - 1, e = e || u2;
                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, i4, r = {}) => t2(s, i4, F(n2, r)), { Minimatch: class extends t2.Minimatch {
          constructor(i4, r = {}) {
            super(i4, F(n2, r));
          }
          static defaults(i4) {
            return t2.defaults(F(n2, i4)).Minimatch;
          }
        }, AST: class extends t2.AST {
          constructor(i4, r, h2 = {}) {
            super(i4, r, F(n2, h2));
          }
          static fromGlob(i4, r = {}) {
            return t2.AST.fromGlob(i4, F(n2, r));
          }
        }, unescape: (s, i4 = {}) => t2.unescape(s, F(n2, i4)), escape: (s, i4 = {}) => t2.escape(s, F(n2, i4)), filter: (s, i4 = {}) => t2.filter(s, F(n2, i4)), defaults: (s) => t2.defaults(F(n2, s)), makeRe: (s, i4 = {}) => t2.makeRe(s, F(n2, i4)), braceExpand: (s, i4 = {}) => t2.braceExpand(s, F(n2, i4)), match: (s, i4, r = {}) => t2.match(s, i4, 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((i4) => s.match(i4)), 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 i4 = 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, i4), this.set = i4.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 i4 = 0; i4 < t2[s].length; i4++) t2[s][i4] === "**" && (t2[s][i4] = "*");
          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 i4 = s;
              for (; e[i4 + 1] === "**"; ) i4++;
              i4 !== s && e.splice(s, i4 - s);
            }
            return e;
          });
        }
        levelOneOptimize(t2) {
          return t2.map((e) => (e = e.reduce((s, i4) => {
            let r = s[s.length - 1];
            return i4 === "**" && r === "**" ? s : i4 === ".." && r && r !== ".." && r !== "." && r !== "**" ? (s.pop(), s) : (s.push(i4), 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 i4 = 1; i4 < t2.length - 1; i4++) {
                let r = t2[i4];
                i4 === 1 && r === "" && t2[0] === "" || (r === "." || r === "") && (e = true, t2.splice(i4, 1), i4--);
              }
              t2[0] === "." && t2.length === 2 && (t2[1] === "." || t2[1] === "") && (e = true, t2.pop());
            }
            let s = 0;
            for (; (s = t2.indexOf("..", s + 1)) !== -1; ) {
              let i4 = t2[s - 1];
              i4 && i4 !== "." && i4 !== ".." && i4 !== "**" && (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 i4 = -1;
              for (; (i4 = s.indexOf("**", i4 + 1)) !== -1; ) {
                let h2 = i4;
                for (; s[h2 + 1] === "**"; ) h2++;
                h2 > i4 && s.splice(i4 + 1, h2 - i4);
                let o2 = s[i4 + 1], a2 = s[i4 + 2], l = s[i4 + 3];
                if (o2 !== ".." || !a2 || a2 === "." || a2 === ".." || !l || l === "." || l === "..") continue;
                e = true, s.splice(i4, 1);
                let f = s.slice(0);
                f[i4] = "**", t2.push(f), i4--;
              }
              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 i4 = this.partsMatch(t2[e], t2[s], !this.preserveMultipleSlashes);
            if (i4) {
              t2[e] = [], t2[s] = i4;
              break;
            }
          }
          return t2.filter((e) => e.length);
        }
        partsMatch(t2, e, s = false) {
          let i4 = 0, r = 0, h2 = [], o2 = "";
          for (; i4 < t2.length && r < e.length; ) if (t2[i4] === e[r]) h2.push(o2 === "b" ? e[r] : t2[i4]), i4++, r++;
          else if (s && t2[i4] === "**" && e[r] === t2[i4 + 1]) h2.push(t2[i4]), i4++;
          else if (s && e[r] === "**" && t2[i4] === e[r + 1]) h2.push(e[r]), r++;
          else if (t2[i4] === "*" && e[r] && (this.options.dot || !e[r].startsWith(".")) && e[r] !== "**") {
            if (o2 === "b") return false;
            o2 = "a", h2.push(t2[i4]), i4++, r++;
          } else if (e[r] === "*" && t2[i4] && (this.options.dot || !t2[i4].startsWith(".")) && t2[i4] !== "**") {
            if (o2 === "a") return false;
            o2 = "b", h2.push(e[r]), i4++, 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 i4 = 0; i4 < t2.length && t2.charAt(i4) === "!"; i4++) e = !e, s++;
          s && (this.pattern = t2.slice(s)), this.negate = e;
        }
        matchOne(t2, e, s = false) {
          let i4 = 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 [S3, B] = [t2[E], e[y]];
              S3.toLowerCase() === B.toLowerCase() && (e[y] = S3, 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 d3 = h2, u2 = o2 + 1;
              if (u2 === l) {
                for (this.debug("** at the end"); h2 < a2; h2++) if (t2[h2] === "." || t2[h2] === ".." || !i4.dot && t2[h2].charAt(0) === ".") return false;
                return true;
              }
              for (; d3 < a2; ) {
                var m = t2[d3];
                if (this.debug(`
globstar while`, t2, d3, e, u2, m), this.matchOne(t2.slice(d3), e.slice(u2), s)) return this.debug("globstar found match!", d3, a2, m), true;
                if (m === "." || m === ".." || !i4.dot && m.charAt(0) === ".") {
                  this.debug("dot detected!", t2, d3, e, u2);
                  break;
                }
                this.debug("globstar swallow a segment, and continue"), d3++;
              }
              return !!(s && (this.debug(`
>>> no match, partial?`, t2, d3, e, u2), d3 === 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, i4 = null;
          (s = t2.match(Fi)) ? i4 = e.dot ? Ni : ji : (s = t2.match(Oi)) ? i4 = (e.nocase ? e.dot ? Ri : Ci : e.dot ? Ti : xi)(s[1]) : (s = t2.match(Li)) ? i4 = (e.nocase ? e.dot ? Bi : Wi : e.dot ? Ii : Gi)(s) : (s = t2.match(Ai)) ? i4 = e.dot ? Mi : ki : (s = t2.match(Pi)) && (i4 = Di);
          let r = is.AST.fromGlob(t2, this.options).toMMPattern();
          return i4 && typeof r == "object" && Reflect.defineProperty(r, "test", { value: i4 }), 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, i4 = new Set(e.nocase ? ["i"] : []), r = t2.map((a2) => {
            let l = a2.map((c3) => {
              if (c3 instanceof RegExp) for (let d3 of c3.flags.split("")) i4.add(d3);
              return typeof c3 == "string" ? Ji(c3) : c3 === g.GLOBSTAR ? g.GLOBSTAR : c3._src;
            });
            l.forEach((c3, d3) => {
              let u2 = l[d3 + 1], m = l[d3 - 1];
              c3 !== g.GLOBSTAR || m === g.GLOBSTAR || (m === void 0 ? u2 !== void 0 && u2 !== g.GLOBSTAR ? l[d3 + 1] = "(?:\\/|" + s + "\\/)?" + u2 : l[d3] = s : u2 === void 0 ? l[d3 - 1] = m + "(?:\\/|\\/" + s + ")?" : u2 !== g.GLOBSTAR && (l[d3 - 1] = m + "(?:\\/|\\/" + s + "\\/)" + u2, l[d3 + 1] = g.GLOBSTAR));
            });
            let f = l.filter((c3) => c3 !== g.GLOBSTAR);
            if (this.partial && f.length >= 1) {
              let c3 = [];
              for (let d3 = 1; d3 <= f.length; d3++) c3.push(f.slice(0, d3).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, [...i4].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 i4 = this.slashSplit(t2);
          this.debug(this.pattern, "split", i4);
          let r = this.set;
          this.debug(this.pattern, "set", r);
          let h2 = i4[i4.length - 1];
          if (!h2) for (let o2 = i4.length - 2; !h2 && o2 >= 0; o2--) h2 = i4[o2];
          for (let o2 = 0; o2 < r.length; o2++) {
            let a2 = r[o2], l = i4;
            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 fs131 = 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, os20 = globalThis.AbortSignal;
      if (typeof Lt > "u") {
        os20 = class {
          onabort;
          _onabort = [];
          reason;
          aborted = false;
          addEventListener(e, s) {
            this._onabort.push(s);
          }
        }, Lt = class {
          constructor() {
            t2();
          }
          signal = new os20();
          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, i4, r) => t2.#z(e, s, i4, 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: i4 = 1, ttlAutopurge: r, updateAgeOnGet: h2, updateAgeOnHas: o2, allowStale: a2, dispose: l, onInsert: f, disposeAfter: c3, noDisposeOnSet: d3, noUpdateTTL: u2, maxSize: m = 0, maxEntrySize: p = 0, sizeCalculation: b, fetchMethod: w, memoMethod: v, noDeleteOnFetchRejection: E, noDeleteOnStaleGet: y, allowStaleOnFetchRejection: S3, allowStaleOnFetchAbort: B, ignoreFetchAbort: U2, perf: et2 } = t2;
          if (et2 !== void 0 && typeof et2?.now != "function") throw new TypeError("perf option must have a now() method if specified");
          if (this.#c = et2 ?? 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 = !!d3, this.noUpdateTTL = !!u2, this.noDeleteOnFetchRejection = !!E, this.allowStaleOnFetchRejection = !!S3, 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(i4) || i4 === 0 ? i4 : 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 = i4 || r();
              let f = h2.now - l;
              h2.remainingTTL = a2 - f;
            }
          };
          let i4 = 0, r = () => {
            let h2 = this.#c.now();
            if (this.ttlResolution > 0) {
              i4 = h2;
              let o2 = setTimeout(() => i4 = 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 = (i4 || r()) - l;
            return a2 - f;
          }, this.#_ = (h2) => {
            let o2 = e[h2], a2 = t2[h2];
            return !!a2 && !!o2 && (i4 || 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, i4, r) => {
            if (this.#l(s)) return 0;
            if (!V(i4)) if (r) {
              if (typeof r != "function") throw new TypeError("sizeCalculation must be a function");
              if (i4 = r(s, e), !V(i4)) 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 i4;
          }, this.#j = (e, s, i4) => {
            if (t2[e] = s, this.#s) {
              let r = this.#s - t2[e];
              for (; this.#f > r; ) this.#G(true);
            }
            this.#f += t2[e], i4 && (i4.entrySize = s, i4.totalCalculatedSize = this.#f);
          };
        }
        #L = (t2) => {
        };
        #j = (t2, e, s) => {
        };
        #B = (t2, e, s, i4) => {
          if (s || i4) 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 i4 = this.#i[s], r = this.#l(i4) ? i4.__staleWhileFetching : i4;
            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 i4 = this.#i[s], r = this.#l(i4) ? i4.__staleWhileFetching : i4;
            r !== void 0 && t2.call(e, r, this.#a[s], this);
          }
        }
        rforEach(t2, e = this) {
          for (let s of this.#M()) {
            let i4 = this.#i[s], r = this.#l(i4) ? i4.__staleWhileFetching : i4;
            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], i4 = this.#l(s) ? s.__staleWhileFetching : s;
          if (i4 === void 0) return;
          let r = { value: i4 };
          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], i4 = this.#i[e], r = this.#l(i4) ? i4.__staleWhileFetching : i4;
            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 i4 = Date.now() - s.start;
              s.start = this.#c.now() - i4;
            }
            this.set(e, s.value, s);
          }
        }
        set(t2, e, s = {}) {
          if (e === void 0) return this.delete(t2), this;
          let { ttl: i4 = 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 d3 = this.#i[c3];
            if (e !== d3) {
              if (this.#T && this.#l(d3)) {
                d3.__abortController.abort(new Error("replaced"));
                let { __staleWhileFetching: u2 } = d3;
                u2 !== void 0 && !h2 && (this.#E && this.#n?.(u2, t2, "set"), this.#e && this.#m?.push([u2, t2, "set"]));
              } else h2 || (this.#E && this.#n?.(d3, t2, "set"), this.#e && this.#m?.push([d3, t2, "set"]));
              if (this.#L(c3), this.#j(c3, f, a2), this.#i[c3] = e, a2) {
                a2.set = "replace";
                let u2 = d3 && this.#l(d3) ? d3.__staleWhileFetching : d3;
                u2 !== void 0 && (a2.oldValue = u2);
              }
            } else a2 && (a2.set = "update");
            this.#F && this.onInsert?.(e, t2, e === d3 ? "update" : "replace");
          }
          if (i4 !== 0 && !this.#g && this.#P(), this.#g && (l || this.#W(c3, i4, r), a2 && this.#D(a2, c3)), !h2 && this.#e && this.#m) {
            let d3 = this.#m, u2;
            for (; u2 = d3?.shift(); ) this.#h?.(...u2);
          }
          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], i4 = this.#i[e];
          return this.#T && this.#l(i4) ? i4.__abortController.abort(new Error("evicted")) : (this.#E || this.#e) && (this.#E && this.#n?.(i4, s, "evict"), this.#e && this.#m?.push([i4, 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: i4 } = 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)) i4 && (i4.has = "stale", this.#D(i4, r));
            else return s && this.#C(r), i4 && (i4.has = "hit", this.#D(i4, r)), true;
          } else i4 && (i4.has = "miss");
          return false;
        }
        peek(t2, e = {}) {
          let { allowStale: s = this.allowStale } = e, i4 = this.#u.get(t2);
          if (i4 === void 0 || !s && this.#_(i4)) return;
          let r = this.#i[i4];
          return this.#l(r) ? r.__staleWhileFetching : r;
        }
        #z(t2, e, s, i4) {
          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: i4 }, 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 = u2, S3 = this.#i[e];
            return (S3 === u2 || v && b && S3 === 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, S3 = u2;
            if (this.#i[e] === u2 && (!y || !b && S3.__staleWhileFetching === void 0 ? this.#A(t2, "fetch") : v || (this.#i[e] = S3.__staleWhileFetching)), E) return s.status && S3.__staleWhileFetching !== void 0 && (s.status.returnedStale = true), S3.__staleWhileFetching;
            if (S3.__returned === S3) throw p;
          }, d3 = (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 u2 = new Promise(d3).then(l, f), m = Object.assign(u2, { __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: i4 = 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: d3 = this.allowStaleOnFetchRejection, ignoreFetchAbort: u2 = 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: i4, noDeleteOnStaleGet: r, status: w });
          let E = { allowStale: s, updateAgeOnGet: i4, noDeleteOnStaleGet: r, ttl: h2, noDisposeOnSet: o2, size: a2, sizeCalculation: l, noUpdateTTL: f, noDeleteOnFetchRejection: c3, allowStaleOnFetchRejection: d3, allowStaleOnFetchAbort: m, ignoreFetchAbort: u2, status: w, signal: v }, y = this.#u.get(t2);
          if (y === void 0) {
            w && (w.fetch = "miss");
            let S3 = this.#z(t2, y, E, p);
            return S3.__returned = S3;
          } else {
            let S3 = this.#i[y];
            if (this.#l(S3)) {
              let st = s && S3.__staleWhileFetching !== void 0;
              return w && (w.fetch = "inflight", st && (w.returnedStale = true)), st ? S3.__staleWhileFetching : S3.__returned = S3;
            }
            let B = this.#_(y);
            if (!b && !B) return w && (w.fetch = "hit"), this.#N(y), i4 && this.#C(y), w && this.#D(w, y), S3;
            let U2 = this.#z(t2, y, E, p), et2 = U2.__staleWhileFetching !== void 0 && s;
            return w && (w.fetch = B ? "stale" : "refresh", et2 && B && (w.returnedStale = true)), et2 ? 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: i4, forceRefresh: r, ...h2 } = e, o2 = this.get(t2, h2);
          if (!r && o2 !== void 0) return o2;
          let a2 = s(t2, o2, { options: h2, context: i4 });
          return this.set(t2, a2, h2), a2;
        }
        get(t2, e = {}) {
          let { allowStale: s = this.allowStale, updateAgeOnGet: i4 = 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), i4 && 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 i4 = this.#u.get(t2);
            if (i4 !== void 0) if (this.#b?.[i4] && (clearTimeout(this.#b?.[i4]), this.#b[i4] = void 0), s = true, this.#o === 1) this.#q(e);
            else {
              this.#L(i4);
              let r = this.#i[i4];
              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[i4] = void 0, this.#i[i4] = void 0, i4 === this.#p) this.#p = this.#v[i4];
              else if (i4 === this.#y) this.#y = this.#d[i4];
              else {
                let h2 = this.#v[i4];
                this.#d[h2] = this.#d[i4];
                let o2 = this.#d[i4];
                this.#v[o2] = this.#v[i4];
              }
              this.#o--, this.#R.push(i4);
            }
          }
          if (this.#e && this.#m?.length) {
            let i4 = this.#m, r;
            for (; r = i4?.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 i4 = this.#a[e];
              this.#E && this.#n?.(s, i4, t2), this.#e && this.#m?.push([s, i4, 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"), K2 = /* @__PURE__ */ Symbol("emittedEnd"), Bt = /* @__PURE__ */ Symbol("emittingEnd"), lt2 = /* @__PURE__ */ Symbol("emittedError"), It = /* @__PURE__ */ Symbol("closed"), ps2 = /* @__PURE__ */ Symbol("read"), Gt = /* @__PURE__ */ Symbol("flush"), ms = /* @__PURE__ */ Symbol("flushChunk"), L3 = /* @__PURE__ */ Symbol("encoding"), rt = /* @__PURE__ */ Symbol("decoder"), x3 = /* @__PURE__ */ Symbol("flowing"), ct = /* @__PURE__ */ Symbol("paused"), nt = /* @__PURE__ */ Symbol("resume"), T2 = /* @__PURE__ */ Symbol("buffer"), M3 = /* @__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"), I3 = /* @__PURE__ */ Symbol("async"), ve = /* @__PURE__ */ Symbol("abort"), Ut = /* @__PURE__ */ Symbol("aborted"), ut = /* @__PURE__ */ Symbol("signal"), Z2 = /* @__PURE__ */ Symbol("dataListeners"), D3 = /* @__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 = (i4) => this.dest.emit("error", i4), t2.on("error", this.proxyErrors);
        }
      }, pr = (n2) => !!n2.objectMode, mr = (n2) => !n2.objectMode && !!n2.encoding && n2.encoding !== "buffer", qt = class extends _e.EventEmitter {
        [x3] = false;
        [ct] = false;
        [M3] = [];
        [T2] = [];
        [k2];
        [L3];
        [I3];
        [rt];
        [$2] = false;
        [K2] = false;
        [Bt] = false;
        [It] = false;
        [lt2] = null;
        [C] = 0;
        [O2] = false;
        [ut];
        [Ut] = false;
        [Z2] = 0;
        [D3] = 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[L3] = null) : mr(e) ? (this[L3] = e.encoding, this[k2] = false) : (this[k2] = false, this[L3] = null), this[I3] = !!e.async, this[rt] = this[L3] ? new hr.StringDecoder(this[L3]) : null, e && e.debugExposeBuffer === true && Object.defineProperty(this, "buffer", { get: () => this[T2] }), e && e.debugExposePipes === true && Object.defineProperty(this, "pipes", { get: () => this[M3] });
          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[L3];
        }
        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[I3];
        }
        set async(t2) {
          this[I3] = this[I3] || !!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 i4 = this[I3] ? 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[x3] && this[C] !== 0 && this[Gt](true), this[x3] ? this.emit("data", t2) : this[we](t2), this[C] !== 0 && this.emit("readable"), s && i4(s), this[x3]) : t2.length ? (typeof t2 == "string" && !(e === this[L3] && !this[rt]?.lastNeed) && (t2 = Buffer.from(t2, e)), Buffer.isBuffer(t2) && this[L3] && (t2 = this[rt].write(t2)), this[x3] && this[C] !== 0 && this[Gt](true), this[x3] ? this.emit("data", t2) : this[we](t2), this[C] !== 0 && this.emit("readable"), s && i4(s), this[x3]) : (this[C] !== 0 && this.emit("readable"), s && i4(s), this[x3]);
        }
        read(t2) {
          if (this[O2]) return null;
          if (this[D3] = 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[L3] ? this[T2].join("") : Buffer.concat(this[T2], this[C])]);
          let e = this[ps2](t2 || null, this[T2][0]);
          return this[q](), e;
        }
        [ps2](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[x3] || !this[ct]) && this[q](), this;
        }
        [nt]() {
          this[O2] || (!this[Z2] && !this[M3].length && (this[D3] = true), this[ct] = false, this[x3] = true, this.emit("resume"), this[T2].length ? this[Gt]() : this[$2] ? this[q]() : this.emit("drain"));
        }
        resume() {
          return this[nt]();
        }
        pause() {
          this[x3] = false, this[ct] = true, this[D3] = false;
        }
        get destroyed() {
          return this[O2];
        }
        get flowing() {
          return this[x3];
        }
        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[x3];
        }
        pipe(t2, e) {
          if (this[O2]) return t2;
          this[D3] = false;
          let s = this[K2];
          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[M3].push(e.proxyErrors ? new Ee(this, t2, e) : new $t(this, t2, e)), this[I3] ? ft(() => this[nt]()) : this[nt]()), t2;
        }
        unpipe(t2) {
          let e = this[M3].find((s) => s.dest === t2);
          e && (this[M3].length === 1 ? (this[x3] && this[Z2] === 0 && (this[x3] = false), this[M3] = []) : this[M3].splice(this[M3].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[D3] = false, this[Z2]++, !this[M3].length && !this[x3] && this[nt]();
          else if (t2 === "readable" && this[C] !== 0) super.emit("readable");
          else if (ur(t2) && this[K2]) super.emit(t2), this.removeAllListeners(t2);
          else if (t2 === "error" && this[lt2]) {
            let i4 = e;
            this[I3] ? ft(() => i4.call(this, this[lt2])) : i4.call(this, this[lt2]);
          }
          return s;
        }
        removeListener(t2, e) {
          return this.off(t2, e);
        }
        off(t2, e) {
          let s = super.off(t2, e);
          return t2 === "data" && (this[Z2] = this.listeners("data").length, this[Z2] === 0 && !this[D3] && !this[M3].length && (this[x3] = false)), s;
        }
        removeAllListeners(t2) {
          let e = super.removeAllListeners(t2);
          return (t2 === "data" || t2 === void 0) && (this[Z2] = 0, !this[D3] && !this[M3].length && (this[x3] = false)), e;
        }
        get emittedEnd() {
          return this[K2];
        }
        [q]() {
          !this[Bt] && !this[K2] && !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[I3] ? (ft(() => this[ye](s)), true) : this[ye](s);
          if (t2 === "end") return this[gs]();
          if (t2 === "close") {
            if (this[It] = true, !this[K2] && !this[O2]) return false;
            let r = super.emit("close");
            return this.removeAllListeners("close"), r;
          } else if (t2 === "error") {
            this[lt2] = 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 i4 = super.emit(t2, ...e);
          return this[q](), i4;
        }
        [ye](t2) {
          for (let s of this[M3]) s.dest.write(t2) === false && this.pause();
          let e = this[D3] ? false : super.emit("data", t2);
          return this[q](), e;
        }
        [gs]() {
          return this[K2] ? false : (this[K2] = true, this.readable = false, this[I3] ? (ft(() => this[Se]()), true) : this[Se]());
        }
        [Se]() {
          if (this[rt]) {
            let e = this[rt].end();
            if (e) {
              for (let s of this[M3]) s.dest.write(e);
              this[D3] || super.emit("data", e);
            }
          }
          for (let e of this[M3]) 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[L3] ? 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[D3] = false;
          let t2 = false, e = async () => (this.pause(), t2 = true, { value: void 0, done: true });
          return { next: () => {
            if (t2) return e();
            let i4 = this.read();
            if (i4 !== null) return Promise.resolve({ done: false, value: i4 });
            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, d3) => {
              h2 = d3, 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[D3] = 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 i4 = this.read();
            return i4 === null ? e() : { done: false, value: i4 };
          };
          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[D3] = 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 i4 = Object.getOwnPropertyDescriptor(t2, e);
        (!i4 || ("get" in i4 ? !t2.__esModule : i4.writable || i4.configurable)) && (i4 = { enumerable: true, get: function() {
          return t2[e];
        } }), Object.defineProperty(n2, s, i4);
      }) : (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 = fs131(), 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, G3 = 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() ? G3 : 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"), A2 = 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, i4, r, h2, o2) {
          this.name = t2, this.#O = r ? Kt(t2) : wt(t2), this.#e = e & Or, this.nocase = r, this.roots = i4, 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), i4 = t2.substring(e.length).split(this.splitSep);
          return e ? this.getRoot(e).#D(i4) : this.#D(i4);
        }
        #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(), i4 = this.nocase ? Kt(t2) : wt(t2);
          for (let a2 of s) if (a2.#O === i4) 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 i4 = e.fullpath() + (e.parent ? this.sep : "") + t2;
          return this.#g = i4;
        }
        fullpathPosix() {
          if (this.#b !== void 0) return this.#b;
          if (this.sep === "/") return this.#b = this.fullpath();
          if (!this.parent) {
            let i4 = this.fullpath().replace(/\\/g, "/");
            return /^[a-z]:\//i.test(i4) ? this.#b = `//?/${i4}` : this.#b = i4;
          }
          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) === G3;
        }
        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) === G3 && (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), i4 = this.newChild(t2.name, s, { parent: this }), r = i4.#e & j2;
          return r !== G3 && r !== Q && r !== N && (i4.#e |= gt), e.unshift(i4), e.provisional++, i4;
        }
        #z(t2, e) {
          for (let s = e.provisional; s < e.length; s++) {
            let i4 = e[s];
            if ((this.nocase ? Kt(t2.name) : wt(t2.name)) === i4.#O) return this.#l(t2, i4, s, e);
          }
        }
        #l(t2, e, s, i4) {
          let r = e.name;
          return e.#e = e.#e & dt | Te(t2), r !== t2.name && (e.name = t2.name), s !== i4.provisional && (s === i4.length - 1 ? i4.pop() : i4.splice(s, 1), i4.unshift(e)), i4.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: i4, birthtimeMs: r, blksize: h2, blocks: o2, ctime: a2, ctimeMs: l, dev: f, gid: c3, ino: d3, mode: u2, mtime: m, mtimeMs: p, nlink: b, rdev: w, size: v, uid: E } = t2;
          this.#y = e, this.#a = s, this.#m = i4, this.#v = r, this.#c = h2, this.#u = o2, this.#R = a2, this.#d = l, this.#s = f, this.#S = c3, this.#o = d3, this.#n = u2, 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 !== G3 && 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 i4 = this.fullpath();
          this.#t.readdir(i4, { 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((i4) => s = i4);
            try {
              for (let i4 of await this.#t.promises.readdir(e, { withFileTypes: true })) this.#I(i4, t2);
              this.#W(t2);
            } catch (i4) {
              this.#B(i4.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 === G3 || t2 === Q;
        }
        shouldWalk(t2, e) {
          return (this.#e & G3) === G3 && !(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 = [], i4 = this;
          for (; i4 && i4.parent; ) e.add(i4), i4.#E = s.join(this.sep), i4.#T = s.join("/"), i4 = i4.parent, s.push("..");
          for (i4 = t2; i4 && i4.parent && !e.has(i4); ) i4.#E = void 0, i4.#T = void 0, i4 = i4.parent;
        }
      };
      _.PathBase = A2;
      var yt = class n2 extends A2 {
        sep = "\\";
        splitSep = _r;
        constructor(t2, e = N, s, i4, r, h2, o2) {
          super(t2, e, s, i4, 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 A2 {
        splitSep = "/";
        sep = "/";
        constructor(t2, e = N, s, i4, r, h2, o2) {
          super(t2, e, s, i4, 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: i4, 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(), i4 === void 0) throw new TypeError("must provide nocase setting to PathScurryBase ctor");
          this.nocase = i4, this.root = this.newRoot(this.#r), this.roots[this.rootPath] = this.root;
          let l = this.root, f = a2.length - 1, c3 = e.sep, d3 = this.rootPath, u2 = 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: d3 += (u2 ? "" : c3) + m }), u2 = 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 i4 = this.cwd.resolve(e).fullpath();
          return this.#t.set(e, i4), i4;
        }
        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 i4 = this.cwd.resolve(e).fullpathPosix();
          return this.#s.set(e, i4), i4;
        }
        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 A2 || (e = t2, t2 = this.cwd);
          let { withFileTypes: s } = e;
          if (t2.canReaddir()) {
            let i4 = await t2.readdir();
            return s ? i4 : i4.map((r) => r.name);
          } else return [];
        }
        readdirSync(t2 = this.cwd, e = { withFileTypes: true }) {
          typeof t2 == "string" ? t2 = this.cwd.resolve(t2) : t2 instanceof A2 || (e = t2, t2 = this.cwd);
          let { withFileTypes: s = true } = e;
          return t2.canReaddir() ? s ? t2.readdirSync() : t2.readdirSync().map((i4) => i4.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 A2 || (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 A2 || (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 A2 || (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 A2 || (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 A2 || (e = t2, t2 = this.cwd);
          let { withFileTypes: s = true, follow: i4 = false, filter: r, walkFilter: h2 } = e, o2 = [];
          (!r || r(t2)) && o2.push(s ? t2 : t2.fullpath());
          let a2 = /* @__PURE__ */ new Set(), l = (c3, d3) => {
            a2.add(c3), c3.readdirCB((u2, m) => {
              if (u2) return d3(u2);
              let p = m.length;
              if (!p) return d3();
              let b = () => {
                --p === 0 && d3();
              };
              for (let w of m) (!r || r(w)) && o2.push(s ? w : w.fullpath()), i4 && 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, d3) => {
            l(f, (u2) => {
              if (u2) return d3(u2);
              c3(o2);
            });
          });
        }
        walkSync(t2 = this.cwd, e = {}) {
          typeof t2 == "string" ? t2 = this.cwd.resolve(t2) : t2 instanceof A2 || (e = t2, t2 = this.cwd);
          let { withFileTypes: s = true, follow: i4 = 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 d3 = c3;
              if (c3.isSymbolicLink()) {
                if (!(i4 && (d3 = c3.realpathSync()))) continue;
                d3.isUnknown() && d3.lstatSync();
              }
              d3.shouldWalk(a2, h2) && a2.add(d3);
            }
          }
          return o2;
        }
        [Symbol.asyncIterator]() {
          return this.iterate();
        }
        iterate(t2 = this.cwd, e = {}) {
          return typeof t2 == "string" ? t2 = this.cwd.resolve(t2) : t2 instanceof A2 || (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 A2 || (e = t2, t2 = this.cwd);
          let { withFileTypes: s = true, follow: i4 = 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 (!(i4 && (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 A2 || (e = t2, t2 = this.cwd);
          let { withFileTypes: s = true, follow: i4 = 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 d3 = false;
            for (; !d3; ) {
              let u2 = l.shift();
              if (!u2) {
                f === 0 && o2.end();
                return;
              }
              f++, a2.add(u2);
              let m = (b, w, v = false) => {
                if (b) return o2.emit("error", b);
                if (i4 && !v) {
                  let E = [];
                  for (let y of w) y.isSymbolicLink() && E.push(y.realpath().then((S3) => S3?.isUnknown() ? S3.lstat() : S3));
                  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()) || (d3 = true));
                f--;
                for (let E of w) {
                  let y = E.realpathCached() || E;
                  y.shouldWalk(a2, h2) && l.push(y);
                }
                d3 && !o2.flowing ? o2.once("drain", c3) : p || c3();
              }, p = true;
              u2.readdirCB(m, true), p = false;
            }
          };
          return c3(), o2;
        }
        streamSync(t2 = this.cwd, e = {}) {
          typeof t2 == "string" ? t2 = this.cwd.resolve(t2) : t2 instanceof A2 || (e = t2, t2 = this.cwd);
          let { withFileTypes: s = true, follow: i4 = 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 d3 = false;
            for (; !d3; ) {
              let u2 = l.shift();
              if (!u2) {
                f === 0 && o2.end();
                return;
              }
              f++, a2.add(u2);
              let m = u2.readdirSync();
              for (let p of m) (!r || r(p)) && (o2.write(s ? p : p.fullpath()) || (d3 = true));
              f--;
              for (let p of m) {
                let b = p;
                if (p.isSymbolicLink()) {
                  if (!(i4 && (b = p.realpathSync()))) continue;
                  b.isUnknown() && b.lstatSync();
                }
                b.shouldWalk(a2, h2) && l.push(b);
              }
            }
            d3 && !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 i4 = this.cwd; i4; i4 = i4.parent) i4.nocase = this.nocase;
        }
        parseRootPath(t2) {
          return Yt.win32.parse(t2).root.toUpperCase();
        }
        newRoot(t2) {
          return new yt(this.rootPath, G3, 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, G3, 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, i4) {
          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 = i4, this.#n === 0) {
            if (this.isUNC()) {
              let [r, h2, o2, a2, ...l] = this.#t, [f, c3, d3, u2, ...m] = this.#s;
              l[0] === "" && (l.shift(), m.shift());
              let p = [r, h2, o2, a2, ""].join("/"), b = [f, c3, d3, u2, ""].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: i4, 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: i4, 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 i4 = e.set[s], r = e.globParts[s];
            if (!i4 || !r) throw new Error("invalid pattern object");
            for (; i4[0] === "." && r[0] === "."; ) i4.shift(), r.shift();
            let h2 = new Ar.Pattern(i4, 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}/`, i4 = t2.relative() || ".", r = `${i4}/`;
          for (let h2 of this.relative) if (h2.match(i4) || 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 i4 of this.relativeChildren) if (i4.match(s)) return true;
          for (let i4 of this.absoluteChildren) if (i4.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(), i4 = this.store.get(s);
          i4 ? i4.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 i4 = (e ? 2 : 0) | (s ? 1 : 0), r = this.store.get(t2);
          this.store.set(t2, r === void 0 ? i4 : i4 & 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((i4) => i4.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((i4) => [t2, i4]);
          for (let [i4, r] of s) {
            this.hasWalkedCache.storeWalked(i4, r);
            let h2 = r.root(), o2 = r.isAbsolute() && this.opts.absolute !== false;
            if (h2) {
              i4 = i4.resolve(h2 === "/" && this.opts.root !== void 0 ? this.opts.root : h2);
              let c3 = r.rest();
              if (c3) r = c3;
              else {
                this.matches.add(i4, true, false);
                continue;
              }
            }
            if (i4.isENOENT()) continue;
            let a2, l, f = false;
            for (; typeof (a2 = r.pattern()) == "string" && (l = r.rest()); ) i4 = i4.resolve(a2), r = l, f = true;
            if (a2 = r.pattern(), l = r.rest(), f) {
              if (this.hasWalkedCache.hasWalked(i4, r)) continue;
              this.hasWalkedCache.storeWalked(i4, r);
            }
            if (typeof a2 == "string") {
              let c3 = a2 === ".." || a2 === "" || a2 === ".";
              this.matches.add(i4.resolve(a2), o2, c3);
              continue;
            } else if (a2 === Ds.GLOBSTAR) {
              (!i4.isSymbolicLink() || this.follow || r.checkFollowGlobstar()) && this.subwalks.add(i4, r);
              let c3 = l?.pattern(), d3 = l?.rest();
              if (!l || (c3 === "" || c3 === ".") && !d3) this.matches.add(i4, o2, c3 === "" || c3 === ".");
              else if (c3 === "..") {
                let u2 = i4.parent || i4;
                d3 ? this.hasWalkedCache.hasWalked(u2, d3) || this.subwalks.add(u2, d3) : this.matches.add(u2, o2, true);
              }
            } else a2 instanceof RegExp && this.subwalks.add(i4, 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), i4 = 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 ? i4.testGlobstar(r, h2, l, o2) : a2 instanceof RegExp ? i4.testRegExp(r, a2, l, o2) : i4.testString(r, a2, l, o2);
          }
          return i4;
        }
        testGlobstar(t2, e, s, i4) {
          if ((this.dot || !t2.name.startsWith(".")) && (e.hasMore() || this.matches.add(t2, i4, 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(), i4);
            else if (r === "..") {
              let h2 = t2.parent || t2;
              this.subwalks.add(h2, s);
            } else r instanceof RegExp && this.testRegExp(t2, r, s.rest(), i4);
          }
        }
        testRegExp(t2, e, s, i4) {
          e.test(t2.name) && (s ? this.subwalks.add(t2, s) : this.matches.add(t2, i4, false));
        }
        testString(t2, e, s, i4) {
          t2.isNamed(e) && (s ? this.subwalks.add(t2, s) : this.matches.add(t2, i4, false));
        }
      };
      z.Processor = Me;
    });
    var Ls = R2((X2) => {
      "use strict";
      Object.defineProperty(X2, "__esModule", { value: true });
      X2.GlobStream = X2.GlobWalker = X2.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 i4 = "cannot ignore child matches, ignore lacks add() method.";
            throw new Error(i4);
          }
          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 i4 = 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 + i4);
          } 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 + i4 : "." + i4);
          }
        }
        async match(t2, e, s) {
          let i4 = await this.matchCheck(t2, s);
          i4 && this.matchFinish(i4, e);
        }
        matchSync(t2, e, s) {
          let i4 = this.matchCheckSync(t2, s);
          i4 && this.matchFinish(i4, e);
        }
        walkCB(t2, e, s) {
          this.signal?.aborted && s(), this.walkCB2(t2, e, new Ns.Processor(this.opts), s);
        }
        walkCB2(t2, e, s, i4) {
          if (this.#h(t2)) return i4();
          if (this.signal?.aborted && i4(), this.paused) {
            this.onResume(() => this.walkCB2(t2, e, s, i4));
            return;
          }
          s.processPatterns(t2, e);
          let r = 1, h2 = () => {
            --r === 0 && i4();
          };
          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, i4) {
          s = s.filterEntries(t2, e);
          let r = 1, h2 = () => {
            --r === 0 && i4();
          };
          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, i4) {
          if (this.#h(t2)) return i4();
          if (this.signal?.aborted && i4(), this.paused) {
            this.onResume(() => this.walkCB2Sync(t2, e, s, i4));
            return;
          }
          s.processPatterns(t2, e);
          let r = 1, h2 = () => {
            --r === 0 && i4();
          };
          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, i4) {
          s = s.filterEntries(t2, e);
          let r = 1, h2 = () => {
            --r === 0 && i4();
          };
          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();
        }
      };
      X2.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;
        }
      };
      X2.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;
        }
      };
      X2.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", i4 = { 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, i4)), [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;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/cacache/20.0.4/9069421e65b8c869fd001cfde347ef1ab7a971e601609830b2c8574d797cd78d/node_modules/cacache/lib/util/glob.js
var require_glob = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/cacache/20.0.4/9069421e65b8c869fd001cfde347ef1ab7a971e601609830b2c8574d797cd78d/node_modules/cacache/lib/util/glob.js"(exports2, module2) {
    "use strict";
    var { glob: glob2 } = require_index_min3();
    var path240 = __require("path");
    var globify = (pattern) => pattern.split(path240.win32.sep).join(path240.posix.sep);
    module2.exports = (path241, options) => glob2(globify(path241), options);
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/cacache/20.0.4/9069421e65b8c869fd001cfde347ef1ab7a971e601609830b2c8574d797cd78d/node_modules/cacache/lib/content/rm.js
var require_rm = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/cacache/20.0.4/9069421e65b8c869fd001cfde347ef1ab7a971e601609830b2c8574d797cd78d/node_modules/cacache/lib/content/rm.js"(exports2, module2) {
    "use strict";
    var fs131 = __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 fs131.rm(contentPath(cache, content.sri), { recursive: true, force: true });
        return true;
      } else {
        return false;
      }
    }
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/cacache/20.0.4/9069421e65b8c869fd001cfde347ef1ab7a971e601609830b2c8574d797cd78d/node_modules/cacache/lib/rm.js
var require_rm2 = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/cacache/20.0.4/9069421e65b8c869fd001cfde347ef1ab7a971e601609830b2c8574d797cd78d/node_modules/cacache/lib/rm.js"(exports2, module2) {
    "use strict";
    var { rm: rm3 } = __require("fs/promises");
    var glob2 = require_glob();
    var index2 = require_entry_index();
    var memo = require_memoization();
    var path240 = __require("path");
    var rmContent = require_rm();
    module2.exports = entry;
    module2.exports.entry = entry;
    function entry(cache, key, opts3) {
      memo.clearMemoized();
      return index2.delete(cache, key, opts3);
    }
    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(path240.join(cache, "*(content-*|index-*)"), { silent: true, nosort: true });
      return Promise.all(paths3.map((p) => rm3(p, { recursive: true, force: true })));
    }
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/cacache/20.0.4/9069421e65b8c869fd001cfde347ef1ab7a971e601609830b2c8574d797cd78d/node_modules/cacache/lib/verify.js
var require_verify = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/cacache/20.0.4/9069421e65b8c869fd001cfde347ef1ab7a971e601609830b2c8574d797cd78d/node_modules/cacache/lib/verify.js"(exports2, module2) {
    "use strict";
    var {
      mkdir: mkdir2,
      readFile: readFile5,
      rm: rm3,
      stat: stat2,
      truncate,
      writeFile: writeFile3
    } = __require("fs/promises");
    var contentPath = require_path4();
    var fsm = require_lib32();
    var glob2 = require_glob();
    var index2 = require_entry_index();
    var path240 = __require("path");
    var ssri6 = require_lib18();
    var hasOwnProperty2 = (obj, key) => Object.prototype.hasOwnProperty.call(obj, key);
    var verifyOpts = (opts3) => ({
      concurrency: 20,
      log: { silly() {
      } },
      ...opts3
    });
    module2.exports = verify;
    async function verify(cache, opts3) {
      opts3 = verifyOpts(opts3);
      opts3.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, opts3);
        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;
      opts3.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, opts3) {
      opts3.log.silly("verify", "fixing cache permissions");
      await mkdir2(cache, { recursive: true });
      return null;
    }
    async function garbageCollect(cache, opts3) {
      opts3.log.silly("verify", "garbage collecting content");
      const { default: pMap2 } = await Promise.resolve().then(() => (init_p_map(), p_map_exports));
      const indexStream = index2.lsStream(cache);
      const liveContent = /* @__PURE__ */ new Set();
      indexStream.on("data", (entry) => {
        if (opts3.filter && !opts3.filter(entry)) {
          return;
        }
        const integrity = ssri6.parse(entry.integrity);
        for (const algo in integrity) {
          liveContent.add(integrity[algo].toString());
        }
      });
      await new Promise((resolve4, reject3) => {
        indexStream.on("end", resolve4).on("error", reject3);
      });
      const contentDir = contentPath.contentDir(cache);
      const files = await glob2(path240.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 split4 = f.split(/[/\\]/);
          const digest = split4.slice(split4.length - 3).join("");
          const algo = split4[split4.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: opts3.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 (err2) {
        if (err2.code === "ENOENT") {
          return { size: 0, valid: false };
        }
        if (err2.code !== "EINTEGRITY") {
          throw err2;
        }
        await rm3(filepath, { recursive: true, force: true });
        contentInfo.valid = false;
      }
      return contentInfo;
    }
    async function rebuildIndex(cache, opts3) {
      opts3.log.silly("verify", "rebuilding index");
      const { default: pMap2 } = await Promise.resolve().then(() => (init_p_map(), p_map_exports));
      const entries = await index2.ls(cache);
      const stats = {
        missingContent: 0,
        rejectedEntries: 0,
        totalEntries: 0
      };
      const buckets = {};
      for (const k2 in entries) {
        if (hasOwnProperty2(entries, k2)) {
          const hashed = index2.hashKey(k2);
          const entry = entries[k2];
          const excluded = opts3.filter && !opts3.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 = index2.bucketPath(cache, k2);
          } else {
            buckets[hashed] = [entry];
            buckets[hashed]._path = index2.bucketPath(cache, k2);
          }
        }
      }
      await pMap2(
        Object.keys(buckets),
        (key) => {
          return rebuildBucket(cache, buckets[key], stats, opts3);
        },
        { concurrency: opts3.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 index2.insert(cache, entry.key, entry.integrity, {
            metadata: entry.metadata,
            size: entry.size,
            time: entry.time
          });
          stats.totalEntries++;
        } catch (err2) {
          if (err2.code === "ENOENT") {
            stats.rejectedEntries++;
            stats.missingContent++;
          } else {
            throw err2;
          }
        }
      }
    }
    function cleanTmp(cache, opts3) {
      opts3.log.silly("verify", "cleaning tmp directory");
      return rm3(path240.join(cache, "tmp"), { recursive: true, force: true });
    }
    async function writeVerifile(cache, opts3) {
      const verifile = path240.join(cache, "_lastverified");
      opts3.log.silly("verify", "writing verifile to " + verifile);
      return writeFile3(verifile, `${Date.now()}`);
    }
    module2.exports.lastRun = lastRun;
    async function lastRun(cache) {
      const data = await readFile5(path240.join(cache, "_lastverified"), { encoding: "utf8" });
      return /* @__PURE__ */ new Date(+data);
    }
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/cacache/20.0.4/9069421e65b8c869fd001cfde347ef1ab7a971e601609830b2c8574d797cd78d/node_modules/cacache/lib/index.js
var require_lib33 = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/cacache/20.0.4/9069421e65b8c869fd001cfde347ef1ab7a971e601609830b2c8574d797cd78d/node_modules/cacache/lib/index.js"(exports2, module2) {
    "use strict";
    var get2 = require_get3();
    var put = require_put();
    var rm3 = require_rm2();
    var verify = require_verify();
    var { clearMemoized } = require_memoization();
    var tmp = require_tmp();
    var index2 = require_entry_index();
    module2.exports.index = {};
    module2.exports.index.compact = index2.compact;
    module2.exports.index.insert = index2.insert;
    module2.exports.ls = index2.ls;
    module2.exports.ls.stream = index2.lsStream;
    module2.exports.get = get2;
    module2.exports.get.byDigest = get2.byDigest;
    module2.exports.get.stream = get2.stream;
    module2.exports.get.stream.byDigest = get2.stream.byDigest;
    module2.exports.get.copy = get2.copy;
    module2.exports.get.copy.byDigest = get2.copy.byDigest;
    module2.exports.get.info = get2.info;
    module2.exports.get.hasContent = get2.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;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/make-fetch-happen/15.0.6/c233388eda321f30d30b7aa8e10f4a9e3ad31f6bdc5e3f1308eb4707f0ae8b74/node_modules/make-fetch-happen/lib/pipeline.js
var require_pipeline = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/make-fetch-happen/15.0.6/c233388eda321f30d30b7aa8e10f4a9e3ad31f6bdc5e3f1308eb4707f0ae8b74/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(opts3, ...streams) {
        super();
        this.#events = opts3.events;
        if (streams.length) {
          this.push(...streams);
        }
      }
      on(event, handler83) {
        if (this.#events.includes(event) && this.#data.has(event)) {
          return handler83(...this.#data.get(event));
        }
        return super.on(event, handler83);
      }
      emit(event, ...data) {
        if (this.#events.includes(event)) {
          this.#data.set(event, data);
        }
        return super.emit(event, ...data);
      }
    };
    module2.exports = CachingMinipassPipeline;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/make-fetch-happen/15.0.6/c233388eda321f30d30b7aa8e10f4a9e3ad31f6bdc5e3f1308eb4707f0ae8b74/node_modules/make-fetch-happen/lib/cache/key.js
var require_key = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/make-fetch-happen/15.0.6/c233388eda321f30d30b7aa8e10f4a9e3ad31f6bdc5e3f1308eb4707f0ae8b74/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;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@gar/promise-retry/1.0.3/71993a60b0ac687ded66a7c7ef139d379e2111fc6323a69a6ec64ff840d97715/node_modules/@gar/promise-retry/lib/retry.js
var require_retry5 = __commonJS({
  "../../../../../setup-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 i4 = 0; i4 < this.#errors.length; i4++) {
            const error = this.#errors[i4];
            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(err2) {
        this.#errors.push(err2);
        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 };
  }
});

// ../../../../../setup-pnpm/store/v11/links/@gar/promise-retry/1.0.3/71993a60b0ac687ded66a7c7ef139d379e2111fc6323a69a6ec64ff840d97715/node_modules/@gar/promise-retry/lib/index.js
var require_lib34 = __commonJS({
  "../../../../../setup-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, opts3) => Math.min(Math.round((1 + (opts3.randomize ? Math.random() : 0)) * Math.max(opts3.minTimeout, 1) * Math.pow(opts3.factor, attempt)), opts3.maxTimeout);
    var isRetryError = (err2) => err2?.code === "EPROMISERETRY" && Object.hasOwn(err2, "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 opts3 = {
          retries: 10,
          factor: 2,
          minTimeout: 1 * 1e3,
          maxTimeout: Infinity,
          randomize: false,
          ...options
        };
        if (opts3.minTimeout > opts3.maxTimeout) {
          throw new Error("minTimeout is greater than maxTimeout");
        }
        if (opts3.retries) {
          for (let i4 = 0; i4 < opts3.retries; i4++) {
            timeouts.push(createTimeout(i4, opts3));
          }
          timeouts.sort((a2, b) => a2 - b);
        } else if (options.forever) {
          timeouts.push(createTimeout(0, opts3));
        }
      }
      const operation5 = new RetryOperation(timeouts, {
        forever: options.forever,
        unref: options.unref,
        maxRetryTime: options.maxRetryTime
      });
      return new Promise(function(resolve4, reject3) {
        operation5.attempt(async (number) => {
          try {
            const result2 = await fn((err2) => {
              throw Object.assign(new Error("Retrying"), { code: "EPROMISERETRY", retried: err2 });
            }, number, operation5);
            return resolve4(result2);
          } catch (err2) {
            if (!isRetryError(err2)) {
              return reject3(err2);
            }
            if (!operation5.retry(err2.retried || new Error())) {
              return reject3(err2.retried);
            }
          }
        });
      });
    };
    module2.exports = { promiseRetry };
  }
});

// ../../../../../setup-pnpm/store/v11/links/@npmcli/agent/4.0.2/17e76c9f7a8646532c876bbeaea0b91bd32480548b179ba51ca5a3623d2c67f1/node_modules/@npmcli/agent/lib/dns.js
var require_dns2 = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@npmcli/agent/4.0.2/17e76c9f7a8646532c876bbeaea0b91bd32480548b179ba51ca5a3623d2c67f1/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, (err2, ...result2) => {
          if (err2) {
            return callback2(err2);
          }
          cache.set(key, result2, { ttl });
          return callback2(null, ...result2);
        });
      }
    });
    module2.exports = {
      cache,
      getOptions: getOptions2
    };
  }
});

// ../../../../../setup-pnpm/store/v11/links/@npmcli/agent/4.0.2/17e76c9f7a8646532c876bbeaea0b91bd32480548b179ba51ca5a3623d2c67f1/node_modules/@npmcli/agent/lib/options.js
var require_options3 = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@npmcli/agent/4.0.2/17e76c9f7a8646532c876bbeaea0b91bd32480548b179ba51ca5a3623d2c67f1/node_modules/@npmcli/agent/lib/options.js"(exports2, module2) {
    "use strict";
    var dns = require_dns2();
    var normalizeOptions3 = (opts3) => {
      const family = parseInt(opts3.family ?? "0", 10);
      const keepAlive = opts3.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: opts3.maxSockets ?? 15,
        maxTotalSockets: Infinity,
        maxFreeSockets: keepAlive ? 256 : void 0,
        scheduling: "fifo",
        // then spread the rest of the options
        ...opts3,
        // 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: opts3.timeout ?? 0,
          connection: 0,
          response: 0,
          transfer: 0,
          ...opts3.timeouts
        },
        // get the dns options that go at the top level of socket connection
        ...dns.getOptions({ family, ...opts3.dns })
      };
      delete normalized.timeout;
      delete normalized.headers;
      return normalized;
    };
    var createKey2 = (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 = createKey2(v);
        }
        key += `${k2}:${v}:`;
      }
      return key;
    };
    var cacheOptions = ({ secureEndpoint, ...options }) => createKey2({
      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
    };
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/agent-base/7.1.4/8064b28f1685a680dac840c22e648a41b5870407b6bfacc4ac83550c0f5ffdc2/node_modules/agent-base/dist/helpers.js
var require_helpers3 = __commonJS({
  "../../../../../setup-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(mod2) {
      if (mod2 && mod2.__esModule) return mod2;
      var result2 = {};
      if (mod2 != null) {
        for (var k2 in mod2) if (k2 !== "default" && Object.prototype.hasOwnProperty.call(mod2, k2)) __createBinding2(result2, mod2, k2);
      }
      __setModuleDefault2(result2, mod2);
      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 err2 = _err;
        err2.message += ` (input: ${str2})`;
        throw err2;
      }
    }
    exports2.json = json2;
    function req2(url7, opts3 = {}) {
      const href = typeof url7 === "string" ? url7 : url7.href;
      const req3 = (href.startsWith("https:") ? https2 : http2).request(url7, opts3);
      const promise2 = new Promise((resolve4, reject3) => {
        req3.once("response", resolve4).once("error", reject3).end();
      });
      req3.then = promise2.then.bind(promise2);
      return req3;
    }
    exports2.req = req2;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/agent-base/7.1.4/8064b28f1685a680dac840c22e648a41b5870407b6bfacc4ac83550c0f5ffdc2/node_modules/agent-base/dist/index.js
var require_dist12 = __commonJS({
  "../../../../../setup-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(mod2) {
      if (mod2 && mod2.__esModule) return mod2;
      var result2 = {};
      if (mod2 != null) {
        for (var k2 in mod2) if (k2 !== "default" && Object.prototype.hasOwnProperty.call(mod2, k2)) __createBinding2(result2, mod2, k2);
      }
      __setModuleDefault2(result2, mod2);
      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(opts3) {
        super(opts3);
        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 index2 = sockets.indexOf(socket);
        if (index2 !== -1) {
          sockets.splice(index2, 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 (err2) {
              return cb(err2);
            }
          }
          this[INTERNAL].currentSocket = socket;
          super.createSocket(req2, options, cb);
        }, (err2) => {
          this.decrementSockets(name, fakeSocket);
          cb(err2);
        });
      }
      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;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/http-proxy-agent/7.0.2/a2bd86678d402abcdabd07ddab23e4f90f9a56c2ccbcb3aee868d7285a33035d/node_modules/http-proxy-agent/dist/index.js
var require_dist13 = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/http-proxy-agent/7.0.2/a2bd86678d402abcdabd07ddab23e4f90f9a56c2ccbcb3aee868d7285a33035d/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(mod2) {
      if (mod2 && mod2.__esModule) return mod2;
      var result2 = {};
      if (mod2 != null) {
        for (var k2 in mod2) if (k2 !== "default" && Object.prototype.hasOwnProperty.call(mod2, k2)) __createBinding2(result2, mod2, k2);
      }
      __setModuleDefault2(result2, mod2);
      return result2;
    };
    var __importDefault2 = exports2 && exports2.__importDefault || function(mod2) {
      return mod2 && mod2.__esModule ? mod2 : { "default": mod2 };
    };
    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, opts3) {
        super(opts3);
        this.proxy = typeof proxy === "string" ? new url_1.URL(proxy) : proxy;
        this.proxyHeaders = opts3?.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 = {
          ...opts3 ? omit3(opts3, "headers") : null,
          host,
          port
        };
      }
      addRequest(req2, opts3) {
        req2._header = null;
        this.setRequestProps(req2, opts3);
        super.addRequest(req2, opts3);
      }
      setRequestProps(req2, opts3) {
        const { proxy } = this;
        const protocol = opts3.secureEndpoint ? "https:" : "http:";
        const hostname = req2.getHeader("host") || "localhost";
        const base = `${protocol}//${hostname}`;
        const url7 = new url_1.URL(req2.path, base);
        if (opts3.port !== 80) {
          url7.port = String(opts3.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, opts3) {
        req2._header = null;
        if (!req2.path.includes("://")) {
          this.setRequestProps(req2, opts3);
        }
        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;
    }
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/https-proxy-agent/7.0.6/34c3c487afbcac1bcf858ccb4e95744f8af2dbb7722c881decef12e4ce417295/node_modules/https-proxy-agent/dist/parse-proxy-response.js
var require_parse_proxy_response = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/https-proxy-agent/7.0.6/34c3c487afbcac1bcf858ccb4e95744f8af2dbb7722c881decef12e4ce417295/node_modules/https-proxy-agent/dist/parse-proxy-response.js"(exports2) {
    "use strict";
    var __importDefault2 = exports2 && exports2.__importDefault || function(mod2) {
      return mod2 && mod2.__esModule ? mod2 : { "default": mod2 };
    };
    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((resolve4, reject3) => {
        let buffersLength = 0;
        const buffers = [];
        function read2() {
          const b = socket.read();
          if (b)
            ondata(b);
          else
            socket.once("readable", read2);
        }
        function cleanup2() {
          socket.removeListener("end", onend);
          socket.removeListener("error", onerror);
          socket.removeListener("readable", read2);
        }
        function onend() {
          cleanup2();
          debug("onend");
          reject3(new Error("Proxy connection ended before receiving CONNECT response"));
        }
        function onerror(err2) {
          cleanup2();
          debug("onerror %o", err2);
          reject3(err2);
        }
        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);
          cleanup2();
          resolve4({
            connect: {
              statusCode,
              statusText,
              headers
            },
            buffered
          });
        }
        socket.on("error", onerror);
        socket.on("end", onend);
        read2();
      });
    }
    exports2.parseProxyResponse = parseProxyResponse;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/https-proxy-agent/7.0.6/34c3c487afbcac1bcf858ccb4e95744f8af2dbb7722c881decef12e4ce417295/node_modules/https-proxy-agent/dist/index.js
var require_dist14 = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/https-proxy-agent/7.0.6/34c3c487afbcac1bcf858ccb4e95744f8af2dbb7722c881decef12e4ce417295/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(mod2) {
      if (mod2 && mod2.__esModule) return mod2;
      var result2 = {};
      if (mod2 != null) {
        for (var k2 in mod2) if (k2 !== "default" && Object.prototype.hasOwnProperty.call(mod2, k2)) __createBinding2(result2, mod2, k2);
      }
      __setModuleDefault2(result2, mod2);
      return result2;
    };
    var __importDefault2 = exports2 && exports2.__importDefault || function(mod2) {
      return mod2 && mod2.__esModule ? mod2 : { "default": mod2 };
    };
    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, opts3) {
        super(opts3);
        this.options = { path: void 0 };
        this.proxy = typeof proxy === "string" ? new url_1.URL(proxy) : proxy;
        this.proxyHeaders = opts3?.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"],
          ...opts3 ? omit3(opts3, "headers") : null,
          host,
          port
        };
      }
      /**
       * Called when the node-core HTTP client library is creating a
       * new HTTP request.
       */
      async connect(req2, opts3) {
        const { proxy } = this;
        if (!opts3.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(opts3.host) ? `[${opts3.host}]` : opts3.host;
        let payload = `CONNECT ${host}:${opts3.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}:${opts3.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 (opts3.secureEndpoint) {
            debug("Upgrading socket connection to TLS");
            return tls2.connect({
              ...omit3(setServernameFromNonIpHost(opts3), "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;
    }
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/socks-proxy-agent/8.0.5/0f85459d0b8d8340793e2ea8cb2580f8661f0b553f9842fee58f6998a65da1e9/node_modules/socks-proxy-agent/dist/index.js
var require_dist15 = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/socks-proxy-agent/8.0.5/0f85459d0b8d8340793e2ea8cb2580f8661f0b553f9842fee58f6998a65da1e9/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(mod2) {
      if (mod2 && mod2.__esModule) return mod2;
      var result2 = {};
      if (mod2 != null) {
        for (var k2 in mod2) if (k2 !== "default" && Object.prototype.hasOwnProperty.call(mod2, k2)) __createBinding2(result2, mod2, k2);
      }
      __setModuleDefault2(result2, mod2);
      return result2;
    };
    var __importDefault2 = exports2 && exports2.__importDefault || function(mod2) {
      return mod2 && mod2.__esModule ? mod2 : { "default": mod2 };
    };
    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, opts3) {
        super(opts3);
        const url7 = typeof uri === "string" ? new url_1.URL(uri) : uri;
        const { proxy, lookup } = parseSocksURL(url7);
        this.shouldLookup = lookup;
        this.proxy = proxy;
        this.timeout = opts3?.timeout ?? null;
        this.socketOptions = opts3?.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, opts3) {
        const { shouldLookup, proxy, timeout } = this;
        if (!opts3.host) {
          throw new Error("No `host` defined!");
        }
        let { host } = opts3;
        const { port, lookup: lookupFn = dns.lookup } = opts3;
        if (shouldLookup) {
          host = await new Promise((resolve4, reject3) => {
            lookupFn(host, {}, (err2, res) => {
              if (err2) {
                reject3(err2);
              } else {
                resolve4(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 cleanup2 = (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", () => cleanup2());
        }
        if (opts3.secureEndpoint) {
          debug("Upgrading socket connection to TLS");
          const tlsSocket = tls2.connect({
            ...omit3(setServernameFromNonIpHost(opts3), "host", "path", "port"),
            socket
          });
          tlsSocket.once("error", (error) => {
            debug("Socket TLS error", error.message);
            cleanup2(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;
    }
  }
});

// ../../../../../setup-pnpm/store/v11/links/@npmcli/agent/4.0.2/17e76c9f7a8646532c876bbeaea0b91bd32480548b179ba51ca5a3623d2c67f1/node_modules/@npmcli/agent/lib/errors.js
var require_errors11 = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@npmcli/agent/4.0.2/17e76c9f7a8646532c876bbeaea0b91bd32480548b179ba51ca5a3623d2c67f1/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
    };
  }
});

// ../../../../../setup-pnpm/store/v11/links/@npmcli/agent/4.0.2/17e76c9f7a8646532c876bbeaea0b91bd32480548b179ba51ca5a3623d2c67f1/node_modules/@npmcli/agent/lib/proxy.js
var require_proxy = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@npmcli/agent/4.0.2/17e76c9f7a8646532c876bbeaea0b91bd32480548b179ba51ca5a3623d2c67f1/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_errors11();
    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 i4 = 0; i4 < noSegments.length; i4++) {
          if (hostSegments[i4] !== noSegments[i4]) {
            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
    };
  }
});

// ../../../../../setup-pnpm/store/v11/links/@npmcli/agent/4.0.2/17e76c9f7a8646532c876bbeaea0b91bd32480548b179ba51ca5a3623d2c67f1/node_modules/@npmcli/agent/lib/agents.js
var require_agents = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@npmcli/agent/4.0.2/17e76c9f7a8646532c876bbeaea0b91bd32480548b179ba51ca5a3623d2c67f1/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_errors11();
    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((err2) => {
            if (err2.name === "AbortError") {
              return;
            }
            throw err2;
          });
          promises.push(connectionTimeout);
        }
        let result2;
        try {
          result2 = await Promise.race(promises);
          ac.abort();
        } catch (err2) {
          ac.abort();
          throw err2;
        }
        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((err2) => {
              throw err2[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);
      }
      // When connect() rejects, agent-base removes only its placeholder socket, so Node never drains this.requests[name] and requests queued past maxSockets hang forever.
      // On a failure we dispatch the next queued request ourselves.
      // See npm/cli#9386 and TooTallNate/proxy-agents#427.
      createSocket(req2, options, cb) {
        super.createSocket(req2, options, (err2, socket) => {
          if (err2) {
            this.#drainPendingRequests(req2, options);
          }
          cb(err2, socket);
        });
      }
      // Dispatch the next request queued behind maxSockets, reusing the slot the failed connection freed.
      #drainPendingRequests(failedReq, options) {
        const name = this.getName(options);
        const queue2 = this.requests[name];
        if (!queue2 || queue2.length === 0) {
          return;
        }
        const failedIndex = queue2.indexOf(failedReq);
        if (failedIndex !== -1) {
          queue2.splice(failedIndex, 1);
        }
        if (queue2.length === 0) {
          delete this.requests[name];
          return;
        }
        const socketCount = this.sockets[name] ? this.sockets[name].length : 0;
        if (socketCount >= this.maxSockets || this.totalSocketCount >= this.maxTotalSockets) {
          return;
        }
        const nextReq = queue2.shift();
        if (queue2.length === 0) {
          delete this.requests[name];
        }
        this.createSocket(nextReq, options, (err2, socket) => {
          if (err2) {
            nextReq.onSocket(null, err2);
          } else {
            nextReq.onSocket(socket);
          }
        });
      }
    };
  }
});

// ../../../../../setup-pnpm/store/v11/links/@npmcli/agent/4.0.2/17e76c9f7a8646532c876bbeaea0b91bd32480548b179ba51ca5a3623d2c67f1/node_modules/@npmcli/agent/lib/index.js
var require_lib35 = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@npmcli/agent/4.0.2/17e76c9f7a8646532c876bbeaea0b91bd32480548b179ba51ca5a3623d2c67f1/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();
        }
      }
    };
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/make-fetch-happen/15.0.6/c233388eda321f30d30b7aa8e10f4a9e3ad31f6bdc5e3f1308eb4707f0ae8b74/node_modules/make-fetch-happen/package.json
var require_package4 = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/make-fetch-happen/15.0.6/c233388eda321f30d30b7aa8e10f4a9e3ad31f6bdc5e3f1308eb4707f0ae8b74/node_modules/make-fetch-happen/package.json"(exports2, module2) {
    module2.exports = {
      name: "make-fetch-happen",
      version: "15.0.6",
      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"
      }
    };
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/make-fetch-happen/15.0.6/c233388eda321f30d30b7aa8e10f4a9e3ad31f6bdc5e3f1308eb4707f0ae8b74/node_modules/make-fetch-happen/lib/remote.js
var require_remote = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/make-fetch-happen/15.0.6/c233388eda321f30d30b7aa8e10f4a9e3ad31f6bdc5e3f1308eb4707f0ae8b74/node_modules/make-fetch-happen/lib/remote.js"(exports2, module2) {
    var { Minipass } = require_commonjs4();
    var fetch3 = require_lib29();
    var { promiseRetry } = require_lib34();
    var ssri6 = require_lib18();
    var { log: log3 } = require_lib15();
    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 fetch3.Request(request, _opts);
        const url7 = cleanUrl(req2.url);
        try {
          let res = await fetch3(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", (i4) => pipeline2.emit("integrity", i4));
            integrityStream.on("size", (s) => pipeline2.emit("size", s));
            res = new fetch3.Response(pipeline2, res);
            res.body.hasIntegrityEmitter = true;
          }
          res.headers.set("x-fetch-attempts", attemptNum);
          const isStream4 = Minipass.isStream(req2.body);
          const isRetriable = req2.method !== "POST" && !isStream4 && ([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 (err2) {
          const code = err2.code === "EPROMISERETRY" ? err2.retried.code : err2.code;
          const isRetryError = err2.retried instanceof fetch3.Response || RETRY_ERRORS.includes(code) && RETRY_TYPES.includes(err2.type);
          if (req2.method === "POST" || isRetryError) {
            throw err2;
          }
          if (typeof options.onRetry === "function") {
            options.onRetry(err2);
          }
          log3.http("fetch", `${req2.method} ${url7} attempt ${attemptNum} failed with ${err2.code}`);
          return retryHandler(err2);
        }
      }, options.retry).catch((err2) => {
        if (err2.status >= 400 && err2.type !== "system") {
          return err2;
        }
        throw err2;
      });
    };
    module2.exports = remoteFetch;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/make-fetch-happen/15.0.6/c233388eda321f30d30b7aa8e10f4a9e3ad31f6bdc5e3f1308eb4707f0ae8b74/node_modules/make-fetch-happen/lib/cache/entry.js
var require_entry4 = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/make-fetch-happen/15.0.6/c233388eda321f30d30b7aa8e10f4a9e3ad31f6bdc5e3f1308eb4707f0ae8b74/node_modules/make-fetch-happen/lib/cache/entry.js"(exports2, module2) {
    var { Request, Response } = require_lib29();
    var { Minipass } = require_commonjs4();
    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), (A2, B) => {
            const entryA = new _CacheEntry({ entry: A2, 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 (err2) {
          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 (err2) {
        }
      }
      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((resolve4, reject3) => {
            cacheWriteResolve = resolve4;
            cacheWriteReject = reject3;
          }).catch((err2) => {
            body.emit("error", err2);
          });
          body = new CachingMinipassPipeline({ events: ["integrity", "size"] }, new MinipassFlush({
            flush() {
              return cacheWritePromise;
            }
          }));
          body.hasIntegrityEmitter = true;
          const onResume = () => {
            const tee2 = new Minipass();
            const cacheStream = cacache.put.stream(this.options.cachePath, this.key, cacheOpts);
            cacheStream.on("integrity", (i4) => body.emit("integrity", i4));
            cacheStream.on("size", (s) => body.emit("size", s));
            tee2.pipe(cacheStream);
            cacheStream.promise().then(cacheWriteResolve, cacheWriteReject);
            body.unshift(tee2);
            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(method2, options, status) {
        let response;
        if (method2 === "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 (err2) => {
              cacheStream.pause();
              if (err2.code === "EINTEGRITY") {
                await cacache.rm.content(
                  this.options.cachePath,
                  this.entry.integrity,
                  { memoize: this.options.memoize }
                );
              }
              if (err2.code === "ENOENT" || err2.code === "EINTEGRITY") {
                await _CacheEntry.invalidate(this.request, this.options);
              }
              body.emit("error", err2);
              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 (err2) {
          if (!this.policy.mustRevalidate) {
            return this.respond(request.method, options, "stale");
          }
          throw err2;
        }
        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 (err2) {
          }
          return this.respond(request.method, options, "revalidated");
        }
        const newEntry = new _CacheEntry({
          request,
          response,
          options
        });
        return newEntry.store("updated");
      }
    };
    module2.exports = CacheEntry;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/make-fetch-happen/15.0.6/c233388eda321f30d30b7aa8e10f4a9e3ad31f6bdc5e3f1308eb4707f0ae8b74/node_modules/make-fetch-happen/lib/cache/index.js
var require_cache4 = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/make-fetch-happen/15.0.6/c233388eda321f30d30b7aa8e10f4a9e3ad31f6bdc5e3f1308eb4707f0ae8b74/node_modules/make-fetch-happen/lib/cache/index.js"(exports2, module2) {
    var { NotCachedError } = require_errors9();
    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;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/make-fetch-happen/15.0.6/c233388eda321f30d30b7aa8e10f4a9e3ad31f6bdc5e3f1308eb4707f0ae8b74/node_modules/make-fetch-happen/lib/fetch.js
var require_fetch2 = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/make-fetch-happen/15.0.6/c233388eda321f30d30b7aa8e10f4a9e3ad31f6bdc5e3f1308eb4707f0ae8b74/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 fetch3 = 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 fetch3(redirect.request, redirect.options);
    };
    module2.exports = fetch3;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/make-fetch-happen/15.0.6/c233388eda321f30d30b7aa8e10f4a9e3ad31f6bdc5e3f1308eb4707f0ae8b74/node_modules/make-fetch-happen/lib/index.js
var require_lib36 = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/make-fetch-happen/15.0.6/c233388eda321f30d30b7aa8e10f4a9e3ad31f6bdc5e3f1308eb4707f0ae8b74/node_modules/make-fetch-happen/lib/index.js"(exports2, module2) {
    var { FetchError: FetchError2, Headers: Headers2, Request, Response } = require_lib29();
    var configureOptions = require_options2();
    var fetch3 = require_fetch2();
    var makeFetchHappen = (url7, opts3) => {
      const options = configureOptions(opts3);
      const request = new Request(url7, options);
      return fetch3(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;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/jsonparse/1.3.1/df432f544a2f8ee870ba90867adf4b33ce84275944f6aebe11410c474e882c86/node_modules/jsonparse/jsonparse.js
var require_jsonparse = __commonJS({
  "../../../../../setup-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 NUMBER = 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 i4 = 0, l = keys4.length; i4 < l; i4++) {
        var key = keys4[i4];
        if (C[key] === code) {
          return key;
        }
      }
      return code && "0x" + code.toString(16);
    };
    var proto3 = Parser.prototype;
    proto3.onError = function(err2) {
      throw err2;
    };
    proto3.charError = function(buffer3, i4) {
      this.tState = STOP;
      this.onError(new Error("Unexpected " + JSON.stringify(String.fromCharCode(buffer3[i4])) + " at position " + i4 + " in state " + Parser.toknam(this.tState)));
    };
    proto3.appendStringChar = function(char) {
      if (this.stringBufferOffset >= STRING_BUFFER_SIZE) {
        this.string += this.stringBuffer.toString("utf8");
        this.stringBufferOffset = 0;
      }
      this.stringBuffer[this.stringBufferOffset++] = char;
    };
    proto3.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;
    };
    proto3.write = function(buffer3) {
      if (typeof buffer3 === "string") buffer3 = new Buffer(buffer3);
      var n2;
      for (var i4 = 0, l = buffer3.length; i4 < l; i4++) {
        if (this.tState === START) {
          n2 = buffer3[i4];
          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, i4);
            }
          }
        } else if (this.tState === STRING1) {
          n2 = buffer3[i4];
          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;
            i4 = i4 + 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 " + i4 + " 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 + i4 > buffer3.length) {
              for (var k2 = 0; k2 <= buffer3.length - 1 - i4; k2++) {
                this.temp_buffs[this.bytes_in_sequence][k2] = buffer3[i4 + k2];
              }
              this.bytes_remaining = i4 + this.bytes_in_sequence - buffer3.length;
              i4 = buffer3.length - 1;
            } else {
              this.appendStringBuf(buffer3, i4, i4 + this.bytes_in_sequence);
              i4 = i4 + 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, i4);
          }
        } else if (this.tState === STRING2) {
          n2 = buffer3[i4];
          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, i4);
          }
        } else if (this.tState === STRING3 || this.tState === STRING4 || this.tState === STRING5 || this.tState === STRING6) {
          n2 = buffer3[i4];
          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, i4);
          }
        } else if (this.tState === NUMBER1 || this.tState === NUMBER3) {
          n2 = buffer3[i4];
          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, i4);
              }
              if (this.string.match(/[0-9]+/) == this.string && result2.toString() != this.string) {
                this.onToken(STRING, this.string);
              } else {
                this.onToken(NUMBER, result2);
              }
              this.offset += this.string.length - 1;
              this.string = void 0;
              i4--;
              break;
          }
        } else if (this.tState === TRUE1) {
          if (buffer3[i4] === 114) {
            this.tState = TRUE2;
          } else {
            return this.charError(buffer3, i4);
          }
        } else if (this.tState === TRUE2) {
          if (buffer3[i4] === 117) {
            this.tState = TRUE3;
          } else {
            return this.charError(buffer3, i4);
          }
        } else if (this.tState === TRUE3) {
          if (buffer3[i4] === 101) {
            this.tState = START;
            this.onToken(TRUE, true);
            this.offset += 3;
          } else {
            return this.charError(buffer3, i4);
          }
        } else if (this.tState === FALSE1) {
          if (buffer3[i4] === 97) {
            this.tState = FALSE2;
          } else {
            return this.charError(buffer3, i4);
          }
        } else if (this.tState === FALSE2) {
          if (buffer3[i4] === 108) {
            this.tState = FALSE3;
          } else {
            return this.charError(buffer3, i4);
          }
        } else if (this.tState === FALSE3) {
          if (buffer3[i4] === 115) {
            this.tState = FALSE4;
          } else {
            return this.charError(buffer3, i4);
          }
        } else if (this.tState === FALSE4) {
          if (buffer3[i4] === 101) {
            this.tState = START;
            this.onToken(FALSE, false);
            this.offset += 4;
          } else {
            return this.charError(buffer3, i4);
          }
        } else if (this.tState === NULL1) {
          if (buffer3[i4] === 117) {
            this.tState = NULL2;
          } else {
            return this.charError(buffer3, i4);
          }
        } else if (this.tState === NULL2) {
          if (buffer3[i4] === 108) {
            this.tState = NULL3;
          } else {
            return this.charError(buffer3, i4);
          }
        } else if (this.tState === NULL3) {
          if (buffer3[i4] === 108) {
            this.tState = START;
            this.onToken(NULL, null);
            this.offset += 3;
          } else {
            return this.charError(buffer3, i4);
          }
        }
      }
    };
    proto3.onToken = function(token, value) {
    };
    proto3.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)));
    };
    proto3.push = function() {
      this.stack.push({ value: this.value, key: this.key, mode: this.mode });
    };
    proto3.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;
      }
    };
    proto3.emit = function(value) {
      if (this.mode) {
        this.state = COMMA;
      }
      this.onValue(value);
    };
    proto3.onValue = function(value) {
    };
    proto3.onToken = function(token, value) {
      if (this.state === VALUE) {
        if (token === STRING || token === NUMBER || 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;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/npm-registry-fetch/19.1.1/f03465a7fe9805e8ce5f535900466236d00953a450180307912230c3e79fd9af/node_modules/npm-registry-fetch/lib/json-stream.js
var require_json_stream = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/npm-registry-fetch/19.1.1/f03465a7fe9805e8ce5f535900466236d00953a450180307912230c3e79fd9af/node_modules/npm-registry-fetch/lib/json-stream.js"(exports2, module2) {
    var Parser = require_jsonparse();
    var { Minipass } = require_commonjs4();
    var JSONStreamError = class extends Error {
      constructor(err2, caller) {
        super(err2.message);
        Error.captureStackTrace(this, caller || this.constructor);
      }
      get name() {
        return "JSONStreamError";
      }
    };
    var check2 = (x3, y) => typeof x3 === "string" ? String(y) === x3 : x3 && typeof x3.test === "function" ? x3.test(y) : typeof x3 === "boolean" || typeof x3 === "object" ? x3 : typeof x3 === "function" ? x3(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(opts3) {
        super({
          ...opts3,
          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 opts3.path === "string" ? opts3.path.split(".").map((e) => e === "$*" ? { emitKey: true } : e === "*" ? true : e === "" ? { recurse: true } : e) : Array.isArray(opts3.path) && opts3.path.length ? opts3.path : null;
        if (typeof opts3.map === "function") {
          this.#map = opts3.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 i4 = 0;
        let j2 = 0;
        let emitKey = false;
        while (i4 < this.#path.length) {
          const key = this.#path[i4];
          j2++;
          if (key && !key.recurse) {
            const c3 = j2 === parser.stack.length ? parser : parser.stack[j2];
            if (!c3) {
              return;
            }
            if (!check2(key, c3.key)) {
              this.#setHeaderFooter(c3.key, value);
              return;
            }
            emitKey = !!key.emitKey;
            i4++;
          } else {
            i4++;
            if (i4 >= this.#path.length) {
              return;
            }
            const nextKey = this.#path[i4];
            if (!nextKey) {
              return;
            }
            while (true) {
              const c3 = j2 === parser.stack.length ? parser : parser.stack[j2];
              if (!c3) {
                return;
              }
              if (check2(nextKey, c3.key)) {
                i4++;
                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(path240, map26) {
        return new _JSONStream({ path: path240, map: map26 });
      }
    };
    module2.exports = JSONStream;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/npm-registry-fetch/19.1.1/f03465a7fe9805e8ce5f535900466236d00953a450180307912230c3e79fd9af/node_modules/npm-registry-fetch/lib/index.js
var require_lib37 = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/npm-registry-fetch/19.1.1/f03465a7fe9805e8ce5f535900466236d00953a450180307912230c3e79fd9af/node_modules/npm-registry-fetch/lib/index.js"(exports2, module2) {
    "use strict";
    var { HttpErrorAuthOTP } = require_errors8();
    var checkResponse = require_check_response();
    var getAuth = require_auth2();
    var fetch3 = require_lib36();
    var JSONStream = require_json_stream();
    var npa14 = require_npa2();
    var qs = __require("querystring");
    var url7 = __require("url");
    var zlib2 = require_commonjs5();
    var { Minipass } = require_commonjs4();
    var defaultOpts = require_default_opts();
    var urlIsValid = (u2) => {
      try {
        return !!new url7.URL(u2);
      } catch (_) {
        return false;
      }
    };
    module2.exports = regFetch;
    function regFetch(uri, opts_ = {}) {
      const opts3 = {
        ...defaultOpts,
        ...opts_
      };
      const uriValid = urlIsValid(uri);
      let registry = opts3.registry || defaultOpts.registry;
      if (!uriValid) {
        registry = opts3.registry = opts3.spec && pickRegistry(opts3.spec, opts3) || opts3.registry || registry;
        uri = `${registry.trim().replace(/\/?$/g, "")}/${uri.trim().replace(/^\//, "")}`;
        new url7.URL(uri);
      }
      const method2 = opts3.method || "GET";
      const startTime = Date.now();
      const auth = getAuth(uri, opts3);
      const headers = getHeaders2(uri, auth, opts3);
      let body = opts3.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 (opts3.gzip) {
        headers["content-encoding"] = "gzip";
        if (bodyIsStream) {
          const gz = new zlib2.Gzip();
          body.on(
            "error",
            /* istanbul ignore next: unlikely and hard to test */
            (err2) => gz.emit("error", err2)
          );
          body = body.pipe(gz);
        } else if (!bodyIsPromise) {
          body = new zlib2.Gzip().end(body).concat();
        }
      }
      const parsed = new url7.URL(uri);
      if (opts3.query) {
        const q = typeof opts3.query === "string" ? qs.parse(opts3.query) : opts3.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" && method2 === "GET") {
        opts3.offline = false;
        opts3.preferOffline = false;
        opts3.preferOnline = true;
      }
      const doFetch = async (fetchBody) => {
        const p = fetch3(uri, {
          agent: opts3.agent,
          algorithms: opts3.algorithms,
          body: fetchBody,
          cache: getCacheMode(opts3),
          cachePath: opts3.cache,
          ca: opts3.ca,
          cert: auth.cert || opts3.cert,
          headers,
          integrity: opts3.integrity,
          key: auth.key || opts3.key,
          localAddress: opts3.localAddress,
          maxSockets: opts3.maxSockets,
          memoize: opts3.memoize,
          method: method2,
          noProxy: opts3.noProxy,
          proxy: opts3.httpsProxy || opts3.proxy,
          retry: opts3.retry ? opts3.retry : {
            retries: opts3.fetchRetries,
            factor: opts3.fetchRetryFactor,
            minTimeout: opts3.fetchRetryMintimeout,
            maxTimeout: opts3.fetchRetryMaxtimeout
          },
          strictSSL: opts3.strictSSL,
          timeout: opts3.timeout || 30 * 1e3,
          signal: opts3.signal
        }).then((res) => checkResponse({
          method: method2,
          uri,
          res,
          registry,
          startTime,
          auth,
          opts: opts3
        }));
        if (typeof opts3.otpPrompt === "function") {
          return p.catch(async (er) => {
            if (er instanceof HttpErrorAuthOTP) {
              let otp;
              try {
                otp = await opts3.otpPrompt();
              } catch (_) {
              }
              if (!otp) {
                throw er;
              }
              return regFetch(uri, { ...opts3, otp });
            }
            throw er;
          });
        } else {
          return p;
        }
      };
      return Promise.resolve(body).then(doFetch);
    }
    module2.exports.getAuth = getAuth;
    module2.exports.json = fetchJSON;
    function fetchJSON(uri, opts3) {
      return regFetch(uri, opts3).then((res) => res.json());
    }
    module2.exports.json.stream = fetchJSONStream;
    function fetchJSONStream(uri, jsonPath, opts_ = {}) {
      const opts3 = { ...defaultOpts, ...opts_ };
      const parser = JSONStream.parse(jsonPath, opts3.mapJSON);
      regFetch(uri, opts3).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, opts3 = {}) {
      spec = npa14(spec);
      let registry = spec.scope && opts3[spec.scope.replace(/^@?/, "@") + ":registry"];
      if (!registry && opts3.scope) {
        registry = opts3[opts3.scope.replace(/^@?/, "@") + ":registry"];
      }
      if (!registry) {
        registry = opts3.registry || defaultOpts.registry;
      }
      return registry;
    }
    function getCacheMode(opts3) {
      return opts3.offline ? "only-if-cached" : opts3.preferOffline ? "force-cache" : opts3.preferOnline ? "no-cache" : "default";
    }
    function getHeaders2(uri, auth, opts3) {
      const headers = Object.assign({
        "user-agent": opts3.userAgent
      }, opts3.headers || {});
      if (opts3.authType) {
        headers["npm-auth-type"] = opts3.authType;
      }
      if (opts3.scope) {
        headers["npm-scope"] = opts3.scope;
      }
      if (opts3.npmSession) {
        headers["npm-session"] = opts3.npmSession;
      }
      if (opts3.npmCommand) {
        headers["npm-command"] = opts3.npmCommand;
      }
      if (auth.token) {
        headers.authorization = `Bearer ${auth.token}`;
      } else if (auth.auth) {
        headers.authorization = `Basic ${auth.auth}`;
      }
      if (opts3.otp) {
        headers["npm-otp"] = opts3.otp;
      }
      return headers;
    }
  }
});

// ../../../../../setup-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({
  "../../../../../setup-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 slice4 = `${start ? "..." : ""}${txt.slice(start, end)}${end === txt.length ? "" : "..."}`;
      return makeParsedError(
        msg,
        `${txt === slice4 ? "" : "near "}${JSON.stringify(slice4)}`,
        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 {
      }
    };
  }
});

// ../../../../../setup-pnpm/store/v11/links/@npmcli/package-json/7.0.5/ac829ee121f9077fb44c2aeac5f591be8482528833be9188922815de2372e005/node_modules/@npmcli/package-json/lib/update-dependencies.js
var require_update_dependencies = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@npmcli/package-json/7.0.5/ac829ee121f9077fb44c2aeac5f591be8482528833be9188922815de2372e005/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;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@npmcli/package-json/7.0.5/ac829ee121f9077fb44c2aeac5f591be8482528833be9188922815de2372e005/node_modules/@npmcli/package-json/lib/update-scripts.js
var require_update_scripts = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@npmcli/package-json/7.0.5/ac829ee121f9077fb44c2aeac5f591be8482528833be9188922815de2372e005/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;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@npmcli/package-json/7.0.5/ac829ee121f9077fb44c2aeac5f591be8482528833be9188922815de2372e005/node_modules/@npmcli/package-json/lib/update-workspaces.js
var require_update_workspaces = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@npmcli/package-json/7.0.5/ac829ee121f9077fb44c2aeac5f591be8482528833be9188922815de2372e005/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;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/spdx-expression-parse/4.0.0/e1aa3a29fda234edfab6732bad6882c6c976fc36cfcd0e4e36fc4b2fa5b4fe06/node_modules/spdx-expression-parse/scan.js
var require_scan4 = __commonJS({
  "../../../../../setup-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 index2 = 0;
      function hasMore() {
        return index2 < source.length;
      }
      function read2(value) {
        if (value instanceof RegExp) {
          var chars = source.slice(index2);
          var match = chars.match(value);
          if (match) {
            index2 += match[0].length;
            return match[0];
          }
        } else {
          if (source.indexOf(value, index2) === index2) {
            index2 += value.length;
            return value;
          }
        }
      }
      function skipWhitespace() {
        read2(/[ ]*/);
      }
      function operator() {
        var string;
        var possibilities = [/^WITH/i, /^AND/i, /^OR/i, "(", ")", ":", "+"];
        for (var i4 = 0; i4 < possibilities.length; i4++) {
          string = read2(possibilities[i4]);
          if (string) {
            break;
          }
        }
        if (string === "+" && index2 > 1 && source[index2 - 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 " + index2);
        }
        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 = index2;
        var string = idstring();
        if (licenses.indexOf(string) !== -1) {
          return {
            type: "LICENSE",
            string
          };
        } else if (exceptions.indexOf(string) !== -1) {
          return {
            type: "EXCEPTION",
            string
          };
        }
        index2 = 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[index2] + "` at offset " + index2);
        }
        tokens.push(token);
      }
      return tokens;
    };
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/spdx-expression-parse/4.0.0/e1aa3a29fda234edfab6732bad6882c6c976fc36cfcd0e4e36fc4b2fa5b4fe06/node_modules/spdx-expression-parse/parse.js
var require_parse10 = __commonJS({
  "../../../../../setup-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 index2 = 0;
      function hasMore() {
        return index2 < tokens.length;
      }
      function token() {
        return hasMore() ? tokens[index2] : null;
      }
      function next2() {
        if (!hasMore()) {
          throw new Error();
        }
        index2++;
      }
      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 = index2;
        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 };
        }
        index2 = 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;
    };
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/spdx-expression-parse/4.0.0/e1aa3a29fda234edfab6732bad6882c6c976fc36cfcd0e4e36fc4b2fa5b4fe06/node_modules/spdx-expression-parse/index.js
var require_spdx_expression_parse2 = __commonJS({
  "../../../../../setup-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 parse12 = require_parse10();
    module2.exports = function(source) {
      return parse12(scan3(source));
    };
  }
});

// ../../../../../setup-pnpm/store/v11/links/@npmcli/package-json/7.0.5/ac829ee121f9077fb44c2aeac5f591be8482528833be9188922815de2372e005/node_modules/@npmcli/package-json/lib/license.js
var require_license = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@npmcli/package-json/7.0.5/ac829ee121f9077fb44c2aeac5f591be8482528833be9188922815de2372e005/node_modules/@npmcli/package-json/lib/license.js"(exports2, module2) {
    var parse12 = 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 = parse12(argument);
        return !usesLicenseRef(ast);
      } catch {
        return false;
      }
    };
  }
});

// ../../../../../setup-pnpm/store/v11/links/@npmcli/package-json/7.0.5/ac829ee121f9077fb44c2aeac5f591be8482528833be9188922815de2372e005/node_modules/@npmcli/package-json/lib/normalize-data.js
var require_normalize_data = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@npmcli/package-json/7.0.5/ac829ee121f9077fb44c2aeac5f591be8482528833be9188922815de2372e005/node_modules/@npmcli/package-json/lib/normalize-data.js"(exports2, module2) {
    var { URL: URL7 } = __require("node:url");
    var hostedGitInfo = require_lib();
    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 u2 = person.url || person.web;
        const wrappedUrl = u2 ? " (" + u2 + ")" : "";
        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 d3 in typos) {
        if (Object.prototype.hasOwnProperty.call(data, d3)) {
          changes?.push(`${d3} should probably be ${typos[d3]}.`);
        }
      }
    }
    module2.exports = { normalizeData };
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/isexe/4.0.0/8736ef6929ea634afce7a507dde8d5a32c95fc80f4bb087b1a9f17c270b0fcae/node_modules/isexe/dist/commonjs/index.min.js
var require_index_min4 = __commonJS({
  "../../../../../setup-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((i4) => {
      "use strict";
      Object.defineProperty(i4, "__esModule", { value: true });
      i4.sync = i4.isexe = void 0;
      var M3 = __require("node:fs"), x3 = __require("node:fs/promises"), q = async (t2, e = {}) => {
        let { ignoreErrors: r = false } = e;
        try {
          return d3(await (0, x3.stat)(t2), e);
        } catch (s) {
          let n2 = s;
          if (r || n2.code === "EACCES") return false;
          throw n2;
        }
      };
      i4.isexe = q;
      var m = (t2, e = {}) => {
        let { ignoreErrors: r = false } = e;
        try {
          return d3((0, M3.statSync)(t2), e);
        } catch (s) {
          let n2 = s;
          if (r || n2.code === "EACCES") return false;
          throw n2;
        }
      };
      i4.sync = m;
      var d3 = (t2, e) => t2.isFile() && A2(t2, e), A2 = (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 u2 = /* @__PURE__ */ new Set([n2, ...s]), c3 = t2.mode, S3 = 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 && u2.has(P2) || c3 & f && S3 === 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"), I3 = __require("node:fs/promises"), D3 = __require("node:path"), F = async (t2, e = {}) => {
        let { ignoreErrors: r = false } = e;
        try {
          return y(await (0, I3.stat)(t2), t2, e);
        } catch (s) {
          let n2 = s;
          if (r || n2.code === "EACCES") return false;
          throw n2;
        }
      };
      o2.isexe = F;
      var L3 = (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 = L3;
      var B = (t2, e) => {
        let { pathExt: r = process.env.PATHEXT || "" } = e, s = r.split(D3.delimiter);
        if (s.indexOf("") !== -1) return true;
        for (let n2 of s) {
          let u2 = n2.toLowerCase(), c3 = t2.substring(t2.length - u2.length).toLowerCase();
          if (u2 && c3 === u2) 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 G3 = 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 G3(r, e), r;
      };
    })();
    var X2 = 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;
    X2(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;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/which/6.0.1/138f9cc31c4c93a27593c8145e8bf5d6f872f5f3a7b3049ce79d8e3510d27779/node_modules/which/lib/index.js
var require_lib39 = __commonJS({
  "../../../../../setup-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: join5, 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 + join5(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;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@npmcli/promise-spawn/9.0.1/d8ab7f36b1383e9c498fc13aef72000b8e8e0cf327853317c5bcdf5d1f9a3ee7/node_modules/@npmcli/promise-spawn/lib/escape.js
var require_escape5 = __commonJS({
  "../../../../../setup-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 i4 = 0; i4 <= input.length; ++i4) {
          let slashCount = 0;
          while (input[i4] === "\\") {
            ++i4;
            ++slashCount;
          }
          if (i4 === input.length) {
            result2 += "\\".repeat(slashCount * 2);
            break;
          }
          if (input[i4] === '"') {
            result2 += "\\".repeat(slashCount * 2 + 1);
            result2 += input[i4];
          } else {
            result2 += "\\".repeat(slashCount);
            result2 += input[i4];
          }
        }
        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
    };
  }
});

// ../../../../../setup-pnpm/store/v11/links/@npmcli/promise-spawn/9.0.1/d8ab7f36b1383e9c498fc13aef72000b8e8e0cf327853317c5bcdf5d1f9a3ee7/node_modules/@npmcli/promise-spawn/lib/index.js
var require_lib40 = __commonJS({
  "../../../../../setup-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: spawn8 } = __require("child_process");
    var os20 = __require("os");
    var which4 = require_lib39();
    var escape = require_escape5();
    var promiseSpawn = (cmd, args, opts3 = {}, extra = {}) => {
      if (opts3.shell) {
        return spawnWithShell(cmd, args, opts3, extra);
      }
      let resolve4, reject3;
      const promise2 = new Promise((_resolve, _reject) => {
        resolve4 = _resolve;
        reject3 = _reject;
      });
      const closeError = new Error("command failed");
      const stdout = [];
      const stderr = [];
      const getResult = (result2) => ({
        cmd,
        args,
        ...result2,
        ...stdioResult(stdout, stderr, opts3),
        ...extra
      });
      const rejectWithOpts = (er, erOpts) => {
        const resultError = getResult(erOpts);
        reject3(Object.assign(er, resultError));
      };
      const proc = spawn8(cmd, args, opts3);
      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 {
          resolve4(getResult({ code, signal }));
        }
      });
      return promise2;
    };
    var spawnWithShell = (cmd, args, opts3, extra) => {
      let command = opts3.shell;
      if (command === true) {
        command = process.platform === "win32" ? process.env.ComSpec || "cmd.exe" : "sh";
      }
      const options = { ...opts3, 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 i4 = 0; i4 < cmd.length; ++i4) {
          const char = cmd.charAt(i4);
          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 (err2) {
          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 open3 = (_args, opts3 = {}, extra = {}) => {
      const options = { ...opts3, shell: true };
      const args = [].concat(_args);
      let platform5 = process.platform;
      if (platform5 === "linux" && os20.release().toLowerCase().includes("microsoft")) {
        platform5 = "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 (platform5 === "win32") {
          options.shell = process.env.ComSpec;
          command = 'start ""';
        } else if (platform5 === "wsl") {
          command = "sensible-browser";
        } else if (platform5 === "darwin") {
          command = "open";
        } else {
          command = "xdg-open";
        }
      }
      return spawnWithShell(command, args, options, extra);
    };
    promiseSpawn.open = open3;
    var isPipe = (stdio = "pipe", fd2) => {
      if (stdio === "pipe" || stdio === null) {
        return true;
      }
      if (Array.isArray(stdio)) {
        return isPipe(stdio[fd2], fd2);
      }
      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;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@npmcli/git/7.0.2/1e177114fa8c197950769503235ca0513c14989906a1f0811a530b534f6ba3d7/node_modules/@npmcli/git/lib/errors.js
var require_errors12 = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@npmcli/git/7.0.2/1e177114fa8c197950769503235ca0513c14989906a1f0811a530b534f6ba3d7/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
    };
  }
});

// ../../../../../setup-pnpm/store/v11/links/@npmcli/git/7.0.2/1e177114fa8c197950769503235ca0513c14989906a1f0811a530b534f6ba3d7/node_modules/@npmcli/git/lib/make-error.js
var require_make_error = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@npmcli/git/7.0.2/1e177114fa8c197950769503235ca0513c14989906a1f0811a530b534f6ba3d7/node_modules/@npmcli/git/lib/make-error.js"(exports2, module2) {
    var {
      GitConnectionError,
      GitPathspecError,
      GitUnknownError
    } = require_errors12();
    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;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@npmcli/git/7.0.2/1e177114fa8c197950769503235ca0513c14989906a1f0811a530b534f6ba3d7/node_modules/@npmcli/git/lib/opts.js
var require_opts = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@npmcli/git/7.0.2/1e177114fa8c197950769503235ca0513c14989906a1f0811a530b534f6ba3d7/node_modules/@npmcli/git/lib/opts.js"(exports2, module2) {
    var fs131 = __require("node:fs");
    var os20 = __require("node:os");
    var path240 = __require("node:path");
    var ini3 = require_ini();
    var gitConfigPath = path240.join(os20.homedir(), ".gitconfig");
    var cachedConfig = null;
    var loadGitConfig = () => {
      if (cachedConfig === null) {
        try {
          cachedConfig = {};
          if (fs131.existsSync(gitConfigPath)) {
            const configContent = fs131.readFileSync(gitConfigPath, "utf-8");
            cachedConfig = ini3.parse(configContent);
          }
        } catch (error) {
          cachedConfig = {};
        }
      }
      return cachedConfig;
    };
    var checkGitConfigs = () => {
      const config2 = loadGitConfig();
      return {
        sshCommandSetInConfig: config2?.core?.sshCommand !== void 0,
        askPassSetInConfig: config2?.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 = (opts3 = {}) => ({
      stdioString: true,
      ...opts3,
      shell: false,
      env: opts3.env || { ...finalGitEnv, ...process.env }
    });
    module2.exports.loadGitConfig = loadGitConfig;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@npmcli/git/7.0.2/1e177114fa8c197950769503235ca0513c14989906a1f0811a530b534f6ba3d7/node_modules/@npmcli/git/lib/which.js
var require_which3 = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@npmcli/git/7.0.2/1e177114fa8c197950769503235ca0513c14989906a1f0811a530b534f6ba3d7/node_modules/@npmcli/git/lib/which.js"(exports2, module2) {
    var which4 = require_lib39();
    var gitPath;
    try {
      gitPath = which4.sync("git");
    } catch {
    }
    module2.exports = (opts3 = {}) => {
      if (opts3.git) {
        return opts3.git;
      }
      if (!gitPath || opts3.git === false) {
        return Object.assign(new Error("No git binary found in $PATH"), { code: "ENOGIT" });
      }
      return gitPath;
    };
  }
});

// ../../../../../setup-pnpm/store/v11/links/@npmcli/git/7.0.2/1e177114fa8c197950769503235ca0513c14989906a1f0811a530b534f6ba3d7/node_modules/@npmcli/git/lib/spawn.js
var require_spawn = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@npmcli/git/7.0.2/1e177114fa8c197950769503235ca0513c14989906a1f0811a530b534f6ba3d7/node_modules/@npmcli/git/lib/spawn.js"(exports2, module2) {
    var spawn8 = require_lib40();
    var { promiseRetry } = require_lib34();
    var { log: log3 } = require_lib15();
    var makeError2 = require_make_error();
    var makeOpts = require_opts();
    module2.exports = (gitArgs, opts3 = {}) => {
      const whichGit = require_which3();
      const gitPath = whichGit(opts3);
      if (gitPath instanceof Error) {
        return Promise.reject(gitPath);
      }
      const args = opts3.allowReplace || gitArgs[0] === "--no-replace-objects" ? gitArgs : ["--no-replace-objects", ...gitArgs];
      let retryOpts = opts3.retry;
      if (retryOpts === null || retryOpts === void 0) {
        retryOpts = {
          retries: opts3.fetchRetries || 2,
          factor: opts3.fetchRetryFactor || 10,
          maxTimeout: opts3.fetchRetryMaxtimeout || 6e4,
          minTimeout: opts3.fetchRetryMintimeout || 1e3
        };
      }
      return promiseRetry((retryFn, number) => {
        if (number !== 1) {
          log3.silly("git", `Retrying git command: ${args.join(" ")} attempt # ${number}`);
        }
        return spawn8(gitPath, args, makeOpts(opts3)).catch((er) => {
          const gitError = makeError2(er);
          if (!gitError.shouldRetry(number)) {
            throw gitError;
          }
          retryFn(gitError);
        });
      }, retryOpts);
    };
  }
});

// ../../../../../setup-pnpm/store/v11/links/@npmcli/git/7.0.2/1e177114fa8c197950769503235ca0513c14989906a1f0811a530b534f6ba3d7/node_modules/@npmcli/git/lib/lines-to-revs.js
var require_lines_to_revs = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@npmcli/git/7.0.2/1e177114fa8c197950769503235ca0513c14989906a1f0811a530b534f6ba3d7/node_modules/@npmcli/git/lib/lines-to-revs.js"(exports2, module2) {
    var semver64 = 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 split4 = line.trim().split(/\s+/, 2);
      if (split4.length < 2) {
        return null;
      }
      const sha = split4[0].trim();
      const rawRef = split4[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 && semver64.valid(match[1], true)) {
          revs.versions[semver64.clean(match[1], true)] = doc;
        }
      }
      return revs;
    };
  }
});

// ../../../../../setup-pnpm/store/v11/links/@npmcli/git/7.0.2/1e177114fa8c197950769503235ca0513c14989906a1f0811a530b534f6ba3d7/node_modules/@npmcli/git/lib/revs.js
var require_revs = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@npmcli/git/7.0.2/1e177114fa8c197950769503235ca0513c14989906a1f0811a530b534f6ba3d7/node_modules/@npmcli/git/lib/revs.js"(exports2, module2) {
    var spawn8 = 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, opts3 = {}) => {
      if (!opts3.noGitRevCache) {
        const cached = revsCache.get(repo);
        if (cached) {
          return cached;
        }
      }
      const { stdout } = await spawn8(["ls-remote", repo], opts3);
      const revs = linesToRevs(stdout.trim().split("\n"));
      revsCache.set(repo, revs);
      return revs;
    };
  }
});

// ../../../../../setup-pnpm/store/v11/links/@npmcli/git/7.0.2/1e177114fa8c197950769503235ca0513c14989906a1f0811a530b534f6ba3d7/node_modules/@npmcli/git/lib/utils.js
var require_utils19 = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@npmcli/git/7.0.2/1e177114fa8c197950769503235ca0513c14989906a1f0811a530b534f6ba3d7/node_modules/@npmcli/git/lib/utils.js"(exports2) {
    var isWindows15 = (opts3) => (opts3.fakePlatform || process.platform) === "win32";
    exports2.isWindows = isWindows15;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/npm-install-checks/8.0.0/535d7b31266d6e26c33f30bdeeda00e41ba4a0b65b74f30c488800ddbe072c86/node_modules/npm-install-checks/lib/current-env.js
var require_current_env = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/npm-install-checks/8.0.0/535d7b31266d6e26c33f30bdeeda00e41ba4a0b65b74f30c488800ddbe072c86/node_modules/npm-install-checks/lib/current-env.js"(exports2, module2) {
    var process25 = __require("node:process");
    var nodeOs = __require("node:os");
    var fs131 = __require("node:fs");
    function isMusl(file) {
      return file.includes("libc.musl-") || file.includes("ld-musl-");
    }
    function os20() {
      return process25.platform;
    }
    function cpu() {
      return process25.arch;
    }
    var LDD_PATH = "/usr/bin/ldd";
    function getFamilyFromFilesystem() {
      try {
        const content = fs131.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 = process25.report.excludeNetwork;
      process25.report.excludeNetwork = true;
      const report3 = process25.report.getReport();
      process25.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(env4 = {}) {
      const osName = env4.os || os20();
      return {
        cpu: {
          name: env4.cpu || cpu()
        },
        libc: {
          name: env4.libc || libc(osName)
        },
        os: {
          name: osName,
          version: env4.osVersion || nodeOs.release()
        },
        packageManager: {
          name: "npm",
          version: env4.npmVersion
        },
        runtime: {
          name: "node",
          version: env4.nodeVersion || process25.version
        }
      };
    }
    module2.exports = {
      cpu,
      libc,
      os: os20,
      devEngines
    };
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/npm-install-checks/8.0.0/535d7b31266d6e26c33f30bdeeda00e41ba4a0b65b74f30c488800ddbe072c86/node_modules/npm-install-checks/lib/dev-engines.js
var require_dev_engines = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/npm-install-checks/8.0.0/535d7b31266d6e26c33f30bdeeda00e41ba4a0b65b74f30c488800ddbe072c86/node_modules/npm-install-checks/lib/dev-engines.js"(exports2, module2) {
    var satisfies4 = require_satisfies();
    var validRange4 = require_valid2();
    var recognizedOnFail = [
      "ignore",
      "warn",
      "error",
      "download"
    ];
    var recognizedProperties = [
      "name",
      "version",
      "onFail"
    ];
    var recognizedEngines = [
      "packageManager",
      "runtime",
      "cpu",
      "libc",
      "os"
    ];
    function checkDependency(wanted, current, opts3) {
      const { engine } = opts3;
      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 (validRange4(wanted.version)) {
          if (!satisfies4(current.version, wanted.version, opts3.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 = {}, opts3 = {}) {
      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, { ...opts3, 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 err2 = Object.assign(new Error(`Invalid devEngines.${engine}`), {
            errors: depErrors,
            engine,
            isWarn: onFail === "warn",
            isError: onFail === "error",
            current: currentEngine,
            required: dependencyAsAuthored
          });
          errors2.push(err2);
        }
      }
      return errors2;
    }
    module2.exports = {
      checkDevEngines
    };
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/npm-install-checks/8.0.0/535d7b31266d6e26c33f30bdeeda00e41ba4a0b65b74f30c488800ddbe072c86/node_modules/npm-install-checks/lib/index.js
var require_lib41 = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/npm-install-checks/8.0.0/535d7b31266d6e26c33f30bdeeda00e41ba4a0b65b74f30c488800ddbe072c86/node_modules/npm-install-checks/lib/index.js"(exports2, module2) {
    var semver64 = 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 && !semver64.satisfies(nodev, eng.node, opt);
      const npmFail = npmVer && eng.npm && !semver64.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 os20 = environment.os || currentEnv.os();
      const cpu = environment.cpu || currentEnv.cpu();
      const libc = environment.libc || currentEnv.libc(os20);
      const osOk = target2.os ? checkList2(os20, 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: os20,
            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
    };
  }
});

// ../../../../../setup-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({
  "../../../../../setup-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: join5, 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 clean2 = {};
      let hasBins = false;
      Object.keys(orig).forEach((binKey) => {
        const base = join5("/", basename2(binKey.replace(/\\|:/g, "/"))).slice(1);
        if (typeof orig[binKey] !== "string" || !base) {
          return;
        }
        const binTarget = join5("/", orig[binKey].replace(/\\/g, "/")).replace(/\\/g, "/").slice(1);
        if (!binTarget) {
          return;
        }
        clean2[base] = binTarget;
        hasBins = true;
      });
      if (hasBins) {
        pkg.bin = clean2;
      } else {
        delete pkg.bin;
      }
      return pkg;
    };
    module2.exports = normalize11;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/npm-pick-manifest/11.0.3/f66d6a23b94acbd28125196266a147b258050a1f55e67dd660d629e48496f59b/node_modules/npm-pick-manifest/lib/index.js
var require_lib43 = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/npm-pick-manifest/11.0.3/f66d6a23b94acbd28125196266a147b258050a1f55e67dd660d629e48496f59b/node_modules/npm-pick-manifest/lib/index.js"(exports2, module2) {
    "use strict";
    var npa14 = require_npa2();
    var semver64 = 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 && semver64.satisfies(ver, avoid, avoidSemverOpt);
    var decorateAvoid = (result2, avoid) => result2 && shouldAvoid(result2.version, avoid) ? { ...result2, _shouldAvoid: true } : result2;
    var pickManifest = (packument, wanted, opts3) => {
      const {
        defaultTag = "latest",
        before = null,
        nodeVersion = process.version,
        npmVersion = null,
        includeStaged = false,
        avoid = null,
        avoidStrict = false
      } = opts3;
      const { name, time: verTimes } = packument;
      const versions = packument.versions || {};
      if (avoidStrict) {
        const looseOpts = {
          ...opts3,
          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 = npa14.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}`, opts3);
        }
      }
      if (wanted && type4 === "version") {
        const ver = semver64.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 === "*" || semver64.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]) => semver64.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 || semver64.rcompare(vera, verb, sortSemverOpt);
      });
      return decorateAvoid(entries[0] && entries[0][1], avoid);
    };
    module2.exports = (packument, wanted, opts3 = {}) => {
      const mani = pickManifest(packument, wanted, opts3);
      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" } = opts3;
      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: npa14.resolve(packument.name, wanted).type,
        wanted,
        versions: Object.keys(packument.versions ?? {}),
        name,
        distTags: packument["dist-tags"],
        defaultTag
      });
    };
  }
});

// ../../../../../setup-pnpm/store/v11/links/@npmcli/git/7.0.2/1e177114fa8c197950769503235ca0513c14989906a1f0811a530b534f6ba3d7/node_modules/@npmcli/git/lib/clone.js
var require_clone4 = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@npmcli/git/7.0.2/1e177114fa8c197950769503235ca0513c14989906a1f0811a530b534f6ba3d7/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: parse12 } = __require("url");
    var path240 = __require("path");
    var getRevs = require_revs();
    var spawn8 = require_spawn();
    var { isWindows: isWindows15 } = require_utils19();
    var pickManifest = require_lib43();
    var fs131 = __require("fs/promises");
    module2.exports = (repo, ref = "HEAD", target2 = null, opts3 = {}) => getRevs(repo, opts3).then((revs) => clone4(
      repo,
      revs,
      ref,
      resolveRef2(revs, ref, opts3),
      target2 || defaultTarget(repo, opts3.cwd),
      opts3
    ));
    var maybeShallow = (repo, opts3) => {
      if (opts3.gitShallow === false || opts3.gitShallow) {
        return opts3.gitShallow;
      }
      return shallowHosts.has(parse12(repo).host);
    };
    var defaultTarget = (repo, cwd = process.cwd()) => path240.resolve(cwd, path240.basename(repo.replace(/[/\\]?\.git$/, "")));
    var clone4 = (repo, revs, ref, revDoc, target2, opts3) => {
      if (!revDoc) {
        return unresolved(repo, ref, target2, opts3);
      }
      if (revDoc.sha === revs.refs.HEAD.sha) {
        return plain(repo, revDoc, target2, opts3);
      }
      if (revDoc.type === "tag" || revDoc.type === "branch") {
        return branch(repo, revDoc, target2, opts3);
      }
      return other(repo, revDoc, target2, opts3);
    };
    var resolveRef2 = (revs, ref, opts3) => {
      const { spec = {} } = opts3;
      ref = spec.gitCommittish || ref;
      if (!revs) {
        return null;
      }
      if (spec.gitRange) {
        return pickManifest(revs, spec.gitRange, opts3);
      }
      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, opts3) => {
      const shallow = maybeShallow(repo, opts3);
      const fetchOrigin = ["fetch", "origin", revDoc.rawRef].concat(shallow ? ["--depth=1"] : []);
      const git = (args) => spawn8(args, { ...opts3, cwd: target2 });
      return fs131.mkdir(target2, { recursive: true }).then(() => git(["init"])).then(() => isWindows15(opts3) ? 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, opts3)).then(() => revDoc.sha);
    };
    var branch = (repo, revDoc, target2, opts3) => {
      const args = [
        "clone",
        "-b",
        revDoc.ref,
        repo,
        target2,
        "--recurse-submodules"
      ];
      if (maybeShallow(repo, opts3)) {
        args.push("--depth=1");
      }
      if (isWindows15(opts3)) {
        args.push("--config", "core.longpaths=true");
      }
      return spawn8(args, opts3).then(() => revDoc.sha);
    };
    var plain = (repo, revDoc, target2, opts3) => {
      const args = [
        "clone",
        repo,
        target2,
        "--recurse-submodules"
      ];
      if (maybeShallow(repo, opts3)) {
        args.push("--depth=1");
      }
      if (isWindows15(opts3)) {
        args.push("--config", "core.longpaths=true");
      }
      return spawn8(args, opts3).then(() => revDoc.sha);
    };
    var updateSubmodules = async (target2, opts3) => {
      const hasSubmodules = await fs131.stat(`${target2}/.gitmodules`).then(() => true).catch(() => false);
      if (!hasSubmodules) {
        return null;
      }
      return spawn8([
        "submodule",
        "update",
        "-q",
        "--init",
        "--recursive"
      ], { ...opts3, cwd: target2 });
    };
    var unresolved = (repo, ref, target2, opts3) => {
      const lp = isWindows15(opts3) ? ["--config", "core.longpaths=true"] : [];
      const cloneArgs = ["clone", "--mirror", "-q", repo, target2 + "/.git"];
      const git = (args) => spawn8(args, { ...opts3, cwd: target2 });
      return fs131.mkdir(target2, { recursive: true }).then(() => git(cloneArgs.concat(lp))).then(() => git(["init"])).then(() => git(["checkout", ref])).then(() => updateSubmodules(target2, opts3)).then(() => git(["rev-parse", "--revs-only", "HEAD"])).then(({ stdout }) => stdout.trim());
    };
  }
});

// ../../../../../setup-pnpm/store/v11/links/@npmcli/git/7.0.2/1e177114fa8c197950769503235ca0513c14989906a1f0811a530b534f6ba3d7/node_modules/@npmcli/git/lib/is.js
var require_is = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@npmcli/git/7.0.2/1e177114fa8c197950769503235ca0513c14989906a1f0811a530b534f6ba3d7/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);
  }
});

// ../../../../../setup-pnpm/store/v11/links/@npmcli/git/7.0.2/1e177114fa8c197950769503235ca0513c14989906a1f0811a530b534f6ba3d7/node_modules/@npmcli/git/lib/find.js
var require_find2 = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@npmcli/git/7.0.2/1e177114fa8c197950769503235ca0513c14989906a1f0811a530b534f6ba3d7/node_modules/@npmcli/git/lib/find.js"(exports2, module2) {
    var is = require_is();
    var { dirname: dirname3 } = __require("path");
    module2.exports = async ({ cwd = process.cwd(), root } = {}) => {
      while (true) {
        if (await is({ cwd })) {
          return cwd;
        }
        const next2 = dirname3(cwd);
        if (cwd === root || cwd === next2) {
          return null;
        }
        cwd = next2;
      }
    };
  }
});

// ../../../../../setup-pnpm/store/v11/links/@npmcli/git/7.0.2/1e177114fa8c197950769503235ca0513c14989906a1f0811a530b534f6ba3d7/node_modules/@npmcli/git/lib/is-clean.js
var require_is_clean = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@npmcli/git/7.0.2/1e177114fa8c197950769503235ca0513c14989906a1f0811a530b534f6ba3d7/node_modules/@npmcli/git/lib/is-clean.js"(exports2, module2) {
    var spawn8 = require_spawn();
    module2.exports = (opts3 = {}) => spawn8(["status", "--porcelain=v1", "-uno"], opts3).then((res) => !res.stdout.trim().split(/\r?\n+/).map((l) => l.trim()).filter((l) => l).length);
  }
});

// ../../../../../setup-pnpm/store/v11/links/@npmcli/git/7.0.2/1e177114fa8c197950769503235ca0513c14989906a1f0811a530b534f6ba3d7/node_modules/@npmcli/git/lib/index.js
var require_lib44 = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@npmcli/git/7.0.2/1e177114fa8c197950769503235ca0513c14989906a1f0811a530b534f6ba3d7/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_errors12()
    };
  }
});

// ../../../../../setup-pnpm/store/v11/links/@npmcli/package-json/7.0.5/ac829ee121f9077fb44c2aeac5f591be8482528833be9188922815de2372e005/node_modules/@npmcli/package-json/lib/normalize.js
var require_normalize2 = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@npmcli/package-json/7.0.5/ac829ee121f9077fb44c2aeac5f591be8482528833be9188922815de2372e005/node_modules/@npmcli/package-json/lib/normalize.js"(exports2, module2) {
    var valid6 = require_valid();
    var clean2 = require_clean();
    var fs131 = __require("node:fs/promises");
    var path240 = __require("node:path");
    var { log: log3 } = require_lib15();
    var moduleBuiltin = __require("node:module");
    var _hostedGitInfo;
    function lazyHostedGitInfo() {
      if (!_hostedGitInfo) {
        _hostedGitInfo = require_lib();
      }
      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[path240.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 = path240.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(path240.join(".", path240.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 (!valid6(data.version, loose)) {
            throw new Error(`Invalid version: "${data.version}"`);
          }
          const version2 = clean2(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 d3 of data[type4]) {
                if (typeof d3 === "string") {
                  const dep = d3.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 d3 in data[deps]) {
                const r = data[deps][d3];
                if (typeof r !== "string") {
                  changes?.push(`Removed invalid "${deps}.${d3}"`);
                  delete data[deps][d3];
                }
                const hosted = lazyHostedGitInfo().fromUrl(data[deps][d3])?.toString();
                if (hosted && hosted !== data[deps][d3]) {
                  changes?.push(`Normalized git reference to "${deps}.${d3}"`);
                  data[deps][d3] = 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 fs131.access(path240.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 fs131.readFile(path240.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(path240.sep)) {
            if (file.match(mdre)) {
              readmeFile = file;
              break;
            }
            if (file.endsWith("README")) {
              readmeFile = file;
            }
          }
        }
        if (readmeFile) {
          const readmeData = await fs131.readFile(path240.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 = path240.resolve(pkg.path, manDir);
          const files = await lazyLoadGlob()("**/*.[0-9]", { cwd });
          data.man = files.map(
            (man) => path240.relative(pkg.path, path240.join(cwd, man)).split(path240.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: path240.resolve(pkg.path, binPath) });
        data.bin = bins.reduce((acc, binFile) => {
          if (binFile && !binFile.startsWith(".")) {
            const binName = path240.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 fs131.readFile(path240.resolve(gitRoot, ".git/HEAD"), "utf8");
          } catch (err2) {
          }
        }
        let headData;
        if (head2) {
          if (head2.startsWith("ref: ")) {
            const headRef = head2.replace(/^ref: /, "").trim();
            const headFile = path240.resolve(gitRoot, ".git", headRef);
            try {
              headData = await fs131.readFile(headFile, "utf8");
              headData = headData.replace(/^ref: /, "").trim();
            } catch (err2) {
            }
            if (!headData) {
              const packFile = path240.resolve(gitRoot, ".git/packed-refs");
              try {
                let refs = await fs131.readFile(packFile, "utf8");
                if (refs) {
                  refs = refs.split("\n");
                  for (let i4 = 0; i4 < refs.length; i4++) {
                    const match = refs[i4].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 index2 = data.main || "index.js";
        if (typeof index2 !== "string") {
          throw new TypeError('The "main" attribute must be of type string.');
        }
        const extless = path240.join(path240.dirname(index2), path240.basename(index2, path240.extname(index2)));
        const dts = `./${extless}.d.ts`;
        const hasDTSFields = "types" in data || "typings" in data;
        if (!hasDTSFields) {
          try {
            await fs131.access(path240.join(pkg.path, dts));
            data.types = dts.split(path240.sep).join("/");
          } catch {
          }
        }
      }
      if (steps.includes("binRefs") && data.bin instanceof Object) {
        for (const key in data.bin) {
          try {
            await fs131.access(path240.resolve(pkg.path, data.bin[key]));
          } catch {
            log3.warn("package-json", pkgId, `No bin file found at ${data.bin[key]}`);
          }
        }
      }
    }
    async function normalize11(pkg, opts3) {
      if (!pkg.content) {
        throw new Error("Can not normalize without content");
      }
      await asyncSteps(pkg, opts3);
      syncSteps(pkg, opts3);
    }
    function syncNormalize(pkg, opts3) {
      syncSteps(pkg, opts3);
    }
    module2.exports = { normalize: normalize11, syncNormalize };
  }
});

// ../../../../../setup-pnpm/store/v11/links/@npmcli/package-json/7.0.5/ac829ee121f9077fb44c2aeac5f591be8482528833be9188922815de2372e005/node_modules/@npmcli/package-json/lib/read-package.js
var require_read_package = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@npmcli/package-json/7.0.5/ac829ee121f9077fb44c2aeac5f591be8482528833be9188922815de2372e005/node_modules/@npmcli/package-json/lib/read-package.js"(exports2, module2) {
    var { readFile: readFile5 } = __require("fs/promises");
    var parseJSON = require_lib38();
    async function read2(filename) {
      try {
        const data = await readFile5(filename, "utf8");
        return data;
      } catch (err2) {
        err2.message = `Could not read package.json: ${err2}`;
        throw err2;
      }
    }
    function parse12(data) {
      try {
        const content = parseJSON(data);
        return content;
      } catch (err2) {
        err2.message = `Invalid package.json: ${err2}`;
        throw err2;
      }
    }
    async function readPackage(filename) {
      const data = await read2(filename);
      const content = parse12(data);
      return content;
    }
    module2.exports = {
      read: read2,
      parse: parse12,
      readPackage
    };
  }
});

// ../../../../../setup-pnpm/store/v11/links/@npmcli/package-json/7.0.5/ac829ee121f9077fb44c2aeac5f591be8482528833be9188922815de2372e005/node_modules/@npmcli/package-json/lib/sort.js
var require_sort3 = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@npmcli/package-json/7.0.5/ac829ee121f9077fb44c2aeac5f591be8482528833be9188922815de2372e005/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: config2,
        dependencies,
        devDependencies,
        peerDependencies,
        peerDependenciesMeta,
        optionalDependencies,
        bundledDependencies,
        bundleDependencies,
        engines,
        os: os20,
        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 config2 !== "undefined" ? { config: config2 } : {},
        ...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 os20 !== "undefined" ? { os: os20 } : {},
        ...typeof cpu !== "undefined" ? { cpu } : {},
        ...typeof publishConfig !== "undefined" ? { publishConfig } : {},
        ...typeof devEngines !== "undefined" ? { devEngines } : {},
        ...typeof licenses !== "undefined" ? { licenses } : {},
        ...typeof overrides !== "undefined" ? { overrides } : {},
        ...rest
      };
    }
    module2.exports = {
      packageSort
    };
  }
});

// ../../../../../setup-pnpm/store/v11/links/@npmcli/package-json/7.0.5/ac829ee121f9077fb44c2aeac5f591be8482528833be9188922815de2372e005/node_modules/@npmcli/package-json/lib/index.js
var require_lib45 = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@npmcli/package-json/7.0.5/ac829ee121f9077fb44c2aeac5f591be8482528833be9188922815de2372e005/node_modules/@npmcli/package-json/lib/index.js"(exports2, module2) {
    var { readFile: readFile5, writeFile: writeFile3 } = __require("node:fs/promises");
    var { resolve: resolve4 } = __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: parse12 } = 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(path240, opts3 = {}) {
        const p = new _PackageJson();
        await p.create(path240);
        if (opts3.data) {
          return p.update(opts3.data);
        }
        return p;
      }
      // Loads a package.json at given path and JSON parses
      static async load(path240, opts3 = {}) {
        const p = new _PackageJson();
        if (!opts3.create) {
          return p.load(path240);
        }
        try {
          return await p.load(path240);
        } catch (err2) {
          if (!err2.message.startsWith("Could not read package.json")) {
            throw err2;
          }
          return await p.create(path240);
        }
      }
      // npm pkg fix
      static async fix(path240, opts3) {
        const p = new _PackageJson();
        await p.load(path240, true);
        return p.fix(opts3);
      }
      // read-package-json compatible behavior
      static async prepare(path240, opts3) {
        const p = new _PackageJson();
        await p.load(path240, true);
        return p.prepare(opts3);
      }
      // read-package-json-fast compatible behavior
      static async normalize(path240, opts3) {
        const p = new _PackageJson();
        await p.load(path240);
        return p.normalize(opts3);
      }
      #path;
      #manifest;
      #readFileContent = "";
      #canSave = true;
      // Load content from given path
      async load(path240, parseIndex) {
        this.#path = path240;
        let parseErr;
        try {
          this.#readFileContent = await read2(this.filename);
        } catch (err2) {
          if (!parseIndex) {
            throw err2;
          }
          parseErr = err2;
        }
        if (parseErr) {
          const indexFile = resolve4(this.path, "index.js");
          let indexFileContent;
          try {
            indexFileContent = await readFile5(indexFile, "utf8");
          } catch (err2) {
            throw parseErr;
          }
          try {
            this.fromComment(indexFileContent);
          } catch (err2) {
            throw parseErr;
          }
          this.#canSave = false;
          return this;
        }
        return this.fromJSON(this.#readFileContent);
      }
      // Load data from a JSON string/buffer
      fromJSON(data) {
        this.#manifest = parse12(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 resolve4(this.path, "package.json");
        }
        return void 0;
      }
      create(path240) {
        this.#path = path240;
        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(opts3 = {}) {
        opts3.steps = this.constructor.normalizeSteps.filter((s) => s !== "_attributes");
        syncNormalize(this, opts3);
        return this;
      }
      async normalize(opts3 = {}) {
        if (!opts3.steps) {
          opts3.steps = this.constructor.normalizeSteps;
        }
        await normalize11(this, opts3);
        return this;
      }
      async prepare(opts3 = {}) {
        if (!opts3.steps) {
          opts3.steps = this.constructor.prepareSteps;
        }
        await normalize11(this, opts3);
        return this;
      }
      async fix(opts3 = {}) {
        opts3.steps = this.constructor.fixSteps;
        await normalize11(this, opts3);
        return this;
      }
    };
    module2.exports = PackageJson;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@sigstore/protobuf-specs/0.5.1/aaa9d549f5093b781009861cd12a17a7f71f993e4c9066ec7c4660c27365b2ea/node_modules/@sigstore/protobuf-specs/dist/__generated__/envelope.js
var require_envelope = __commonJS({
  "../../../../../setup-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;
    }
  }
});

// ../../../../../setup-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({
  "../../../../../setup-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;
    }
  }
});

// ../../../../../setup-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({
  "../../../../../setup-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;
    }
  }
});

// ../../../../../setup-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({
  "../../../../../setup-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;
    }
  }
});

// ../../../../../setup-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({
  "../../../../../setup-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;
    }
  }
});

// ../../../../../setup-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({
  "../../../../../setup-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;
    }
  }
});

// ../../../../../setup-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({
  "../../../../../setup-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;
    }
  }
});

// ../../../../../setup-pnpm/store/v11/links/@sigstore/protobuf-specs/0.5.1/aaa9d549f5093b781009861cd12a17a7f71f993e4c9066ec7c4660c27365b2ea/node_modules/@sigstore/protobuf-specs/dist/index.js
var require_dist16 = __commonJS({
  "../../../../../setup-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);
  }
});

// ../../../../../setup-pnpm/store/v11/links/@sigstore/bundle/4.0.0/23e6e4b1f45fb48b241475db9085c6bf5770b8de719b280f5870851da2d416bc/node_modules/@sigstore/bundle/dist/bundle.js
var require_bundle = __commonJS({
  "../../../../../setup-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";
    }
  }
});

// ../../../../../setup-pnpm/store/v11/links/@sigstore/bundle/4.0.0/23e6e4b1f45fb48b241475db9085c6bf5770b8de719b280f5870851da2d416bc/node_modules/@sigstore/bundle/dist/build.js
var require_build2 = __commonJS({
  "../../../../../setup-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 || ""
          }
        };
      }
    }
  }
});

// ../../../../../setup-pnpm/store/v11/links/@sigstore/bundle/4.0.0/23e6e4b1f45fb48b241475db9085c6bf5770b8de719b280f5870851da2d416bc/node_modules/@sigstore/bundle/dist/error.js
var require_error3 = __commonJS({
  "../../../../../setup-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 ValidationError2 = class extends Error {
      constructor(message, fields) {
        super(message);
        this.fields = fields;
      }
    };
    exports2.ValidationError = ValidationError2;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@sigstore/bundle/4.0.0/23e6e4b1f45fb48b241475db9085c6bf5770b8de719b280f5870851da2d416bc/node_modules/@sigstore/bundle/dist/validate.js
var require_validate = __commonJS({
  "../../../../../setup-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, i4) => {
                if (cert.rawBytes.length === 0) {
                  invalidValues.push(`verificationMaterial.content.x509CertificateChain.certificates[${i4}].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, i4) => {
              if (entry.logId === void 0) {
                invalidValues.push(`verificationMaterial.tlogEntries[${i4}].logId`);
              }
              if (entry.kindVersion === void 0) {
                invalidValues.push(`verificationMaterial.tlogEntries[${i4}].kindVersion`);
              }
            });
          }
        }
      }
      return invalidValues;
    }
    function validateInclusionPromise(b) {
      const invalidValues = [];
      if (b.verificationMaterial && b.verificationMaterial.tlogEntries?.length > 0) {
        b.verificationMaterial.tlogEntries.forEach((entry, i4) => {
          if (entry.inclusionPromise === void 0) {
            invalidValues.push(`verificationMaterial.tlogEntries[${i4}].inclusionPromise`);
          }
        });
      }
      return invalidValues;
    }
    function validateInclusionProof(b) {
      const invalidValues = [];
      if (b.verificationMaterial && b.verificationMaterial.tlogEntries?.length > 0) {
        b.verificationMaterial.tlogEntries.forEach((entry, i4) => {
          if (entry.inclusionProof === void 0) {
            invalidValues.push(`verificationMaterial.tlogEntries[${i4}].inclusionProof`);
          } else {
            if (entry.inclusionProof.checkpoint === void 0) {
              invalidValues.push(`verificationMaterial.tlogEntries[${i4}].inclusionProof.checkpoint`);
            }
          }
        });
      }
      return invalidValues;
    }
    function validateNoCertificateChain(b) {
      const invalidValues = [];
      if (b.verificationMaterial?.content?.$case === "x509CertificateChain") {
        invalidValues.push("verificationMaterial.content.$case");
      }
      return invalidValues;
    }
  }
});

// ../../../../../setup-pnpm/store/v11/links/@sigstore/bundle/4.0.0/23e6e4b1f45fb48b241475db9085c6bf5770b8de719b280f5870851da2d416bc/node_modules/@sigstore/bundle/dist/serialized.js
var require_serialized = __commonJS({
  "../../../../../setup-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;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@sigstore/bundle/4.0.0/23e6e4b1f45fb48b241475db9085c6bf5770b8de719b280f5870851da2d416bc/node_modules/@sigstore/bundle/dist/index.js
var require_dist17 = __commonJS({
  "../../../../../setup-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;
    } });
  }
});

// ../../../../../setup-pnpm/store/v11/links/@sigstore/core/3.2.1/441efa189a7008d636f6b850e7e3d9de7111770667ddae2c98078216c0d424f2/node_modules/@sigstore/core/dist/stream.js
var require_stream6 = __commonJS({
  "../../../../../setup-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;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@sigstore/core/3.2.1/441efa189a7008d636f6b850e7e3d9de7111770667ddae2c98078216c0d424f2/node_modules/@sigstore/core/dist/asn1/error.js
var require_error4 = __commonJS({
  "../../../../../setup-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;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@sigstore/core/3.2.1/441efa189a7008d636f6b850e7e3d9de7111770667ddae2c98078216c0d424f2/node_modules/@sigstore/core/dist/asn1/length.js
var require_length = __commonJS({
  "../../../../../setup-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 i4 = 0; i4 < byteCount; i4++) {
        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]);
    }
  }
});

// ../../../../../setup-pnpm/store/v11/links/@sigstore/core/3.2.1/441efa189a7008d636f6b850e7e3d9de7111770667ddae2c98078216c0d424f2/node_modules/@sigstore/core/dist/asn1/parse.js
var require_parse11 = __commonJS({
  "../../../../../setup-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 pad4 = neg ? 255 : 0;
      while (val == pad4 && ++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 i4 = pos + 1; i4 < end; ++i4) {
        n2 = n2 * BigInt(256) + BigInt(buf[i4]);
      }
      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 bits2 = [];
      for (let i4 = start; i4 < end; ++i4) {
        const byte = buf[i4];
        const skip2 = i4 === end - 1 ? unused : 0;
        for (let j2 = 7; j2 >= skip2; --j2) {
          bits2.push(byte >> j2 & 1);
        }
      }
      return bits2;
    }
  }
});

// ../../../../../setup-pnpm/store/v11/links/@sigstore/core/3.2.1/441efa189a7008d636f6b850e7e3d9de7111770667ddae2c98078216c0d424f2/node_modules/@sigstore/core/dist/asn1/tag.js
var require_tag = __commonJS({
  "../../../../../setup-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;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@sigstore/core/3.2.1/441efa189a7008d636f6b850e7e3d9de7111770667ddae2c98078216c0d424f2/node_modules/@sigstore/core/dist/asn1/obj.js
var require_obj = __commonJS({
  "../../../../../setup-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;
    }
  }
});

// ../../../../../setup-pnpm/store/v11/links/@sigstore/core/3.2.1/441efa189a7008d636f6b850e7e3d9de7111770667ddae2c98078216c0d424f2/node_modules/@sigstore/core/dist/asn1/index.js
var require_asn1 = __commonJS({
  "../../../../../setup-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;
    } });
  }
});

// ../../../../../setup-pnpm/store/v11/links/@sigstore/core/3.2.1/441efa189a7008d636f6b850e7e3d9de7111770667ddae2c98078216c0d424f2/node_modules/@sigstore/core/dist/crypto.js
var require_crypto = __commonJS({
  "../../../../../setup-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(mod2) {
      return mod2 && mod2.__esModule ? mod2 : { "default": mod2 };
    };
    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 d3 of data) {
        hash2.update(d3);
      }
      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;
      }
    }
  }
});

// ../../../../../setup-pnpm/store/v11/links/@sigstore/core/3.2.1/441efa189a7008d636f6b850e7e3d9de7111770667ddae2c98078216c0d424f2/node_modules/@sigstore/core/dist/dsse.js
var require_dsse = __commonJS({
  "../../../../../setup-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
      ]);
    }
  }
});

// ../../../../../setup-pnpm/store/v11/links/@sigstore/core/3.2.1/441efa189a7008d636f6b850e7e3d9de7111770667ddae2c98078216c0d424f2/node_modules/@sigstore/core/dist/encoding.js
var require_encoding3 = __commonJS({
  "../../../../../setup-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);
    }
  }
});

// ../../../../../setup-pnpm/store/v11/links/@sigstore/core/3.2.1/441efa189a7008d636f6b850e7e3d9de7111770667ddae2c98078216c0d424f2/node_modules/@sigstore/core/dist/json.js
var require_json4 = __commonJS({
  "../../../../../setup-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;
    }
  }
});

// ../../../../../setup-pnpm/store/v11/links/@sigstore/core/3.2.1/441efa189a7008d636f6b850e7e3d9de7111770667ddae2c98078216c0d424f2/node_modules/@sigstore/core/dist/pem.js
var require_pem = __commonJS({
  "../../../../../setup-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");
    }
  }
});

// ../../../../../setup-pnpm/store/v11/links/@sigstore/core/3.2.1/441efa189a7008d636f6b850e7e3d9de7111770667ddae2c98078216c0d424f2/node_modules/@sigstore/core/dist/oid.js
var require_oid = __commonJS({
  "../../../../../setup-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"
    };
  }
});

// ../../../../../setup-pnpm/store/v11/links/@sigstore/core/3.2.1/441efa189a7008d636f6b850e7e3d9de7111770667ddae2c98078216c0d424f2/node_modules/@sigstore/core/dist/rfc3161/error.js
var require_error5 = __commonJS({
  "../../../../../setup-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;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@sigstore/core/3.2.1/441efa189a7008d636f6b850e7e3d9de7111770667ddae2c98078216c0d424f2/node_modules/@sigstore/core/dist/rfc3161/tstinfo.js
var require_tstinfo = __commonJS({
  "../../../../../setup-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(mod2) {
        if (mod2 && mod2.__esModule) return mod2;
        var result2 = {};
        if (mod2 != null) {
          for (var k2 = ownKeys2(mod2), i4 = 0; i4 < k2.length; i4++) if (k2[i4] !== "default") __createBinding2(result2, mod2, k2[i4]);
        }
        __setModuleDefault2(result2, mod2);
        return result2;
      };
    })();
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.TSTInfo = void 0;
    var crypto14 = __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 = crypto14.digest(this.messageImprintHashAlgorithm, data);
        if (!crypto14.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;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@sigstore/core/3.2.1/441efa189a7008d636f6b850e7e3d9de7111770667ddae2c98078216c0d424f2/node_modules/@sigstore/core/dist/rfc3161/timestamp.js
var require_timestamp4 = __commonJS({
  "../../../../../setup-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(mod2) {
        if (mod2 && mod2.__esModule) return mod2;
        var result2 = {};
        if (mod2 != null) {
          for (var k2 = ownKeys2(mod2), i4 = 0; i4 < k2.length; i4++) if (k2[i4] !== "default") __createBinding2(result2, mod2, k2[i4]);
        }
        __setModuleDefault2(result2, mod2);
        return result2;
      };
    })();
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.RFC3161Timestamp = void 0;
    var asn1_1 = require_asn1();
    var crypto14 = __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 = crypto14.digest(this.signerDigestAlgorithm, this.tstInfo.raw);
        const expectedDigest = this.messageDigestAttributeObj.subs[1].subs[0].value;
        if (!crypto14.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 verified2 = crypto14.verify(signedAttrs, key, this.signatureValue, this.signatureAlgorithm);
        if (!verified2) {
          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;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@sigstore/core/3.2.1/441efa189a7008d636f6b850e7e3d9de7111770667ddae2c98078216c0d424f2/node_modules/@sigstore/core/dist/rfc3161/index.js
var require_rfc3161 = __commonJS({
  "../../../../../setup-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;
    } });
  }
});

// ../../../../../setup-pnpm/store/v11/links/@sigstore/core/3.2.1/441efa189a7008d636f6b850e7e3d9de7111770667ddae2c98078216c0d424f2/node_modules/@sigstore/core/dist/x509/sct.js
var require_sct = __commonJS({
  "../../../../../setup-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(mod2) {
        if (mod2 && mod2.__esModule) return mod2;
        var result2 = {};
        if (mod2 != null) {
          for (var k2 = ownKeys2(mod2), i4 = 0; i4 < k2.length; i4++) if (k2[i4] !== "default") __createBinding2(result2, mod2, k2[i4]);
        }
        __setModuleDefault2(result2, mod2);
        return result2;
      };
    })();
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.SignedCertificateTimestamp = void 0;
    var crypto14 = __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 crypto14.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;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@sigstore/core/3.2.1/441efa189a7008d636f6b850e7e3d9de7111770667ddae2c98078216c0d424f2/node_modules/@sigstore/core/dist/x509/ext.js
var require_ext = __commonJS({
  "../../../../../setup-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;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@sigstore/core/3.2.1/441efa189a7008d636f6b850e7e3d9de7111770667ddae2c98078216c0d424f2/node_modules/@sigstore/core/dist/x509/cert.js
var require_cert = __commonJS({
  "../../../../../setup-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(mod2) {
        if (mod2 && mod2.__esModule) return mod2;
        var result2 = {};
        if (mod2 != null) {
          for (var k2 = ownKeys2(mod2), i4 = 0; i4 < k2.length; i4++) if (k2[i4] !== "default") __createBinding2(result2, mod2, k2[i4]);
        }
        __setModuleDefault2(result2, mod2);
        return result2;
      };
    })();
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.X509Certificate = exports2.EXTENSION_OID_SCT = void 0;
    var asn1_1 = require_asn1();
    var crypto14 = __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 = crypto14.createPublicKey(publicKey);
        return crypto14.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 clone4 = Buffer.alloc(der.length);
        der.copy(clone4);
        return _X509Certificate.parse(clone4);
      }
      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;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@sigstore/core/3.2.1/441efa189a7008d636f6b850e7e3d9de7111770667ddae2c98078216c0d424f2/node_modules/@sigstore/core/dist/x509/index.js
var require_x509 = __commonJS({
  "../../../../../setup-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;
    } });
  }
});

// ../../../../../setup-pnpm/store/v11/links/@sigstore/core/3.2.1/441efa189a7008d636f6b850e7e3d9de7111770667ddae2c98078216c0d424f2/node_modules/@sigstore/core/dist/index.js
var require_dist18 = __commonJS({
  "../../../../../setup-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(mod2) {
        if (mod2 && mod2.__esModule) return mod2;
        var result2 = {};
        if (mod2 != null) {
          for (var k2 = ownKeys2(mod2), i4 = 0; i4 < k2.length; i4++) if (k2[i4] !== "default") __createBinding2(result2, mod2, k2[i4]);
        }
        __setModuleDefault2(result2, mod2);
        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;
    } });
  }
});

// ../../../../../setup-pnpm/store/v11/links/@sigstore/sign/4.1.1/0ef571f222842b58e7ddeb02f27ee8e2bcb9e4f565975b6ad92c58ba1041bda8/node_modules/@sigstore/sign/dist/util/oidc.js
var require_oidc = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@sigstore/sign/4.1.1/0ef571f222842b58e7ddeb02f27ee8e2bcb9e4f565975b6ad92c58ba1041bda8/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");
      }
    }
  }
});

// ../../../../../setup-pnpm/store/v11/links/@sigstore/sign/4.1.1/0ef571f222842b58e7ddeb02f27ee8e2bcb9e4f565975b6ad92c58ba1041bda8/node_modules/@sigstore/sign/package.json
var require_package5 = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@sigstore/sign/4.1.1/0ef571f222842b58e7ddeb02f27ee8e2bcb9e4f565975b6ad92c58ba1041bda8/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"
      }
    };
  }
});

// ../../../../../setup-pnpm/store/v11/links/@sigstore/sign/4.1.1/0ef571f222842b58e7ddeb02f27ee8e2bcb9e4f565975b6ad92c58ba1041bda8/node_modules/@sigstore/sign/dist/util/ua.js
var require_ua = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@sigstore/sign/4.1.1/0ef571f222842b58e7ddeb02f27ee8e2bcb9e4f565975b6ad92c58ba1041bda8/node_modules/@sigstore/sign/dist/util/ua.js"(exports2) {
    "use strict";
    var __importDefault2 = exports2 && exports2.__importDefault || function(mod2) {
      return mod2 && mod2.__esModule ? mod2 : { "default": mod2 };
    };
    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;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@sigstore/sign/4.1.1/0ef571f222842b58e7ddeb02f27ee8e2bcb9e4f565975b6ad92c58ba1041bda8/node_modules/@sigstore/sign/dist/util/index.js
var require_util13 = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@sigstore/sign/4.1.1/0ef571f222842b58e7ddeb02f27ee8e2bcb9e4f565975b6ad92c58ba1041bda8/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(mod2) {
        if (mod2 && mod2.__esModule) return mod2;
        var result2 = {};
        if (mod2 != null) {
          for (var k2 = ownKeys2(mod2), i4 = 0; i4 < k2.length; i4++) if (k2[i4] !== "default") __createBinding2(result2, mod2, k2[i4]);
        }
        __setModuleDefault2(result2, mod2);
        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());
  }
});

// ../../../../../setup-pnpm/store/v11/links/@sigstore/sign/4.1.1/0ef571f222842b58e7ddeb02f27ee8e2bcb9e4f565975b6ad92c58ba1041bda8/node_modules/@sigstore/sign/dist/bundler/base.js
var require_base = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@sigstore/sign/4.1.1/0ef571f222842b58e7ddeb02f27ee8e2bcb9e4f565975b6ad92c58ba1041bda8/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;
      }
    }
  }
});

// ../../../../../setup-pnpm/store/v11/links/@sigstore/sign/4.1.1/0ef571f222842b58e7ddeb02f27ee8e2bcb9e4f565975b6ad92c58ba1041bda8/node_modules/@sigstore/sign/dist/bundler/bundle.js
var require_bundle2 = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@sigstore/sign/4.1.1/0ef571f222842b58e7ddeb02f27ee8e2bcb9e4f565975b6ad92c58ba1041bda8/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(mod2) {
        if (mod2 && mod2.__esModule) return mod2;
        var result2 = {};
        if (mod2 != null) {
          for (var k2 = ownKeys2(mod2), i4 = 0; i4 < k2.length; i4++) if (k2[i4] !== "default") __createBinding2(result2, mod2, k2[i4]);
        }
        __setModuleDefault2(result2, mod2);
        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
      });
    }
  }
});

// ../../../../../setup-pnpm/store/v11/links/@sigstore/sign/4.1.1/0ef571f222842b58e7ddeb02f27ee8e2bcb9e4f565975b6ad92c58ba1041bda8/node_modules/@sigstore/sign/dist/bundler/dsse.js
var require_dsse2 = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@sigstore/sign/4.1.1/0ef571f222842b58e7ddeb02f27ee8e2bcb9e4f565975b6ad92c58ba1041bda8/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 ?? ""
      };
    }
  }
});

// ../../../../../setup-pnpm/store/v11/links/@sigstore/sign/4.1.1/0ef571f222842b58e7ddeb02f27ee8e2bcb9e4f565975b6ad92c58ba1041bda8/node_modules/@sigstore/sign/dist/bundler/message.js
var require_message = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@sigstore/sign/4.1.1/0ef571f222842b58e7ddeb02f27ee8e2bcb9e4f565975b6ad92c58ba1041bda8/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;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@sigstore/sign/4.1.1/0ef571f222842b58e7ddeb02f27ee8e2bcb9e4f565975b6ad92c58ba1041bda8/node_modules/@sigstore/sign/dist/bundler/index.js
var require_bundler = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@sigstore/sign/4.1.1/0ef571f222842b58e7ddeb02f27ee8e2bcb9e4f565975b6ad92c58ba1041bda8/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;
    } });
  }
});

// ../../../../../setup-pnpm/store/v11/links/@sigstore/sign/4.1.1/0ef571f222842b58e7ddeb02f27ee8e2bcb9e4f565975b6ad92c58ba1041bda8/node_modules/@sigstore/sign/dist/external/error.js
var require_error6 = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@sigstore/sign/4.1.1/0ef571f222842b58e7ddeb02f27ee8e2bcb9e4f565975b6ad92c58ba1041bda8/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;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@sigstore/sign/4.1.1/0ef571f222842b58e7ddeb02f27ee8e2bcb9e4f565975b6ad92c58ba1041bda8/node_modules/@sigstore/sign/dist/error.js
var require_error7 = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@sigstore/sign/4.1.1/0ef571f222842b58e7ddeb02f27ee8e2bcb9e4f565975b6ad92c58ba1041bda8/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(err2, code, message) {
      if (err2 instanceof error_1.HTTPError) {
        message += ` - ${err2.message}`;
      }
      throw new InternalError({
        code,
        message,
        cause: err2
      });
    }
  }
});

// ../../../../../setup-pnpm/store/v11/links/@sigstore/sign/4.1.1/0ef571f222842b58e7ddeb02f27ee8e2bcb9e4f565975b6ad92c58ba1041bda8/node_modules/@sigstore/sign/dist/external/fetch.js
var require_fetch3 = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@sigstore/sign/4.1.1/0ef571f222842b58e7ddeb02f27ee8e2bcb9e4f565975b6ad92c58ba1041bda8/node_modules/@sigstore/sign/dist/external/fetch.js"(exports2) {
    "use strict";
    var __importDefault2 = exports2 && exports2.__importDefault || function(mod2) {
      return mod2 && mod2.__esModule ? mod2 : { "default": mod2 };
    };
    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_lib15();
    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 method2 = 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: method2,
          headers,
          body: options.body,
          timeout: options.timeout,
          retry: false
          // We're handling retries ourselves
        }).catch((reason) => {
          proc_log_1.log.http("fetch", `${method2} ${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", `${method2} ${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 };
      }
    };
  }
});

// ../../../../../setup-pnpm/store/v11/links/@sigstore/sign/4.1.1/0ef571f222842b58e7ddeb02f27ee8e2bcb9e4f565975b6ad92c58ba1041bda8/node_modules/@sigstore/sign/dist/external/fulcio.js
var require_fulcio = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@sigstore/sign/4.1.1/0ef571f222842b58e7ddeb02f27ee8e2bcb9e4f565975b6ad92c58ba1041bda8/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;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@sigstore/sign/4.1.1/0ef571f222842b58e7ddeb02f27ee8e2bcb9e4f565975b6ad92c58ba1041bda8/node_modules/@sigstore/sign/dist/signer/fulcio/ca.js
var require_ca = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@sigstore/sign/4.1.1/0ef571f222842b58e7ddeb02f27ee8e2bcb9e4f565975b6ad92c58ba1041bda8/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 (err2) {
          (0, error_1.internalError)(err2, "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")
        }
      };
    }
  }
});

// ../../../../../setup-pnpm/store/v11/links/@sigstore/sign/4.1.1/0ef571f222842b58e7ddeb02f27ee8e2bcb9e4f565975b6ad92c58ba1041bda8/node_modules/@sigstore/sign/dist/signer/fulcio/ephemeral.js
var require_ephemeral = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@sigstore/sign/4.1.1/0ef571f222842b58e7ddeb02f27ee8e2bcb9e4f565975b6ad92c58ba1041bda8/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;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@sigstore/sign/4.1.1/0ef571f222842b58e7ddeb02f27ee8e2bcb9e4f565975b6ad92c58ba1041bda8/node_modules/@sigstore/sign/dist/signer/fulcio/index.js
var require_fulcio2 = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@sigstore/sign/4.1.1/0ef571f222842b58e7ddeb02f27ee8e2bcb9e4f565975b6ad92c58ba1041bda8/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 (err2) {
          throw new error_1.InternalError({
            code: "IDENTITY_TOKEN_PARSE_ERROR",
            message: `invalid identity token: ${identityToken}`,
            cause: err2
          });
        }
        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 (err2) {
          throw new error_1.InternalError({
            code: "IDENTITY_TOKEN_READ_ERROR",
            message: "error retrieving identity token",
            cause: err2
          });
        }
      }
    };
    exports2.FulcioSigner = FulcioSigner;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@sigstore/sign/4.1.1/0ef571f222842b58e7ddeb02f27ee8e2bcb9e4f565975b6ad92c58ba1041bda8/node_modules/@sigstore/sign/dist/signer/index.js
var require_signer = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@sigstore/sign/4.1.1/0ef571f222842b58e7ddeb02f27ee8e2bcb9e4f565975b6ad92c58ba1041bda8/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;
    } });
  }
});

// ../../../../../setup-pnpm/store/v11/links/@sigstore/sign/4.1.1/0ef571f222842b58e7ddeb02f27ee8e2bcb9e4f565975b6ad92c58ba1041bda8/node_modules/@sigstore/sign/dist/external/rekor.js
var require_rekor = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@sigstore/sign/4.1.1/0ef571f222842b58e7ddeb02f27ee8e2bcb9e4f565975b6ad92c58ba1041bda8/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
      };
    }
  }
});

// ../../../../../setup-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({
  "../../../../../setup-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;
    }
  }
});

// ../../../../../setup-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({
  "../../../../../setup-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;
    }
  }
});

// ../../../../../setup-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({
  "../../../../../setup-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;
    }
  }
});

// ../../../../../setup-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({
  "../../../../../setup-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;
    }
  }
});

// ../../../../../setup-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({
  "../../../../../setup-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);
  }
});

// ../../../../../setup-pnpm/store/v11/links/@sigstore/sign/4.1.1/0ef571f222842b58e7ddeb02f27ee8e2bcb9e4f565975b6ad92c58ba1041bda8/node_modules/@sigstore/sign/dist/external/rekor-v2.js
var require_rekor_v2 = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@sigstore/sign/4.1.1/0ef571f222842b58e7ddeb02f27ee8e2bcb9e4f565975b6ad92c58ba1041bda8/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;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@sigstore/sign/4.1.1/0ef571f222842b58e7ddeb02f27ee8e2bcb9e4f565975b6ad92c58ba1041bda8/node_modules/@sigstore/sign/dist/witness/tlog/client.js
var require_client2 = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@sigstore/sign/4.1.1/0ef571f222842b58e7ddeb02f27ee8e2bcb9e4f565975b6ad92c58ba1041bda8/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 (err2) {
          if (entryExistsError(err2) && this.fetchOnConflict) {
            const uuid = err2.location.split("/").pop() || "";
            try {
              entry = await this.rekor.getEntry(uuid);
            } catch (err3) {
              (0, error_1.internalError)(err3, "TLOG_FETCH_ENTRY_ERROR", "error fetching tlog entry");
            }
          } else {
            (0, error_1.internalError)(err2, "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 (err2) {
          (0, error_1.internalError)(err2, "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;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@sigstore/sign/4.1.1/0ef571f222842b58e7ddeb02f27ee8e2bcb9e4f565975b6ad92c58ba1041bda8/node_modules/@sigstore/sign/dist/witness/tlog/entry.js
var require_entry6 = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@sigstore/sign/4.1.1/0ef571f222842b58e7ddeb02f27ee8e2bcb9e4f565975b6ad92c58ba1041bda8/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)
                  }
                }
              }
            }
          }
        }
      };
    }
  }
});

// ../../../../../setup-pnpm/store/v11/links/@sigstore/sign/4.1.1/0ef571f222842b58e7ddeb02f27ee8e2bcb9e4f565975b6ad92c58ba1041bda8/node_modules/@sigstore/sign/dist/witness/tlog/index.js
var require_tlog = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@sigstore/sign/4.1.1/0ef571f222842b58e7ddeb02f27ee8e2bcb9e4f565975b6ad92c58ba1041bda8/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
        }
      };
    }
  }
});

// ../../../../../setup-pnpm/store/v11/links/@sigstore/sign/4.1.1/0ef571f222842b58e7ddeb02f27ee8e2bcb9e4f565975b6ad92c58ba1041bda8/node_modules/@sigstore/sign/dist/external/tsa.js
var require_tsa = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@sigstore/sign/4.1.1/0ef571f222842b58e7ddeb02f27ee8e2bcb9e4f565975b6ad92c58ba1041bda8/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;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@sigstore/sign/4.1.1/0ef571f222842b58e7ddeb02f27ee8e2bcb9e4f565975b6ad92c58ba1041bda8/node_modules/@sigstore/sign/dist/witness/tsa/client.js
var require_client3 = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@sigstore/sign/4.1.1/0ef571f222842b58e7ddeb02f27ee8e2bcb9e4f565975b6ad92c58ba1041bda8/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 (err2) {
          (0, error_1.internalError)(err2, "TSA_CREATE_TIMESTAMP_ERROR", "error creating timestamp");
        }
      }
    };
    exports2.TSAClient = TSAClient;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@sigstore/sign/4.1.1/0ef571f222842b58e7ddeb02f27ee8e2bcb9e4f565975b6ad92c58ba1041bda8/node_modules/@sigstore/sign/dist/witness/tsa/index.js
var require_tsa2 = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@sigstore/sign/4.1.1/0ef571f222842b58e7ddeb02f27ee8e2bcb9e4f565975b6ad92c58ba1041bda8/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;
      }
    }
  }
});

// ../../../../../setup-pnpm/store/v11/links/@sigstore/sign/4.1.1/0ef571f222842b58e7ddeb02f27ee8e2bcb9e4f565975b6ad92c58ba1041bda8/node_modules/@sigstore/sign/dist/witness/index.js
var require_witness = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@sigstore/sign/4.1.1/0ef571f222842b58e7ddeb02f27ee8e2bcb9e4f565975b6ad92c58ba1041bda8/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;
    } });
  }
});

// ../../../../../setup-pnpm/store/v11/links/@sigstore/sign/4.1.1/0ef571f222842b58e7ddeb02f27ee8e2bcb9e4f565975b6ad92c58ba1041bda8/node_modules/@sigstore/sign/dist/config.js
var require_config = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@sigstore/sign/4.1.1/0ef571f222842b58e7ddeb02f27ee8e2bcb9e4f565975b6ad92c58ba1041bda8/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;
      });
    }
  }
});

// ../../../../../setup-pnpm/store/v11/links/@sigstore/sign/4.1.1/0ef571f222842b58e7ddeb02f27ee8e2bcb9e4f565975b6ad92c58ba1041bda8/node_modules/@sigstore/sign/dist/identity/ci.js
var require_ci = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@sigstore/sign/4.1.1/0ef571f222842b58e7ddeb02f27ee8e2bcb9e4f565975b6ad92c58ba1041bda8/node_modules/@sigstore/sign/dist/identity/ci.js"(exports2) {
    "use strict";
    var __importDefault2 = exports2 && exports2.__importDefault || function(mod2) {
      return mod2 && mod2.__esModule ? mod2 : { "default": mod2 };
    };
    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;
    }
  }
});

// ../../../../../setup-pnpm/store/v11/links/@sigstore/sign/4.1.1/0ef571f222842b58e7ddeb02f27ee8e2bcb9e4f565975b6ad92c58ba1041bda8/node_modules/@sigstore/sign/dist/identity/index.js
var require_identity4 = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@sigstore/sign/4.1.1/0ef571f222842b58e7ddeb02f27ee8e2bcb9e4f565975b6ad92c58ba1041bda8/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;
    } });
  }
});

// ../../../../../setup-pnpm/store/v11/links/@sigstore/sign/4.1.1/0ef571f222842b58e7ddeb02f27ee8e2bcb9e4f565975b6ad92c58ba1041bda8/node_modules/@sigstore/sign/dist/index.js
var require_dist19 = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@sigstore/sign/4.1.1/0ef571f222842b58e7ddeb02f27ee8e2bcb9e4f565975b6ad92c58ba1041bda8/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;
    } });
  }
});

// ../../../../../setup-pnpm/store/v11/links/@sigstore/tuf/4.0.2/9effbcee759ac53e5d687d72281501d3e7c7e1902c26ba59c11dd0537358a60b/node_modules/@sigstore/tuf/dist/appdata.js
var require_appdata = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@sigstore/tuf/4.0.2/9effbcee759ac53e5d687d72281501d3e7c7e1902c26ba59c11dd0537358a60b/node_modules/@sigstore/tuf/dist/appdata.js"(exports2) {
    "use strict";
    var __importDefault2 = exports2 && exports2.__importDefault || function(mod2) {
      return mod2 && mod2.__esModule ? mod2 : { "default": mod2 };
    };
    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);
        }
      }
    }
  }
});

// ../../../../../setup-pnpm/store/v11/links/@tufjs/models/4.1.0/62b86a473cc0746abcf353464560be24d1c033d9c0caf55898a12fab7a56425f/node_modules/@tufjs/models/dist/error.js
var require_error8 = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@tufjs/models/4.1.0/62b86a473cc0746abcf353464560be24d1c033d9c0caf55898a12fab7a56425f/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;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@tufjs/models/4.1.0/62b86a473cc0746abcf353464560be24d1c033d9c0caf55898a12fab7a56425f/node_modules/@tufjs/models/dist/utils/guard.js
var require_guard = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@tufjs/models/4.1.0/62b86a473cc0746abcf353464560be24d1c033d9c0caf55898a12fab7a56425f/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);
    }
  }
});

// ../../../../../setup-pnpm/store/v11/links/@tufjs/canonical-json/2.0.0/27344e66362d43bb876bf64304daa199776c6164d2a615b413ca845bce0e5b99/node_modules/@tufjs/canonical-json/lib/index.js
var require_lib46 = __commonJS({
  "../../../../../setup-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
    };
  }
});

// ../../../../../setup-pnpm/store/v11/links/@tufjs/models/4.1.0/62b86a473cc0746abcf353464560be24d1c033d9c0caf55898a12fab7a56425f/node_modules/@tufjs/models/dist/utils/verify.js
var require_verify2 = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@tufjs/models/4.1.0/62b86a473cc0746abcf353464560be24d1c033d9c0caf55898a12fab7a56425f/node_modules/@tufjs/models/dist/utils/verify.js"(exports2) {
    "use strict";
    var __importDefault2 = exports2 && exports2.__importDefault || function(mod2) {
      return mod2 && mod2.__esModule ? mod2 : { "default": mod2 };
    };
    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;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@tufjs/models/4.1.0/62b86a473cc0746abcf353464560be24d1c033d9c0caf55898a12fab7a56425f/node_modules/@tufjs/models/dist/utils/index.js
var require_utils20 = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@tufjs/models/4.1.0/62b86a473cc0746abcf353464560be24d1c033d9c0caf55898a12fab7a56425f/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(mod2) {
        if (mod2 && mod2.__esModule) return mod2;
        var result2 = {};
        if (mod2 != null) {
          for (var k2 = ownKeys2(mod2), i4 = 0; i4 < k2.length; i4++) if (k2[i4] !== "default") __createBinding2(result2, mod2, k2[i4]);
        }
        __setModuleDefault2(result2, mod2);
        return result2;
      };
    })();
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.crypto = exports2.guard = void 0;
    exports2.guard = __importStar2(require_guard());
    exports2.crypto = __importStar2(require_verify2());
  }
});

// ../../../../../setup-pnpm/store/v11/links/@tufjs/models/4.1.0/62b86a473cc0746abcf353464560be24d1c033d9c0caf55898a12fab7a56425f/node_modules/@tufjs/models/dist/base.js
var require_base2 = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@tufjs/models/4.1.0/62b86a473cc0746abcf353464560be24d1c033d9c0caf55898a12fab7a56425f/node_modules/@tufjs/models/dist/base.js"(exports2) {
    "use strict";
    var __importDefault2 = exports2 && exports2.__importDefault || function(mod2) {
      return mod2 && mod2.__esModule ? mod2 : { "default": mod2 };
    };
    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));
    }
  }
});

// ../../../../../setup-pnpm/store/v11/links/@tufjs/models/4.1.0/62b86a473cc0746abcf353464560be24d1c033d9c0caf55898a12fab7a56425f/node_modules/@tufjs/models/dist/file.js
var require_file3 = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@tufjs/models/4.1.0/62b86a473cc0746abcf353464560be24d1c033d9c0caf55898a12fab7a56425f/node_modules/@tufjs/models/dist/file.js"(exports2) {
    "use strict";
    var __importDefault2 = exports2 && exports2.__importDefault || function(mod2) {
      return mod2 && mod2.__esModule ? mod2 : { "default": mod2 };
    };
    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(opts3) {
        if (opts3.version <= 0) {
          throw new error_1.ValueError("Metafile version must be at least 1");
        }
        if (opts3.length !== void 0) {
          validateLength(opts3.length);
        }
        this.version = opts3.version;
        this.length = opts3.length;
        this.hashes = opts3.hashes;
        this.unrecognizedFields = opts3.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(opts3) {
        validateLength(opts3.length);
        this.length = opts3.length;
        this.path = opts3.path;
        this.hashes = opts3.hashes;
        this.unrecognizedFields = opts3.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(path240, 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: path240,
          hashes,
          unrecognizedFields: rest
        });
      }
    };
    exports2.TargetFile = TargetFile;
    function validateLength(length) {
      if (length < 0) {
        throw new error_1.ValueError("Length must be at least 0");
      }
    }
  }
});

// ../../../../../setup-pnpm/store/v11/links/@tufjs/models/4.1.0/62b86a473cc0746abcf353464560be24d1c033d9c0caf55898a12fab7a56425f/node_modules/@tufjs/models/dist/utils/oid.js
var require_oid2 = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@tufjs/models/4.1.0/62b86a473cc0746abcf353464560be24d1c033d9c0caf55898a12fab7a56425f/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;
    }
  }
});

// ../../../../../setup-pnpm/store/v11/links/@tufjs/models/4.1.0/62b86a473cc0746abcf353464560be24d1c033d9c0caf55898a12fab7a56425f/node_modules/@tufjs/models/dist/utils/key.js
var require_key2 = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@tufjs/models/4.1.0/62b86a473cc0746abcf353464560be24d1c033d9c0caf55898a12fab7a56425f/node_modules/@tufjs/models/dist/utils/key.js"(exports2) {
    "use strict";
    var __importDefault2 = exports2 && exports2.__importDefault || function(mod2) {
      return mod2 && mod2.__esModule ? mod2 : { "default": mod2 };
    };
    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: ecdsa2.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 ecdsa2 = {
      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);
  }
});

// ../../../../../setup-pnpm/store/v11/links/@tufjs/models/4.1.0/62b86a473cc0746abcf353464560be24d1c033d9c0caf55898a12fab7a56425f/node_modules/@tufjs/models/dist/key.js
var require_key3 = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@tufjs/models/4.1.0/62b86a473cc0746abcf353464560be24d1c033d9c0caf55898a12fab7a56425f/node_modules/@tufjs/models/dist/key.js"(exports2) {
    "use strict";
    var __importDefault2 = exports2 && exports2.__importDefault || function(mod2) {
      return mod2 && mod2.__esModule ? mod2 : { "default": mod2 };
    };
    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 Key2 = 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 = Key2;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@tufjs/models/4.1.0/62b86a473cc0746abcf353464560be24d1c033d9c0caf55898a12fab7a56425f/node_modules/@tufjs/models/dist/role.js
var require_role = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@tufjs/models/4.1.0/62b86a473cc0746abcf353464560be24d1c033d9c0caf55898a12fab7a56425f/node_modules/@tufjs/models/dist/role.js"(exports2) {
    "use strict";
    var __importDefault2 = exports2 && exports2.__importDefault || function(mod2) {
      return mod2 && mod2.__esModule ? mod2 : { "default": mod2 };
    };
    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_commonjs3();
    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(opts3) {
        super(opts3);
        const { name, terminating, paths: paths3, pathHashPrefixes } = opts3;
        this.name = name;
        this.terminating = terminating;
        if (opts3.paths && opts3.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, i4) => [k2, b[i4]]);
    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(opts3) {
        super(opts3);
        const { bitLength: bitLength2, namePrefix } = opts3;
        if (bitLength2 <= 0 || bitLength2 > 32) {
          throw new error_1.ValueError("bitLength must be between 1 and 32");
        }
        this.bitLength = bitLength2;
        this.namePrefix = namePrefix;
        this.numberOfBins = Math.pow(2, bitLength2);
        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 i4 = 0; i4 < this.numberOfBins; i4++) {
          const suffix = i4.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;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@tufjs/models/4.1.0/62b86a473cc0746abcf353464560be24d1c033d9c0caf55898a12fab7a56425f/node_modules/@tufjs/models/dist/root.js
var require_root = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@tufjs/models/4.1.0/62b86a473cc0746abcf353464560be24d1c033d9c0caf55898a12fab7a56425f/node_modules/@tufjs/models/dist/root.js"(exports2) {
    "use strict";
    var __importDefault2 = exports2 && exports2.__importDefault || function(mod2) {
      return mod2 && mod2.__esModule ? mod2 : { "default": mod2 };
    };
    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;
    }
  }
});

// ../../../../../setup-pnpm/store/v11/links/@tufjs/models/4.1.0/62b86a473cc0746abcf353464560be24d1c033d9c0caf55898a12fab7a56425f/node_modules/@tufjs/models/dist/signature.js
var require_signature = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@tufjs/models/4.1.0/62b86a473cc0746abcf353464560be24d1c033d9c0caf55898a12fab7a56425f/node_modules/@tufjs/models/dist/signature.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.Signature = void 0;
    var Signature2 = 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 = Signature2;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@tufjs/models/4.1.0/62b86a473cc0746abcf353464560be24d1c033d9c0caf55898a12fab7a56425f/node_modules/@tufjs/models/dist/snapshot.js
var require_snapshot = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@tufjs/models/4.1.0/62b86a473cc0746abcf353464560be24d1c033d9c0caf55898a12fab7a56425f/node_modules/@tufjs/models/dist/snapshot.js"(exports2) {
    "use strict";
    var __importDefault2 = exports2 && exports2.__importDefault || function(mod2) {
      return mod2 && mod2.__esModule ? mod2 : { "default": mod2 };
    };
    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(opts3) {
        super(opts3);
        this.meta = opts3.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, [path240, metadata]) => ({
        ...acc,
        [path240]: 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, [path240, metadata]) => ({
            ...acc,
            [path240]: file_1.MetaFile.fromJSON(metadata)
          }), {});
        }
      }
      return meta;
    }
  }
});

// ../../../../../setup-pnpm/store/v11/links/@tufjs/models/4.1.0/62b86a473cc0746abcf353464560be24d1c033d9c0caf55898a12fab7a56425f/node_modules/@tufjs/models/dist/delegations.js
var require_delegations = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@tufjs/models/4.1.0/62b86a473cc0746abcf353464560be24d1c033d9c0caf55898a12fab7a56425f/node_modules/@tufjs/models/dist/delegations.js"(exports2) {
    "use strict";
    var __importDefault2 = exports2 && exports2.__importDefault || function(mod2) {
      return mod2 && mod2.__esModule ? mod2 : { "default": mod2 };
    };
    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;
    }
  }
});

// ../../../../../setup-pnpm/store/v11/links/@tufjs/models/4.1.0/62b86a473cc0746abcf353464560be24d1c033d9c0caf55898a12fab7a56425f/node_modules/@tufjs/models/dist/targets.js
var require_targets = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@tufjs/models/4.1.0/62b86a473cc0746abcf353464560be24d1c033d9c0caf55898a12fab7a56425f/node_modules/@tufjs/models/dist/targets.js"(exports2) {
    "use strict";
    var __importDefault2 = exports2 && exports2.__importDefault || function(mod2) {
      return mod2 && mod2.__esModule ? mod2 : { "default": mod2 };
    };
    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, [path240, target2]) => ({
        ...acc,
        [path240]: 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, [path240, target2]) => ({
            ...acc,
            [path240]: file_1.TargetFile.fromJSON(path240, 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;
    }
  }
});

// ../../../../../setup-pnpm/store/v11/links/@tufjs/models/4.1.0/62b86a473cc0746abcf353464560be24d1c033d9c0caf55898a12fab7a56425f/node_modules/@tufjs/models/dist/timestamp.js
var require_timestamp5 = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@tufjs/models/4.1.0/62b86a473cc0746abcf353464560be24d1c033d9c0caf55898a12fab7a56425f/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;
    }
  }
});

// ../../../../../setup-pnpm/store/v11/links/@tufjs/models/4.1.0/62b86a473cc0746abcf353464560be24d1c033d9c0caf55898a12fab7a56425f/node_modules/@tufjs/models/dist/metadata.js
var require_metadata = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@tufjs/models/4.1.0/62b86a473cc0746abcf353464560be24d1c033d9c0caf55898a12fab7a56425f/node_modules/@tufjs/models/dist/metadata.js"(exports2) {
    "use strict";
    var __importDefault2 = exports2 && exports2.__importDefault || function(mod2) {
      return mod2 && mod2.__esModule ? mod2 : { "default": mod2 };
    };
    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;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@tufjs/models/4.1.0/62b86a473cc0746abcf353464560be24d1c033d9c0caf55898a12fab7a56425f/node_modules/@tufjs/models/dist/index.js
var require_dist20 = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@tufjs/models/4.1.0/62b86a473cc0746abcf353464560be24d1c033d9c0caf55898a12fab7a56425f/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;
    } });
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/tuf-js/4.1.0/40ce1fd231cea3b912b9e6c0f4bdb866a93bcae3b5cb9f3a92174286eda0cdfb/node_modules/tuf-js/dist/error.js
var require_error9 = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/tuf-js/4.1.0/40ce1fd231cea3b912b9e6c0f4bdb866a93bcae3b5cb9f3a92174286eda0cdfb/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;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/tuf-js/4.1.0/40ce1fd231cea3b912b9e6c0f4bdb866a93bcae3b5cb9f3a92174286eda0cdfb/node_modules/tuf-js/dist/utils/tmpfile.js
var require_tmpfile = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/tuf-js/4.1.0/40ce1fd231cea3b912b9e6c0f4bdb866a93bcae3b5cb9f3a92174286eda0cdfb/node_modules/tuf-js/dist/utils/tmpfile.js"(exports2) {
    "use strict";
    var __importDefault2 = exports2 && exports2.__importDefault || function(mod2) {
      return mod2 && mod2.__esModule ? mod2 : { "default": mod2 };
    };
    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 (handler83) => withTempDir(async (dir) => handler83(path_1.default.join(dir, "tempfile")));
    exports2.withTempFile = withTempFile;
    var withTempDir = async (handler83) => {
      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 handler83(dir);
      } finally {
        await promises_1.default.rm(dir, { force: true, recursive: true, maxRetries: 3 });
      }
    };
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/tuf-js/4.1.0/40ce1fd231cea3b912b9e6c0f4bdb866a93bcae3b5cb9f3a92174286eda0cdfb/node_modules/tuf-js/dist/fetcher.js
var require_fetcher = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/tuf-js/4.1.0/40ce1fd231cea3b912b9e6c0f4bdb866a93bcae3b5cb9f3a92174286eda0cdfb/node_modules/tuf-js/dist/fetcher.js"(exports2) {
    "use strict";
    var __importDefault2 = exports2 && exports2.__importDefault || function(mod2) {
      return mod2 && mod2.__esModule ? mod2 : { "default": mod2 };
    };
    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, handler83) {
        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 handler83(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((resolve4, reject3) => {
        stream2.write(buffer3, (err2) => {
          if (err2) {
            reject3(err2);
          }
          resolve4(true);
        });
      });
    };
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/tuf-js/4.1.0/40ce1fd231cea3b912b9e6c0f4bdb866a93bcae3b5cb9f3a92174286eda0cdfb/node_modules/tuf-js/package.json
var require_package6 = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/tuf-js/4.1.0/40ce1fd231cea3b912b9e6c0f4bdb866a93bcae3b5cb9f3a92174286eda0cdfb/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"
      }
    };
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/tuf-js/4.1.0/40ce1fd231cea3b912b9e6c0f4bdb866a93bcae3b5cb9f3a92174286eda0cdfb/node_modules/tuf-js/dist/config.js
var require_config2 = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/tuf-js/4.1.0/40ce1fd231cea3b912b9e6c0f4bdb866a93bcae3b5cb9f3a92174286eda0cdfb/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: ""
    };
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/tuf-js/4.1.0/40ce1fd231cea3b912b9e6c0f4bdb866a93bcae3b5cb9f3a92174286eda0cdfb/node_modules/tuf-js/dist/store.js
var require_store = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/tuf-js/4.1.0/40ce1fd231cea3b912b9e6c0f4bdb866a93bcae3b5cb9f3a92174286eda0cdfb/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;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/tuf-js/4.1.0/40ce1fd231cea3b912b9e6c0f4bdb866a93bcae3b5cb9f3a92174286eda0cdfb/node_modules/tuf-js/dist/utils/url.js
var require_url = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/tuf-js/4.1.0/40ce1fd231cea3b912b9e6c0f4bdb866a93bcae3b5cb9f3a92174286eda0cdfb/node_modules/tuf-js/dist/utils/url.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.join = join5;
    var url_1 = __require("url");
    function join5(base, path240) {
      return new url_1.URL(ensureTrailingSlash(base) + removeLeadingSlash(path240)).toString();
    }
    function ensureTrailingSlash(path240) {
      return path240.endsWith("/") ? path240 : path240 + "/";
    }
    function removeLeadingSlash(path240) {
      return path240.startsWith("/") ? path240.slice(1) : path240;
    }
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/tuf-js/4.1.0/40ce1fd231cea3b912b9e6c0f4bdb866a93bcae3b5cb9f3a92174286eda0cdfb/node_modules/tuf-js/dist/updater.js
var require_updater = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/tuf-js/4.1.0/40ce1fd231cea3b912b9e6c0f4bdb866a93bcae3b5cb9f3a92174286eda0cdfb/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(mod2) {
        if (mod2 && mod2.__esModule) return mod2;
        var result2 = {};
        if (mod2 != null) {
          for (var k2 = ownKeys2(mod2), i4 = 0; i4 < k2.length; i4++) if (k2[i4] !== "default") __createBinding2(result2, mod2, k2[i4]);
        }
        __setModuleDefault2(result2, mod2);
        return result2;
      };
    })();
    var __importDefault2 = exports2 && exports2.__importDefault || function(mod2) {
      return mod2 && mod2.__esModule ? mod2 : { "default": mod2 };
    };
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.Updater = void 0;
    var models_1 = require_dist20();
    var debug_1 = __importDefault2(require_src3());
    var fs131 = __importStar2(__require("fs"));
    var path240 = __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: config2 } = 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, ...config2 };
        const userAgent = config2?.userAgent ? `${config2.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 } = path240.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(fs131.createReadStream(fileName));
          log3("WRITE %s", targetPath);
          fs131.copyFileSync(fileName, targetPath);
        });
        return targetPath;
      }
      async findCachedTarget(targetInfo, filePath) {
        if (!filePath) {
          filePath = this.generateTargetPath(targetInfo);
        }
        try {
          if (fs131.existsSync(filePath)) {
            await targetInfo.verify(fs131.createReadStream(filePath));
            return filePath;
          }
        } catch (error) {
          return;
        }
        return;
      }
      loadLocalMetadata(fileName) {
        const filePath = path240.join(this.dir, `${fileName}.json`);
        log3("READ %s", filePath);
        return fs131.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 path240.join(this.targetDir, filePath);
      }
      persistMetadata(metaDataName, bytesData) {
        const encodedName = encodeURIComponent(metaDataName);
        try {
          const filePath = path240.join(this.dir, `${encodedName}.json`);
          log3("WRITE %s", filePath);
          fs131.writeFileSync(filePath, bytesData.toString("utf8"));
        } catch (error) {
          throw new error_1.PersistError(`Failed to persist metadata ${encodedName} error: ${error}`);
        }
      }
    };
    exports2.Updater = Updater;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/tuf-js/4.1.0/40ce1fd231cea3b912b9e6c0f4bdb866a93bcae3b5cb9f3a92174286eda0cdfb/node_modules/tuf-js/dist/index.js
var require_dist21 = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/tuf-js/4.1.0/40ce1fd231cea3b912b9e6c0f4bdb866a93bcae3b5cb9f3a92174286eda0cdfb/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;
    } });
  }
});

// ../../../../../setup-pnpm/store/v11/links/@sigstore/tuf/4.0.2/9effbcee759ac53e5d687d72281501d3e7c7e1902c26ba59c11dd0537358a60b/node_modules/@sigstore/tuf/package.json
var require_package7 = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@sigstore/tuf/4.0.2/9effbcee759ac53e5d687d72281501d3e7c7e1902c26ba59c11dd0537358a60b/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"
      }
    };
  }
});

// ../../../../../setup-pnpm/store/v11/links/@sigstore/tuf/4.0.2/9effbcee759ac53e5d687d72281501d3e7c7e1902c26ba59c11dd0537358a60b/node_modules/@sigstore/tuf/dist/error.js
var require_error10 = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@sigstore/tuf/4.0.2/9effbcee759ac53e5d687d72281501d3e7c7e1902c26ba59c11dd0537358a60b/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;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@sigstore/tuf/4.0.2/9effbcee759ac53e5d687d72281501d3e7c7e1902c26ba59c11dd0537358a60b/node_modules/@sigstore/tuf/dist/target.js
var require_target = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@sigstore/tuf/4.0.2/9effbcee759ac53e5d687d72281501d3e7c7e1902c26ba59c11dd0537358a60b/node_modules/@sigstore/tuf/dist/target.js"(exports2) {
    "use strict";
    var __importDefault2 = exports2 && exports2.__importDefault || function(mod2) {
      return mod2 && mod2.__esModule ? mod2 : { "default": mod2 };
    };
    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 path240 = await getTargetPath(tuf, targetPath);
      return new Promise((resolve4, reject3) => {
        fs_1.default.readFile(path240, "utf-8", (err2, data) => {
          if (err2) {
            reject3(new error_1.TUFError({
              code: "TUF_READ_TARGET_ERROR",
              message: `error reading target ${path240}`,
              cause: err2
            }));
          } else {
            resolve4(data);
          }
        });
      });
    }
    async function getTargetPath(tuf, target2) {
      let targetInfo;
      try {
        targetInfo = await tuf.getTargetInfo(target2);
      } catch (err2) {
        throw new error_1.TUFError({
          code: "TUF_REFRESH_METADATA_ERROR",
          message: "error refreshing TUF metadata",
          cause: err2
        });
      }
      if (!targetInfo) {
        throw new error_1.TUFError({
          code: "TUF_FIND_TARGET_ERROR",
          message: `target ${target2} not found`
        });
      }
      let path240 = await tuf.findCachedTarget(targetInfo);
      if (!path240) {
        try {
          path240 = await tuf.downloadTarget(targetInfo);
        } catch (err2) {
          throw new error_1.TUFError({
            code: "TUF_DOWNLOAD_TARGET_ERROR",
            message: `error downloading target ${path240}`,
            cause: err2
          });
        }
      }
      return path240;
    }
  }
});

// ../../../../../setup-pnpm/store/v11/links/@sigstore/tuf/4.0.2/9effbcee759ac53e5d687d72281501d3e7c7e1902c26ba59c11dd0537358a60b/node_modules/@sigstore/tuf/seeds.json
var require_seeds = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@sigstore/tuf/4.0.2/9effbcee759ac53e5d687d72281501d3e7c7e1902c26ba59c11dd0537358a60b/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" } } };
  }
});

// ../../../../../setup-pnpm/store/v11/links/@sigstore/tuf/4.0.2/9effbcee759ac53e5d687d72281501d3e7c7e1902c26ba59c11dd0537358a60b/node_modules/@sigstore/tuf/dist/client.js
var require_client4 = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@sigstore/tuf/4.0.2/9effbcee759ac53e5d687d72281501d3e7c7e1902c26ba59c11dd0537358a60b/node_modules/@sigstore/tuf/dist/client.js"(exports2) {
    "use strict";
    var __importDefault2 = exports2 && exports2.__importDefault || function(mod2) {
      return mod2 && mod2.__esModule ? mod2 : { "default": mod2 };
    };
    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 config2 = {
        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: config2
      });
    }
  }
});

// ../../../../../setup-pnpm/store/v11/links/@sigstore/tuf/4.0.2/9effbcee759ac53e5d687d72281501d3e7c7e1902c26ba59c11dd0537358a60b/node_modules/@sigstore/tuf/dist/index.js
var require_dist22 = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@sigstore/tuf/4.0.2/9effbcee759ac53e5d687d72281501d3e7c7e1902c26ba59c11dd0537358a60b/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;
    } });
  }
});

// ../../../../../setup-pnpm/store/v11/links/@sigstore/verify/3.1.1/ce0e275549b73ca68b8bdb9af5dc20789b055afb7e41385b570830c4d28ea188/node_modules/@sigstore/verify/dist/bundle/dsse.js
var require_dsse4 = __commonJS({
  "../../../../../setup-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(env4) {
        this.env = env4;
      }
      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;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@sigstore/verify/3.1.1/ce0e275549b73ca68b8bdb9af5dc20789b055afb7e41385b570830c4d28ea188/node_modules/@sigstore/verify/dist/bundle/message.js
var require_message2 = __commonJS({
  "../../../../../setup-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;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@sigstore/verify/3.1.1/ce0e275549b73ca68b8bdb9af5dc20789b055afb7e41385b570830c4d28ea188/node_modules/@sigstore/verify/dist/bundle/index.js
var require_bundle3 = __commonJS({
  "../../../../../setup-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))
          };
      }
    }
  }
});

// ../../../../../setup-pnpm/store/v11/links/@sigstore/verify/3.1.1/ce0e275549b73ca68b8bdb9af5dc20789b055afb7e41385b570830c4d28ea188/node_modules/@sigstore/verify/dist/error.js
var require_error11 = __commonJS({
  "../../../../../setup-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;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@sigstore/verify/3.1.1/ce0e275549b73ca68b8bdb9af5dc20789b055afb7e41385b570830c4d28ea188/node_modules/@sigstore/verify/dist/trust/filter.js
var require_filter2 = __commonJS({
  "../../../../../setup-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;
      });
    }
  }
});

// ../../../../../setup-pnpm/store/v11/links/@sigstore/verify/3.1.1/ce0e275549b73ca68b8bdb9af5dc20789b055afb7e41385b570830c4d28ea188/node_modules/@sigstore/verify/dist/trust/index.js
var require_trust = __commonJS({
  "../../../../../setup-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;
          }
        };
      };
    }
  }
});

// ../../../../../setup-pnpm/store/v11/links/@sigstore/verify/3.1.1/ce0e275549b73ca68b8bdb9af5dc20789b055afb7e41385b570830c4d28ea188/node_modules/@sigstore/verify/dist/key/certificate.js
var require_certificate = __commonJS({
  "../../../../../setup-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 (err2) {
          error = err2;
        }
      }
      throw new error_1.VerificationError({
        code: "CERTIFICATE_ERROR",
        message: "Failed to verify certificate chain",
        cause: error
      });
    }
    var CertificateChainVerifier = class {
      untrustedCert;
      trustedCerts;
      localCerts;
      timestamp;
      constructor(opts3) {
        this.untrustedCert = opts3.untrustedCert;
        this.trustedCerts = opts3.trustedCerts;
        this.localCerts = dedupeCertificates([
          ...opts3.trustedCerts,
          opts3.untrustedCert
        ]);
        this.timestamp = opts3.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((path241) => path241.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 path240 = paths3.reduce((prev, curr) => prev.length < curr.length ? prev : curr);
        return [leafCert, ...path240].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 i4 = 0; i4 < issuers.length; i4++) {
          const issuer = issuers[i4];
          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(path240) {
        if (path240.length < 1) {
          throw new error_1.VerificationError({
            code: "CERTIFICATE_ERROR",
            message: "certificate chain must contain at least one certificate"
          });
        }
        const validCAs = path240.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 i4 = path240.length - 2; i4 >= 0; i4--) {
          if (!path240[i4].issuer.equals(path240[i4 + 1].subject)) {
            throw new error_1.VerificationError({
              code: "CERTIFICATE_ERROR",
              message: "incorrect certificate name chaining"
            });
          }
        }
        for (let i4 = 0; i4 < path240.length; i4++) {
          const cert = path240[i4];
          if (cert.extBasicConstraints?.isCA) {
            const pathLength = cert.extBasicConstraints.pathLenConstraint;
            if (pathLength !== void 0 && pathLength < i4 - 1) {
              throw new error_1.VerificationError({
                code: "CERTIFICATE_ERROR",
                message: "path length constraint exceeded"
              });
            }
          }
        }
      }
    };
    exports2.CertificateChainVerifier = CertificateChainVerifier;
    function dedupeCertificates(certs) {
      for (let i4 = 0; i4 < certs.length; i4++) {
        for (let j2 = i4 + 1; j2 < certs.length; j2++) {
          if (certs[i4].equals(certs[j2])) {
            certs.splice(j2, 1);
            j2--;
          }
        }
      }
      return certs;
    }
  }
});

// ../../../../../setup-pnpm/store/v11/links/@sigstore/verify/3.1.1/ce0e275549b73ca68b8bdb9af5dc20789b055afb7e41385b570830c4d28ea188/node_modules/@sigstore/verify/dist/key/sct.js
var require_sct2 = __commonJS({
  "../../../../../setup-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 clone4 = cert.clone();
      for (let i4 = 0; i4 < clone4.extensions.length; i4++) {
        const ext = clone4.extensions[i4];
        if (ext.subs[0].toOID() === core_1.EXTENSION_OID_SCT) {
          extSCT = new core_1.X509SCTExtension(ext);
          clone4.extensions.splice(i4, 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 = clone4.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 verified2 = validCTLogs.some((log3) => sct.verify(preCert.buffer, log3.publicKey));
        if (!verified2) {
          throw new error_1.VerificationError({
            code: "CERTIFICATE_ERROR",
            message: "SCT verification failed"
          });
        }
        return sct.logID;
      });
    }
  }
});

// ../../../../../setup-pnpm/store/v11/links/@sigstore/verify/3.1.1/ce0e275549b73ca68b8bdb9af5dc20789b055afb7e41385b570830c4d28ea188/node_modules/@sigstore/verify/dist/key/index.js
var require_key4 = __commonJS({
  "../../../../../setup-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 path240 = [];
      timestamps.forEach((timestamp2) => {
        path240 = (0, certificate_1.verifyCertificateChain)(timestamp2, leaf, trustMaterial.certificateAuthorities);
      });
      return {
        scts: (0, sct_1.verifySCTs)(path240[0], path240[1], trustMaterial.ctlogs),
        signer: getSigner(path240[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
      };
    }
  }
});

// ../../../../../setup-pnpm/store/v11/links/@sigstore/verify/3.1.1/ce0e275549b73ca68b8bdb9af5dc20789b055afb7e41385b570830c4d28ea188/node_modules/@sigstore/verify/dist/policy.js
var require_policy2 = __commonJS({
  "../../../../../setup-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, i4) => v === b[i4]);
    }
  }
});

// ../../../../../setup-pnpm/store/v11/links/@sigstore/verify/3.1.1/ce0e275549b73ca68b8bdb9af5dc20789b055afb7e41385b570830c4d28ea188/node_modules/@sigstore/verify/dist/timestamp/tsa.js
var require_tsa3 = __commonJS({
  "../../../../../setup-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 verified2 = timestampAuthorities.some((ca) => {
        try {
          verifyTimestampForCA(timestamp2, data, ca);
          return true;
        } catch (e) {
          return false;
        }
      });
      if (!verified2) {
        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));
    }
  }
});

// ../../../../../setup-pnpm/store/v11/links/@sigstore/verify/3.1.1/ce0e275549b73ca68b8bdb9af5dc20789b055afb7e41385b570830c4d28ea188/node_modules/@sigstore/verify/dist/timestamp/index.js
var require_timestamp6 = __commonJS({
  "../../../../../setup-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)
      };
    }
  }
});

// ../../../../../setup-pnpm/store/v11/links/@sigstore/verify/3.1.1/ce0e275549b73ca68b8bdb9af5dc20789b055afb7e41385b570830c4d28ea188/node_modules/@sigstore/verify/dist/tlog/dsse.js
var require_dsse5 = __commonJS({
  "../../../../../setup-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"
        });
      }
    }
  }
});

// ../../../../../setup-pnpm/store/v11/links/@sigstore/verify/3.1.1/ce0e275549b73ca68b8bdb9af5dc20789b055afb7e41385b570830c4d28ea188/node_modules/@sigstore/verify/dist/tlog/hashedrekord.js
var require_hashedrekord2 = __commonJS({
  "../../../../../setup-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"
        });
      }
    }
  }
});

// ../../../../../setup-pnpm/store/v11/links/@sigstore/verify/3.1.1/ce0e275549b73ca68b8bdb9af5dc20789b055afb7e41385b570830c4d28ea188/node_modules/@sigstore/verify/dist/tlog/intoto.js
var require_intoto = __commonJS({
  "../../../../../setup-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");
    }
  }
});

// ../../../../../setup-pnpm/store/v11/links/@sigstore/verify/3.1.1/ce0e275549b73ca68b8bdb9af5dc20789b055afb7e41385b570830c4d28ea188/node_modules/@sigstore/verify/dist/tlog/checkpoint.js
var require_checkpoint = __commonJS({
  "../../../../../setup-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 split4 = envelope.indexOf(CHECKPOINT_SEPARATOR);
        const header = envelope.slice(0, split4 + 1);
        const data = envelope.slice(split4 + 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;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@sigstore/verify/3.1.1/ce0e275549b73ca68b8bdb9af5dc20789b055afb7e41385b570830c4d28ea188/node_modules/@sigstore/verify/dist/tlog/merkle.js
var require_merkle = __commonJS({
  "../../../../../setup-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(index2, size) {
      const inner = innerProofSize(index2, size);
      const border = onesCount(index2 >> BigInt(inner));
      return { inner, border };
    }
    function chainInner(seed, hashes, index2) {
      return hashes.reduce((acc, h2, i4) => {
        if (index2 >> BigInt(i4) & 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(index2, size) {
      return bitLength2(index2 ^ size - BigInt(1));
    }
    function onesCount(num) {
      return num.toString(2).split("1").length - 1;
    }
    function bitLength2(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);
    }
  }
});

// ../../../../../setup-pnpm/store/v11/links/@sigstore/verify/3.1.1/ce0e275549b73ca68b8bdb9af5dc20789b055afb7e41385b570830c4d28ea188/node_modules/@sigstore/verify/dist/tlog/set.js
var require_set4 = __commonJS({
  "../../../../../setup-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 verified2 = 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 (!verified2) {
        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")
      };
    }
  }
});

// ../../../../../setup-pnpm/store/v11/links/@sigstore/verify/3.1.1/ce0e275549b73ca68b8bdb9af5dc20789b055afb7e41385b570830c4d28ea188/node_modules/@sigstore/verify/dist/tlog/index.js
var require_tlog2 = __commonJS({
  "../../../../../setup-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;
    }
  }
});

// ../../../../../setup-pnpm/store/v11/links/@sigstore/verify/3.1.1/ce0e275549b73ca68b8bdb9af5dc20789b055afb7e41385b570830c4d28ea188/node_modules/@sigstore/verify/dist/verifier.js
var require_verifier2 = __commonJS({
  "../../../../../setup-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 i4 = 0; i4 < arr.length; i4++) {
        for (let j2 = i4 + 1; j2 < arr.length; j2++) {
          if ((0, util_1.isDeepStrictEqual)(arr[i4], arr[j2])) {
            return true;
          }
        }
      }
      return false;
    }
  }
});

// ../../../../../setup-pnpm/store/v11/links/@sigstore/verify/3.1.1/ce0e275549b73ca68b8bdb9af5dc20789b055afb7e41385b570830c4d28ea188/node_modules/@sigstore/verify/dist/index.js
var require_dist23 = __commonJS({
  "../../../../../setup-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;
    } });
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/sigstore/4.1.1/415450b338bbcf5b3f375b69d7883cc753c7b16d7204475960fe80204f7f66d8/node_modules/sigstore/dist/config.js
var require_config3 = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/sigstore/4.1.1/415450b338bbcf5b3f375b69d7883cc753c7b16d7204475960fe80204f7f66d8/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;
    }
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/sigstore/4.1.1/415450b338bbcf5b3f375b69d7883cc753c7b16d7204475960fe80204f7f66d8/node_modules/sigstore/dist/sigstore.js
var require_sigstore = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/sigstore/4.1.1/415450b338bbcf5b3f375b69d7883cc753c7b16d7204475960fe80204f7f66d8/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(mod2) {
        if (mod2 && mod2.__esModule) return mod2;
        var result2 = {};
        if (mod2 != null) {
          for (var k2 = ownKeys2(mod2), i4 = 0; i4 < k2.length; i4++) if (k2[i4] !== "default") __createBinding2(result2, mod2, k2[i4]);
        }
        __setModuleDefault2(result2, mod2);
        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 config2 = __importStar2(require_config3());
    async function sign(payload, options = {}) {
      const bundler = config2.createBundleBuilder("messageSignature", options);
      const bundle = await bundler.create({ data: payload });
      return (0, bundle_1.bundleToJSON)(bundle);
    }
    async function attest(payload, payloadType, options = {}) {
      const bundler = config2.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 ?? config2.DEFAULT_RETRY,
        timeout: options.timeout ?? config2.DEFAULT_TIMEOUT
      });
      const keyFinder = options.keySelector ? config2.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 = config2.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);
        }
      };
    }
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/sigstore/4.1.1/415450b338bbcf5b3f375b69d7883cc753c7b16d7204475960fe80204f7f66d8/node_modules/sigstore/dist/index.js
var require_dist24 = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/sigstore/4.1.1/415450b338bbcf5b3f375b69d7883cc753c7b16d7204475960fe80204f7f66d8/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;
    } });
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/libnpmpublish/11.2.0/0e2bbf6c39c46335c25cb1f47e77209616a490571d989c8557f71a1f67fa12df/node_modules/libnpmpublish/lib/provenance.js
var require_provenance = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/libnpmpublish/11.2.0/0e2bbf6c39c46335c25cb1f47e77209616a490571d989c8557f71a1f67fa12df/node_modules/libnpmpublish/lib/provenance.js"(exports2, module2) {
    var sigstore = require_dist24();
    var { readFile: readFile5 } = __require("node:fs/promises");
    var ci = require_ci_info();
    var { env: env4 } = 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, opts3) => {
      let payload;
      if (ci.GITHUB_ACTIONS) {
        const relativeRef = (env4.GITHUB_WORKFLOW_REF || "").replace(env4.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: `${env4.GITHUB_SERVER_URL}/${env4.GITHUB_REPOSITORY}`,
                  path: workflowPath
                }
              },
              internalParameters: {
                github: {
                  event_name: env4.GITHUB_EVENT_NAME,
                  repository_id: env4.GITHUB_REPOSITORY_ID,
                  repository_owner_id: env4.GITHUB_REPOSITORY_OWNER_ID
                }
              },
              resolvedDependencies: [
                {
                  uri: `git+${env4.GITHUB_SERVER_URL}/${env4.GITHUB_REPOSITORY}@${env4.GITHUB_REF}`,
                  digest: {
                    gitCommit: env4.GITHUB_SHA
                  }
                }
              ]
            },
            runDetails: {
              builder: { id: `${GITHUB_BUILDER_ID_PREFIX}/${env4.RUNNER_ENVIRONMENT}` },
              metadata: {
                /* eslint-disable-next-line max-len */
                invocationId: `${env4.GITHUB_SERVER_URL}/${env4.GITHUB_REPOSITORY}/actions/runs/${env4.GITHUB_RUN_ID}/attempts/${env4.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: `${env4.CI_PROJECT_URL}/-/runners/${env4.CI_RUNNER_ID}` },
            invocation: {
              configSource: {
                uri: `git+${env4.CI_PROJECT_URL}`,
                digest: {
                  sha1: env4.CI_COMMIT_SHA
                },
                entryPoint: env4.CI_JOB_NAME
              },
              parameters: {
                CI: env4.CI,
                CI_API_GRAPHQL_URL: env4.CI_API_GRAPHQL_URL,
                CI_API_V4_URL: env4.CI_API_V4_URL,
                CI_BUILD_BEFORE_SHA: env4.CI_BUILD_BEFORE_SHA,
                CI_BUILD_ID: env4.CI_BUILD_ID,
                CI_BUILD_NAME: env4.CI_BUILD_NAME,
                CI_BUILD_REF: env4.CI_BUILD_REF,
                CI_BUILD_REF_NAME: env4.CI_BUILD_REF_NAME,
                CI_BUILD_REF_SLUG: env4.CI_BUILD_REF_SLUG,
                CI_BUILD_STAGE: env4.CI_BUILD_STAGE,
                CI_COMMIT_BEFORE_SHA: env4.CI_COMMIT_BEFORE_SHA,
                CI_COMMIT_BRANCH: env4.CI_COMMIT_BRANCH,
                CI_COMMIT_REF_NAME: env4.CI_COMMIT_REF_NAME,
                CI_COMMIT_REF_PROTECTED: env4.CI_COMMIT_REF_PROTECTED,
                CI_COMMIT_REF_SLUG: env4.CI_COMMIT_REF_SLUG,
                CI_COMMIT_SHA: env4.CI_COMMIT_SHA,
                CI_COMMIT_SHORT_SHA: env4.CI_COMMIT_SHORT_SHA,
                CI_COMMIT_TIMESTAMP: env4.CI_COMMIT_TIMESTAMP,
                CI_COMMIT_TITLE: env4.CI_COMMIT_TITLE,
                CI_CONFIG_PATH: env4.CI_CONFIG_PATH,
                CI_DEFAULT_BRANCH: env4.CI_DEFAULT_BRANCH,
                CI_DEPENDENCY_PROXY_DIRECT_GROUP_IMAGE_PREFIX: env4.CI_DEPENDENCY_PROXY_DIRECT_GROUP_IMAGE_PREFIX,
                CI_DEPENDENCY_PROXY_GROUP_IMAGE_PREFIX: env4.CI_DEPENDENCY_PROXY_GROUP_IMAGE_PREFIX,
                CI_DEPENDENCY_PROXY_SERVER: env4.CI_DEPENDENCY_PROXY_SERVER,
                CI_DEPENDENCY_PROXY_USER: env4.CI_DEPENDENCY_PROXY_USER,
                CI_JOB_ID: env4.CI_JOB_ID,
                CI_JOB_NAME: env4.CI_JOB_NAME,
                CI_JOB_NAME_SLUG: env4.CI_JOB_NAME_SLUG,
                CI_JOB_STAGE: env4.CI_JOB_STAGE,
                CI_JOB_STARTED_AT: env4.CI_JOB_STARTED_AT,
                CI_JOB_URL: env4.CI_JOB_URL,
                CI_NODE_TOTAL: env4.CI_NODE_TOTAL,
                CI_PAGES_DOMAIN: env4.CI_PAGES_DOMAIN,
                CI_PAGES_URL: env4.CI_PAGES_URL,
                CI_PIPELINE_CREATED_AT: env4.CI_PIPELINE_CREATED_AT,
                CI_PIPELINE_ID: env4.CI_PIPELINE_ID,
                CI_PIPELINE_IID: env4.CI_PIPELINE_IID,
                CI_PIPELINE_SOURCE: env4.CI_PIPELINE_SOURCE,
                CI_PIPELINE_URL: env4.CI_PIPELINE_URL,
                CI_PROJECT_CLASSIFICATION_LABEL: env4.CI_PROJECT_CLASSIFICATION_LABEL,
                CI_PROJECT_DESCRIPTION: env4.CI_PROJECT_DESCRIPTION,
                CI_PROJECT_ID: env4.CI_PROJECT_ID,
                CI_PROJECT_NAME: env4.CI_PROJECT_NAME,
                CI_PROJECT_NAMESPACE: env4.CI_PROJECT_NAMESPACE,
                CI_PROJECT_NAMESPACE_ID: env4.CI_PROJECT_NAMESPACE_ID,
                CI_PROJECT_PATH: env4.CI_PROJECT_PATH,
                CI_PROJECT_PATH_SLUG: env4.CI_PROJECT_PATH_SLUG,
                CI_PROJECT_REPOSITORY_LANGUAGES: env4.CI_PROJECT_REPOSITORY_LANGUAGES,
                CI_PROJECT_ROOT_NAMESPACE: env4.CI_PROJECT_ROOT_NAMESPACE,
                CI_PROJECT_TITLE: env4.CI_PROJECT_TITLE,
                CI_PROJECT_URL: env4.CI_PROJECT_URL,
                CI_PROJECT_VISIBILITY: env4.CI_PROJECT_VISIBILITY,
                CI_REGISTRY: env4.CI_REGISTRY,
                CI_REGISTRY_IMAGE: env4.CI_REGISTRY_IMAGE,
                CI_REGISTRY_USER: env4.CI_REGISTRY_USER,
                CI_RUNNER_DESCRIPTION: env4.CI_RUNNER_DESCRIPTION,
                CI_RUNNER_ID: env4.CI_RUNNER_ID,
                CI_RUNNER_TAGS: env4.CI_RUNNER_TAGS,
                CI_SERVER_HOST: env4.CI_SERVER_HOST,
                CI_SERVER_NAME: env4.CI_SERVER_NAME,
                CI_SERVER_PORT: env4.CI_SERVER_PORT,
                CI_SERVER_PROTOCOL: env4.CI_SERVER_PROTOCOL,
                CI_SERVER_REVISION: env4.CI_SERVER_REVISION,
                CI_SERVER_SHELL_SSH_HOST: env4.CI_SERVER_SHELL_SSH_HOST,
                CI_SERVER_SHELL_SSH_PORT: env4.CI_SERVER_SHELL_SSH_PORT,
                CI_SERVER_URL: env4.CI_SERVER_URL,
                CI_SERVER_VERSION: env4.CI_SERVER_VERSION,
                CI_SERVER_VERSION_MAJOR: env4.CI_SERVER_VERSION_MAJOR,
                CI_SERVER_VERSION_MINOR: env4.CI_SERVER_VERSION_MINOR,
                CI_SERVER_VERSION_PATCH: env4.CI_SERVER_VERSION_PATCH,
                CI_TEMPLATE_REGISTRY_HOST: env4.CI_TEMPLATE_REGISTRY_HOST,
                GITLAB_CI: env4.GITLAB_CI,
                GITLAB_FEATURES: env4.GITLAB_FEATURES,
                GITLAB_USER_ID: env4.GITLAB_USER_ID,
                GITLAB_USER_LOGIN: env4.GITLAB_USER_LOGIN,
                RUNNER_GENERATE_ARTIFACTS_METADATA: env4.RUNNER_GENERATE_ARTIFACTS_METADATA
              },
              environment: {
                name: env4.CI_RUNNER_DESCRIPTION,
                architecture: env4.CI_RUNNER_EXECUTABLE_ARCH,
                server: env4.CI_SERVER_URL,
                project: env4.CI_PROJECT_PATH,
                job: {
                  id: env4.CI_JOB_ID
                },
                pipeline: {
                  id: env4.CI_PIPELINE_ID,
                  ref: env4.CI_CONFIG_PATH
                }
              }
            },
            metadata: {
              buildInvocationId: `${env4.CI_JOB_URL}`,
              completeness: {
                parameters: true,
                environment: true,
                materials: false
              },
              reproducible: false
            },
            materials: [
              {
                uri: `git+${env4.CI_PROJECT_URL}`,
                digest: {
                  sha1: env4.CI_COMMIT_SHA
                }
              }
            ]
          }
        };
      }
      return sigstore.attest(Buffer.from(JSON.stringify(payload)), INTOTO_PAYLOAD_TYPE, opts3);
    };
    var verifyProvenance = async (subject, provenancePath) => {
      let provenanceBundle;
      try {
        provenanceBundle = JSON.parse(await readFile5(provenancePath));
      } catch (err2) {
        err2.message = `Invalid provenance provided: ${err2.message}`;
        throw err2;
      }
      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 (err2) {
        err2.message = `Failed to parse payload from dsseEnvelope: ${err2.message}`;
        throw err2;
      }
    };
    module2.exports = {
      generateProvenance,
      verifyProvenance
    };
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/libnpmpublish/11.2.0/0e2bbf6c39c46335c25cb1f47e77209616a490571d989c8557f71a1f67fa12df/node_modules/libnpmpublish/lib/publish.js
var require_publish = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/libnpmpublish/11.2.0/0e2bbf6c39c46335c25cb1f47e77209616a490571d989c8557f71a1f67fa12df/node_modules/libnpmpublish/lib/publish.js"(exports2, module2) {
    var npmFetch2 = require_lib37();
    var npa14 = require_npa2();
    var PackageJson = require_lib45();
    var { log: log3 } = require_lib15();
    var semver64 = require_semver2();
    var { URL: URL7 } = __require("node:url");
    var ssri6 = require_lib18();
    var ciInfo2 = require_ci_info();
    var { generateProvenance, verifyProvenance } = require_provenance();
    var TLOG_BASE_URL = "https://search.sigstore.dev/";
    var publish3 = async (manifest, tarballData, opts3) => {
      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 = npa14.resolve(manifest.name, manifest.version);
      opts3 = {
        access: "public",
        algorithms: ["sha512"],
        defaultTag: "latest",
        ...opts3,
        spec
      };
      const reg = npmFetch2.pickRegistry(spec, opts3);
      const pubManifest = await patchManifest(manifest, opts3);
      if (!spec.scope && opts3.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,
        opts3
      );
      const stageRoute = `/-/stage/package/${spec.escapedName}`;
      const res = await npmFetch2(opts3.stage ? stageRoute : spec.escapedName, {
        ...opts3,
        method: opts3.stage ? "POST" : "PUT",
        body: metadata,
        ignoreBody: !opts3.stage
      });
      if (transparencyLogUrl) {
        res.transparencyLogUrl = transparencyLogUrl;
      }
      if (opts3.stage) {
        const json2 = await res.json();
        res.stageId = json2.stageId;
      }
      return res;
    };
    var patchManifest = async (_manifest, opts3) => {
      const { npmVersion } = opts3;
      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 = semver64.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, opts3) => {
      const { access: access2, defaultTag, algorithms, provenance, provenanceFile, command = "publish" } = opts3;
      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: npa14.toPurl(spec),
          digest: { sha512: integrity.sha512[0].hexDigest() }
        };
        if (provenance === true) {
          await ensureProvenanceGeneration(registry, spec, opts3);
          provenanceBundle = await generateProvenance([subject], opts3);
          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, opts3) => {
      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 (opts3.access !== "public") {
        try {
          const res = await npmFetch2.json(`/-/package/${spec.escapedName}/visibility`, { ...opts3, registry });
          visibility = res;
        } catch (err2) {
          if (err2.code !== "E404") {
            throw err2;
          }
        }
      }
      if (!visibility.public && opts3.provenance === true && opts3.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;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/libnpmpublish/11.2.0/0e2bbf6c39c46335c25cb1f47e77209616a490571d989c8557f71a1f67fa12df/node_modules/libnpmpublish/lib/unpublish.js
var require_unpublish = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/libnpmpublish/11.2.0/0e2bbf6c39c46335c25cb1f47e77209616a490571d989c8557f71a1f67fa12df/node_modules/libnpmpublish/lib/unpublish.js"(exports2, module2) {
    "use strict";
    var { URL: URL7 } = __require("node:url");
    var npa14 = require_npa2();
    var npmFetch2 = require_lib37();
    var semver64 = 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, opts3) => {
      spec = npa14(spec);
      opts3 = {
        force: false,
        ...opts3,
        spec
      };
      try {
        const pkgUri = spec.escapedName;
        const pkg = await npmFetch2.json(pkgUri, {
          ...opts3,
          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 npmFetch2(`${pkgUri}/-rev/${pkg._rev}`, {
            ...opts3,
            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(semver64.compareLoose).pop();
          }
          delete pkg._revisions;
          delete pkg._attachments;
          await npmFetch2(`${pkgUri}/-rev/${pkg._rev}`, {
            ...opts3,
            method: "PUT",
            body: pkg,
            ignoreBody: true
          });
          const { _rev } = await npmFetch2.json(pkgUri, {
            ...opts3,
            query: { write: true }
          });
          const tarballUrl = getPathname(dist.tarball, opts3.registry);
          await npmFetch2(`${tarballUrl}/-rev/${_rev}`, {
            ...opts3,
            method: "DELETE",
            ignoreBody: true
          });
          return true;
        }
      } catch (err2) {
        if (err2.code !== "E404") {
          throw err2;
        }
        return true;
      }
    };
    module2.exports = unpublish;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/libnpmpublish/11.2.0/0e2bbf6c39c46335c25cb1f47e77209616a490571d989c8557f71a1f67fa12df/node_modules/libnpmpublish/lib/index.js
var require_lib47 = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/libnpmpublish/11.2.0/0e2bbf6c39c46335c25cb1f47e77209616a490571d989c8557f71a1f67fa12df/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 readline6 from "node:readline";
var import_ci_info4, import_libnpmpublish, publish, SHARED_CONTEXT;
var init_shared_context = __esm({
  "../releasing/commands/lib/publish/utils/shared-context.js"() {
    "use strict";
    init_dist14();
    init_lib3();
    init_lib23();
    import_ci_info4 = __toESM(require_ci_info(), 1);
    import_libnpmpublish = __toESM(require_lib47(), 1);
    publish = import_libnpmpublish.publish;
    SHARED_CONTEXT = {
      Date,
      createReadlineInterface: readline6.createInterface.bind(null, { input: process.stdin }),
      ciInfo: import_ci_info4.default,
      enquirer: { input: dist_default6 },
      fetch: fetch2,
      globalInfo,
      globalWarn,
      process,
      publish,
      setTimeout
    };
  }
});

// ../releasing/commands/lib/publish/oidc/authToken.js
async function fetchAuthToken({ context: { fetch: fetch3 } = SHARED_CONTEXT, options, idToken, packageName, registry }) {
  let response;
  try {
    response = await fetch3(new URL(`/-/npm/v1/oidc/token/exchange/package/${(0, import_npm_package_arg11.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_arg11, AuthTokenError, AuthTokenFetchError, AuthTokenExchangeError, AuthTokenJsonInterruptedError, AuthTokenMalformedJsonError;
var init_authToken = __esm({
  "../releasing/commands/lib/publish/oidc/authToken.js"() {
    "use strict";
    init_lib2();
    import_npm_package_arg11 = __toESM(require_npa(), 1);
    init_displayError();
    init_shared_context();
    AuthTokenError = class extends PnpmError {
    };
    AuthTokenFetchError = class extends AuthTokenError {
      errorSource;
      packageName;
      registry;
      constructor(error, packageName, registry) {
        const redactedRegistry = redactUrlCredentials(registry);
        super("AUTH_TOKEN_FETCH", `Failed to fetch authToken for package ${packageName} from registry ${redactedRegistry}: ${displayError(error)}`);
        this.errorSource = error;
        this.packageName = packageName;
        this.registry = redactedRegistry;
      }
    };
    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) {
        const redactedRegistry = redactUrlCredentials(registry);
        super("AUTH_TOKEN_MALFORMED_JSON", `Failed to fetch authToken for package ${packageName} from registry ${redactedRegistry} due to malformed JSON response`);
        this.malformedJsonResponse = malformedJsonResponse;
        this.packageName = packageName;
        this.registry = redactedRegistry;
      }
    };
  }
});

// ../releasing/commands/lib/publish/oidc/idToken.js
async function getIdToken({ context: { Date: Date2, ciInfo: { GITHUB_ACTIONS }, fetch: fetch3, globalInfo: globalInfo3, process: { env: env4 } } = SHARED_CONTEXT, options, registry }) {
  if (env4?.NPM_ID_TOKEN)
    return env4.NPM_ID_TOKEN;
  if (!GITHUB_ACTIONS)
    return void 0;
  if (!env4?.ACTIONS_ID_TOKEN_REQUEST_TOKEN || !env4?.ACTIONS_ID_TOKEN_REQUEST_URL) {
    throw new IdTokenGitHubWorkflowIncorrectPermissionsError();
  }
  const parsedRegistry = new URL(registry);
  const audience = `npm:${parsedRegistry.hostname}`;
  const url7 = new URL(env4.ACTIONS_ID_TOKEN_REQUEST_URL);
  url7.searchParams.append("audience", audience);
  const startTime = Date2.now();
  const response = await fetch3(url7.href, {
    headers: {
      Accept: "application/json",
      Authorization: `Bearer ${env4.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;
  globalInfo3(`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: fetch3, process: { env: env4 } } = 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" || !env4?.SIGSTORE_ID_TOKEN)) {
    throw new ProvenanceInsufficientInformationError();
  }
  const visibilityUrl = new URL(`/-/package/${(0, import_npm_package_arg12.default)(packageName).escapedName}/visibility`, registry);
  const response = await fetch3(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_arg12, ProvenanceError, ProvenanceMalformedIdTokenError, ProvenanceInsufficientInformationError, ProvenanceFailedToFetchVisibilityError;
var init_provenance = __esm({
  "../releasing/commands/lib/publish/oidc/provenance.js"() {
    "use strict";
    init_lib2();
    import_npm_package_arg12 = __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;
        }
        const redactedRegistry = redactUrlCredentials(registry);
        super("PROVENANCE_FAILED_TO_FETCH_VISIBILITY", `Failed to fetch visibility for package ${packageName} from registry ${redactedRegistry} due to ${message} (status code ${status})`);
        this.errorResponse = errorResponse;
        this.status = status;
        this.packageName = packageName;
        this.registry = redactedRegistry;
      }
      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,
    // withOtpHandling first calls this with no otp, then retries with the otp
    // it obtained from an OTP challenge. On the first attempt we fall back to
    // the configured --otp (publishOptions.otp) so it is actually sent; a retry
    // otp takes precedence over it. When both are undefined, passing
    // otp: undefined 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: otp ?? publishOptions.otp })
  });
}
var init_otp = __esm({
  "../releasing/commands/lib/publish/otp.js"() {
    "use strict";
    init_lib22();
    init_shared_context();
  }
});

// ../releasing/commands/lib/publish/registryConfigKeys.js
function parseSupportedRegistryUrl(registryUrl) {
  registryUrl = (0, import_normalize_registry_url7.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_url7, replacePrefix, ensureSuffix, EMPTY_REGISTRY_CONFIG_KEY;
var init_registryConfigKeys = __esm({
  "../releasing/commands/lib/publish/registryConfigKeys.js"() {
    "use strict";
    import_normalize_registry_url7 = __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 fs121 from "node:fs/promises";
async function publishPackedPkg(packResult, opts3) {
  const { publishedManifest, tarballPath, contents, unpackedSize } = packResult;
  const tarballData = await fs121.readFile(tarballPath);
  const publishOptions = await createPublishOptions(publishedManifest, opts3);
  const { name, version: version2 } = publishedManifest;
  const { registry } = publishOptions;
  const isStage = opts3.stage === true;
  globalInfo(`\u{1F4E6} ${name}@${version2} \u2192 ${registry != null ? redactUrlCredentials(registry) : "the default registry"}`);
  const summary = createPublishSummary({ publishedManifest, tarballPath, contents, unpackedSize }, tarballData);
  if (opts3.dryRun) {
    globalWarn(`Skip ${isStage ? "staging" : "publishing"} ${name}@${version2} (dry run)`);
    return summary;
  }
  const context = createPublishContext(opts3);
  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(opts3) {
  return {
    ...SHARED_CONTEXT,
    fetch: createDispatchedFetch({ ...opts3, timeout: opts3.fetchTimeout })
  };
}
async function createPublishOptions(manifest, options, { oidc = true } = {}) {
  const publishConfigRegistry = typeof manifest.publishConfig?.registry === "string" ? manifest.publishConfig.registry : void 0;
  const { registry, config: config2 } = findRegistryInfo(manifest, options, publishConfigRegistry);
  const tls2 = config2?.tls;
  const creds = config2?.[DEFAULT_REGISTRY_SCOPE];
  const publishConfigAccess = manifest.publishConfig?.access;
  const access2 = options.access ?? (isPublishAccess(publishConfigAccess) ? publishConfigAccess : null);
  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,
    strictSSL: options.strictSsl,
    // npm-registry-fetch defaults to true; must be set explicitly to honour strictSsl: false
    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) {
    if (oidc) {
      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;
  const credsScope = registryName === "default" ? DEFAULT_REGISTRY_SCOPE : registryName;
  let creds;
  let tls2 = {};
  for (const registryConfigKey of allRegistryConfigKeys(initialRegistryConfigKey)) {
    const entry = configByUri[registryConfigKey];
    if (!entry)
      continue;
    creds ??= entry[credsScope] ?? entry[DEFAULT_REGISTRY_SCOPE];
    tls2 = { ...entry.tls, ...tls2 };
  }
  const config2 = { tls: tls2 };
  if (creds) {
    config2[DEFAULT_REGISTRY_SCOPE] = creds;
  }
  return {
    registry,
    config: config2
  };
}
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_lib23();
    init_lib9();
    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/batchPublish.js
import { createHash as createHash4 } from "node:crypto";
import fs122 from "node:fs/promises";
import path215 from "node:path";
async function batchPublishPackages(pkgs, opts3) {
  if (opts3.stage) {
    throw new PnpmError("BATCH_PUBLISH_NO_STAGE", "Staged publishing cannot be combined with --batch");
  }
  if (opts3.provenance) {
    throw new PnpmError("BATCH_PUBLISH_NO_PROVENANCE", "Provenance statements cannot be generated when publishing with --batch", {
      hint: "Provenance is bound to a single package, but --batch sends many packages in one request. Publish without --batch to attach provenance."
    });
  }
  const packedByRegistry = /* @__PURE__ */ new Map();
  const packedPkgs = [];
  for (const project of pkgs) {
    const packedPkg = await packPkgForBatch(project, opts3);
    const publishConfigRegistry = typeof packedPkg.publishedManifest.publishConfig?.registry === "string" ? packedPkg.publishedManifest.publishConfig.registry : void 0;
    const { registry } = findRegistryInfo(packedPkg.publishedManifest, opts3, publishConfigRegistry);
    let group = packedByRegistry.get(registry);
    if (!group) {
      group = [];
      packedByRegistry.set(registry, group);
    }
    group.push(packedPkg);
    packedPkgs.push(packedPkg);
  }
  for (const [registry, group] of packedByRegistry.entries()) {
    for (const { summary } of group) {
      globalInfo(`\u{1F4E6} ${summary.id} \u2192 ${registry}`);
    }
    if (opts3.dryRun) {
      globalWarn(`Skip publishing ${group.length} package(s) to ${registry} (dry run)`);
      continue;
    }
    await multiPublishToRegistry(registry, group, opts3);
    globalInfo(`\u2705 Published ${group.length} package(s) to ${registry} in a single request`);
  }
  if (!opts3.ignoreScripts) {
    for (const { project } of packedPkgs) {
      await runScriptsIfPresent(await lifecycleOpts(project.rootDir, opts3), ["publish", "postpublish"], project.manifest);
    }
  }
  return packedPkgs.map(({ summary }) => summary);
}
async function packPkgForBatch(project, opts3) {
  if (!opts3.ignoreScripts) {
    await runScriptsIfPresent(await lifecycleOpts(project.rootDir, opts3), ["prepublishOnly", "prepublish"], project.manifest);
  }
  const packDestination = temporaryDirectory();
  try {
    const packResult = await api({
      ...opts3,
      dir: project.rootDir,
      packDestination,
      dryRun: false
    });
    const tarballData = await fs122.readFile(packResult.tarballPath);
    return {
      project,
      publishedManifest: packResult.publishedManifest,
      tarballData,
      summary: createPublishSummary(packResult, tarballData)
    };
  } finally {
    await rimraf(packDestination);
  }
}
async function lifecycleOpts(pkgRoot, opts3) {
  return {
    depPath: pkgRoot,
    extraBinPaths: opts3.extraBinPaths,
    extraEnv: opts3.extraEnv,
    pkgRoot,
    rootModulesDir: await realpathMissing(path215.join(pkgRoot, "node_modules")),
    stdio: "inherit",
    unsafePerm: true,
    // when running scripts explicitly, assume that they're trusted.
    userAgent: opts3.userAgent
  };
}
async function multiPublishToRegistry(registry, group, opts3) {
  const publishOptions = await createPublishOptions(group[0].publishedManifest, opts3, { oidc: false });
  const body = {
    packages: group.map((packedPkg) => createPublishDocument(packedPkg, registry, opts3))
  };
  const fetchOptions = {
    method: "GET",
    retry: {
      factor: opts3.fetchRetryFactor,
      maxTimeout: opts3.fetchRetryMaxtimeout,
      minTimeout: opts3.fetchRetryMintimeout,
      retries: opts3.fetchRetries
    },
    timeout: opts3.fetchTimeout
  };
  try {
    await withOtpHandling({
      context: createPublishContext(opts3),
      fetchOptions,
      operation: async (otp) => (0, import_npm_registry_fetch.default)(BATCH_PUBLISH_ENDPOINT, {
        ...publishOptions,
        access: publishOptions.access ?? void 0,
        otp: otp ?? publishOptions.otp,
        method: "PUT",
        body,
        ignoreBody: true
      })
    });
  } catch (err2) {
    const statusCode = err2.statusCode;
    if (statusCode === 404 || statusCode === 405) {
      throw new PnpmError("BATCH_PUBLISH_UNSUPPORTED", `The registry at ${registry} does not support publishing multiple packages in a single request`, {
        hint: `Retry without the --batch flag, or publish to a registry that implements "PUT ${BATCH_PUBLISH_ENDPOINT}" (for example, pnpr).`
      });
    }
    throw err2;
  }
}
function createPublishDocument({ publishedManifest, tarballData }, registry, opts3) {
  const name = publishedManifest.name;
  const version2 = import_semver65.default.clean(publishedManifest.version);
  if (!version2) {
    throw new PnpmError("BAD_SEMVER", `Invalid semver: ${publishedManifest.version}`);
  }
  const publishConfigAccess = publishedManifest.publishConfig?.access;
  const access2 = opts3.access ?? (isPublishAccess(publishConfigAccess) ? publishConfigAccess : null);
  if (!name.startsWith("@") && access2 === "restricted") {
    throw new PnpmError("UNSCOPED_RESTRICTED", `Can't restrict access to the unscoped package ${name}`);
  }
  const tarballName = `${name}-${version2}.tgz`;
  const manifest = {
    ...publishedManifest,
    _id: `${name}@${version2}`,
    version: version2,
    _nodeVersion: process.versions.node,
    dist: {
      integrity: `sha512-${createHash4("sha512").update(tarballData).digest("base64")}`,
      shasum: createHash4("sha1").update(tarballData).digest("hex"),
      // libnpmpublish stores an http:// URL on purpose (clients fetch via HTTPS regardless when
      // the registry is HTTPS); keep the wire format identical to a single-package publish.
      tarball: new URL(`${name}/-/${tarballName}`, registry).href.replace(/^https:\/\//, "http://")
    }
  };
  return {
    _id: name,
    name,
    description: publishedManifest.description,
    "dist-tags": { [opts3.tag ?? "latest"]: version2 },
    versions: { [version2]: manifest },
    access: access2,
    _attachments: {
      [tarballName]: {
        content_type: "application/octet-stream",
        data: tarballData.toString("base64"),
        length: tarballData.length
      }
    }
  };
}
var import_npm_registry_fetch, import_semver65, BATCH_PUBLISH_ENDPOINT;
var init_batchPublish = __esm({
  "../releasing/commands/lib/publish/batchPublish.js"() {
    "use strict";
    init_lib2();
    init_lib3();
    init_lib22();
    init_rimraf();
    import_npm_registry_fetch = __toESM(require_lib37(), 1);
    init_realpath_missing();
    import_semver65 = __toESM(require_semver2(), 1);
    init_tempy();
    init_publishSummary();
    init_pack2();
    init_publish();
    init_publishPackedPkg();
    BATCH_PUBLISH_ENDPOINT = "/-/pnpm/v1/publish";
  }
});

// ../releasing/commands/lib/publish/recursivePublish.js
import path216 from "node:path";
async function recursivePublish(opts3) {
  const pkgs = Object.values(opts3.selectedProjectsGraph).map((wsPkg) => wsPkg.package);
  const { resolve: resolve4 } = createResolver2({
    ...opts3,
    configByUri: opts3.configByUri,
    retry: {
      factor: opts3.fetchRetryFactor,
      maxTimeout: opts3.fetchRetryMaxtimeout,
      minTimeout: opts3.fetchRetryMintimeout,
      retries: opts3.fetchRetries
    },
    timeout: opts3.fetchTimeout
  });
  const pkgsToPublish = await pFilter(pkgs, async (pkg) => {
    if (!pkg.manifest.name || !pkg.manifest.version || pkg.manifest.private)
      return false;
    if (opts3.force)
      return true;
    return !await isAlreadyPublished({
      dir: pkg.rootDir,
      lockfileDir: opts3.lockfileDir ?? pkg.rootDir,
      registries: opts3.registries,
      resolve: resolve4
    }, publishedName(pkg.manifest), 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: opts3.dir
    });
  } else {
    const appendedArgs = [];
    if (opts3.cliOptions["access"]) {
      appendedArgs.push(`--access=${opts3.cliOptions["access"]}`);
    }
    if (opts3.dryRun) {
      appendedArgs.push("--dry-run");
    }
    if (opts3.force) {
      appendedArgs.push("--force");
    }
    if (opts3.cliOptions["otp"]) {
      appendedArgs.push(`--otp=${opts3.cliOptions["otp"]}`);
    }
    const chunks = sortFilteredProjects(opts3);
    const tag = opts3.tag ?? "latest";
    if (opts3.batch) {
      const sortedPkgs = chunks.flat().filter((pkgDir) => publishedPkgDirs.has(pkgDir)).map((pkgDir) => opts3.selectedProjectsGraph[pkgDir].package);
      publishedPackages.push(...await batchPublishPackages(sortedPkgs, { ...opts3, tag }));
    } else {
      const commandArgs = opts3.stage ? ["stage", "publish"] : ["publish"];
      for (const chunk of chunks) {
        for (const pkgDir of chunk) {
          if (!publishedPkgDirs.has(pkgDir))
            continue;
          const pkg = opts3.selectedProjectsGraph[pkgDir].package;
          const registry = pkg.manifest.publishConfig?.registry ?? pickRegistryForPackage(opts3.registries, publishedName(pkg.manifest));
          const publishResult = await publish2({
            ...opts3,
            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 (opts3.reportSummary) {
    await writeJsonFile(path216.join(opts3.lockfileDir ?? opts3.dir, "pnpm-publish-summary.json"), { publishedPackages });
  }
  return { exitCode: 0, publishedPackages };
}
async function isAlreadyPublished(opts3, pkgName, pkgVersion) {
  try {
    await opts3.resolve({ alias: pkgName, bareSpecifier: pkgVersion }, {
      lockfileDir: opts3.lockfileDir,
      preferredVersions: {},
      projectDir: opts3.dir
    });
    return true;
  } catch (err2) {
    return false;
  }
}
var init_recursivePublish = __esm({
  "../releasing/commands/lib/publish/recursivePublish.js"() {
    "use strict";
    init_lib28();
    init_lib59();
    init_lib3();
    init_lib95();
    init_p_filter();
    init_es();
    init_write_json_file();
    init_publishedNames();
    init_batchPublish();
    init_publish();
  }
});

// ../releasing/commands/lib/publish/publish.js
var publish_exports = {};
__export(publish_exports, {
  cliOptionsTypes: () => cliOptionsTypes61,
  commandNames: () => commandNames65,
  handler: () => handler65,
  help: () => help65,
  publish: () => publish2,
  rcOptionsTypes: () => rcOptionsTypes56,
  runScriptsIfPresent: () => runScriptsIfPresent
});
import path217 from "node:path";
function rcOptionsTypes56() {
  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 cliOptionsTypes61() {
  return {
    ...rcOptionsTypes56(),
    batch: Boolean,
    "dry-run": Boolean,
    force: Boolean,
    json: Boolean,
    otp: String,
    recursive: Boolean,
    "report-summary": Boolean
  };
}
function help65() {
  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"
          },
          {
            description: 'Send all packages to the registry in a single request instead of one request per package. Requires --recursive and a registry that implements the "/-/pnpm/v1/publish" endpoint (for example, pnpr)',
            name: "--batch"
          }
        ]
      },
      FILTERING
    ],
    url: docsUrl("publish"),
    usages: ["pnpm publish [<tarball>|<dir>] [--tag <tag>] [--access <public|restricted>] [options]"]
  });
}
async function handler65(opts3, params) {
  const result2 = await publish2(opts3, params);
  if (opts3.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(opts3, params) {
  if (opts3.batch && !opts3.recursive) {
    throw new PnpmError("BATCH_PUBLISH_REQUIRES_RECURSIVE", "--batch can only be used together with --recursive", {
      hint: 'Run "pnpm publish -r --batch" to publish all workspace packages in a single request.'
    });
  }
  if (opts3.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 = opts3.publishBranch ? [opts3.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)) {
      let isConfirmed;
      try {
        isConfirmed = await dist_default5({
          message: `You're on branch "${currentBranch}" but your "publish-branch" is set to "${branches.join("|")}". Do you want to continue?`
        });
      } catch (err2) {
        if (err2 instanceof Error && err2.name === "ExitPromptError") {
          isConfirmed = false;
        } else {
          throw err2;
        }
      }
      if (!isConfirmed) {
        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 (opts3.recursive && opts3.selectedProjectsGraph != null) {
    const { exitCode, publishedPackages } = await recursivePublish({
      ...opts3,
      selectedProjectsGraph: opts3.selectedProjectsGraph,
      workspaceDir: opts3.workspaceDir ?? process.cwd()
    });
    return { exitCode, publishedPackages };
  }
  opts3 = optionsWithOtpEnv(opts3, process.env);
  const dirInParams = params.length > 0 ? params[0] : void 0;
  if (dirInParams != null && isTarballPath(dirInParams)) {
    const tarballPath = dirInParams;
    const publishedManifest2 = await extractPublishManifestFromPacked(tarballPath);
    const publishSummary2 = await publishPackedPkg({
      tarballPath,
      publishedManifest: publishedManifest2,
      contents: [],
      unpackedSize: 0
    }, opts3);
    return { exitCode: 0, publishSummary: publishSummary2 };
  }
  const dir = dirInParams ?? opts3.dir ?? process.cwd();
  const _runScriptsIfPresent = runScriptsIfPresent.bind(null, {
    depPath: dir,
    extraBinPaths: opts3.extraBinPaths,
    extraEnv: opts3.extraEnv,
    pkgRoot: dir,
    rootModulesDir: await realpathMissing(path217.join(dir, "node_modules")),
    stdio: "inherit",
    unsafePerm: true,
    // when running scripts explicitly, assume that they're trusted.
    userAgent: opts3.userAgent
  });
  const { manifest } = await readProjectManifest2(dir, opts3);
  if (!opts3.ignoreScripts) {
    await _runScriptsIfPresent([
      "prepublishOnly",
      "prepublish"
    ], manifest);
  }
  const packDestination = temporaryDirectory();
  let publishedManifest;
  let publishSummary;
  try {
    const packResult = await api({
      ...opts3,
      dir,
      packDestination,
      dryRun: false
    });
    publishSummary = await publishPackedPkg(packResult, opts3);
    publishedManifest = packResult.publishedManifest;
  } finally {
    await rimraf(packDestination);
  }
  if (!opts3.ignoreScripts) {
    await _runScriptsIfPresent([
      "publish",
      "postpublish"
    ], manifest);
  }
  return { manifest, publishedManifest, publishSummary };
}
async function runScriptsIfPresent(opts3, scriptNames, manifest) {
  for (const scriptName of scriptNames) {
    if (!manifest.scripts?.[scriptName])
      continue;
    await runLifecycleHook(scriptName, manifest, opts3);
  }
}
var commandNames65, GIT_CHECKS_HINT;
var init_publish = __esm({
  "../releasing/commands/lib/publish/publish.js"() {
    "use strict";
    init_dist14();
    init_lib94();
    init_lib41();
    init_lib64();
    init_lib2();
    init_lib21();
    init_lib61();
    init_rimraf();
    init_es();
    init_realpath_missing();
    init_lib66();
    init_tempy();
    init_extractManifestFromPacked();
    init_otpEnv();
    init_pack2();
    init_publishPackedPkg();
    init_recursivePublish();
    commandNames65 = ["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: () => cliOptionsTypes62,
  commandNames: () => commandNames66,
  handler: () => handler66,
  help: () => help66,
  rcOptionsTypes: () => rcOptionsTypes57
});
import fs123 from "node:fs";
import path218 from "node:path";
import { createGzip } from "node:zlib";
function rcOptionsTypes57() {
  return {
    ...cliOptionsTypes62(),
    ...pick_default([
      "npm-path",
      "skip-manifest-obfuscation"
    ], types2)
  };
}
function cliOptionsTypes62() {
  return {
    out: String,
    recursive: Boolean,
    ...pick_default([
      "dry-run",
      "pack-destination",
      "pack-gzip-level",
      "json",
      "skip-manifest-obfuscation",
      "workspace-concurrency"
    ], types2)
  };
}
function help66() {
  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 handler66(opts3) {
  const packedPackages = [];
  if (opts3.recursive) {
    const selectedProjectsGraph = opts3.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: opts3.dir
      });
    }
    const chunks = sortFilteredProjects({
      selectedProjectsGraph,
      allProjectsGraph: opts3.allProjectsGraph,
      prodAllProjectsGraph: opts3.prodAllProjectsGraph,
      prodOnlySelectedProjectDirs: opts3.prodOnlySelectedProjectDirs
    });
    const limitPack = pLimit(getWorkspaceConcurrency(opts3.workspaceConcurrency));
    const resolvedOpts = { ...opts3 };
    if (opts3.out) {
      resolvedOpts.out = path218.resolve(opts3.dir, opts3.out);
    } else if (opts3.packDestination) {
      resolvedOpts.packDestination = path218.resolve(opts3.dir, opts3.packDestination);
    } else {
      resolvedOpts.packDestination = path218.resolve(opts3.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(opts3);
    packedPackages.push(toPackResultJson(packResult));
  }
  if (opts3.json) {
    return JSON.stringify(packedPackages.length > 1 ? packedPackages : packedPackages[0], null, 2);
  }
  return packedPackages.map(({ name, version: version2, filename, files }) => `${opts3.unicode ? "\u{1F4E6} " : "package:"} ${name}@${version2}
${source_default.blueBright("Tarball Contents")}
${files.map(({ path: path240 }) => path240).join("\n")}
${source_default.blueBright("Tarball Details")}
${filename}`).join("\n\n");
}
async function api(opts3) {
  const { manifest: entryManifest, fileName: manifestFileName } = await readProjectManifest2(opts3.dir, opts3);
  preventBundledDependenciesWithoutHoistedNodeLinker(opts3.nodeLinker, entryManifest);
  const _runScriptsIfPresent = runScriptsIfPresent.bind(null, {
    depPath: opts3.dir,
    extraBinPaths: opts3.extraBinPaths,
    extraEnv: opts3.extraEnv,
    pkgRoot: opts3.dir,
    rootModulesDir: await realpathMissing(path218.join(opts3.dir, "node_modules")),
    stdio: "inherit",
    unsafePerm: true,
    // when running scripts explicitly, assume that they're trusted.
    userAgent: opts3.userAgent
  });
  if (!opts3.ignoreScripts) {
    await _runScriptsIfPresent([
      "prepack",
      "prepare"
    ], entryManifest);
  }
  const dir = entryManifest.publishConfig?.directory ? path218.join(opts3.dir, entryManifest.publishConfig.directory) : opts3.dir;
  const { manifest } = await readProjectManifest2(dir, opts3);
  preventBundledDependenciesWithoutHoistedNodeLinker(opts3.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_name8.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: path218.join(opts3.dir, "node_modules"),
    manifest,
    embedReadme: opts3.embedReadme,
    catalogs: opts3.catalogs ?? {},
    hooks: opts3.hooks,
    skipManifestObfuscation: opts3.skipManifestObfuscation
  });
  publishManifest.version = stripBuildMetadata(publishManifest.version);
  let tarballName;
  let packDestination;
  const publishedName2 = publishManifest.name || manifest.name;
  if (!(0, import_validate_npm_package_name8.default)(publishedName2).validForOldPackages) {
    throw new PnpmError("INVALID_PACKAGE_NAME", `Invalid package name "${publishedName2}".`);
  }
  const normalizedName = normalizePackageName(publishedName2);
  if (opts3.out) {
    if (opts3.packDestination) {
      throw new PnpmError("INVALID_OPTION", "Cannot use --pack-destination and --out together");
    }
    const preparedOut = opts3.out.replaceAll("%s", normalizedName).replaceAll("%v", publishManifest.version);
    const parsedOut = path218.parse(preparedOut);
    packDestination = parsedOut.dir ? parsedOut.dir : opts3.packDestination;
    tarballName = parsedOut.base;
  } else {
    tarballName = `${normalizedName}-${publishManifest.version}.tgz`;
    packDestination = opts3.packDestination;
  }
  const files = await packlist(dir, {
    manifest: publishManifest,
    workspaceDir: opts3.workspaceDir
  });
  const filesMap = Object.fromEntries(files.map((file) => [`package/${file}`, path218.join(dir, file)]));
  if (opts3.workspaceDir != null && dir !== opts3.workspaceDir && !files.some((file) => /LICEN[CS]E(?:\..+)?/i.test(file))) {
    const { workspaceDir } = opts3;
    const licenses = await glob([LICENSE_GLOB], { cwd: workspaceDir, expandDirectories: false });
    await Promise.all(licenses.map(async (license) => {
      const licensePath = path218.join(workspaceDir, license);
      const stats = await fs123.promises.lstat(licensePath);
      if (stats.isFile()) {
        filesMap[`package/${license}`] = licensePath;
      }
    }));
  }
  const injectedEntries = {};
  const composedChangelog = await composeRegistryChangelog(opts3, manifest.name, publishedName2, manifest.version);
  if (composedChangelog != null) {
    delete filesMap["package/CHANGELOG.md"];
    injectedEntries["package/CHANGELOG.md"] = composedChangelog;
  }
  const destDir = packDestination ? path218.isAbsolute(packDestination) ? packDestination : path218.join(dir, packDestination ?? ".") : dir;
  if (!opts3.dryRun) {
    await fs123.promises.mkdir(destDir, { recursive: true });
  }
  const sizes = await Promise.all(Object.entries(filesMap).map(async ([name, source]) => {
    if (isManifestEntry(name)) {
      return Buffer.byteLength(JSON.stringify(publishManifest, null, 2));
    }
    const stat2 = await fs123.promises.stat(source);
    return stat2.size;
  }));
  const injectedSize = Object.values(injectedEntries).reduce((acc, content) => acc + Buffer.byteLength(content), 0);
  const unpackedSize = sizes.reduce((acc, size) => acc + size, 0) + injectedSize;
  const packedContents = Array.from(/* @__PURE__ */ new Set([
    ...Object.keys(filesMap).map((name) => isManifestEntry(name) ? "package.json" : name.replace(/^package\//, "")),
    ...Object.keys(injectedEntries).map((name) => name.replace(/^package\//, ""))
  ])).sort((a2, b) => a2.localeCompare(b, "en"));
  if (!opts3.dryRun) {
    await packPkg({
      destFile: path218.join(destDir, tarballName),
      filesMap,
      injectedEntries,
      modulesDir: path218.join(opts3.dir, "node_modules"),
      packGzipLevel: opts3.packGzipLevel,
      manifest: publishManifest,
      bins: [
        ...(await getBinsFromPackageManifest(publishManifest, dir)).map(({ path: path240 }) => path240),
        ...(manifest.publishConfig?.executableFiles ?? []).map((executableFile) => path218.join(dir, executableFile))
      ]
    });
    if (!opts3.ignoreScripts) {
      await _runScriptsIfPresent(["postpack"], entryManifest);
    }
  }
  let packedTarballPath;
  if (opts3.dir !== destDir) {
    packedTarballPath = path218.join(destDir, tarballName);
  } else {
    packedTarballPath = path218.relative(opts3.dir, path218.join(dir, tarballName));
  }
  return {
    publishedManifest: await withRegistryReadme(publishManifest, dir),
    contents: packedContents,
    tarballPath: packedTarballPath,
    unpackedSize
  };
}
async function withRegistryReadme(manifest, projectDir) {
  if (manifest.readme != null)
    return manifest;
  const readme = await readReadmeFile(projectDir);
  if (readme == null)
    return manifest;
  return { ...manifest, readme };
}
function isManifestEntry(name) {
  return name === "package/package.json" || name === "package/package.json5" || name === "package/package.yaml";
}
async function composeRegistryChangelog(opts3, pkgName, publishedName2, version2) {
  if (changelogStorage(opts3.versioning) !== "registry" || opts3.workspaceDir == null)
    return void 0;
  const section = await readPendingChangelog(opts3.workspaceDir, pkgName, version2);
  if (section == null)
    return void 0;
  const previous = opts3.registries != null ? await fetchPreviousChangelog(opts3, publishedName2, version2) : void 0;
  return renderChangelog(previous ?? null, publishedName2, section);
}
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 packPkg(opts3) {
  const { destFile, filesMap, injectedEntries, bins, manifest } = opts3;
  const mtime = /* @__PURE__ */ new Date("1985-10-26T08:15:00.000Z");
  const pack3 = import_tar_stream3.default.pack();
  await Promise.all(Object.entries(filesMap).map(async ([name, source]) => {
    const isExecutable = bins.some((bin) => path218.relative(bin, source) === "");
    const mode = isExecutable ? 493 : 420;
    if (isManifestEntry(name)) {
      pack3.entry({ mode, mtime, name: "package/package.json" }, JSON.stringify(manifest, null, 2));
      return;
    }
    pack3.entry({ mode, mtime, name }, fs123.readFileSync(source));
  }));
  for (const [name, content] of Object.entries(injectedEntries ?? {})) {
    pack3.entry({ mode: 420, mtime, name }, content);
  }
  const tarball = fs123.createWriteStream(destFile);
  pack3.pipe(createGzip({ level: opts3.packGzipLevel })).pipe(tarball);
  pack3.finalize();
  return new Promise((resolve4, reject3) => {
    tarball.on("close", () => {
      resolve4();
    }).on("error", reject3);
  });
}
async function createPublishManifest(opts3) {
  const { projectDir, embedReadme, modulesDir, manifest, catalogs, hooks, skipManifestObfuscation } = opts3;
  return createExportableManifest(projectDir, manifest, {
    catalogs,
    hooks,
    embedReadme,
    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_stream3, import_validate_npm_package_name8, LICENSE_GLOB, commandNames66;
var init_pack2 = __esm({
  "../releasing/commands/lib/publish/pack.js"() {
    "use strict";
    init_lib7();
    init_lib94();
    init_lib41();
    init_lib64();
    init_lib2();
    init_lib18();
    init_lib3();
    init_lib171();
    init_lib169();
    init_lib95();
    init_source();
    init_p_limit();
    init_es();
    init_realpath_missing();
    init_lib66();
    import_tar_stream3 = __toESM(require_tar_stream(), 1);
    init_dist2();
    import_validate_npm_package_name8 = __toESM(require_lib19(), 1);
    init_safeTarballFilename();
    init_previousChangelog();
    init_publish();
    LICENSE_GLOB = "LICEN{S,C}E{,.*}";
    commandNames66 = ["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(opts3, packageName) {
  const registry = getStageRegistry(opts3, packageName);
  const getAuthHeaderByUri = createGetAuthHeaderByURI(opts3.configByUri ?? {});
  return {
    opts: opts3,
    registry,
    authHeaderValue: packageName ? getAuthHeaderByUri(registry, { pkgName: packageName }) : getAuthHeaderByUri(registry),
    fetchFromRegistry: createFetchFromRegistry(opts3)
  };
}
function getStageRegistry(opts3, packageName) {
  const registries = getRegistries2(opts3);
  const registry = packageName ? pickRegistryForPackage(registries, packageName) : registries.default;
  return registry.endsWith("/") ? registry : `${registry}/`;
}
function getRegistries2(opts3) {
  return opts3.registries ?? { default: opts3.registry ?? DEFAULT_REGISTRY };
}
var DEFAULT_REGISTRY;
var init_context = __esm({
  "../releasing/commands/lib/stage/context.js"() {
    "use strict";
    init_lib28();
    init_lib52();
    init_lib23();
    DEFAULT_REGISTRY = "https://registry.npmjs.org/";
  }
});

// ../releasing/commands/lib/stage/parsing.js
function parseStagePackageSpec(rawSpec) {
  let spec;
  try {
    spec = (0, import_npm_package_arg13.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_arg13, UUID_REGEX;
var init_parsing = __esm({
  "../releasing/commands/lib/stage/parsing.js"() {
    "use strict";
    init_lib2();
    import_npm_package_arg13 = __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_errors3 = __esm({
  "../releasing/commands/lib/stage/errors.js"() {
    "use strict";
    init_lib2();
    StageRegistryError = class extends PnpmError {
      action;
      status;
      statusText;
      text;
      constructor(opts3) {
        const statusDisplay = opts3.statusText ? `${opts3.status} ${opts3.statusText}` : opts3.status.toString();
        const trimmedText = opts3.text.trim();
        super("STAGE_REGISTRY_ERROR", `Failed to ${opts3.action} (status ${statusDisplay})${trimmedText ? `: ${trimmedText}` : ""}`);
        this.action = opts3.action;
        this.status = opts3.status;
        this.statusText = opts3.statusText;
        this.text = opts3.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(opts3) {
  if (typeof opts3.otp === "string")
    return opts3.otp;
  const cliOtp = opts3.cliOptions?.otp;
  return typeof cliOtp === "string" ? cliOtp : void 0;
}
function createWebAuthFetchOptions(opts3) {
  return {
    method: "GET",
    retry: {
      factor: opts3.fetchRetryFactor,
      maxTimeout: opts3.fetchRetryMaxtimeout,
      minTimeout: opts3.fetchRetryMintimeout,
      retries: opts3.fetchRetries
    },
    timeout: opts3.fetchTimeout
  };
}
var init_request = __esm({
  "../releasing/commands/lib/stage/request.js"() {
    "use strict";
    init_lib3();
    init_lib22();
    init_publishPackedPkg();
    init_errors3();
  }
});

// ../releasing/commands/lib/stage/approve.js
async function stageApprove(opts3, params) {
  const stageId = requireStageId(params, "approve");
  const context = createStageContext(opts3);
  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 createHash5 } from "node:crypto";
import { gunzipSync as gunzipSync3 } from "node:zlib";
async function summarizeTarball(tarballData) {
  const extract = import_tar_stream4.default.extract();
  const files = [];
  const bundled = /* @__PURE__ */ new Set();
  let manifest;
  let entryCount = 0;
  let unpackedSize = 0;
  await new Promise((resolve4, 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", resolve4);
    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: createHash5("sha1").update(tarballData).digest("hex"),
    integrity: `sha512-${createHash5("sha512").update(tarballData).digest("base64")}`,
    filename: createTarballFilename({ name: manifest.name, version: manifest.version }),
    files,
    entryCount,
    bundled: bundled.size > 0 ? Array.from(bundled).sort() : extractBundledDependencies(manifest)
  };
}
function maybeGunzip(tarballData) {
  try {
    return gunzipSync3(tarballData);
  } catch {
    return tarballData;
  }
}
var import_tar_stream4;
var init_summarizeTarball = __esm({
  "../releasing/commands/lib/tarball/summarizeTarball.js"() {
    "use strict";
    init_lib2();
    import_tar_stream4 = __toESM(require_tar_stream(), 1);
    init_publishSummary();
    init_safeTarballFilename();
  }
});

// ../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: path240 }) => path240).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, opts3) {
  const id = "id" in summary && summary.id ? summary.id : summary.name && summary.version ? `${summary.name}@${summary.version}` : summary.name ?? "<unknown package>";
  if (opts3.dryRun)
    return `+ ${id} (would stage)`;
  if ("stageId" in summary && summary.stageId) {
    return `+ ${id} (staged with id ${summary.stageId})`;
  }
  return `+ ${id} (staged)`;
}
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";
    init_safeTarballFilename();
  }
});

// ../releasing/commands/lib/stage/download.js
import fs124 from "node:fs/promises";
import path219 from "node:path";
async function stageDownload(opts3, params) {
  const stageId = requireStageId(params, "download");
  const context = createStageContext(opts3);
  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 = createTarballFilename({ name: summary.name, version: summary.version, suffix: stageId });
  const downloadedSummary = { ...summary, filename };
  const downloadDir = path219.resolve(opts3.dir ?? process.cwd());
  const outputPath = path219.resolve(downloadDir, filename);
  if (path219.dirname(outputPath) !== downloadDir) {
    throw new PnpmError("INVALID_TARBALL_FILENAME", `Invalid tarball filename "${filename}".`);
  }
  await fs124.writeFile(outputPath, tarballData);
  if (opts3.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_lib2();
    init_safeTarballFilename();
    init_summarizeTarball();
    init_context();
    init_parsing();
    init_rendering();
    init_request();
  }
});

// ../releasing/commands/lib/stage/help.js
function help67() {
  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_lib94();
    init_lib41();
    init_lib66();
  }
});

// ../releasing/commands/lib/stage/list.js
async function stageList(opts3, params) {
  const packageFilter = parsePackageFilter(params[0]);
  const context = createStageContext(opts3, 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 (page >= MAX_PAGES)
      break;
  }
  if (opts3.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, MAX_PAGES;
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;
    MAX_PAGES = 1e3;
  }
});

// ../releasing/commands/lib/stage/publish.js
async function stagePublish(opts3, params) {
  const result2 = await publish2({
    ...opts3,
    stage: true
  }, params);
  if (opts3.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: opts3.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(opts3, params) {
  const stageId = requireStageId(params, "reject");
  const context = createStageContext(opts3);
  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(opts3, params) {
  const stageId = requireStageId(params, "view");
  const context = createStageContext(opts3);
  const item = await stageJsonRequest(context, {
    url: new URL(`-/stage/${stageId}`, context.registry).href,
    action: `view staged package ${stageId}`
  });
  return opts3.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: () => cliOptionsTypes63,
  commandNames: () => commandNames67,
  completion: () => completion6,
  handler: () => handler67,
  help: () => help67,
  rcOptionsTypes: () => rcOptionsTypes58
});
function rcOptionsTypes58() {
  return {
    ...rcOptionsTypes56(),
    ...pick_default([
      "registry"
    ], types2)
  };
}
function cliOptionsTypes63() {
  return cliOptionsTypes61();
}
async function handler67(opts3, params) {
  const subcommand = params[0];
  const subcommandParams = params.slice(1);
  switch (subcommand) {
    case "publish":
      return stagePublish(opts3, subcommandParams);
    case "list":
      return stageList(opts3, subcommandParams);
    case "view":
      return stageView(opts3, subcommandParams);
    case "approve":
      return stageApprove(opts3, subcommandParams);
    case "reject":
      return stageReject(opts3, subcommandParams);
    case "download":
      return stageDownload(opts3, 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 commandNames67, completion6;
var init_stage = __esm({
  "../releasing/commands/lib/stage/index.js"() {
    "use strict";
    init_lib64();
    init_lib2();
    init_es();
    init_publish();
    init_approve();
    init_download();
    init_help();
    init_list2();
    init_publish3();
    init_reject3();
    init_types6();
    init_view3();
    commandNames67 = ["stage"];
    completion6 = async (_cliOpts, params) => {
      if (params.length > 0)
        return [];
      return STAGE_SUBCOMMANDS.map((name) => ({ name }));
    };
  }
});

// ../releasing/commands/lib/version/index.js
import path220 from "node:path";
function rcOptionsTypes59() {
  return pick_default([
    "allow-same-version",
    "commit-hooks",
    "git-checks",
    "git-tag-version",
    "message",
    "sign-git-tag",
    "tag-version-prefix"
  ], types2);
}
function cliOptionsTypes64() {
  return {
    ...rcOptionsTypes59(),
    "dry-run": Boolean,
    json: Boolean,
    preid: String,
    recursive: Boolean
  };
}
function isBumpType(value) {
  return BUMP_TYPES3.includes(value);
}
function help68() {
  return renderHelp({
    description: "Bumps the version of a package.",
    usages: [
      "pnpm version <newversion>",
      "pnpm version <major|minor|patch|premajor|preminor|prepatch|prerelease|from-git>",
      "pnpm version -r [--dry-run]"
    ],
    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. Without a version argument, consumes the pending change intents from .changeset/ and applies the resulting release plan",
            name: "--recursive"
          },
          {
            description: "Print the release plan the pending change intents produce without applying it",
            name: "--dry-run"
          }
        ]
      }
    ]
  });
}
async function handler68(opts3, params) {
  const rawBump = params[0];
  if (!rawBump) {
    if (opts3.recursive) {
      return releaseFromIntents(opts3);
    }
    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, from-git");
  }
  const gitCwd = opts3.workspaceDir ?? opts3.dir;
  const explicitVersion = rawBump === "from-git" ? await versionFromGit(gitCwd, opts3.tagVersionPrefix) : (0, import_semver66.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, from-git`);
  }
  if (opts3.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 (opts3.recursive) {
    const pkgDirs = Object.keys(opts3.selectedProjectsGraph ?? {});
    const bumpResults = await Promise.all(pkgDirs.map((pkgDir) => bumpPackageVersion(pkgDir, rawBump, explicitVersion, opts3)));
    for (const change2 of bumpResults) {
      if (change2) {
        changes.push(change2);
      }
    }
  } else {
    const change2 = await bumpPackageVersion(opts3.dir, rawBump, explicitVersion, opts3);
    if (change2) {
      changes.push(change2);
    }
  }
  if (changes.length === 0) {
    throw new PnpmError("NO_PACKAGES_TO_VERSION", "No packages to version");
  }
  if (!opts3.recursive && opts3.gitTagVersion !== false && await isGitRepo({ cwd: gitCwd })) {
    await commitAndTag(changes, { ...opts3, cwd: gitCwd });
  }
  await Promise.all(changes.map((change2) => runVersionLifecycleHook("postversion", change2, opts3)));
  if (opts3.json) {
    return JSON.stringify(changes.map(({ manifestPath: _manifestPath, ...change2 }) => change2), null, 2);
  }
  let output = "Version bumped successfully:\n";
  for (const change2 of changes) {
    output += `${change2.name}: ${change2.currentVersion} \u2192 ${change2.newVersion}
`;
  }
  return output;
}
async function releaseFromIntents(opts3) {
  const workspaceDir = opts3.workspaceDir;
  if (!workspaceDir) {
    throw new PnpmError("WORKSPACE_ONLY", 'The bare "pnpm version -r" form consumes change intents and is only supported in a workspace');
  }
  if (!opts3.dryRun && opts3.gitChecks !== false && await isGitRepo({ cwd: workspaceDir })) {
    if (!await isWorkingTreeClean({ cwd: workspaceDir })) {
      throw new PnpmError("UNCLEAN_WORKING_TREE", "Working tree is not clean. Commit or stash your changes.");
    }
  }
  const intents = await readChangeIntents(workspaceDir);
  const ledger = await readLedger(workspaceDir);
  const projects = toWorkspaceProjects(opts3.allProjects ?? []);
  const filter14 = (opts3.filter ?? []).length > 0 ? new Set(Object.keys(opts3.selectedProjectsGraph ?? {}).map((rootDir) => toProjectDir(workspaceDir, rootDir))) : void 0;
  const baseArgs = {
    workspaceDir,
    projects,
    intents,
    ledger,
    versioning: opts3.versioning,
    filter: filter14,
    enforceWorkspaceProtocol: true
  };
  const publishedNames = publishedNameByManifestName(projects);
  const unpublishedDirs = await resolveUnpublishedDirs(assembleReleasePlan(baseArgs), { ...opts3, publishedNames });
  const plan = assembleReleasePlan({ ...baseArgs, unpublishedDirs });
  const applyOpts = {
    workspaceDir,
    projects,
    allIntents: intents,
    versioning: opts3.versioning,
    verifyPublished: buildVerifyPublished(opts3, publishedNames)
  };
  if (plan.releases.length === 0) {
    if (!opts3.dryRun && filter14 == null) {
      await applyReleasePlan(plan, applyOpts);
    }
    return 'No pending changes. Record one with "pnpm change".';
  }
  if (opts3.dryRun) {
    return renderReleasePlan(plan);
  }
  const applied = await applyReleasePlan(plan, applyOpts);
  if (opts3.json) {
    return JSON.stringify(applied, null, 2);
  }
  let output = "Versions applied:\n";
  for (const release of applied) {
    output += `${release.name}: ${release.currentVersion} \u2192 ${release.newVersion}
`;
  }
  return output;
}
function buildVerifyPublished(opts3, publishedNames) {
  if (changelogStorage(opts3.versioning) !== "registry")
    return void 0;
  return async (name, version2, section) => {
    try {
      const changelog = await fetchPublishedChangelog(opts3, publishedNames.get(name) ?? name, version2);
      return changelog != null && changelogHasSection(changelog, section);
    } catch {
      return false;
    }
  };
}
function invalidVersionFromGitError(cwd, tagVersionPrefix, reason) {
  return new PnpmError("INVALID_VERSION_FROM_GIT", `Could not determine a valid version from Git in ${JSON.stringify(cwd)} using tag prefix ${JSON.stringify(tagVersionPrefix)}: ${reason}`);
}
async function versionFromGit(cwd, tagVersionPrefix = "v") {
  const { stdout } = await safeExeca("git", ["describe", "--tags", "--abbrev=0", "--always", "--match=" + tagVersionPrefix + "*.*.*"], { cwd });
  const tag = typeof stdout === "string" ? stdout.trim() : "";
  const { stdout: matchingTag } = await safeExeca("git", ["tag", "--list", "--", tag], { cwd });
  if (typeof matchingTag !== "string" || matchingTag.trim() !== tag) {
    throw invalidVersionFromGitError(cwd, tagVersionPrefix, "no matching Git tag found");
  }
  const version2 = tag.startsWith(tagVersionPrefix) ? (0, import_semver66.valid)(tag.slice(tagVersionPrefix.length)) : null;
  if (!version2) {
    throw invalidVersionFromGitError(cwd, tagVersionPrefix, "tag is not a valid version: " + JSON.stringify(tag));
  }
  return version2;
}
async function bumpPackageVersion(pkgDir, rawBump, explicitVersion, opts3) {
  const { manifest, writeProjectManifest: writeProjectManifest2, fileName } = await readProjectManifest2(pkgDir);
  if (!manifest.name || !manifest.version) {
    return null;
  }
  const currentVersion = manifest.version;
  if (!(0, import_semver66.valid)(currentVersion)) {
    throw new PnpmError("INVALID_VERSION", `Invalid version in ${pkgDir}: ${currentVersion}`);
  }
  const preVersionChange = {
    name: manifest.name,
    currentVersion,
    newVersion: currentVersion,
    path: pkgDir,
    manifestPath: path220.join(pkgDir, fileName)
  };
  await runVersionLifecycleHook("preversion", preVersionChange, opts3);
  const newVersion = explicitVersion ?? (0, import_semver66.inc)(currentVersion, rawBump, false, opts3.preid);
  if (!newVersion) {
    throw new PnpmError("VERSION_BUMP_FAILED", `Failed to bump version from ${currentVersion} using ${rawBump}`);
  }
  if (newVersion === currentVersion && !opts3.allowSameVersion) {
    throw new PnpmError("VERSION_NOT_CHANGED", `Version was not changed: ${currentVersion}`);
  }
  manifest.version = newVersion;
  await writeProjectManifest2(manifest);
  const change2 = {
    name: manifest.name,
    currentVersion,
    newVersion,
    path: pkgDir,
    manifestPath: path220.join(pkgDir, fileName)
  };
  await runVersionLifecycleHook("version", change2, opts3);
  return change2;
}
async function runVersionLifecycleHook(stage, change2, opts3) {
  if (opts3.ignoreScripts === true)
    return;
  const { manifest } = await readProjectManifest2(change2.path);
  const lifecycleOpts2 = {
    depPath: change2.name,
    extraBinPaths: opts3.extraBinPaths,
    extraEnv: opts3.extraEnv,
    initCwd: opts3.dir,
    pkgRoot: change2.path,
    rootModulesDir: path220.join(change2.path, opts3.modulesDir ?? "node_modules"),
    scriptShell: opts3.scriptShell,
    scriptsPrependNodePath: opts3.scriptsPrependNodePath,
    shellEmulator: opts3.shellEmulator,
    stdio: "inherit",
    unsafePerm: opts3.unsafePerm ?? false,
    userAgent: opts3.userAgent
  };
  await runLifecycleHook(stage, manifest, lifecycleOpts2);
}
async function commitAndTag(changes, opts3) {
  const resolvedCwd = path220.resolve(opts3.cwd);
  const [change2] = changes;
  const rawMessage = opts3.message ?? "%s";
  const message = rawMessage.replace(/%s/g, change2.newVersion);
  const tagPrefix = opts3.tagVersionPrefix ?? "v";
  const tagName = `${tagPrefix}${change2.newVersion}`;
  const execOpts = { cwd: opts3.cwd };
  const resolvedManifestPath = path220.resolve(change2.manifestPath);
  const relativeManifestPath = path220.relative(resolvedCwd, resolvedManifestPath);
  if (relativeManifestPath === "" || path220.isAbsolute(relativeManifestPath) || relativeManifestPath.startsWith(`..${path220.sep}`) || relativeManifestPath === "..") {
    throw new PnpmError("INVALID_MANIFEST_PATH", `Cannot stage manifest outside of git cwd: ${change2.manifestPath}`);
  }
  const manifestPath = relativeManifestPath.split(path220.sep).join("/");
  await safeExeca("git", ["add", manifestPath], execOpts);
  const commitArgs = ["commit", "-m", message];
  if (opts3.commitHooks === false) {
    commitArgs.push("--no-verify");
  }
  if (opts3.allowSameVersion) {
    commitArgs.push("--allow-empty");
  }
  await safeExeca("git", commitArgs, execOpts);
  const tagArgs = ["tag"];
  if (opts3.signGitTag) {
    tagArgs.push("-s");
  } else {
    tagArgs.push("-a");
  }
  tagArgs.push(tagName, "-m", message);
  await safeExeca("git", tagArgs, execOpts);
}
var import_semver66, commandNames68, BUMP_TYPES3, version;
var init_version = __esm({
  "../releasing/commands/lib/version/index.js"() {
    "use strict";
    init_lib41();
    init_lib64();
    init_lib2();
    init_lib21();
    init_lib61();
    init_lib169();
    init_lib25();
    init_es();
    init_lib66();
    import_semver66 = __toESM(require_semver2(), 1);
    init_change();
    init_previousChangelog();
    init_publishedNames();
    init_resolveUnpublishedDirs();
    commandNames68 = ["version"];
    BUMP_TYPES3 = ["major", "minor", "patch", "premajor", "preminor", "prepatch", "prerelease"];
    version = {
      handler: handler68,
      help: help68,
      commandNames: commandNames68,
      cliOptionsTypes: cliOptionsTypes64,
      rcOptionsTypes: rcOptionsTypes59
    };
  }
});

// ../releasing/commands/lib/index.js
var init_lib172 = __esm({
  "../releasing/commands/lib/index.js"() {
    "use strict";
    init_change();
    init_deploy2();
    init_lane();
    init_pack_app();
    init_publish2();
    init_stage();
    init_version();
  }
});

// ../store/commands/lib/inspecting/catFile.js
var catFile_exports = {};
__export(catFile_exports, {
  cliOptionsTypes: () => cliOptionsTypes65,
  commandNames: () => commandNames69,
  handler: () => handler69,
  help: () => help69,
  rcOptionsTypes: () => rcOptionsTypes60,
  skipPackageManagerCheck: () => skipPackageManagerCheck7
});
import path221 from "node:path";
import util64 from "node:util";
function cliOptionsTypes65() {
  return {};
}
function help69() {
  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 handler69(opts3, params) {
  if (!params || params.length === 0) {
    throw new PnpmError("MISSING_HASH", "Missing file hash", {
      hint: help69()
    });
  }
  const [, integrityHash] = params[0].match(INTEGRITY_REGEX);
  const toHex = Buffer.from(integrityHash, "base64").toString("hex");
  const storeDir = await getStorePath({
    pkgRoot: process.cwd(),
    storePath: opts3.storeDir,
    pnpmHomeDir: opts3.pnpmHomeDir
  });
  const cafsDir = path221.join(storeDir, "files");
  const filePath = path221.resolve(cafsDir, toHex.slice(0, 2), toHex.slice(2));
  try {
    return lib_default.readFileSync(filePath, "utf8");
  } catch (err2) {
    if (util64.types.isNativeError(err2) && "code" in err2 && err2.code === "ENOENT") {
      throw new PnpmError("INVALID_HASH", "Corresponding hash file not found");
    }
    throw err2;
  }
}
var INTEGRITY_REGEX, skipPackageManagerCheck7, commandNames69, rcOptionsTypes60;
var init_catFile = __esm({
  "../store/commands/lib/inspecting/catFile.js"() {
    "use strict";
    init_lib2();
    init_lib14();
    init_lib91();
    init_lib66();
    INTEGRITY_REGEX = /^[^-]+-([a-z0-9+/=]+)$/i;
    skipPackageManagerCheck7 = true;
    commandNames69 = ["cat-file"];
    rcOptionsTypes60 = cliOptionsTypes65;
  }
});

// ../store/commands/lib/inspecting/catIndex.js
var catIndex_exports = {};
__export(catIndex_exports, {
  cliOptionsTypes: () => cliOptionsTypes66,
  commandNames: () => commandNames70,
  handler: () => handler70,
  help: () => help70,
  rcOptionsTypes: () => rcOptionsTypes61,
  skipPackageManagerCheck: () => skipPackageManagerCheck8
});
import util65 from "node:util";
function cliOptionsTypes66() {
  return {};
}
function help70() {
  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 handler70(opts3, params) {
  if (!params || params.length === 0) {
    throw new PnpmError("MISSING_PACKAGE_NAME", "Specify a package", {
      hint: help70()
    });
  }
  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: opts3.storeDir,
    pnpmHomeDir: opts3.pnpmHomeDir
  });
  const { resolve: resolve4 } = createResolver2({
    ...opts3,
    configByUri: opts3.configByUri
  });
  const pkgSnapshot = await resolve4({ alias, bareSpecifier }, {
    lockfileDir: opts3.lockfileDir ?? opts3.dir,
    preferredVersions: {},
    projectDir: opts3.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 (util65.types.isMap(value)) {
    const entries = Array.from(value.entries());
    entries.sort(([key1], [key2]) => (0, import_util23.lexCompare)(key1, key2));
    return Object.fromEntries(entries);
  }
  return value;
}
var import_util23, skipPackageManagerCheck8, commandNames70, rcOptionsTypes61;
var init_catIndex = __esm({
  "../store/commands/lib/inspecting/catIndex.js"() {
    "use strict";
    init_lib2();
    init_lib59();
    init_lib78();
    init_lib98();
    init_lib30();
    init_lib91();
    import_util23 = __toESM(require_dist4(), 1);
    init_lib66();
    skipPackageManagerCheck8 = true;
    commandNames70 = ["cat-index"];
    rcOptionsTypes61 = cliOptionsTypes66;
  }
});

// ../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: () => cliOptionsTypes67,
  commandNames: () => commandNames71,
  handler: () => handler71,
  help: () => help71,
  rcOptionsTypes: () => rcOptionsTypes62,
  skipPackageManagerCheck: () => skipPackageManagerCheck9
});
function cliOptionsTypes67() {
  return {};
}
function help71() {
  return renderHelp({
    description: "Experimental! Lists the packages that include the file with the specified hash.",
    descriptionLists: [],
    usages: ["pnpm find-hash <hash>"]
  });
}
async function handler71(opts3, 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: opts3.storeDir,
    pnpmHomeDir: opts3.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, commandNames71, rcOptionsTypes62;
var init_findHash = __esm({
  "../store/commands/lib/inspecting/findHash.js"() {
    "use strict";
    init_lib2();
    init_lib30();
    init_lib91();
    init_source();
    init_lib66();
    PACKAGE_INFO_CLR = source_default.greenBright;
    INDEX_PATH_CLR = source_default.hex("#078487");
    skipPackageManagerCheck9 = true;
    commandNames71 = ["find-hash"];
    rcOptionsTypes62 = cliOptionsTypes67;
  }
});

// ../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, opts3) {
  const reporter = opts3?.reporter;
  if (reporter != null && typeof reporter === "function") {
    streamParser.on("data", reporter);
  }
  const deps = fuzzyDeps.map((dep) => parseWantedDependency(dep));
  let hasFailures = false;
  const prefix = opts3.prefix ?? process.cwd();
  await Promise.all(deps.map(async (dep) => {
    try {
      const pkgResponse = await opts3.storeController.requestPackage(dep, {
        downloadPriority: 1,
        lockfileDir: prefix,
        preferredVersions: {},
        projectDir: prefix,
        supportedArchitectures: opts3.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_lib98();
  }
});

// ../store/commands/lib/store/cleanExpiredDlxCache.js
import { promises as fs125, readdirSync as readdirSync3 } from "node:fs";
import path222 from "node:path";
import util66 from "node:util";
async function cleanExpiredDlxCache({ cacheDir, dlxCacheMaxAge, now }) {
  if (dlxCacheMaxAge === Infinity)
    return;
  const dlxCacheDir = path222.join(cacheDir, "dlx");
  const dlxCacheNames = readOptDir(dlxCacheDir);
  if (!dlxCacheNames)
    return;
  await Promise.all(dlxCacheNames.map(async (dlxCacheName) => {
    const dlxCachePath = path222.join(dlxCacheDir, dlxCacheName);
    const dlxCacheLink = path222.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 fs125.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 = path222.join(dlxCacheDir, dlxCacheName);
    const dlxCacheLink = path222.join(dlxCachePath, "pkg");
    const dlxCacheLinkStats = await getStats(dlxCacheLink);
    if (dlxCacheLinkStats === "ENOENT") {
      return fs125.rm(dlxCachePath, { recursive: true, force: true });
    }
    const dlxCacheLinkTarget = await getRealPath2(dlxCacheLink);
    const children = await fs125.readdir(dlxCachePath);
    await Promise.all(children.map(async (name) => {
      if (name === "pkg")
        return;
      const fullPath = path222.join(dlxCachePath, name);
      if (fullPath === dlxCacheLinkTarget)
        return;
      await fs125.rm(fullPath, { recursive: true, force: true });
    }));
  }));
}
function isOutdated(stats, dlxCacheMaxAge, now) {
  return stats.mtime.getTime() + dlxCacheMaxAge * 6e4 < now.getTime();
}
async function getStats(path240) {
  try {
    return await fs125.lstat(path240);
  } catch (err2) {
    if (util66.types.isNativeError(err2) && "code" in err2 && err2.code === "ENOENT") {
      return "ENOENT";
    }
    throw err2;
  }
}
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 (err2) {
    if (util66.types.isNativeError(err2) && "code" in err2 && err2.code === "ENOENT") {
      return null;
    }
    throw err2;
  }
}
async function getRealPath2(linkPath) {
  try {
    return await fs125.realpath(linkPath);
  } catch (err2) {
    if (util66.types.isNativeError(err2) && "code" in err2 && err2.code === "ENOENT") {
      return null;
    }
    throw err2;
  }
}
var init_cleanExpiredDlxCache = __esm({
  "../store/commands/lib/store/cleanExpiredDlxCache.js"() {
    "use strict";
  }
});

// ../store/commands/lib/store/cleanLockfileVerifiedCache.js
import fs126 from "node:fs";
import path223 from "node:path";
import util67 from "node:util";
function cleanLockfileVerifiedCache(cacheDir) {
  const cacheFilePath = path223.join(cacheDir, LOCKFILE_VERIFIED_CACHE_FILE);
  try {
    fs126.unlinkSync(cacheFilePath);
  } catch (err2) {
    if (util67.types.isNativeError(err2) && "code" in err2 && err2.code === "ENOENT")
      return;
    throw err2;
  }
}
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(opts3) {
  const reporter = opts3?.reporter;
  if (reporter != null && typeof reporter === "function") {
    streamParser.on("data", reporter);
  }
  try {
    await opts3.storeController.prune(opts3.removeAlienFiles);
    await cleanExpiredDlxCache({
      cacheDir: opts3.cacheDir,
      dlxCacheMaxAge: opts3.dlxCacheMaxAge,
      now: /* @__PURE__ */ new Date()
    });
    cleanLockfileVerifiedCache(opts3.cacheDir);
    if (opts3.globalPkgDir) {
      cleanOrphanedInstallDirs(opts3.globalPkgDir);
    }
  } finally {
    await opts3.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_lib103();
    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_lib173 = __esm({
  "../crypto/integrity/lib/index.js"() {
    "use strict";
    init_lib2();
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/ssri/8.0.1/4cd9b1dab620d4af2c67e5f312d10e33a774d26f86ce641803fa272526848e6c/node_modules/ssri/index.js
var require_ssri = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/ssri/8.0.1/4cd9b1dab620d4af2c67e5f312d10e33a774d26f86ce641803fa272526848e6c/node_modules/ssri/index.js"(exports2, module2) {
    "use strict";
    var crypto14 = __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 = (opts3 = {}) => ({ ...defaultOpts, ...opts3 });
    var getOptString = (options) => !options || !options.length ? "" : `?${options.join("?")}`;
    var _onEnd = /* @__PURE__ */ Symbol("_onEnd");
    var _getOptions = /* @__PURE__ */ Symbol("_getOptions");
    var IntegrityStream = class extends MiniPass {
      constructor(opts3) {
        super();
        this.size = 0;
        this.opts = opts3;
        this[_getOptions]();
        const { algorithms = defaultOpts.algorithms } = opts3;
        this.algorithms = Array.from(
          new Set(algorithms.concat(this.algorithm ? [this.algorithm] : []))
        );
        this.hashes = this.algorithms.map(crypto14.createHash);
      }
      [_getOptions]() {
        const {
          integrity,
          size,
          options
        } = { ...defaultOpts, ...this.opts };
        this.sri = integrity ? parse12(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 = parse12(this.hashes.map((h2, i4) => {
          return `${this.algorithms[i4]}-${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 err2 = new Error(`stream size mismatch when checking ${this.sri}.
  Wanted: ${this.expectedSize}
  Found: ${this.size}`);
          err2.code = "EBADSIZE";
          err2.found = this.size;
          err2.expected = this.expectedSize;
          err2.sri = this.sri;
          this.emit("error", err2);
        } else if (this.sri && !match) {
          const err2 = new Error(`${this.sri} integrity checksum failed when using ${this.algorithm}: wanted ${this.digests} but got ${newSri}. (${this.size} bytes)`);
          err2.code = "EINTEGRITY";
          err2.found = newSri;
          err2.expected = this.digests;
          err2.algorithm = this.algorithm;
          err2.sri = this.sri;
          this.emit("error", err2);
        } else {
          this.emit("size", this.size);
          this.emit("integrity", newSri);
          match && this.emit("verified", match);
        }
      }
    };
    var Hash2 = class {
      get isHash() {
        return true;
      }
      constructor(hash2, opts3) {
        opts3 = ssriOpts(opts3);
        const strict = !!opts3.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(opts3) {
        opts3 = ssriOpts(opts3);
        if (opts3.strict) {
          if (!// The spec has very restricted productions for algorithms.
          // https://www.w3.org/TR/CSP2/#source-list-syntax
          (SPEC_ALGORITHMS.some((x3) => x3 === 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(opts3) {
        opts3 = ssriOpts(opts3);
        let sep2 = opts3.sep || " ";
        if (opts3.strict) {
          sep2 = sep2.replace(/\S+/g, " ");
        }
        return Object.keys(this).map((k2) => {
          return this[k2].map((hash2) => {
            return Hash2.prototype.toString.call(hash2, opts3);
          }).filter((x3) => x3.length).join(sep2);
        }).filter((x3) => x3.length).join(sep2);
      }
      concat(integrity, opts3) {
        opts3 = ssriOpts(opts3);
        const other = typeof integrity === "string" ? integrity : stringify2(integrity, opts3);
        return parse12(`${this.toString(opts3)} ${other}`, opts3);
      }
      hexDigest() {
        return parse12(this, { single: true }).hexDigest();
      }
      // add additional hashes to an integrity value, but prevent
      // *changing* an existing integrity hash.
      merge(integrity, opts3) {
        opts3 = ssriOpts(opts3);
        const other = parse12(integrity, opts3);
        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, opts3) {
        opts3 = ssriOpts(opts3);
        const other = parse12(integrity, opts3);
        const algo = other.pickAlgorithm(opts3);
        return this[algo] && other[algo] && this[algo].find(
          (hash2) => other[algo].find(
            (otherhash) => hash2.digest === otherhash.digest
          )
        ) || false;
      }
      pickAlgorithm(opts3) {
        opts3 = ssriOpts(opts3);
        const pickAlgorithm = opts3.pickAlgorithm;
        const keys4 = Object.keys(this);
        return keys4.reduce((acc, algo) => {
          return pickAlgorithm(acc, algo) || acc;
        });
      }
    };
    module2.exports.parse = parse12;
    function parse12(sri, opts3) {
      if (!sri) return null;
      opts3 = ssriOpts(opts3);
      if (typeof sri === "string") {
        return _parse(sri, opts3);
      } else if (sri.algorithm && sri.digest) {
        const fullSri = new Integrity();
        fullSri[sri.algorithm] = [sri];
        return _parse(stringify2(fullSri, opts3), opts3);
      } else {
        return _parse(stringify2(sri, opts3), opts3);
      }
    }
    function _parse(integrity, opts3) {
      if (opts3.single) {
        return new Hash2(integrity, opts3);
      }
      const hashes = integrity.trim().split(/\s+/).reduce((acc, string) => {
        const hash2 = new Hash2(string, opts3);
        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 = stringify2;
    function stringify2(obj, opts3) {
      opts3 = ssriOpts(opts3);
      if (obj.algorithm && obj.digest) {
        return Hash2.prototype.toString.call(obj, opts3);
      } else if (typeof obj === "string") {
        return stringify2(parse12(obj, opts3), opts3);
      } else {
        return Integrity.prototype.toString.call(obj, opts3);
      }
    }
    module2.exports.fromHex = fromHex;
    function fromHex(hexDigest, algorithm, opts3) {
      opts3 = ssriOpts(opts3);
      const optString = getOptString(opts3.options);
      return parse12(
        `${algorithm}-${Buffer.from(hexDigest, "hex").toString("base64")}${optString}`,
        opts3
      );
    }
    module2.exports.fromData = fromData;
    function fromData(data, opts3) {
      opts3 = ssriOpts(opts3);
      const algorithms = opts3.algorithms;
      const optString = getOptString(opts3.options);
      return algorithms.reduce((acc, algo) => {
        const digest = crypto14.createHash(algo).update(data).digest("base64");
        const hash2 = new Hash2(
          `${algo}-${digest}${optString}`,
          opts3
        );
        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, opts3) {
      opts3 = ssriOpts(opts3);
      const istream = integrityStream(opts3);
      return new Promise((resolve4, reject3) => {
        stream2.pipe(istream);
        stream2.on("error", reject3);
        istream.on("error", reject3);
        let sri;
        istream.on("integrity", (s) => {
          sri = s;
        });
        istream.on("end", () => resolve4(sri));
        istream.on("data", () => {
        });
      });
    }
    module2.exports.checkData = checkData;
    function checkData(data, sri, opts3) {
      opts3 = ssriOpts(opts3);
      sri = parse12(sri, opts3);
      if (!sri || !Object.keys(sri).length) {
        if (opts3.error) {
          throw Object.assign(
            new Error("No valid integrity hashes to check against"),
            {
              code: "EINTEGRITY"
            }
          );
        } else {
          return false;
        }
      }
      const algorithm = sri.pickAlgorithm(opts3);
      const digest = crypto14.createHash(algorithm).update(data).digest("base64");
      const newSri = parse12({ algorithm, digest });
      const match = newSri.match(sri, opts3);
      if (match || !opts3.error) {
        return match;
      } else if (typeof opts3.size === "number" && data.length !== opts3.size) {
        const err2 = new Error(`data size mismatch when checking ${sri}.
  Wanted: ${opts3.size}
  Found: ${data.length}`);
        err2.code = "EBADSIZE";
        err2.found = data.length;
        err2.expected = opts3.size;
        err2.sri = sri;
        throw err2;
      } else {
        const err2 = new Error(`Integrity checksum failed when using ${algorithm}: Wanted ${sri}, but got ${newSri}. (${data.length} bytes)`);
        err2.code = "EINTEGRITY";
        err2.found = newSri;
        err2.expected = sri;
        err2.algorithm = algorithm;
        err2.sri = sri;
        throw err2;
      }
    }
    module2.exports.checkStream = checkStream;
    function checkStream(stream2, sri, opts3) {
      opts3 = ssriOpts(opts3);
      opts3.integrity = sri;
      sri = parse12(sri, opts3);
      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(opts3);
      return new Promise((resolve4, reject3) => {
        stream2.pipe(checker);
        stream2.on("error", reject3);
        checker.on("error", reject3);
        let sri2;
        checker.on("verified", (s) => {
          sri2 = s;
        });
        checker.on("end", () => resolve4(sri2));
        checker.on("data", () => {
        });
      });
    }
    module2.exports.integrityStream = integrityStream;
    function integrityStream(opts3 = {}) {
      return new IntegrityStream(opts3);
    }
    module2.exports.create = createIntegrity;
    function createIntegrity(opts3) {
      opts3 = ssriOpts(opts3);
      const algorithms = opts3.algorithms;
      const optString = getOptString(opts3.options);
      const hashes = algorithms.map(crypto14.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 Hash2(
              `${algo}-${digest}${optString}`,
              opts3
            );
            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(crypto14.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;
    }
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/dint/5.1.0/140ea432f326a5c731335120e08b21e2f87070cebc2e8769768eea9037247607/node_modules/dint/index.js
var require_dint = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/dint/5.1.0/140ea432f326a5c731335120e08b21e2f87070cebc2e8769768eea9037247607/node_modules/dint/index.js"(exports2, module2) {
    "use strict";
    var fs131 = __require("fs");
    var ssri6 = require_ssri();
    var path240 = __require("path");
    var pEvery4 = require_p_every();
    var pLimit2 = require_p_limit();
    var limit = pLimit2(20);
    var MAX_BULK_SIZE = 1 * 1024 * 1024;
    function generateFrom(dirname3) {
      return _retrieveFileIntegrities(dirname3, dirname3, {});
    }
    async function _retrieveFileIntegrities(rootDir, currDir, index2) {
      try {
        const files = await fs131.promises.readdir(currDir);
        await Promise.all(files.map(async (file) => {
          const fullPath = path240.join(currDir, file);
          const stat2 = await fs131.promises.stat(fullPath);
          if (stat2.isDirectory()) {
            return _retrieveFileIntegrities(rootDir, fullPath, index2);
          }
          if (stat2.isFile()) {
            const relativePath2 = path240.relative(rootDir, fullPath);
            index2[relativePath2] = {
              size: stat2.size,
              generatingIntegrity: limit(() => {
                return stat2.size < MAX_BULK_SIZE ? fs131.promises.readFile(fullPath).then(ssri6.fromData) : ssri6.fromStream(fs131.createReadStream(fullPath));
              })
            };
          }
        }));
        return index2;
      } catch (err2) {
        if (err2.code !== "ENOENT") {
          throw err2;
        }
        return index2;
      }
    }
    function check2(dirname3, dirIntegrity) {
      dirname3 = path240.resolve(dirname3);
      return pEvery4(Object.keys(dirIntegrity), async (f) => {
        const fstat = dirIntegrity[f];
        if (!fstat.integrity) return false;
        const filename = path240.join(dirname3, f);
        if (fstat.size > MAX_BULK_SIZE) {
          try {
            return await ssri6.checkStream(fs131.createReadStream(filename), fstat.integrity);
          } catch (err2) {
            if (err2.code === "EINTEGRITY" || err2.code === "ENOENT") return false;
            throw err2;
          }
        }
        try {
          const data = await fs131.promises.readFile(filename);
          return ssri6.checkData(data, fstat.integrity);
        } catch (err2) {
          if (err2.code === "EINTEGRITY" || err2.code === "ENOENT") return false;
          throw err2;
        }
      }, { concurrency: 100 });
    }
    module2.exports = {
      from: generateFrom,
      check: check2
    };
  }
});

// ../store/commands/lib/store/storeStatus/extendStoreStatusOptions.js
import path224 from "node:path";
async function extendStoreStatusOptions(opts3) {
  if (opts3) {
    for (const key in opts3) {
      if (opts3[key] === void 0) {
        delete opts3[key];
      }
    }
  }
  const defaultOpts = await defaults3(opts3);
  const extendedOpts = { ...defaultOpts, ...opts3, 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_lib76();
    defaults3 = async (opts3) => {
      const dir = opts3.dir ?? process.cwd();
      const lockfileDir = opts3.lockfileDir ?? dir;
      return {
        binsDir: path224.join(dir, "node_modules", ".bin"),
        dir,
        force: false,
        lockfileDir,
        nodeLinker: "isolated",
        registries: DEFAULT_REGISTRIES,
        shamefullyHoist: false,
        storeDir: opts3.storeDir,
        useLockfile: true
      };
    };
  }
});

// ../store/commands/lib/store/storeStatus/index.js
import path225 from "node:path";
async function storeStatus(maybeOpts) {
  const reporter = maybeOpts?.reporter;
  if (reporter != null && typeof reporter === "function") {
    streamParser.on("data", reporter);
  }
  const opts3 = await extendStoreStatusOptions(maybeOpts);
  const { storeDir, skipped, virtualStoreDir, wantedLockfile } = await getContextForSingleImporter({}, {
    ...opts3,
    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(path225.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_lib173();
    init_lib68();
    init_lib89();
    init_lib73();
    init_lib3();
    init_lib30();
    init_lib30();
    import_dint = __toESM(require_dint(), 1);
    init_p_filter();
    init_extendStoreStatusOptions();
  }
});

// ../store/commands/lib/store/store.js
var store_exports = {};
__export(store_exports, {
  cliOptionsTypes: () => cliOptionsTypes68,
  commandNames: () => commandNames72,
  handler: () => handler72,
  help: () => help72,
  rcOptionsTypes: () => rcOptionsTypes63,
  skipPackageManagerCheck: () => skipPackageManagerCheck10
});
function cliOptionsTypes68() {
  return pick_default([
    "registry",
    "store-dir",
    "force"
  ], types2);
}
function help72() {
  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 handler72(opts3, params) {
  let store;
  switch (params[0]) {
    case "status":
      return statusCmd(opts3);
    case "path":
      return getStorePath({
        pkgRoot: opts3.workspaceDir ?? opts3.dir,
        storePath: opts3.storeDir,
        pnpmHomeDir: opts3.pnpmHomeDir
      });
    case "prune": {
      store = await createStoreController(opts3);
      const storePruneOptions = Object.assign(opts3, {
        storeController: store.ctrl,
        storeDir: store.dir,
        removeAlienFiles: opts3.force,
        cacheDir: opts3.cacheDir,
        dlxCacheMaxAge: opts3.dlxCacheMaxAge
      });
      return storePrune(storePruneOptions);
    }
    case "add":
      store = await createStoreController(opts3);
      return storeAdd(params.slice(1), {
        prefix: opts3.dir,
        reporter: opts3.reporter,
        storeController: store.ctrl,
        tag: opts3.tag
      });
    default:
      return help72();
  }
}
async function statusCmd(opts3) {
  const modifiedPkgs = await storeStatus(Object.assign(opts3, {
    lockfileDir: opts3.lockfileDir ?? opts3.workspaceDir ?? opts3.dir,
    storeDir: await getStorePath({
      pkgRoot: opts3.workspaceDir ?? opts3.dir,
      storePath: opts3.storeDir,
      pnpmHomeDir: opts3.pnpmHomeDir
    })
  }));
  if (!modifiedPkgs || modifiedPkgs.length === 0) {
    logger.info({
      message: "Packages in the store are untouched",
      prefix: opts3.dir
    });
    return;
  }
  throw new StoreStatusError(modifiedPkgs);
}
var skipPackageManagerCheck10, rcOptionsTypes63, commandNames72, StoreStatusError;
var init_store = __esm({
  "../store/commands/lib/store/store.js"() {
    "use strict";
    init_lib41();
    init_lib64();
    init_lib2();
    init_lib3();
    init_lib92();
    init_lib91();
    init_es();
    init_lib66();
    init_storeAdd();
    init_storePrune();
    init_storeStatus();
    skipPackageManagerCheck10 = true;
    rcOptionsTypes63 = cliOptionsTypes68;
    commandNames72 = ["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_lib174 = __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 u2 = person.url ?? person.web;
  const url7 = u2 ? ` (${u2})` : "";
  const e = person.email ?? person.mail;
  const email = e ? ` <${e}>` : "";
  return name + email + url7;
}
function getInitConfig(opts3) {
  const packageJson = {};
  if (opts3.initVersion) {
    packageJson.version = opts3.initVersion;
  }
  if (opts3.initLicense) {
    packageJson.license = opts3.initLicense;
  }
  const author = personToString({
    name: opts3.initAuthorName,
    email: opts3.initAuthorEmail,
    url: opts3.initAuthorUrl
  });
  if (author) {
    packageJson.author = author;
  }
  return packageJson;
}
var init_utils5 = __esm({
  "../workspace/commands/lib/utils.js"() {
    "use strict";
  }
});

// ../workspace/commands/lib/init.js
var init_exports2 = {};
__export(init_exports2, {
  cliOptionsTypes: () => cliOptionsTypes69,
  commandNames: () => commandNames73,
  handler: () => handler73,
  help: () => help73,
  rcOptionsTypes: () => rcOptionsTypes64
});
import fs127 from "node:fs";
import path226 from "node:path";
function cliOptionsTypes69() {
  return {
    ...pick_default([
      "init-package-manager",
      "init-type"
    ], types2),
    bare: Boolean
  };
}
function help73() {
  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 handler73(opts3, 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 = opts3.cliOptions.dir ?? process.cwd();
  const manifestPath = path226.join(initDir, "package.json");
  if (fs127.existsSync(manifestPath)) {
    throw new PnpmError("PACKAGE_JSON_EXISTS", "package.json already exists");
  }
  const isWorkspaceSubpackage = opts3.workspaceDir != null && path226.resolve(opts3.workspaceDir) !== path226.resolve(initDir);
  const manifest = opts3.bare ? {} : {
    name: path226.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 (opts3.initType === "module") {
    manifest.type = opts3.initType;
  }
  const initConfig = getInitConfig(opts3);
  const packageJson = { ...manifest, ...initConfig };
  if (opts3.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, index2) => [key, index2]));
  const sortedPackageJson = sortKeysByPriority({ priority }, packageJson);
  await writeProjectManifest(manifestPath, sortedPackageJson, {
    indent: 2
  });
  return `Wrote to ${manifestPath}

${JSON.stringify(sortedPackageJson, null, 2)}`;
}
var rcOptionsTypes64, commandNames73;
var init_init2 = __esm({
  "../workspace/commands/lib/init.js"() {
    "use strict";
    init_lib24();
    init_lib41();
    init_lib64();
    init_lib2();
    init_lib78();
    init_lib13();
    init_es();
    init_lib66();
    init_utils5();
    rcOptionsTypes64 = cliOptionsTypes69;
    commandNames73 = ["init"];
  }
});

// ../workspace/commands/lib/index.js
var init_lib175 = __esm({
  "../workspace/commands/lib/index.js"() {
    "use strict";
    init_init2();
  }
});

// ../cli/parse-cli-args/lib/index.js
async function parseCliArgs(opts3, inputArgv) {
  const noptExploratoryResults = (0, import_nopt2.default)({
    filter: [String],
    help: Boolean,
    recursive: Boolean,
    ...opts3.universalOptionsTypes,
    ...opts3.getTypesByCommandName("add"),
    ...opts3.getTypesByCommandName("install")
  }, {
    r: "--recursive",
    ...opts3.universalShorthands
  }, inputArgv, 0, { escapeArgs: opts3.escapeArgs });
  const recursiveCommandUsed = RECURSIVE_CMDS.has(noptExploratoryResults.argv.remain[0]);
  let commandName = getCommandName(noptExploratoryResults.argv.remain);
  let cmd = commandName ? opts3.getCommandLongName(commandName) : null;
  const fallbackCommandUsed = Boolean(commandName && !cmd && opts3.fallbackCommand);
  if (fallbackCommandUsed) {
    cmd = opts3.fallbackCommand;
    commandName = opts3.fallbackCommand;
    inputArgv.unshift(opts3.fallbackCommand);
  } else if (!SPECIALLY_ESCAPED_CMDS.has(cmd)) {
    if (noptExploratoryResults["help"]) {
      return {
        ...getParsedArgsForHelp(),
        workspaceDir: await getWorkspaceDir(noptExploratoryResults, opts3.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, opts3.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(opts3.universalOptionsTypes)) {
      if (!(key in noptExploratoryResults))
        continue;
      const renamed2 = opts3.renamedOptions?.[key] ?? key;
      result2[renamed2] = noptExploratoryResults[key];
    }
    return result2;
  }
  const types3 = {
    ...opts3.universalOptionsTypes,
    ...opts3.getTypesByCommandName(commandName)
  };
  function getCommandName(args) {
    if (recursiveCommandUsed) {
      args = args.slice(1);
    }
    if (opts3.getCommandLongName(args[0]) !== "install" || args.length === 1) {
      return args[0];
    }
    return "add";
  }
  function getEscapeArgsWithSpecialCases() {
    if (!SPECIALLY_ESCAPED_CMDS.has(cmd)) {
      return opts3.escapeArgs?.includes(commandName) ? opts3.escapeArgs : void 0;
    }
    const indexOfRunScriptName = 1 + (recursiveCommandUsed ? 1 : 0) + (fallbackCommandUsed && opts3.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
  }, {
    ...opts3.universalShorthands,
    ...opts3.shorthandsByCommandName[commandName]
  }, filteredArgv, 0, { escapeArgs: getEscapeArgsWithSpecialCases() });
  if (configDotArgs.length > 0) {
    const { argv: _, ...configOptions } = (0, import_nopt2.default)({}, {}, configDotArgs, 0);
    Object.assign(options, configOptions);
  }
  if (opts3.renamedOptions != null) {
    for (const [cliOption, optionValue] of Object.entries(options)) {
      const target2 = opts3.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] && opts3.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_lib176 = __esm({
  "../cli/parse-cli-args/lib/index.js"() {
    "use strict";
    init_lib2();
    import_nopt2 = __toESM(require_nopt(), 1);
    init_lib147();
    init_dist20();
    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, GLOBAL_OPTIONS);
    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, optionTypes) {
  for (let i4 = 0; i4 < argv2.length - 1; i4++) {
    if (argv2[i4] !== "with" || argv2[i4 + 1] !== "current")
      continue;
    const prev = argv2[i4 - 1];
    if (prev != null && longOptionConsumesValue(prev, optionTypes))
      continue;
    return i4;
  }
  return -1;
}
function longOptionConsumesValue(token, optionTypes) {
  if (!token.startsWith("--") || token.includes("="))
    return false;
  const name = token.slice(2);
  if (name.startsWith("no-"))
    return false;
  return !isBooleanType(optionTypes[name]);
}
function isBooleanType(type4) {
  return type4 === Boolean || Array.isArray(type4) && type4.includes(Boolean);
}
var RENAMED_OPTIONS;
var init_parseCliArgs = __esm({
  "lib/parseCliArgs.js"() {
    "use strict";
    init_lib176();
    init_lib2();
    init_cmd();
    init_shorthands();
    RENAMED_OPTIONS = {
      prefix: "dir",
      store: "store-dir"
    };
  }
});

// lib/cmd/bin.js
var bin_exports = {};
__export(bin_exports, {
  cliOptionsTypes: () => cliOptionsTypes70,
  commandNames: () => commandNames74,
  handler: () => handler74,
  help: () => help74,
  rcOptionsTypes: () => rcOptionsTypes65
});
function cliOptionsTypes70() {
  return pick_default([
    "global"
  ], types2);
}
function help74() {
  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 handler74(opts3) {
  return opts3.bin;
}
var rcOptionsTypes65, commandNames74;
var init_bin3 = __esm({
  "lib/cmd/bin.js"() {
    "use strict";
    init_lib41();
    init_lib64();
    init_es();
    init_lib66();
    rcOptionsTypes65 = cliOptionsTypes70;
    commandNames74 = ["bin"];
  }
});

// lib/cmd/clean.js
var clean_exports = {};
__export(clean_exports, {
  cliOptionsTypes: () => cliOptionsTypes71,
  commandNames: () => commandNames75,
  handler: () => handler75,
  help: () => help75,
  overridableByScript: () => overridableByScript4,
  rcOptionsTypes: () => rcOptionsTypes66,
  shorthands: () => shorthands19
});
import { promises as fs128 } from "node:fs";
import path227 from "node:path";
function cliOptionsTypes71() {
  return {
    lockfile: Boolean
  };
}
function help75() {
  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 handler75(opts3) {
  const modulesDir = opts3.modulesDir ?? "node_modules";
  const rootDir = opts3.workspaceDir ?? opts3.dir;
  const cleanOpts = { modulesDir, removeLockfile: opts3.cliOptions?.lockfile === true };
  const dirs2 = await getProjectDirs(opts3);
  await Promise.all(dirs2.map(cleanProjectDir.bind(null, cleanOpts)));
  if (opts3.virtualStoreDir) {
    const resolvedVirtualStoreDir = path227.isAbsolute(opts3.virtualStoreDir) ? opts3.virtualStoreDir : path227.resolve(rootDir, opts3.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 ${path227.relative(process.cwd(), p) || "."}
`);
}
async function cleanProjectDir(opts3, dir) {
  const fullModulesDir = pathAbsolute(opts3.modulesDir, dir);
  if (await hasContentsToRemove(fullModulesDir)) {
    printRemoving(fullModulesDir);
    await removeModulesDirContents(fullModulesDir);
  }
  if (opts3.removeLockfile) {
    const lockfilePath = path227.join(dir, "pnpm-lock.yaml");
    if (await pathExists2(lockfilePath)) {
      printRemoving(lockfilePath);
      await rimraf(lockfilePath);
    }
  }
}
async function hasContentsToRemove(modulesDir) {
  let items;
  try {
    items = await fs128.readdir(modulesDir);
  } catch (err2) {
    if (err2.code === "ENOENT")
      return false;
    throw err2;
  }
  return items.some((item) => item[0] !== "." || PNPM_HIDDEN_ENTRIES.has(item));
}
async function removeModulesDirContents(modulesDir) {
  let items;
  try {
    items = await fs128.readdir(modulesDir);
  } catch (err2) {
    if (err2.code === "ENOENT")
      return;
    throw err2;
  }
  await Promise.all(items.map(async (item) => {
    if (item[0] === "." && !PNPM_HIDDEN_ENTRIES.has(item))
      return;
    await rimraf(path227.join(modulesDir, item));
  }));
}
async function getProjectDirs(opts3) {
  if (!opts3.workspaceDir) {
    return [opts3.dir];
  }
  const pkgs = await findWorkspaceProjectsNoCheck(opts3.workspaceDir, {
    patterns: opts3.workspacePackagePatterns
  });
  return pkgs.map((pkg) => pkg.rootDir);
}
var commandNames75, overridableByScript4, rcOptionsTypes66, shorthands19, PNPM_HIDDEN_ENTRIES;
var init_clean = __esm({
  "lib/cmd/clean.js"() {
    "use strict";
    init_lib41();
    init_lib42();
    init_rimraf();
    init_is_subdir();
    init_path_absolute();
    init_path_exists();
    init_lib66();
    commandNames75 = ["clean", "purge"];
    overridableByScript4 = true;
    rcOptionsTypes66 = () => ({});
    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: () => cliOptionsTypes72,
  commandNames: () => commandNames76,
  handler: () => handler76,
  help: () => help76,
  rcOptionsTypes: () => rcOptionsTypes67,
  recursiveByDefault: () => recursiveByDefault14,
  shorthands: () => shorthands20
});
function help76() {
  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 handler76(opts3) {
  await handler75(opts3);
  await install_exports.handler({ ...opts3, frozenLockfile: true });
}
var rcOptionsTypes67, cliOptionsTypes72, shorthands20, commandNames76, recursiveByDefault14;
var init_cleanInstall = __esm({
  "lib/cmd/cleanInstall.js"() {
    "use strict";
    init_lib41();
    init_lib143();
    init_lib66();
    init_clean();
    rcOptionsTypes67 = install_exports.rcOptionsTypes;
    cliOptionsTypes72 = install_exports.cliOptionsTypes;
    shorthands20 = install_exports.shorthands;
    commandNames76 = ["ci", "clean-install", "ic", "install-clean"];
    recursiveByDefault14 = true;
  }
});

// lib/cmd/doctor.js
var doctor_exports = {};
__export(doctor_exports, {
  checkInstallSmokeTest: () => checkInstallSmokeTest,
  cliOptionsTypes: () => cliOptionsTypes73,
  commandNames: () => commandNames77,
  handler: () => handler77,
  help: () => help77,
  rcOptionsTypes: () => rcOptionsTypes68,
  skipPackageManagerCheck: () => skipPackageManagerCheck11
});
import { spawnSync as spawnSync4 } from "node:child_process";
import fs129 from "node:fs";
import os18 from "node:os";
import path228 from "node:path";
import util68 from "node:util";
function rcOptionsTypes68() {
  return pick_default(["offline"], types2);
}
function cliOptionsTypes73() {
  return {
    ...rcOptionsTypes68(),
    json: Boolean,
    benchmark: Boolean
  };
}
function help77() {
  return renderHelp({
    description: "Run diagnostics on the pnpm installation and environment.",
    descriptionLists: [
      {
        title: "Options",
        list: [
          {
            description: "Skip checks that need network access",
            name: "--offline"
          },
          {
            description: "Also time filesystem and install operations",
            name: "--benchmark"
          },
          {
            description: "Report the results as JSON",
            name: "--json"
          }
        ]
      }
    ],
    url: docsUrl("doctor"),
    usages: ["pnpm doctor [--offline] [--benchmark] [--json]"]
  });
}
async function handler77(opts3) {
  const pnpmCommand = opts3.pnpmCommand ?? resolveSelfCommand();
  const checks = [
    checkVersions(),
    checkInstallMethod(),
    await checkGlobalBinDir2(opts3),
    await checkWritableDir("Cache directory", opts3.cacheDir),
    ...opts3.storeDir ? [await checkWritableDir("Store directory", opts3.storeDir)] : [],
    await checkFilesystemCapabilities(opts3),
    await checkConnectivity(opts3),
    await checkInstallSmokeTest(pnpmCommand, opts3)
  ];
  const exitCode = checks.some((check2) => check2.status === "fail") ? 1 : 0;
  if (opts3.json) {
    return { output: JSON.stringify({ checks }, void 0, 2), exitCode };
  }
  return { output: renderReport(checks), exitCode };
}
function checkVersions() {
  return {
    title: "Versions",
    status: "pass",
    detail: `pnpm ${packageManager.version}, Node.js ${process.versions.node}`
  };
}
function checkInstallMethod() {
  const wrapper = getCurrentPackageName();
  if (isExecutedByCorepack()) {
    return {
      title: "Install method",
      status: "warn",
      detail: `${wrapper}, run by Corepack`,
      fix: 'Corepack manages the pnpm version itself; "pnpm self-update" is unavailable under it.'
    };
  }
  return { title: "Install method", status: "pass", detail: wrapper };
}
async function checkGlobalBinDir2(opts3) {
  const title = "Global bin directory";
  const candidates = [
    opts3.globalBinDir,
    path228.join(opts3.pnpmHomeDir, "bin"),
    opts3.pnpmHomeDir
  ].filter((dir) => dir != null && dir !== "");
  const pathEnv = readPathEnv(process.env);
  if (pathEnv == null) {
    return { title, status: "warn", detail: "the PATH environment variable is not set" };
  }
  const inPath = await Promise.all(candidates.map((candidate) => dirIsInPath(candidate, pathEnv)));
  const binDir = candidates.find((_, index2) => inPath[index2]);
  if (binDir == null) {
    return {
      title,
      status: "warn",
      detail: `${candidates[0]} is not in PATH`,
      fix: 'Run "pnpm setup" to add it to your shell configuration.'
    };
  }
  if (!canWriteToDir(binDir)) {
    return {
      title,
      status: "fail",
      detail: `no write access to ${binDir}`,
      fix: 'Run "pnpm setup", or fix the directory permissions.'
    };
  }
  return { title, status: "pass", detail: binDir };
}
async function checkWritableDir(title, dir) {
  if (!canWriteToDir(dir)) {
    return {
      title,
      status: "fail",
      detail: `no write access to ${dir}`,
      fix: "Fix the directory permissions or point the setting at a writable path."
    };
  }
  return { title, status: "pass", detail: dir };
}
async function checkFilesystemCapabilities(opts3) {
  const title = "Filesystem";
  const probeParent = opts3.storeDir ?? opts3.cacheDir;
  let probeDir;
  try {
    probeDir = await fs129.promises.mkdtemp(path228.join(probeParent, ".pnpm-doctor-"));
  } catch {
    probeDir = await fs129.promises.mkdtemp(path228.join(os18.tmpdir(), "pnpm-doctor-"));
  }
  const started = Date.now();
  try {
    const capabilities = await probeLinkCapabilities(probeDir);
    const available = Object.entries(capabilities).filter(([, ok]) => ok).map(([name]) => name);
    const status = capabilities.reflink || capabilities.hardlink ? "pass" : "warn";
    return {
      title,
      status,
      detail: available.length > 0 ? `available: ${available.join(", ")}` : "only copying is available",
      fix: status === "warn" ? "Neither reflink nor hardlink works between the store and this project; installs will copy files and be slower. Put the store on the same filesystem as your projects." : void 0,
      durationMs: opts3.benchmark ? Date.now() - started : void 0
    };
  } finally {
    await fs129.promises.rm(probeDir, { recursive: true, force: true });
  }
}
async function checkConnectivity(opts3) {
  const title = "Registry connectivity";
  if (opts3.offline) {
    return { title, status: "pass", detail: "skipped (--offline)" };
  }
  const registry = opts3.registries?.default ?? DEFAULT_REGISTRY2;
  const pingUrl = new URL("./-/ping?write=true", registry.endsWith("/") ? registry : `${registry}/`);
  const started = Date.now();
  try {
    const response = await fetch(pingUrl, { signal: AbortSignal.timeout(15e3) });
    if (!response.ok) {
      return {
        title,
        status: "fail",
        detail: `${registry} responded ${response.status} ${response.statusText}`.trimEnd(),
        fix: "Check your registry, proxy, and auth configuration."
      };
    }
    return { title, status: "pass", detail: `${registry} (${Date.now() - started}ms)` };
  } catch (err2) {
    return {
      title,
      status: "fail",
      detail: `could not reach ${registry}: ${util68.types.isNativeError(err2) ? err2.message : String(err2)}`,
      fix: "Check your network, proxy, and registry configuration."
    };
  }
}
async function checkInstallSmokeTest(pnpmCommand, opts3) {
  const title = "Install smoke test";
  const base = await fs129.promises.mkdtemp(path228.join(os18.tmpdir(), "pnpm-doctor-install-"));
  const started = Date.now();
  try {
    const provider = path228.join(base, "provider");
    const consumer = path228.join(base, "consumer");
    await fs129.promises.mkdir(provider, { recursive: true });
    await fs129.promises.mkdir(consumer, { recursive: true });
    await fs129.promises.writeFile(path228.join(provider, "package.json"), JSON.stringify({ name: "pnpm-doctor-fixture", version: "0.0.0" }));
    await fs129.promises.writeFile(path228.join(consumer, "package.json"), JSON.stringify({
      name: "pnpm-doctor-consumer",
      version: "0.0.0",
      private: true,
      dependencies: { "pnpm-doctor-fixture": "file:../provider" }
    }));
    const [command, ...baseArgs] = pnpmCommand;
    const args = [
      ...baseArgs,
      "install",
      "--offline",
      "--ignore-scripts",
      "--ignore-workspace",
      "--no-frozen-lockfile",
      `--store-dir=${path228.join(base, "store")}`,
      `--cache-dir=${path228.join(base, "cache")}`
    ];
    const result2 = spawnSync4(command, args, { cwd: consumer, encoding: "utf8", timeout: 12e4 });
    if (result2.status !== 0) {
      const stderr = (result2.stderr ?? "").trim();
      return {
        title,
        status: "fail",
        detail: `offline "file:" install failed${stderr ? `: ${lastLine2(stderr)}` : ""}`,
        fix: 'Run "pnpm install" in a scratch project to see the full error.'
      };
    }
    const linked = path228.join(consumer, "node_modules", "pnpm-doctor-fixture", "package.json");
    if (!fs129.existsSync(linked)) {
      return { title, status: "fail", detail: "install reported success but the dependency was not linked" };
    }
    return {
      title,
      status: "pass",
      detail: 'offline "file:" install linked its dependency',
      durationMs: opts3.benchmark ? Date.now() - started : void 0
    };
  } finally {
    await fs129.promises.rm(base, { recursive: true, force: true });
  }
}
function renderReport(checks) {
  const lines = checks.map((check2) => {
    const head2 = `${statusMark(check2.status)} ${check2.title}${check2.detail ? `: ${check2.detail}` : ""}`;
    if (check2.status === "pass" || check2.fix == null) {
      return check2.durationMs != null ? `${head2} (${check2.durationMs}ms)` : head2;
    }
    return `${head2}
    ${source_default.dim(check2.fix)}`;
  });
  const failed = checks.filter((check2) => check2.status === "fail").length;
  const warned = checks.filter((check2) => check2.status === "warn").length;
  const summary = failed > 0 ? source_default.red(`${failed} check(s) failed`) : warned > 0 ? source_default.yellow(`All checks passed with ${warned} warning(s)`) : source_default.green("All checks passed");
  return `${lines.join("\n")}

${summary}`;
}
function statusMark(status) {
  switch (status) {
    case "pass":
      return source_default.green("\u2713");
    case "warn":
      return source_default.yellow("\u203C");
    case "fail":
      return source_default.red("\u2717");
  }
}
function resolveSelfCommand() {
  if (detectIfCurrentPkgIsExecutable())
    return [process.execPath];
  const entry = process.argv[1];
  if (!entry)
    return [process.execPath];
  return [process.execPath, entry];
}
async function probeLinkCapabilities(dir) {
  const source = path228.join(dir, "source");
  await fs129.promises.writeFile(source, "pnpm-doctor");
  return {
    reflink: canReflink(source, path228.join(dir, "reflink")),
    hardlink: await canLink2(() => fs129.promises.link(source, path228.join(dir, "hardlink"))),
    symlink: await canLink2(() => fs129.promises.symlink(source, path228.join(dir, "symlink")))
  };
}
function canReflink(source, dest) {
  try {
    if (process.platform === "darwin" || process.platform === "win32") {
      const { reflinkFileSync } = __require("@reflink/reflink");
      reflinkFileSync(source, dest);
    } else {
      fs129.copyFileSync(source, dest, fs129.constants.COPYFILE_FICLONE_FORCE);
    }
    return true;
  } catch {
    return false;
  }
}
async function canLink2(link2) {
  try {
    await link2();
    return true;
  } catch {
    return false;
  }
}
function readPathEnv(env4) {
  if (process.platform !== "win32")
    return env4.PATH;
  const key = Object.keys(env4).find((name) => name.toUpperCase() === "PATH");
  return key != null ? env4[key] : void 0;
}
async function dirIsInPath(dir, pathEnv) {
  const dirs2 = pathEnv.split(path228.delimiter);
  if (dirs2.some((entry) => areSameDir(dir, entry)))
    return true;
  try {
    const real = await fs129.promises.realpath(dir);
    return dirs2.some((entry) => areSameDir(real, entry));
  } catch {
    return false;
  }
}
function canWriteToDir(dir) {
  const probe = path228.join(dir, `.pnpm-doctor-write-${process.pid}`);
  try {
    fs129.writeFileSync(probe, "");
    fs129.rmSync(probe, { force: true });
    return true;
  } catch {
    return false;
  }
}
function lastLine2(text) {
  const lines = text.split("\n").filter((line) => line.trim() !== "");
  return lines[lines.length - 1] ?? text;
}
var commandNames77, skipPackageManagerCheck11, DEFAULT_REGISTRY2, areSameDir;
var init_doctor = __esm({
  "lib/cmd/doctor.js"() {
    "use strict";
    init_lib24();
    init_lib41();
    init_lib64();
    init_source();
    init_es();
    init_lib66();
    commandNames77 = ["doctor"];
    skipPackageManagerCheck11 = true;
    DEFAULT_REGISTRY2 = "https://registry.npmjs.org/";
    areSameDir = (a2, b) => a2 !== "" && b !== "" && path228.relative(a2, b) === "";
  }
});

// lib/cmd/help.js
function createHelp(helpByCommandName2) {
  return {
    commandNames: ["help"],
    shorthands: {
      a: "--all"
    },
    cliOptionsTypes: () => ({
      all: Boolean
    }),
    rcOptionsTypes: () => ({}),
    help: helpHelp,
    handler: handler78.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 handler78(helpByCommandName2, opts3, params) {
  let helpText;
  if (params.length === 0) {
    helpText = getHelpText({ all: opts3.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_lib24();
    init_lib41();
    init_lib66();
  }
});

// lib/cmd/installTest.js
var installTest_exports = {};
__export(installTest_exports, {
  cliOptionsTypes: () => cliOptionsTypes74,
  commandNames: () => commandNames78,
  handler: () => handler79,
  help: () => help78,
  rcOptionsTypes: () => rcOptionsTypes69
});
function help78() {
  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 handler79(opts3, params) {
  await install_exports.handler(opts3);
  await run_exports.handler(opts3, ["test", ...params]);
}
var cliOptionsTypes74, rcOptionsTypes69, commandNames78;
var init_installTest = __esm({
  "lib/cmd/installTest.js"() {
    "use strict";
    init_lib41();
    init_lib165();
    init_lib143();
    init_lib66();
    cliOptionsTypes74 = install_exports.cliOptionsTypes;
    rcOptionsTypes69 = install_exports.rcOptionsTypes;
    commandNames78 = ["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 = [
      "edit",
      "profile",
      "set-script",
      "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/prefix.js
var prefix_exports = {};
__export(prefix_exports, {
  cliOptionsTypes: () => cliOptionsTypes75,
  commandNames: () => commandNames79,
  handler: () => handler80,
  help: () => help79,
  rcOptionsTypes: () => rcOptionsTypes70
});
import path229 from "node:path";
function cliOptionsTypes75() {
  return pick_default([
    "global"
  ], types2);
}
function help79() {
  return renderHelp({
    description: "Print the current package prefix.",
    descriptionLists: [
      {
        title: "Options",
        list: [
          {
            description: "Print the global prefix",
            name: "--global",
            shortAlias: "-g"
          }
        ]
      }
    ],
    url: docsUrl("prefix"),
    usages: ["pnpm prefix [-g]"]
  });
}
async function handler80(opts3) {
  if (opts3.global) {
    if (!opts3.globalPkgDir) {
      throw new PnpmError("MISSING_GLOBAL_PACKAGE_DIR", "The global package directory could not be resolved.");
    }
    return path229.dirname(opts3.globalPkgDir);
  }
  return opts3.dir;
}
var rcOptionsTypes70, commandNames79;
var init_prefix = __esm({
  "lib/cmd/prefix.js"() {
    "use strict";
    init_lib41();
    init_lib64();
    init_lib2();
    init_es();
    init_lib66();
    rcOptionsTypes70 = cliOptionsTypes75;
    commandNames79 = ["prefix"];
  }
});

// lib/cmd/recursive.js
var recursive_exports = {};
__export(recursive_exports, {
  cliOptionsTypes: () => cliOptionsTypes76,
  commandNames: () => commandNames80,
  handler: () => handler81,
  help: () => help80,
  rcOptionsTypes: () => rcOptionsTypes71
});
function help80() {
  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 handler81() {
  console.log(help80());
  process.exit(1);
}
var rcOptionsTypes71, cliOptionsTypes76, commandNames80;
var init_recursive5 = __esm({
  "lib/cmd/recursive.js"() {
    "use strict";
    init_lib94();
    init_lib41();
    init_lib64();
    init_lib();
    init_lib66();
    rcOptionsTypes71 = () => ({});
    cliOptionsTypes76 = () => ({});
    commandNames80 = ["recursive", "multi", "m"];
  }
});

// lib/cmd/root.js
var root_exports = {};
__export(root_exports, {
  cliOptionsTypes: () => cliOptionsTypes77,
  commandNames: () => commandNames81,
  handler: () => handler82,
  help: () => help81,
  rcOptionsTypes: () => rcOptionsTypes72
});
import path230 from "node:path";
function cliOptionsTypes77() {
  return pick_default([
    "global"
  ], types2);
}
function help81() {
  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 handler82(opts3) {
  if (opts3.global) {
    return `${opts3.globalPkgDir}
`;
  }
  return `${path230.join(opts3.dir, "node_modules")}
`;
}
var rcOptionsTypes72, commandNames81;
var init_root = __esm({
  "lib/cmd/root.js"() {
    "use strict";
    init_lib41();
    init_lib64();
    init_es();
    init_lib66();
    rcOptionsTypes72 = cliOptionsTypes77;
    commandNames81 = ["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_lib67();
    init_lib144();
    init_lib146();
    init_lib148();
    init_lib150();
    init_lib64();
    init_lib156();
    init_lib159();
    init_lib161();
    init_lib163();
    init_lib165();
    init_lib143();
    init_lib166();
    init_lib167();
    init_lib168();
    init_lib172();
    init_lib174();
    init_lib175();
    init_es();
    init_parseCliArgs();
    init_shorthands();
    init_bin3();
    init_clean();
    init_cleanInstall();
    init_doctor();
    init_help2();
    init_installTest();
    init_notImplemented();
    init_prefix();
    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 = [
      access_exports,
      add_exports,
      approveBuilds_exports,
      audit_exports,
      bin_exports,
      bugs_exports,
      cache_cmd_exports,
      change,
      cleanInstall_exports,
      clean_exports,
      config_exports,
      dedupe_exports,
      get_exports,
      set_exports,
      create_exports,
      deprecate_exports,
      deploy_exports,
      distTag_exports,
      doctor_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,
      lane,
      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,
      prefix_exports,
      team_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 i4 = 0; i4 < commands.length; i4++) {
      const { cliOptionsTypes: cliOptionsTypes78, commandNames: commandNames82, completion: completion7, handler: handler83, help: help82, shorthands: shorthands21, skipPackageManagerCheck: skipPackageManagerCheck12, recursiveByDefault: recursiveByDefault15, overridableByScript: overridableByScript5 } = commands[i4];
      if (!commandNames82 || commandNames82.length === 0) {
        throw new Error(`The command at index ${i4} doesn't have command names`);
      }
      for (const commandName of commandNames82) {
        handlerByCommandName[commandName] = handler83;
        helpByCommandName[commandName] = help82;
        cliOptionsTypesByCommandName[commandName] = cliOptionsTypes78;
        shorthandsByCommandName[commandName] = shorthands21 ?? {};
        if (completion7 != null) {
          completionByCommandName[commandName] = completion7;
        }
      }
      if (skipPackageManagerCheck12) {
        skipPackageManagerCheckForCommandArray.push(...commandNames82);
      }
      if (recursiveByDefault15) {
        recursiveByDefaultCommandArray.push(...commandNames82);
      }
      if (overridableByScript5) {
        overridableByScriptCommandArray.push(...commandNames82);
      }
      if (commandNames82.length > 1) {
        const fullName = commandNames82[0];
        for (let i5 = 1; i5 < commandNames82.length; i5++) {
          aliasToFullName.set(commandNames82[i5], 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_source();
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/ansi-regex/3.0.1/694c708b45eb3daf8a9b6a06485016af18464cb9426c8eee9a28a73c2fc38879/node_modules/ansi-regex/index.js
var require_ansi_regex2 = __commonJS({
  "../../../../../setup-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");
    };
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/ansi-split/1.0.1/67aad4c92927ae2b192b02a2641c2b791d5ff81afca20583d8dbfc33b5739992/node_modules/ansi-split/index.js
var require_ansi_split = __commonJS({
  "../../../../../setup-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 i4 = 0; i4 < parts.length; i4++) {
        offset = str2.indexOf(parts[i4], 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[i4];
        } else {
          if (offset === 0) result2.push("");
          result2.push(parts[i4]);
        }
        ptr = offset + parts[i4].length;
      }
      result2.push(str2.slice(ptr));
      return result2;
    }
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/clone/1.0.4/3b38ae7253af06c79b035f463a51ee02d8a841591ab9c035944ccca1ba08e34e/node_modules/clone/clone.js
var require_clone5 = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/clone/1.0.4/3b38ae7253af06c79b035f463a51ee02d8a841591ab9c035944ccca1ba08e34e/node_modules/clone/clone.js"(exports2, module2) {
    var clone4 = (function() {
      "use strict";
      function clone5(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 proto3;
          if (typeof parent2 != "object") {
            return parent2;
          }
          if (clone5.__isArray(parent2)) {
            child = [];
          } else if (clone5.__isRegExp(parent2)) {
            child = new RegExp(parent2.source, __getRegExpFlags(parent2));
            if (parent2.lastIndex) child.lastIndex = parent2.lastIndex;
          } else if (clone5.__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") {
              proto3 = Object.getPrototypeOf(parent2);
              child = Object.create(proto3);
            } else {
              child = Object.create(prototype);
              proto3 = prototype;
            }
          }
          if (circular) {
            var index2 = allParents.indexOf(parent2);
            if (index2 != -1) {
              return allChildren[index2];
            }
            allParents.push(parent2);
            allChildren.push(child);
          }
          for (var i4 in parent2) {
            var attrs;
            if (proto3) {
              attrs = Object.getOwnPropertyDescriptor(proto3, i4);
            }
            if (attrs && attrs.set == null) {
              continue;
            }
            child[i4] = _clone2(parent2[i4], depth2 - 1);
          }
          return child;
        }
        return _clone2(parent, depth);
      }
      clone5.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);
      }
      ;
      clone5.__objToStr = __objToStr;
      function __isDate(o2) {
        return typeof o2 === "object" && __objToStr(o2) === "[object Date]";
      }
      ;
      clone5.__isDate = __isDate;
      function __isArray(o2) {
        return typeof o2 === "object" && __objToStr(o2) === "[object Array]";
      }
      ;
      clone5.__isArray = __isArray;
      function __isRegExp(o2) {
        return typeof o2 === "object" && __objToStr(o2) === "[object RegExp]";
      }
      ;
      clone5.__isRegExp = __isRegExp;
      function __getRegExpFlags(re) {
        var flags = "";
        if (re.global) flags += "g";
        if (re.ignoreCase) flags += "i";
        if (re.multiline) flags += "m";
        return flags;
      }
      ;
      clone5.__getRegExpFlags = __getRegExpFlags;
      return clone5;
    })();
    if (typeof module2 === "object" && module2.exports) {
      module2.exports = clone4;
    }
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/defaults/1.0.4/29bb8e20ab3078acf239060bf33b3e556ac2d204ea4e7b1ba6feff011631b888/node_modules/defaults/index.js
var require_defaults2 = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/defaults/1.0.4/29bb8e20ab3078acf239060bf33b3e556ac2d204ea4e7b1ba6feff011631b888/node_modules/defaults/index.js"(exports2, module2) {
    var clone4 = require_clone5();
    module2.exports = function(options, defaults4) {
      options = options || {};
      Object.keys(defaults4).forEach(function(key) {
        if (typeof options[key] === "undefined") {
          options[key] = clone4(defaults4[key]);
        }
      });
      return options;
    };
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/wcwidth/1.0.1/26baf4b65f93ae4df797f8e00bfb30235ae3b78886b07bb20b27a5421175a037/node_modules/wcwidth/combining.js
var require_combining = __commonJS({
  "../../../../../setup-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]
    ];
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/wcwidth/1.0.1/26baf4b65f93ae4df797f8e00bfb30235ae3b78886b07bb20b27a5421175a037/node_modules/wcwidth/index.js
var require_wcwidth = __commonJS({
  "../../../../../setup-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(opts3) {
      opts3 = defaults4(opts3 || {}, DEFAULTS2);
      return function wcwidth2(str2) {
        return wcswidth(str2, opts3);
      };
    };
    function wcswidth(str2, opts3) {
      if (typeof str2 !== "string") return wcwidth(str2, opts3);
      var s = 0;
      for (var i4 = 0; i4 < str2.length; i4++) {
        var n2 = wcwidth(str2.charCodeAt(i4), opts3);
        if (n2 < 0) return -1;
        s += n2;
      }
      return s;
    }
    function wcwidth(ucs, opts3) {
      if (ucs === 0) return opts3.nul;
      if (ucs < 32 || ucs >= 127 && ucs < 160) return opts3.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 max4 = combining.length - 1;
      var mid;
      if (ucs < combining[0][0] || ucs > combining[max4][1]) return false;
      while (max4 >= min) {
        mid = Math.floor((min + max4) / 2);
        if (ucs > combining[mid][1]) min = mid + 1;
        else if (ucs < combining[mid][0]) max4 = mid - 1;
        else return true;
      }
      return false;
    }
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/ansi-diff/1.2.0/cffa105509e845dfabd581383461d0305eac07d3d07a46811b16d3677bb147f4/node_modules/ansi-diff/index.js
var require_ansi_diff = __commonJS({
  "../../../../../setup-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(opts3) {
      if (!(this instanceof Diff)) return new Diff(opts3);
      if (!opts3) opts3 = {};
      this.x = 0;
      this.y = 0;
      this.width = opts3.width || Infinity;
      this.height = opts3.height || Infinity;
      this._buffer = null;
      this._out = [];
      this._lines = [];
    }
    Diff.prototype.resize = function(opts3) {
      if (!opts3) opts3 = {};
      if (opts3.width) this.width = opts3.width;
      if (opts3.height) this.height = opts3.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, opts3) {
      this._buffer = Buffer.isBuffer(buffer3) ? buffer3.toString() : buffer3;
      var other = this._buffer;
      var oldLines = this._lines;
      var lines = split4(other, this);
      this._lines = lines;
      this._out = [];
      var min = Math.min(lines.length, oldLines.length);
      var i4 = 0;
      var a2;
      var b;
      var scrub = false;
      for (; i4 < min; i4++) {
        a2 = lines[i4];
        b = oldLines[i4];
        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 slice4 = a2.raw.slice(left, right ? -right : a2.length);
          if (left + right > 4 && left + slice4.length < this.width - 1) {
            this._moveTo(left, a2.y);
            this._push(Buffer.from(slice4));
            this.x += slice4.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 (; i4 < lines.length; i4++) {
        a2 = lines[i4];
        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 (opts3 && opts3.moveTo) {
        this._moveTo(opts3.moveTo[0], opts3.moveTo[1]);
      } else if (last) {
        this._moveTo(last.remainder, last.y + last.height);
      }
      return Buffer.concat(this._out);
    };
    Diff.prototype._clearDown = function(y) {
      var x3 = this.x;
      for (var i4 = this.y; i4 <= y; i4++) {
        this._moveTo(x3, i4);
        this._push(CLEAR_LINE);
        x3 = 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(x3, y) {
      var dx = x3 - 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 = x3;
      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 split4(str2, term) {
      var y = 0;
      var lines = str2.split("\n");
      var wrapped = [];
      var line;
      for (var i4 = 0; i4 < lines.length; i4++) {
        line = new Line(lines[i4], y, i4 < 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 i4 = 0; i4 < parts.length; i4 += 2) {
        len += wcwidth(parts[i4]);
      }
      return len;
    }
    function toHex(n2) {
      return Buffer.from("" + n2).toString("hex");
    }
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/util/isFunction.js
var require_isFunction3 = __commonJS({
  "../../../../../setup-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;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/util/createErrorClass.js
var require_createErrorClass = __commonJS({
  "../../../../../setup-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;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/util/UnsubscriptionError.js
var require_UnsubscriptionError = __commonJS({
  "../../../../../setup-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(err2, i4) {
          return i4 + 1 + ") " + err2.toString();
        }).join("\n  ") : "";
        this.name = "UnsubscriptionError";
        this.errors = errors2;
      };
    });
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/util/arrRemove.js
var require_arrRemove = __commonJS({
  "../../../../../setup-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 index2 = arr.indexOf(item);
        0 <= index2 && arr.splice(index2, 1);
      }
    }
    exports2.arrRemove = arrRemove;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/Subscription.js
var require_Subscription = __commonJS({
  "../../../../../setup-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], i4 = 0;
      if (m) return m.call(o2);
      if (o2 && typeof o2.length === "number") return {
        next: function() {
          if (o2 && i4 >= o2.length) o2 = void 0;
          return { value: o2 && o2[i4++], 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 i4 = m.call(o2), r, ar = [], e;
      try {
        while ((n2 === void 0 || n2-- > 0) && !(r = i4.next()).done) ar.push(r.value);
      } catch (error) {
        e = { error };
      } finally {
        try {
          if (r && !r.done && (m = i4["return"])) m.call(i4);
        } finally {
          if (e) throw e.error;
        }
      }
      return ar;
    };
    var __spreadArray2 = exports2 && exports2.__spreadArray || function(to, from5) {
      for (var i4 = 0, il = from5.length, j2 = to.length; i4 < il; i4++, j2++)
        to[j2] = from5[i4];
      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, _a2, e_2, _b2;
        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 && (_a2 = _parentage_1.return)) _a2.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 (err2) {
                  errors2 = errors2 !== null && errors2 !== void 0 ? errors2 : [];
                  if (err2 instanceof UnsubscriptionError_1.UnsubscriptionError) {
                    errors2 = __spreadArray2(__spreadArray2([], __read2(errors2)), __read2(err2.errors));
                  } else {
                    errors2.push(err2);
                  }
                }
              }
            } catch (e_2_1) {
              e_2 = { error: e_2_1 };
            } finally {
              try {
                if (_finalizers_1_1 && !_finalizers_1_1.done && (_b2 = _finalizers_1.return)) _b2.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 _a2;
        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 = (_a2 = this._finalizers) !== null && _a2 !== void 0 ? _a2 : []).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();
      }
    }
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/config.js
var require_config4 = __commonJS({
  "../../../../../setup-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
    };
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/scheduler/timeoutProvider.js
var require_timeoutProvider = __commonJS({
  "../../../../../setup-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 i4 = m.call(o2), r, ar = [], e;
      try {
        while ((n2 === void 0 || n2-- > 0) && !(r = i4.next()).done) ar.push(r.value);
      } catch (error) {
        e = { error };
      } finally {
        try {
          if (r && !r.done && (m = i4["return"])) m.call(i4);
        } finally {
          if (e) throw e.error;
        }
      }
      return ar;
    };
    var __spreadArray2 = exports2 && exports2.__spreadArray || function(to, from5) {
      for (var i4 = 0, il = from5.length, j2 = to.length; i4 < il; i4++, j2++)
        to[j2] = from5[i4];
      return to;
    };
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.timeoutProvider = void 0;
    exports2.timeoutProvider = {
      setTimeout: function(handler83, 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([handler83, timeout], __read2(args)));
        }
        return setTimeout.apply(void 0, __spreadArray2([handler83, 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
    };
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/util/reportUnhandledError.js
var require_reportUnhandledError = __commonJS({
  "../../../../../setup-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(err2) {
      timeoutProvider_1.timeoutProvider.setTimeout(function() {
        var onUnhandledError = config_1.config.onUnhandledError;
        if (onUnhandledError) {
          onUnhandledError(err2);
        } else {
          throw err2;
        }
      });
    }
    exports2.reportUnhandledError = reportUnhandledError;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/util/noop.js
var require_noop3 = __commonJS({
  "../../../../../setup-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;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/NotificationFactories.js
var require_NotificationFactories = __commonJS({
  "../../../../../setup-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;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/util/errorContext.js
var require_errorContext = __commonJS({
  "../../../../../setup-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 _a2 = context, errorThrown = _a2.errorThrown, error = _a2.error;
          context = null;
          if (errorThrown) {
            throw error;
          }
        }
      } else {
        cb();
      }
    }
    exports2.errorContext = errorContext;
    function captureError(err2) {
      if (config_1.config.useDeprecatedSynchronousErrorHandling && context) {
        context.errorThrown = true;
        context.error = err2;
      }
    }
    exports2.captureError = captureError;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/Subscriber.js
var require_Subscriber = __commonJS({
  "../../../../../setup-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(d3, b) {
        extendStatics2 = Object.setPrototypeOf || { __proto__: [] } instanceof Array && function(d4, b2) {
          d4.__proto__ = b2;
        } || function(d4, b2) {
          for (var p in b2) if (Object.prototype.hasOwnProperty.call(b2, p)) d4[p] = b2[p];
        };
        return extendStatics2(d3, b);
      };
      return function(d3, b) {
        if (typeof b !== "function" && b !== null)
          throw new TypeError("Class extends value " + String(b) + " is not a constructor or null");
        extendStatics2(d3, b);
        function __() {
          this.constructor = d3;
        }
        d3.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(err2) {
        if (this.isStopped) {
          handleStoppedNotification(NotificationFactories_1.errorNotification(err2), this);
        } else {
          this.isStopped = true;
          this._error(err2);
        }
      };
      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(err2) {
        try {
          this.destination.error(err2);
        } 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(err2) {
        var partialObserver = this.partialObserver;
        if (partialObserver.error) {
          try {
            partialObserver.error(err2);
          } catch (error) {
            handleUnhandledError(error);
          }
        } else {
          handleUnhandledError(err2);
        }
      };
      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(err2) {
      throw err2;
    }
    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
    };
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/symbol/observable.js
var require_observable = __commonJS({
  "../../../../../setup-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";
    })();
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/util/identity.js
var require_identity5 = __commonJS({
  "../../../../../setup-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(x3) {
      return x3;
    }
    exports2.identity = identity5;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/util/pipe.js
var require_pipe2 = __commonJS({
  "../../../../../setup-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 pipe3() {
      var fns = [];
      for (var _i = 0; _i < arguments.length; _i++) {
        fns[_i] = arguments[_i];
      }
      return pipeFromArray(fns);
    }
    exports2.pipe = pipe3;
    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;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/Observable.js
var require_Observable = __commonJS({
  "../../../../../setup-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 _a2 = _this, operator = _a2.operator, source = _a2.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 (err2) {
          sink.error(err2);
        }
      };
      Observable2.prototype.forEach = function(next2, promiseCtor) {
        var _this = this;
        promiseCtor = getPromiseCtor(promiseCtor);
        return new promiseCtor(function(resolve4, reject3) {
          var subscriber = new Subscriber_1.SafeSubscriber({
            next: function(value) {
              try {
                next2(value);
              } catch (err2) {
                reject3(err2);
                subscriber.unsubscribe();
              }
            },
            error: reject3,
            complete: resolve4
          });
          _this.subscribe(subscriber);
        });
      };
      Observable2.prototype._subscribe = function(subscriber) {
        var _a2;
        return (_a2 = this.source) === null || _a2 === void 0 ? void 0 : _a2.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(resolve4, reject3) {
          var value;
          _this.subscribe(function(x3) {
            return value = x3;
          }, function(err2) {
            return reject3(err2);
          }, function() {
            return resolve4(value);
          });
        });
      };
      Observable2.create = function(subscribe) {
        return new Observable2(subscribe);
      };
      return Observable2;
    })();
    exports2.Observable = Observable;
    function getPromiseCtor(promiseCtor) {
      var _a2;
      return (_a2 = promiseCtor !== null && promiseCtor !== void 0 ? promiseCtor : config_1.config.Promise) !== null && _a2 !== void 0 ? _a2 : 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);
    }
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/util/lift.js
var require_lift = __commonJS({
  "../../../../../setup-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 (err2) {
              this.error(err2);
            }
          });
        }
        throw new TypeError("Unable to lift unknown Observable type");
      };
    }
    exports2.operate = operate;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/operators/OperatorSubscriber.js
var require_OperatorSubscriber = __commonJS({
  "../../../../../setup-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(d3, b) {
        extendStatics2 = Object.setPrototypeOf || { __proto__: [] } instanceof Array && function(d4, b2) {
          d4.__proto__ = b2;
        } || function(d4, b2) {
          for (var p in b2) if (Object.prototype.hasOwnProperty.call(b2, p)) d4[p] = b2[p];
        };
        return extendStatics2(d3, b);
      };
      return function(d3, b) {
        if (typeof b !== "function" && b !== null)
          throw new TypeError("Class extends value " + String(b) + " is not a constructor or null");
        extendStatics2(d3, b);
        function __() {
          this.constructor = d3;
        }
        d3.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 (err2) {
            destination.error(err2);
          }
        } : _super.prototype._next;
        _this._error = onError ? function(err2) {
          try {
            onError(err2);
          } catch (err3) {
            destination.error(err3);
          } finally {
            this.unsubscribe();
          }
        } : _super.prototype._error;
        _this._complete = onComplete ? function() {
          try {
            onComplete();
          } catch (err2) {
            destination.error(err2);
          } finally {
            this.unsubscribe();
          }
        } : _super.prototype._complete;
        return _this;
      }
      OperatorSubscriber2.prototype.unsubscribe = function() {
        var _a2;
        if (!this.shouldUnsubscribe || this.shouldUnsubscribe()) {
          var closed_1 = this.closed;
          _super.prototype.unsubscribe.call(this);
          !closed_1 && ((_a2 = this.onFinalize) === null || _a2 === void 0 ? void 0 : _a2.call(this));
        }
      };
      return OperatorSubscriber2;
    })(Subscriber_1.Subscriber);
    exports2.OperatorSubscriber = OperatorSubscriber;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/operators/refCount.js
var require_refCount = __commonJS({
  "../../../../../setup-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;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/observable/ConnectableObservable.js
var require_ConnectableObservable = __commonJS({
  "../../../../../setup-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(d3, b) {
        extendStatics2 = Object.setPrototypeOf || { __proto__: [] } instanceof Array && function(d4, b2) {
          d4.__proto__ = b2;
        } || function(d4, b2) {
          for (var p in b2) if (Object.prototype.hasOwnProperty.call(b2, p)) d4[p] = b2[p];
        };
        return extendStatics2(d3, b);
      };
      return function(d3, b) {
        if (typeof b !== "function" && b !== null)
          throw new TypeError("Class extends value " + String(b) + " is not a constructor or null");
        extendStatics2(d3, b);
        function __() {
          this.constructor = d3;
        }
        d3.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(err2) {
            _this._teardown();
            subject_1.error(err2);
          }, 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;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/scheduler/performanceTimestampProvider.js
var require_performanceTimestampProvider = __commonJS({
  "../../../../../setup-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
    };
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/scheduler/animationFrameProvider.js
var require_animationFrameProvider = __commonJS({
  "../../../../../setup-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 i4 = m.call(o2), r, ar = [], e;
      try {
        while ((n2 === void 0 || n2-- > 0) && !(r = i4.next()).done) ar.push(r.value);
      } catch (error) {
        e = { error };
      } finally {
        try {
          if (r && !r.done && (m = i4["return"])) m.call(i4);
        } finally {
          if (e) throw e.error;
        }
      }
      return ar;
    };
    var __spreadArray2 = exports2 && exports2.__spreadArray || function(to, from5) {
      for (var i4 = 0, il = from5.length, j2 = to.length; i4 < il; i4++, j2++)
        to[j2] = from5[i4];
      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 cancel2 = cancelAnimationFrame;
        var delegate = exports2.animationFrameProvider.delegate;
        if (delegate) {
          request = delegate.requestAnimationFrame;
          cancel2 = delegate.cancelAnimationFrame;
        }
        var handle = request(function(timestamp2) {
          cancel2 = void 0;
          callback2(timestamp2);
        });
        return new Subscription_1.Subscription(function() {
          return cancel2 === null || cancel2 === void 0 ? void 0 : cancel2(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
    };
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/observable/dom/animationFrames.js
var require_animationFrames = __commonJS({
  "../../../../../setup-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 run2 = 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
              });
              run2();
            });
          }
        };
        run2();
        return function() {
          if (id) {
            animationFrameProvider_1.animationFrameProvider.cancelAnimationFrame(id);
          }
        };
      });
    }
    var DEFAULT_ANIMATION_FRAMES = animationFramesFactory();
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/util/ObjectUnsubscribedError.js
var require_ObjectUnsubscribedError = __commonJS({
  "../../../../../setup-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";
      };
    });
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/Subject.js
var require_Subject = __commonJS({
  "../../../../../setup-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(d3, b) {
        extendStatics2 = Object.setPrototypeOf || { __proto__: [] } instanceof Array && function(d4, b2) {
          d4.__proto__ = b2;
        } || function(d4, b2) {
          for (var p in b2) if (Object.prototype.hasOwnProperty.call(b2, p)) d4[p] = b2[p];
        };
        return extendStatics2(d3, b);
      };
      return function(d3, b) {
        if (typeof b !== "function" && b !== null)
          throw new TypeError("Class extends value " + String(b) + " is not a constructor or null");
        extendStatics2(d3, b);
        function __() {
          this.constructor = d3;
        }
        d3.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], i4 = 0;
      if (m) return m.call(o2);
      if (o2 && typeof o2.length === "number") return {
        next: function() {
          if (o2 && i4 >= o2.length) o2 = void 0;
          return { value: o2 && o2[i4++], 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, _a2;
          _this._throwIfClosed();
          if (!_this.isStopped) {
            if (!_this.currentObservers) {
              _this.currentObservers = Array.from(_this.observers);
            }
            try {
              for (var _b2 = __values2(_this.currentObservers), _c = _b2.next(); !_c.done; _c = _b2.next()) {
                var observer = _c.value;
                observer.next(value);
              }
            } catch (e_1_1) {
              e_1 = { error: e_1_1 };
            } finally {
              try {
                if (_c && !_c.done && (_a2 = _b2.return)) _a2.call(_b2);
              } finally {
                if (e_1) throw e_1.error;
              }
            }
          }
        });
      };
      Subject6.prototype.error = function(err2) {
        var _this = this;
        errorContext_1.errorContext(function() {
          _this._throwIfClosed();
          if (!_this.isStopped) {
            _this.hasError = _this.isStopped = true;
            _this.thrownError = err2;
            var observers = _this.observers;
            while (observers.length) {
              observers.shift().error(err2);
            }
          }
        });
      };
      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 _a2;
          return ((_a2 = this.observers) === null || _a2 === void 0 ? void 0 : _a2.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 _a2 = this, hasError = _a2.hasError, isStopped = _a2.isStopped, observers = _a2.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 _a2 = this, hasError = _a2.hasError, thrownError = _a2.thrownError, isStopped = _a2.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 _a2, _b2;
        (_b2 = (_a2 = this.destination) === null || _a2 === void 0 ? void 0 : _a2.next) === null || _b2 === void 0 ? void 0 : _b2.call(_a2, value);
      };
      AnonymousSubject2.prototype.error = function(err2) {
        var _a2, _b2;
        (_b2 = (_a2 = this.destination) === null || _a2 === void 0 ? void 0 : _a2.error) === null || _b2 === void 0 ? void 0 : _b2.call(_a2, err2);
      };
      AnonymousSubject2.prototype.complete = function() {
        var _a2, _b2;
        (_b2 = (_a2 = this.destination) === null || _a2 === void 0 ? void 0 : _a2.complete) === null || _b2 === void 0 ? void 0 : _b2.call(_a2);
      };
      AnonymousSubject2.prototype._subscribe = function(subscriber) {
        var _a2, _b2;
        return (_b2 = (_a2 = this.source) === null || _a2 === void 0 ? void 0 : _a2.subscribe(subscriber)) !== null && _b2 !== void 0 ? _b2 : Subscription_1.EMPTY_SUBSCRIPTION;
      };
      return AnonymousSubject2;
    })(Subject5);
    exports2.AnonymousSubject = AnonymousSubject;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/BehaviorSubject.js
var require_BehaviorSubject = __commonJS({
  "../../../../../setup-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(d3, b) {
        extendStatics2 = Object.setPrototypeOf || { __proto__: [] } instanceof Array && function(d4, b2) {
          d4.__proto__ = b2;
        } || function(d4, b2) {
          for (var p in b2) if (Object.prototype.hasOwnProperty.call(b2, p)) d4[p] = b2[p];
        };
        return extendStatics2(d3, b);
      };
      return function(d3, b) {
        if (typeof b !== "function" && b !== null)
          throw new TypeError("Class extends value " + String(b) + " is not a constructor or null");
        extendStatics2(d3, b);
        function __() {
          this.constructor = d3;
        }
        d3.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 _a2 = this, hasError = _a2.hasError, thrownError = _a2.thrownError, _value = _a2._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;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/scheduler/dateTimestampProvider.js
var require_dateTimestampProvider = __commonJS({
  "../../../../../setup-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
    };
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/ReplaySubject.js
var require_ReplaySubject = __commonJS({
  "../../../../../setup-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(d3, b) {
        extendStatics2 = Object.setPrototypeOf || { __proto__: [] } instanceof Array && function(d4, b2) {
          d4.__proto__ = b2;
        } || function(d4, b2) {
          for (var p in b2) if (Object.prototype.hasOwnProperty.call(b2, p)) d4[p] = b2[p];
        };
        return extendStatics2(d3, b);
      };
      return function(d3, b) {
        if (typeof b !== "function" && b !== null)
          throw new TypeError("Class extends value " + String(b) + " is not a constructor or null");
        extendStatics2(d3, b);
        function __() {
          this.constructor = d3;
        }
        d3.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 _a2 = this, isStopped = _a2.isStopped, _buffer = _a2._buffer, _infiniteTimeWindow = _a2._infiniteTimeWindow, _timestampProvider = _a2._timestampProvider, _windowTime = _a2._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 _a2 = this, _infiniteTimeWindow = _a2._infiniteTimeWindow, _buffer = _a2._buffer;
        var copy2 = _buffer.slice();
        for (var i4 = 0; i4 < copy2.length && !subscriber.closed; i4 += _infiniteTimeWindow ? 1 : 2) {
          subscriber.next(copy2[i4]);
        }
        this._checkFinalizedStatuses(subscriber);
        return subscription;
      };
      ReplaySubject2.prototype._trimBuffer = function() {
        var _a2 = this, _bufferSize = _a2._bufferSize, _timestampProvider = _a2._timestampProvider, _buffer = _a2._buffer, _infiniteTimeWindow = _a2._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 i4 = 1; i4 < _buffer.length && _buffer[i4] <= now; i4 += 2) {
            last = i4;
          }
          last && _buffer.splice(0, last + 1);
        }
      };
      return ReplaySubject2;
    })(Subject_1.Subject);
    exports2.ReplaySubject = ReplaySubject;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/AsyncSubject.js
var require_AsyncSubject = __commonJS({
  "../../../../../setup-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(d3, b) {
        extendStatics2 = Object.setPrototypeOf || { __proto__: [] } instanceof Array && function(d4, b2) {
          d4.__proto__ = b2;
        } || function(d4, b2) {
          for (var p in b2) if (Object.prototype.hasOwnProperty.call(b2, p)) d4[p] = b2[p];
        };
        return extendStatics2(d3, b);
      };
      return function(d3, b) {
        if (typeof b !== "function" && b !== null)
          throw new TypeError("Class extends value " + String(b) + " is not a constructor or null");
        extendStatics2(d3, b);
        function __() {
          this.constructor = d3;
        }
        d3.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 _a2 = this, hasError = _a2.hasError, _hasValue = _a2._hasValue, _value = _a2._value, thrownError = _a2.thrownError, isStopped = _a2.isStopped, _isComplete = _a2._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 _a2 = this, _hasValue = _a2._hasValue, _value = _a2._value, _isComplete = _a2._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;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/scheduler/Action.js
var require_Action = __commonJS({
  "../../../../../setup-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(d3, b) {
        extendStatics2 = Object.setPrototypeOf || { __proto__: [] } instanceof Array && function(d4, b2) {
          d4.__proto__ = b2;
        } || function(d4, b2) {
          for (var p in b2) if (Object.prototype.hasOwnProperty.call(b2, p)) d4[p] = b2[p];
        };
        return extendStatics2(d3, b);
      };
      return function(d3, b) {
        if (typeof b !== "function" && b !== null)
          throw new TypeError("Class extends value " + String(b) + " is not a constructor or null");
        extendStatics2(d3, b);
        function __() {
          this.constructor = d3;
        }
        d3.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;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/scheduler/intervalProvider.js
var require_intervalProvider = __commonJS({
  "../../../../../setup-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 i4 = m.call(o2), r, ar = [], e;
      try {
        while ((n2 === void 0 || n2-- > 0) && !(r = i4.next()).done) ar.push(r.value);
      } catch (error) {
        e = { error };
      } finally {
        try {
          if (r && !r.done && (m = i4["return"])) m.call(i4);
        } finally {
          if (e) throw e.error;
        }
      }
      return ar;
    };
    var __spreadArray2 = exports2 && exports2.__spreadArray || function(to, from5) {
      for (var i4 = 0, il = from5.length, j2 = to.length; i4 < il; i4++, j2++)
        to[j2] = from5[i4];
      return to;
    };
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.intervalProvider = void 0;
    exports2.intervalProvider = {
      setInterval: function(handler83, 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([handler83, timeout], __read2(args)));
        }
        return setInterval.apply(void 0, __spreadArray2([handler83, 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
    };
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/scheduler/AsyncAction.js
var require_AsyncAction = __commonJS({
  "../../../../../setup-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(d3, b) {
        extendStatics2 = Object.setPrototypeOf || { __proto__: [] } instanceof Array && function(d4, b2) {
          d4.__proto__ = b2;
        } || function(d4, b2) {
          for (var p in b2) if (Object.prototype.hasOwnProperty.call(b2, p)) d4[p] = b2[p];
        };
        return extendStatics2(d3, b);
      };
      return function(d3, b) {
        if (typeof b !== "function" && b !== null)
          throw new TypeError("Class extends value " + String(b) + " is not a constructor or null");
        extendStatics2(d3, b);
        function __() {
          this.constructor = d3;
        }
        d3.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 _a2;
        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 = (_a2 = this.id) !== null && _a2 !== void 0 ? _a2 : 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 _a2 = this, id = _a2.id, scheduler3 = _a2.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;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/util/Immediate.js
var require_Immediate = __commonJS({
  "../../../../../setup-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;
      }
    };
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/scheduler/immediateProvider.js
var require_immediateProvider = __commonJS({
  "../../../../../setup-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 i4 = m.call(o2), r, ar = [], e;
      try {
        while ((n2 === void 0 || n2-- > 0) && !(r = i4.next()).done) ar.push(r.value);
      } catch (error) {
        e = { error };
      } finally {
        try {
          if (r && !r.done && (m = i4["return"])) m.call(i4);
        } finally {
          if (e) throw e.error;
        }
      }
      return ar;
    };
    var __spreadArray2 = exports2 && exports2.__spreadArray || function(to, from5) {
      for (var i4 = 0, il = from5.length, j2 = to.length; i4 < il; i4++, j2++)
        to[j2] = from5[i4];
      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
    };
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/scheduler/AsapAction.js
var require_AsapAction = __commonJS({
  "../../../../../setup-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(d3, b) {
        extendStatics2 = Object.setPrototypeOf || { __proto__: [] } instanceof Array && function(d4, b2) {
          d4.__proto__ = b2;
        } || function(d4, b2) {
          for (var p in b2) if (Object.prototype.hasOwnProperty.call(b2, p)) d4[p] = b2[p];
        };
        return extendStatics2(d3, b);
      };
      return function(d3, b) {
        if (typeof b !== "function" && b !== null)
          throw new TypeError("Class extends value " + String(b) + " is not a constructor or null");
        extendStatics2(d3, b);
        function __() {
          this.constructor = d3;
        }
        d3.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 _a2;
        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 && ((_a2 = actions[actions.length - 1]) === null || _a2 === void 0 ? void 0 : _a2.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;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/Scheduler.js
var require_Scheduler = __commonJS({
  "../../../../../setup-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;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/scheduler/AsyncScheduler.js
var require_AsyncScheduler = __commonJS({
  "../../../../../setup-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(d3, b) {
        extendStatics2 = Object.setPrototypeOf || { __proto__: [] } instanceof Array && function(d4, b2) {
          d4.__proto__ = b2;
        } || function(d4, b2) {
          for (var p in b2) if (Object.prototype.hasOwnProperty.call(b2, p)) d4[p] = b2[p];
        };
        return extendStatics2(d3, b);
      };
      return function(d3, b) {
        if (typeof b !== "function" && b !== null)
          throw new TypeError("Class extends value " + String(b) + " is not a constructor or null");
        extendStatics2(d3, b);
        function __() {
          this.constructor = d3;
        }
        d3.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;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/scheduler/AsapScheduler.js
var require_AsapScheduler = __commonJS({
  "../../../../../setup-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(d3, b) {
        extendStatics2 = Object.setPrototypeOf || { __proto__: [] } instanceof Array && function(d4, b2) {
          d4.__proto__ = b2;
        } || function(d4, b2) {
          for (var p in b2) if (Object.prototype.hasOwnProperty.call(b2, p)) d4[p] = b2[p];
        };
        return extendStatics2(d3, b);
      };
      return function(d3, b) {
        if (typeof b !== "function" && b !== null)
          throw new TypeError("Class extends value " + String(b) + " is not a constructor or null");
        extendStatics2(d3, b);
        function __() {
          this.constructor = d3;
        }
        d3.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;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/scheduler/asap.js
var require_asap = __commonJS({
  "../../../../../setup-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;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/scheduler/async.js
var require_async9 = __commonJS({
  "../../../../../setup-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;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/scheduler/QueueAction.js
var require_QueueAction = __commonJS({
  "../../../../../setup-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(d3, b) {
        extendStatics2 = Object.setPrototypeOf || { __proto__: [] } instanceof Array && function(d4, b2) {
          d4.__proto__ = b2;
        } || function(d4, b2) {
          for (var p in b2) if (Object.prototype.hasOwnProperty.call(b2, p)) d4[p] = b2[p];
        };
        return extendStatics2(d3, b);
      };
      return function(d3, b) {
        if (typeof b !== "function" && b !== null)
          throw new TypeError("Class extends value " + String(b) + " is not a constructor or null");
        extendStatics2(d3, b);
        function __() {
          this.constructor = d3;
        }
        d3.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;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/scheduler/QueueScheduler.js
var require_QueueScheduler = __commonJS({
  "../../../../../setup-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(d3, b) {
        extendStatics2 = Object.setPrototypeOf || { __proto__: [] } instanceof Array && function(d4, b2) {
          d4.__proto__ = b2;
        } || function(d4, b2) {
          for (var p in b2) if (Object.prototype.hasOwnProperty.call(b2, p)) d4[p] = b2[p];
        };
        return extendStatics2(d3, b);
      };
      return function(d3, b) {
        if (typeof b !== "function" && b !== null)
          throw new TypeError("Class extends value " + String(b) + " is not a constructor or null");
        extendStatics2(d3, b);
        function __() {
          this.constructor = d3;
        }
        d3.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;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/scheduler/queue.js
var require_queue3 = __commonJS({
  "../../../../../setup-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;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/scheduler/AnimationFrameAction.js
var require_AnimationFrameAction = __commonJS({
  "../../../../../setup-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(d3, b) {
        extendStatics2 = Object.setPrototypeOf || { __proto__: [] } instanceof Array && function(d4, b2) {
          d4.__proto__ = b2;
        } || function(d4, b2) {
          for (var p in b2) if (Object.prototype.hasOwnProperty.call(b2, p)) d4[p] = b2[p];
        };
        return extendStatics2(d3, b);
      };
      return function(d3, b) {
        if (typeof b !== "function" && b !== null)
          throw new TypeError("Class extends value " + String(b) + " is not a constructor or null");
        extendStatics2(d3, b);
        function __() {
          this.constructor = d3;
        }
        d3.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 _a2;
        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 && ((_a2 = actions[actions.length - 1]) === null || _a2 === void 0 ? void 0 : _a2.id) !== id) {
          animationFrameProvider_1.animationFrameProvider.cancelAnimationFrame(id);
          scheduler3._scheduled = void 0;
        }
        return void 0;
      };
      return AnimationFrameAction2;
    })(AsyncAction_1.AsyncAction);
    exports2.AnimationFrameAction = AnimationFrameAction;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/scheduler/AnimationFrameScheduler.js
var require_AnimationFrameScheduler = __commonJS({
  "../../../../../setup-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(d3, b) {
        extendStatics2 = Object.setPrototypeOf || { __proto__: [] } instanceof Array && function(d4, b2) {
          d4.__proto__ = b2;
        } || function(d4, b2) {
          for (var p in b2) if (Object.prototype.hasOwnProperty.call(b2, p)) d4[p] = b2[p];
        };
        return extendStatics2(d3, b);
      };
      return function(d3, b) {
        if (typeof b !== "function" && b !== null)
          throw new TypeError("Class extends value " + String(b) + " is not a constructor or null");
        extendStatics2(d3, b);
        function __() {
          this.constructor = d3;
        }
        d3.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;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/scheduler/animationFrame.js
var require_animationFrame = __commonJS({
  "../../../../../setup-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;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/scheduler/VirtualTimeScheduler.js
var require_VirtualTimeScheduler = __commonJS({
  "../../../../../setup-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(d3, b) {
        extendStatics2 = Object.setPrototypeOf || { __proto__: [] } instanceof Array && function(d4, b2) {
          d4.__proto__ = b2;
        } || function(d4, b2) {
          for (var p in b2) if (Object.prototype.hasOwnProperty.call(b2, p)) d4[p] = b2[p];
        };
        return extendStatics2(d3, b);
      };
      return function(d3, b) {
        if (typeof b !== "function" && b !== null)
          throw new TypeError("Class extends value " + String(b) + " is not a constructor or null");
        extendStatics2(d3, b);
        function __() {
          this.constructor = d3;
        }
        d3.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 _a2 = this, actions = _a2.actions, maxFrames = _a2.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, index2) {
        if (index2 === void 0) {
          index2 = scheduler3.index += 1;
        }
        var _this = _super.call(this, scheduler3, work) || this;
        _this.scheduler = scheduler3;
        _this.work = work;
        _this.index = index2;
        _this.active = true;
        _this.index = scheduler3.index = index2;
        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;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/observable/empty.js
var require_empty3 = __commonJS({
  "../../../../../setup-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();
        });
      });
    }
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/util/isScheduler.js
var require_isScheduler = __commonJS({
  "../../../../../setup-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;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/util/args.js
var require_args = __commonJS({
  "../../../../../setup-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;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/util/isArrayLike.js
var require_isArrayLike2 = __commonJS({
  "../../../../../setup-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(x3) {
      return x3 && typeof x3.length === "number" && typeof x3 !== "function";
    });
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/util/isPromise.js
var require_isPromise2 = __commonJS({
  "../../../../../setup-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;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/util/isInteropObservable.js
var require_isInteropObservable = __commonJS({
  "../../../../../setup-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;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/util/isAsyncIterable.js
var require_isAsyncIterable = __commonJS({
  "../../../../../setup-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;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/util/throwUnobservableError.js
var require_throwUnobservableError = __commonJS({
  "../../../../../setup-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;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/symbol/iterator.js
var require_iterator2 = __commonJS({
  "../../../../../setup-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();
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/util/isIterable.js
var require_isIterable2 = __commonJS({
  "../../../../../setup-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;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/util/isReadableStreamLike.js
var require_isReadableStreamLike = __commonJS({
  "../../../../../setup-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 || []), i4, q = [];
      return i4 = {}, verb("next"), verb("throw"), verb("return"), i4[Symbol.asyncIterator] = function() {
        return this;
      }, i4;
      function verb(n2) {
        if (g[n2]) i4[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, _a2, value, done;
        return __generator2(this, function(_b2) {
          switch (_b2.label) {
            case 0:
              reader = readableStream.getReader();
              _b2.label = 1;
            case 1:
              _b2.trys.push([1, , 9, 10]);
              _b2.label = 2;
            case 2:
              if (false) return [3, 8];
              return [4, __await2(reader.read())];
            case 3:
              _a2 = _b2.sent(), value = _a2.value, done = _a2.done;
              if (!done) return [3, 5];
              return [4, __await2(void 0)];
            case 4:
              return [2, _b2.sent()];
            case 5:
              return [4, __await2(value)];
            case 6:
              return [4, _b2.sent()];
            case 7:
              _b2.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;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/observable/innerFrom.js
var require_innerFrom = __commonJS({
  "../../../../../setup-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(resolve4) {
          resolve4(value);
        });
      }
      return new (P2 || (P2 = Promise))(function(resolve4, 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 ? resolve4(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], i4;
      return m ? m.call(o2) : (o2 = typeof __values2 === "function" ? __values2(o2) : o2[Symbol.iterator](), i4 = {}, verb("next"), verb("throw"), verb("return"), i4[Symbol.asyncIterator] = function() {
        return this;
      }, i4);
      function verb(n2) {
        i4[n2] = o2[n2] && function(v) {
          return new Promise(function(resolve4, reject3) {
            v = o2[n2](v), settle(resolve4, reject3, v.done, v.value);
          });
        };
      }
      function settle(resolve4, reject3, d3, v) {
        Promise.resolve(v).then(function(v2) {
          resolve4({ value: v2, done: d3 });
        }, reject3);
      }
    };
    var __values2 = exports2 && exports2.__values || function(o2) {
      var s = typeof Symbol === "function" && Symbol.iterator, m = s && o2[s], i4 = 0;
      if (m) return m.call(o2);
      if (o2 && typeof o2.length === "number") return {
        next: function() {
          if (o2 && i4 >= o2.length) o2 = void 0;
          return { value: o2 && o2[i4++], 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_isPromise2();
    var Observable_1 = require_Observable();
    var isInteropObservable_1 = require_isInteropObservable();
    var isAsyncIterable_1 = require_isAsyncIterable();
    var throwUnobservableError_1 = require_throwUnobservableError();
    var isIterable_1 = require_isIterable2();
    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 i4 = 0; i4 < array.length && !subscriber.closed; i4++) {
          subscriber.next(array[i4]);
        }
        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(err2) {
          return subscriber.error(err2);
        }).then(null, reportUnhandledError_1.reportUnhandledError);
      });
    }
    exports2.fromPromise = fromPromise;
    function fromIterable(iterable) {
      return new Observable_1.Observable(function(subscriber) {
        var e_1, _a2;
        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 && (_a2 = iterable_1.return)) _a2.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) {
        process25(asyncIterable, subscriber).catch(function(err2) {
          return subscriber.error(err2);
        });
      });
    }
    exports2.fromAsyncIterable = fromAsyncIterable;
    function fromReadableStreamLike(readableStream) {
      return fromAsyncIterable(isReadableStreamLike_1.readableStreamLikeToAsyncGenerator(readableStream));
    }
    exports2.fromReadableStreamLike = fromReadableStreamLike;
    function process25(asyncIterable, subscriber) {
      var asyncIterable_1, asyncIterable_1_1;
      var e_2, _a2;
      return __awaiter2(this, void 0, void 0, function() {
        var value, e_2_1;
        return __generator2(this, function(_b2) {
          switch (_b2.label) {
            case 0:
              _b2.trys.push([0, 5, 6, 11]);
              asyncIterable_1 = __asyncValues2(asyncIterable);
              _b2.label = 1;
            case 1:
              return [4, asyncIterable_1.next()];
            case 2:
              if (!(asyncIterable_1_1 = _b2.sent(), !asyncIterable_1_1.done)) return [3, 4];
              value = asyncIterable_1_1.value;
              subscriber.next(value);
              if (subscriber.closed) {
                return [2];
              }
              _b2.label = 3;
            case 3:
              return [3, 1];
            case 4:
              return [3, 11];
            case 5:
              e_2_1 = _b2.sent();
              e_2 = { error: e_2_1 };
              return [3, 11];
            case 6:
              _b2.trys.push([6, , 9, 10]);
              if (!(asyncIterable_1_1 && !asyncIterable_1_1.done && (_a2 = asyncIterable_1.return))) return [3, 8];
              return [4, _a2.call(asyncIterable_1)];
            case 7:
              _b2.sent();
              _b2.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];
          }
        });
      });
    }
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/util/executeSchedule.js
var require_executeSchedule = __commonJS({
  "../../../../../setup-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;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/operators/observeOn.js
var require_observeOn = __commonJS({
  "../../../../../setup-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(err2) {
          return executeSchedule_1.executeSchedule(subscriber, scheduler3, function() {
            return subscriber.error(err2);
          }, delay);
        }));
      });
    }
    exports2.observeOn = observeOn;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/operators/subscribeOn.js
var require_subscribeOn = __commonJS({
  "../../../../../setup-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;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/scheduled/scheduleObservable.js
var require_scheduleObservable = __commonJS({
  "../../../../../setup-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;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/scheduled/schedulePromise.js
var require_schedulePromise = __commonJS({
  "../../../../../setup-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;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/scheduled/scheduleArray.js
var require_scheduleArray = __commonJS({
  "../../../../../setup-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 i4 = 0;
        return scheduler3.schedule(function() {
          if (i4 === input.length) {
            subscriber.complete();
          } else {
            subscriber.next(input[i4++]);
            if (!subscriber.closed) {
              this.schedule();
            }
          }
        });
      });
    }
    exports2.scheduleArray = scheduleArray;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/scheduled/scheduleIterable.js
var require_scheduleIterable = __commonJS({
  "../../../../../setup-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 _a2;
            var value;
            var done;
            try {
              _a2 = iterator.next(), value = _a2.value, done = _a2.done;
            } catch (err2) {
              subscriber.error(err2);
              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;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/scheduled/scheduleAsyncIterable.js
var require_scheduleAsyncIterable = __commonJS({
  "../../../../../setup-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;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/scheduled/scheduleReadableStreamLike.js
var require_scheduleReadableStreamLike = __commonJS({
  "../../../../../setup-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;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/scheduled/scheduled.js
var require_scheduled = __commonJS({
  "../../../../../setup-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_isPromise2();
    var isArrayLike_1 = require_isArrayLike2();
    var isIterable_1 = require_isIterable2();
    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;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/observable/from.js
var require_from = __commonJS({
  "../../../../../setup-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;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/observable/of.js
var require_of = __commonJS({
  "../../../../../setup-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;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/observable/throwError.js
var require_throwError = __commonJS({
  "../../../../../setup-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;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/Notification.js
var require_Notification = __commonJS({
  "../../../../../setup-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 _a2 = this, kind = _a2.kind, value = _a2.value, error = _a2.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 _a2;
        return isFunction_1.isFunction((_a2 = nextOrObserver) === null || _a2 === void 0 ? void 0 : _a2.next) ? this.observe(nextOrObserver) : this.do(nextOrObserver, error, complete2);
      };
      Notification2.prototype.toObservable = function() {
        var _a2 = this, kind = _a2.kind, value = _a2.value, error = _a2.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(err2) {
        return new Notification2("E", void 0, err2);
      };
      Notification2.createComplete = function() {
        return Notification2.completeNotification;
      };
      Notification2.completeNotification = new Notification2("C");
      return Notification2;
    })();
    exports2.Notification = Notification;
    function observeNotification(notification, observer) {
      var _a2, _b2, _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" ? (_a2 = observer.next) === null || _a2 === void 0 ? void 0 : _a2.call(observer, value) : kind === "E" ? (_b2 = observer.error) === null || _b2 === void 0 ? void 0 : _b2.call(observer, error) : (_c = observer.complete) === null || _c === void 0 ? void 0 : _c.call(observer);
    }
    exports2.observeNotification = observeNotification;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/util/isObservable.js
var require_isObservable = __commonJS({
  "../../../../../setup-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;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/util/EmptyError.js
var require_EmptyError = __commonJS({
  "../../../../../setup-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";
      };
    });
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/lastValueFrom.js
var require_lastValueFrom = __commonJS({
  "../../../../../setup-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, config2) {
      var hasConfig = typeof config2 === "object";
      return new Promise(function(resolve4, reject3) {
        var _hasValue = false;
        var _value;
        source.subscribe({
          next: function(value) {
            _value = value;
            _hasValue = true;
          },
          error: reject3,
          complete: function() {
            if (_hasValue) {
              resolve4(_value);
            } else if (hasConfig) {
              resolve4(config2.defaultValue);
            } else {
              reject3(new EmptyError_1.EmptyError());
            }
          }
        });
      });
    }
    exports2.lastValueFrom = lastValueFrom;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/firstValueFrom.js
var require_firstValueFrom = __commonJS({
  "../../../../../setup-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, config2) {
      var hasConfig = typeof config2 === "object";
      return new Promise(function(resolve4, reject3) {
        var subscriber = new Subscriber_1.SafeSubscriber({
          next: function(value) {
            resolve4(value);
            subscriber.unsubscribe();
          },
          error: reject3,
          complete: function() {
            if (hasConfig) {
              resolve4(config2.defaultValue);
            } else {
              reject3(new EmptyError_1.EmptyError());
            }
          }
        });
        source.subscribe(subscriber);
      });
    }
    exports2.firstValueFrom = firstValueFrom;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/util/ArgumentOutOfRangeError.js
var require_ArgumentOutOfRangeError = __commonJS({
  "../../../../../setup-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";
      };
    });
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/util/NotFoundError.js
var require_NotFoundError = __commonJS({
  "../../../../../setup-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;
      };
    });
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/util/SequenceError.js
var require_SequenceError = __commonJS({
  "../../../../../setup-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;
      };
    });
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/util/isDate.js
var require_isDate3 = __commonJS({
  "../../../../../setup-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;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/operators/timeout.js
var require_timeout = __commonJS({
  "../../../../../setup-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(config2, schedulerArg) {
      var _a2 = isDate_1.isValidDate(config2) ? { first: config2 } : typeof config2 === "number" ? { each: config2 } : config2, first = _a2.first, each = _a2.each, _b2 = _a2.with, _with = _b2 === void 0 ? timeoutErrorFactory : _b2, _c = _a2.scheduler, scheduler3 = _c === void 0 ? schedulerArg !== null && schedulerArg !== void 0 ? schedulerArg : async_1.asyncScheduler : _c, _d = _a2.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 (err2) {
              subscriber.error(err2);
            }
          }, 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);
    }
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/operators/map.js
var require_map4 = __commonJS({
  "../../../../../setup-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 index2 = 0;
        source.subscribe(OperatorSubscriber_1.createOperatorSubscriber(subscriber, function(value) {
          subscriber.next(project.call(thisArg, value, index2++));
        }));
      });
    }
    exports2.map = map26;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/util/mapOneOrManyArgs.js
var require_mapOneOrManyArgs = __commonJS({
  "../../../../../setup-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 i4 = m.call(o2), r, ar = [], e;
      try {
        while ((n2 === void 0 || n2-- > 0) && !(r = i4.next()).done) ar.push(r.value);
      } catch (error) {
        e = { error };
      } finally {
        try {
          if (r && !r.done && (m = i4["return"])) m.call(i4);
        } finally {
          if (e) throw e.error;
        }
      }
      return ar;
    };
    var __spreadArray2 = exports2 && exports2.__spreadArray || function(to, from5) {
      for (var i4 = 0, il = from5.length, j2 = to.length; i4 < il; i4++, j2++)
        to[j2] = from5[i4];
      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;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/observable/bindCallbackInternals.js
var require_bindCallbackInternals = __commonJS({
  "../../../../../setup-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 i4 = m.call(o2), r, ar = [], e;
      try {
        while ((n2 === void 0 || n2-- > 0) && !(r = i4.next()).done) ar.push(r.value);
      } catch (error) {
        e = { error };
      } finally {
        try {
          if (r && !r.done && (m = i4["return"])) m.call(i4);
        } finally {
          if (e) throw e.error;
        }
      }
      return ar;
    };
    var __spreadArray2 = exports2 && exports2.__spreadArray || function(to, from5) {
      for (var i4 = 0, il = from5.length, j2 = to.length; i4 < il; i4++, j2++)
        to[j2] = from5[i4];
      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 err2 = results.shift();
                  if (err2 != null) {
                    subject.error(err2);
                    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;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/observable/bindCallback.js
var require_bindCallback = __commonJS({
  "../../../../../setup-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;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/observable/bindNodeCallback.js
var require_bindNodeCallback = __commonJS({
  "../../../../../setup-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;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/util/argsArgArrayOrObject.js
var require_argsArgArrayOrObject = __commonJS({
  "../../../../../setup-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;
    }
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/util/createObject.js
var require_createObject = __commonJS({
  "../../../../../setup-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, i4) {
        return result2[key] = values[i4], result2;
      }, {});
    }
    exports2.createObject = createObject;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/observable/combineLatest.js
var require_combineLatest = __commonJS({
  "../../../../../setup-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 _a2 = argsArgArrayOrObject_1.argsArgArrayOrObject(args), observables = _a2.args, keys4 = _a2.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(i5) {
            maybeSchedule(scheduler3, function() {
              var source = from_1.from(observables[i5], scheduler3);
              var hasFirstValue = false;
              source.subscribe(OperatorSubscriber_1.createOperatorSubscriber(subscriber, function(value) {
                values[i5] = value;
                if (!hasFirstValue) {
                  hasFirstValue = true;
                  remainingFirstValues--;
                }
                if (!remainingFirstValues) {
                  subscriber.next(valueTransform(values.slice()));
                }
              }, function() {
                if (!--active) {
                  subscriber.complete();
                }
              }));
            }, subscriber);
          };
          for (var i4 = 0; i4 < length; i4++) {
            _loop_1(i4);
          }
        }, subscriber);
      };
    }
    exports2.combineLatestInit = combineLatestInit;
    function maybeSchedule(scheduler3, execute2, subscription) {
      if (scheduler3) {
        executeSchedule_1.executeSchedule(subscription, scheduler3, execute2);
      } else {
        execute2();
      }
    }
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/operators/mergeInternals.js
var require_mergeInternals = __commonJS({
  "../../../../../setup-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 index2 = 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, index2++)).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 (err2) {
              subscriber.error(err2);
            }
          }
        }));
      };
      source.subscribe(OperatorSubscriber_1.createOperatorSubscriber(subscriber, outerNext, function() {
        isComplete = true;
        checkComplete();
      }));
      return function() {
        additionalFinalizer === null || additionalFinalizer === void 0 ? void 0 : additionalFinalizer();
      };
    }
    exports2.mergeInternals = mergeInternals;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/operators/mergeMap.js
var require_mergeMap = __commonJS({
  "../../../../../setup-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, i4) {
          return map_1.map(function(b, ii) {
            return resultSelector(a2, b, i4, ii);
          })(innerFrom_1.innerFrom(project(a2, i4)));
        }, 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;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/operators/mergeAll.js
var require_mergeAll = __commonJS({
  "../../../../../setup-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;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/operators/concatAll.js
var require_concatAll = __commonJS({
  "../../../../../setup-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;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/observable/concat.js
var require_concat2 = __commonJS({
  "../../../../../setup-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 concat2() {
      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 = concat2;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/observable/defer.js
var require_defer2 = __commonJS({
  "../../../../../setup-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;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/observable/connectable.js
var require_connectable = __commonJS({
  "../../../../../setup-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, config2) {
      if (config2 === void 0) {
        config2 = DEFAULT_CONFIG;
      }
      var connection = null;
      var connector = config2.connector, _a2 = config2.resetOnDisconnect, resetOnDisconnect = _a2 === void 0 ? true : _a2;
      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;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/observable/forkJoin.js
var require_forkJoin = __commonJS({
  "../../../../../setup-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 _a2 = argsArgArrayOrObject_1.argsArgArrayOrObject(args), sources = _a2.args, keys4 = _a2.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;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/observable/fromEvent.js
var require_fromEvent = __commonJS({
  "../../../../../setup-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 i4 = m.call(o2), r, ar = [], e;
      try {
        while ((n2 === void 0 || n2-- > 0) && !(r = i4.next()).done) ar.push(r.value);
      } catch (error) {
        e = { error };
      } finally {
        try {
          if (r && !r.done && (m = i4["return"])) m.call(i4);
        } 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 _a2 = __read2(isEventTarget(target2) ? eventTargetMethods.map(function(methodName) {
        return function(handler83) {
          return target2[methodName](eventName, handler83, options);
        };
      }) : isNodeStyleEventEmitter(target2) ? nodeEventEmitterMethods.map(toCommonHandlerRegistry(target2, eventName)) : isJQueryStyleEventEmitter(target2) ? jqueryMethods.map(toCommonHandlerRegistry(target2, eventName)) : [], 2), add2 = _a2[0], remove = _a2[1];
      if (!add2) {
        if (isArrayLike_1.isArrayLike(target2)) {
          return mergeMap_1.mergeMap(function(subTarget) {
            return fromEvent(subTarget, eventName, options);
          })(innerFrom_1.innerFrom(target2));
        }
      }
      if (!add2) {
        throw new TypeError("Invalid event target");
      }
      return new Observable_1.Observable(function(subscriber) {
        var handler83 = function() {
          var args = [];
          for (var _i = 0; _i < arguments.length; _i++) {
            args[_i] = arguments[_i];
          }
          return subscriber.next(1 < args.length ? args : args[0]);
        };
        add2(handler83);
        return function() {
          return remove(handler83);
        };
      });
    }
    exports2.fromEvent = fromEvent;
    function toCommonHandlerRegistry(target2, eventName) {
      return function(methodName) {
        return function(handler83) {
          return target2[methodName](eventName, handler83);
        };
      };
    }
    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);
    }
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/observable/fromEventPattern.js
var require_fromEventPattern = __commonJS({
  "../../../../../setup-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 handler83 = 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(handler83);
        return isFunction_1.isFunction(removeHandler) ? function() {
          return removeHandler(handler83, retValue);
        } : void 0;
      });
    }
    exports2.fromEventPattern = fromEventPattern;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/observable/generate.js
var require_generate = __commonJS({
  "../../../../../setup-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 _a2, _b2;
      var resultSelector;
      var initialState;
      if (arguments.length === 1) {
        _a2 = initialStateOrOptions, initialState = _a2.initialState, condition = _a2.condition, iterate = _a2.iterate, _b2 = _a2.resultSelector, resultSelector = _b2 === void 0 ? identity_1.identity : _b2, scheduler3 = _a2.scheduler;
      } else {
        initialState = initialStateOrOptions;
        if (!resultSelectorOrScheduler || isScheduler_1.isScheduler(resultSelectorOrScheduler)) {
          resultSelector = identity_1.identity;
          scheduler3 = resultSelectorOrScheduler;
        } else {
          resultSelector = resultSelectorOrScheduler;
        }
      }
      function gen2() {
        var state;
        return __generator2(this, function(_a3) {
          switch (_a3.label) {
            case 0:
              state = initialState;
              _a3.label = 1;
            case 1:
              if (!(!condition || condition(state))) return [3, 4];
              return [4, resultSelector(state)];
            case 2:
              _a3.sent();
              _a3.label = 3;
            case 3:
              state = iterate(state);
              return [3, 1];
            case 4:
              return [2];
          }
        });
      }
      return defer_1.defer(scheduler3 ? function() {
        return scheduleIterable_1.scheduleIterable(gen2(), scheduler3);
      } : gen2);
    }
    exports2.generate = generate;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/observable/iif.js
var require_iif = __commonJS({
  "../../../../../setup-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;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/observable/timer.js
var require_timer2 = __commonJS({
  "../../../../../setup-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;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/observable/interval.js
var require_interval = __commonJS({
  "../../../../../setup-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;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/observable/merge.js
var require_merge5 = __commonJS({
  "../../../../../setup-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;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/observable/never.js
var require_never = __commonJS({
  "../../../../../setup-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;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/util/argsOrArgArray.js
var require_argsOrArgArray = __commonJS({
  "../../../../../setup-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;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/observable/onErrorResumeNext.js
var require_onErrorResumeNext = __commonJS({
  "../../../../../setup-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 (err2) {
              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;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/observable/pairs.js
var require_pairs3 = __commonJS({
  "../../../../../setup-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;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/util/not.js
var require_not = __commonJS({
  "../../../../../setup-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, index2) {
        return !pred.call(thisArg, value, index2);
      };
    }
    exports2.not = not;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/operators/filter.js
var require_filter3 = __commonJS({
  "../../../../../setup-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 index2 = 0;
        source.subscribe(OperatorSubscriber_1.createOperatorSubscriber(subscriber, function(value) {
          return predicate.call(thisArg, value, index2++) && subscriber.next(value);
        }));
      });
    }
    exports2.filter = filter14;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/observable/partition.js
var require_partition2 = __commonJS({
  "../../../../../setup-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;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/observable/race.js
var require_race = __commonJS({
  "../../../../../setup-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(i5) {
          subscriptions.push(innerFrom_1.innerFrom(sources[i5]).subscribe(OperatorSubscriber_1.createOperatorSubscriber(subscriber, function(value) {
            if (subscriptions) {
              for (var s = 0; s < subscriptions.length; s++) {
                s !== i5 && subscriptions[s].unsubscribe();
              }
              subscriptions = null;
            }
            subscriber.next(value);
          })));
        };
        for (var i4 = 0; subscriptions && !subscriber.closed && i4 < sources.length; i4++) {
          _loop_1(i4);
        }
      };
    }
    exports2.raceInit = raceInit;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/observable/range.js
var require_range5 = __commonJS({
  "../../../../../setup-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;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/observable/using.js
var require_using = __commonJS({
  "../../../../../setup-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;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/observable/zip.js
var require_zip3 = __commonJS({
  "../../../../../setup-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 i4 = m.call(o2), r, ar = [], e;
      try {
        while ((n2 === void 0 || n2-- > 0) && !(r = i4.next()).done) ar.push(r.value);
      } catch (error) {
        e = { error };
      } finally {
        try {
          if (r && !r.done && (m = i4["return"])) m.call(i4);
        } finally {
          if (e) throw e.error;
        }
      }
      return ar;
    };
    var __spreadArray2 = exports2 && exports2.__spreadArray || function(to, from5) {
      for (var i4 = 0, il = from5.length, j2 = to.length; i4 < il; i4++, j2++)
        to[j2] = from5[i4];
      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, i4) {
                return !buffer3.length && completed[i4];
              })) {
                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;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/types.js
var require_types3 = __commonJS({
  "../../../../../setup-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 });
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/operators/audit.js
var require_audit = __commonJS({
  "../../../../../setup-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;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/operators/auditTime.js
var require_auditTime = __commonJS({
  "../../../../../setup-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;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/operators/buffer.js
var require_buffer = __commonJS({
  "../../../../../setup-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;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/operators/bufferCount.js
var require_bufferCount = __commonJS({
  "../../../../../setup-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], i4 = 0;
      if (m) return m.call(o2);
      if (o2 && typeof o2.length === "number") return {
        next: function() {
          if (o2 && i4 >= o2.length) o2 = void 0;
          return { value: o2 && o2[i4++], 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, _a2, e_2, _b2;
          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 && (_a2 = buffers_1.return)) _a2.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 && (_b2 = toEmit_1.return)) _b2.call(toEmit_1);
              } finally {
                if (e_2) throw e_2.error;
              }
            }
          }
        }, function() {
          var e_3, _a2;
          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 && (_a2 = buffers_2.return)) _a2.call(buffers_2);
            } finally {
              if (e_3) throw e_3.error;
            }
          }
          subscriber.complete();
        }, void 0, function() {
          buffers = null;
        }));
      });
    }
    exports2.bufferCount = bufferCount;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/operators/bufferTime.js
var require_bufferTime = __commonJS({
  "../../../../../setup-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], i4 = 0;
      if (m) return m.call(o2);
      if (o2 && typeof o2.length === "number") return {
        next: function() {
          if (o2 && i4 >= o2.length) o2 = void 0;
          return { value: o2 && o2[i4++], 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 _a2, _b2;
      var otherArgs = [];
      for (var _i = 1; _i < arguments.length; _i++) {
        otherArgs[_i - 1] = arguments[_i];
      }
      var scheduler3 = (_a2 = args_1.popScheduler(otherArgs)) !== null && _a2 !== void 0 ? _a2 : async_1.asyncScheduler;
      var bufferCreationInterval = (_b2 = otherArgs[0]) !== null && _b2 !== void 0 ? _b2 : 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, _a3;
          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 && (_a3 = recordsCopy_1.return)) _a3.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;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/operators/bufferToggle.js
var require_bufferToggle = __commonJS({
  "../../../../../setup-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], i4 = 0;
      if (m) return m.call(o2);
      if (o2 && typeof o2.length === "number") return {
        next: function() {
          if (o2 && i4 >= o2.length) o2 = void 0;
          return { value: o2 && o2[i4++], 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, _a2;
          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 && (_a2 = buffers_1.return)) _a2.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;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/operators/bufferWhen.js
var require_bufferWhen = __commonJS({
  "../../../../../setup-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;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/operators/catchError.js
var require_catchError = __commonJS({
  "../../../../../setup-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(err2) {
          handledResult = innerFrom_1.innerFrom(selector(err2, 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;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/operators/scanInternals.js
var require_scanInternals = __commonJS({
  "../../../../../setup-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 index2 = 0;
        source.subscribe(OperatorSubscriber_1.createOperatorSubscriber(subscriber, function(value) {
          var i4 = index2++;
          state = hasState ? accumulator(state, value, i4) : (hasState = true, value);
          emitOnNext && subscriber.next(state);
        }, emitBeforeComplete && (function() {
          hasState && subscriber.next(state);
          subscriber.complete();
        })));
      };
    }
    exports2.scanInternals = scanInternals;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/operators/reduce.js
var require_reduce2 = __commonJS({
  "../../../../../setup-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 reduce5(accumulator, seed) {
      return lift_1.operate(scanInternals_1.scanInternals(accumulator, seed, arguments.length >= 2, false, true));
    }
    exports2.reduce = reduce5;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/operators/toArray.js
var require_toArray3 = __commonJS({
  "../../../../../setup-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;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/operators/joinAllInternals.js
var require_joinAllInternals = __commonJS({
  "../../../../../setup-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;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/operators/combineLatestAll.js
var require_combineLatestAll = __commonJS({
  "../../../../../setup-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;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/operators/combineAll.js
var require_combineAll = __commonJS({
  "../../../../../setup-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;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/operators/combineLatest.js
var require_combineLatest2 = __commonJS({
  "../../../../../setup-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 i4 = m.call(o2), r, ar = [], e;
      try {
        while ((n2 === void 0 || n2-- > 0) && !(r = i4.next()).done) ar.push(r.value);
      } catch (error) {
        e = { error };
      } finally {
        try {
          if (r && !r.done && (m = i4["return"])) m.call(i4);
        } finally {
          if (e) throw e.error;
        }
      }
      return ar;
    };
    var __spreadArray2 = exports2 && exports2.__spreadArray || function(to, from5) {
      for (var i4 = 0, il = from5.length, j2 = to.length; i4 < il; i4++, j2++)
        to[j2] = from5[i4];
      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;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/operators/combineLatestWith.js
var require_combineLatestWith = __commonJS({
  "../../../../../setup-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 i4 = m.call(o2), r, ar = [], e;
      try {
        while ((n2 === void 0 || n2-- > 0) && !(r = i4.next()).done) ar.push(r.value);
      } catch (error) {
        e = { error };
      } finally {
        try {
          if (r && !r.done && (m = i4["return"])) m.call(i4);
        } finally {
          if (e) throw e.error;
        }
      }
      return ar;
    };
    var __spreadArray2 = exports2 && exports2.__spreadArray || function(to, from5) {
      for (var i4 = 0, il = from5.length, j2 = to.length; i4 < il; i4++, j2++)
        to[j2] = from5[i4];
      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;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/operators/concatMap.js
var require_concatMap = __commonJS({
  "../../../../../setup-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;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/operators/concatMapTo.js
var require_concatMapTo = __commonJS({
  "../../../../../setup-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;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/operators/concat.js
var require_concat3 = __commonJS({
  "../../../../../setup-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 i4 = m.call(o2), r, ar = [], e;
      try {
        while ((n2 === void 0 || n2-- > 0) && !(r = i4.next()).done) ar.push(r.value);
      } catch (error) {
        e = { error };
      } finally {
        try {
          if (r && !r.done && (m = i4["return"])) m.call(i4);
        } finally {
          if (e) throw e.error;
        }
      }
      return ar;
    };
    var __spreadArray2 = exports2 && exports2.__spreadArray || function(to, from5) {
      for (var i4 = 0, il = from5.length, j2 = to.length; i4 < il; i4++, j2++)
        to[j2] = from5[i4];
      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 concat2() {
      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 = concat2;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/operators/concatWith.js
var require_concatWith = __commonJS({
  "../../../../../setup-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 i4 = m.call(o2), r, ar = [], e;
      try {
        while ((n2 === void 0 || n2-- > 0) && !(r = i4.next()).done) ar.push(r.value);
      } catch (error) {
        e = { error };
      } finally {
        try {
          if (r && !r.done && (m = i4["return"])) m.call(i4);
        } finally {
          if (e) throw e.error;
        }
      }
      return ar;
    };
    var __spreadArray2 = exports2 && exports2.__spreadArray || function(to, from5) {
      for (var i4 = 0, il = from5.length, j2 = to.length; i4 < il; i4++, j2++)
        to[j2] = from5[i4];
      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;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/observable/fromSubscribable.js
var require_fromSubscribable = __commonJS({
  "../../../../../setup-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;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/operators/connect.js
var require_connect2 = __commonJS({
  "../../../../../setup-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, config2) {
      if (config2 === void 0) {
        config2 = DEFAULT_CONFIG;
      }
      var connector = config2.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;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/operators/count.js
var require_count = __commonJS({
  "../../../../../setup-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, i4) {
        return !predicate || predicate(value, i4) ? total + 1 : total;
      }, 0);
    }
    exports2.count = count2;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/operators/debounce.js
var require_debounce3 = __commonJS({
  "../../../../../setup-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;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/operators/debounceTime.js
var require_debounceTime = __commonJS({
  "../../../../../setup-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;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/operators/defaultIfEmpty.js
var require_defaultIfEmpty = __commonJS({
  "../../../../../setup-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;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/operators/take.js
var require_take3 = __commonJS({
  "../../../../../setup-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;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/operators/ignoreElements.js
var require_ignoreElements = __commonJS({
  "../../../../../setup-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;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/operators/mapTo.js
var require_mapTo = __commonJS({
  "../../../../../setup-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;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/operators/delayWhen.js
var require_delayWhen = __commonJS({
  "../../../../../setup-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, index2) {
        return innerFrom_1.innerFrom(delayDurationSelector(value, index2)).pipe(take_1.take(1), mapTo_1.mapTo(value));
      });
    }
    exports2.delayWhen = delayWhen;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/operators/delay.js
var require_delay2 = __commonJS({
  "../../../../../setup-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;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/operators/dematerialize.js
var require_dematerialize = __commonJS({
  "../../../../../setup-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;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/operators/distinct.js
var require_distinct = __commonJS({
  "../../../../../setup-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;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/operators/distinctUntilChanged.js
var require_distinctUntilChanged = __commonJS({
  "../../../../../setup-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;
    }
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/operators/distinctUntilKeyChanged.js
var require_distinctUntilKeyChanged = __commonJS({
  "../../../../../setup-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, compare3) {
      return distinctUntilChanged_1.distinctUntilChanged(function(x3, y) {
        return compare3 ? compare3(x3[key], y[key]) : x3[key] === y[key];
      });
    }
    exports2.distinctUntilKeyChanged = distinctUntilKeyChanged;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/operators/throwIfEmpty.js
var require_throwIfEmpty = __commonJS({
  "../../../../../setup-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();
    }
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/operators/elementAt.js
var require_elementAt = __commonJS({
  "../../../../../setup-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(index2, defaultValue) {
      if (index2 < 0) {
        throw new ArgumentOutOfRangeError_1.ArgumentOutOfRangeError();
      }
      var hasDefaultValue = arguments.length >= 2;
      return function(source) {
        return source.pipe(filter_1.filter(function(v, i4) {
          return i4 === index2;
        }), take_1.take(1), hasDefaultValue ? defaultIfEmpty_1.defaultIfEmpty(defaultValue) : throwIfEmpty_1.throwIfEmpty(function() {
          return new ArgumentOutOfRangeError_1.ArgumentOutOfRangeError();
        }));
      };
    }
    exports2.elementAt = elementAt;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/operators/endWith.js
var require_endWith = __commonJS({
  "../../../../../setup-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 i4 = m.call(o2), r, ar = [], e;
      try {
        while ((n2 === void 0 || n2-- > 0) && !(r = i4.next()).done) ar.push(r.value);
      } catch (error) {
        e = { error };
      } finally {
        try {
          if (r && !r.done && (m = i4["return"])) m.call(i4);
        } finally {
          if (e) throw e.error;
        }
      }
      return ar;
    };
    var __spreadArray2 = exports2 && exports2.__spreadArray || function(to, from5) {
      for (var i4 = 0, il = from5.length, j2 = to.length; i4 < il; i4++, j2++)
        to[j2] = from5[i4];
      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;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/operators/every.js
var require_every2 = __commonJS({
  "../../../../../setup-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 index2 = 0;
        source.subscribe(OperatorSubscriber_1.createOperatorSubscriber(subscriber, function(value) {
          if (!predicate.call(thisArg, value, index2++, source)) {
            subscriber.next(false);
            subscriber.complete();
          }
        }, function() {
          subscriber.next(true);
          subscriber.complete();
        }));
      });
    }
    exports2.every = every;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/operators/exhaustMap.js
var require_exhaustMap = __commonJS({
  "../../../../../setup-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, i4) {
            return innerFrom_1.innerFrom(project(a2, i4)).pipe(map_1.map(function(b, ii) {
              return resultSelector(a2, b, i4, ii);
            }));
          }));
        };
      }
      return lift_1.operate(function(source, subscriber) {
        var index2 = 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, index2++)).subscribe(innerSub);
          }
        }, function() {
          isComplete = true;
          !innerSub && subscriber.complete();
        }));
      });
    }
    exports2.exhaustMap = exhaustMap;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/operators/exhaustAll.js
var require_exhaustAll = __commonJS({
  "../../../../../setup-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;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/operators/exhaust.js
var require_exhaust = __commonJS({
  "../../../../../setup-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;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/operators/expand.js
var require_expand2 = __commonJS({
  "../../../../../setup-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;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/operators/finalize.js
var require_finalize = __commonJS({
  "../../../../../setup-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;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/operators/find.js
var require_find3 = __commonJS({
  "../../../../../setup-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 index2 = 0;
        source.subscribe(OperatorSubscriber_1.createOperatorSubscriber(subscriber, function(value) {
          var i4 = index2++;
          if (predicate.call(thisArg, value, i4, source)) {
            subscriber.next(findIndex ? i4 : value);
            subscriber.complete();
          }
        }, function() {
          subscriber.next(findIndex ? -1 : void 0);
          subscriber.complete();
        }));
      };
    }
    exports2.createFind = createFind;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/operators/findIndex.js
var require_findIndex2 = __commonJS({
  "../../../../../setup-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;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/operators/first.js
var require_first2 = __commonJS({
  "../../../../../setup-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, i4) {
          return predicate(v, i4, 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;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/operators/groupBy.js
var require_groupBy3 = __commonJS({
  "../../../../../setup-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(err2) {
          return notify(function(consumer) {
            return consumer.error(err2);
          });
        };
        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 (err2) {
            handleError(err2);
          }
        }, 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;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/operators/isEmpty.js
var require_isEmpty2 = __commonJS({
  "../../../../../setup-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;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/operators/takeLast.js
var require_takeLast = __commonJS({
  "../../../../../setup-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], i4 = 0;
      if (m) return m.call(o2);
      if (o2 && typeof o2.length === "number") return {
        next: function() {
          if (o2 && i4 >= o2.length) o2 = void 0;
          return { value: o2 && o2[i4++], 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, _a2;
          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 && (_a2 = buffer_1.return)) _a2.call(buffer_1);
            } finally {
              if (e_1) throw e_1.error;
            }
          }
          subscriber.complete();
        }, void 0, function() {
          buffer3 = null;
        }));
      });
    }
    exports2.takeLast = takeLast;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/operators/last.js
var require_last3 = __commonJS({
  "../../../../../setup-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, i4) {
          return predicate(v, i4, 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;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/operators/materialize.js
var require_materialize = __commonJS({
  "../../../../../setup-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(err2) {
          subscriber.next(Notification_1.Notification.createError(err2));
          subscriber.complete();
        }));
      });
    }
    exports2.materialize = materialize;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/operators/max.js
var require_max3 = __commonJS({
  "../../../../../setup-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 max4(comparer) {
      return reduce_1.reduce(isFunction_1.isFunction(comparer) ? function(x3, y) {
        return comparer(x3, y) > 0 ? x3 : y;
      } : function(x3, y) {
        return x3 > y ? x3 : y;
      });
    }
    exports2.max = max4;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/operators/flatMap.js
var require_flatMap2 = __commonJS({
  "../../../../../setup-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;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/operators/mergeMapTo.js
var require_mergeMapTo = __commonJS({
  "../../../../../setup-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;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/operators/mergeScan.js
var require_mergeScan = __commonJS({
  "../../../../../setup-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, index2) {
          return accumulator(state, value, index2);
        }, concurrent, function(value) {
          state = value;
        }, false, void 0, function() {
          return state = null;
        });
      });
    }
    exports2.mergeScan = mergeScan;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/operators/merge.js
var require_merge6 = __commonJS({
  "../../../../../setup-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 i4 = m.call(o2), r, ar = [], e;
      try {
        while ((n2 === void 0 || n2-- > 0) && !(r = i4.next()).done) ar.push(r.value);
      } catch (error) {
        e = { error };
      } finally {
        try {
          if (r && !r.done && (m = i4["return"])) m.call(i4);
        } finally {
          if (e) throw e.error;
        }
      }
      return ar;
    };
    var __spreadArray2 = exports2 && exports2.__spreadArray || function(to, from5) {
      for (var i4 = 0, il = from5.length, j2 = to.length; i4 < il; i4++, j2++)
        to[j2] = from5[i4];
      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;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/operators/mergeWith.js
var require_mergeWith2 = __commonJS({
  "../../../../../setup-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 i4 = m.call(o2), r, ar = [], e;
      try {
        while ((n2 === void 0 || n2-- > 0) && !(r = i4.next()).done) ar.push(r.value);
      } catch (error) {
        e = { error };
      } finally {
        try {
          if (r && !r.done && (m = i4["return"])) m.call(i4);
        } finally {
          if (e) throw e.error;
        }
      }
      return ar;
    };
    var __spreadArray2 = exports2 && exports2.__spreadArray || function(to, from5) {
      for (var i4 = 0, il = from5.length, j2 = to.length; i4 < il; i4++, j2++)
        to[j2] = from5[i4];
      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;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/operators/min.js
var require_min3 = __commonJS({
  "../../../../../setup-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(x3, y) {
        return comparer(x3, y) < 0 ? x3 : y;
      } : function(x3, y) {
        return x3 < y ? x3 : y;
      });
    }
    exports2.min = min;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/operators/multicast.js
var require_multicast = __commonJS({
  "../../../../../setup-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;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/operators/onErrorResumeNextWith.js
var require_onErrorResumeNextWith = __commonJS({
  "../../../../../setup-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 i4 = m.call(o2), r, ar = [], e;
      try {
        while ((n2 === void 0 || n2-- > 0) && !(r = i4.next()).done) ar.push(r.value);
      } catch (error) {
        e = { error };
      } finally {
        try {
          if (r && !r.done && (m = i4["return"])) m.call(i4);
        } finally {
          if (e) throw e.error;
        }
      }
      return ar;
    };
    var __spreadArray2 = exports2 && exports2.__spreadArray || function(to, from5) {
      for (var i4 = 0, il = from5.length, j2 = to.length; i4 < il; i4++, j2++)
        to[j2] = from5[i4];
      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;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/operators/pairwise.js
var require_pairwise = __commonJS({
  "../../../../../setup-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;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/operators/pluck.js
var require_pluck = __commonJS({
  "../../../../../setup-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(x3) {
        var currentProp = x3;
        for (var i4 = 0; i4 < length; i4++) {
          var p = currentProp === null || currentProp === void 0 ? void 0 : currentProp[properties[i4]];
          if (typeof p !== "undefined") {
            currentProp = p;
          } else {
            return void 0;
          }
        }
        return currentProp;
      });
    }
    exports2.pluck = pluck3;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/operators/publish.js
var require_publish2 = __commonJS({
  "../../../../../setup-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;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/operators/publishBehavior.js
var require_publishBehavior = __commonJS({
  "../../../../../setup-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;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/operators/publishLast.js
var require_publishLast = __commonJS({
  "../../../../../setup-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;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/operators/publishReplay.js
var require_publishReplay = __commonJS({
  "../../../../../setup-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;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/operators/raceWith.js
var require_raceWith = __commonJS({
  "../../../../../setup-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 i4 = m.call(o2), r, ar = [], e;
      try {
        while ((n2 === void 0 || n2-- > 0) && !(r = i4.next()).done) ar.push(r.value);
      } catch (error) {
        e = { error };
      } finally {
        try {
          if (r && !r.done && (m = i4["return"])) m.call(i4);
        } finally {
          if (e) throw e.error;
        }
      }
      return ar;
    };
    var __spreadArray2 = exports2 && exports2.__spreadArray || function(to, from5) {
      for (var i4 = 0, il = from5.length, j2 = to.length; i4 < il; i4++, j2++)
        to[j2] = from5[i4];
      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;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/operators/repeat.js
var require_repeat2 = __commonJS({
  "../../../../../setup-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 _a2;
      var count2 = Infinity;
      var delay;
      if (countOrConfig != null) {
        if (typeof countOrConfig === "object") {
          _a2 = countOrConfig.count, count2 = _a2 === void 0 ? Infinity : _a2, 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;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/operators/repeatWhen.js
var require_repeatWhen = __commonJS({
  "../../../../../setup-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;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/operators/retry.js
var require_retry6 = __commonJS({
  "../../../../../setup-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 config2;
      if (configOrCount && typeof configOrCount === "object") {
        config2 = configOrCount;
      } else {
        config2 = {
          count: configOrCount
        };
      }
      var _a2 = config2.count, count2 = _a2 === void 0 ? Infinity : _a2, delay = config2.delay, _b2 = config2.resetOnSuccess, resetOnSuccess = _b2 === void 0 ? false : _b2;
      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(err2) {
            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(err2, 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(err2);
            }
          }));
          if (syncUnsub) {
            innerSub.unsubscribe();
            innerSub = null;
            subscribeForRetry();
          }
        };
        subscribeForRetry();
      });
    }
    exports2.retry = retry5;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/operators/retryWhen.js
var require_retryWhen = __commonJS({
  "../../../../../setup-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(err2) {
            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(err2);
            }
          }));
          if (syncResub) {
            innerSub.unsubscribe();
            innerSub = null;
            syncResub = false;
            subscribeForRetryWhen();
          }
        };
        subscribeForRetryWhen();
      });
    }
    exports2.retryWhen = retryWhen;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/operators/sample.js
var require_sample3 = __commonJS({
  "../../../../../setup-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;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/operators/sampleTime.js
var require_sampleTime = __commonJS({
  "../../../../../setup-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;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/operators/scan.js
var require_scan5 = __commonJS({
  "../../../../../setup-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;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/operators/sequenceEqual.js
var require_sequenceEqual = __commonJS({
  "../../../../../setup-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
      };
    }
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/operators/share.js
var require_share = __commonJS({
  "../../../../../setup-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 i4 = m.call(o2), r, ar = [], e;
      try {
        while ((n2 === void 0 || n2-- > 0) && !(r = i4.next()).done) ar.push(r.value);
      } catch (error) {
        e = { error };
      } finally {
        try {
          if (r && !r.done && (m = i4["return"])) m.call(i4);
        } finally {
          if (e) throw e.error;
        }
      }
      return ar;
    };
    var __spreadArray2 = exports2 && exports2.__spreadArray || function(to, from5) {
      for (var i4 = 0, il = from5.length, j2 = to.length; i4 < il; i4++, j2++)
        to[j2] = from5[i4];
      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 _a2 = options.connector, connector = _a2 === void 0 ? function() {
        return new Subject_1.Subject();
      } : _a2, _b2 = options.resetOnError, resetOnError = _b2 === void 0 ? true : _b2, _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(err2) {
                hasErrored = true;
                cancelReset();
                resetConnection = handleReset(reset2, resetOnError, err2);
                dest.error(err2);
              },
              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);
    }
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/operators/shareReplay.js
var require_shareReplay = __commonJS({
  "../../../../../setup-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 _a2, _b2, _c;
      var bufferSize;
      var refCount = false;
      if (configOrBufferSize && typeof configOrBufferSize === "object") {
        _a2 = configOrBufferSize.bufferSize, bufferSize = _a2 === void 0 ? Infinity : _a2, _b2 = configOrBufferSize.windowTime, windowTime = _b2 === void 0 ? Infinity : _b2, _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;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/operators/single.js
var require_single = __commonJS({
  "../../../../../setup-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 index2 = 0;
        source.subscribe(OperatorSubscriber_1.createOperatorSubscriber(subscriber, function(value) {
          seenValue = true;
          if (!predicate || predicate(value, index2++, 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;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/operators/skip.js
var require_skip = __commonJS({
  "../../../../../setup-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 skip2(count2) {
      return filter_1.filter(function(_, index2) {
        return count2 <= index2;
      });
    }
    exports2.skip = skip2;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/operators/skipLast.js
var require_skipLast = __commonJS({
  "../../../../../setup-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 index2 = valueIndex % skipCount;
            var oldValue = ring[index2];
            ring[index2] = value;
            subscriber.next(oldValue);
          }
        }));
        return function() {
          ring = null;
        };
      });
    }
    exports2.skipLast = skipLast;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/operators/skipUntil.js
var require_skipUntil = __commonJS({
  "../../../../../setup-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;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/operators/skipWhile.js
var require_skipWhile = __commonJS({
  "../../../../../setup-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 index2 = 0;
        source.subscribe(OperatorSubscriber_1.createOperatorSubscriber(subscriber, function(value) {
          return (taking || (taking = !predicate(value, index2++))) && subscriber.next(value);
        }));
      });
    }
    exports2.skipWhile = skipWhile;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/operators/startWith.js
var require_startWith = __commonJS({
  "../../../../../setup-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;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/operators/switchMap.js
var require_switchMap = __commonJS({
  "../../../../../setup-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 index2 = 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 = index2++;
          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;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/operators/switchAll.js
var require_switchAll = __commonJS({
  "../../../../../setup-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;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/operators/switchMapTo.js
var require_switchMapTo = __commonJS({
  "../../../../../setup-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;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/operators/switchScan.js
var require_switchScan = __commonJS({
  "../../../../../setup-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, index2) {
          return accumulator(state, value, index2);
        }, function(_, innerValue) {
          return state = innerValue, innerValue;
        })(source).subscribe(subscriber);
        return function() {
          state = null;
        };
      });
    }
    exports2.switchScan = switchScan;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/operators/takeUntil.js
var require_takeUntil = __commonJS({
  "../../../../../setup-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;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/operators/takeWhile.js
var require_takeWhile2 = __commonJS({
  "../../../../../setup-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 index2 = 0;
        source.subscribe(OperatorSubscriber_1.createOperatorSubscriber(subscriber, function(value) {
          var result2 = predicate(value, index2++);
          (result2 || inclusive) && subscriber.next(value);
          !result2 && subscriber.complete();
        }));
      });
    }
    exports2.takeWhile = takeWhile2;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/operators/tap.js
var require_tap = __commonJS({
  "../../../../../setup-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 _a2;
        (_a2 = tapObserver.subscribe) === null || _a2 === void 0 ? void 0 : _a2.call(tapObserver);
        var isUnsub = true;
        source.subscribe(OperatorSubscriber_1.createOperatorSubscriber(subscriber, function(value) {
          var _a3;
          (_a3 = tapObserver.next) === null || _a3 === void 0 ? void 0 : _a3.call(tapObserver, value);
          subscriber.next(value);
        }, function() {
          var _a3;
          isUnsub = false;
          (_a3 = tapObserver.complete) === null || _a3 === void 0 ? void 0 : _a3.call(tapObserver);
          subscriber.complete();
        }, function(err2) {
          var _a3;
          isUnsub = false;
          (_a3 = tapObserver.error) === null || _a3 === void 0 ? void 0 : _a3.call(tapObserver, err2);
          subscriber.error(err2);
        }, function() {
          var _a3, _b2;
          if (isUnsub) {
            (_a3 = tapObserver.unsubscribe) === null || _a3 === void 0 ? void 0 : _a3.call(tapObserver);
          }
          (_b2 = tapObserver.finalize) === null || _b2 === void 0 ? void 0 : _b2.call(tapObserver);
        }));
      }) : identity_1.identity;
    }
    exports2.tap = tap;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/operators/throttle.js
var require_throttle2 = __commonJS({
  "../../../../../setup-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, config2) {
      return lift_1.operate(function(source, subscriber) {
        var _a2 = config2 !== null && config2 !== void 0 ? config2 : {}, _b2 = _a2.leading, leading = _b2 === void 0 ? true : _b2, _c = _a2.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;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/operators/throttleTime.js
var require_throttleTime = __commonJS({
  "../../../../../setup-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, config2) {
      if (scheduler3 === void 0) {
        scheduler3 = async_1.asyncScheduler;
      }
      var duration$ = timer_1.timer(duration, scheduler3);
      return throttle_1.throttle(function() {
        return duration$;
      }, config2);
    }
    exports2.throttleTime = throttleTime2;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/operators/timeInterval.js
var require_timeInterval = __commonJS({
  "../../../../../setup-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;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/operators/timeoutWith.js
var require_timeoutWith = __commonJS({
  "../../../../../setup-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;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/operators/timestamp.js
var require_timestamp7 = __commonJS({
  "../../../../../setup-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;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/operators/window.js
var require_window = __commonJS({
  "../../../../../setup-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(err2) {
          windowSubject.error(err2);
          subscriber.error(err2);
        };
        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;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/operators/windowCount.js
var require_windowCount = __commonJS({
  "../../../../../setup-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], i4 = 0;
      if (m) return m.call(o2);
      if (o2 && typeof o2.length === "number") return {
        next: function() {
          if (o2 && i4 >= o2.length) o2 = void 0;
          return { value: o2 && o2[i4++], 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, _a2;
          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 && (_a2 = windows_1.return)) _a2.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(err2) {
          while (windows.length > 0) {
            windows.shift().error(err2);
          }
          subscriber.error(err2);
        }, function() {
          starts = null;
          windows = null;
        }));
      });
    }
    exports2.windowCount = windowCount;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/operators/windowTime.js
var require_windowTime = __commonJS({
  "../../../../../setup-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 _a2, _b2;
      var otherArgs = [];
      for (var _i = 1; _i < arguments.length; _i++) {
        otherArgs[_i - 1] = arguments[_i];
      }
      var scheduler3 = (_a2 = args_1.popScheduler(otherArgs)) !== null && _a2 !== void 0 ? _a2 : async_1.asyncScheduler;
      var windowCreationInterval = (_b2 = otherArgs[0]) !== null && _b2 !== void 0 ? _b2 : 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(_a3) {
            var window2 = _a3.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(err2) {
          return terminate(function(consumer) {
            return consumer.error(err2);
          });
        }));
        return function() {
          windowRecords = null;
        };
      });
    }
    exports2.windowTime = windowTime;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/operators/windowToggle.js
var require_windowToggle = __commonJS({
  "../../../../../setup-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], i4 = 0;
      if (m) return m.call(o2);
      if (o2 && typeof o2.length === "number") return {
        next: function() {
          if (o2 && i4 >= o2.length) o2 = void 0;
          return { value: o2 && o2[i4++], 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(err2) {
          while (0 < windows.length) {
            windows.shift().error(err2);
          }
          subscriber.error(err2);
        };
        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 (err2) {
            handleError(err2);
            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, _a2;
          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 && (_a2 = windowsCopy_1.return)) _a2.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;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/operators/windowWhen.js
var require_windowWhen = __commonJS({
  "../../../../../setup-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(err2) {
          window2.error(err2);
          subscriber.error(err2);
        };
        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 (err2) {
            handleError(err2);
            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;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/operators/withLatestFrom.js
var require_withLatestFrom = __commonJS({
  "../../../../../setup-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 i4 = m.call(o2), r, ar = [], e;
      try {
        while ((n2 === void 0 || n2-- > 0) && !(r = i4.next()).done) ar.push(r.value);
      } catch (error) {
        e = { error };
      } finally {
        try {
          if (r && !r.done && (m = i4["return"])) m.call(i4);
        } finally {
          if (e) throw e.error;
        }
      }
      return ar;
    };
    var __spreadArray2 = exports2 && exports2.__spreadArray || function(to, from5) {
      for (var i4 = 0, il = from5.length, j2 = to.length; i4 < il; i4++, j2++)
        to[j2] = from5[i4];
      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(i5) {
          innerFrom_1.innerFrom(inputs[i5]).subscribe(OperatorSubscriber_1.createOperatorSubscriber(subscriber, function(value) {
            otherValues[i5] = value;
            if (!ready && !hasValue[i5]) {
              hasValue[i5] = true;
              (ready = hasValue.every(identity_1.identity)) && (hasValue = null);
            }
          }, noop_1.noop));
        };
        for (var i4 = 0; i4 < len; i4++) {
          _loop_1(i4);
        }
        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;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/operators/zipAll.js
var require_zipAll = __commonJS({
  "../../../../../setup-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;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/operators/zip.js
var require_zip4 = __commonJS({
  "../../../../../setup-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 i4 = m.call(o2), r, ar = [], e;
      try {
        while ((n2 === void 0 || n2-- > 0) && !(r = i4.next()).done) ar.push(r.value);
      } catch (error) {
        e = { error };
      } finally {
        try {
          if (r && !r.done && (m = i4["return"])) m.call(i4);
        } finally {
          if (e) throw e.error;
        }
      }
      return ar;
    };
    var __spreadArray2 = exports2 && exports2.__spreadArray || function(to, from5) {
      for (var i4 = 0, il = from5.length, j2 = to.length; i4 < il; i4++, j2++)
        to[j2] = from5[i4];
      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;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/operators/zipWith.js
var require_zipWith2 = __commonJS({
  "../../../../../setup-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 i4 = m.call(o2), r, ar = [], e;
      try {
        while ((n2 === void 0 || n2-- > 0) && !(r = i4.next()).done) ar.push(r.value);
      } catch (error) {
        e = { error };
      } finally {
        try {
          if (r && !r.done && (m = i4["return"])) m.call(i4);
        } finally {
          if (e) throw e.error;
        }
      }
      return ar;
    };
    var __spreadArray2 = exports2 && exports2.__spreadArray || function(to, from5) {
      for (var i4 = 0, il = from5.length, j2 = to.length; i4 < il; i4++, j2++)
        to[j2] = from5[i4];
      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;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/index.js
var require_cjs2 = __commonJS({
  "../../../../../setup-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_first2();
    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;
    } });
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/operators/partition.js
var require_partition3 = __commonJS({
  "../../../../../setup-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;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/operators/race.js
var require_race2 = __commonJS({
  "../../../../../setup-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 i4 = m.call(o2), r, ar = [], e;
      try {
        while ((n2 === void 0 || n2-- > 0) && !(r = i4.next()).done) ar.push(r.value);
      } catch (error) {
        e = { error };
      } finally {
        try {
          if (r && !r.done && (m = i4["return"])) m.call(i4);
        } finally {
          if (e) throw e.error;
        }
      }
      return ar;
    };
    var __spreadArray2 = exports2 && exports2.__spreadArray || function(to, from5) {
      for (var i4 = 0, il = from5.length, j2 = to.length; i4 < il; i4++, j2++)
        to[j2] = from5[i4];
      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;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/operators/index.js
var require_operators = __commonJS({
  "../../../../../setup-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_first2();
    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_source();
    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 path231 from "node:path";
function reportContext(log$, opts3) {
  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 method2;
    switch (packageImportMethod.method) {
      case "copy":
        method2 = "copied";
        break;
      case "clone":
        method2 = "cloned";
        break;
      case "hardlink":
        method2 = "hard linked";
        break;
      default:
        method2 = packageImportMethod.method;
        break;
    }
    return Rx2.of({
      msg: `Packages are ${method2} from the content-addressable store to the virtual store.
  Content-addressable store is at: ${context.storeDir}
  Virtual store is at:             ${(0, import_normalize_path17.default)(path231.relative(opts3.cwd, context.virtualStoreDir))}`
    });
  }));
}
var import_normalize_path17, Rx2, import_operators3;
var init_reportContext = __esm({
  "../cli/default-reporter/lib/reporterForClient/reportContext.js"() {
    "use strict";
    import_normalize_path17 = __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_source();
  }
});

// ../cli/default-reporter/lib/reporterForClient/utils/formatPrefix.js
import path232 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_path18.default)(path232.relative(cwd, prefix) || ".");
}
var import_normalize_path18;
var init_formatPrefix = __esm({
  "../cli/default-reporter/lib/reporterForClient/utils/formatPrefix.js"() {
    "use strict";
    import_normalize_path18 = __toESM(require_normalize_path(), 1);
    init_outputConstants();
  }
});

// ../cli/default-reporter/lib/reporterForClient/utils/zooming.js
function autozoom(currentPrefix, logPrefix, line, opts3) {
  if (!logPrefix || !opts3.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$, opts3) {
  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 (!opts3.isRecursive && log3.prefix === opts3.cwd) {
      return Rx3.of({
        msg: formatWarn(`${source_default.red("deprecated")} ${log3.pkgName}@${log3.pkgVersion}: ${log3.deprecated}`)
      });
    }
    return Rx3.of({
      msg: zoomOut(opts3.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_source();
    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_lib24();
    init_pretty_ms();
    Rx4 = __toESM(require_cjs2(), 1);
    import_operators5 = __toESM(require_operators(), 1);
  }
});

// ../cli/default-reporter/lib/reporterForClient/reportHooks.js
function reportHooks(hook$, opts3) {
  return hook$.pipe((0, import_operators6.map)((log3) => Rx5.of({
    msg: autozoom(opts3.cwd, log3.prefix, `${source_default.magentaBright(log3.hook)}: ${log3.message}`, {
      zoomOutCurrent: opts3.isRecursive
    })
  })));
}
var Rx5, import_operators6;
var init_reportHooks = __esm({
  "../cli/default-reporter/lib/reporterForClient/reportHooks.js"() {
    "use strict";
    init_source();
    Rx5 = __toESM(require_cjs2(), 1);
    import_operators6 = __toESM(require_operators(), 1);
    init_zooming();
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/widest-line/3.1.0/ef59fa10172d30fa52da212920cb7e2945da4b7be29b348f27730f663adbc481/node_modules/widest-line/index.js
var require_widest_line = __commonJS({
  "../../../../../setup-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 max4 = 0;
      for (const line of input.split("\n")) {
        max4 = Math.max(max4, stringWidth2(line));
      }
      return max4;
    };
    module2.exports = widestLine;
    module2.exports.default = widestLine;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/cli-boxes/2.2.1/08959c8071f5ce108770c96cf58f387314a077506073633b8ae6c8aa9d3d9112/node_modules/cli-boxes/boxes.json
var require_boxes = __commonJS({
  "../../../../../setup-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: "-"
      }
    };
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/cli-boxes/2.2.1/08959c8071f5ce108770c96cf58f387314a077506073633b8ae6c8aa9d3d9112/node_modules/cli-boxes/index.js
var require_cli_boxes = __commonJS({
  "../../../../../setup-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;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/camelcase/6.3.0/a34713a0f108f5e51da97bef546e5fb74d54ff70c49eeb64a121bb84f11644de/node_modules/camelcase/index.js
var require_camelcase = __commonJS({
  "../../../../../setup-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 i4 = 0; i4 < string.length; i4++) {
        const character = string[i4];
        if (isLastCharLower && UPPERCASE2.test(character)) {
          string = string.slice(0, i4) + "-" + string.slice(i4);
          isLastCharLower = false;
          isLastLastCharUpper = isLastCharUpper;
          isLastCharUpper = true;
          i4++;
        } else if (isLastCharUpper && isLastLastCharUpper && LOWERCASE2.test(character)) {
          string = string.slice(0, i4 - 1) + "-" + string.slice(i4 - 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((x3) => x3.trim()).filter((x3) => x3.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;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/ansi-align/3.0.1/e44efec8b278d4a46bc30320e5ade6e737e42631007395ffcf33bbe3fd1defc7/node_modules/ansi-align/index.js
var require_ansi_align = __commonJS({
  "../../../../../setup-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, opts3) {
      if (!text) return text;
      opts3 = opts3 || {};
      const align = opts3.align || "center";
      if (align === "left") return text;
      const split4 = opts3.split || "\n";
      const pad4 = opts3.pad || " ";
      const widthDiffFn = align !== "right" ? halfDiff : fullDiff;
      let returnString = false;
      if (!Array.isArray(text)) {
        returnString = true;
        text = String(text).split(split4);
      }
      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(pad4) + obj.str;
      });
      return returnString ? text.join(split4) : 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;
    }
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/wrap-ansi/7.0.0/b8558cc588195aca96e9b6d678c1e72f0bc46322f7a9efec8f71f1cb0d77f4af/node_modules/wrap-ansi/index.js
var require_wrap_ansi = __commonJS({
  "../../../../../setup-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 ansiStyles4 = require_ansi_styles();
    var ESCAPES2 = /* @__PURE__ */ new Set([
      "\x1B",
      "\x9B"
    ]);
    var END_CODE2 = 39;
    var ANSI_ESCAPE_BELL2 = "\x07";
    var ANSI_CSI3 = "[";
    var ANSI_OSC3 = "]";
    var ANSI_SGR_TERMINATOR3 = "m";
    var ANSI_ESCAPE_LINK2 = `${ANSI_OSC3}8;;`;
    var wrapAnsi2 = (code) => `${ESCAPES2.values().next().value}${ANSI_CSI3}${code}${ANSI_SGR_TERMINATOR3}`;
    var wrapAnsiHyperlink2 = (uri) => `${ESCAPES2.values().next().value}${ANSI_ESCAPE_LINK2}${uri}${ANSI_ESCAPE_BELL2}`;
    var wordLengths = (string) => string.split(" ").map((character) => stringWidth2(character));
    var wrapWord2 = (rows, word, columns) => {
      const characters = [...word];
      let isInsideEscape = false;
      let isInsideLinkEscape = false;
      let visible = stringWidth2(stripAnsi4(rows[rows.length - 1]));
      for (const [index2, 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(index2 + 1).join("").startsWith(ANSI_ESCAPE_LINK2);
        }
        if (isInsideEscape) {
          if (isInsideLinkEscape) {
            if (character === ANSI_ESCAPE_BELL2) {
              isInsideEscape = false;
              isInsideLinkEscape = false;
            }
          } else if (character === ANSI_SGR_TERMINATOR3) {
            isInsideEscape = false;
          }
          continue;
        }
        visible += characterLength;
        if (visible === columns && index2 < 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 stringVisibleTrimSpacesRight2 = (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 exec2 = (string, columns, options = {}) => {
      if (options.trim !== false && string.trim() === "") {
        return "";
      }
      let returnValue = "";
      let escapeCode;
      let escapeUrl;
      const lengths = wordLengths(string);
      let rows = [""];
      for (const [index2, 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 (index2 !== 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[index2] > columns) {
          const remainingColumns = columns - rowLength;
          const breaksStartingThisLine = 1 + Math.floor((lengths[index2] - remainingColumns - 1) / columns);
          const breaksStartingNextLine = Math.floor((lengths[index2] - 1) / columns);
          if (breaksStartingNextLine < breaksStartingThisLine) {
            rows.push("");
          }
          wrapWord2(rows, word, columns);
          continue;
        }
        if (rowLength + lengths[index2] > columns && rowLength > 0 && lengths[index2] > 0) {
          if (options.wordWrap === false && rowLength < columns) {
            wrapWord2(rows, word, columns);
            continue;
          }
          rows.push("");
        }
        if (rowLength + lengths[index2] > columns && options.wordWrap === false) {
          wrapWord2(rows, word, columns);
          continue;
        }
        rows[rows.length - 1] += word;
      }
      if (options.trim !== false) {
        rows = rows.map(stringVisibleTrimSpacesRight2);
      }
      const pre = [...rows.join("\n")];
      for (const [index2, character] of pre.entries()) {
        returnValue += character;
        if (ESCAPES2.has(character)) {
          const { groups } = new RegExp(`(?:\\${ANSI_CSI3}(?<code>\\d+)m|\\${ANSI_ESCAPE_LINK2}(?<uri>.*)${ANSI_ESCAPE_BELL2})`).exec(pre.slice(index2).join("")) || { groups: {} };
          if (groups.code !== void 0) {
            const code2 = Number.parseFloat(groups.code);
            escapeCode = code2 === END_CODE2 ? void 0 : code2;
          } else if (groups.uri !== void 0) {
            escapeUrl = groups.uri.length === 0 ? void 0 : groups.uri;
          }
        }
        const code = ansiStyles4.codes.get(Number(escapeCode));
        if (pre[index2 + 1] === "\n") {
          if (escapeUrl) {
            returnValue += wrapAnsiHyperlink2("");
          }
          if (escapeCode && code) {
            returnValue += wrapAnsi2(code);
          }
        } else if (character === "\n") {
          if (escapeCode && code) {
            returnValue += wrapAnsi2(escapeCode);
          }
          if (escapeUrl) {
            returnValue += wrapAnsiHyperlink2(escapeUrl);
          }
        }
      }
      return returnValue;
    };
    module2.exports = (string, columns, options) => {
      return String(string).normalize().replace(/\r\n/g, "\n").split("\n").map((line) => exec2(line, columns, options)).join("\n");
    };
  }
});

// ../../../../../setup-pnpm/store/v11/links/@zkochan/boxen/5.1.2/b66a18b00cae0fc1b5678c6d1620eb7120e815458ec36045e0d1f3b23789c5b8/node_modules/@zkochan/boxen/index.js
var require_boxen = __commonJS({
  "../../../../../setup-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 chalk3 = require_source2();
    var widestLine = require_widest_line();
    var cliBoxes = require_cli_boxes();
    var camelCase2 = require_camelcase();
    var ansiAlign = require_ansi_align();
    var wrapAnsi2 = require_wrap_ansi();
    var NL = "\n";
    var PAD = " ";
    var terminalColumns = () => {
      const { env: env4, stdout, stderr } = process;
      if (stdout && stdout.columns) {
        return stdout.columns;
      }
      if (stderr && stderr.columns) {
        return stderr.columns;
      }
      if (env4.COLUMNS) {
        return Number.parseInt(env4.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 max4 = columns - padding.left - padding.right;
      if (textWidth > max4) {
        const newLines = [];
        for (const line of lines) {
          const createdLines = wrapAnsi2(line, max4, { 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((max4 - longestLength) / 2) + alignedLine;
                break;
              case "right":
                paddedLine = PAD.repeat(max4 - longestLength) + alignedLine;
                break;
              default:
                paddedLine = alignedLine;
                break;
            }
            newLines.push(paddedLine);
          }
        }
        lines = newLines;
      }
      if (align === "center" && textWidth < max4) {
        lines = lines.map((line) => PAD.repeat((max4 - textWidth) / 2) + line);
      } else if (align === "right" && textWidth < max4) {
        lines = lines.map((line) => PAD.repeat(max4 - 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" && (chalk3[color] || isHex(color));
    var getColorFn = (color) => isHex(color) ? chalk3.hex(color) : chalk3[color];
    var getBGColorFn = (color) => isHex(color) ? chalk3.bgHex(color) : chalk3[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 ? chalk3.dim(newBorder) : newBorder;
      };
      const colorizeContent = (content) => options.backgroundColor ? getBGColorFn(options.backgroundColor)(content) : content;
      const columns = terminalColumns();
      let contentWidth = widestLine(wrapAnsi2(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$, opts3) {
  return log$.ignoredScripts.pipe((0, import_operators7.map)((ignoredScripts) => {
    if (ignoredScripts.packageNames && ignoredScripts.packageNames.length > 0 && !opts3.pnpmConfig?.strictDepBuilds) {
      const msg = (0, import_boxen.default)(`Ignored build scripts: ${Array.from(ignoredScripts.packageNames).sort(import_util24.lexCompare).join(", ")}.
${opts3.approveBuildsInstructionText ?? `Run "pnpm approve-builds${opts3.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_util24, import_boxen, Rx6, import_operators7;
var init_reportIgnoredBuilds = __esm({
  "../cli/default-reporter/lib/reporterForClient/reportIgnoredBuilds.js"() {
    "use strict";
    import_util24 = __toESM(require_dist4(), 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$, opts3) {
  return installCheck$.pipe((0, import_operators8.map)((log3) => formatInstallCheck(opts3.cwd, log3)), (0, import_operators8.filter)(Boolean), (0, import_operators8.map)((msg) => Rx7.of({ msg })));
}
function formatInstallCheck(currentPrefix, logObj, opts3) {
  const zoomOutCurrent = opts3?.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);
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/ansi-styles/6.2.3/9163570239b4792de925fb3fbd56f385e4d465727d006f42f90b0e4a54bbe05c/node_modules/ansi-styles/index.js
function assembleStyles3() {
  const codes = /* @__PURE__ */ new Map();
  for (const [groupName, group] of Object.entries(styles5)) {
    for (const [styleName, style] of Object.entries(group)) {
      styles5[styleName] = {
        open: `\x1B[${style[0]}m`,
        close: `\x1B[${style[1]}m`
      };
      group[styleName] = styles5[styleName];
      codes.set(style[0], style[1]);
    }
    Object.defineProperty(styles5, groupName, {
      value: group,
      enumerable: false
    });
  }
  Object.defineProperty(styles5, "codes", {
    value: codes,
    enumerable: false
  });
  styles5.color.close = "\x1B[39m";
  styles5.bgColor.close = "\x1B[49m";
  styles5.color.ansi = wrapAnsi163();
  styles5.color.ansi256 = wrapAnsi2563();
  styles5.color.ansi16m = wrapAnsi16m3();
  styles5.bgColor.ansi = wrapAnsi163(ANSI_BACKGROUND_OFFSET3);
  styles5.bgColor.ansi256 = wrapAnsi2563(ANSI_BACKGROUND_OFFSET3);
  styles5.bgColor.ansi16m = wrapAnsi16m3(ANSI_BACKGROUND_OFFSET3);
  Object.defineProperties(styles5, {
    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) => styles5.rgbToAnsi256(...styles5.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) => styles5.ansi256ToAnsi(styles5.rgbToAnsi256(red2, green2, blue2)),
      enumerable: false
    },
    hexToAnsi: {
      value: (hex) => styles5.ansi256ToAnsi(styles5.hexToAnsi256(hex)),
      enumerable: false
    }
  });
  return styles5;
}
var ANSI_BACKGROUND_OFFSET3, wrapAnsi163, wrapAnsi2563, wrapAnsi16m3, styles5, modifierNames3, foregroundColorNames3, backgroundColorNames3, colorNames3, ansiStyles3, ansi_styles_default3;
var init_ansi_styles3 = __esm({
  "../../../../../setup-pnpm/store/v11/links/@/ansi-styles/6.2.3/9163570239b4792de925fb3fbd56f385e4d465727d006f42f90b0e4a54bbe05c/node_modules/ansi-styles/index.js"() {
    ANSI_BACKGROUND_OFFSET3 = 10;
    wrapAnsi163 = (offset = 0) => (code) => `\x1B[${code + offset}m`;
    wrapAnsi2563 = (offset = 0) => (code) => `\x1B[${38 + offset};5;${code}m`;
    wrapAnsi16m3 = (offset = 0) => (red2, green2, blue2) => `\x1B[${38 + offset};2;${red2};${green2};${blue2}m`;
    styles5 = {
      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]
      }
    };
    modifierNames3 = Object.keys(styles5.modifier);
    foregroundColorNames3 = Object.keys(styles5.color);
    backgroundColorNames3 = Object.keys(styles5.bgColor);
    colorNames3 = [...foregroundColorNames3, ...backgroundColorNames3];
    ansiStyles3 = assembleStyles3();
    ansi_styles_default3 = ansiStyles3;
  }
});

// ../../../../../setup-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 isFullWidth2(codePoint) || isWide(codePoint);
}
var init_is_fullwidth_code_point = __esm({
  "../../../../../setup-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();
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/slice-ansi/9.0.0/f805a809732152751b3c8940cda004f1702a6d37ffff2a6048679b529925fda8/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_CSI2}`;
}
function createSgrCode(prefix, values) {
  return `${prefix}${values.join(";")}${ANSI_SGR_TERMINATOR2}`;
}
function getSgrFragments(code) {
  const fragments = [];
  const sgrPrefix = getSgrPrefix(code);
  let parameterString;
  if (code.startsWith(`${ESCAPE}${ANSI_CSI2}`)) {
    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 index2 = 0;
  while (index2 < rawCodes.length) {
    const codeNumber = Number.parseInt(rawCodes[index2], 10);
    if (Number.isNaN(codeNumber)) {
      index2++;
      continue;
    }
    if (codeNumber === SGR_RESET_CODE) {
      fragments.push({ type: "reset" });
      index2++;
      continue;
    }
    if (codeNumber === SGR_EXTENDED_FOREGROUND_CODE || codeNumber === SGR_EXTENDED_BACKGROUND_CODE) {
      const colorType = Number.parseInt(rawCodes[index2 + 1], 10);
      if (colorType === SGR_COLOR_TYPE_ANSI_256 && index2 + SGR_ANSI_256_LAST_PARAMETER_OFFSET < rawCodes.length) {
        const openCode3 = createSgrCode(sgrPrefix, rawCodes.slice(index2, index2 + SGR_ANSI_256_FRAGMENT_LENGTH));
        fragments.push({
          type: "start",
          code: openCode3,
          endCode: ansi_styles_default3.color.ansi(codeNumber === SGR_EXTENDED_FOREGROUND_CODE ? SGR_DEFAULT_FOREGROUND_CODE : SGR_DEFAULT_BACKGROUND_CODE)
        });
        index2 += SGR_ANSI_256_FRAGMENT_LENGTH;
        continue;
      }
      if (colorType === SGR_COLOR_TYPE_TRUECOLOR && index2 + SGR_TRUECOLOR_LAST_PARAMETER_OFFSET < rawCodes.length) {
        const openCode3 = createSgrCode(sgrPrefix, rawCodes.slice(index2, index2 + SGR_TRUECOLOR_FRAGMENT_LENGTH));
        fragments.push({
          type: "start",
          code: openCode3,
          endCode: ansi_styles_default3.color.ansi(codeNumber === SGR_EXTENDED_FOREGROUND_CODE ? SGR_DEFAULT_FOREGROUND_CODE : SGR_DEFAULT_BACKGROUND_CODE)
        });
        index2 += SGR_TRUECOLOR_FRAGMENT_LENGTH;
        continue;
      }
      const openCode2 = createSgrCode(sgrPrefix, [rawCodes[index2]]);
      fragments.push({
        type: "start",
        code: openCode2,
        endCode: ansi_styles_default3.color.ansi(codeNumber === SGR_EXTENDED_FOREGROUND_CODE ? SGR_DEFAULT_FOREGROUND_CODE : SGR_DEFAULT_BACKGROUND_CODE)
      });
      index2++;
      continue;
    }
    if (endCodeNumbers.has(codeNumber)) {
      fragments.push({
        type: "end",
        endCode: ansi_styles_default3.color.ansi(codeNumber)
      });
      index2++;
      continue;
    }
    const mappedEndCode = ansi_styles_default3.codes.get(codeNumber);
    if (mappedEndCode !== void 0) {
      const openCode2 = createSgrCode(sgrPrefix, [rawCodes[index2]]);
      fragments.push({
        type: "start",
        code: openCode2,
        endCode: ansi_styles_default3.color.ansi(mappedEndCode)
      });
      index2++;
      continue;
    }
    const openCode = createSgrCode(sgrPrefix, [rawCodes[index2]]);
    fragments.push({
      type: "start",
      code: openCode,
      endCode: ansi_styles_default3.reset.open
    });
    index2++;
  }
  if (fragments.length === 0) {
    fragments.push({ type: "reset" });
  }
  return fragments;
}
function parseCsiCode(string, index2) {
  const escapeCodePoint = string.codePointAt(index2);
  let sequenceStartIndex;
  if (escapeCodePoint === ESCAPE_CODE_POINT) {
    if (string[index2 + 1] !== ANSI_CSI2) {
      return;
    }
    sequenceStartIndex = index2 + 2;
  } else if (escapeCodePoint === C1_CSI_CODE_POINT) {
    sequenceStartIndex = index2 + 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(index2, sequenceIndex + 1);
      if (string[sequenceIndex] !== ANSI_SGR_TERMINATOR2 || !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(index2, endIndex), endIndex);
  }
  return createControlParseResult(string.slice(index2), string.length);
}
function parseHyperlinkCode(string, index2) {
  let hyperlinkPrefix;
  let hyperlinkClose;
  const codePoint = string.codePointAt(index2);
  if (codePoint === ESCAPE_CODE_POINT && string.startsWith(ANSI_HYPERLINK_ESC_PREFIX, index2)) {
    hyperlinkPrefix = ANSI_HYPERLINK_ESC_PREFIX;
    hyperlinkClose = ANSI_HYPERLINK_ESC_CLOSE;
  } else if (codePoint === C1_OSC_CODE_POINT && string.startsWith(ANSI_HYPERLINK_C1_PREFIX, index2)) {
    hyperlinkPrefix = ANSI_HYPERLINK_C1_PREFIX;
    hyperlinkClose = ANSI_HYPERLINK_C1_CLOSE;
  } else {
    return;
  }
  const uriStart = string.indexOf(";", index2 + hyperlinkPrefix.length);
  if (uriStart === -1) {
    return createControlParseResult(string.slice(index2), string.length);
  }
  for (let sequenceIndex = uriStart + 1; sequenceIndex < string.length; sequenceIndex++) {
    const character = string[sequenceIndex];
    if (character === ANSI_BELL) {
      const code = string.slice(index2, 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(index2, 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(index2, 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(index2), string.length);
}
function parseControlStringCode(string, index2) {
  const codePoint = string.codePointAt(index2);
  let sequenceStartIndex;
  let supportsBellTerminator = false;
  switch (codePoint) {
    case ESCAPE_CODE_POINT: {
      const command = string[index2 + 1];
      switch (command) {
        case ANSI_OSC2: {
          sequenceStartIndex = index2 + 2;
          supportsBellTerminator = true;
          break;
        }
        case ANSI_DCS:
        case ANSI_SOS:
        case ANSI_PM:
        case ANSI_APC: {
          sequenceStartIndex = index2 + 2;
          break;
        }
        case ANSI_OSC_TERMINATOR: {
          return createControlParseResult(ANSI_STRING_TERMINATOR, index2 + 2);
        }
        default: {
          return;
        }
      }
      break;
    }
    case C1_OSC_CODE_POINT: {
      sequenceStartIndex = index2 + 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 = index2 + 1;
      break;
    }
    case C1_ST_CODE_POINT: {
      return createControlParseResult(C1_STRING_TERMINATOR, index2 + 1);
    }
    default: {
      return;
    }
  }
  for (let sequenceIndex = sequenceStartIndex; sequenceIndex < string.length; sequenceIndex++) {
    if (supportsBellTerminator && string[sequenceIndex] === ANSI_BELL) {
      return createControlParseResult(string.slice(index2, sequenceIndex + 1), sequenceIndex + 1);
    }
    if (string[sequenceIndex] === ESCAPE && string[sequenceIndex + 1] === ANSI_OSC_TERMINATOR) {
      return createControlParseResult(string.slice(index2, sequenceIndex + 2), sequenceIndex + 2);
    }
    if (string[sequenceIndex] === C1_STRING_TERMINATOR) {
      return createControlParseResult(string.slice(index2, sequenceIndex + 1), sequenceIndex + 1);
    }
  }
  return createControlParseResult(string.slice(index2), string.length);
}
function parseAnsiCode(string, index2) {
  const codePoint = string.codePointAt(index2);
  if (codePoint === ESCAPE_CODE_POINT || codePoint === C1_OSC_CODE_POINT) {
    const hyperlinkCode = parseHyperlinkCode(string, index2);
    if (hyperlinkCode) {
      return hyperlinkCode;
    }
  }
  const controlStringCode = parseControlStringCode(string, index2);
  if (controlStringCode) {
    return controlStringCode;
  }
  return parseCsiCode(string, index2);
}
function appendTrailingAnsiTokens(string, index2, tokens) {
  while (index2 < string.length) {
    const nextCodePoint = string.codePointAt(index2);
    if (!ESCAPES.has(nextCodePoint)) {
      break;
    }
    const escapeCode = parseAnsiCode(string, index2);
    if (!escapeCode) {
      break;
    }
    tokens.push(escapeCode.token);
    index2 = escapeCode.endIndex;
  }
  return index2;
}
function parseCharacterTokenWithRawSegmentation(string, index2, graphemeSegments) {
  const segment = graphemeSegments.containing(index2);
  if (!segment || segment.index !== index2) {
    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: index2 + segment.segment.length
  };
}
function collectVisibleCharacters(string) {
  const visibleCharacters = [];
  let index2 = 0;
  while (index2 < string.length) {
    const codePoint = string.codePointAt(index2);
    if (ESCAPES.has(codePoint)) {
      const code = parseAnsiCode(string, index2);
      if (code) {
        index2 = code.endIndex;
        continue;
      }
    }
    const value = String.fromCodePoint(codePoint);
    visibleCharacters.push({
      value,
      visibleWidth: 1,
      isGraphemeContinuation: false
    });
    index2 += 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 index2 = 0;
  let visibleCharacterIndex = 0;
  let visibleCount = 0;
  while (index2 < string.length) {
    const codePoint = string.codePointAt(index2);
    if (ESCAPES.has(codePoint)) {
      const code = parseAnsiCode(string, index2);
      if (code) {
        tokens.push(code.token);
        index2 = 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);
    index2 += value.length;
    visibleCharacterIndex++;
    visibleCount += token.visibleWidth;
    if (visibleCount >= endCharacter) {
      const nextVisibleCharacter = visibleCharacters[visibleCharacterIndex];
      if (!nextVisibleCharacter || !nextVisibleCharacter.isGraphemeContinuation) {
        index2 = appendTrailingAnsiTokens(string, index2, 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 index2 = startIndex;
  let hasAnsiCode = false;
  while (index2 < string.length) {
    const codePoint = string.codePointAt(index2);
    if (ESCAPES.has(codePoint)) {
      const code = parseAnsiCode(string, index2);
      if (code) {
        hasAnsiCode = true;
        index2 = code.endIndex;
        continue;
      }
    }
    if (!hasAnsiCode) {
      return false;
    }
    const characterToken = parseCharacterTokenWithRawSegmentation(string, index2, 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 index2 = 0;
  let visibleCount = 0;
  let previousVisibleValue;
  let hasAnsiSinceLastVisible = false;
  while (index2 < string.length) {
    const codePoint = string.codePointAt(index2);
    if (ESCAPES.has(codePoint)) {
      const code = parseAnsiCode(string, index2);
      if (code) {
        tokens.push(code.token);
        index2 = code.endIndex;
        hasAnsiSinceLastVisible = true;
        continue;
      }
    }
    const characterToken = parseCharacterTokenWithRawSegmentation(string, index2, graphemeSegments);
    if (!characterToken) {
      return tokenizeAnsiWithVisibleSegmentation(string, { endCharacter });
    }
    if (hasAnsiSinceLastVisible && previousVisibleValue && areValuesInSameGrapheme(previousVisibleValue, characterToken.token.value)) {
      return tokenizeAnsiWithVisibleSegmentation(string, { endCharacter });
    }
    tokens.push(characterToken.token);
    index2 = characterToken.endIndex;
    visibleCount += characterToken.token.visibleWidth;
    hasAnsiSinceLastVisible = false;
    previousVisibleValue = characterToken.token.value;
    if (visibleCount >= endCharacter) {
      if (hasAnsiSplitContinuationAhead(string, index2, previousVisibleValue, graphemeSegments)) {
        return tokenizeAnsiWithVisibleSegmentation(string, { endCharacter });
      }
      index2 = appendTrailingAnsiTokens(string, index2, 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_CSI2, ANSI_OSC2, ANSI_DCS, ANSI_SOS, ANSI_PM, ANSI_APC, ANSI_SGR_TERMINATOR2, 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({
  "../../../../../setup-pnpm/store/v11/links/@/slice-ansi/9.0.0/f805a809732152751b3c8940cda004f1702a6d37ffff2a6048679b529925fda8/node_modules/slice-ansi/tokenize-ansi.js"() {
    init_ansi_styles3();
    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_CSI2 = "[";
    ANSI_OSC2 = "]";
    ANSI_DCS = "P";
    ANSI_SOS = "X";
    ANSI_PM = "^";
    ANSI_APC = "_";
    ANSI_SGR_TERMINATOR2 = "m";
    ANSI_OSC_TERMINATOR = "\\";
    ANSI_STRING_TERMINATOR = `${ESCAPE}${ANSI_OSC_TERMINATOR}`;
    C1_OSC = "\x9D";
    C1_STRING_TERMINATOR = "\x9C";
    ANSI_HYPERLINK_ESC_PREFIX = `${ESCAPE}${ANSI_OSC2}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}/v;
    GRAPHEME_SEGMENTER = new Intl.Segmenter(void 0, { granularity: "grapheme" });
    endCodeNumbers = /* @__PURE__ */ new Set();
    for (const [, end] of ansi_styles_default3.codes) {
      endCodeNumbers.add(end);
    }
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/slice-ansi/9.0.0/f805a809732152751b3c8940cda004f1702a6d37ffff2a6048679b529925fda8/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()].toReversed().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 hasSgrStartFragment(token) {
  return token.fragments.some((fragment) => fragment.type === "start");
}
function discardPendingHyperlink(parameters) {
  if (parameters.activeHyperlink && !parameters.activeHyperlinkHasVisibleText && parameters.activeHyperlinkOutputIndex !== void 0) {
    const openCodeLength = parameters.activeHyperlink.code.length;
    parameters.returnValue = parameters.returnValue.slice(0, parameters.activeHyperlinkOutputIndex) + parameters.returnValue.slice(parameters.activeHyperlinkOutputIndex + openCodeLength);
    if (parameters.pendingSgrOutputIndex !== void 0 && parameters.pendingSgrOutputIndex > parameters.activeHyperlinkOutputIndex) {
      parameters.pendingSgrOutputIndex -= openCodeLength;
    }
  }
  parameters.activeHyperlink = void 0;
  parameters.activeHyperlinkHasVisibleText = false;
  parameters.activeHyperlinkOutputIndex = void 0;
}
function applySgrToken(parameters) {
  if (parameters.isPastEnd && !shouldIncludeSgrAfterEnd(parameters.token, parameters.activeStyles)) {
    return parameters;
  }
  if (parameters.include && hasSgrStartFragment(parameters.token) && parameters.pendingSgrOutputIndex === void 0) {
    parameters.pendingSgrOutputIndex = parameters.returnValue.length;
    parameters.pendingSgrActiveStyles = new Map(parameters.activeStyles);
  }
  parameters.activeStyles = applySgrFragments(parameters.activeStyles, parameters.token.fragments);
  if (parameters.include) {
    parameters.returnValue += parameters.token.code;
  }
  return parameters;
}
function applyHyperlinkToken(parameters) {
  if (parameters.isPastEnd && (parameters.token.action !== "close" || !parameters.activeHyperlink)) {
    return parameters;
  }
  if (parameters.token.action === "open") {
    parameters.activeHyperlink = parameters.token;
    parameters.activeHyperlinkHasVisibleText = false;
    parameters.activeHyperlinkOutputIndex = void 0;
    if (parameters.include) {
      parameters.activeHyperlinkOutputIndex = parameters.returnValue.length;
    }
  } else if (parameters.token.action === "close") {
    if (parameters.include && parameters.activeHyperlink && !parameters.activeHyperlinkHasVisibleText) {
      discardPendingHyperlink(parameters);
      return parameters;
    }
    parameters.activeHyperlink = void 0;
    parameters.activeHyperlinkHasVisibleText = false;
    parameters.activeHyperlinkOutputIndex = void 0;
  }
  if (parameters.include) {
    parameters.returnValue += parameters.token.code;
  }
  return parameters;
}
function applyControlToken(parameters) {
  if (!parameters.isPastEnd && parameters.include) {
    parameters.returnValue += parameters.token.code;
  }
  return parameters;
}
function applyCharacterToken(parameters) {
  if (!parameters.include && parameters.position >= parameters.start && !parameters.token.isGraphemeContinuation) {
    parameters.include = true;
    parameters.returnValue = [...parameters.activeStyles.values()].join("");
    if (parameters.activeHyperlink) {
      parameters.activeHyperlinkOutputIndex = parameters.returnValue.length;
      parameters.returnValue += parameters.activeHyperlink.code;
    }
  }
  if (parameters.include) {
    parameters.returnValue += parameters.token.value;
    parameters.pendingSgrOutputIndex = void 0;
    parameters.pendingSgrActiveStyles = void 0;
    if (parameters.activeHyperlink) {
      parameters.activeHyperlinkHasVisibleText = true;
    }
  }
  parameters.position += parameters.token.visibleWidth;
  return parameters;
}
function applyToken(parameters) {
  const tokenHandler = tokenHandlers[parameters.token.type];
  if (!tokenHandler) {
    return parameters;
  }
  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 isPastEndBoundary(token, position3, end) {
  if (end === void 0) {
    return false;
  }
  if (position3 >= end) {
    return true;
  }
  return token.type === "character" && !token.isGraphemeContinuation && position3 + token.visibleWidth > end;
}
function sliceAnsi(string, start, end) {
  const tokens = tokenizeAnsi(string, { endCharacter: end });
  const hasContinuationAhead = createHasContinuationAheadMap(tokens);
  let activeStyles = /* @__PURE__ */ new Map();
  let activeHyperlink;
  let activeHyperlinkHasVisibleText = false;
  let activeHyperlinkOutputIndex;
  let pendingSgrOutputIndex;
  let pendingSgrActiveStyles;
  let position3 = 0;
  let returnValue = "";
  let include = false;
  for (const [tokenIndex, token] of tokens.entries()) {
    let isPastEnd = isPastEndBoundary(token, position3, end);
    if (isPastEnd && token.type !== "character" && hasContinuationAhead[tokenIndex]) {
      isPastEnd = false;
    }
    if (isPastEnd && token.type === "character" && !token.isGraphemeContinuation) {
      if (activeHyperlink && !activeHyperlinkHasVisibleText) {
        const hyperlinkState = {
          activeHyperlink,
          activeHyperlinkHasVisibleText,
          activeHyperlinkOutputIndex,
          pendingSgrOutputIndex,
          returnValue
        };
        discardPendingHyperlink(hyperlinkState);
        ({
          activeHyperlink,
          activeHyperlinkHasVisibleText,
          activeHyperlinkOutputIndex,
          pendingSgrOutputIndex,
          returnValue
        } = hyperlinkState);
      }
      if (pendingSgrOutputIndex !== void 0) {
        returnValue = returnValue.slice(0, pendingSgrOutputIndex);
        activeStyles = pendingSgrActiveStyles;
        pendingSgrOutputIndex = void 0;
        pendingSgrActiveStyles = void 0;
      }
      break;
    }
    ({ activeStyles, activeHyperlink, activeHyperlinkHasVisibleText, activeHyperlinkOutputIndex, pendingSgrOutputIndex, pendingSgrActiveStyles, position: position3, returnValue, include } = applyToken({
      token,
      isPastEnd,
      start,
      activeStyles,
      activeHyperlink,
      activeHyperlinkHasVisibleText,
      activeHyperlinkOutputIndex,
      pendingSgrOutputIndex,
      pendingSgrActiveStyles,
      position: position3,
      returnValue,
      include
    }));
  }
  if (!include) {
    return "";
  }
  if (activeHyperlink) {
    returnValue += closeHyperlink(activeHyperlink);
  }
  returnValue += undoAnsiCodes(activeStyles);
  return returnValue;
}
var tokenHandlers;
var init_slice_ansi = __esm({
  "../../../../../setup-pnpm/store/v11/links/@/slice-ansi/9.0.0/f805a809732152751b3c8940cda004f1702a6d37ffff2a6048679b529925fda8/node_modules/slice-ansi/index.js"() {
    init_tokenize_ansi();
    tokenHandlers = {
      sgr: applySgrToken,
      hyperlink: applyHyperlinkToken,
      control: applyControlToken,
      character: applyCharacterToken
    };
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/cli-truncate/6.1.1/e009f451708b1de89d6a3b9d993f81f0d20694e7a1e11ac5c80a617c46a46da7/node_modules/cli-truncate/index.js
function getIndexOfNearestSpace(string, wantedIndex, shouldSearchRight) {
  if (string.charAt(wantedIndex) === " ") {
    return wantedIndex;
  }
  const direction = shouldSearchRight ? 1 : -1;
  for (let index2 = 0; index2 <= 3; index2++) {
    const finalIndex = wantedIndex + index2 * direction;
    if (string.charAt(finalIndex) === " ") {
      return finalIndex;
    }
  }
  return wantedIndex;
}
function validateInput(text, columns, position3, truncationCharacter) {
  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 (!Number.isFinite(columns)) {
    throw new TypeError(`Expected \`columns\` to be a finite number, got ${columns}`);
  }
  if (!validPositions.has(position3)) {
    throw new TypeError(`Expected \`options.position\` to be either \`start\`, \`middle\` or \`end\`, got ${position3}`);
  }
  if (typeof truncationCharacter !== "string") {
    throw new TypeError(`Expected \`options.truncationCharacter\` to be a string, got ${typeof truncationCharacter}`);
  }
}
function cliTruncate(text, columns, options = {}) {
  const {
    position: position3 = "end",
    space = false,
    preferTruncationOnSpace = false
  } = options;
  let { truncationCharacter = "\u2026" } = options;
  validateInput(text, columns, position3, truncationCharacter);
  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 index2 = 0;
    while (index2 + 2 < string.length && string.codePointAt(index2) === ANSI.ESC && string.codePointAt(index2 + 1) === ANSI.LEFT_BRACKET) {
      let j2 = index2 + 2;
      while (j2 < string.length && isSgrParameter(string.codePointAt(j2))) {
        j2++;
      }
      if (j2 < string.length && string.codePointAt(j2) === ANSI.LETTER_M) {
        index2 = j2 + 1;
        continue;
      }
      break;
    }
    return index2;
  }
  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 + stringWidth(truncationCharacter), 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} `;
      if (stringWidth(truncationCharacter) >= columns) {
        truncationCharacter = truncationCharacter.trim();
      }
    }
    const truncationWidth = stringWidth(truncationCharacter);
    const half = Math.min(Math.floor(columns / 2), Math.max(0, columns - truncationWidth));
    if (preferTruncationOnSpace) {
      const spaceNearFirstBreakPoint = getIndexOfNearestSpace(text, half);
      const spaceNearSecondBreakPoint = getIndexOfNearestSpace(text, length - (columns - half) + truncationWidth, true);
      return sliceAnsi(text, 0, spaceNearFirstBreakPoint) + truncationCharacter + sliceAnsi(text, spaceNearSecondBreakPoint, length).trim();
    }
    return sliceAnsi(text, 0, half) + truncationCharacter + sliceAnsi(text, length - (columns - half) + truncationWidth, length);
  }
  if (position3 === "end") {
    if (preferTruncationOnSpace) {
      const nearestSpace = getIndexOfNearestSpace(text, columns - stringWidth(truncationCharacter));
      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);
  }
}
var validPositions;
var init_cli_truncate = __esm({
  "../../../../../setup-pnpm/store/v11/links/@/cli-truncate/6.1.1/e009f451708b1de89d6a3b9d993f81f0d20694e7a1e11ac5c80a617c46a46da7/node_modules/cli-truncate/index.js"() {
    init_slice_ansi();
    init_string_width();
    validPositions = /* @__PURE__ */ new Set(["start", "middle", "end"]);
  }
});

// ../cli/default-reporter/lib/reporterForClient/reportLifecycleScripts.js
import path233 from "node:path";
function reportLifecycleScripts(log$, opts3) {
  if (opts3.appendOnly) {
    let lifecycle$ = log$.lifecycle;
    if (opts3.aggregateOutput) {
      lifecycle$ = lifecycle$.pipe(aggregateOutput);
    }
    const streamLifecycleOutput2 = createStreamLifecycleOutput(opts3.cwd, !!opts3.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 exit2 = typeof log3["exitCode"] === "number";
    let msg;
    if (lifecycleMessages[key].collapsed) {
      msg = renderCollapsedScriptOutput(log3, lifecycleMessages[key], { cwd: opts3.cwd, exit: exit2, maxWidth: opts3.width });
    } else {
      msg = renderScriptOutput(log3, lifecycleMessages[key], { cwd: opts3.cwd, exit: exit2, maxWidth: opts3.width });
    }
    if (exit2) {
      delete lifecycleMessages[key];
    }
    if (!lifecycleStreamByDepPath[key]) {
      lifecycleStreamByDepPath[key] = new Rx9.Subject();
      lifecyclePushStream.next(Rx9.from(lifecycleStreamByDepPath[key]));
    }
    lifecycleStreamByDepPath[key].next({ msg });
    if (exit2) {
      lifecycleStreamByDepPath[key].complete();
    }
  });
  return Rx9.from(lifecyclePushStream);
}
function toNano(time) {
  return (time[0] + time[1] / 1e9) * 1e3;
}
function renderCollapsedScriptOutput(log3, messageCache, opts3) {
  if (!messageCache.label) {
    messageCache.label = highlightLastFolder(formatPrefixNoTrim(opts3.cwd, log3.wd));
    if (log3.wd.includes(TMP_DIR_IN_STORE)) {
      messageCache.label += ` [${log3.depPath}]`;
    }
    messageCache.label += `: Running ${log3.stage} script`;
  }
  if (!opts3.exit) {
    updateMessageCache(log3, messageCache, opts3);
    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, opts3)}`;
}
function renderScriptOutput(log3, messageCache, opts3) {
  updateMessageCache(log3, messageCache, opts3);
  if (opts3.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, opts3) {
  if (log3.script) {
    const prefix = `${formatPrefix(opts3.cwd, log3.wd)} ${hlValue(log3.stage)}`;
    const maxLineWidth = opts3.maxWidth - prefix.length - 2 + ANSI_ESCAPES_LENGTH_OF_PREFIX;
    messageCache.script = `${prefix}$ ${cutLine(log3.script, maxLineWidth)}`;
  } else if (opts3.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(opts3.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 "";
  if (!Number.isFinite(maxLength))
    return line;
  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_source();
    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 = `${path233.sep}node_modules${path233.sep}`;
    TMP_DIR_IN_STORE = `tmp${path233.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 path234 from "node:path";
function reportLockfileVerification(lockfileVerification$, opts3) {
  const expectedDir = opts3.workspaceDir ?? opts3.cwd;
  return Rx10.of(lockfileVerification$.pipe((0, import_operators11.map)((log3) => {
    const path_ = formatLockfilePath(log3.lockfilePath, opts3.cwd, expectedDir);
    if (log3.status === "cached") {
      return {
        msg: `${source_default.green("\u2713")} Lockfile${path_} passes supply-chain policies (${formatCachedVerdict(log3.verifiedAt)})`
      };
    }
    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 formatCachedVerdict(verifiedAt) {
  if (verifiedAt == null)
    return "previously verified";
  const elapsedMs = Date.now() - Date.parse(verifiedAt);
  if (Number.isNaN(elapsedMs))
    return "previously verified";
  return `verified ${prettyMilliseconds(Math.max(elapsedMs, 0), { compact: true })} ago`;
}
function formatLockfilePath(lockfilePath, cwd, expectedDir) {
  if (lockfilePath == null)
    return "";
  const fromExpected = path234.relative(expectedDir, lockfilePath);
  const isDirectChild = !fromExpected.includes(path234.sep) && !fromExpected.startsWith("..");
  if (isDirectChild)
    return "";
  return ` at ${(0, import_normalize_path19.default)(path234.relative(cwd, lockfilePath))}`;
}
var import_normalize_path19, Rx10, import_operators11;
var init_reportLockfileVerification = __esm({
  "../cli/default-reporter/lib/reporterForClient/reportLockfileVerification.js"() {
    "use strict";
    init_source();
    import_normalize_path19 = __toESM(require_normalize_path(), 1);
    init_pretty_ms();
    Rx10 = __toESM(require_cjs2(), 1);
    import_operators11 = __toESM(require_operators(), 1);
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/source-map/0.6.1/ebd39c54774ec47b37ba995746f48f551fa0db0869052e27d0839dfb25f8d56f/node_modules/source-map/lib/base64.js
var require_base64 = __commonJS({
  "../../../../../setup-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 zero2 = 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 (zero2 <= charCode && charCode <= nine) {
        return charCode - zero2 + numberOffset;
      }
      if (charCode == plus) {
        return 62;
      }
      if (charCode == slash) {
        return 63;
      }
      return -1;
    };
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/source-map/0.6.1/ebd39c54774ec47b37ba995746f48f551fa0db0869052e27d0839dfb25f8d56f/node_modules/source-map/lib/base64-vlq.js
var require_base64_vlq = __commonJS({
  "../../../../../setup-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;
    };
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/source-map/0.6.1/ebd39c54774ec47b37ba995746f48f551fa0db0869052e27d0839dfb25f8d56f/node_modules/source-map/lib/util.js
var require_util14 = __commonJS({
  "../../../../../setup-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 path240 = aPath;
      var url7 = urlParse(aPath);
      if (url7) {
        if (!url7.path) {
          return aPath;
        }
        path240 = url7.path;
      }
      var isAbsolute4 = exports2.isAbsolute(path240);
      var parts = path240.split(/\/+/);
      for (var part, up3 = 0, i4 = parts.length - 1; i4 >= 0; i4--) {
        part = parts[i4];
        if (part === ".") {
          parts.splice(i4, 1);
        } else if (part === "..") {
          up3++;
        } else if (up3 > 0) {
          if (part === "") {
            parts.splice(i4 + 1, up3);
            up3 = 0;
          } else {
            parts.splice(i4, 2);
            up3--;
          }
        }
      }
      path240 = parts.join("/");
      if (path240 === "") {
        path240 = isAbsolute4 ? "/" : ".";
      }
      if (url7) {
        url7.path = path240;
        return urlGenerate(url7);
      }
      return path240;
    }
    exports2.normalize = normalize11;
    function join5(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 = join5;
    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 index2 = aRoot.lastIndexOf("/");
        if (index2 < 0) {
          return aPath;
        }
        aRoot = aRoot.slice(0, index2);
        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 i4 = length - 10; i4 >= 0; i4--) {
        if (s.charCodeAt(i4) !== 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 index2 = parsed.path.lastIndexOf("/");
          if (index2 >= 0) {
            parsed.path = parsed.path.substring(0, index2 + 1);
          }
        }
        sourceURL = join5(urlGenerate(parsed), sourceURL);
      }
      return normalize11(sourceURL);
    }
    exports2.computeSourceURL = computeSourceURL;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/source-map/0.6.1/ebd39c54774ec47b37ba995746f48f551fa0db0869052e27d0839dfb25f8d56f/node_modules/source-map/lib/array-set.js
var require_array_set = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/source-map/0.6.1/ebd39c54774ec47b37ba995746f48f551fa0db0869052e27d0839dfb25f8d56f/node_modules/source-map/lib/array-set.js"(exports2) {
    var util70 = 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 i4 = 0, len = aArray.length; i4 < len; i4++) {
        set2.add(aArray[i4], 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 : util70.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 = util70.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 = util70.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;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/source-map/0.6.1/ebd39c54774ec47b37ba995746f48f551fa0db0869052e27d0839dfb25f8d56f/node_modules/source-map/lib/mapping-list.js
var require_mapping_list = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/source-map/0.6.1/ebd39c54774ec47b37ba995746f48f551fa0db0869052e27d0839dfb25f8d56f/node_modules/source-map/lib/mapping-list.js"(exports2) {
    var util70 = 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 || util70.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(util70.compareByGeneratedPositionsInflated);
        this._sorted = true;
      }
      return this._array;
    };
    exports2.MappingList = MappingList;
  }
});

// ../../../../../setup-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({
  "../../../../../setup-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 util70 = require_util14();
    var ArraySet = require_array_set().ArraySet;
    var MappingList = require_mapping_list().MappingList;
    function SourceMapGenerator(aArgs) {
      if (!aArgs) {
        aArgs = {};
      }
      this._file = util70.getArg(aArgs, "file", null);
      this._sourceRoot = util70.getArg(aArgs, "sourceRoot", null);
      this._skipValidation = util70.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 = util70.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 = util70.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 = util70.getArg(aArgs, "generated");
      var original = util70.getArg(aArgs, "original", null);
      var source = util70.getArg(aArgs, "source", null);
      var name = util70.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 = util70.relative(this._sourceRoot, source);
      }
      if (aSourceContent != null) {
        if (!this._sourcesContents) {
          this._sourcesContents = /* @__PURE__ */ Object.create(null);
        }
        this._sourcesContents[util70.toSetString(source)] = aSourceContent;
      } else if (this._sourcesContents) {
        delete this._sourcesContents[util70.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 = util70.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 = util70.join(aSourceMapPath, mapping.source);
            }
            if (sourceRoot != null) {
              mapping.source = util70.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 = util70.join(aSourceMapPath, sourceFile2);
          }
          if (sourceRoot != null) {
            sourceFile2 = util70.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 i4 = 0, len = mappings.length; i4 < len; i4++) {
        mapping = mappings[i4];
        next2 = "";
        if (mapping.generatedLine !== previousGeneratedLine) {
          previousGeneratedColumn = 0;
          while (mapping.generatedLine !== previousGeneratedLine) {
            next2 += ";";
            previousGeneratedLine++;
          }
        } else {
          if (i4 > 0) {
            if (!util70.compareByGeneratedPositionsInflated(mapping, mappings[i4 - 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 = util70.relative(aSourceRoot, source);
        }
        var key = util70.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;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/source-map/0.6.1/ebd39c54774ec47b37ba995746f48f551fa0db0869052e27d0839dfb25f8d56f/node_modules/source-map/lib/binary-search.js
var require_binary_search = __commonJS({
  "../../../../../setup-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 index2 = recursiveSearch(
        -1,
        aHaystack.length,
        aNeedle,
        aHaystack,
        aCompare,
        aBias || exports2.GREATEST_LOWER_BOUND
      );
      if (index2 < 0) {
        return -1;
      }
      while (index2 - 1 >= 0) {
        if (aCompare(aHaystack[index2], aHaystack[index2 - 1], true) !== 0) {
          break;
        }
        --index2;
      }
      return index2;
    };
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/source-map/0.6.1/ebd39c54774ec47b37ba995746f48f551fa0db0869052e27d0839dfb25f8d56f/node_modules/source-map/lib/quick-sort.js
var require_quick_sort = __commonJS({
  "../../../../../setup-pnpm/store/v11/links/@/source-map/0.6.1/ebd39c54774ec47b37ba995746f48f551fa0db0869052e27d0839dfb25f8d56f/node_modules/source-map/lib/quick-sort.js"(exports2) {
    function swap(ary, x3, y) {
      var temp = ary[x3];
      ary[x3] = 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 i4 = p - 1;
        swap(ary, pivotIndex, r);
        var pivot = ary[r];
        for (var j2 = p; j2 < r; j2++) {
          if (comparator(ary[j2], pivot) <= 0) {
            i4 += 1;
            swap(ary, i4, j2);
          }
        }
        swap(ary, i4 + 1, j2);
        var q = i4 + 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);
    };
  }
});

// ../../../../../setup-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({
  "../../../../../setup-pnpm/store/v11/links/@/source-map/0.6.1/ebd39c54774ec47b37ba995746f48f551fa0db0869052e27d0839dfb25f8d56f/node_modules/source-map/lib/source-map-consumer.js"(exports2) {
    var util70 = 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 = util70.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, index2) {
      var c3 = aStr.charAt(index2);
      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 = util70.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 = util70.getArg(aArgs, "line");
      var needle = {
        source: util70.getArg(aArgs, "source"),
        originalLine: line,
        originalColumn: util70.getArg(aArgs, "column", 0)
      };
      needle.source = this._findSourceIndex(needle.source);
      if (needle.source < 0) {
        return [];
      }
      var mappings = [];
      var index2 = this._findMapping(
        needle,
        this._originalMappings,
        "originalLine",
        "originalColumn",
        util70.compareByOriginalPositions,
        binarySearch.LEAST_UPPER_BOUND
      );
      if (index2 >= 0) {
        var mapping = this._originalMappings[index2];
        if (aArgs.column === void 0) {
          var originalLine = mapping.originalLine;
          while (mapping && mapping.originalLine === originalLine) {
            mappings.push({
              line: util70.getArg(mapping, "generatedLine", null),
              column: util70.getArg(mapping, "generatedColumn", null),
              lastColumn: util70.getArg(mapping, "lastGeneratedColumn", null)
            });
            mapping = this._originalMappings[++index2];
          }
        } else {
          var originalColumn = mapping.originalColumn;
          while (mapping && mapping.originalLine === line && mapping.originalColumn == originalColumn) {
            mappings.push({
              line: util70.getArg(mapping, "generatedLine", null),
              column: util70.getArg(mapping, "generatedColumn", null),
              lastColumn: util70.getArg(mapping, "lastGeneratedColumn", null)
            });
            mapping = this._originalMappings[++index2];
          }
        }
      }
      return mappings;
    };
    exports2.SourceMapConsumer = SourceMapConsumer;
    function BasicSourceMapConsumer(aSourceMap, aSourceMapURL) {
      var sourceMap = aSourceMap;
      if (typeof aSourceMap === "string") {
        sourceMap = util70.parseSourceMapInput(aSourceMap);
      }
      var version2 = util70.getArg(sourceMap, "version");
      var sources = util70.getArg(sourceMap, "sources");
      var names = util70.getArg(sourceMap, "names", []);
      var sourceRoot = util70.getArg(sourceMap, "sourceRoot", null);
      var sourcesContent = util70.getArg(sourceMap, "sourcesContent", null);
      var mappings = util70.getArg(sourceMap, "mappings");
      var file = util70.getArg(sourceMap, "file", null);
      if (version2 != this._version) {
        throw new Error("Unsupported version: " + version2);
      }
      if (sourceRoot) {
        sourceRoot = util70.normalize(sourceRoot);
      }
      sources = sources.map(String).map(util70.normalize).map(function(source) {
        return sourceRoot && util70.isAbsolute(sourceRoot) && util70.isAbsolute(source) ? util70.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 util70.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 = util70.relative(this.sourceRoot, relativeSource);
      }
      if (this._sources.has(relativeSource)) {
        return this._sources.indexOf(relativeSource);
      }
      var i4;
      for (i4 = 0; i4 < this._absoluteSources.length; ++i4) {
        if (this._absoluteSources[i4] == aSource) {
          return i4;
        }
      }
      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 util70.computeSourceURL(smc.sourceRoot, s, aSourceMapURL);
      });
      var generatedMappings = aSourceMap._mappings.toArray().slice();
      var destGeneratedMappings = smc.__generatedMappings = [];
      var destOriginalMappings = smc.__originalMappings = [];
      for (var i4 = 0, length = generatedMappings.length; i4 < length; i4++) {
        var srcMapping = generatedMappings[i4];
        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, util70.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 index2 = 0;
      var cachedSegments = {};
      var temp = {};
      var originalMappings = [];
      var generatedMappings = [];
      var mapping, str2, segment, end, value;
      while (index2 < length) {
        if (aStr.charAt(index2) === ";") {
          generatedLine++;
          index2++;
          previousGeneratedColumn = 0;
        } else if (aStr.charAt(index2) === ",") {
          index2++;
        } else {
          mapping = new Mapping();
          mapping.generatedLine = generatedLine;
          for (end = index2; end < length; end++) {
            if (this._charIsMappingSeparator(aStr, end)) {
              break;
            }
          }
          str2 = aStr.slice(index2, end);
          segment = cachedSegments[str2];
          if (segment) {
            index2 += str2.length;
          } else {
            segment = [];
            while (index2 < end) {
              base64VLQ.decode(aStr, index2, temp);
              value = temp.value;
              index2 = 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, util70.compareByGeneratedPositionsDeflated);
      this.__generatedMappings = generatedMappings;
      quickSort(originalMappings, util70.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 index2 = 0; index2 < this._generatedMappings.length; ++index2) {
        var mapping = this._generatedMappings[index2];
        if (index2 + 1 < this._generatedMappings.length) {
          var nextMapping = this._generatedMappings[index2 + 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: util70.getArg(aArgs, "line"),
        generatedColumn: util70.getArg(aArgs, "column")
      };
      var index2 = this._findMapping(
        needle,
        this._generatedMappings,
        "generatedLine",
        "generatedColumn",
        util70.compareByGeneratedPositionsDeflated,
        util70.getArg(aArgs, "bias", SourceMapConsumer.GREATEST_LOWER_BOUND)
      );
      if (index2 >= 0) {
        var mapping = this._generatedMappings[index2];
        if (mapping.generatedLine === needle.generatedLine) {
          var source = util70.getArg(mapping, "source", null);
          if (source !== null) {
            source = this._sources.at(source);
            source = util70.computeSourceURL(this.sourceRoot, source, this._sourceMapURL);
          }
          var name = util70.getArg(mapping, "name", null);
          if (name !== null) {
            name = this._names.at(name);
          }
          return {
            source,
            line: util70.getArg(mapping, "originalLine", null),
            column: util70.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 index2 = this._findSourceIndex(aSource);
      if (index2 >= 0) {
        return this.sourcesContent[index2];
      }
      var relativeSource = aSource;
      if (this.sourceRoot != null) {
        relativeSource = util70.relative(this.sourceRoot, relativeSource);
      }
      var url7;
      if (this.sourceRoot != null && (url7 = util70.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 = util70.getArg(aArgs, "source");
      source = this._findSourceIndex(source);
      if (source < 0) {
        return {
          line: null,
          column: null,
          lastColumn: null
        };
      }
      var needle = {
        source,
        originalLine: util70.getArg(aArgs, "line"),
        originalColumn: util70.getArg(aArgs, "column")
      };
      var index2 = this._findMapping(
        needle,
        this._originalMappings,
        "originalLine",
        "originalColumn",
        util70.compareByOriginalPositions,
        util70.getArg(aArgs, "bias", SourceMapConsumer.GREATEST_LOWER_BOUND)
      );
      if (index2 >= 0) {
        var mapping = this._originalMappings[index2];
        if (mapping.source === needle.source) {
          return {
            line: util70.getArg(mapping, "generatedLine", null),
            column: util70.getArg(mapping, "generatedColumn", null),
            lastColumn: util70.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 = util70.parseSourceMapInput(aSourceMap);
      }
      var version2 = util70.getArg(sourceMap, "version");
      var sections = util70.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 = util70.getArg(s, "offset");
        var offsetLine = util70.getArg(offset, "line");
        var offsetColumn = util70.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(util70.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 i4 = 0; i4 < this._sections.length; i4++) {
          for (var j2 = 0; j2 < this._sections[i4].consumer.sources.length; j2++) {
            sources.push(this._sections[i4].consumer.sources[j2]);
          }
        }
        return sources;
      }
    });
    IndexedSourceMapConsumer.prototype.originalPositionFor = function IndexedSourceMapConsumer_originalPositionFor(aArgs) {
      var needle = {
        generatedLine: util70.getArg(aArgs, "line"),
        generatedColumn: util70.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 i4 = 0; i4 < this._sections.length; i4++) {
        var section = this._sections[i4];
        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 i4 = 0; i4 < this._sections.length; i4++) {
        var section = this._sections[i4];
        if (section.consumer._findSourceIndex(util70.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 i4 = 0; i4 < this._sections.length; i4++) {
        var section = this._sections[i4];
        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 = util70.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, util70.compareByGeneratedPositionsDeflated);
      quickSort(this.__originalMappings, util70.compareByOriginalPositions);
    };
    exports2.IndexedSourceMapConsumer = IndexedSourceMapConsumer;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/source-map/0.6.1/ebd39c54774ec47b37ba995746f48f551fa0db0869052e27d0839dfb25f8d56f/node_modules/source-map/lib/source-node.js
var require_source_node = __commonJS({
  "../../../../../setup-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 util70 = 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 = util70.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 ? util70.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 i4 = aChunk.length - 1; i4 >= 0; i4--) {
          this.prepend(aChunk[i4]);
        }
      } 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 i4 = 0, len = this.children.length; i4 < len; i4++) {
        chunk = this.children[i4];
        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 i4;
      var len = this.children.length;
      if (len > 0) {
        newChildren = [];
        for (i4 = 0; i4 < len - 1; i4++) {
          newChildren.push(this.children[i4]);
          newChildren.push(aSep);
        }
        newChildren.push(this.children[i4]);
        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[util70.toSetString(aSourceFile)] = aSourceContent;
    };
    SourceNode.prototype.walkSourceContents = function SourceNode_walkSourceContents(aFn) {
      for (var i4 = 0, len = this.children.length; i4 < len; i4++) {
        if (this.children[i4][isSourceNode]) {
          this.children[i4].walkSourceContents(aFn);
        }
      }
      var sources = Object.keys(this.sourceContents);
      for (var i4 = 0, len = sources.length; i4 < len; i4++) {
        aFn(util70.fromSetString(sources[i4]), this.sourceContents[sources[i4]]);
      }
    };
    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;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/source-map/0.6.1/ebd39c54774ec47b37ba995746f48f551fa0db0869052e27d0839dfb25f8d56f/node_modules/source-map/source-map.js
var require_source_map = __commonJS({
  "../../../../../setup-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;
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/get-source/2.0.12/9ce054480c6cba4f93e89dbdf5d61762f6b7c578308d1220c4b155b24477534e/node_modules/get-source/impl/SyncPromise.js
var require_SyncPromise = __commonJS({
  "../../../../../setup-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(
            (x3) => {
              this.setValue(x3, false);
            },
            // resolve
            (x3) => {
              this.setValue(x3, true);
            }
            // reject
          );
        } catch (e) {
          this.setValue(e, true);
        }
      }
      setValue(x3, rejected) {
        this.val = x3 instanceof SyncPromise ? x3.val : x3;
        this.rejected = rejected || (x3 instanceof SyncPromise ? x3.rejected : false);
      }
      static valueFrom(x3) {
        if (x3 instanceof SyncPromise) {
          if (x3.rejected) throw x3.val;
          else return x3.val;
        } else {
          return x3;
        }
      }
      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(x3) {
        return new SyncPromise((resolve4) => {
          resolve4(x3);
        });
      }
      static reject(x3) {
        return new SyncPromise((_, reject3) => {
          reject3(x3);
        });
      }
    };
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/get-source/2.0.12/9ce054480c6cba4f93e89dbdf5d61762f6b7c578308d1220c4b155b24477534e/node_modules/get-source/impl/path.js
var require_path5 = __commonJS({
  "../../../../../setup-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 path240 = 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(x3) {
        if (path240.isAbsolute(x3)) {
          return path240.normalize(x3);
        }
        return path240.normalize(path240.concat(cwd, x3));
      },
      normalize(x3) {
        let output = [], skip2 = 0;
        x3.split("/").reverse().filter((x4) => x4 !== ".").forEach((x4) => {
          if (x4 === "..") {
            skip2++;
          } else if (skip2 === 0) {
            output.push(x4);
          } else {
            skip2--;
          }
        });
        const result2 = output.reverse().join("/");
        return (isBrowser2 && result2[0] === "/" ? result2[1] === "/" ? window.location.protocol : window.location.origin : "") + result2;
      },
      isData: (x3) => x3.indexOf("data:") === 0,
      isURL: (x3) => urlRegexp.test(x3),
      isAbsolute: (x3) => x3[0] === "/" || /^[^\/]*:/.test(x3),
      relativeToFile(a2, b) {
        return path240.isData(a2) || path240.isAbsolute(b) ? path240.normalize(b) : path240.normalize(path240.concat(a2.split("/").slice(0, -1).join("/"), b));
      }
    };
  }
});

// ../../../../../setup-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({
  "../../../../../setup-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 i4 = 1; i4 < meta.length; i4++) {
        if ("base64" == meta[i4]) {
          base64 = true;
        } else {
          typeFull += ";" + meta[i4];
          if (0 == meta[i4].indexOf("charset=")) {
            charset = meta[i4].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;
    }
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/get-source/2.0.12/9ce054480c6cba4f93e89dbdf5d61762f6b7c578308d1220c4b155b24477534e/node_modules/get-source/get-source.js
var require_get_source = __commonJS({
  "../../../../../setup-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 path240 = require_path5();
    var dataURIToBuffer = require_data_uri_to_buffer();
    var nodeRequire = isBrowser2 ? null : module2.require;
    var memoize2 = (f) => {
      const m = (x3) => x3 in m.cache ? m.cache[x3] : m.cache[x3] = f(x3);
      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((path241) => SourceFile(path241, fetchFile(path241)));
      function SourceFile(srcPath, text) {
        if (text === void 0) return SourceFileMemoized(path240.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(path240.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 = path240.relativeToFile(f.path, filePath);
            return parsedMap.then((x3) => SourceFile(
              fullPath,
              x3.sourceContentFor(
                filePath,
                true
                /* return null on missing */
              ) || void 0
            ));
          });
        });
        return (loc) => parsedMap.then((x3) => {
          const originalLoc = x3.originalPositionFor(loc);
          return originalLoc.source ? sourceFor(originalLoc.source).then(
            (x4) => x4._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(path241) {
        const file = SourceFile(path241);
        if (sync3) {
          try {
            return SyncPromise.valueFrom(file);
          } catch (e) {
            const noFile = {
              path: path241,
              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(path241) {
      return new SyncPromise((resolve4) => {
        if (isBrowser2) {
          let xhr = new XMLHttpRequest();
          xhr.open(
            "GET",
            path241,
            false
            /* SYNCHRONOUS XHR FTW :) */
          );
          xhr.send(null);
          resolve4(xhr.responseText);
        } else {
          resolve4(nodeRequire("fs").readFileSync(path241, { encoding: "utf8" }));
        }
      });
    }, true);
    module2.exports.async = impl(function fetchFileAsync(path241) {
      return new Promise((resolve4, reject3) => {
        if (isBrowser2) {
          let xhr = new XMLHttpRequest();
          xhr.open("GET", path241);
          xhr.onreadystatechange = (event) => {
            if (xhr.readyState === 4) {
              if (xhr.status === 200) {
                resolve4(xhr.responseText);
              } else {
                reject3(new Error(xhr.statusText));
              }
            }
          };
          xhr.send(null);
        } else {
          nodeRequire("fs").readFile(path241, { encoding: "utf8" }, (e, x3) => {
            e ? reject3(e) : resolve4(x3);
          });
        }
      });
    });
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/stacktracey/2.2.0/7b0e97511556ff7bf47e2912a575be16995796cd90f62c87be4986f7f9c9caf8/node_modules/stacktracey/impl/partition.js
var require_partition4 = __commonJS({
  "../../../../../setup-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((x3) => {
        const label = pred(x3);
        if (span.label !== label && span.items.length) {
          spans.push(span = { label, items: [x3] });
        } else {
          span.items.push(x3);
        }
      });
      return spans;
    };
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/printable-characters/1.0.42/cb1361b9e098f3fa90d21d23abb7ed3c937d126ff428a6f47a45d1bcdcc7d94c/node_modules/printable-characters/build/printable-characters.js
var require_printable_characters = __commonJS({
  "../../../../../setup-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, i4) {
        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 (i4 && _arr.length === i4) break;
          }
        } catch (err2) {
          _d = true;
          _e = err2;
        } finally {
          try {
            if (!_n && _i["return"]) _i["return"]();
          } finally {
            if (_d) throw _e;
          }
        }
        return _arr;
      }
      return function(arr, i4) {
        if (Array.isArray(arr)) {
          return arr;
        } else if (Symbol.iterator in Object(arr)) {
          return sliceIterator(arr, i4);
        } 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((x3) => x3 === "	" || x3 === "\n" ? x3 : " ").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;
      }
    };
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/as-table/1.0.55/0eae360532f84711dcb6b339fa9065b0245dc63b832077deaacf6f209f13e3b5/node_modules/as-table/build/as-table.js
var require_as_table = __commonJS({
  "../../../../../setup-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 i4 = 0, arr2 = Array(arr.length); i4 < arr.length; i4++) arr2[i4] = arr[i4];
        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, i4) => [].concat(_toConsumableArray(a2[i4] || []), [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((x3) => 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, max4, relative2) => Math.max(min, Math.floor(max4 - 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, i4) => c3 === void 0 ? "" : cfg.print(c3, i4))), 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
    });
  }
});

// ../../../../../setup-pnpm/store/v11/links/@/stacktracey/2.2.0/7b0e97511556ff7bf47e2912a575be16995796cd90f62c87be4986f7f9c9caf8/node_modules/stacktracey/stacktracey.js
var require_stacktracey = __commonJS({
  "../../../../../setup-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 = (x3) => x3[x3.length - 1];
    var getSource = require_get_source();
    var partition3 = require_partition4();
    var asTable = require_as_table();
    var nixSlashes = (x3) => x3.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((x3) => this.extractEntryMetadata(x3));
        }
        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(relativePath2) {
        return relativePath2.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(relativePath2, externalDomain) {
        return externalDomain || relativePath2[0] === "~" || // webpack-specific heuristic
        relativePath2[0] === "/" || // external source
        relativePath2.indexOf("node_modules") === 0 || relativePath2.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((x3) => x3 !== void 0);
      }
      withSourceAt(i4) {
        return this.items[i4] && this.withSource(this.items[i4]);
      }
      withSourceAsyncAt(i4) {
        return this.items[i4] && this.withSourceAsync(this.items[i4]);
      }
      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((x3) => x3.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((x3) => this.withSource(x3));
      }
      withSourcesAsync() {
        return Promise.all(this.items.map((x3) => this.withSourceAsync(x3))).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, index2) {
        return index2 === 0 || !(entry.thirdParty || entry.hide || entry.native);
      }
      at(i4) {
        return O2.assign({
          beforeParse: "",
          callee: "<???>",
          index: false,
          native: false,
          file: "<???>",
          line: 0,
          column: 0
        }, this.items[i4]);
      }
      asTable(opts3) {
        const maxColumnWidths = opts3 && opts3.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((method2) => {
      StackTracey2.prototype[method2] = function() {
        return new StackTracey2(this.items[method2].apply(this.items, arguments));
      };
    });
    module2.exports = StackTracey2;
  }
});

// ../cli/default-reporter/lib/reportError.js
function reportError(logObj, config2) {
  const errorInfo = getErrorInfo(logObj, config2);
  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, config2) {
  if ("err" in logObj && logObj.err) {
    const err2 = logObj.err;
    switch (err2.code) {
      case "ERR_PNPM_UNEXPECTED_STORE":
        return reportUnexpectedStore(err2, logObj);
      // eslint-disable-line @typescript-eslint/no-explicit-any
      case "ERR_PNPM_UNEXPECTED_VIRTUAL_STORE":
        return reportUnexpectedVirtualStoreDir(err2, 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(err2, logObj);
      case "ERR_PNPM_RECURSIVE_RUN_NO_SCRIPT":
        return { title: err2.message };
      case "ERR_PNPM_MISSING_TIME":
        return { title: err2.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(err2, 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(err2, 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(err2, logObj);
      // eslint-disable-line @typescript-eslint/no-explicit-any
      case "ERR_PNPM_DEDUPE_CHECK_ISSUES":
        return reportDedupeCheckIssuesError(err2, logObj);
      // eslint-disable-line @typescript-eslint/no-explicit-any
      case "ERR_PNPM_SPEC_NOT_SUPPORTED_BY_ANY_RESOLVER":
        return reportSpecNotSupportedByAnyResolverError(err2, logObj);
      // eslint-disable-line @typescript-eslint/no-explicit-any
      case "ERR_PNPM_FETCH_401":
      case "ERR_PNPM_FETCH_403":
        return reportAuthError(err2, logObj, config2);
      // eslint-disable-line @typescript-eslint/no-explicit-any
      default: {
        if (!err2.code?.startsWith?.("ERR_PNPM_")) {
          return formatGenericError(err2.message ?? logObj.message, err2.stack);
        }
        return {
          title: err2.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(err2, msg) {
  const meta = msg.packageMeta;
  if (!meta) {
    return { title: err2.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: err2.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(err2, msg) {
  return {
    title: err2.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(err2, msg) {
  return {
    title: err2.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(err2, _msg) {
  return {
    title: err2.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(err2, _msg) {
  return {
    title: err2.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(err2, msg, config2) {
  const foundSettings = [];
  for (const [key, value] of Object.entries(config2?.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: err2.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(err2, 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: err2.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(err2, msg) {
  return {
    title: err2.message,
    body: `${renderDedupeCheckIssues(msg.dedupeCheckIssues)}
Run ${source_default.yellow("pnpm dedupe")} to apply the changes above.
`
  };
}
function reportSpecNotSupportedByAnyResolverError(err2, logObj) {
  if (logObj.package?.bareSpecifier?.startsWith("catalog:")) {
    return reportExternalCatalogProtocolError(err2, logObj);
  }
  return {
    title: err2.message ?? "",
    body: logObj.hint
  };
}
function reportExternalCatalogProtocolError(err2, 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: err2.message,
    body
  };
}
var import_stacktracey, highlight, colorPath;
var init_reportError = __esm({
  "../cli/default-reporter/lib/reportError.js"() {
    "use strict";
    init_lib158();
    init_lib138();
    init_source();
    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 os19 from "node:os";
function reportMisc(log$, opts3) {
  const maxLogLevel = LOG_LEVEL_NUMBER[opts3.logLevel ?? "info"] ?? LOG_LEVEL_NUMBER["info"];
  const reportWarning = makeWarningReporter(opts3);
  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"] === opts3.cwd)), (0, import_operators12.map)((obj) => {
    switch (obj.level) {
      case "warn": {
        return reportWarning(obj);
      }
      case "error": {
        const errorOutput = reportError(obj, opts3.config);
        if (!errorOutput)
          return Rx11.NEVER;
        if (obj["prefix"] && obj["prefix"] !== opts3.cwd) {
          return Rx11.of({
            msg: `${obj["prefix"]}:` + os19.EOL + errorOutput
          });
        }
        return Rx11.of({ msg: errorOutput });
      }
      default:
        return Rx11.of({ msg: obj.message });
    }
  }));
}
function makeWarningReporter(opts3) {
  let warningsCounter = 0;
  let collapsedWarnings;
  return (obj) => {
    warningsCounter++;
    if (opts3.appendOnly || warningsCounter <= MAX_SHOWN_WARNINGS) {
      return Rx11.of({ msg: autozoom(opts3.cwd, obj.prefix, formatWarn(obj.message), opts3) });
    }
    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$, opts3) {
  const progressOutput = throttledProgressOutput.bind(null, opts3);
  return getModulesInstallProgress$(log$.stage, log$.progress).pipe((0, import_operators14.map)(opts3.hideProgressPrefix ? ({ importingDone$, progress$ }) => progressOutput(importingDone$, progress$) : ({ importingDone$, progress$, requirer }) => {
    const output$ = progressOutput(importingDone$, progress$);
    if (requirer === opts3.cwd) {
      return output$;
    }
    return output$.pipe((0, import_operators14.map)((msg) => {
      msg["msg"] = zoomOut(opts3.cwd, requirer, msg["msg"]);
      return msg;
    }));
  }));
}
function throttledProgressOutput(opts3, importingDone$, progress$) {
  if (opts3.throttle != null) {
    progress$ = progress$.pipe(opts3.throttle);
  }
  const combinedProgress = Rx13.combineLatest(progress$, importingDone$).pipe((0, import_operators14.takeWhile)(([, importingDone]) => !importingDone, true));
  return combinedProgress.pipe((0, import_operators14.map)(opts3.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$, opts3) {
  if (!COMMANDS_THAT_REPORT_SCOPE.has(opts3.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$, opts3) {
  return skippedOptionalDependency$.pipe((0, import_operators17.filter)((log3) => Boolean(log3["prefix"] === opts3.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);
  }
});

// ../../../../../setup-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 && stripVTControlCharacters4) {
    string = stripVTControlCharacters4(string);
    if (string === "") {
      return 0;
    }
  }
  let length = 0;
  for (const _ of segmenter2.segment(string)) {
    length++;
  }
  return length;
}
var stripVTControlCharacters4, segmenter2;
var init_string_length = __esm({
  "../../../../../setup-pnpm/store/v11/links/@/string-length/7.0.1/206298d2fce741e36b71416cb396b8fa589a3e75155e69440a7487daffa7154c/node_modules/string-length/index.js"() {
    ({ stripVTControlCharacters: stripVTControlCharacters4 } = globalThis.process?.getBuiltinModule?.("node:util") ?? {});
    segmenter2 = new Intl.Segmenter();
  }
});

// ../cli/default-reporter/lib/reporterForClient/reportStats.js
function reportStats(log$, opts3) {
  if (opts3.hideProgressPrefix) {
    return [statsForCurrentPackage(log$.stats, {
      cmd: opts3.cmd,
      width: opts3.width
    })];
  }
  const stats$ = opts3.isRecursive ? log$.stats : log$.stats.pipe((0, import_operators18.filter)((log3) => log3.prefix !== opts3.cwd));
  const outputs = [
    statsForNotCurrentPackage(stats$, {
      cmd: opts3.cmd,
      currentPrefix: opts3.cwd,
      width: opts3.width
    })
  ];
  if (!opts3.isRecursive) {
    outputs.push(statsForCurrentPackage(log$.stats.pipe((0, import_operators18.filter)((log3) => log3.prefix === opts3.cwd)), {
      cmd: opts3.cmd,
      width: opts3.width
    }));
  }
  return outputs;
}
function statsForCurrentPackage(stats$, opts3) {
  return stats$.pipe((0, import_operators18.take)(opts3.cmd === "install" || opts3.cmd === "install-test" || opts3.cmd === "add" || opts3.cmd === "update" || opts3.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 (opts3.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(opts3.width, stats["added"] ?? 0, stats["removed"] ?? 0);
    return Rx17.of({ msg });
  }));
}
function statsForNotCurrentPackage(stats$, opts3) {
  const stats = {};
  const cookedStats$ = opts3.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(opts3.currentPrefix, stats2.prefix, parts.join(" "));
    const rest = Math.max(0, opts3.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_source();
    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$, opts3) {
  const deprecationSet$ = log$.deprecation.pipe((0, import_operators19.filter)((log3) => !opts3.prefix || log3.prefix === opts3.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 = opts3.prefix ? (0, import_operators19.filter)((log3) => log3.prefix === opts3.prefix) : (x3) => x3;
  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 path235 from "node:path";
function reportSummary2(log$, opts3) {
  const pkgsDiff$ = getPkgsDiff(log$, { prefix: opts3.pnpmConfig?.global ? void 0 : opts3.cwd });
  const summaryLog$ = log$.summary.pipe((0, import_operators20.take)(1));
  const _printDiffs = printDiffs.bind(null, { cmd: opts3.cmd, prefix: opts3.cwd, pnpmConfig: opts3.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 (opts3.filterPkgsDiff) {
        diffs = diffs.filter((pkgDiff) => opts3.filterPkgsDiff(pkgDiff));
      }
      if (diffs.length > 0) {
        msg += EOL;
        msg += source_default.cyanBright(opts3.pnpmConfig?.global ? "global:" : `${propertyByDependencyType[depType]}:`);
        msg += EOL;
        msg += _printDiffs(diffs, depType);
        msg += EOL;
      } else if (CONFIG_BY_DEP_TYPE[depType] && opts3.pnpmConfig?.[CONFIG_BY_DEP_TYPE[depType]] === false) {
        msg += EOL;
        msg += `${source_default.cyanBright(`${propertyByDependencyType[depType]}:`)} skipped`;
        msg += EOL;
      }
    }
    return Rx19.of({ msg });
  }));
}
function printDiffs(opts3, 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_semver67.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(`<- ${path235.relative(opts3.prefix, pkg.from) || pkg.from}`)}`;
    }
    if (pkg.added && depType === "dev" && opts3.pnpmConfig?.saveDev === false && opts3.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_semver67, CONFIG_BY_DEP_TYPE;
var init_reportSummary = __esm({
  "../cli/default-reporter/lib/reporterForClient/reportSummary.js"() {
    "use strict";
    init_source();
    Rx19 = __toESM(require_cjs2(), 1);
    import_operators20 = __toESM(require_operators(), 1);
    import_semver67 = __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$, opts3) {
  return log$.pipe((0, import_operators21.take)(1), (0, import_operators21.filter)((log3) => import_semver68.default.gt(log3.latestVersion, log3.currentVersion)), (0, import_operators21.map)((log3) => {
    const updateMessage = renderUpdateMessage({
      currentPkgIsExecutable: detectIfCurrentPkgIsExecutable(opts3.process),
      latestVersion: log3.latestVersion,
      env: opts3.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(opts3) {
  const updateCommand = renderUpdateCommand(opts3);
  return `To update, run: ${source_default.magenta(updateCommand)}`;
}
function renderUpdateCommand(opts3) {
  if (isExecutedByCorepack(opts3.env)) {
    return `corepack use pnpm@${opts3.latestVersion}`;
  }
  if (opts3.env.PNPM_HOME) {
    return "pnpm self-update";
  }
  const pkgName = opts3.currentPkgIsExecutable ? "@pnpm/exe" : "pnpm";
  return `pnpm add -g ${pkgName}`;
}
var import_boxen2, Rx20, import_operators21, import_semver68;
var init_reportUpdateCheck = __esm({
  "../cli/default-reporter/lib/reporterForClient/reportUpdateCheck.js"() {
    "use strict";
    init_lib24();
    import_boxen2 = __toESM(require_boxen(), 1);
    init_source();
    Rx20 = __toESM(require_cjs2(), 1);
    import_operators21 = __toESM(require_operators(), 1);
    import_semver68 = __toESM(require_semver2(), 1);
  }
});

// ../cli/default-reporter/lib/reporterForClient/index.js
function reporterForClient(log$, opts3) {
  const width = opts3.width ?? process.stdout.columns ?? 80;
  const cwd = opts3.pnpmConfig?.dir ?? process.cwd();
  const throttle2 = typeof opts3.throttleProgress === "number" && opts3.throttleProgress > 0 ? (0, import_operators22.throttleTime)(opts3.throttleProgress, void 0, { leading: true, trailing: true }) : void 0;
  const outputs = [
    reportMisc(log$, {
      appendOnly: opts3.appendOnly === true,
      config: opts3.config,
      cwd,
      logLevel: opts3.logLevel,
      zoomOutCurrent: opts3.isRecursive
    })
  ];
  const logLevelNumber = LOG_LEVEL_NUMBER[opts3.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: opts3.isRecursive }), reportRequestRetry(log$.requestRetry));
  }
  if (showInfo) {
    if (opts3.cmd in PRINT_EXECUTION_TIME_IN_COMMANDS) {
      outputs.push(reportExecutionTime(log$.executionTime));
    }
    if (opts3.cmd !== "dlx") {
      outputs.push(reportContext(log$, { cwd }));
    }
    outputs.push(reportLifecycleScripts(log$, {
      appendOnly: (opts3.appendOnly === true || opts3.streamLifecycleOutput) && !opts3.hideLifecycleOutput,
      aggregateOutput: opts3.aggregateOutput,
      hideLifecyclePrefix: opts3.hideLifecyclePrefix,
      cwd,
      width
    }), reportInstallChecks(log$.installCheck, { cwd }), reportInstallingConfigDeps(log$.installingConfigDeps), reportLockfileVerification(log$.lockfileVerification, {
      cwd,
      workspaceDir: opts3.pnpmConfig?.workspaceDir
    }), reportScope(log$.scope, { isRecursive: opts3.isRecursive, cmd: opts3.cmd }), reportSkippedOptionalDependencies(log$.skippedOptionalDependency, { cwd }), reportHooks(log$.hook, { cwd, isRecursive: opts3.isRecursive }), reportUpdateCheck(log$.updateCheck, opts3), reportProgress(log$, {
      cwd,
      throttle: throttle2,
      hideAddedPkgsProgress: opts3.hideAddedPkgsProgress,
      hideProgressPrefix: opts3.hideProgressPrefix
    }), ...reportStats(log$, {
      cmd: opts3.cmd,
      cwd,
      isRecursive: opts3.isRecursive,
      width,
      hideProgressPrefix: opts3.hideProgressPrefix
    }));
    if (!opts3.appendOnly) {
      outputs.push(reportBigTarballProgress(log$));
    }
    if (!opts3.isRecursive) {
      outputs.push(reportSummary2(log$, {
        cmd: opts3.cmd,
        cwd,
        env: opts3.env,
        filterPkgsDiff: opts3.filterPkgsDiff,
        pnpmConfig: opts3.pnpmConfig
      }));
    }
    outputs.push(reportIgnoredBuilds(log$, {
      pnpmConfig: opts3.pnpmConfig,
      approveBuildsInstructionText: opts3.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(opts3) {
  const proc = opts3.context.process ?? process;
  const outputMaxWidth = opts3.reportingOptions?.outputMaxWidth ?? (proc.stdout.columns && proc.stdout.columns - 2) ?? 80;
  const output$ = toOutput$({
    ...opts3,
    reportingOptions: {
      ...opts3.reportingOptions,
      outputMaxWidth
    }
  });
  if (opts3.reportingOptions?.appendOnly) {
    const writeNext = opts3.useStderr ? console.error.bind(console) : console.log.bind(console);
    const subscription2 = output$.subscribe({
      complete() {
      },
      // eslint-disable-line:no-empty
      error: (err2) => {
        console.error(err2.message);
      },
      next: writeNext
    });
    return () => {
      subscription2.unsubscribe();
    };
  }
  const stream2 = opts3.useStderr ? proc.stderr : proc.stdout;
  const write = stream2.write.bind(stream2);
  const newDiffer = () => (0, import_ansi_diff.default)({
    height: stream2.rows,
    width: stream2.columns ?? outputMaxWidth
  });
  let diff2 = newDiffer();
  let promptActive = false;
  const onLog = (log3) => {
    if (log3.name !== "pnpm:prompt")
      return;
    if (log3.action === "start") {
      promptActive = true;
    } else {
      promptActive = false;
      diff2 = newDiffer();
    }
  };
  opts3.streamParser.on("data", onLog);
  const subscription = output$.subscribe({
    complete() {
    },
    // eslint-disable-line:no-empty
    error: (err2) => {
      logUpdate(err2.message);
    },
    next: logUpdate
  });
  function logUpdate(view) {
    if (promptActive)
      return;
    if (!view.endsWith(EOL))
      view += EOL;
    write(`\r${diff2.update(view)}\x1B[K${ERASE_TO_END_OF_DISPLAY}`);
  }
  return () => {
    subscription.unsubscribe();
    opts3.streamParser.removeListener("data", onLog);
  };
}
function toOutput$(opts3) {
  opts3 = opts3 || {};
  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(() => {
    opts3.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 (opts3.context.config?.hooks?.filterLog != null) {
    const filterLogs = opts3.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 = opts3.context.argv[0];
  const outputs = reporterForClient(log$, {
    appendOnly: opts3.reportingOptions?.appendOnly,
    cmd,
    config: opts3.context.config,
    env: opts3.context.env ?? process.env,
    filterPkgsDiff: opts3.filterPkgsDiff,
    process: opts3.context.process ?? process,
    isRecursive: opts3.context.config?.["recursive"] === true,
    logLevel: opts3.reportingOptions?.logLevel,
    pnpmConfig: opts3.context.config,
    streamLifecycleOutput: opts3.reportingOptions?.streamLifecycleOutput,
    aggregateOutput: opts3.reportingOptions?.aggregateOutput,
    throttleProgress: opts3.reportingOptions?.throttleProgress,
    width: opts3.reportingOptions?.outputMaxWidth,
    hideAddedPkgsProgress: opts3.reportingOptions?.hideAddedPkgsProgress,
    hideProgressPrefix: opts3.reportingOptions?.hideProgressPrefix ?? (cmd === "dlx" || opts3.context.config?.global === true),
    hideLifecycleOutput: opts3.reportingOptions?.hideLifecycleOutput,
    hideLifecyclePrefix: opts3.reportingOptions?.hideLifecyclePrefix,
    approveBuildsInstructionText: opts3.reportingOptions?.approveBuildsInstructionText
  });
  if (opts3.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, ERASE_TO_END_OF_DISPLAY;
var init_lib177 = __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();
    ERASE_TO_END_OF_DISPLAY = "\x1B[0J";
  }
});

// lib/getConfig.js
import fs130 from "node:fs";
import path236 from "node:path";
import util69 from "node:util";
async function getConfig2(cliOptions, opts3) {
  const { config: config2, context, warnings } = await getConfig({
    cliOptions,
    globalDirShouldAllowWrite: opts3.globalDirShouldAllowWrite,
    packageManager,
    workspaceDir: opts3.workspaceDir,
    onlyInheritDlxSettingsFromLocal: opts3.onlyInheritDlxSettingsFromLocal,
    forSelfUpdate: opts3.forSelfUpdate
  });
  context.cliOptions = cliOptions;
  applyDerivedConfig(config2);
  if (opts3.excludeReporter) {
    delete config2.reporter;
  }
  if (warnings.length > 0) {
    console.warn(warnings.map((warning) => formatWarn(warning)).join("\n"));
  }
  return { config: config2, context };
}
async function installConfigDepsAndLoadHooks(config2, context, opts3) {
  if (config2.configDependencies) {
    const store = await createStoreController({ ...config2, ...context });
    try {
      await resolveAndInstallConfigDeps(config2.configDependencies, {
        ...config2,
        ...context,
        store: store.ctrl,
        storeDir: store.dir,
        rootDir: config2.lockfileDir ?? context.rootProjectManifestDir,
        frozenLockfile: config2.frozenLockfile
      });
    } catch (err2) {
      if (!opts3?.tolerateConfigDependenciesErrors) {
        throw err2;
      }
      const errorMessage = util69.types.isNativeError(err2) ? err2.message : String(err2);
      logger.debug({
        message: `Failed to install configDependencies. This is expected if authentication is not yet configured. Proceeding. Error: ${errorMessage}`,
        err: err2
      });
    } finally {
      await store.ctrl.close();
    }
  }
  if (!config2.ignorePnpmfile) {
    config2.tryLoadDefaultPnpmfile = config2.pnpmfile == null && !opts3?.forSelfUpdate;
    const pnpmfiles = config2.pnpmfile == null ? [] : Array.isArray(config2.pnpmfile) ? config2.pnpmfile : [config2.pnpmfile];
    if (config2.configDependencies) {
      const configModulesDir = path236.join(config2.lockfileDir ?? context.rootProjectManifestDir, "node_modules/.pnpm-config");
      pnpmfiles.unshift(...calcPnpmfilePathsOfPluginDeps(configModulesDir, config2.configDependencies));
    }
    const { hooks, finders, resolvedPnpmfilePaths } = await requireHooks(config2.lockfileDir ?? config2.dir, {
      globalPnpmfile: config2.globalPnpmfile,
      pnpmfiles,
      tryLoadDefaultPnpmfile: config2.tryLoadDefaultPnpmfile
    });
    context.hooks = hooks;
    context.finders = finders;
    config2.pnpmfile = resolvedPnpmfilePaths;
    if (context.hooks?.updateConfig) {
      for (const updateConfig of context.hooks.updateConfig) {
        const updateConfigResult = updateConfig(config2);
        config2 = updateConfigResult instanceof Promise ? await updateConfigResult : updateConfigResult;
      }
    }
  }
  return { config: config2, context };
}
function* calcPnpmfilePathsOfPluginDeps(configModulesDir, configDependencies) {
  for (const configDepName of Object.keys(configDependencies).sort(import_util25.lexCompare)) {
    if (isPluginName(configDepName)) {
      const pluginDir = path236.join(configModulesDir, configDepName);
      if (!fs130.existsSync(pluginDir))
        continue;
      const mjsPath = path236.join(pluginDir, "pnpmfile.mjs");
      if (fs130.existsSync(mjsPath)) {
        yield mjsPath;
        continue;
      }
      yield path236.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(config2) {
  if (config2.hoist === false) {
    delete config2.hoistPattern;
  }
  switch (config2.shamefullyHoist) {
    case false:
      delete config2.publicHoistPattern;
      break;
    case true:
      config2.publicHoistPattern = ["*"];
      break;
    default:
      if (config2.publicHoistPattern == null || config2.publicHoistPattern === "" || Array.isArray(config2.publicHoistPattern) && config2.publicHoistPattern.length === 1 && config2.publicHoistPattern[0] === "") {
        delete config2.publicHoistPattern;
      }
      break;
  }
  if (!config2.symlink) {
    delete config2.hoistPattern;
    delete config2.publicHoistPattern;
  }
}
var import_util25;
var init_getConfig = __esm({
  "lib/getConfig.js"() {
    "use strict";
    init_lib177();
    init_lib24();
    init_lib64();
    init_lib135();
    init_lib132();
    init_lib3();
    init_lib92();
    import_util25 = __toESM(require_dist4(), 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, opts3) {
  switch (reporterType) {
    case "default":
      initDefaultReporter({
        useStderr: opts3.config.useStderr,
        context: {
          argv: opts3.cmd ? [opts3.cmd] : [],
          config: opts3.config
        },
        reportingOptions: {
          appendOnly: false,
          logLevel: opts3.config.loglevel,
          streamLifecycleOutput: opts3.config.stream,
          throttleProgress: 200,
          hideAddedPkgsProgress: opts3.config.lockfileOnly,
          hideLifecyclePrefix: opts3.config.reporterHidePrefix,
          hideProgressPrefix: opts3.hideProgressPrefix
        },
        streamParser
      });
      return;
    case "append-only":
      initDefaultReporter({
        useStderr: opts3.config.useStderr,
        context: {
          argv: opts3.cmd ? [opts3.cmd] : [],
          config: opts3.config
        },
        reportingOptions: {
          appendOnly: true,
          aggregateOutput: opts3.config.aggregateOutput,
          logLevel: opts3.config.loglevel,
          throttleProgress: 1e3,
          hideLifecyclePrefix: opts3.config.reporterHidePrefix,
          hideProgressPrefix: opts3.hideProgressPrefix
        },
        streamParser
      });
      return;
    case "ndjson":
      writeToConsole();
      return;
    case "silent":
      silentReporter(streamParser);
  }
}
var init_reporter = __esm({
  "lib/reporter/index.js"() {
    "use strict";
    init_lib177();
    init_lib3();
    init_silentReporter();
  }
});

// lib/packageManagerLockfile.js
function assertPackageManagerLockfileUsesRegistryResolutions(envLockfile) {
  const packageManagerDependencies = envLockfile.importers["."].packageManagerDependencies;
  if (packageManagerDependencies == null) {
    throw new PnpmError("INVALID_PACKAGE_MANAGER_LOCKFILE", "The packageManager dependencies were not found in pnpm-lock.yaml");
  }
  const visited = /* @__PURE__ */ new Set();
  for (const [name, dependency] of Object.entries(packageManagerDependencies)) {
    const depPath = refToRelative(dependency.version, name);
    if (depPath == null) {
      throw invalidPackageManagerLockfile(name);
    }
    assertRegistryPackageManagerDependency(envLockfile, depPath, visited);
  }
}
function assertRegistryPackageManagerDependency(envLockfile, depPath, visited) {
  if (visited.has(depPath))
    return;
  visited.add(depPath);
  const packageInfo = envLockfile.packages[removeSuffix(depPath)];
  const snapshot = envLockfile.snapshots[depPath];
  if (packageInfo == null || snapshot == null) {
    throw invalidPackageManagerLockfile(depPath);
  }
  assertRegistryPackagePath(depPath, packageInfo);
  assertIntegrityOnlyResolution(depPath, packageInfo.resolution);
  for (const [name, ref] of Object.entries({
    ...snapshot.dependencies,
    ...snapshot.optionalDependencies
  })) {
    const nextDepPath = refToRelative(ref, name);
    if (nextDepPath == null) {
      throw invalidPackageManagerLockfile(depPath);
    }
    assertRegistryPackageManagerDependency(envLockfile, nextDepPath, visited);
  }
}
function assertRegistryPackagePath(depPath, packageInfo) {
  const parsedDepPath = parse9(depPath);
  if (parsedDepPath.name == null || parsedDepPath.version == null || parsedDepPath.nonSemverVersion != null) {
    throw invalidPackageManagerLockfile(depPath);
  }
  if (packageInfo.id != null) {
    throw invalidPackageManagerLockfile(depPath);
  }
  if (packageInfo.name != null && packageInfo.name !== parsedDepPath.name) {
    throw invalidPackageManagerLockfile(depPath);
  }
  if (packageInfo.version != null && packageInfo.version !== parsedDepPath.version) {
    throw invalidPackageManagerLockfile(depPath);
  }
}
function assertIntegrityOnlyResolution(depPath, resolution) {
  if (resolution == null || typeof resolution !== "object" || Array.isArray(resolution)) {
    throw invalidPackageManagerLockfile(depPath);
  }
  const resolutionKeys = Object.keys(resolution);
  if (resolutionKeys.length !== 1 || resolutionKeys[0] !== "integrity" || !("integrity" in resolution) || typeof resolution.integrity !== "string" || resolution.integrity.length === 0) {
    throw invalidPackageManagerLockfile(depPath);
  }
}
function invalidPackageManagerLockfile(depPath) {
  return new PnpmError("INVALID_PACKAGE_MANAGER_LOCKFILE", `The packageManager dependency "${depPath}" in pnpm-lock.yaml must use a registry package path and an integrity-only resolution`);
}
var init_packageManagerLockfile = __esm({
  "lib/packageManagerLockfile.js"() {
    "use strict";
    init_lib68();
    init_lib2();
  }
});

// lib/switchCliVersion.js
import path237 from "node:path";
async function switchCliVersion(config2, 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;
  const packageManagerConfig = getPackageManagerBootstrapConfig(config2);
  let pmVersion = envLockfile?.importers["."].packageManagerDependencies?.["pnpm"]?.version;
  if (!pmVersion || !import_semver69.default.satisfies(pmVersion, pm2.version, { includePrerelease: true })) {
    storeToUse = await createStoreController({ ...config2, ...context, ...packageManagerConfig });
    envLockfile = await resolvePackageManagerIntegrities(pm2.version, {
      envLockfile,
      registries: packageManagerConfig.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({ ...config2, ...context, ...packageManagerConfig });
    envLockfile = await resolvePackageManagerIntegrities(pmVersion, {
      envLockfile,
      registries: packageManagerConfig.registries,
      rootDir: context.rootProjectManifestDir,
      storeController: storeToUse.ctrl,
      storeDir: storeToUse.dir,
      save: persistLockfile
    });
  }
  if (pmVersion === packageManager.version) {
    await storeToUse?.ctrl.close();
    return;
  }
  try {
    assertReleaseIsInstallable(pmVersion);
  } catch (err2) {
    await storeToUse?.ctrl.close();
    throw err2;
  }
  if (!envLockfile) {
    await storeToUse?.ctrl.close();
    throw new PnpmError("NO_PKG_MANAGER_INTEGRITY", `The packageManager dependency ${pmVersion} was not found in pnpm-lock.yaml`);
  }
  try {
    assertPackageManagerLockfileUsesRegistryResolutions(envLockfile);
  } catch (err2) {
    await storeToUse?.ctrl.close();
    throw err2;
  }
  if (!storeToUse) {
    storeToUse = await createStoreController({ ...config2, ...context, ...packageManagerConfig });
  }
  let wantedPnpmBinDir;
  try {
    ;
    ({ binDir: wantedPnpmBinDir } = await installPnpmToStore(pmVersion, {
      envLockfile,
      storeController: storeToUse.ctrl,
      storeDir: storeToUse.dir,
      registries: packageManagerConfig.registries,
      virtualStoreDirMaxLength: config2.virtualStoreDirMaxLength,
      packageManager: { name: packageManager.name, version: packageManager.version },
      // Network settings so the engine identity check can reach the canonical
      // npm registry through the user's proxy / TLS configuration.
      ca: config2.ca,
      cert: config2.cert,
      key: config2.key,
      httpProxy: config2.httpProxy,
      httpsProxy: config2.httpsProxy,
      noProxy: config2.noProxy,
      strictSsl: config2.strictSsl,
      localAddress: config2.localAddress,
      maxSockets: config2.maxSockets,
      configByUri: config2.configByUri,
      timeout: config2.fetchTimeout
    }));
  } finally {
    await storeToUse.ctrl.close();
  }
  const pnpmEnv = prependDirsToPath([wantedPnpmBinDir]);
  if (!pnpmEnv.updated) {
    throw new VersionSwitchFail(pmVersion, wantedPnpmBinDir);
  }
  const pnpmBinPath = path237.join(wantedPnpmBinDir, "pnpm");
  const { status, signal, error } = import_cross_spawn4.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;
  }
  await exit(status ?? 0);
}
var import_cross_spawn4, import_semver69, VersionSwitchFail;
var init_switchCliVersion = __esm({
  "lib/switchCliVersion.js"() {
    "use strict";
    init_lib24();
    init_lib64();
    init_lib161();
    init_lib2();
    init_lib132();
    init_lib80();
    init_lib3();
    init_lib160();
    init_lib92();
    import_cross_spawn4 = __toESM(require_cross_spawn(), 1);
    import_semver69 = __toESM(require_semver2(), 1);
    init_exit();
    init_packageManagerLockfile();
    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(config2, context) {
  const pm2 = context.wantedPackageManager;
  if (pm2 == null || pm2.name !== "pnpm" || pm2.version == null)
    return;
  if (!shouldPersistLockfile(pm2))
    return;
  if (!import_semver70.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_semver70.default.satisfies(lockedVersion, pm2.version, { includePrerelease: true }))
    return;
  const packageManagerConfig = getPackageManagerBootstrapConfig(config2);
  const store = await createStoreController({ ...config2, ...context, ...packageManagerConfig });
  try {
    await resolvePackageManagerIntegrities(packageManager.version, {
      envLockfile: envLockfile ?? void 0,
      registries: packageManagerConfig.registries,
      rootDir: context.rootProjectManifestDir,
      storeController: store.ctrl,
      storeDir: store.dir,
      save: true
    });
  } finally {
    await store.ctrl.close();
  }
}
var import_semver70;
var init_syncEnvLockfile = __esm({
  "lib/syncEnvLockfile.js"() {
    "use strict";
    init_lib24();
    init_lib64();
    init_lib132();
    init_lib80();
    init_lib92();
    import_semver70 = __toESM(require_semver2(), 1);
  }
});

// lib/main.js
var main_exports = {};
__export(main_exports, {
  REPORTER_INITIALIZED: () => REPORTER_INITIALIZED,
  main: () => main4
});
import path238 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 (err2) {
    printError(err2.message, err2["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 config2;
  let context;
  try {
    const globalDirShouldAllowWrite = cmd !== "root" && cmd !== "prefix";
    const isDlxOrCreateCommand = cmd === "dlx" || cmd === "create";
    const isConfigCommand = cmd === "config" || cmd === "set" || cmd === "get";
    if (cmd === "link" && cliParams.length === 0) {
      cliOptions.global = true;
    }
    ;
    ({ config: config2, context } = await getConfig2(cliOptions, {
      excludeReporter: false,
      globalDirShouldAllowWrite,
      workspaceDir,
      onlyInheritDlxSettingsFromLocal: isDlxOrCreateCommand,
      forSelfUpdate: cmd === "self-update"
    }));
    if (cmd !== "setup" && !shouldSkipPmHandling(cmd, cliParams)) {
      if (context.wantedPackageManager != null) {
        const pm2 = context.wantedPackageManager;
        if (pm2.onFail !== "ignore") {
          if (pm2.name === "pnpm" && pm2.onFail === "download" && !isExecutedByCorepack()) {
            await switchCliVersion(config2, context);
          } else if (cliOptions.global) {
            globalWarn("Using --global skips the package manager check for this project");
          } else {
            checkPackageManager(pm2, { underCorepack: isExecutedByCorepack() });
            await syncEnvLockfile(config2, context);
          }
        }
      }
      if (cmd != null && !cliOptions.global) {
        for (const runtime of getWantedRuntimes(context)) {
          checkRuntime(runtime);
        }
      }
    }
    ;
    ({ config: config2, context } = await installConfigDepsAndLoadHooks(config2, context, {
      tolerateConfigDependenciesErrors: isConfigCommand,
      forSelfUpdate: cmd === "self-update"
    }));
    if (cmd != null && COMMANDS_WITH_STDERR_REPORTER.has(cmd)) {
      config2.useStderr = true;
    }
    config2.argv = argv2;
    config2.fallbackCommandUsed = fallbackCommandUsed;
    if (cmd) {
      config2.extraEnv = {
        ...config2.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 (err2) {
    const hint = err2["hint"] ? err2["hint"] : `For help, run: pnpm help${cmd ? ` ${cmd}` : ""}`;
    printError(err2.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 (config2.color === "always") {
    process.env["FORCE_COLOR"] = "1";
  } else if (config2.color === "never") {
    process.env["FORCE_COLOR"] = "0";
    write = (text) => process.stdout.write(stripAnsi3(text));
  }
  const reporterType = (() => {
    if (config2.loglevel === "silent")
      return "silent";
    if (config2.reporter)
      return config2.reporter;
    if (config2.ci || !process.stdout.isTTY)
      return "append-only";
    return "default";
  })();
  const printLogs = !config2["parseable"] && !config2["json"];
  if (printLogs) {
    const multiGroupGlobalAdd = cmd === "add" && cliOptions.global === true && cliParams.length > 1;
    initReporter(reporterType, {
      cmd,
      config: { ...config2, ...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 = config2.dir === context.rootProjectManifestDir ? context.rootProjectManifest : await safeReadProjectManifestOnly(config2.dir);
    if (currentDirManifest?.scripts?.[typedCommandName]) {
      cmd = "run";
      cliParams.unshift(typedCommandName);
      fallbackCommandUsed = true;
      config2.fallbackCommandUsed = true;
      config2.extraEnv = {
        ...config2.extraEnv,
        npm_command: "run-script"
      };
    } else if (workspaceDir && config2.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;
    config2.recursive = true;
    if (!config2.recursiveInstall && !config2.filter && !config2.filterProd) {
      config2.filter = ["{.}..."];
    }
  }
  if (cliOptions["recursive"]) {
    const wsDir = workspaceDir ?? process.cwd();
    config2.filter = config2.filter ?? [];
    config2.filterProd = config2.filterProd ?? [];
    const filters = [
      ...config2.filter.map((filter14) => ({ filter: filter14, followProdDepsOnly: false })),
      ...config2.filterProd.map((filter14) => ({ filter: filter14, followProdDepsOnly: true }))
    ];
    const relativeWSDirPath = () => path238.relative(process.cwd(), wsDir) || ".";
    if (config2.workspaceRoot) {
      filters.push({ filter: `{${relativeWSDirPath()}}`, followProdDepsOnly: Boolean(config2.filterProd.length) });
    } else if (!filters.some(({ filter: filter14 }) => !filter14.startsWith("!")) && workspaceDir && config2.workspacePackagePatterns && !isRootOnlyPatterns(config2.workspacePackagePatterns) && !config2.includeWorkspaceRoot && (cmd === "run" || cmd === "exec" || cmd === "add" || cmd === "test")) {
      filters.push({ filter: `!{${relativeWSDirPath()}}`, followProdDepsOnly: Boolean(config2.filterProd.length) });
    }
    const filterResults = await filterProjectsFromDir(wsDir, filters, {
      engineStrict: config2.engineStrict,
      nodeVersion: config2.nodeVersion,
      patterns: config2.workspacePackagePatterns,
      linkWorkspacePackages: !!config2.linkWorkspacePackages,
      prefix: process.cwd(),
      workspaceDir: wsDir,
      testPattern: config2.testPattern,
      changedFilesIgnorePattern: config2.changedFilesIgnorePattern,
      useGlobDirFiltering: !config2.legacyDirFiltering,
      sharedWorkspaceLockfile: config2.sharedWorkspaceLockfile
    });
    if (filterResults.allProjects.length === 0) {
      if (printLogs) {
        console.log(`No projects found in "${wsDir}"`);
      }
      process.exitCode = config2.failIfNoMatch ? 1 : 0;
      return;
    }
    context.allProjectsGraph = filterResults.allProjectsGraph;
    context.selectedProjectsGraph = filterResults.selectedProjectsGraph;
    context.prodAllProjectsGraph = filterResults.prodAllProjectsGraph;
    context.prodOnlySelectedProjectDirs = filterResults.prodOnlySelectedProjectDirs;
    if (isEmpty_default(context.selectedProjectsGraph)) {
      if (printLogs) {
        console.log(`No projects matched the filters in "${wsDir}"`);
      }
      if (config2.failIfNoMatch) {
        process.exitCode = 1;
        return;
      }
      if (cmd !== "list" && cmd !== "change") {
        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;
    config2.workspaceDir = wsDir;
  }
  let { output, exitCode } = await (async () => {
    await new Promise((resolve4) => setTimeout(() => {
      resolve4();
    }, 0));
    if (config2.updateNotifier !== false && !config2.ci && cmd !== "self-update" && !config2.offline && !config2.preferOffline && !config2.fallbackCommandUsed && (cmd === "install" || cmd === "add")) {
      checkForUpdates(config2).catch(() => {
      });
    }
    if (config2.force === true && !config2.fallbackCommandUsed) {
      logger.warn({
        message: "using --force I sure hope you know what you are doing",
        prefix: config2.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.
      { ...config2, ...context, _config: config2, _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, opts3) {
  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_semver71.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 (opts3.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 = opts3.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);
      }
    }
  }
}
function getWantedRuntimes(context) {
  const manifest = context.rootProjectManifest;
  if (manifest == null)
    return [];
  const result2 = [];
  const seen = /* @__PURE__ */ new Set();
  for (const enginesFieldName of ["devEngines", "engines"]) {
    const enginesRuntime = manifest[enginesFieldName]?.runtime;
    if (enginesRuntime == null)
      continue;
    const runtimes = Array.isArray(enginesRuntime) ? enginesRuntime : [enginesRuntime];
    for (const runtime of runtimes) {
      if (!runtime.name || !isRuntimeAlias(runtime.name) || seen.has(runtime.name))
        continue;
      seen.add(runtime.name);
      result2.push(runtime);
    }
  }
  return result2;
}
function checkRuntime(runtime) {
  if (runtime.onFail == null || runtime.onFail === "ignore" || runtime.onFail === "download")
    return;
  if (!runtime.name || !isRuntimeAlias(runtime.name))
    return;
  const runtimeName = runtime.name;
  const displayName = RUNTIME_DISPLAY_NAMES[runtimeName];
  const wantedRange = runtime.version;
  if (!wantedRange || !import_semver71.default.validRange(wantedRange)) {
    const msg = wantedRange ? `This project requires an invalid ${displayName} version range: ${wantedRange}` : `This project requires a ${displayName} runtime but does not specify a version range`;
    failRuntimeCheck(runtime.onFail, msg);
    return;
  }
  const currentVersion = getSystemRuntimeVersion(runtimeName);
  if (currentVersion == null) {
    failRuntimeCheck(runtime.onFail, `This project requires ${displayName} ${wantedRange}, but ${displayName} was not found on the system`);
    return;
  }
  if (import_semver71.default.satisfies(currentVersion, wantedRange, { includePrerelease: true }))
    return;
  failRuntimeCheck(runtime.onFail, `This project requires ${displayName} ${wantedRange}. Your current ${displayName} is ${currentVersion}`);
}
function failRuntimeCheck(onFail, message) {
  if (onFail === "error") {
    throw new PnpmError("BAD_RUNTIME_VERSION", message, { hint: RUNTIME_ON_FAIL_HINT });
  }
  globalWarn(message);
}
var import_loud_rejection, import_semver71, REPORTER_INITIALIZED, COMMANDS_WITH_STDERR_REPORTER, RUNTIME_DISPLAY_NAMES, RUNTIME_ON_FAIL_HINT;
var init_main3 = __esm({
  "lib/main.js"() {
    "use strict";
    init_lib24();
    init_lib6();
    init_lib26();
    init_lib2();
    init_lib3();
    init_lib9();
    init_lib4();
    init_lib15();
    init_lib44();
    init_source();
    import_loud_rejection = __toESM(require_loud_rejection(), 1);
    init_es();
    import_semver71 = __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");
    COMMANDS_WITH_STDERR_REPORTER = /* @__PURE__ */ new Set(["dlx", "create", "config", "set", "get", "sbom", "with", "store", "prefix"]);
    (0, import_loud_rejection.default)();
    process.stdout.on("error", (err2) => {
      if (err2.code === "EPIPE") {
        process.exit(0);
      }
      throw err2;
    });
    RUNTIME_DISPLAY_NAMES = {
      node: "Node.js",
      deno: "Deno",
      bun: "Bun"
    };
    RUNTIME_ON_FAIL_HINT = 'If you want to bypass this version check, set "runtimeOnFail" to "warn" or "ignore" (e.g. via --runtime-on-fail=ignore), or set "devEngines.runtime.onFail"/"engines.runtime.onFail" to "warn" or "ignore"';
  }
});

// lib/errorHandler.js
var errorHandler_exports = {};
__export(errorHandler_exports, {
  errorHandler: () => errorHandler
});
import { promisify as promisify14 } 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,
        ...getWebAuthUrls(error)
      }
    }, null, 2));
  } else if (global[REPORTER_INITIALIZED] !== "silent") {
    logger.error(error, error);
    await new Promise((resolve4) => setTimeout(() => {
      resolve4();
    }, 0));
  }
  await killProcesses(error && typeof error === "object" && "errno" in error && typeof error.errno === "number" ? error.errno : 1);
}
async function killProcesses(status) {
  if (process.platform === "win32") {
    await killTrackedProcessTrees();
  } else {
    try {
      const descendentProcesses = await Promise.race([
        getDescendentProcesses(process.pid).catch(() => []),
        new Promise((resolve4) => {
          setTimeout(() => resolve4([]), DESCENDANT_LOOKUP_TIMEOUT).unref();
        })
      ]);
      for (const pid of descendentProcesses) {
        try {
          process.kill(pid);
        } catch {
        }
      }
    } catch {
    }
  }
  await exit(status);
}
function getWebAuthUrls(error) {
  if (error.code !== "ERR_PNPM_OTP_NON_INTERACTIVE")
    return void 0;
  const urls = {};
  const authUrl = canonicalHttpUrl(error.authUrl);
  if (authUrl != null) {
    urls.authUrl = authUrl;
  }
  const doneUrl = canonicalHttpUrl(error.doneUrl);
  if (doneUrl != null) {
    urls.doneUrl = doneUrl;
  }
  return urls;
}
var getDescendentProcesses, DESCENDANT_LOOKUP_TIMEOUT;
var init_errorHandler = __esm({
  "lib/errorHandler.js"() {
    "use strict";
    init_lib21();
    init_lib3();
    init_lib22();
    init_pidtree2();
    init_exit();
    init_main3();
    getDescendentProcesses = promisify14((pid, callback2) => {
      pidtree_default(pid, { root: false }, callback2);
    });
    DESCENDANT_LOOKUP_TIMEOUT = 500;
  }
});

// lib/pnpm.js
import path239 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_main3(), main_exports));
    await main5(argv);
  } catch (err2) {
    await errorHandler2(err2);
  } finally {
    try {
      await finishWorkers2();
    } catch {
    }
  }
}
function buildArgv() {
  const userArgv = process.argv.slice(2);
  const execName = path239.basename(process.execPath, path239.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.
   *)

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.
   *)

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.
   *)

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> *)

@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.
   *)

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> *)

openpgp/dist/node/openpgp.mjs:
  (*! OpenPGP.js v6.3.1 - 2026-06-04 - this is LGPL licensed code, see LICENSE/our website https://openpgpjs.org/ for more information. *)
  (*! noble-ciphers - MIT License (c) 2023 Paul Miller (paulmillr.com) *)
  (*! noble-hashes - MIT License (c) 2022 Paul Miller (paulmillr.com) *)
  (*! noble-curves - MIT License (c) 2022 Paul Miller (paulmillr.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.
   *)
*/
