☰

EhSyringe

E 站注射器,将中文翻译注入到 E 站体内。包含全站 UI 翻译和超过 44000 条标签翻译,标签数据库持续更新中。

您需要先安装一款用户脚本管理器扩展,例如 Tampermonkey 篡改猴、Greasemonkey 油猴子 或 Violentmonkey 暴力猴,才能安装此脚本。

You will need to install an extension such as Tampermonkey or Violentmonkey to install this script.

您需要先安装一款用户脚本管理器扩展,例如 Tampermonkey 篡改猴 或 Violentmonkey 暴力猴,才能安装此脚本。

您需要先安装一款用户脚本管理器扩展,例如 Tampermonkey 篡改猴 或 Userscripts ,才能安装此脚本。

您需要先安装一款用户脚本管理器扩展,例如 Tampermonkey 篡改猴,才能安装此脚本。

您需要先安装一款用户脚本管理器扩展后才能安装此脚本。

(我已经安装了用户脚本管理器,让我安装!)

您需要先安装一款用户样式管理器扩展,比如 Stylus,才能安装此样式。

您需要先安装一款用户样式管理器扩展,比如 Stylus,才能安装此样式。

您需要先安装一款用户样式管理器扩展,比如 Stylus,才能安装此样式。

您需要先安装一款用户样式管理器扩展后才能安装此样式。

您需要先安装一款用户样式管理器扩展后才能安装此样式。

您需要先安装一款用户样式管理器扩展后才能安装此样式。

(我已经安装了用户样式管理器,让我安装!)

// ==UserScript==
// @name         EhSyringe
// @version      3.5.1
// @author       EhTagTranslation
// @description  E 站注射器,将中文翻译注入到 E 站体内。包含全站 UI 翻译和超过 44000 条标签翻译,标签数据库持续更新中。
// @icon         https://fastly.jsdelivr.net/gh/EhTagTranslation/EhSyringe@dfe7c88e5059f79525df657efc56dea5ed5345ce/src/assets/logo.svg
// @license      MIT
// @namespace    https://github.com/EhTagTranslation/EhSyringe
// @homepage     https://github.com/EhTagTranslation/EhSyringe
// @supportURL   https://github.com/EhTagTranslation/EhSyringe/issues
// @compatible   firefox >= 60
// @compatible   edge >= 16
// @compatible   chrome >= 61
// @compatible   safari >= 11
// @compatible   opera >= 48
// @match        *://exhentai.org/*
// @match        *://exhentai55ld2wyap5juskbm67czulomrouspdacjamjeloj7ugjbsad.onion/*
// @match        *://e-hentai.org/*
// @match        *://*.exhentai.org/*
// @match        *://*.exhentai55ld2wyap5juskbm67czulomrouspdacjamjeloj7ugjbsad.onion/*
// @match        *://*.e-hentai.org/*
// @match        *://*.hath.network/*
// @match        *://ehwiki.org/*
// @exclude      *://forums.e-hentai.org/*
// @run-at       document-start
// @grant        GM_deleteValue
// @grant        GM_listValues
// @grant        GM_setValue
// @grant        GM_getValue
// @grant        GM_addValueChangeListener
// @grant        GM_removeValueChangeListener
// @grant        GM_openInTab
// @grant        GM_notification
// ==/UserScript==

/******/ (() => { // webpackBootstrap
/******/ 	"use strict";
/******/ 	var __webpack_modules__ = ({

/***/ 1129:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {



/*
  MIT License http://www.opensource.org/licenses/mit-license.php
  Author Tobias Koppers @sokra
*/
__webpack_require__(9921);
__webpack_require__(7144);
__webpack_require__(9542);
__webpack_require__(5522);
module.exports = function (cssWithMappingToString) {
  var list = [];

  // return the list of modules as css string
  list.toString = function toString() {
    return this.map(function (item) {
      var content = "";
      var needLayer = typeof item[5] !== "undefined";
      if (item[4]) {
        content += "@supports (".concat(item[4], ") {");
      }
      if (item[2]) {
        content += "@media ".concat(item[2], " {");
      }
      if (needLayer) {
        content += "@layer".concat(item[5].length > 0 ? " ".concat(item[5]) : "", " {");
      }
      content += cssWithMappingToString(item);
      if (needLayer) {
        content += "}";
      }
      if (item[2]) {
        content += "}";
      }
      if (item[4]) {
        content += "}";
      }
      return content;
    }).join("");
  };

  // import a list of modules into the list
  list.i = function i(modules, media, dedupe, supports, layer) {
    if (typeof modules === "string") {
      modules = [[null, modules, undefined]];
    }
    var alreadyImportedModules = {};
    if (dedupe) {
      for (var k = 0; k < this.length; k++) {
        var id = this[k][0];
        if (id != null) {
          alreadyImportedModules[id] = true;
        }
      }
    }
    for (var _k = 0; _k < modules.length; _k++) {
      var item = [].concat(modules[_k]);
      if (dedupe && alreadyImportedModules[item[0]]) {
        continue;
      }
      if (typeof layer !== "undefined") {
        if (typeof item[5] === "undefined") {
          item[5] = layer;
        } else {
          item[1] = "@layer".concat(item[5].length > 0 ? " ".concat(item[5]) : "", " {").concat(item[1], "}");
          item[5] = layer;
        }
      }
      if (media) {
        if (!item[2]) {
          item[2] = media;
        } else {
          item[1] = "@media ".concat(item[2], " {").concat(item[1], "}");
          item[2] = media;
        }
      }
      if (supports) {
        if (!item[4]) {
          item[4] = "".concat(supports);
        } else {
          item[1] = "@supports (".concat(item[4], ") {").concat(item[1], "}");
          item[4] = supports;
        }
      }
      list.push(item);
    }
  };
  return list;
};

/***/ }),

/***/ 4532:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {



__webpack_require__(2758);
__webpack_require__(6607);
__webpack_require__(6667);
module.exports = function (url, options) {
  if (!options) {
    options = {};
  }
  if (!url) {
    return url;
  }
  url = String(url.__esModule ? url.default : url);

  // If url is already wrapped in quotes, remove them
  if (/^['"].*['"]$/.test(url)) {
    url = url.slice(1, -1);
  }
  if (options.hash) {
    url += options.hash;
  }

  // Should url be wrapped?
  // See https://drafts.csswg.org/css-values-3/#urls
  if (/["'() \t\n]|(%20)/.test(url) || options.needQuotes) {
    return "\"".concat(url.replace(/"/g, '\\"').replace(/\n/g, "\\n"), "\"");
  }
  return url;
};

/***/ }),

/***/ 9147:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {



__webpack_require__(6873);
__webpack_require__(6980);
__webpack_require__(6316);
__webpack_require__(6460);
module.exports = function (item) {
  var content = item[1];
  var cssMapping = item[3];
  if (!cssMapping) {
    return content;
  }
  if (typeof btoa === "function") {
    var base64 = btoa(unescape(encodeURIComponent(JSON.stringify(cssMapping))));
    var data = "sourceMappingURL=data:application/json;charset=utf-8;base64,".concat(base64);
    var sourceMapping = "/*# ".concat(data, " */");
    return [content].concat([sourceMapping]).join("\n");
  }
  return [content].join("\n");
};

/***/ }),

/***/ 8191:
/***/ ((module, __webpack_exports__, __webpack_require__) => {

/* harmony import */ var _node_modules_pnpm_css_loader_7_1_5_webpack_5_111_1_node_modules_css_loader_dist_runtime_sourceMaps_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(9147);
/* harmony import */ var _node_modules_pnpm_css_loader_7_1_5_webpack_5_111_1_node_modules_css_loader_dist_runtime_sourceMaps_js__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_node_modules_pnpm_css_loader_7_1_5_webpack_5_111_1_node_modules_css_loader_dist_runtime_sourceMaps_js__WEBPACK_IMPORTED_MODULE_0__);
/* harmony import */ var _node_modules_pnpm_css_loader_7_1_5_webpack_5_111_1_node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(1129);
/* harmony import */ var _node_modules_pnpm_css_loader_7_1_5_webpack_5_111_1_node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_node_modules_pnpm_css_loader_7_1_5_webpack_5_111_1_node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1__);
// Imports


var ___CSS_LOADER_EXPORT___ = _node_modules_pnpm_css_loader_7_1_5_webpack_5_111_1_node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1___default()((_node_modules_pnpm_css_loader_7_1_5_webpack_5_111_1_node_modules_css_loader_dist_runtime_sourceMaps_js__WEBPACK_IMPORTED_MODULE_0___default()));
// Module
___CSS_LOADER_EXPORT___.push([module.id, `#gmid{display:grid;grid:"gd3 spa spa" auto "gd3 gd4 gd5" auto/auto 1fr auto}#gmid #gd3{grid-area:gd3}#gmid #spa{grid-area:spa;width:auto}#gmid #gd4{grid-area:gd4;width:auto}#gmid #gd5{grid-area:gd5;z-index:3;position:relative;min-width:150px}:root #ehs-introduce-box{position:absolute;top:0;right:-5px;bottom:0;left:0;overflow:auto;text-align:left;display:flex;flex-flow:column;border-radius:0 0 6px 0;background:#edebdf}:root #ehs-introduce-box .ehs-title{flex:none;margin:0 8px;border-bottom:1px solid #5c0d12;line-height:14px;padding:3px 0;display:flex;flex-direction:row}:root #ehs-introduce-box .ehs-title .ehs-cn{font-weight:700;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}:root #ehs-introduce-box .ehs-title .ehs-en{opacity:.7;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}:root #ehs-introduce-box .ehs-title>div{overflow:hidden;flex:auto}:root #ehs-introduce-box .ehs-title>span{overflow:hidden;flex:none}:root #ehs-introduce-box .ehs-close{-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;cursor:pointer;font-size:16px;opacity:.8;line-height:28px;width:20px;text-align:center}:root #ehs-introduce-box .ehs-close:hover{opacity:1}:root #ehs-introduce-box .ehs-close:after{content:"\\00d7"}:root #ehs-introduce-box .ehs-content{flex:auto;overflow:auto;margin:4px 0;padding:4px 8px;scrollbar-width:thin;scrollbar-color:#5c0d12 transparent}:root #ehs-introduce-box .ehs-content::-webkit-scrollbar{width:4px;height:4px}:root #ehs-introduce-box .ehs-content::-webkit-scrollbar-thumb{background:#5c0d12}:root #ehs-introduce-box .ehs-content abbr[title]{padding:0 1px}:root #ehs-introduce-box .ehs-content abbr[title]:after{content:" (" attr(title) ")";font-size:90%}:root #ehs-introduce-box .ehs-href{flex:none;border-top:1px solid #5c0d12;margin:0 8px;line-height:24px}:root #ehs-introduce-box .ehs-href:empty,:root #ehs-introduce-box:empty{display:none}:root #ehs-introduce-box img{max-width:100%;margin:0;width:auto;height:auto}:root.ehs-ex #ehs-introduce-box{background:#4f535b;border-radius:0}:root.ehs-ex #ehs-introduce-box .ehs-title{border-bottom:1px solid #000}:root.ehs-ex #ehs-introduce-box .ehs-href{border-top:1px solid #000}:root.ehs-ex #ehs-introduce-box .ehs-content{scrollbar-color:#000 transparent}:root.ehs-ex #ehs-introduce-box .ehs-content::-webkit-scrollbar-thumb{background:#000}.ehs-no-intro,.ehs-no-translation{opacity:.8}.ehs-no-intro h3,.ehs-no-translation h3{opacity:.6;text-align:center;font-size:16px;padding:8px;font-weight:700}:root.ehs-image-level-0 #ehs-introduce-box .ehs-content img,:root.ehs-image-level-1 #ehs-introduce-box .ehs-content img[nsfw],:root.ehs-image-level-2 #ehs-introduce-box .ehs-content img[nsfw=R18G]{display:none}`, "",{"version":3,"sources":["webpack://./src/plugin/introduce/index.less"],"names":[],"mappings":"AAAA,MACI,YAAA,CACA,wDACJ,CAHA,WAOQ,aADR,CANA,WAUQ,aAAA,CACA,UADR,CAVA,WAcQ,aAAA,CACA,UADR,CAdA,WAkBQ,aAAA,CACA,SAAA,CACA,iBAAA,CACA,eADR,CAKA,yBACI,iBAAA,CACA,KAAA,CAAA,UAAA,CAAA,QAAA,CAAA,MAAA,CACA,aAAA,CACA,eAAA,CACA,YAAA,CACA,gBAAA,CACA,uBAAA,CACA,kBAHJ,CALA,oCAUQ,SAAA,CACA,YAAA,CACA,+BAAA,CACA,gBAAA,CACA,aAAA,CACA,YAAA,CACA,kBAFR,CAdA,4CAmBY,eAAA,CACA,eAAA,CACA,sBAAA,CACA,kBAFZ,CApBA,4CAyBY,UAAA,CACA,eAAA,CACA,sBAAA,CACA,kBAFZ,CA1BA,wCAgCY,eAAA,CACA,SAHZ,CA9BA,yCAoCY,eAAA,CACA,SAHZ,CAlCA,oCAyCQ,wBAAA,CAAA,qBAAA,CAAA,oBAAA,CAAA,gBAAA,CACA,cAAA,CACA,cAAA,CACA,UAAA,CACA,gBAAA,CACA,UAAA,CACA,iBAJR,CAKQ,0CACI,SAHZ,CAKQ,0CACI,eAHZ,CAjDA,sCAwDQ,SAAA,CACA,aAAA,CACA,YAAA,CACA,eAAA,CACA,oBAAA,CACA,mCAJR,CAMQ,yDACI,SAAA,CACA,UAJZ,CAMQ,+DACI,kBAJZ,CAhEA,kDAuEY,aAJZ,CAKY,wDACI,4BAAA,CACA,aAHhB,CAvEA,mCA+EQ,SAAA,CACA,4BAAA,CACA,YAAA,CACA,gBALR,CAUI,wEACI,YALR,CAnFA,6BA2FQ,cAAA,CACA,QAAA,CACA,UAAA,CACA,WALR,CASA,gCACI,kBAAA,CACA,eAPJ,CAKA,2CAIQ,4BANR,CAEA,0CAOQ,yBANR,CADA,6CAUQ,gCANR,CAOQ,sEACI,eALZ,CAUA,kCAEI,UARJ,CAMA,wCAIQ,UAAA,CACA,iBAAA,CACA,cAAA,CACA,WAAA,CACA,eANR,CAsBA,qMAEQ,YAdR","sourcesContent":["#gmid {\n    display: grid;\n    grid:\n        'gd3 spa spa' auto\n        'gd3 gd4 gd5' auto\n        / auto 1fr auto;\n    #gd3 {\n        grid-area: gd3;\n    }\n    #spa {\n        grid-area: spa;\n        width: auto;\n    }\n    #gd4 {\n        grid-area: gd4;\n        width: auto;\n    }\n    #gd5 {\n        grid-area: gd5;\n        z-index: 3;\n        position: relative;\n        min-width: 150px;\n    }\n}\n\n:root #ehs-introduce-box {\n    position: absolute;\n    inset: 0 -5px 0 0;\n    overflow: auto;\n    text-align: left;\n    display: flex;\n    flex-flow: column;\n    border-radius: 0 0 6px 0;\n    background: #edebdf;\n    .ehs-title {\n        flex: none;\n        margin: 0 8px;\n        border-bottom: 1px solid #5c0d12;\n        line-height: 14px;\n        padding: 3px 0;\n        display: flex;\n        flex-direction: row;\n\n        .ehs-cn {\n            font-weight: bold;\n            overflow: hidden;\n            text-overflow: ellipsis;\n            white-space: nowrap;\n        }\n        .ehs-en {\n            opacity: 0.7;\n            overflow: hidden;\n            text-overflow: ellipsis;\n            white-space: nowrap;\n        }\n\n        > div {\n            overflow: hidden;\n            flex: auto;\n        }\n        > span {\n            overflow: hidden;\n            flex: none;\n        }\n    }\n    .ehs-close {\n        user-select: none;\n        cursor: pointer;\n        font-size: 16px;\n        opacity: 0.8;\n        line-height: 28px;\n        width: 20px;\n        text-align: center;\n        &:hover {\n            opacity: 1;\n        }\n        &::after {\n            content: '\\00d7';\n        }\n    }\n    .ehs-content {\n        flex: auto;\n        overflow: auto;\n        margin: 4px 0;\n        padding: 4px 8px;\n        scrollbar-width: thin;\n        scrollbar-color: #5c0d12 transparent;\n\n        &::-webkit-scrollbar {\n            width: 4px;\n            height: 4px;\n        }\n        &::-webkit-scrollbar-thumb {\n            background: #5c0d12;\n        }\n        abbr[title] {\n            padding: 0 1px;\n            &::after {\n                content: ' (' attr(title) ')';\n                font-size: 90%;\n            }\n        }\n    }\n    .ehs-href {\n        flex: none;\n        border-top: 1px solid #5c0d12;\n        margin: 0 8px;\n        line-height: 24px;\n        &:empty {\n            display: none;\n        }\n    }\n    &:empty {\n        display: none;\n    }\n    img {\n        max-width: 100%;\n        margin: 0;\n        width: auto;\n        height: auto;\n    }\n}\n\n:root.ehs-ex #ehs-introduce-box {\n    background: #4f535b;\n    border-radius: 0;\n    .ehs-title {\n        border-bottom: 1px solid #000;\n    }\n    .ehs-href {\n        border-top: 1px solid #000;\n    }\n    .ehs-content {\n        scrollbar-color: #000 transparent;\n        &::-webkit-scrollbar-thumb {\n            background: #000;\n        }\n    }\n}\n\n.ehs-no-translation,\n.ehs-no-intro {\n    opacity: 0.8;\n    h3 {\n        opacity: 0.6;\n        text-align: center;\n        font-size: 16px;\n        padding: 8px;\n        font-weight: bold;\n    }\n}\n\n//0:hide, 1:non-h 2: R18 3: R18G\n/* nsfw=\"R18\" */\n:root.ehs-image-level-0 #ehs-introduce-box .ehs-content {\n    img {\n        display: none;\n    }\n}\n:root.ehs-image-level-1 #ehs-introduce-box .ehs-content {\n    img[nsfw] {\n        display: none;\n    }\n}\n:root.ehs-image-level-2 #ehs-introduce-box .ehs-content {\n    img[nsfw='R18G'] {\n        display: none;\n    }\n}\n:root.ehs-image-level-3 {\n    // 所有都显示\n}\n"],"sourceRoot":""}]);
// Exports
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (___CSS_LOADER_EXPORT___);

/* harmony export */ __webpack_require__.d(__webpack_exports__, [
/* harmony export */   "A", 0, __WEBPACK_DEFAULT_EXPORT__
/* harmony export */ ]);


/***/ }),

/***/ 284:
/***/ ((module, __webpack_exports__, __webpack_require__) => {

/* harmony import */ var _node_modules_pnpm_css_loader_7_1_5_webpack_5_111_1_node_modules_css_loader_dist_runtime_sourceMaps_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(9147);
/* harmony import */ var _node_modules_pnpm_css_loader_7_1_5_webpack_5_111_1_node_modules_css_loader_dist_runtime_sourceMaps_js__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_node_modules_pnpm_css_loader_7_1_5_webpack_5_111_1_node_modules_css_loader_dist_runtime_sourceMaps_js__WEBPACK_IMPORTED_MODULE_0__);
/* harmony import */ var _node_modules_pnpm_css_loader_7_1_5_webpack_5_111_1_node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(1129);
/* harmony import */ var _node_modules_pnpm_css_loader_7_1_5_webpack_5_111_1_node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_node_modules_pnpm_css_loader_7_1_5_webpack_5_111_1_node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1__);
// Imports


var ___CSS_LOADER_EXPORT___ = _node_modules_pnpm_css_loader_7_1_5_webpack_5_111_1_node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1___default()((_node_modules_pnpm_css_loader_7_1_5_webpack_5_111_1_node_modules_css_loader_dist_runtime_sourceMaps_js__WEBPACK_IMPORTED_MODULE_0___default()));
// Module
___CSS_LOADER_EXPORT___.push([module.id, `#eh-syringe-popup-root{text-align:left;text-align:initial;font-size:medium;line-height:normal}#eh-syringe-popup-root input,#eh-syringe-popup-root table,#eh-syringe-popup-root td,#eh-syringe-popup-root th{background:inherit;color:inherit;margin:0;padding:0}#eh-syringe-popup-root td,#eh-syringe-popup-root th{padding:1px}#eh-syringe-popup-root input{border:none;padding:0;margin:0;min-width:0}#eh-syringe-popup-root input[type=text]{border-radius:0;border-bottom:1px solid transparent}#eh-syringe-popup-root input[type=text].invalid,#eh-syringe-popup-root input[type=text]:invalid{border-color:#aa575e!important}#eh-syringe-popup-root input[type=checkbox],#eh-syringe-popup-root input[type=radio]{position:static;top:auto}#eh-syringe-popup-root p{padding:0;margin:.8em 0}#eh-syringe-popup-root a{background:transparent;transition:all .28s cubic-bezier(.4,0,.2,1) 0s;-webkit-text-decoration:none;text-decoration:none}#eh-syringe-popup{border:1px solid #8041a6;border-radius:6px;background:#f0f0f0;color:#111;box-shadow:0 0 6px 2px rgba(0,0,0,.2)}#eh-syringe-popup .action{background:#f0f0f0;color:#8041a6}#eh-syringe-popup .action.primary{border-color:#8041a6;background:#8041a6;color:#f0f0f0}#eh-syringe-popup .action.primary:hover{background:#491774}#eh-syringe-popup .action.primary:active{background:#ae79c9}#eh-syringe-popup #info{color:#8041a6}#eh-syringe-popup .hasNew{color:#79252b}#eh-syringe-popup a{color:#8041a6}#eh-syringe-popup a:hover{color:#491774}#eh-syringe-popup a:active{color:#ae79c9}#eh-syringe-popup a.minor{color:#a5a3a6}#eh-syringe-popup a.minor:hover{color:#d2cdd4}#eh-syringe-popup a.minor:active{color:#838185}#eh-syringe-popup .logo svg [fill-bg]{fill:#f0f0f0}#eh-syringe-popup .logo svg [fill-accent]{fill:#8041a6}#eh-syringe-popup .logo svg [fill-sa]{fill:#cfbadc}#eh-syringe-popup .logo svg [stroke-bg]{stroke:#f0f0f0}#eh-syringe-popup .logo svg [stroke-accent]{stroke:#8041a6}#eh-syringe-popup .logo svg [stroke-sa]{stroke:#cfbadc}#eh-syringe-popup #settingForm{scrollbar-color:#8041a6 transparent}#eh-syringe-popup #settingForm .checkbox-item svg path{stroke:#8041a6}#eh-syringe-popup #settingForm input[type=text]{color:#8041a6;border-color:#ae79c9}#eh-syringe-popup #settingForm input[type=text]:focus{border-color:#8041a6}#eh-syringe-popup #settingForm input[type=text]::-ms-input-placeholder{opacity:.5;-webkit-text-fill-color:#ae79c9;color:#ae79c9}#eh-syringe-popup #settingForm input[type=text]::placeholder{opacity:.5;-webkit-text-fill-color:#ae79c9;color:#ae79c9}#eh-syringe-popup #settingForm input[type=checkbox]{border:2px solid #a09da6}#eh-syringe-popup #settingForm input[type=checkbox]:checked{border:2px solid #8041a6}#eh-syringe-popup #settingForm input[type=range]::-webkit-slider-runnable-track{border:1px solid #ae79c9}#eh-syringe-popup #settingForm input[type=range]::-moz-range-track{border:1px solid #ae79c9}#eh-syringe-popup #settingForm input[type=range]::-webkit-slider-thumb{background:#f0f0f0;border:2px solid #8041a6}#eh-syringe-popup #settingForm input[type=range]::-moz-range-thumb{background:#f0f0f0;border:2px solid #8041a6}#eh-syringe-popup #settingForm input[type=range]:focus::-webkit-slider-thumb{border:2px solid #8041a6;box-shadow:0 0 7px rgba(0,0,0,.2)}#eh-syringe-popup #settingForm input[type=range]:focus::-moz-range-thumb{border:2px solid #8041a6;box-shadow:0 0 7px rgba(0,0,0,.2)}#eh-syringe-popup #settingForm input[type=range]:active::-webkit-slider-thumb{border:2px solid #8041a6;background:#fdfdfd;box-shadow:0 0 7px 1px rgba(0,0,0,.2)}#eh-syringe-popup #settingForm input[type=range]:active::-moz-range-thumb{border:2px solid #8041a6;background:#fdfdfd;box-shadow:0 0 7px 1px rgba(0,0,0,.2)}:root.ehs-ex #eh-syringe-popup{border:1px solid #ce90f1;border-radius:6px;background:#313131;color:#eee;box-shadow:0 0 6px 2px rgba(0,0,0,.2)}:root.ehs-ex #eh-syringe-popup .action{background:#313131;color:#ce90f1}:root.ehs-ex #eh-syringe-popup .action.primary{border-color:#ce90f1;background:#ce90f1;color:#313131}:root.ehs-ex #eh-syringe-popup .action.primary:hover{background:#e2b9f7}:root.ehs-ex #eh-syringe-popup .action.primary:active{background:#b669e9}:root.ehs-ex #eh-syringe-popup #info{color:#ce90f1}:root.ehs-ex #eh-syringe-popup .hasNew{color:#cb8d93}:root.ehs-ex #eh-syringe-popup a{color:#ce90f1}:root.ehs-ex #eh-syringe-popup a:hover{color:#e2b9f7}:root.ehs-ex #eh-syringe-popup a:active{color:#b669e9}:root.ehs-ex #eh-syringe-popup a.minor{color:#a5a3a6}:root.ehs-ex #eh-syringe-popup a.minor:hover{color:#d2cdd4}:root.ehs-ex #eh-syringe-popup a.minor:active{color:#838185}:root.ehs-ex #eh-syringe-popup .logo svg [fill-bg]{fill:#313131}:root.ehs-ex #eh-syringe-popup .logo svg [fill-accent]{fill:#ce90f1}:root.ehs-ex #eh-syringe-popup .logo svg [fill-sa]{fill:#987ca8}:root.ehs-ex #eh-syringe-popup .logo svg [stroke-bg]{stroke:#313131}:root.ehs-ex #eh-syringe-popup .logo svg [stroke-accent]{stroke:#ce90f1}:root.ehs-ex #eh-syringe-popup .logo svg [stroke-sa]{stroke:#987ca8}:root.ehs-ex #eh-syringe-popup #settingForm{scrollbar-color:#ce90f1 transparent}:root.ehs-ex #eh-syringe-popup #settingForm .checkbox-item svg path{stroke:#ce90f1}:root.ehs-ex #eh-syringe-popup #settingForm input[type=text]{color:#ce90f1;border-color:#b669e9}:root.ehs-ex #eh-syringe-popup #settingForm input[type=text]:focus{border-color:#ce90f1}:root.ehs-ex #eh-syringe-popup #settingForm input[type=text]::-ms-input-placeholder{opacity:.5;-webkit-text-fill-color:#b669e9;color:#b669e9}:root.ehs-ex #eh-syringe-popup #settingForm input[type=text]::placeholder{opacity:.5;-webkit-text-fill-color:#b669e9;color:#b669e9}:root.ehs-ex #eh-syringe-popup #settingForm input[type=checkbox]{border:2px solid #a09da6}:root.ehs-ex #eh-syringe-popup #settingForm input[type=checkbox]:checked{border:2px solid #ce90f1}:root.ehs-ex #eh-syringe-popup #settingForm input[type=range]::-webkit-slider-runnable-track{border:1px solid #b669e9}:root.ehs-ex #eh-syringe-popup #settingForm input[type=range]::-moz-range-track{border:1px solid #b669e9}:root.ehs-ex #eh-syringe-popup #settingForm input[type=range]::-webkit-slider-thumb{background:#313131;border:2px solid #ce90f1}:root.ehs-ex #eh-syringe-popup #settingForm input[type=range]::-moz-range-thumb{background:#313131;border:2px solid #ce90f1}:root.ehs-ex #eh-syringe-popup #settingForm input[type=range]:focus::-webkit-slider-thumb{border:2px solid #ce90f1;box-shadow:0 0 7px rgba(0,0,0,.2)}:root.ehs-ex #eh-syringe-popup #settingForm input[type=range]:focus::-moz-range-thumb{border:2px solid #ce90f1;box-shadow:0 0 7px rgba(0,0,0,.2)}:root.ehs-ex #eh-syringe-popup #settingForm input[type=range]:active::-webkit-slider-thumb{border:2px solid #ce90f1;background:#131313;box-shadow:0 0 7px 1px rgba(0,0,0,.2)}:root.ehs-ex #eh-syringe-popup #settingForm input[type=range]:active::-moz-range-thumb{border:2px solid #ce90f1;background:#131313;box-shadow:0 0 7px 1px rgba(0,0,0,.2)}#eh-syringe-popup-root{overflow:hidden;white-space:nowrap;font-family:sans-serif;font-size:12pt;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;padding:1px;max-width:400px;min-width:240px;position:relative}#eh-syringe-popup-root .hidden{visibility:hidden;display:none}#eh-syringe-popup-root .ehs-panel{margin:0 auto;display:flex;flex-direction:column}#eh-syringe-popup-root .ehs-panel .header{margin:16px;line-height:1;display:flex}#eh-syringe-popup-root .ehs-panel .header>.cushion{flex:auto}#eh-syringe-popup-root .ehs-panel .header span{color:#a5a3a6}#eh-syringe-popup-root .ehs-panel .content{margin:0 16px;padding:0 2px;flex:auto;overflow-x:hidden;overflow-y:auto;overflow:hidden auto;scrollbar-width:thin}#eh-syringe-popup-root .ehs-panel .action{display:block;line-height:36px;font-size:16px;margin:16px;box-sizing:border-box;position:relative;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;cursor:pointer;outline:0;-webkit-tap-highlight-color:transparent;white-space:nowrap;font-weight:400;-webkit-text-decoration:none;text-decoration:none;text-align:center;min-width:64px;padding:0 16px;border-radius:4px;overflow:visible;transform:translateZ(0);border:1px solid #ddd;transition:background .4s cubic-bezier(.25,.8,.25,1),box-shadow .28s cubic-bezier(.4,0,.2,1)}#eh-syringe-popup-root .ehs-panel .action.primary{box-shadow:0 3px 1px -2px rgba(0,0,0,.2),0 2px 2px 0 rgba(0,0,0,.14),0 1px 5px 0 rgba(0,0,0,.12)}#eh-syringe-popup-root .ehs-panel .action.primary:active{box-shadow:0 5px 5px -3px rgba(0,0,0,.2),0 8px 10px 1px rgba(0,0,0,.14),0 3px 14px 2px rgba(0,0,0,.12)}#eh-syringe-popup-root .ehs-panel .action:disabled{opacity:.6}#eh-syringe-popup-root .ehs-panel .action:focus{border:1px solid #888}#eh-syringe-popup-root #ehs-main-panel{transition:opacity .28s cubic-bezier(.4,0,.2,1),transform .28s cubic-bezier(.4,0,.2,1);transform:scale(1)}#eh-syringe-popup-root #ehs-main-panel.ehs-hide{transform:scale(.9);opacity:0;pointer-events:none}#eh-syringe-popup-root .logo-box{overflow:hidden;position:relative;margin:-16px;pointer-events:none}#eh-syringe-popup-root .logo{text-align:center;margin:20px 0;transition:transform .28s cubic-bezier(.4,0,.2,1);transform:scale(1) rotate(-45deg)}#eh-syringe-popup-root .logo svg{pointer-events:none}#eh-syringe-popup-root .logo #Enema{opacity:0;transform-origin:61px 86px}#eh-syringe-popup-root .logo #Enema2{opacity:1}#eh-syringe-popup-root .logo #Enema,#eh-syringe-popup-root .logo #Enema2,#eh-syringe-popup-root .logo #PushRod{transition:width .28s cubic-bezier(.4,0,.2,1),opacity .28s cubic-bezier(.4,0,.2,1),transform .28s cubic-bezier(.4,0,.2,1)}#eh-syringe-popup-root .logo.prominent{transform:scale(1.6) rotate(0deg)}#eh-syringe-popup-root .logo.prominent #Enema2{opacity:0}#eh-syringe-popup-root .logo.prominent #Enema{opacity:1}#eh-syringe-popup-root .logo.prominent.injection{transform:scale(1.6) rotate(0deg) translate(-10px)}#eh-syringe-popup-root .logo.prominent.injection #Enema,#eh-syringe-popup-root .logo.prominent.injection #Enema2,#eh-syringe-popup-root .logo.prominent.injection #PushRod{transition:width .6s cubic-bezier(.4,0,.2,1),transform .6s cubic-bezier(.4,0,.2,1)}#eh-syringe-popup-root #info{position:absolute;bottom:30px;left:0;right:0;height:24px;line-height:24px;text-align:center;font-size:16px}#eh-syringe-popup-root .monospace{font-family:Menlo,Consolas,Source Code Pro,Inconsolata,Monaco,Courier New,monospace}#eh-syringe-popup-root table{font-size:14px}#eh-syringe-popup-root #ehs-setting-panel{position:absolute;left:0;top:0;bottom:0;right:0;pointer-events:none;opacity:0;transition:opacity .28s cubic-bezier(.4,0,.2,1),transform .28s cubic-bezier(.4,0,.2,1);transform:scale(1.1)}#eh-syringe-popup-root #ehs-setting-panel.ehs-show{pointer-events:auto;opacity:1;transform:scale(1)}#eh-syringe-popup-root #ehs-setting-panel #settingForm{font-size:10pt;line-height:12pt}#eh-syringe-popup-root .checkbox-item{padding:4px 0}#eh-syringe-popup-root .checkbox-item label{position:relative;display:block}#eh-syringe-popup-root .checkbox-item svg{width:10px;height:10px;position:absolute;left:3px;top:3px}#eh-syringe-popup-root .checkbox-item svg path{stroke-dasharray:1000;stroke-dashoffset:1000;stroke-width:16px;stroke-linecap:round;stroke-linejoin:round;fill:none}#eh-syringe-popup-root .checkbox-item svg.checked path{stroke-dasharray:113.137,113.137;stroke-dashoffset:0;transition:all .28s cubic-bezier(.4,0,.2,1) 0s}#eh-syringe-popup-root .checkbox-item svg.checked path+path{transition:all .28s cubic-bezier(.4,0,.2,1) .28s}#eh-syringe-popup-root .checkbox-item input[type=checkbox]{-webkit-appearance:none;-moz-appearance:none;appearance:none;width:16px;height:16px;margin-right:2px;box-sizing:border-box;vertical-align:top;transition:all .28s cubic-bezier(.4,0,.2,1) 0s}#eh-syringe-popup-root .checkbox-item input[type=checkbox]:focus{outline:none}#eh-syringe-popup-root #settingForm input[type=range]{appearance:none;-moz-appearance:none;-webkit-appearance:none;border-radius:8px;width:100%}#eh-syringe-popup-root #settingForm input[type=range]::-webkit-slider-runnable-track{height:6px;border-radius:10px;box-sizing:border-box}#eh-syringe-popup-root #settingForm input[type=range]:focus{outline:none}#eh-syringe-popup-root #settingForm input[type=range]::-webkit-slider-thumb{appearance:none;-moz-appearance:none;-webkit-appearance:none;height:16px;width:16px;margin-top:-6px;box-sizing:border-box;border-radius:50%;-webkit-transition:all .28s cubic-bezier(.4,0,.2,1);transition:all .28s cubic-bezier(.4,0,.2,1)}#eh-syringe-popup-root #settingForm input[type=range]::-moz-range-track{height:6px;border-radius:10px;box-sizing:border-box}#eh-syringe-popup-root #settingForm input[type=range]::-moz-range-thumb{appearance:none;-moz-appearance:none;-webkit-appearance:none;height:16px;width:16px;margin-top:-6px;box-sizing:border-box;border-radius:50%;-moz-transition:all .28s cubic-bezier(.4,0,.2,1);transition:all .28s cubic-bezier(.4,0,.2,1)}#eh-syringe-popup-root #settingForm h3 span{font-weight:400;font-size:20pt}#eh-syringe-popup-root .image-level{padding:4px}#eh-syringe-popup-root .range-title{margin:0}#eh-syringe-popup-root .range-box{margin:5px}#eh-syringe-popup-root .range-label{display:flex;justify-content:space-between}#eh-syringe-popup-root .range-label a{flex:none;font-size:10pt;width:30px;text-align:center;display:inline-block}#eh-syringe-popup-root .override-db{padding:4px;display:flex;flex-direction:column;gap:4px;align-items:flex-start}#eh-syringe-popup-root .override-db input{width:100%}`, "",{"version":3,"sources":["webpack://./src/plugin/popup/index.less"],"names":[],"mappings":"AAAA,uBACI,eAAA,CAAA,kBAAA,CACA,gBAAA,CACA,kBACJ,CAJA,8GAQQ,kBAAA,CACA,aAAA,CACA,QAAA,CACA,SAER,CAbA,oDAeQ,WAER,CAjBA,6BAmBQ,WAAA,CACA,SAAA,CACA,QAAA,CACA,WACR,CAvBA,wCA0BQ,eAAA,CACA,mCAAR,CAEQ,gGAEI,8BAAZ,CA/BA,qFAqCQ,eAAA,CACA,QAFR,CApCA,yBAyCQ,SAAA,CACA,aAFR,CAxCA,yBA6CQ,sBAAA,CACA,8CAAA,CACA,4BAAA,CAAA,oBAFR,CAkJA,kBAvIQ,wBAAA,CACA,iBAAA,CACA,kBAAA,CACA,UAAA,CACA,qCARR,CA2IA,0BA/HQ,kBAAA,CACA,aATR,CAWQ,kCACI,oBAAA,CACA,kBAAA,CACA,aATZ,CAWQ,wCACI,kBATZ,CAWQ,yCACI,kBATZ,CA4HA,wBA9GQ,aAXR,CAyHA,0BA3GQ,aAXR,CAsHA,oBAxGQ,aAXR,CAYQ,0BACI,aAVZ,CAYQ,2BACI,aAVZ,CAYQ,0BACI,aAVZ,CAWY,gCACI,aAThB,CAWY,iCACI,aAThB,CAoGA,sCApFY,YAbZ,CAiGA,0CAjFY,YAbZ,CA8FA,sCA9EY,YAbZ,CA2FA,wCA3EY,cAbZ,CAwFA,4CAxEY,cAbZ,CAqFA,wCArEY,cAbZ,CAkFA,+BAhEQ,mCAfR,CA+EA,uDA7DY,cAfZ,CA4EA,gDAzDY,aAAA,CACA,oBAhBZ,CAiBY,sDACI,oBAfhB,CAkBY,uEACI,UAAA,CACA,+BAAA,CACA,aAhBhB,CAaY,6DACI,UAAA,CACA,+BAAA,CACA,aAhBhB,CAgEA,oDA3CY,wBAlBZ,CAmBY,4DACI,wBAjBhB,CAsBY,gFACI,wBApBhB,CAsBY,mEACI,wBApBhB,CAsBY,uEACI,kBAAA,CACA,wBApBhB,CAsBY,mEACI,kBAAA,CACA,wBApBhB,CAsBY,6EACI,wBAAA,CACA,iCApBhB,CAsBY,yEACI,wBAAA,CACA,iCApBhB,CAsBY,8EACI,wBAAA,CACA,kBAAA,CACA,qCApBhB,CAsBY,0EACI,wBAAA,CACA,kBAAA,CACA,qCApBhB,CAkCA,+BA/IQ,wBAAA,CACA,iBAAA,CACA,kBAAA,CACA,UAAA,CACA,qCAgHR,CA2BA,uCAvIQ,kBAAA,CACA,aA+GR,CA7GQ,+CACI,oBAAA,CACA,kBAAA,CACA,aA+GZ,CA7GQ,qDACI,kBA+GZ,CA7GQ,sDACI,kBA+GZ,CAYA,qCAtHQ,aA6GR,CASA,uCAnHQ,aA6GR,CAMA,iCAhHQ,aA6GR,CA5GQ,uCACI,aA8GZ,CA5GQ,wCACI,aA8GZ,CA5GQ,uCACI,aA8GZ,CA7GY,6CACI,aA+GhB,CA7GY,8CACI,aA+GhB,CAZA,mDA5FY,YA2GZ,CAfA,uDAzFY,YA2GZ,CAlBA,mDAtFY,YA2GZ,CArBA,qDAnFY,cA2GZ,CAxBA,yDAhFY,cA2GZ,CA3BA,qDA7EY,cA2GZ,CA9BA,4CAxEQ,mCAyGR,CAjCA,oEArEY,cAyGZ,CApCA,6DAjEY,aAAA,CACA,oBAwGZ,CAvGY,mEACI,oBAyGhB,CAtGY,oFACI,UAAA,CACA,+BAAA,CACA,aAwGhB,CA3GY,0EACI,UAAA,CACA,+BAAA,CACA,aAwGhB,CAhDA,iEAnDY,wBAsGZ,CArGY,yEACI,wBAuGhB,CAlGY,6FACI,wBAoGhB,CAlGY,gFACI,wBAoGhB,CAlGY,oFACI,kBAAA,CACA,wBAoGhB,CAlGY,gFACI,kBAAA,CACA,wBAoGhB,CAlGY,0FACI,wBAAA,CACA,iCAoGhB,CAlGY,sFACI,wBAAA,CACA,iCAoGhB,CAlGY,2FACI,wBAAA,CACA,kBAAA,CACA,qCAoGhB,CAlGY,uFACI,wBAAA,CACA,kBAAA,CACA,qCAoGhB,CA9EA,uBACI,eAAA,CACA,kBAAA,CACA,sBAAA,CACA,cAAA,CACA,wBAAA,CAAA,qBAAA,CAAA,oBAAA,CAAA,gBAAA,CACA,WAAA,CACA,eAAA,CACA,eAAA,CACA,iBAgFJ,CAzFA,+BAYQ,iBAAA,CACA,YAgFR,CA7FA,kCAiBQ,aAAA,CACA,YAAA,CACA,qBA+ER,CAlGA,0CAsBY,WAAA,CACA,aAAA,CAEA,YA8EZ,CAvGA,mDA2BgB,SA+EhB,CA1GA,+CA8BgB,aA+EhB,CA7GA,2CAmCY,aAAA,CACA,aAAA,CACA,SAAA,CACA,iBAAA,CAAA,eAAA,CAAA,oBAAA,CACA,oBA6EZ,CApHA,0CA2CY,aAAA,CACA,gBAAA,CACA,cAAA,CACA,WAAA,CACA,qBAAA,CACA,iBAAA,CACA,wBAAA,CAAA,qBAAA,CAAA,oBAAA,CAAA,gBAAA,CACA,cAAA,CACA,SAAA,CACA,uCAAA,CACA,kBAAA,CACA,eAAA,CACA,4BAAA,CAAA,oBAAA,CACA,iBAAA,CACA,cAAA,CACA,cAAA,CACA,iBAAA,CACA,gBAAA,CACA,uBAAA,CACA,qBAAA,CACA,4FA4EZ,CAxEY,kDACI,gGA0EhB,CArEY,yDACI,sGAuEhB,CAlEY,mDACI,UAoEhB,CAlEY,gDACI,qBAoEhB,CAvJA,uCAyFQ,sFAAA,CAGA,kBA+DR,CA9DQ,gDACI,mBAAA,CACA,SAAA,CACA,mBAgEZ,CAhKA,iCAqGQ,eAAA,CACA,iBAAA,CACA,YAAA,CACA,mBA8DR,CAtKA,6BA2GQ,iBAAA,CACA,aAAA,CACA,iDAAA,CACA,iCA8DR,CA5KA,iCAiHY,mBA8DZ,CA/KA,oCAoHY,SAAA,CACA,0BA8DZ,CAnLA,qCAwHY,SA8DZ,CAtLA,+GA6HY,yHA8DZ,CAzDQ,uCAOI,iCAqDZ,CA5DQ,+CAEQ,SA6DhB,CA/DQ,8CAKQ,SA6DhB,CA1DY,iDACI,kDA4DhB,CA7DY,2KAKQ,kFA6DpB,CA5MA,6BAwJQ,iBAAA,CACA,WAAA,CACA,MAAA,CACA,OAAA,CACA,WAAA,CACA,gBAAA,CACA,iBAAA,CACA,cAuDR,CAtNA,kCAmKQ,mFAsDR,CAzNA,6BAsKQ,cAsDR,CA5NA,0CA0KQ,iBAAA,CACA,MAAA,CACA,KAAA,CACA,QAAA,CACA,OAAA,CACA,mBAAA,CACA,SAAA,CACA,sFAAA,CAGA,oBAmDR,CAjDQ,mDACI,mBAAA,CACA,SAAA,CACA,kBAmDZ,CA5OA,uDA6LY,cAAA,CACA,gBAkDZ,CAhPA,sCAkMQ,aAiDR,CAnPA,4CAqMY,iBAAA,CACA,aAiDZ,CAvPA,0CA0MY,UAAA,CACA,WAAA,CACA,iBAAA,CACA,QAAA,CACA,OAgDZ,CA9PA,+CAgNgB,qBAAA,CACA,sBAAA,CACA,iBAAA,CACA,oBAAA,CACA,qBAAA,CACA,SAiDhB,CA9CY,uDAEQ,gCAAA,CACA,mBAAA,CACA,8CA+CpB,CAnDY,4DAOQ,gDA+CpB,CA9QA,2DAqOY,uBAAA,CAAA,oBAAA,CAAA,eAAA,CACA,UAAA,CACA,WAAA,CACA,gBAAA,CACA,qBAAA,CACA,kBAAA,CACA,8CA4CZ,CAvRA,iEA8OY,YA4CZ,CA1RA,sDAoPY,eAAA,CACA,oBAAA,CACA,uBAAA,CACA,iBAAA,CACA,UAyCZ,CAjSA,qFA2PY,UAAA,CACA,kBAAA,CACA,qBAyCZ,CAtSA,4DAgQY,YAyCZ,CAzSA,4EAmQY,eAAA,CACA,oBAAA,CACA,uBAAA,CACA,WAAA,CACA,UAAA,CACA,eAAA,CACA,qBAAA,CACA,iBAAA,CACA,mDAAA,CAAA,2CAyCZ,CApTA,wEA+QY,UAAA,CACA,kBAAA,CACA,qBAwCZ,CAzTA,wEAoRY,eAAA,CACA,oBAAA,CACA,uBAAA,CACA,WAAA,CACA,UAAA,CACA,eAAA,CACA,qBAAA,CACA,iBAAA,CACA,gDAAA,CAAA,2CAwCZ,CApUA,4CAiSgB,eAAA,CACA,cAsChB,CAxUA,oCAwSQ,WAmCR,CA3UA,oCA2SQ,QAmCR,CA9UA,kCA8SQ,UAmCR,CAjVA,oCAiTQ,YAAA,CACA,6BAmCR,CArVA,sCAoTY,SAAA,CACA,cAAA,CACA,UAAA,CACA,iBAAA,CACA,oBAoCZ,CA5VA,oCA6TQ,WAAA,CACA,YAAA,CACA,qBAAA,CACA,OAAA,CACA,sBAkCR,CAnWA,0CAoUY,UAkCZ","sourcesContent":["#eh-syringe-popup-root {\n    text-align: initial;\n    font-size: initial;\n    line-height: initial;\n    input,\n    table,\n    th,\n    td {\n        background: inherit;\n        color: inherit;\n        margin: 0;\n        padding: 0;\n    }\n    th,\n    td {\n        padding: 1px;\n    }\n\n    input {\n        border: none;\n        padding: 0;\n        margin: 0;\n        min-width: 0;\n    }\n\n    input[type='text'] {\n        border-radius: 0;\n        border-bottom: solid 1px transparent;\n\n        &.invalid,\n        &:invalid {\n            border-color: #aa575e !important;\n        }\n    }\n\n    input[type='radio'],\n    input[type='checkbox'] {\n        position: initial;\n        top: initial;\n    }\n    p {\n        padding: 0;\n        margin: 0.8em 0;\n    }\n    a {\n        background: rgba(0, 0, 0, 0);\n        transition: all 280ms cubic-bezier(0.4, 0, 0.2, 1) 0s;\n        text-decoration: none;\n    }\n}\n\n// theme\n.theme(@background, @foreground, @shadow, @accent) {\n    @soft-accent: softlight(@accent, @background);\n\n    & {\n        border: @accent solid 1px;\n        border-radius: 6px;\n        background: @background;\n        color: @foreground;\n        box-shadow: 0 0 6px 2px @shadow;\n    }\n\n    .action {\n        background: @background;\n        color: @accent;\n\n        &.primary {\n            border-color: @accent;\n            background: @accent;\n            color: @background;\n        }\n        &.primary:hover {\n            background: softlight(@accent, @foreground);\n        }\n        &.primary:active {\n            background: softlight(@accent, @background);\n        }\n    }\n\n    #info {\n        color: @accent;\n    }\n    .hasNew {\n        color: softlight(#aa575e, @foreground);\n    }\n    a {\n        color: @accent;\n        &:hover {\n            color: softlight(@accent, @foreground);\n        }\n        &:active {\n            color: softlight(@accent, @background);\n        }\n        &.minor {\n            color: #a5a3a6;\n            &:hover {\n                color: #d2cdd4;\n            }\n            &:active {\n                color: #838185;\n            }\n        }\n    }\n    .logo svg {\n        @sa: lighten(average(@accent, @background), 10%);\n        [fill-bg] {\n            fill: @background;\n        }\n        [fill-accent] {\n            fill: @accent;\n        }\n        [fill-sa] {\n            fill: @sa;\n        }\n        [stroke-bg] {\n            stroke: @background;\n        }\n        [stroke-accent] {\n            stroke: @accent;\n        }\n        [stroke-sa] {\n            stroke: @sa;\n        }\n    }\n\n    #settingForm {\n        scrollbar-color: @accent transparent;\n\n        .checkbox-item svg path {\n            stroke: @accent;\n        }\n\n        input[type='text'] {\n            color: @accent;\n            border-color: @soft-accent;\n            &:focus {\n                border-color: @accent;\n            }\n\n            &::placeholder {\n                opacity: 0.5;\n                -webkit-text-fill-color: @soft-accent;\n                color: @soft-accent;\n            }\n        }\n\n        input[type='checkbox'] {\n            border: solid 2px #a09da6;\n            &:checked {\n                border: solid 2px @accent;\n            }\n        }\n\n        input[type='range'] {\n            &::-webkit-slider-runnable-track {\n                border: 1px @soft-accent solid;\n            }\n            &::-moz-range-track {\n                border: 1px @soft-accent solid;\n            }\n            &::-webkit-slider-thumb {\n                background: @background;\n                border: solid 2px @accent;\n            }\n            &::-moz-range-thumb {\n                background: @background;\n                border: solid 2px @accent;\n            }\n            &:focus::-webkit-slider-thumb {\n                border: solid 2px @accent;\n                box-shadow: 0 0 7px @shadow;\n            }\n            &:focus::-moz-range-thumb {\n                border: solid 2px @accent;\n                box-shadow: 0 0 7px @shadow;\n            }\n            &:active::-webkit-slider-thumb {\n                border: solid 2px @accent;\n                background: overlay(@background, @background);\n                box-shadow: 0 0 7px 1px @shadow;\n            }\n            &:active::-moz-range-thumb {\n                border: solid 2px @accent;\n                background: overlay(@background, @background);\n                box-shadow: 0 0 7px 1px @shadow;\n            }\n        }\n    }\n}\n\n#eh-syringe-popup {\n    @background: rgb(240, 240, 240);\n    @foreground: #111;\n    @shadow: rgba(0, 0, 0, 0.2);\n    @accent: #8041a6;\n    .theme(@background, @foreground, @shadow, @accent);\n}\n\n:root.ehs-ex #eh-syringe-popup {\n    @background: rgb(49, 49, 49);\n    @foreground: #eee;\n    @shadow: rgba(0, 0, 0, 0.2);\n    @accent: #ce90f1;\n    .theme(@background, @foreground, @shadow, @accent);\n}\n\n#eh-syringe-popup-root {\n    overflow: hidden;\n    white-space: nowrap;\n    font-family: sans-serif;\n    font-size: 12pt;\n    user-select: none;\n    padding: 1px;\n    max-width: 400px;\n    min-width: 240px;\n    position: relative;\n\n    .hidden {\n        visibility: hidden;\n        display: none;\n    }\n\n    .ehs-panel {\n        margin: 0 auto;\n        display: flex;\n        flex-direction: column;\n\n        .header {\n            margin: 16px;\n            line-height: 1;\n            //font-size: 16px;\n            display: flex;\n            > .cushion {\n                flex: auto;\n            }\n            span {\n                color: #a5a3a6;\n            }\n        }\n\n        .content {\n            margin: 0 16px;\n            padding: 0 2px;\n            flex: auto;\n            overflow: hidden auto;\n            scrollbar-width: thin;\n        }\n\n        .action {\n            display: block;\n            line-height: 36px;\n            font-size: 16px;\n            margin: 16px;\n            box-sizing: border-box;\n            position: relative;\n            user-select: none;\n            cursor: pointer;\n            outline: 0;\n            -webkit-tap-highlight-color: transparent;\n            white-space: nowrap;\n            font-weight: normal;\n            text-decoration: none;\n            text-align: center;\n            min-width: 64px;\n            padding: 0 16px;\n            border-radius: 4px;\n            overflow: visible;\n            transform: translate3d(0, 0, 0);\n            border: 1px #ddd solid;\n            transition:\n                background 0.4s cubic-bezier(0.25, 0.8, 0.25, 1),\n                box-shadow 280ms cubic-bezier(0.4, 0, 0.2, 1);\n\n            &.primary {\n                box-shadow:\n                    0 3px 1px -2px rgba(0, 0, 0, 0.2),\n                    0 2px 2px 0 rgba(0, 0, 0, 0.14),\n                    0 1px 5px 0 rgba(0, 0, 0, 0.12);\n            }\n            &.primary:active {\n                box-shadow:\n                    0 5px 5px -3px rgba(0, 0, 0, 0.2),\n                    0 8px 10px 1px rgba(0, 0, 0, 0.14),\n                    0 3px 14px 2px rgba(0, 0, 0, 0.12);\n            }\n            &:disabled {\n                opacity: 0.6;\n            }\n            &:focus {\n                border: 1px #888 solid;\n            }\n        }\n    }\n\n    #ehs-main-panel {\n        transition:\n            opacity 280ms cubic-bezier(0.4, 0, 0.2, 1),\n            transform 280ms cubic-bezier(0.4, 0, 0.2, 1);\n        transform: scale(1);\n        &.ehs-hide {\n            transform: scale(0.9);\n            opacity: 0;\n            pointer-events: none;\n        }\n    }\n\n    .logo-box {\n        overflow: hidden;\n        position: relative;\n        margin: -16px;\n        pointer-events: none;\n    }\n    .logo {\n        text-align: center;\n        margin: 20px 0;\n        transition: transform 280ms cubic-bezier(0.4, 0, 0.2, 1);\n        transform: scale(1) rotate(-45deg);\n\n        svg {\n            pointer-events: none;\n        }\n        #Enema {\n            opacity: 0;\n            transform-origin: 61px 86px;\n        }\n        #Enema2 {\n            opacity: 1;\n        }\n        #Enema,\n        #Enema2,\n        #PushRod {\n            transition:\n                width 280ms cubic-bezier(0.4, 0, 0.2, 1),\n                opacity 280ms cubic-bezier(0.4, 0, 0.2, 1),\n                transform 280ms cubic-bezier(0.4, 0, 0.2, 1);\n        }\n        &.prominent {\n            #Enema2 {\n                opacity: 0;\n            }\n            #Enema {\n                opacity: 1;\n            }\n            transform: scale(1.6) rotate(0deg);\n            &.injection {\n                transform: scale(1.6) rotate(0deg) translate(-10px, 0);\n                #Enema,\n                #Enema2,\n                #PushRod {\n                    transition:\n                        width 600ms cubic-bezier(0.4, 0, 0.2, 1),\n                        transform 600ms cubic-bezier(0.4, 0, 0.2, 1);\n                }\n            }\n        }\n    }\n\n    #info {\n        position: absolute;\n        bottom: 30px;\n        left: 0;\n        right: 0;\n        height: 24px;\n        line-height: 24px;\n        text-align: center;\n        font-size: 16px;\n    }\n\n    .monospace {\n        font-family: Menlo, Consolas, 'Source Code Pro', Inconsolata, Monaco, 'Courier New', monospace;\n    }\n    table {\n        font-size: 14px;\n    }\n\n    #ehs-setting-panel {\n        position: absolute;\n        left: 0;\n        top: 0;\n        bottom: 0;\n        right: 0;\n        pointer-events: none;\n        opacity: 0;\n        transition:\n            opacity 280ms cubic-bezier(0.4, 0, 0.2, 1),\n            transform 280ms cubic-bezier(0.4, 0, 0.2, 1);\n        transform: scale(1.1);\n\n        &.ehs-show {\n            pointer-events: auto;\n            opacity: 1;\n            transform: scale(1);\n        }\n\n        #settingForm {\n            font-size: 10pt;\n            line-height: 12pt;\n        }\n    }\n    .checkbox-item {\n        padding: 4px 0;\n\n        label {\n            position: relative;\n            display: block;\n        }\n\n        svg {\n            width: 10px;\n            height: 10px;\n            position: absolute;\n            left: 3px;\n            top: 3px;\n            path {\n                stroke-dasharray: 1000;\n                stroke-dashoffset: 1000;\n                stroke-width: 16px;\n                stroke-linecap: round;\n                stroke-linejoin: round;\n                fill: none;\n            }\n\n            &.checked {\n                path {\n                    stroke-dasharray: 113.137, 113.137;\n                    stroke-dashoffset: 0;\n                    transition: all 280ms cubic-bezier(0.4, 0, 0.2, 1) 0s;\n                }\n                path + path {\n                    transition: all 280ms cubic-bezier(0.4, 0, 0.2, 1) 280ms;\n                }\n            }\n        }\n\n        input[type='checkbox'] {\n            appearance: none;\n            width: 16px;\n            height: 16px;\n            margin-right: 2px;\n            box-sizing: border-box;\n            vertical-align: top;\n            transition: all 280ms cubic-bezier(0.4, 0, 0.2, 1) 0s;\n        }\n        input[type='checkbox']:focus {\n            outline: none;\n        }\n    }\n\n    #settingForm {\n        input[type='range'] {\n            appearance: none;\n            -moz-appearance: none;\n            -webkit-appearance: none;\n            border-radius: 8px;\n            width: 100%;\n        }\n        input[type='range']::-webkit-slider-runnable-track {\n            height: 6px;\n            border-radius: 10px;\n            box-sizing: border-box;\n        }\n        input[type='range']:focus {\n            outline: none;\n        }\n        input[type='range']::-webkit-slider-thumb {\n            appearance: none;\n            -moz-appearance: none;\n            -webkit-appearance: none;\n            height: 16px;\n            width: 16px;\n            margin-top: -6px;\n            box-sizing: border-box;\n            border-radius: 50%;\n            transition: all 280ms cubic-bezier(0.4, 0, 0.2, 1);\n        }\n\n        input[type='range']::-moz-range-track {\n            height: 6px;\n            border-radius: 10px;\n            box-sizing: border-box;\n        }\n        input[type='range']::-moz-range-thumb {\n            appearance: none;\n            -moz-appearance: none;\n            -webkit-appearance: none;\n            height: 16px;\n            width: 16px;\n            margin-top: -6px;\n            box-sizing: border-box;\n            border-radius: 50%;\n            transition: all 280ms cubic-bezier(0.4, 0, 0.2, 1);\n        }\n\n        h3 {\n            span {\n                font-weight: 400;\n                font-size: 20pt;\n            }\n        }\n    }\n\n    .image-level {\n        padding: 4px;\n    }\n    .range-title {\n        margin: 0;\n    }\n    .range-box {\n        margin: 5px;\n    }\n    .range-label {\n        display: flex;\n        justify-content: space-between;\n        a {\n            flex: none;\n            font-size: 10pt;\n            width: 30px;\n            text-align: center;\n            display: inline-block;\n        }\n    }\n\n    .override-db {\n        padding: 4px;\n        display: flex;\n        flex-direction: column;\n        gap: 4px;\n        align-items: flex-start;\n\n        input {\n            width: 100%;\n        }\n    }\n}\n"],"sourceRoot":""}]);
// Exports
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (___CSS_LOADER_EXPORT___);

/* harmony export */ __webpack_require__.d(__webpack_exports__, [
/* harmony export */   "A", 0, __WEBPACK_DEFAULT_EXPORT__
/* harmony export */ ]);


/***/ }),

/***/ 2807:
/***/ ((module, __webpack_exports__, __webpack_require__) => {

/* harmony import */ var _node_modules_pnpm_css_loader_7_1_5_webpack_5_111_1_node_modules_css_loader_dist_runtime_sourceMaps_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(9147);
/* harmony import */ var _node_modules_pnpm_css_loader_7_1_5_webpack_5_111_1_node_modules_css_loader_dist_runtime_sourceMaps_js__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_node_modules_pnpm_css_loader_7_1_5_webpack_5_111_1_node_modules_css_loader_dist_runtime_sourceMaps_js__WEBPACK_IMPORTED_MODULE_0__);
/* harmony import */ var _node_modules_pnpm_css_loader_7_1_5_webpack_5_111_1_node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(1129);
/* harmony import */ var _node_modules_pnpm_css_loader_7_1_5_webpack_5_111_1_node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_node_modules_pnpm_css_loader_7_1_5_webpack_5_111_1_node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1__);
// Imports


var ___CSS_LOADER_EXPORT___ = _node_modules_pnpm_css_loader_7_1_5_webpack_5_111_1_node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1___default()((_node_modules_pnpm_css_loader_7_1_5_webpack_5_111_1_node_modules_css_loader_dist_runtime_sourceMaps_js__WEBPACK_IMPORTED_MODULE_0___default()));
// Module
___CSS_LOADER_EXPORT___.push([module.id, `:root{--csstools-color-scheme--light:initial;color-scheme:light}:root.ehs-ex{--csstools-color-scheme--light:;color-scheme:dark}.ehs-eh:root button[ehs-input],.ehs-ex:root button[ehs-input]{min-height:26px;line-height:20px;padding:1px 5px 2px;margin:0 2px;border:2px solid #b5a4a4;border-radius:3px;font-size:9pt;color:#5c0d12;background-color:#edeada;outline:none;white-space:pre}.ehs-eh:root button[ehs-input]:disabled,.ehs-ex:root button[ehs-input]:disabled{color:#c2a8a4;-webkit-text-fill-color:#c2a8a4;opacity:1}.ehs-eh:root button[ehs-input]:enabled:focus,.ehs-eh:root button[ehs-input]:enabled:hover,.ehs-ex:root button[ehs-input]:enabled:focus,.ehs-ex:root button[ehs-input]:enabled:hover{background-color:#f3f0e0!important;border-color:#977273!important}.ehs-eh:root button[ehs-input]:enabled:active,.ehs-ex:root button[ehs-input]:enabled:active{background:radial-gradient(#d7d3c2,#f3f0e0)!important;border-color:#5c0d12!important}:root.ehs-ex button[ehs-input]{border-color:#8d8d8d;color:#f1f1f1;background-color:#34353b}:root.ehs-ex button[ehs-input]:enabled:focus,:root.ehs-ex button[ehs-input]:enabled:hover{background-color:#43464e!important;border-color:#aeaeae!important}:root.ehs-ex button[ehs-input]:enabled:active{background:radial-gradient(#1a1a1a,#43464e)!important;border-color:#c3c3c3!important}:root.ehs-ex button[ehs-input]:disabled{color:#8a8a8a;-webkit-text-fill-color:#8a8a8a}:root.ehs-hide-icon [ehs-emoji],:root.ehs-hide-icon [ehs-icon],[hidden]{display:none}body div#gright{z-index:3}body #expunge_new button[ehs-input][type=submit]{margin:6px auto 2px}body #gleft{pointer-events:none}body #gj{margin:3px 4px}body #gmid{height:auto}body #tagmenu_act,body #tagmenu_new{width:calc(100% - 30px)!important}body #tagmenu_new>form{display:flex}body #tagmenu_new>form #newtagfield{flex:auto}body #gd5{display:flex;flex-flow:column}body #gd5:has(>:nth-child(10)) .g2:not(:has(+.gsp)){padding-bottom:18px}body #gd5:has(>:nth-child(10)) .g3:not(:has(+.gsp)){padding-bottom:18px}body #gd5:has(>:nth-child(10)) .gsp{padding-top:0}body #gd5:has(>:nth-child(11)) .g2:not(:has(+.gsp)){padding-bottom:16px}body #gd5:has(>:nth-child(11)) .g3:not(:has(+.gsp)){padding-bottom:16px}body #gd5:has(>:nth-child(12)) .g2:not(:has(+.gsp)){padding-bottom:12px}body #gd5:has(>:nth-child(12)) .g3:not(:has(+.gsp)){padding-bottom:12px}body #gd5:has(>:nth-child(13)) .g2:not(:has(+.gsp)){padding-bottom:8px}body #gd5:has(>:nth-child(13)) .g3:not(:has(+.gsp)){padding-bottom:8px}body #gd5:has(>:nth-child(14)) .g2:not(:has(+.gsp)){padding-bottom:6px}body #gd5:has(>:nth-child(14)) .g3:not(:has(+.gsp)){padding-bottom:6px}body #gd5:has(>:nth-child(15)) .g2:not(:has(+.gsp)){padding-bottom:4px}body #gd5:has(>:nth-child(15)) .g3:not(:has(+.gsp)){padding-bottom:4px}body .g2,body .g3{padding-bottom:20px}body .gsp{padding-top:10px}body td.tc{white-space:nowrap}body div.gt,body div.gtl,body div.gtw{line-height:16px;white-space:nowrap}body div.c6{text-align:left}#hct{font-family:sans-serif}#gj{-webkit-locale:"ja"}[ehs-emoji],[ehs-icon]{max-height:1.25em!important;max-width:2em!important;margin:-.25em 1px!important}[ehs-icon]{vertical-align:middle}.ehs-new-tag-complete-translate{display:block;margin-top:4px;font-weight:bolder;opacity:.8;pointer-events:none}.ehs-new-tag-complete-translate:empty{display:none}:root.ehs-wiki.ehs-translate-tag [ehs-tag][lang|=zh-hans]:after{content:" (" attr(ehs-tag) ")";font-size:80%}`, "",{"version":3,"sources":["webpack://./src/plugin/syringe/index.less"],"names":[],"mappings":"AAEA,MACI,sCAAA,CAAA,kBADJ,CAEI,aACI,+BAAA,CAAA,iBAAR,CAKI,8DACI,eAAA,CACA,gBAAA,CACA,mBAAA,CACA,YAAA,CACA,wBAAA,CACA,iBAAA,CACA,aAAA,CACA,aAAA,CACA,wBAAA,CACA,YAAA,CACA,eAHR,CAKQ,gFACI,aAAA,CACA,+BAAA,CACA,SAHZ,CAMQ,oLAEI,kCAAA,CACA,8BAJZ,CAOQ,4FACI,qDAAA,CACA,8BALZ,CASI,+BACI,oBAAA,CACA,aAAA,CACA,wBAPR,CASQ,0FAEI,kCAAA,CACA,8BAPZ,CAUQ,8CACI,qDAAA,CACA,8BARZ,CAWQ,wCACI,aAAA,CACA,+BATZ,CAkBA,wEAGQ,YAdR,CAkBA,gBAEQ,SAjBR,CAeA,iDAOQ,mBAnBR,CAYA,YAYQ,mBArBR,CASA,SAiBQ,cAvBR,CAMA,WAsBQ,WAzBR,CAGA,oCA4BQ,iCA3BR,CADA,uBAgCQ,YA5BR,CAJA,oCAkCY,SA3BZ,CAPA,UAwCQ,YAAA,CACA,gBA9BR,CAiCQ,oDAEQ,mBAhChB,CA8BQ,oDAEQ,mBAhChB,CA8BQ,oCAKQ,aAhChB,CAmCQ,oDAEQ,mBAlChB,CAgCQ,oDAEQ,mBAlChB,CAqCQ,oDAEQ,mBApChB,CAkCQ,oDAEQ,mBApChB,CAuCQ,oDAEQ,kBAtChB,CAoCQ,oDAEQ,kBAtChB,CAyCQ,oDAEQ,kBAxChB,CAsCQ,oDAEQ,kBAxChB,CA2CQ,oDAEQ,kBA1ChB,CAwCQ,oDAEQ,kBA1ChB,CAhCA,kBAgFQ,mBA5CR,CApCA,UAmFQ,gBA5CR,CAvCA,WAwFQ,kBA9CR,CA1CA,sCA+FQ,gBAAA,CACA,kBAhDR,CAhDA,YAqGQ,eAlDR,CAuDA,KACI,sBArDJ,CAyDA,IACI,mBAvDJ,CA0DA,uBAEI,2BAAA,CACA,uBAAA,CACA,2BAxDJ,CA2DA,WACI,qBAzDJ,CA4DA,gCACI,aAAA,CAKA,cAAA,CACA,kBAAA,CACA,UAAA,CACA,mBA9DJ,CAuDI,sCACI,YArDR,CAkEQ,gEACI,8BAAA,CACA,aAhEZ","sourcesContent":["// 全局注入样式\n\n:root {\n    color-scheme: light;\n    &.ehs-ex {\n        color-scheme: dark;\n    }\n}\n\nbutton[ehs-input] {\n    :is(:root.ehs-eh, :root.ehs-ex) & {\n        min-height: 26px;\n        line-height: 20px;\n        padding: 1px 5px 2px;\n        margin: 0 2px;\n        border: 2px solid #b5a4a4;\n        border-radius: 3px;\n        font-size: 9pt;\n        color: #5c0d12;\n        background-color: #edeada;\n        outline: none;\n        white-space: pre;\n\n        &:disabled {\n            color: #c2a8a4;\n            -webkit-text-fill-color: #c2a8a4;\n            opacity: 1;\n        }\n\n        &:enabled:hover,\n        &:enabled:focus {\n            background-color: #f3f0e0 !important;\n            border-color: #977273 !important;\n        }\n\n        &:enabled:active {\n            background: radial-gradient(#d7d3c2, #f3f0e0) !important;\n            border-color: #5c0d12 !important;\n        }\n    }\n\n    :root.ehs-ex & {\n        border-color: #8d8d8d;\n        color: #f1f1f1;\n        background-color: #34353b;\n\n        &:enabled:hover,\n        &:enabled:focus {\n            background-color: #43464e !important;\n            border-color: #aeaeae !important;\n        }\n\n        &:enabled:active {\n            background: radial-gradient(#1a1a1a, #43464e) !important;\n            border-color: #c3c3c3 !important;\n        }\n\n        &:disabled {\n            color: #8a8a8a;\n            -webkit-text-fill-color: #8a8a8a;\n        }\n    }\n}\n\n[hidden] {\n    display: none;\n}\n\n:root.ehs-hide-icon {\n    [ehs-icon],\n    [ehs-emoji] {\n        display: none;\n    }\n}\n\nbody {\n    div#gright {\n        z-index: 3;\n    }\n\n    // 提交删除申请按钮\n    #expunge_new button[ehs-input][type='submit'] {\n        margin: 6px auto 2px;\n    }\n\n    // 题图\n    #gleft {\n        pointer-events: none;\n    }\n\n    // 日文标题\n    #gj {\n        margin: 3px 4px;\n    }\n\n    // 信息框\n    #gmid {\n        height: auto;\n    }\n\n    // 标签输入\n    #tagmenu_act,\n    #tagmenu_new {\n        width: calc(100% - 30px) !important; // 留下右侧 loading 空间\n    }\n\n    #tagmenu_new > form {\n        display: flex;\n        #newtagfield {\n            flex: auto;\n        }\n    }\n\n    // 信息框右侧菜单\n    #gd5 {\n        display: flex;\n        flex-flow: column;\n\n        // 当其他脚本在这里插入过多链接时。修改布局\n        &:has(> :nth-child(10)) {\n            :is(.g2, .g3):not(:has(+ .gsp)) {\n                padding-bottom: 18px;\n            }\n            .gsp {\n                padding-top: 0;\n            }\n        }\n        &:has(> :nth-child(11)) {\n            :is(.g2, .g3):not(:has(+ .gsp)) {\n                padding-bottom: 16px;\n            }\n        }\n        &:has(> :nth-child(12)) {\n            :is(.g2, .g3):not(:has(+ .gsp)) {\n                padding-bottom: 12px;\n            }\n        }\n        &:has(> :nth-child(13)) {\n            :is(.g2, .g3):not(:has(+ .gsp)) {\n                padding-bottom: 8px;\n            }\n        }\n        &:has(> :nth-child(14)) {\n            :is(.g2, .g3):not(:has(+ .gsp)) {\n                padding-bottom: 6px;\n            }\n        }\n        &:has(> :nth-child(15)) {\n            :is(.g2, .g3):not(:has(+ .gsp)) {\n                padding-bottom: 4px;\n            }\n        }\n    }\n    .g2,\n    .g3 {\n        padding-bottom: 20px;\n    }\n    .gsp {\n        padding-top: 10px;\n    }\n\n    // 标签组名\n    td.tc {\n        white-space: nowrap;\n    }\n\n    // 标签\n    div.gtl,\n    div.gtw,\n    div.gt {\n        line-height: 16px;\n        white-space: nowrap;\n    }\n\n    // 评论内容\n    div.c6 {\n        text-align: left;\n    }\n}\n\n// hah client table\n#hct {\n    font-family: sans-serif;\n}\n\n// Japanese title\n#gj {\n    -webkit-locale: 'ja';\n}\n\n[ehs-icon],\n[ehs-emoji] {\n    max-height: 1.25em !important;\n    max-width: 2em !important;\n    margin: -0.25em 1px !important;\n}\n\n[ehs-icon] {\n    vertical-align: middle;\n}\n\n.ehs-new-tag-complete-translate {\n    display: block;\n    &:empty {\n        display: none;\n    }\n\n    margin-top: 4px;\n    font-weight: bolder;\n    opacity: 0.8;\n    pointer-events: none;\n}\n\n// wiki 样式\n\n:root.ehs-wiki {\n    &.ehs-translate-tag [ehs-tag][lang|='zh-hans'] {\n        &::after {\n            content: ' (' attr(ehs-tag) ')';\n            font-size: 80%;\n        }\n    }\n}\n"],"sourceRoot":""}]);
// Exports
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (___CSS_LOADER_EXPORT___);

/* harmony export */ __webpack_require__.d(__webpack_exports__, [
/* harmony export */   "A", 0, __WEBPACK_DEFAULT_EXPORT__
/* harmony export */ ]);


/***/ }),

/***/ 7190:
/***/ ((module, __webpack_exports__, __webpack_require__) => {

/* harmony import */ var _node_modules_pnpm_css_loader_7_1_5_webpack_5_111_1_node_modules_css_loader_dist_runtime_sourceMaps_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(9147);
/* harmony import */ var _node_modules_pnpm_css_loader_7_1_5_webpack_5_111_1_node_modules_css_loader_dist_runtime_sourceMaps_js__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_node_modules_pnpm_css_loader_7_1_5_webpack_5_111_1_node_modules_css_loader_dist_runtime_sourceMaps_js__WEBPACK_IMPORTED_MODULE_0__);
/* harmony import */ var _node_modules_pnpm_css_loader_7_1_5_webpack_5_111_1_node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(1129);
/* harmony import */ var _node_modules_pnpm_css_loader_7_1_5_webpack_5_111_1_node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_node_modules_pnpm_css_loader_7_1_5_webpack_5_111_1_node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1__);
// Imports


var ___CSS_LOADER_EXPORT___ = _node_modules_pnpm_css_loader_7_1_5_webpack_5_111_1_node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1___default()((_node_modules_pnpm_css_loader_7_1_5_webpack_5_111_1_node_modules_css_loader_dist_runtime_sourceMaps_js__WEBPACK_IMPORTED_MODULE_0___default()));
// Module
___CSS_LOADER_EXPORT___.push([module.id, `.eh-syringe-lite-auto-complete-list{background:#f8f4ec;color:#5c0d12;position:absolute;top:168px;left:628px;min-width:570px;min-height:20px;text-align-last:left;border-radius:4px;box-shadow:0 1px 3px 0 rgba(0,0,0,.2),0 1px 1px 0 rgba(0,0,0,.14),0 2px 1px -1px rgba(0,0,0,.12);display:block;max-height:50vh;overflow-x:hidden;overflow-y:auto;overflow:hidden auto;padding:8px 0;scroll-padding:16px;scrollbar-width:thin;z-index:10}:root.ehs-ex .eh-syringe-lite-auto-complete-list{background:#2b2b2b;color:#f1f1f1}.eh-syringe-lite-auto-complete-list:empty,.eh-syringe-lite-auto-complete-list[hidden]{display:none}.eh-syringe-lite-auto-complete-list.exclude .auto-complete-item .en-name:before{content:"- "}.eh-syringe-lite-auto-complete-list .auto-complete-item{padding:0 8px;line-height:24px;height:24px;contain:strict;content-visibility:auto;display:flex;justify-content:space-between;cursor:pointer}.eh-syringe-lite-auto-complete-list .auto-complete-item img{display:inline-block!important;height:8pt;vertical-align:text-top}.eh-syringe-lite-auto-complete-list .auto-complete-item.selected,.eh-syringe-lite-auto-complete-list .auto-complete-item:hover{background:#e8ecf3}:root.ehs-ex .eh-syringe-lite-auto-complete-list .auto-complete-item.selected,:root.ehs-ex .eh-syringe-lite-auto-complete-list .auto-complete-item:hover{background:#3e3f40}.eh-syringe-lite-auto-complete-list .auto-complete-text{flex:0 1 auto;white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.eh-syringe-lite-auto-complete-list .auto-complete-text.en-name{flex-shrink:4;padding-left:8px;color:#5f6368}:root.ehs-ex .eh-syringe-lite-auto-complete-list .auto-complete-text.en-name{color:#d9d9d9}.eh-syringe-lite-auto-complete-list mark{color:inherit;background:#f5f500}:root.ehs-ex .eh-syringe-lite-auto-complete-list mark{background:#727200}`, "",{"version":3,"sources":["webpack://./src/plugin/tag-tip/index.less"],"names":[],"mappings":"AAAA,oCACI,kBAAA,CACA,aAAA,CAOA,iBAAA,CACA,SAAA,CACA,UAAA,CACA,eAAA,CACA,eAAA,CACA,oBAAA,CACA,iBAAA,CACA,gGAAA,CAIA,aAAA,CACA,eAAA,CACA,iBAAA,CAAA,eAAA,CAAA,oBAAA,CACA,aAAA,CACA,mBAAA,CACA,oBAAA,CACA,UARJ,CAdI,iDACI,kBAAA,CACA,aAgBR,CAMI,sFAEI,YAJR,CAOI,gFAGY,YAPhB,CA7BA,wDA0CQ,aAAA,CACA,gBAAA,CACA,WAAA,CACA,cAAA,CACA,uBAAA,CACA,YAAA,CACA,6BAAA,CACA,cAVR,CAvCA,4DAoDY,8BAAA,CACA,UAAA,CACA,uBAVZ,CAaQ,+HAEI,kBAXZ,CAaY,yJACI,kBAVhB,CApDA,wDAoEQ,aAAA,CACA,kBAAA,CACA,sBAAA,CACA,eAbR,CAeQ,gEACI,aAAA,CACA,gBAAA,CACA,aAbZ,CAcY,6EACI,aAZhB,CAlEA,yCAoFQ,aAAA,CACA,kBAfR,CAgBQ,sDACI,kBAdZ","sourcesContent":[".eh-syringe-lite-auto-complete-list {\n    background: #f8f4ec;\n    color: #5c0d12;\n\n    :root.ehs-ex & {\n        background: #2b2b2b;\n        color: #f1f1f1;\n    }\n\n    position: absolute;\n    top: 168px;\n    left: 628px;\n    min-width: 570px;\n    min-height: 20px;\n    text-align-last: left;\n    border-radius: 4px;\n    box-shadow:\n        0 1px 3px 0 rgba(0, 0, 0, 0.2),\n        0 1px 1px 0 rgba(0, 0, 0, 0.14),\n        0 2px 1px -1px rgba(0, 0, 0, 0.12);\n    display: block;\n    max-height: 50vh;\n    overflow: hidden auto;\n    padding: 8px 0;\n    scroll-padding: 16px;\n    scrollbar-width: thin;\n    z-index: 10;\n\n    &[hidden],\n    &:empty {\n        display: none;\n    }\n\n    &.exclude {\n        .auto-complete-item {\n            .en-name::before {\n                content: '- ';\n            }\n        }\n    }\n\n    .auto-complete-item {\n        padding: 0 8px;\n        line-height: 24px;\n        height: 24px;\n        contain: strict;\n        content-visibility: auto;\n        display: flex;\n        justify-content: space-between;\n        cursor: pointer;\n\n        img {\n            display: inline-block !important;\n            height: 8pt;\n            vertical-align: text-top;\n        }\n\n        &:hover,\n        &.selected {\n            background: #e8ecf3;\n\n            :root.ehs-ex & {\n                background: #3e3f40;\n            }\n        }\n    }\n\n    .auto-complete-text {\n        flex: 0 1 auto;\n        white-space: nowrap;\n        text-overflow: ellipsis;\n        overflow: hidden;\n\n        &.en-name {\n            flex-shrink: 4;\n            padding-left: 8px;\n            color: #5f6368;\n            :root.ehs-ex & {\n                color: #d9d9d9;\n            }\n        }\n    }\n\n    mark {\n        color: inherit;\n        background: #f5f500;\n        :root.ehs-ex & {\n            background: #727200;\n        }\n    }\n}\n"],"sourceRoot":""}]);
// Exports
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (___CSS_LOADER_EXPORT___);

/* harmony export */ __webpack_require__.d(__webpack_exports__, [
/* harmony export */   "A", 0, __WEBPACK_DEFAULT_EXPORT__
/* harmony export */ ]);


/***/ }),

/***/ 2719:
/***/ ((module, __webpack_exports__, __webpack_require__) => {

/* harmony import */ var _node_modules_pnpm_css_loader_7_1_5_webpack_5_111_1_node_modules_css_loader_dist_runtime_sourceMaps_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(9147);
/* harmony import */ var _node_modules_pnpm_css_loader_7_1_5_webpack_5_111_1_node_modules_css_loader_dist_runtime_sourceMaps_js__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_node_modules_pnpm_css_loader_7_1_5_webpack_5_111_1_node_modules_css_loader_dist_runtime_sourceMaps_js__WEBPACK_IMPORTED_MODULE_0__);
/* harmony import */ var _node_modules_pnpm_css_loader_7_1_5_webpack_5_111_1_node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(1129);
/* harmony import */ var _node_modules_pnpm_css_loader_7_1_5_webpack_5_111_1_node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_node_modules_pnpm_css_loader_7_1_5_webpack_5_111_1_node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1__);
// Imports


var ___CSS_LOADER_EXPORT___ = _node_modules_pnpm_css_loader_7_1_5_webpack_5_111_1_node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1___default()((_node_modules_pnpm_css_loader_7_1_5_webpack_5_111_1_node_modules_css_loader_dist_runtime_sourceMaps_js__WEBPACK_IMPORTED_MODULE_0___default()));
// Module
___CSS_LOADER_EXPORT___.push([module.id, `:root .ehs-context-menu{position:fixed;z-index:2147483647;padding:8px 0;background:#f8f4ec;color:#5c0d12;border-radius:4px;box-shadow:0 1px 3px 0 rgba(0,0,0,.2),0 1px 1px 0 rgba(0,0,0,.14),0 2px 1px -1px rgba(0,0,0,.12);max-width:100vw;max-height:100vh;overflow-x:hidden;overflow-y:auto;overflow:hidden auto;scrollbar-width:thin;box-sizing:border-box}:root .ehs-context-menu>button{display:block;width:100%;padding:0 8px;min-height:24px;border:0;background:transparent;color:inherit;font:inherit;line-height:24px;text-align:left;cursor:pointer}:root .ehs-context-menu>button:focus-visible,:root .ehs-context-menu>button:hover{background:#e8ecf3}:root.ehs-ex .ehs-context-menu{background:#2b2b2b;color:#f1f1f1}:root.ehs-ex .ehs-context-menu>button:focus-visible,:root.ehs-ex .ehs-context-menu>button:hover{background:#3e3f40}`, "",{"version":3,"sources":["webpack://./src/providers/user-script/menu.less"],"names":[],"mappings":"AAAA,wBACI,cAAA,CACA,kBAAA,CACA,aAAA,CACA,kBAAA,CACA,aAAA,CACA,iBAAA,CACA,gGAAA,CAIA,eAAA,CACA,gBAAA,CACA,iBAAA,CAAA,eAAA,CAAA,oBAAA,CACA,oBAAA,CACA,qBAFJ,CAbA,+BAkBQ,aAAA,CACA,UAAA,CACA,aAAA,CACA,eAAA,CACA,QAAA,CACA,sBAAA,CACA,aAAA,CACA,YAAA,CACA,gBAAA,CACA,eAAA,CACA,cAFR,CAIQ,kFAEI,kBAFZ,CAOA,+BACI,kBAAA,CACA,aALJ,CAGA,gGAMQ,kBALR","sourcesContent":[":root .ehs-context-menu {\n    position: fixed;\n    z-index: 2147483647;\n    padding: 8px 0;\n    background: #f8f4ec;\n    color: #5c0d12;\n    border-radius: 4px;\n    box-shadow:\n        0 1px 3px 0 rgba(0, 0, 0, 0.2),\n        0 1px 1px 0 rgba(0, 0, 0, 0.14),\n        0 2px 1px -1px rgba(0, 0, 0, 0.12);\n    max-width: 100vw;\n    max-height: 100vh;\n    overflow: hidden auto;\n    scrollbar-width: thin;\n    box-sizing: border-box;\n\n    > button {\n        display: block;\n        width: 100%;\n        padding: 0 8px;\n        min-height: 24px;\n        border: 0;\n        background: transparent;\n        color: inherit;\n        font: inherit;\n        line-height: 24px;\n        text-align: left;\n        cursor: pointer;\n\n        &:hover,\n        &:focus-visible {\n            background: #e8ecf3;\n        }\n    }\n}\n\n:root.ehs-ex .ehs-context-menu {\n    background: #2b2b2b;\n    color: #f1f1f1;\n\n    > button:hover,\n    > button:focus-visible {\n        background: #3e3f40;\n    }\n}\n"],"sourceRoot":""}]);
// Exports
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (___CSS_LOADER_EXPORT___);

/* harmony export */ __webpack_require__.d(__webpack_exports__, [
/* harmony export */   "A", 0, __WEBPACK_DEFAULT_EXPORT__
/* harmony export */ ]);


/***/ }),

/***/ 64:
/***/ ((module, __webpack_exports__, __webpack_require__) => {

/* harmony import */ var _node_modules_pnpm_css_loader_7_1_5_webpack_5_111_1_node_modules_css_loader_dist_runtime_sourceMaps_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(9147);
/* harmony import */ var _node_modules_pnpm_css_loader_7_1_5_webpack_5_111_1_node_modules_css_loader_dist_runtime_sourceMaps_js__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_node_modules_pnpm_css_loader_7_1_5_webpack_5_111_1_node_modules_css_loader_dist_runtime_sourceMaps_js__WEBPACK_IMPORTED_MODULE_0__);
/* harmony import */ var _node_modules_pnpm_css_loader_7_1_5_webpack_5_111_1_node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(1129);
/* harmony import */ var _node_modules_pnpm_css_loader_7_1_5_webpack_5_111_1_node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_node_modules_pnpm_css_loader_7_1_5_webpack_5_111_1_node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1__);
/* harmony import */ var _node_modules_pnpm_css_loader_7_1_5_webpack_5_111_1_node_modules_css_loader_dist_runtime_getUrl_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(4532);
/* harmony import */ var _node_modules_pnpm_css_loader_7_1_5_webpack_5_111_1_node_modules_css_loader_dist_runtime_getUrl_js__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(_node_modules_pnpm_css_loader_7_1_5_webpack_5_111_1_node_modules_css_loader_dist_runtime_getUrl_js__WEBPACK_IMPORTED_MODULE_2__);
// Imports



var ___CSS_LOADER_URL_IMPORT_0___ = new URL(/* asset import */ __webpack_require__(9334), __webpack_require__.b);
var ___CSS_LOADER_EXPORT___ = _node_modules_pnpm_css_loader_7_1_5_webpack_5_111_1_node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1___default()((_node_modules_pnpm_css_loader_7_1_5_webpack_5_111_1_node_modules_css_loader_dist_runtime_sourceMaps_js__WEBPACK_IMPORTED_MODULE_0___default()));
var ___CSS_LOADER_URL_REPLACEMENT_0___ = _node_modules_pnpm_css_loader_7_1_5_webpack_5_111_1_node_modules_css_loader_dist_runtime_getUrl_js__WEBPACK_IMPORTED_MODULE_2___default()(___CSS_LOADER_URL_IMPORT_0___);
// Module
___CSS_LOADER_EXPORT___.push([module.id, `#eh-syringe-popup-button{position:fixed;touch-action:none;width:36px;height:36px;border-radius:36px;border:2px solid #6e066e;box-shadow:0 0 2px 1px rgba(0,0,0,.5);background:50%/65% no-repeat #fff url(${___CSS_LOADER_URL_REPLACEMENT_0___});z-index:10}#eh-syringe-popup-button:hover{cursor:pointer}:root.ehs-ex #eh-syringe-popup-button{background-color:#bbb;border-color:#926a92}#eh-syringe-popup-badge{height:14px;font-size:12px;position:absolute;right:-10px;top:-10px;padding:2px 4px;border-radius:4px;background:#444;color:#fff}#eh-syringe-popup-back{position:fixed;bottom:0;right:0;top:0;left:0;z-index:1000;background:rgba(0,0,0,.3);visibility:hidden;pointer-events:none;opacity:0;transition:visibility,opacity .4s}#eh-syringe-popup-back.closing,#eh-syringe-popup-back.open,#eh-syringe-popup-back.opening{visibility:visible;pointer-events:auto}#eh-syringe-popup-back.open,#eh-syringe-popup-back.opening{opacity:1}#eh-syringe-popup-back.closing{opacity:0}#eh-syringe-popup{position:absolute;bottom:72px;right:12px}@media print{#eh-syringe-popup-back,#eh-syringe-popup-button{display:none}}`, "",{"version":3,"sources":["webpack://./src/user-script/popup-host.less"],"names":[],"mappings":"AAAA,yBACI,cAAA,CACA,iBAAA,CAGA,UAAA,CACA,WAAA,CACA,kBAAA,CACA,wBAAA,CACA,qCAAA,CACA,yEAAA,CACA,UADJ,CAEI,+BACI,cAAR,CAGI,sCACI,qBAAA,CACA,oBADR,CAKA,wBACI,WAAA,CACA,cAAA,CACA,iBAAA,CACA,WAAA,CACA,SAAA,CACA,eAAA,CACA,iBAAA,CACA,eAAA,CACA,UAHJ,CAMA,uBACI,cAAA,CACA,QAAA,CACA,OAAA,CACA,KAAA,CACA,MAAA,CACA,YAAA,CACA,yBAAA,CACA,iBAAA,CACA,mBAAA,CACA,SAAA,CACA,iCAJJ,CAQI,0FAGI,kBAAA,CACA,mBANR,CAYI,2DACI,SAPR,CASI,+BACI,SAPR,CAWA,kBACI,iBAAA,CACA,WAAA,CACA,UATJ,CAYA,aACI,gDAEI,YAVN,CACF","sourcesContent":["#eh-syringe-popup-button {\n    position: fixed;\n    touch-action: none;\n    // bottom: 12px;\n    // right: 12px;\n    width: 36px;\n    height: 36px;\n    border-radius: 36px;\n    border: rgb(110, 6, 110) 2px solid;\n    box-shadow: rgba(0, 0, 0, 0.5) 0 0 2px 1px;\n    background: center/65% no-repeat white url('../assets/logo.svg');\n    z-index: 10;\n    &:hover {\n        cursor: pointer;\n    }\n\n    :root.ehs-ex & {\n        background-color: rgb(187, 187, 187);\n        border-color: rgb(146, 106, 146);\n    }\n}\n\n#eh-syringe-popup-badge {\n    height: 14px;\n    font-size: 12px;\n    position: absolute;\n    right: -10px;\n    top: -10px;\n    padding: 2px 4px;\n    border-radius: 4px;\n    background: #444;\n    color: white;\n}\n\n#eh-syringe-popup-back {\n    position: fixed;\n    bottom: 0;\n    right: 0;\n    top: 0;\n    left: 0;\n    z-index: 1000;\n    background: rgba(0, 0, 0, 0.3);\n    visibility: hidden;\n    pointer-events: none;\n    opacity: 0;\n    transition:\n        visibility,\n        opacity 0.4s;\n\n    &.open,\n    &.opening,\n    &.closing {\n        visibility: visible;\n        pointer-events: initial;\n    }\n\n    &.open {\n        opacity: 1;\n    }\n    &.opening {\n        opacity: 1;\n    }\n    &.closing {\n        opacity: 0;\n    }\n}\n\n#eh-syringe-popup {\n    position: absolute;\n    bottom: 12px + 36px + 24px;\n    right: 12px;\n}\n\n@media print {\n    #eh-syringe-popup-back,\n    #eh-syringe-popup-button {\n        display: none;\n    }\n}\n"],"sourceRoot":""}]);
// Exports
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (___CSS_LOADER_EXPORT___);

/* harmony export */ __webpack_require__.d(__webpack_exports__, [
/* harmony export */   "A", 0, __WEBPACK_DEFAULT_EXPORT__
/* harmony export */ ]);


/***/ }),

/***/ 9334:
/***/ ((module) => {

module.exports = "data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiPz4KPHN2ZyB3aWR0aD0iMTI4cHgiIGhlaWdodD0iMTI4cHgiIHZpZXdCb3g9IjAgMCAxMjggMTI4IiB2ZXJzaW9uPSIxLjEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgeG1sbnM6eGxpbms9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkveGxpbmsiPgogICAgPCEtLSBHZW5lcmF0b3I6IFNrZXRjaCA1NS4yICg3ODE4MSkgLSBodHRwczovL3NrZXRjaGFwcC5jb20gLS0+CiAgICA8dGl0bGU+bG9nbzwvdGl0bGU+CiAgICA8ZGVzYz5DcmVhdGVkIHdpdGggU2tldGNoLjwvZGVzYz4KICAgIDxnIGlkPSJsb2dvIiBzdHJva2U9Im5vbmUiIHN0cm9rZS13aWR0aD0iMSIgZmlsbD0ibm9uZSIgZmlsbC1ydWxlPSJldmVub2RkIj4KICAgICAgICA8Zz4KICAgICAgICAgICAgPHJlY3QgaWQ9IuefqeW9oiIgZmlsbD0iI0ZGRkZGRiIgdHJhbnNmb3JtPSJ0cmFuc2xhdGUoNTcuMjMxMzAzLCA3MS42NDQ5MzkpIHJvdGF0ZSgtNDUuMDAwMDAwKSB0cmFuc2xhdGUoLTU3LjIzMTMwMywgLTcxLjY0NDkzOSkgIiB4PSIxOS43MzEzMDI3IiB5PSI1OS44OTQ5Mzk0IiB3aWR0aD0iNzUiIGhlaWdodD0iMjMuNSI+PC9yZWN0PgogICAgICAgICAgICA8cmVjdCBpZD0i55+p5b2iIiBmaWxsPSIjRkZGRkZGIiB0cmFuc2Zvcm09InRyYW5zbGF0ZSg4OC4xMzEzNTQsIDQwLjI0NTY4OSkgcm90YXRlKC00NS4wMDAwMDApIHRyYW5zbGF0ZSgtODguMTMxMzU0LCAtNDAuMjQ1Njg5KSAiIHg9IjgyLjYzMTM1NDUiIHk9IjE0LjI0NTY4OSIgd2lkdGg9IjExIiBoZWlnaHQ9IjUyIj48L3JlY3Q+CiAgICAgICAgICAgIDxyZWN0IGlkPSLnn6nlvaIiIGZpbGw9IiNGRkZGRkYiIHRyYW5zZm9ybT0idHJhbnNsYXRlKDEwOS40ODk1OTIsIDE4LjUyNDAyOCkgcm90YXRlKC00NS4wMDAwMDApIHRyYW5zbGF0ZSgtMTA5LjQ4OTU5MiwgLTE4LjUyNDAyOCkgIiB4PSIxMDMuOTg5NTkyIiB5PSIxLjAyNDAyODIxIiB3aWR0aD0iMTEiIGhlaWdodD0iMzUiPjwvcmVjdD4KICAgICAgICAgICAgPHJlY3QgaWQ9IuefqeW9oiIgZmlsbD0iI0ZGRkZGRiIgdHJhbnNmb3JtPSJ0cmFuc2xhdGUoOTkuNzk4NjE2LCAyOS4xOTY5NTYpIHJvdGF0ZSgtNDUuMDAwMDAwKSB0cmFuc2xhdGUoLTk5Ljc5ODYxNiwgLTI5LjE5Njk1NikgIiB4PSI4OS41NDg2MTY0IiB5PSIyMi45NDY5NTU1IiB3aWR0aD0iMjAuNSIgaGVpZ2h0PSIxMi41Ij48L3JlY3Q+CiAgICAgICAgICAgIDxyZWN0IGlkPSLnn6nlvaIiIGZpbGw9IiNGREJERjEiIHRyYW5zZm9ybT0idHJhbnNsYXRlKDI0Ljg2MTY0NywgMTAyLjk4MjQxMSkgcm90YXRlKC00NS4wMDAwMDApIHRyYW5zbGF0ZSgtMjQuODYxNjQ3LCAtMTAyLjk4MjQxMSkgIiB4PSIxOS4zNjE2NDY3IiB5PSI5Ny40ODI0MTEiIHdpZHRoPSIxMSIgaGVpZ2h0PSIxMSI+PC9yZWN0PgogICAgICAgICAgICA8cGF0aCBkPSJNMjcuNDI2MjQ4LDg2LjM1OTg4MjEgQzI3LjQyNjI0OCw4Ni4zNTk4ODIxIDMzLjA3NjUyMjUsODYuMzY2ODA4MSA0MS4wMjM0NzY0LDg2LjM2NTQyMyBDNDguOTc0NTg1OSw4Ni4zNjU0MjMgNTcuNjQwNDY0LDgzLjM1Njc0NTMgNTcuNjQwNDY0LDgzLjM1Njc0NTMgTDM4LjAxNDc5ODYsMTAyLjk4MjQxMSBMMjQuOTc5OTY1OSw4OS45NDc1Nzc5IEwyNy40MjQ4NjI4LDg2LjM2MTI2NzMgTDI3LjQyNjI0OCw4Ni4zNTk4ODIxIFoiIGlkPSLot6/lvoQiIGZpbGw9IiNGREJERjEiIGZpbGwtcnVsZT0ibm9uemVybyI+PC9wYXRoPgogICAgICAgICAgICA8cGF0aCBkPSJNOTQuNzIyNTU0OCwzNy41ODM4NDI0IEwxMDUuNjI0MTYzLDI2LjY4MjIzNDIgTDEwMS4yNzg3NTcsMjIuMzM2ODI4MiBMOTAuMzc3MTQ4OSwzMy4yMzg0MzY1IEw5NC43MjI1NTQ4LDM3LjU4Mzg0MjQgWiBNODMuODUxNDIxMiwzMS4wNzMzNTIxIEwxMDEuMjk1MzgsMTMuNjI5MzkzNiBMMTE0LjMzMTU5OCwyNi42NjU2MTE2IEw5Ni44ODYyNTM5LDQ0LjExMDk1NTMgTDgzLjg1MTQyMTIsMzEuMDc2MTIyNiBMODMuODUxNDIxMiwzMS4wNzMzNTIxIFoiIGlkPSLlvaLnirYiIGZpbGw9IiM3ODM2QTAiIGZpbGwtcnVsZT0ibm9uemVybyI+PC9wYXRoPgogICAgICAgICAgICA8cGF0aCBkPSJNNzEuMjkwMzMwNCwyMi44NzI5MDQ3IEM3MC4wODc5Njc2LDI0LjA3NTI2NzYgNzAuMTkwNDczMSwyNi4xMzM2OTA3IDcxLjUwNjQyMzIsMjcuNDQ5NjQwOSBMMTAwLjUxMjczNiw1Ni40NTU5NTMzIEMxMDEuODE0ODM0LDU3Ljc1ODA1MTQgMTAzLjg5NDAzNSw1Ny44NjQ3MTI2IDEwNS4wODgwODcsNTYuNjcwNjYwOSBDMTA2LjI5MDQ0OSw1NS40NjgyOTggMTA2LjE4Nzk0NCw1My40MDk4NzQ5IDEwNC44NzE5OTQsNTIuMDkzOTI0NyBMNzUuODY3MDY2NywyMy4wODg5OTc2IEM3NC41NjQ5Njg2LDIxLjc4Njg5OTUgNzIuNDg0MzgyMSwyMS42Nzg4NTMyIDcxLjI5MDMzMDQsMjIuODcyOTA0NyBaIE02Ni40NjI4NzExLDE4LjA0NTQ0NTMgQzcwLjA3NTUwMDYsMTQuNDMyODE1OCA3Ni4yNzAxNjI5LDE0Ljc3MDgwNzIgODAuMjI3NzEsMTguNzI4MzU0MyBMMTA5LjIzNDAyMiw0Ny43MzQ2NjY1IEMxMTMuMjIzNDI5LDUxLjcyNDA3MzQgMTEzLjUxOTg2NCw1Ny44OTM4MDE5IDEwOS45MTU1NDYsNjEuNDk4MTIwMiBDMTA2LjMwMjkxNiw2NS4xMTA3NDk3IDEwMC4xMDgyNTQsNjQuNzcyNzU4MyA5Ni4xNTA3MDcxLDYwLjgxNTIxMTQgTDY3LjE0NTc3OTksMzEuODEwMjg0MiBDNjMuMTU2MzczMSwyNy44MjA4Nzc0IDYyLjg1ODU1MjgsMjEuNjQ5NzYzNiA2Ni40NjI4NzExLDE4LjA0NTQ0NTMgWiBNOTkuMTMwMjk1Myw3LjEwMzY2NTkxIEM5Ny45MzA3MDI5LDguMzAzMjU4MzMgOTcuOTI3OTMyNCwxMC4yNjE5NDYzIDk5LjEzMDI5NTMsMTEuNDY0MzA5MiBMMTE2LjQ5NjY4MiwyOC44MzA2OTYgQzExNy43MDQ1ODYsMzAuMDM4NTk5NyAxMTkuNjUyMTkyLDMwLjAzNTgyOTMgMTIwLjg1NzMyNSwyOC44MzA2OTYgQzEyMi4wNTU1MzMsMjcuNjMyNDg4NiAxMjIuMDU5Njg4LDI1LjY3MjQxNTUgMTIwLjg1NzMyNSwyNC40NzAwNTI3IEwxMDMuNDkwOTM5LDcuMTAzNjY1OTEgQzEwMi4yODMwMzUsNS44OTU3NjIxMiAxMDAuMzM1NDI5LDUuODk4NTMyNTggOTkuMTMwMjk1Myw3LjEwMzY2NTkxIFogTTk0Ljc4NDg4OTMsMi43NTgyNTk5NyBDOTYuNTE0OTgsMS4wMjIyODYzOCA5OC44NjQxOTgsMC4wNDUyNjU1OTg0IDEwMS4zMTUwNzcsMC4wNDIzOTUwMjI4IEMxMDMuNzY1OTU3LDAuMDM5NTQ5NTQzNiAxMDYuMTE3NDQ3LDEuMDExMDg4NzIgMTA3Ljg1MTU4MiwyLjc0MzAyMjYgTDEyNS4yMTc5NjksMjAuMTA5NDA5MyBDMTI4LjgyMjI4NywyMy43MTM3Mjc3IDEyOC44MDU2NjQsMjkuNTcwMzk4NSAxMjUuMjAxMzQ2LDMzLjE3NDcxNjggQzEyMy40NzE0OTUsMzQuOTEwNDUwNCAxMjEuMTIyNjc3LDM1Ljg4NzQ1MTIgMTE4LjY3MjEzNywzNS44OTA1ODM5IEMxMTYuMjIxNTk3LDM1Ljg5MzY4NjcgMTEzLjg3MDMwMSwzNC45MjI2NjU2IDExMi4xMzYwMzksMzMuMTkxMzM5MyBMOTQuNzY5NjUyLDE1LjgyNDk1MjcgQzkxLjE2NTMzMzcsMTIuMjIwNjM0MyA5MS4xODE5NTYzLDYuMzYzOTYzNTEgOTQuNzg2Mjc0NSwyLjc1OTY0NTIgTDk0Ljc4NDg4OTMsMi43NTgyNTk5NyBaIiBpZD0i5b2i54q2IiBmaWxsPSIjNzgzNkEwIiBmaWxsLXJ1bGU9Im5vbnplcm8iPjwvcGF0aD4KICAgICAgICAgICAgPHBhdGggZD0iTTI0Ljk5Nzk1MTYsODkuOTI5NTcwMSBDMjQuOTg0MTIxNSw4OS45NDM0MjIyIDM4LjAxNjE4MzgsMTAyLjk4MTAyNiAzOC4wMTYxODM4LDEwMi45ODEwMjYgQzM4LjAyMTcyNDYsMTAyLjk4NjU2NiA4OC4xNjYzNTI1LDUyLjgzMDg1NjggODguMTY2MzUyNSw1Mi44MzA4NTY4IEw3NS4xMzE1MTk3LDM5Ljc5NjAyNCBMMjQuOTk3OTUxNiw4OS45Mjk1NzAxIFogTTc1LjE0NTM3MTgsMzEuMDg4NTg5NCBMOTYuODcyNDAxOSw1Mi44MTU2MTk0IEw0Mi4zNzgyMTI0LDEwNy4zMDk4MDkgQzQxLjIyODE3NywxMDguNDc0NTkgMzkuNjYxMzIzMywxMDkuMTMyOTY4IDM4LjAyNDQ3OTMsMTA5LjEzOTI5NiBDMzYuMzg3NjM1MiwxMDkuMTQ1NDQ3IDM0LjgxNTgwNzcsMTA4LjQ5OTAzNCAzMy42NTY5MjU4LDEwNy4zNDMwNTQgTDIwLjYxOTMyMjUsOTQuMzA1NDUwOCBDMTguMjIwMTM3NSw5MS45MDYyNjU4IDE4LjIzMjYwNDQsODguMDAxMzU2OCAyMC42NTExODIzLDg1LjU4Mjc3ODkgTDc1LjE0NTM3MTgsMzEuMDg4NTg5NCBaIiBpZD0i5b2i54q2IiBmaWxsPSIjNzgzNkEwIiBmaWxsLXJ1bGU9Im5vbnplcm8iPjwvcGF0aD4KICAgICAgICAgICAgPHBhdGggZD0iTTIwLjU5OTkyOTUsMTAzLjAxNTY1NiBDMjAuNjA0MDg1MiwxMDMuMDExNSAyNC45NTM2NDY4LDEwNy4zNjEwNjIgMjQuOTUzNjQ2OCwxMDcuMzYxMDYyIEMyNC45NDk0OTEyLDEwNy4zNTY5MDYgMjkuMzEwMTM0NiwxMDIuOTk2MjYzIDI5LjMxMDEzNDYsMTAyLjk5NjI2MyBMMjQuOTY0NzI4NSw5OC42NTA4NTY4IEwyMC41OTk5Mjk1LDEwMy4wMTU2NTYgTDIwLjU5OTkyOTUsMTAzLjAxNTY1NiBaIE0yNC45ODEzNTEsODkuOTQzNDIyMiBMMzguMDE3NTY5MSwxMDIuOTc5NjQgTDI5LjI5MDc0MTUsMTExLjcwNjQ2OCBDMjYuODkxNTY2NCwxMTQuMTA4NzE4IDIzLjAwMDU4MDgsMTE0LjExNTUzNCAyMC41OTMwMDM1LDExMS43MjE3MDUgTDE2LjIzOTI4NjIsMTA3LjM2Nzk4OCBDMTMuODQ1NDU3LDEwNC45NjA0MTEgMTMuODUyMjczNSwxMDEuMDY5NDI1IDE2LjI1NDUyMzYsOTguNjcwMjQ5NyBMMjQuOTgxMzUxLDg5Ljk0MzQyMjIgTDI0Ljk4MTM1MSw4OS45NDM0MjIyIFoiIGlkPSLlvaLnirYiIGZpbGw9IiM3ODM2QTAiIGZpbGwtcnVsZT0ibm9uemVybyI+PC9wYXRoPgogICAgICAgICAgICA8cGF0aCBkPSJNMjAuNTk5OTI5NSwxMDMuMDE1NjU2IEMyMC42MDQwODUyLDEwMy4wMTE1IDI0Ljk1MzY0NjgsMTA3LjM2MTA2MiAyNC45NTM2NDY4LDEwNy4zNjEwNjIgQzI0Ljk0OTQ5MTIsMTA3LjM1NjkwNiAyOS4zMTAxMzQ2LDEwMi45OTYyNjMgMjkuMzEwMTM0NiwxMDIuOTk2MjYzIEwyNC45NjQ3Mjg1LDk4LjY1MDg1NjggTDIwLjU5OTkyOTUsMTAzLjAxNTY1NiBMMjAuNTk5OTI5NSwxMDMuMDE1NjU2IFogTTI0Ljk4MTM1MSw4OS45NDM0MjIyIEwzOC4wMTc1NjkxLDEwMi45Nzk2NCBMMjkuMjkwNzQxNSwxMTEuNzA2NDY4IEMyNi44OTE1NjY0LDExNC4xMDg3MTggMjMuMDAwNTgwOCwxMTQuMTE1NTM0IDIwLjU5MzAwMzUsMTExLjcyMTcwNSBMMTYuMjM5Mjg2MiwxMDcuMzY3OTg4IEMxMy44NDU0NTcsMTA0Ljk2MDQxMSAxMy44NTIyNzM1LDEwMS4wNjk0MjUgMTYuMjU0NTIzNiw5OC42NzAyNDk3IEwyNC45ODEzNTEsODkuOTQzNDIyMiBMMjQuOTgxMzUxLDg5Ljk0MzQyMjIgWiIgaWQ9IuW9oueKtiIgZmlsbD0iIzc4MzZBMCIgZmlsbC1ydWxlPSJub256ZXJvIj48L3BhdGg+CiAgICAgICAgICAgIDxwYXRoIGQ9Ik0xNi4yNDM0NDE5LDEwNy4zNzIxNDMgTDAuOTc5ODA1MDUxLDEyMi42MzU3OCBDLTAuMjI1MzI4MjgzLDEyMy44NDA5MTQgLTAuMjI4MDk4NzM3LDEyNS43ODg1MiAwLjk3Mjg3OTA0LDEyNi45ODk0OTcgQzIuMTcyNDcxNDYsMTI4LjE4OTA5IDQuMTIxNDYzMDEsMTI4LjE4NDkzNCA1LjMyNTIxMDk4LDEyNi45ODExODYgTDIwLjU4ODg0NzksMTExLjcxNzU0OSBDMjEuNzkyNTk2LDExMC41MTM4MDEgMjEuNzk2NzUxNiwxMDguNTY0ODEgMjAuNTk3MTU5MSwxMDcuMzY1MjE3IEMxOS4zOTYxODE0LDEwNi4xNjQyNCAxNy40NDcxODk5LDEwNi4xNjgzOTUgMTYuMjQzNDQxOSwxMDcuMzcyMTQzIFogTTYwLjk2OTEyNTQsNDcuNDM5NjE2NyBMNjcuNDg2NTQxOCw1My45NTcwMzMxIEM2OC4wODg4NDMsNTQuNTU2Mjc4IDY5LjA2MjY5OTYsNTQuNTU0NDE4MyA2OS42NjI3MDc4LDUzLjk1Mjg3NzUgQzY5Ljk1MjIwNTEsNTMuNjY0ODUxNyA3MC4xMTU0MjY4LDUzLjI3MzYxOTkgNzAuMTE2NDc1OCw1Mi44NjUyNDk0IEM3MC4xMTc1MDUsNTIuNDU2ODc4OSA2OS45NTYyNzYzLDUyLjA2NDgyMTYgNjkuNjY4MjQ4Niw1MS43NzUzMjYzIEw2My4xNTA4MzIyLDQ1LjI1NzkwOTggQzYyLjg2MTQ2MzcsNDQuOTY5Mjc0OCA2Mi40NjkyMTI0LDQ0LjgwNzUyODQgNjIuMDYwNTAyNiw0NC44MDgzMDIyIEM2MS42NTE3OTI4LDQ0LjgwOTA4NzMgNjEuMjYwMTYxMyw0NC45NzIzMjg3IDYwLjk3MTg5NTgsNDUuMjYyMDY1NCBDNjAuMzcwNzE0NCw0NS44NjMyNDY4IDYwLjM2Nzk0MzksNDYuODM4NDM1MiA2MC45NjkxMjU0LDQ3LjQzOTYxNjcgTDYwLjk2OTEyNTQsNDcuNDM5NjE2NyBaIE01Mi4yNDc4Mzg4LDU2LjE2MDkwMzMgTDU4Ljc2NTI1NTIsNjIuNjc4MzE5NyBDNTkuMzY3NTU2NCw2My4yNzc1NjQ2IDYwLjM0MTQxMyw2My4yNzU3MDQ5IDYwLjk0MTQyMTIsNjIuNjc0MTY0MSBDNjEuNTQyOTYyLDYyLjA3NDE1NTkgNjEuNTQ0ODIxNyw2MS4xMDAyOTkzIDYwLjk0NTU3NjgsNjAuNDk3OTk4MSBMNTQuNDI4MTYwNCw1My45ODA1ODE3IEM1NC4xMzkwMzE5LDUzLjY5MjE4NzYgNTMuNzQ3MTgxMiw1My41MzA0NjEzIDUzLjMzODgxMSw1My41MzA5Nzg0IEM1Mi45MzA0NDA5LDUzLjUzMTUwMDQgNTIuNTM5MDAyOSw1My42OTQyMjMyIDUyLjI1MDYwOTIsNTMuOTgzMzUyMSBDNTEuNjQ5NDI3OCw1NC41ODQ1MzM2IDUxLjY0NjY1NzMsNTUuNTU5NzIyIDUyLjI0NzgzODgsNTYuMTYwOTAzMyBMNTIuMjQ3ODM4OCw1Ni4xNjA5MDMzIFogTTQzLjUyNjU1MjEsNjQuODgyMTkgTDUwLjA0Mzk2ODQsNzEuMzk5NjA2NCBDNTAuNjQ2MjY5Nyw3MS45OTg4NTEzIDUxLjYyMDEyNjMsNzEuOTk2OTkxNiA1Mi4yMjAxMzQ1LDcxLjM5NTQ1MDggQzUyLjgyMTY3NTMsNzAuNzk1NDQyNSA1Mi44MjM1MzUsNjkuODIxNTg2IDUyLjIyNDI5MDIsNjkuMjE5Mjg0NyBMNDUuNzA2ODczNyw2Mi43MDE4NjgzIEM0NS40MTc3NDUzLDYyLjQxMzQ3NDEgNDUuMDI1ODk0NSw2Mi4yNTE3NDc4IDQ0LjYxNzUyNDMsNjIuMjUyMjY0OSBDNDQuMjA5MTU0MSw2Mi4yNTI3ODY5IDQzLjgxNzcxNjIsNjIuNDE1NTA5OCA0My41MjkzMjI1LDYyLjcwNDYzODggQzQyLjkyNjc1NTgsNjMuMzA3MjA1NCA0Mi45MjUzNzA2LDY0LjI4MTAwODYgNDMuNTI2NTUyMSw2NC44ODIxOSBMNDMuNTI2NTUyMSw2NC44ODIxOSBaIE0zNC44MDUyNjU0LDczLjYwMzQ3NjYgTDQxLjMyMjY4MTgsODAuMTIwODkzMSBDNDEuOTI0OTgzMSw4MC43MjAxMzc5IDQyLjg5ODgzOTYsODAuNzE4Mjc4MiA0My40OTg4NDc5LDgwLjExNjczNzQgQzQ0LjEwMDM4ODcsNzkuNTE2NzI5MiA0NC4xMDIyNDg0LDc4LjU0Mjg3MjYgNDMuNTAzMDAzNSw3Ny45NDA1NzEzIEwzNi45ODU1ODcxLDcxLjQyMzE1NDkgQzM2LjY5NjQ1ODcsNzEuMTM0NzYwNyAzNi4zMDQ2MDc5LDcwLjk3MzAzNDQgMzUuODk2MjM3Nyw3MC45NzM1NTE1IEMzNS40ODc4Njc1LDcwLjk3NDA3MzYgMzUuMDk2NDI5Niw3MS4xMzY3OTY0IDM0LjgwODAzNTksNzEuNDI1OTI1NCBDMzQuMjA1NDY5Miw3Mi4wMjg0OTIgMzQuMjA0MDg0LDczLjAwMjI5NTIgMzQuODA1MjY1NCw3My42MDM0NzY2IEwzNC44MDUyNjU0LDczLjYwMzQ3NjYgWiIgaWQ9IuW9oueKtiIgZmlsbD0iIzc4MzZBMCIgZmlsbC1ydWxlPSJub256ZXJvIj48L3BhdGg+CiAgICAgICAgPC9nPgogICAgPC9nPgo8L3N2Zz4=";

/***/ }),

/***/ 7281:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {


var parent = __webpack_require__(756);

module.exports = parent;


/***/ }),

/***/ 7231:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {


__webpack_require__(7720);
__webpack_require__(4001);
__webpack_require__(1380);
__webpack_require__(2806);
__webpack_require__(6646);
__webpack_require__(6557);
__webpack_require__(8420);
__webpack_require__(3038);
__webpack_require__(1121);
__webpack_require__(9387);
__webpack_require__(4082);
__webpack_require__(34);
__webpack_require__(5385);
__webpack_require__(3882);
__webpack_require__(1941);
var path = __webpack_require__(8926);

module.exports = path.Reflect;


/***/ }),

/***/ 6927:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {


var isCallable = __webpack_require__(8794);
var tryToString = __webpack_require__(2272);

var $TypeError = TypeError;

// `Assert: IsCallable(argument) is true`
module.exports = function (argument) {
  if (isCallable(argument)) return argument;
  throw new $TypeError(tryToString(argument) + ' is not a function');
};


/***/ }),

/***/ 9259:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {


var isConstructor = __webpack_require__(7036);
var tryToString = __webpack_require__(2272);

var $TypeError = TypeError;

// `Assert: IsConstructor(argument) is true`
module.exports = function (argument) {
  if (isConstructor(argument)) return argument;
  throw new $TypeError(tryToString(argument) + ' is not a constructor');
};


/***/ }),

/***/ 6299:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {


var isPossiblePrototype = __webpack_require__(658);

var $String = String;
var $TypeError = TypeError;

module.exports = function (argument) {
  if (isPossiblePrototype(argument)) return argument;
  throw new $TypeError("Can't set " + $String(argument) + ' as a prototype');
};


/***/ }),

/***/ 8831:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {


var has = (__webpack_require__(2793).has);

// Perform ? RequireInternalSlot(M, [[SetData]])
module.exports = function (it) {
  has(it);
  return it;
};


/***/ }),

/***/ 2498:
/***/ ((module) => {


var $TypeError = TypeError;

module.exports = function (argument) {
  if (typeof argument == 'string') return argument;
  throw new $TypeError('Argument is not a string');
};


/***/ }),

/***/ 7033:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {


var WeakMapHelpers = __webpack_require__(5290);

var weakmap = new WeakMapHelpers.WeakMap();
var set = WeakMapHelpers.set;
var remove = WeakMapHelpers.remove;

module.exports = function (key) {
  set(weakmap, key, 1);
  remove(weakmap, key);
  return key;
};


/***/ }),

/***/ 6372:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {


var has = (__webpack_require__(5290).has);

// Perform ? RequireInternalSlot(M, [[WeakMapData]])
module.exports = function (it) {
  has(it);
  return it;
};


/***/ }),

/***/ 8924:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {


var wellKnownSymbol = __webpack_require__(7080);
var create = __webpack_require__(475);
var defineProperty = (__webpack_require__(9100).f);

var UNSCOPABLES = wellKnownSymbol('unscopables');
var ArrayPrototype = Array.prototype;

// Array.prototype[@@unscopables]
// https://tc39.es/ecma262/#sec-array.prototype-@@unscopables
if (ArrayPrototype[UNSCOPABLES] === undefined) {
  defineProperty(ArrayPrototype, UNSCOPABLES, {
    configurable: true,
    value: create(null)
  });
}

// add a key to Array.prototype[@@unscopables]
module.exports = function (key) {
  ArrayPrototype[UNSCOPABLES][key] = true;
};


/***/ }),

/***/ 8568:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {


var charAt = (__webpack_require__(6478)/* .charAt */ .o);

// `AdvanceStringIndex` abstract operation
// https://tc39.es/ecma262/#sec-advancestringindex
module.exports = function (S, index, unicode) {
  return index + (unicode ? charAt(S, index).length || 1 : 1);
};


/***/ }),

/***/ 1468:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {


var isPrototypeOf = __webpack_require__(1688);

var $TypeError = TypeError;

module.exports = function (it, Prototype) {
  if (isPrototypeOf(Prototype, it)) return it;
  throw new $TypeError('Incorrect invocation');
};


/***/ }),

/***/ 2293:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {


var isObject = __webpack_require__(8861);

var $String = String;
var $TypeError = TypeError;

module.exports = function (argument) {
  if (argument === undefined || isObject(argument)) return argument;
  throw new $TypeError($String(argument) + ' is not an object or undefined');
};


/***/ }),

/***/ 4464:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {


var isObject = __webpack_require__(8861);

var $String = String;
var $TypeError = TypeError;

// `Assert: Type(argument) is Object`
module.exports = function (argument) {
  if (isObject(argument)) return argument;
  throw new $TypeError($String(argument) + ' is not an object');
};


/***/ }),

/***/ 3919:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {


var classof = __webpack_require__(7964);

var $TypeError = TypeError;

// Perform ? RequireInternalSlot(argument, [[TypedArrayName]])
// If argument.[[TypedArrayName]] is not "Uint8Array", throw a TypeError exception
module.exports = function (argument) {
  if (classof(argument) === 'Uint8Array') return argument;
  throw new $TypeError('Argument is not an Uint8Array');
};


/***/ }),

/***/ 9010:
/***/ ((module) => {


// eslint-disable-next-line es/no-typed-arrays -- safe
module.exports = typeof ArrayBuffer != 'undefined' && typeof DataView != 'undefined';


/***/ }),

/***/ 9635:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {


var globalThis = __webpack_require__(4127);
var uncurryThisAccessor = __webpack_require__(79);
var classof = __webpack_require__(2911);

var ArrayBuffer = globalThis.ArrayBuffer;
var TypeError = globalThis.TypeError;

// Includes
// - Perform ? RequireInternalSlot(O, [[ArrayBufferData]]).
// - If IsSharedArrayBuffer(O) is true, throw a TypeError exception.
module.exports = ArrayBuffer && uncurryThisAccessor(ArrayBuffer.prototype, 'byteLength', 'get') || function (O) {
  if (classof(O) !== 'ArrayBuffer') throw new TypeError('ArrayBuffer expected');
  return O.byteLength;
};


/***/ }),

/***/ 8827:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {


var globalThis = __webpack_require__(4127);
var NATIVE_ARRAY_BUFFER = __webpack_require__(9010);
var arrayBufferByteLength = __webpack_require__(9635);

var DataView = globalThis.DataView;

module.exports = function (O) {
  if (!NATIVE_ARRAY_BUFFER || arrayBufferByteLength(O) !== 0) return false;
  try {
    // eslint-disable-next-line no-new -- thrower
    new DataView(O);
    return false;
  } catch (error) {
    return true;
  }
};


/***/ }),

/***/ 3879:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {


// FF26- bug: ArrayBuffers are non-extensible, but Object.isExtensible does not report it
var fails = __webpack_require__(4892);

module.exports = fails(function () {
  if (typeof ArrayBuffer == 'function') {
    var buffer = new ArrayBuffer(8);
    // eslint-disable-next-line es/no-object-isextensible, es/no-object-defineproperty -- safe
    if (Object.isExtensible(buffer)) Object.defineProperty(buffer, 'a', { value: 8 });
  }
});


/***/ }),

/***/ 3074:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {


var isDetached = __webpack_require__(8827);

var $TypeError = TypeError;

module.exports = function (it) {
  if (isDetached(it)) throw new $TypeError('ArrayBuffer is detached');
  return it;
};


/***/ }),

/***/ 5347:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {


var globalThis = __webpack_require__(4127);
var uncurryThis = __webpack_require__(3027);
var uncurryThisAccessor = __webpack_require__(79);
var toIndex = __webpack_require__(4473);
var notDetached = __webpack_require__(3074);
var arrayBufferByteLength = __webpack_require__(9635);
var detachTransferable = __webpack_require__(4408);
var PROPER_STRUCTURED_CLONE_TRANSFER = __webpack_require__(5365);

var structuredClone = globalThis.structuredClone;
var ArrayBuffer = globalThis.ArrayBuffer;
var DataView = globalThis.DataView;
var max = Math.max;
var min = Math.min;
var ArrayBufferPrototype = ArrayBuffer.prototype;
var DataViewPrototype = DataView.prototype;
var slice = uncurryThis(ArrayBufferPrototype.slice);
var isResizable = uncurryThisAccessor(ArrayBufferPrototype, 'resizable', 'get');
var maxByteLength = uncurryThisAccessor(ArrayBufferPrototype, 'maxByteLength', 'get');
var getInt8 = uncurryThis(DataViewPrototype.getInt8);
var setInt8 = uncurryThis(DataViewPrototype.setInt8);

module.exports = (PROPER_STRUCTURED_CLONE_TRANSFER || detachTransferable) && function (arrayBuffer, newLength, preserveResizability) {
  var byteLength = arrayBufferByteLength(arrayBuffer);
  var newByteLength = newLength === undefined ? byteLength : toIndex(newLength);
  var fixedLength = !isResizable || !isResizable(arrayBuffer);
  var newBuffer;
  notDetached(arrayBuffer);
  if (PROPER_STRUCTURED_CLONE_TRANSFER) {
    arrayBuffer = structuredClone(arrayBuffer, { transfer: [arrayBuffer] });
    if (byteLength === newByteLength && (preserveResizability || fixedLength)) return arrayBuffer;
  }
  if (byteLength >= newByteLength && (!preserveResizability || fixedLength)) {
    newBuffer = slice(arrayBuffer, 0, newByteLength);
  } else {
    var options = preserveResizability && !fixedLength && maxByteLength
      ? { maxByteLength: max(newByteLength, maxByteLength(arrayBuffer)) }
      : undefined;
    newBuffer = new ArrayBuffer(newByteLength, options);
    var a = new DataView(arrayBuffer);
    var b = new DataView(newBuffer);
    var copyLength = min(newByteLength, byteLength);
    for (var i = 0; i < copyLength; i++) setInt8(b, i, getInt8(a, i));
  }
  if (!PROPER_STRUCTURED_CLONE_TRANSFER) detachTransferable(arrayBuffer);
  return newBuffer;
};


/***/ }),

/***/ 1977:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {


var NATIVE_ARRAY_BUFFER = __webpack_require__(9010);
var DESCRIPTORS = __webpack_require__(1175);
var globalThis = __webpack_require__(4127);
var isCallable = __webpack_require__(8794);
var isObject = __webpack_require__(8861);
var hasOwn = __webpack_require__(1324);
var classof = __webpack_require__(7964);
var tryToString = __webpack_require__(2272);
var createNonEnumerableProperty = __webpack_require__(298);
var defineBuiltIn = __webpack_require__(7255);
var defineBuiltInAccessor = __webpack_require__(707);
var isPrototypeOf = __webpack_require__(1688);
var getPrototypeOf = __webpack_require__(6068);
var setPrototypeOf = __webpack_require__(4792);
var wellKnownSymbol = __webpack_require__(7080);
var uid = __webpack_require__(3699);
var InternalStateModule = __webpack_require__(4852);

var enforceInternalState = InternalStateModule.enforce;
var getInternalState = InternalStateModule.get;
var Int8Array = globalThis.Int8Array;
var Int8ArrayPrototype = Int8Array && Int8Array.prototype;
var Uint8ClampedArray = globalThis.Uint8ClampedArray;
var Uint8ClampedArrayPrototype = Uint8ClampedArray && Uint8ClampedArray.prototype;
var TypedArray = Int8Array && getPrototypeOf(Int8Array);
var TypedArrayPrototype = Int8ArrayPrototype && getPrototypeOf(Int8ArrayPrototype);
var ObjectPrototype = Object.prototype;
var TypeError = globalThis.TypeError;

var TO_STRING_TAG = wellKnownSymbol('toStringTag');
var TYPED_ARRAY_TAG = uid('TYPED_ARRAY_TAG');
var TYPED_ARRAY_CONSTRUCTOR = 'TypedArrayConstructor';
// Fixing native typed arrays in Opera Presto crashes the browser, see #595
var NATIVE_ARRAY_BUFFER_VIEWS = NATIVE_ARRAY_BUFFER && !!setPrototypeOf && classof(globalThis.opera) !== 'Opera';
var TYPED_ARRAY_TAG_REQUIRED = false;
var NAME, Constructor, Prototype;

var TypedArrayConstructorsList = {
  Int8Array: 1,
  Uint8Array: 1,
  Uint8ClampedArray: 1,
  Int16Array: 2,
  Uint16Array: 2,
  Int32Array: 4,
  Uint32Array: 4,
  Float32Array: 4,
  Float64Array: 8
};

var BigIntArrayConstructorsList = {
  BigInt64Array: 8,
  BigUint64Array: 8
};

var isView = function isView(it) {
  if (!isObject(it)) return false;
  var klass = classof(it);
  return klass === 'DataView'
    || hasOwn(TypedArrayConstructorsList, klass)
    || hasOwn(BigIntArrayConstructorsList, klass);
};

var getTypedArrayConstructor = function (it) {
  var proto = getPrototypeOf(it);
  if (!isObject(proto)) return;
  var state = getInternalState(proto);
  return (state && hasOwn(state, TYPED_ARRAY_CONSTRUCTOR)) ? state[TYPED_ARRAY_CONSTRUCTOR] : getTypedArrayConstructor(proto);
};

var isTypedArray = function (it) {
  if (!isObject(it)) return false;
  var klass = classof(it);
  return hasOwn(TypedArrayConstructorsList, klass)
    || hasOwn(BigIntArrayConstructorsList, klass);
};

var aTypedArray = function (it) {
  if (isTypedArray(it)) return it;
  throw new TypeError('Target is not a typed array');
};

var aTypedArrayConstructor = function (C) {
  if (isCallable(C) && (!setPrototypeOf || isPrototypeOf(TypedArray, C))) return C;
  throw new TypeError(tryToString(C) + ' is not a typed array constructor');
};

var exportTypedArrayMethod = function (KEY, property, forced, options) {
  if (!DESCRIPTORS) return;
  if (forced) for (var ARRAY in TypedArrayConstructorsList) {
    var TypedArrayConstructor = globalThis[ARRAY];
    if (TypedArrayConstructor && hasOwn(TypedArrayConstructor.prototype, KEY)) try {
      delete TypedArrayConstructor.prototype[KEY];
    } catch (error) {
      // old WebKit bug - some methods are non-configurable
      try {
        TypedArrayConstructor.prototype[KEY] = property;
      } catch (error2) { /* empty */ }
    }
  }
  if (!TypedArrayPrototype[KEY] || forced) {
    defineBuiltIn(TypedArrayPrototype, KEY, forced ? property
      : NATIVE_ARRAY_BUFFER_VIEWS && Int8ArrayPrototype[KEY] || property, options);
  }
};

var exportTypedArrayStaticMethod = function (KEY, property, forced) {
  var ARRAY, TypedArrayConstructor;
  if (!DESCRIPTORS) return;
  if (setPrototypeOf) {
    if (forced) for (ARRAY in TypedArrayConstructorsList) {
      TypedArrayConstructor = globalThis[ARRAY];
      if (TypedArrayConstructor && hasOwn(TypedArrayConstructor, KEY)) try {
        delete TypedArrayConstructor[KEY];
      } catch (error) { /* empty */ }
    }
    if (!TypedArray[KEY] || forced) {
      // V8 ~ Chrome 49-50 `%TypedArray%` methods are non-writable non-configurable
      try {
        return defineBuiltIn(TypedArray, KEY, forced ? property : NATIVE_ARRAY_BUFFER_VIEWS && TypedArray[KEY] || property);
      } catch (error) { /* empty */ }
    } else return;
  }
  for (ARRAY in TypedArrayConstructorsList) {
    TypedArrayConstructor = globalThis[ARRAY];
    if (TypedArrayConstructor && (!TypedArrayConstructor[KEY] || forced)) {
      defineBuiltIn(TypedArrayConstructor, KEY, property);
    }
  }
};

for (NAME in TypedArrayConstructorsList) {
  Constructor = globalThis[NAME];
  Prototype = Constructor && Constructor.prototype;
  if (Prototype) enforceInternalState(Prototype)[TYPED_ARRAY_CONSTRUCTOR] = Constructor;
  else NATIVE_ARRAY_BUFFER_VIEWS = false;
}

for (NAME in BigIntArrayConstructorsList) {
  Constructor = globalThis[NAME];
  Prototype = Constructor && Constructor.prototype;
  if (Prototype) enforceInternalState(Prototype)[TYPED_ARRAY_CONSTRUCTOR] = Constructor;
}

// WebKit bug - typed arrays constructors prototype is Object.prototype
if (!NATIVE_ARRAY_BUFFER_VIEWS || !isCallable(TypedArray) || TypedArray === Function.prototype) {
  // eslint-disable-next-line no-shadow -- safe
  TypedArray = function TypedArray() {
    throw new TypeError('Incorrect invocation');
  };
  if (NATIVE_ARRAY_BUFFER_VIEWS) for (NAME in TypedArrayConstructorsList) {
    if (globalThis[NAME]) setPrototypeOf(globalThis[NAME], TypedArray);
  }
}

if (!NATIVE_ARRAY_BUFFER_VIEWS || !TypedArrayPrototype || TypedArrayPrototype === ObjectPrototype) {
  TypedArrayPrototype = TypedArray.prototype;
  if (NATIVE_ARRAY_BUFFER_VIEWS) for (NAME in TypedArrayConstructorsList) {
    if (globalThis[NAME]) setPrototypeOf(globalThis[NAME].prototype, TypedArrayPrototype);
  }
}

// WebKit bug - one more object in Uint8ClampedArray prototype chain
if (NATIVE_ARRAY_BUFFER_VIEWS && getPrototypeOf(Uint8ClampedArrayPrototype) !== TypedArrayPrototype) {
  setPrototypeOf(Uint8ClampedArrayPrototype, TypedArrayPrototype);
}

if (DESCRIPTORS && !hasOwn(TypedArrayPrototype, TO_STRING_TAG)) {
  TYPED_ARRAY_TAG_REQUIRED = true;
  defineBuiltInAccessor(TypedArrayPrototype, TO_STRING_TAG, {
    configurable: true,
    get: function () {
      return isObject(this) ? this[TYPED_ARRAY_TAG] : undefined;
    }
  });
  for (NAME in TypedArrayConstructorsList) if (globalThis[NAME]) {
    createNonEnumerableProperty(globalThis[NAME].prototype, TYPED_ARRAY_TAG, NAME);
  }
}

module.exports = {
  NATIVE_ARRAY_BUFFER_VIEWS: NATIVE_ARRAY_BUFFER_VIEWS,
  TYPED_ARRAY_TAG: TYPED_ARRAY_TAG_REQUIRED && TYPED_ARRAY_TAG,
  aTypedArray: aTypedArray,
  aTypedArrayConstructor: aTypedArrayConstructor,
  exportTypedArrayMethod: exportTypedArrayMethod,
  exportTypedArrayStaticMethod: exportTypedArrayStaticMethod,
  getTypedArrayConstructor: getTypedArrayConstructor,
  isView: isView,
  isTypedArray: isTypedArray,
  TypedArray: TypedArray,
  TypedArrayPrototype: TypedArrayPrototype
};


/***/ }),

/***/ 4063:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {


var globalThis = __webpack_require__(4127);
var uncurryThis = __webpack_require__(3027);
var DESCRIPTORS = __webpack_require__(1175);
var NATIVE_ARRAY_BUFFER = __webpack_require__(9010);
var FunctionName = __webpack_require__(6993);
var createNonEnumerableProperty = __webpack_require__(298);
var defineBuiltInAccessor = __webpack_require__(707);
var defineBuiltIns = __webpack_require__(8498);
var fails = __webpack_require__(4892);
var anInstance = __webpack_require__(1468);
var toIntegerOrInfinity = __webpack_require__(1402);
var toIndex = __webpack_require__(4473);
var fround = __webpack_require__(5678);
var IEEE754 = __webpack_require__(7077);
var getPrototypeOf = __webpack_require__(6068);
var setPrototypeOf = __webpack_require__(4792);
var arrayFill = __webpack_require__(632);
var arraySlice = __webpack_require__(803);
var inheritIfRequired = __webpack_require__(6388);
var copyConstructorProperties = __webpack_require__(2491);
var setToStringTag = __webpack_require__(4360);
var InternalStateModule = __webpack_require__(4852);

var PROPER_FUNCTION_NAME = FunctionName.PROPER;
var CONFIGURABLE_FUNCTION_NAME = FunctionName.CONFIGURABLE;
var ARRAY_BUFFER = 'ArrayBuffer';
var DATA_VIEW = 'DataView';
var PROTOTYPE = 'prototype';
var WRONG_LENGTH = 'Wrong length';
var WRONG_INDEX = 'Wrong index';
var getInternalArrayBufferState = InternalStateModule.getterFor(ARRAY_BUFFER);
var getInternalDataViewState = InternalStateModule.getterFor(DATA_VIEW);
var setInternalState = InternalStateModule.set;
var NativeArrayBuffer = globalThis[ARRAY_BUFFER];
var $ArrayBuffer = NativeArrayBuffer;
var ArrayBufferPrototype = $ArrayBuffer && $ArrayBuffer[PROTOTYPE];
var $DataView = globalThis[DATA_VIEW];
var DataViewPrototype = $DataView && $DataView[PROTOTYPE];
var ObjectPrototype = Object.prototype;
var Array = globalThis.Array;
var RangeError = globalThis.RangeError;
var fill = uncurryThis(arrayFill);
var reverse = uncurryThis([].reverse);

var packIEEE754 = IEEE754.pack;
var unpackIEEE754 = IEEE754.unpack;

var packInt8 = function (number) {
  return [number & 0xFF];
};

var packInt16 = function (number) {
  return [number & 0xFF, number >> 8 & 0xFF];
};

var packInt32 = function (number) {
  return [number & 0xFF, number >> 8 & 0xFF, number >> 16 & 0xFF, number >> 24 & 0xFF];
};

var unpackInt32 = function (buffer) {
  return buffer[3] << 24 | buffer[2] << 16 | buffer[1] << 8 | buffer[0];
};

var packFloat32 = function (number) {
  return packIEEE754(fround(number), 23, 4);
};

var packFloat64 = function (number) {
  return packIEEE754(number, 52, 8);
};

var addGetter = function (Constructor, key, getInternalState) {
  defineBuiltInAccessor(Constructor[PROTOTYPE], key, {
    configurable: true,
    get: function () {
      return getInternalState(this)[key];
    }
  });
};

var get = function (view, count, index, isLittleEndian) {
  var store = getInternalDataViewState(view);
  var intIndex = toIndex(index);
  var boolIsLittleEndian = !!isLittleEndian;
  if (intIndex + count > store.byteLength) throw new RangeError(WRONG_INDEX);
  var bytes = store.bytes;
  var start = intIndex + store.byteOffset;
  var pack = arraySlice(bytes, start, start + count);
  return boolIsLittleEndian ? pack : reverse(pack);
};

var set = function (view, count, index, conversion, value, isLittleEndian) {
  var store = getInternalDataViewState(view);
  var intIndex = toIndex(index);
  var pack = conversion(+value);
  var boolIsLittleEndian = !!isLittleEndian;
  if (intIndex + count > store.byteLength) throw new RangeError(WRONG_INDEX);
  var bytes = store.bytes;
  var start = intIndex + store.byteOffset;
  for (var i = 0; i < count; i++) bytes[start + i] = pack[boolIsLittleEndian ? i : count - i - 1];
};

if (!NATIVE_ARRAY_BUFFER) {
  $ArrayBuffer = function ArrayBuffer(length) {
    anInstance(this, ArrayBufferPrototype);
    var byteLength = toIndex(length);
    setInternalState(this, {
      type: ARRAY_BUFFER,
      bytes: fill(Array(byteLength), 0),
      byteLength: byteLength
    });
    if (!DESCRIPTORS) {
      this.byteLength = byteLength;
      this.detached = false;
    }
  };

  ArrayBufferPrototype = $ArrayBuffer[PROTOTYPE];

  $DataView = function DataView(buffer, byteOffset, byteLength) {
    anInstance(this, DataViewPrototype);
    anInstance(buffer, ArrayBufferPrototype);
    var bufferState = getInternalArrayBufferState(buffer);
    var bufferLength = bufferState.byteLength;
    var offset = toIntegerOrInfinity(byteOffset);
    if (offset < 0 || offset > bufferLength) throw new RangeError('Wrong offset');
    byteLength = byteLength === undefined ? bufferLength - offset : toIndex(byteLength);
    if (offset + byteLength > bufferLength) throw new RangeError(WRONG_LENGTH);
    setInternalState(this, {
      type: DATA_VIEW,
      buffer: buffer,
      byteLength: byteLength,
      byteOffset: offset,
      bytes: bufferState.bytes
    });
    if (!DESCRIPTORS) {
      this.buffer = buffer;
      this.byteLength = byteLength;
      this.byteOffset = offset;
    }
  };

  DataViewPrototype = $DataView[PROTOTYPE];

  if (DESCRIPTORS) {
    addGetter($ArrayBuffer, 'byteLength', getInternalArrayBufferState);
    addGetter($DataView, 'buffer', getInternalDataViewState);
    addGetter($DataView, 'byteLength', getInternalDataViewState);
    addGetter($DataView, 'byteOffset', getInternalDataViewState);
  }

  defineBuiltIns(DataViewPrototype, {
    getInt8: function getInt8(byteOffset) {
      return get(this, 1, byteOffset)[0] << 24 >> 24;
    },
    getUint8: function getUint8(byteOffset) {
      return get(this, 1, byteOffset)[0];
    },
    getInt16: function getInt16(byteOffset /* , littleEndian */) {
      var bytes = get(this, 2, byteOffset, arguments.length > 1 ? arguments[1] : false);
      return (bytes[1] << 8 | bytes[0]) << 16 >> 16;
    },
    getUint16: function getUint16(byteOffset /* , littleEndian */) {
      var bytes = get(this, 2, byteOffset, arguments.length > 1 ? arguments[1] : false);
      return bytes[1] << 8 | bytes[0];
    },
    getInt32: function getInt32(byteOffset /* , littleEndian */) {
      return unpackInt32(get(this, 4, byteOffset, arguments.length > 1 ? arguments[1] : false));
    },
    getUint32: function getUint32(byteOffset /* , littleEndian */) {
      return unpackInt32(get(this, 4, byteOffset, arguments.length > 1 ? arguments[1] : false)) >>> 0;
    },
    getFloat32: function getFloat32(byteOffset /* , littleEndian */) {
      return unpackIEEE754(get(this, 4, byteOffset, arguments.length > 1 ? arguments[1] : false), 23);
    },
    getFloat64: function getFloat64(byteOffset /* , littleEndian */) {
      return unpackIEEE754(get(this, 8, byteOffset, arguments.length > 1 ? arguments[1] : false), 52);
    },
    setInt8: function setInt8(byteOffset, value) {
      set(this, 1, byteOffset, packInt8, value);
    },
    setUint8: function setUint8(byteOffset, value) {
      set(this, 1, byteOffset, packInt8, value);
    },
    setInt16: function setInt16(byteOffset, value /* , littleEndian */) {
      set(this, 2, byteOffset, packInt16, value, arguments.length > 2 ? arguments[2] : false);
    },
    setUint16: function setUint16(byteOffset, value /* , littleEndian */) {
      set(this, 2, byteOffset, packInt16, value, arguments.length > 2 ? arguments[2] : false);
    },
    setInt32: function setInt32(byteOffset, value /* , littleEndian */) {
      set(this, 4, byteOffset, packInt32, value, arguments.length > 2 ? arguments[2] : false);
    },
    setUint32: function setUint32(byteOffset, value /* , littleEndian */) {
      set(this, 4, byteOffset, packInt32, value, arguments.length > 2 ? arguments[2] : false);
    },
    setFloat32: function setFloat32(byteOffset, value /* , littleEndian */) {
      set(this, 4, byteOffset, packFloat32, value, arguments.length > 2 ? arguments[2] : false);
    },
    setFloat64: function setFloat64(byteOffset, value /* , littleEndian */) {
      set(this, 8, byteOffset, packFloat64, value, arguments.length > 2 ? arguments[2] : false);
    }
  });
} else {
  var INCORRECT_ARRAY_BUFFER_NAME = PROPER_FUNCTION_NAME && NativeArrayBuffer.name !== ARRAY_BUFFER;
  /* eslint-disable no-new, sonarjs/inconsistent-function-call -- required for testing */
  if (!fails(function () {
    NativeArrayBuffer(1);
  }) || !fails(function () {
    new NativeArrayBuffer(-1);
  }) || fails(function () {
    new NativeArrayBuffer();
    new NativeArrayBuffer(1.5);
    new NativeArrayBuffer(NaN);
    return NativeArrayBuffer.length !== 1 || INCORRECT_ARRAY_BUFFER_NAME && !CONFIGURABLE_FUNCTION_NAME;
  })) {
    /* eslint-enable no-new, sonarjs/inconsistent-function-call -- required for testing */
    $ArrayBuffer = function ArrayBuffer(length) {
      anInstance(this, ArrayBufferPrototype);
      return inheritIfRequired(new NativeArrayBuffer(toIndex(length)), this, $ArrayBuffer);
    };

    $ArrayBuffer[PROTOTYPE] = ArrayBufferPrototype;

    ArrayBufferPrototype.constructor = $ArrayBuffer;

    copyConstructorProperties($ArrayBuffer, NativeArrayBuffer);
  } else if (INCORRECT_ARRAY_BUFFER_NAME && CONFIGURABLE_FUNCTION_NAME) {
    createNonEnumerableProperty(NativeArrayBuffer, 'name', ARRAY_BUFFER);
  }

  // WebKit bug - the same parent prototype for typed arrays and data view
  if (setPrototypeOf && getPrototypeOf(DataViewPrototype) !== ObjectPrototype) {
    setPrototypeOf(DataViewPrototype, ObjectPrototype);
  }

  // iOS Safari 7.x bug
  var testView = new $DataView(new $ArrayBuffer(2));
  var $setInt8 = uncurryThis(DataViewPrototype.setInt8);
  testView.setInt8(0, 2147483648);
  testView.setInt8(1, 2147483649);
  if (testView.getInt8(0) || !testView.getInt8(1)) defineBuiltIns(DataViewPrototype, {
    setInt8: function setInt8(byteOffset, value) {
      $setInt8(this, byteOffset, value << 24 >> 24);
    },
    setUint8: function setUint8(byteOffset, value) {
      $setInt8(this, byteOffset, value << 24 >> 24);
    }
  }, { unsafe: true });
}

setToStringTag($ArrayBuffer, ARRAY_BUFFER);
setToStringTag($DataView, DATA_VIEW);

module.exports = {
  ArrayBuffer: $ArrayBuffer,
  DataView: $DataView
};


/***/ }),

/***/ 632:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {


var toObject = __webpack_require__(6674);
var toAbsoluteIndex = __webpack_require__(8977);
var lengthOfArrayLike = __webpack_require__(5807);

// `Array.prototype.fill` method implementation
// https://tc39.es/ecma262/#sec-array.prototype.fill
// eslint-disable-next-line es/no-array-prototype-fill -- fallback included
module.exports = [].fill || function fill(value /* , start = 0, end = @length */) {
  var O = toObject(this);
  var length = lengthOfArrayLike(O);
  var argumentsLength = arguments.length;
  var index = toAbsoluteIndex(argumentsLength > 1 ? arguments[1] : undefined, length);
  var end = argumentsLength > 2 ? arguments[2] : undefined;
  var endPos = end === undefined ? length : toAbsoluteIndex(end, length);
  while (endPos > index) O[index++] = value;
  return O;
};


/***/ }),

/***/ 293:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {


var lengthOfArrayLike = __webpack_require__(5807);

module.exports = function (Constructor, list, $length) {
  var index = 0;
  var length = arguments.length > 2 ? $length : lengthOfArrayLike(list);
  var result = new Constructor(length);
  while (length > index) result[index] = list[index++];
  return result;
};


/***/ }),

/***/ 6205:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {


var bind = __webpack_require__(1079);
var call = __webpack_require__(5418);
var toObject = __webpack_require__(6674);
var callWithSafeIterationClosing = __webpack_require__(3666);
var isArrayIteratorMethod = __webpack_require__(4916);
var isConstructor = __webpack_require__(7036);
var lengthOfArrayLike = __webpack_require__(5807);
var createProperty = __webpack_require__(4119);
var setArrayLength = __webpack_require__(9786);
var getIterator = __webpack_require__(2248);
var getIteratorMethod = __webpack_require__(4188);
var iteratorClose = __webpack_require__(4090);
var doesNotExceedSafeInteger = __webpack_require__(2504);

var $Array = Array;

// `Array.from` method implementation
// https://tc39.es/ecma262/#sec-array.from
module.exports = function from(arrayLike /* , mapfn = undefined, thisArg = undefined */) {
  var IS_CONSTRUCTOR = isConstructor(this);
  var argumentsLength = arguments.length;
  var mapfn = argumentsLength > 1 ? arguments[1] : undefined;
  var mapping = mapfn !== undefined;
  if (mapping) mapfn = bind(mapfn, argumentsLength > 2 ? arguments[2] : undefined);
  var O = toObject(arrayLike);
  var iteratorMethod = getIteratorMethod(O);
  var index = 0;
  var length, result, step, iterator, next, value;
  // if the target is not iterable or it's an array with the default iterator - use a simple case
  if (iteratorMethod && !(this === $Array && isArrayIteratorMethod(iteratorMethod))) {
    result = IS_CONSTRUCTOR ? new this() : [];
    iterator = getIterator(O, iteratorMethod);
    next = iterator.next;
    for (;!(step = call(next, iterator)).done; index++) {
      try {
        doesNotExceedSafeInteger(index);
      } catch (error) {
        iteratorClose(iterator, 'throw', error);
      }
      value = mapping ? callWithSafeIterationClosing(iterator, mapfn, [step.value, index], true) : step.value;
      try {
        createProperty(result, index, value);
      } catch (error) {
        iteratorClose(iterator, 'throw', error);
      }
    }
  } else {
    length = lengthOfArrayLike(O);
    result = IS_CONSTRUCTOR ? new this(length) : $Array(length);
    for (;length > index; index++) {
      value = mapping ? mapfn(O[index], index) : O[index];
      createProperty(result, index, value);
    }
  }
  setArrayLength(result, index);
  return result;
};


/***/ }),

/***/ 5460:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {


var toIndexedObject = __webpack_require__(9630);
var toAbsoluteIndex = __webpack_require__(8977);
var lengthOfArrayLike = __webpack_require__(5807);

// `Array.prototype.{ indexOf, includes }` methods implementation
var createMethod = function (IS_INCLUDES) {
  return function ($this, el, fromIndex) {
    var O = toIndexedObject($this);
    var length = lengthOfArrayLike(O);
    if (length === 0) return !IS_INCLUDES && -1;
    var index = toAbsoluteIndex(fromIndex, length);
    var value;
    // Array#includes uses SameValueZero equality algorithm
    // eslint-disable-next-line no-self-compare -- NaN check
    if (IS_INCLUDES && el !== el) while (length > index) {
      value = O[index++];
      // eslint-disable-next-line no-self-compare -- NaN check
      if (value !== value) return true;
    // Array#indexOf ignores holes, Array#includes - not
    } else for (;length > index; index++) {
      if ((IS_INCLUDES || index in O) && O[index] === el) return IS_INCLUDES || index || 0;
    } return !IS_INCLUDES && -1;
  };
};

module.exports = {
  // `Array.prototype.includes` method
  // https://tc39.es/ecma262/#sec-array.prototype.includes
  m: createMethod(true),
  // `Array.prototype.indexOf` method
  // https://tc39.es/ecma262/#sec-array.prototype.indexof
  q: createMethod(false)
};


/***/ }),

/***/ 8454:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {


var bind = __webpack_require__(1079);
var IndexedObject = __webpack_require__(2466);
var toObject = __webpack_require__(6674);
var lengthOfArrayLike = __webpack_require__(5807);
var arraySpeciesCreate = __webpack_require__(2200);
var createProperty = __webpack_require__(4119);

// `Array.prototype.{ forEach, map, filter, some, every, find, findIndex, filterReject }` methods implementation
var createMethod = function (TYPE) {
  var IS_MAP = TYPE === 1;
  var IS_FILTER = TYPE === 2;
  var IS_SOME = TYPE === 3;
  var IS_EVERY = TYPE === 4;
  var IS_FIND_INDEX = TYPE === 6;
  var IS_FILTER_REJECT = TYPE === 7;
  var NO_HOLES = TYPE === 5 || IS_FIND_INDEX;
  return function ($this, callbackfn, that) {
    var O = toObject($this);
    var self = IndexedObject(O);
    var length = lengthOfArrayLike(self);
    var boundFunction = bind(callbackfn, that);
    var index = 0;
    var resIndex = 0;
    var target = IS_MAP ? arraySpeciesCreate($this, length) : IS_FILTER || IS_FILTER_REJECT ? arraySpeciesCreate($this, 0) : undefined;
    var value, result;
    for (;length > index; index++) if (NO_HOLES || index in self) {
      value = self[index];
      result = boundFunction(value, index, O);
      if (TYPE) {
        if (IS_MAP) createProperty(target, index, result);    // map
        else if (result) switch (TYPE) {
          case 3: return true;                                // some
          case 5: return value;                               // find
          case 6: return index;                               // findIndex
          case 2: createProperty(target, resIndex++, value);  // filter
        } else switch (TYPE) {
          case 4: return false;                               // every
          case 7: createProperty(target, resIndex++, value);  // filterReject
        }
      }
    }
    return IS_FIND_INDEX ? -1 : IS_SOME || IS_EVERY ? IS_EVERY : target;
  };
};

module.exports = {
  // `Array.prototype.forEach` method
  // https://tc39.es/ecma262/#sec-array.prototype.foreach
  forEach: createMethod(0),
  // `Array.prototype.map` method
  // https://tc39.es/ecma262/#sec-array.prototype.map
  map: createMethod(1),
  // `Array.prototype.filter` method
  // https://tc39.es/ecma262/#sec-array.prototype.filter
  filter: createMethod(2),
  // `Array.prototype.some` method
  // https://tc39.es/ecma262/#sec-array.prototype.some
  some: createMethod(3),
  // `Array.prototype.every` method
  // https://tc39.es/ecma262/#sec-array.prototype.every
  every: createMethod(4),
  // `Array.prototype.find` method
  // https://tc39.es/ecma262/#sec-array.prototype.find
  find: createMethod(5),
  // `Array.prototype.findIndex` method
  // https://tc39.es/ecma262/#sec-array.prototype.findIndex
  findIndex: createMethod(6),
  // `Array.prototype.filterReject` method
  // https://github.com/tc39/proposal-array-filtering
  filterReject: createMethod(7)
};


/***/ }),

/***/ 6839:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {


var fails = __webpack_require__(4892);

module.exports = function (METHOD_NAME, argument) {
  var method = [][METHOD_NAME];
  return !!method && fails(function () {
    // eslint-disable-next-line no-useless-call -- required for testing
    method.call(null, argument || function () { return 1; }, 1);
  });
};


/***/ }),

/***/ 9786:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {


var DESCRIPTORS = __webpack_require__(1175);
var isArray = __webpack_require__(2001);

var $TypeError = TypeError;
// eslint-disable-next-line es/no-object-getownpropertydescriptor -- safe
var getOwnPropertyDescriptor = Object.getOwnPropertyDescriptor;

// Safari < 13 does not throw an error in this case
var SILENT_ON_NON_WRITABLE_LENGTH_SET = DESCRIPTORS && !function () {
  // makes no sense without proper strict mode support
  if (this !== undefined) return true;
  try {
    // eslint-disable-next-line es/no-object-defineproperty -- safe
    Object.defineProperty([], 'length', { writable: false }).length = 1;
  } catch (error) {
    return error instanceof TypeError;
  }
}();

module.exports = SILENT_ON_NON_WRITABLE_LENGTH_SET ? function (O, length) {
  if (isArray(O) && !getOwnPropertyDescriptor(O, 'length').writable) {
    throw new $TypeError('Cannot set read only .length');
  } return O.length = length;
} : function (O, length) {
  return O.length = length;
};


/***/ }),

/***/ 803:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {


var uncurryThis = __webpack_require__(3027);

module.exports = uncurryThis([].slice);


/***/ }),

/***/ 4330:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {


var isArray = __webpack_require__(2001);
var isConstructor = __webpack_require__(7036);
var isObject = __webpack_require__(8861);
var wellKnownSymbol = __webpack_require__(7080);

var SPECIES = wellKnownSymbol('species');
var $Array = Array;

// a part of `ArraySpeciesCreate` abstract operation
// https://tc39.es/ecma262/#sec-arrayspeciescreate
module.exports = function (originalArray) {
  var C;
  if (isArray(originalArray)) {
    C = originalArray.constructor;
    // cross-realm fallback
    if (isConstructor(C) && (C === $Array || isArray(C.prototype))) C = undefined;
    else if (isObject(C)) {
      C = C[SPECIES];
      if (C === null) C = undefined;
    }
  } return C === undefined ? $Array : C;
};


/***/ }),

/***/ 2200:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {


var arraySpeciesConstructor = __webpack_require__(4330);

// `ArraySpeciesCreate` abstract operation
// https://tc39.es/ecma262/#sec-arrayspeciescreate
module.exports = function (originalArray, length) {
  return new (arraySpeciesConstructor(originalArray))(length === 0 ? 0 : length);
};


/***/ }),

/***/ 522:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {


var aCallable = __webpack_require__(6927);
var isNullOrUndefined = __webpack_require__(3600);
var lengthOfArrayLike = __webpack_require__(5807);
var toObject = __webpack_require__(6674);
var createProperty = __webpack_require__(4119);
var MapHelpers = __webpack_require__(3799);
var iterate = __webpack_require__(3212);

var Map = MapHelpers.Map;
var mapHas = MapHelpers.has;
var mapSet = MapHelpers.set;

// `Array.prototype.uniqueBy` method
// https://github.com/tc39/proposal-array-unique
module.exports = function uniqueBy(resolver) {
  var that = toObject(this);
  var length = lengthOfArrayLike(that);
  var result = [];
  var map = new Map();
  var resolverFunction = !isNullOrUndefined(resolver) ? aCallable(resolver) : function (value) {
    return value;
  };
  var index, item, key;
  for (index = 0; index < length; index++) {
    item = that[index];
    key = resolverFunction(item);
    if (!mapHas(map, key)) mapSet(map, key, item);
  }
  index = 0;
  iterate(map, function (value) {
    createProperty(result, index++, value);
  });
  return result;
};


/***/ }),

/***/ 469:
/***/ ((module) => {


var commonAlphabet = 'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789';
var base64Alphabet = commonAlphabet + '+/';
var base64UrlAlphabet = commonAlphabet + '-_';

var inverse = function (characters) {
  // TODO: use `Object.create(null)` in `core-js@4`
  var result = {};
  var index = 0;
  for (; index < 64; index++) result[characters.charAt(index)] = index;
  return result;
};

module.exports = {
  i2c: base64Alphabet,
  c2i: inverse(base64Alphabet),
  i2cUrl: base64UrlAlphabet,
  c2iUrl: inverse(base64UrlAlphabet)
};


/***/ }),

/***/ 3666:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {


var anObject = __webpack_require__(4464);
var iteratorClose = __webpack_require__(4090);

// call something on iterator step with safe closing on error
module.exports = function (iterator, fn, value, ENTRIES) {
  try {
    return ENTRIES ? fn(anObject(value)[0], value[1]) : fn(value);
  } catch (error) {
    iteratorClose(iterator, 'throw', error);
  }
};


/***/ }),

/***/ 153:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {


var wellKnownSymbol = __webpack_require__(7080);

var ITERATOR = wellKnownSymbol('iterator');
var SAFE_CLOSING = false;

try {
  var called = 0;
  var iteratorWithReturn = {
    next: function () {
      return { done: !!called++ };
    },
    'return': function () {
      SAFE_CLOSING = true;
    }
  };
  // eslint-disable-next-line unicorn/no-immediate-mutation -- ES3 syntax limitation
  iteratorWithReturn[ITERATOR] = function () {
    return this;
  };
  // eslint-disable-next-line es/no-array-from, no-throw-literal -- required for testing
  Array.from(iteratorWithReturn, function () { throw 2; });
} catch (error) { /* empty */ }

module.exports = function (exec, SKIP_CLOSING) {
  try {
    if (!SKIP_CLOSING && !SAFE_CLOSING) return false;
  } catch (error) { return false; } // workaround of old WebKit + `eval` bug
  var ITERATION_SUPPORT = false;
  try {
    var object = {};
    // eslint-disable-next-line unicorn/no-immediate-mutation -- ES3 syntax limitation
    object[ITERATOR] = function () {
      return {
        next: function () {
          return { done: ITERATION_SUPPORT = true };
        }
      };
    };
    exec(object);
  } catch (error) { /* empty */ }
  return ITERATION_SUPPORT;
};


/***/ }),

/***/ 2911:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {


var uncurryThis = __webpack_require__(3027);

var toString = uncurryThis({}.toString);
var stringSlice = uncurryThis(''.slice);

module.exports = function (it) {
  return stringSlice(toString(it), 8, -1);
};


/***/ }),

/***/ 7964:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {


var TO_STRING_TAG_SUPPORT = __webpack_require__(7167);
var isCallable = __webpack_require__(8794);
var classofRaw = __webpack_require__(2911);
var wellKnownSymbol = __webpack_require__(7080);

var TO_STRING_TAG = wellKnownSymbol('toStringTag');
var $Object = Object;

// ES3 wrong here
var CORRECT_ARGUMENTS = classofRaw(function () { return arguments; }()) === 'Arguments';

// fallback for IE11 Script Access Denied error
var tryGet = function (it, key) {
  try {
    return it[key];
  } catch (error) { /* empty */ }
};

// getting tag from ES6+ `Object.prototype.toString`
module.exports = TO_STRING_TAG_SUPPORT ? classofRaw : function (it) {
  var O, tag, result;
  return it === undefined ? 'Undefined' : it === null ? 'Null'
    // @@toStringTag case
    : typeof (tag = tryGet(O = $Object(it), TO_STRING_TAG)) == 'string' ? tag
    // builtinTag case
    : CORRECT_ARGUMENTS ? classofRaw(O)
    // ES3 arguments fallback
    : (result = classofRaw(O)) === 'Object' && isCallable(O.callee) ? 'Arguments' : result;
};


/***/ }),

/***/ 1225:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {


var create = __webpack_require__(475);
var defineBuiltInAccessor = __webpack_require__(707);
var defineBuiltIns = __webpack_require__(8498);
var bind = __webpack_require__(1079);
var anInstance = __webpack_require__(1468);
var isNullOrUndefined = __webpack_require__(3600);
var iterate = __webpack_require__(2711);
var defineIterator = __webpack_require__(3943);
var createIterResultObject = __webpack_require__(9566);
var setSpecies = __webpack_require__(3902);
var DESCRIPTORS = __webpack_require__(1175);
var fastKey = (__webpack_require__(268).fastKey);
var InternalStateModule = __webpack_require__(4852);

var setInternalState = InternalStateModule.set;
var internalStateGetterFor = InternalStateModule.getterFor;

module.exports = {
  getConstructor: function (wrapper, CONSTRUCTOR_NAME, IS_MAP, ADDER) {
    var Constructor = wrapper(function (that, iterable) {
      anInstance(that, Prototype);
      setInternalState(that, {
        type: CONSTRUCTOR_NAME,
        index: create(null),
        first: null,
        last: null,
        size: 0
      });
      if (!DESCRIPTORS) that.size = 0;
      if (!isNullOrUndefined(iterable)) iterate(iterable, that[ADDER], { that: that, AS_ENTRIES: IS_MAP });
    });

    var Prototype = Constructor.prototype;

    var getInternalState = internalStateGetterFor(CONSTRUCTOR_NAME);

    var define = function (that, key, value) {
      var state = getInternalState(that);
      var entry = getEntry(that, key);
      var previous, index;
      // change existing entry
      if (entry) {
        entry.value = value;
      // create new entry
      } else {
        state.last = entry = {
          index: index = fastKey(key, true),
          key: key,
          value: value,
          previous: previous = state.last,
          next: null,
          removed: false
        };
        if (!state.first) state.first = entry;
        if (previous) previous.next = entry;
        if (DESCRIPTORS) state.size++;
        else that.size++;
        // add to index
        if (index !== 'F') state.index[index] = entry;
      } return that;
    };

    var getEntry = function (that, key) {
      var state = getInternalState(that);
      // fast case
      var index = fastKey(key);
      var entry;
      if (index !== 'F') return state.index[index];
      // frozen object case
      for (entry = state.first; entry; entry = entry.next) {
        if (entry.key === key) return entry;
      }
    };

    defineBuiltIns(Prototype, {
      // `{ Map, Set }.prototype.clear()` methods
      // https://tc39.es/ecma262/#sec-map.prototype.clear
      // https://tc39.es/ecma262/#sec-set.prototype.clear
      clear: function clear() {
        var that = this;
        var state = getInternalState(that);
        var entry = state.first;
        while (entry) {
          entry.removed = true;
          if (entry.previous) entry.previous = entry.previous.next = null;
          entry = entry.next;
        }
        state.first = state.last = null;
        state.index = create(null);
        if (DESCRIPTORS) state.size = 0;
        else that.size = 0;
      },
      // `{ Map, Set }.prototype.delete(key)` methods
      // https://tc39.es/ecma262/#sec-map.prototype.delete
      // https://tc39.es/ecma262/#sec-set.prototype.delete
      'delete': function (key) {
        var that = this;
        var state = getInternalState(that);
        var entry = getEntry(that, key);
        if (entry) {
          var next = entry.next;
          var prev = entry.previous;
          delete state.index[entry.index];
          entry.removed = true;
          if (prev) prev.next = next;
          if (next) next.previous = prev;
          if (state.first === entry) state.first = next;
          if (state.last === entry) state.last = prev;
          if (DESCRIPTORS) state.size--;
          else that.size--;
        } return !!entry;
      },
      // `{ Map, Set }.prototype.forEach(callbackfn, thisArg = undefined)` methods
      // https://tc39.es/ecma262/#sec-map.prototype.foreach
      // https://tc39.es/ecma262/#sec-set.prototype.foreach
      forEach: function forEach(callbackfn /* , that = undefined */) {
        var state = getInternalState(this);
        var boundFunction = bind(callbackfn, arguments.length > 1 ? arguments[1] : undefined);
        var entry;
        while (entry = entry ? entry.next : state.first) {
          boundFunction(entry.value, entry.key, this);
          // revert to the last existing entry
          while (entry && entry.removed) entry = entry.previous;
        }
      },
      // `{ Map, Set}.prototype.has(key)` methods
      // https://tc39.es/ecma262/#sec-map.prototype.has
      // https://tc39.es/ecma262/#sec-set.prototype.has
      has: function has(key) {
        return !!getEntry(this, key);
      }
    });

    defineBuiltIns(Prototype, IS_MAP ? {
      // `Map.prototype.get(key)` method
      // https://tc39.es/ecma262/#sec-map.prototype.get
      get: function get(key) {
        var entry = getEntry(this, key);
        return entry && entry.value;
      },
      // `Map.prototype.set(key, value)` method
      // https://tc39.es/ecma262/#sec-map.prototype.set
      set: function set(key, value) {
        return define(this, key === 0 ? 0 : key, value);
      }
    } : {
      // `Set.prototype.add(value)` method
      // https://tc39.es/ecma262/#sec-set.prototype.add
      add: function add(value) {
        return define(this, value = value === 0 ? 0 : value, value);
      }
    });
    if (DESCRIPTORS) defineBuiltInAccessor(Prototype, 'size', {
      configurable: true,
      get: function () {
        return getInternalState(this).size;
      }
    });
    return Constructor;
  },
  setStrong: function (Constructor, CONSTRUCTOR_NAME, IS_MAP) {
    var ITERATOR_NAME = CONSTRUCTOR_NAME + ' Iterator';
    var getInternalCollectionState = internalStateGetterFor(CONSTRUCTOR_NAME);
    var getInternalIteratorState = internalStateGetterFor(ITERATOR_NAME);
    // `{ Map, Set }.prototype.{ keys, values, entries, @@iterator }()` methods
    // https://tc39.es/ecma262/#sec-map.prototype.entries
    // https://tc39.es/ecma262/#sec-map.prototype.keys
    // https://tc39.es/ecma262/#sec-map.prototype.values
    // https://tc39.es/ecma262/#sec-map.prototype-@@iterator
    // https://tc39.es/ecma262/#sec-set.prototype.entries
    // https://tc39.es/ecma262/#sec-set.prototype.keys
    // https://tc39.es/ecma262/#sec-set.prototype.values
    // https://tc39.es/ecma262/#sec-set.prototype-@@iterator
    defineIterator(Constructor, CONSTRUCTOR_NAME, function (iterated, kind) {
      setInternalState(this, {
        type: ITERATOR_NAME,
        target: iterated,
        state: getInternalCollectionState(iterated),
        kind: kind,
        last: null
      });
    }, function () {
      var state = getInternalIteratorState(this);
      var kind = state.kind;
      var entry = state.last;
      // revert to the last existing entry
      while (entry && entry.removed) entry = entry.previous;
      // get next entry
      if (!state.target || !(state.last = entry = entry ? entry.next : state.state.first)) {
        // or finish the iteration
        state.target = null;
        return createIterResultObject(undefined, true);
      }
      // return step by kind
      if (kind === 'keys') return createIterResultObject(entry.key, false);
      if (kind === 'values') return createIterResultObject(entry.value, false);
      return createIterResultObject([entry.key, entry.value], false);
    }, IS_MAP ? 'entries' : 'values', !IS_MAP, true);

    // `{ Map, Set }.prototype[@@species]` accessors
    // https://tc39.es/ecma262/#sec-get-map-@@species
    // https://tc39.es/ecma262/#sec-get-set-@@species
    setSpecies(CONSTRUCTOR_NAME);
  }
};


/***/ }),

/***/ 6190:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {


var uncurryThis = __webpack_require__(3027);
var defineBuiltIns = __webpack_require__(8498);
var getWeakData = (__webpack_require__(268).getWeakData);
var anInstance = __webpack_require__(1468);
var anObject = __webpack_require__(4464);
var isNullOrUndefined = __webpack_require__(3600);
var isObject = __webpack_require__(8861);
var iterate = __webpack_require__(2711);
var ArrayIterationModule = __webpack_require__(8454);
var hasOwn = __webpack_require__(1324);
var InternalStateModule = __webpack_require__(4852);

var setInternalState = InternalStateModule.set;
var internalStateGetterFor = InternalStateModule.getterFor;
var find = ArrayIterationModule.find;
var findIndex = ArrayIterationModule.findIndex;
var splice = uncurryThis([].splice);
var id = 0;

// fallback for uncaught frozen keys
var uncaughtFrozenStore = function (state) {
  return state.frozen || (state.frozen = new UncaughtFrozenStore());
};

var UncaughtFrozenStore = function () {
  this.entries = [];
};

var findUncaughtFrozen = function (store, key) {
  return find(store.entries, function (it) {
    return it[0] === key;
  });
};

UncaughtFrozenStore.prototype = {
  get: function (key) {
    var entry = findUncaughtFrozen(this, key);
    if (entry) return entry[1];
  },
  has: function (key) {
    return !!findUncaughtFrozen(this, key);
  },
  set: function (key, value) {
    var entry = findUncaughtFrozen(this, key);
    if (entry) entry[1] = value;
    else this.entries.push([key, value]);
  },
  'delete': function (key) {
    var index = findIndex(this.entries, function (it) {
      return it[0] === key;
    });
    if (~index) splice(this.entries, index, 1);
    return !!~index;
  }
};

module.exports = {
  getConstructor: function (wrapper, CONSTRUCTOR_NAME, IS_MAP, ADDER) {
    var Constructor = wrapper(function (that, iterable) {
      anInstance(that, Prototype);
      setInternalState(that, {
        type: CONSTRUCTOR_NAME,
        id: id++,
        frozen: null
      });
      if (!isNullOrUndefined(iterable)) iterate(iterable, that[ADDER], { that: that, AS_ENTRIES: IS_MAP });
    });

    var Prototype = Constructor.prototype;

    var getInternalState = internalStateGetterFor(CONSTRUCTOR_NAME);

    var define = function (that, key, value) {
      var state = getInternalState(that);
      var data = getWeakData(anObject(key), true);
      if (data === true) uncaughtFrozenStore(state).set(key, value);
      else data[state.id] = value;
      return that;
    };

    defineBuiltIns(Prototype, {
      // `{ WeakMap, WeakSet }.prototype.delete(key)` methods
      // https://tc39.es/ecma262/#sec-weakmap.prototype.delete
      // https://tc39.es/ecma262/#sec-weakset.prototype.delete
      'delete': function (key) {
        var state = getInternalState(this);
        if (!isObject(key)) return false;
        var data = getWeakData(key);
        if (data === true) return uncaughtFrozenStore(state)['delete'](key);
        return data && hasOwn(data, state.id) && delete data[state.id];
      },
      // `{ WeakMap, WeakSet }.prototype.has(key)` methods
      // https://tc39.es/ecma262/#sec-weakmap.prototype.has
      // https://tc39.es/ecma262/#sec-weakset.prototype.has
      has: function has(key) {
        var state = getInternalState(this);
        if (!isObject(key)) return false;
        var data = getWeakData(key);
        if (data === true) return uncaughtFrozenStore(state).has(key);
        return data && hasOwn(data, state.id);
      }
    });

    defineBuiltIns(Prototype, IS_MAP ? {
      // `WeakMap.prototype.get(key)` method
      // https://tc39.es/ecma262/#sec-weakmap.prototype.get
      get: function get(key) {
        var state = getInternalState(this);
        if (isObject(key)) {
          var data = getWeakData(key);
          if (data === true) return uncaughtFrozenStore(state).get(key);
          if (data) return data[state.id];
        }
      },
      // `WeakMap.prototype.set(key, value)` method
      // https://tc39.es/ecma262/#sec-weakmap.prototype.set
      set: function set(key, value) {
        return define(this, key, value);
      }
    } : {
      // `WeakSet.prototype.add(value)` method
      // https://tc39.es/ecma262/#sec-weakset.prototype.add
      add: function add(value) {
        return define(this, value, true);
      }
    });

    return Constructor;
  }
};


/***/ }),

/***/ 7193:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {


var $ = __webpack_require__(1187);
var globalThis = __webpack_require__(4127);
var uncurryThis = __webpack_require__(3027);
var isForced = __webpack_require__(7191);
var defineBuiltIn = __webpack_require__(7255);
var InternalMetadataModule = __webpack_require__(268);
var iterate = __webpack_require__(2711);
var anInstance = __webpack_require__(1468);
var isCallable = __webpack_require__(8794);
var isNullOrUndefined = __webpack_require__(3600);
var isObject = __webpack_require__(8861);
var fails = __webpack_require__(4892);
var checkCorrectnessOfIteration = __webpack_require__(153);
var setToStringTag = __webpack_require__(4360);
var inheritIfRequired = __webpack_require__(6388);

module.exports = function (CONSTRUCTOR_NAME, wrapper, common) {
  var IS_MAP = CONSTRUCTOR_NAME.indexOf('Map') !== -1;
  var IS_WEAK = CONSTRUCTOR_NAME.indexOf('Weak') !== -1;
  var ADDER = IS_MAP ? 'set' : 'add';
  var NativeConstructor = globalThis[CONSTRUCTOR_NAME];
  var NativePrototype = NativeConstructor && NativeConstructor.prototype;
  var Constructor = NativeConstructor;
  var exported = {};

  var fixMethod = function (KEY) {
    var uncurriedNativeMethod = uncurryThis(NativePrototype[KEY]);
    defineBuiltIn(NativePrototype, KEY,
      KEY === 'add' ? function add(value) {
        uncurriedNativeMethod(this, value === 0 ? 0 : value);
        return this;
      } : KEY === 'delete' ? function (key) {
        return IS_WEAK && !isObject(key) ? false : uncurriedNativeMethod(this, key === 0 ? 0 : key);
      } : KEY === 'get' ? function get(key) {
        return IS_WEAK && !isObject(key) ? undefined : uncurriedNativeMethod(this, key === 0 ? 0 : key);
      } : KEY === 'has' ? function has(key) {
        return IS_WEAK && !isObject(key) ? false : uncurriedNativeMethod(this, key === 0 ? 0 : key);
      } : function set(key, value) {
        uncurriedNativeMethod(this, key === 0 ? 0 : key, value);
        return this;
      }
    );
  };

  var REPLACE = isForced(
    CONSTRUCTOR_NAME,
    !isCallable(NativeConstructor) || !(IS_WEAK || NativePrototype.forEach && !fails(function () {
      new NativeConstructor().entries().next();
    }))
  );

  if (REPLACE) {
    // create collection constructor
    Constructor = common.getConstructor(wrapper, CONSTRUCTOR_NAME, IS_MAP, ADDER);
    InternalMetadataModule.enable();
  } else if (isForced(CONSTRUCTOR_NAME, true)) {
    var instance = new Constructor();
    // early implementations not supports chaining
    var HASNT_CHAINING = instance[ADDER](IS_WEAK ? {} : -0, 1) !== instance;
    // V8 ~ Chromium 40- weak-collections throws on primitives, but should return false
    var THROWS_ON_PRIMITIVES = fails(function () { instance.has(1); });
    // most early implementations doesn't supports iterables, most modern - not close it correctly
    // eslint-disable-next-line no-new -- required for testing
    var ACCEPT_ITERABLES = checkCorrectnessOfIteration(function (iterable) { new NativeConstructor(iterable); });
    // for early implementations -0 and +0 not the same
    var BUGGY_ZERO = !IS_WEAK && fails(function () {
      // V8 ~ Chromium 42- fails only with 5+ elements
      var $instance = new NativeConstructor();
      var index = 5;
      while (index--) $instance[ADDER](index, index);
      return !$instance.has(-0);
    });

    if (!ACCEPT_ITERABLES) {
      Constructor = wrapper(function (dummy, iterable) {
        anInstance(dummy, NativePrototype);
        var that = inheritIfRequired(new NativeConstructor(), dummy, Constructor);
        if (!isNullOrUndefined(iterable)) iterate(iterable, that[ADDER], { that: that, AS_ENTRIES: IS_MAP });
        return that;
      });
      Constructor.prototype = NativePrototype;
      NativePrototype.constructor = Constructor;
    }

    if (THROWS_ON_PRIMITIVES || BUGGY_ZERO) {
      fixMethod('delete');
      fixMethod('has');
      IS_MAP && fixMethod('get');
    }

    if (BUGGY_ZERO || HASNT_CHAINING) fixMethod(ADDER);

    // weak collections should not contains .clear method
    if (IS_WEAK && NativePrototype.clear) delete NativePrototype.clear;
  }

  exported[CONSTRUCTOR_NAME] = Constructor;
  $({ global: true, constructor: true, forced: Constructor !== NativeConstructor }, exported);

  setToStringTag(Constructor, CONSTRUCTOR_NAME);

  if (!IS_WEAK) common.setStrong(Constructor, CONSTRUCTOR_NAME, IS_MAP);

  return Constructor;
};


/***/ }),

/***/ 2491:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {


var hasOwn = __webpack_require__(1324);
var ownKeys = __webpack_require__(6162);
var getOwnPropertyDescriptorModule = __webpack_require__(6150);
var definePropertyModule = __webpack_require__(9100);

module.exports = function (target, source, exceptions) {
  var keys = ownKeys(source);
  var defineProperty = definePropertyModule.f;
  var getOwnPropertyDescriptor = getOwnPropertyDescriptorModule.f;
  for (var i = 0; i < keys.length; i++) {
    var key = keys[i];
    if (!hasOwn(target, key) && !(exceptions && hasOwn(exceptions, key))) {
      defineProperty(target, key, getOwnPropertyDescriptor(source, key));
    }
  }
};


/***/ }),

/***/ 6887:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {


var wellKnownSymbol = __webpack_require__(7080);

var MATCH = wellKnownSymbol('match');

module.exports = function (METHOD_NAME) {
  var regexp = /./;
  try {
    '/./'[METHOD_NAME](regexp);
  } catch (error1) {
    try {
      regexp[MATCH] = false;
      return '/./'[METHOD_NAME](regexp);
    } catch (error2) { /* empty */ }
  } return false;
};


/***/ }),

/***/ 4678:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {


var fails = __webpack_require__(4892);

module.exports = !fails(function () {
  function F() { /* empty */ }
  F.prototype.constructor = null;
  // eslint-disable-next-line es/no-object-getprototypeof -- required for testing
  return Object.getPrototypeOf(new F()) !== F.prototype;
});


/***/ }),

/***/ 9566:
/***/ ((module) => {


// `CreateIterResultObject` abstract operation
// https://tc39.es/ecma262/#sec-createiterresultobject
module.exports = function (value, done) {
  return { value: value, done: done };
};


/***/ }),

/***/ 298:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {


var DESCRIPTORS = __webpack_require__(1175);
var definePropertyModule = __webpack_require__(9100);
var createPropertyDescriptor = __webpack_require__(1513);

module.exports = DESCRIPTORS ? function (object, key, value) {
  return definePropertyModule.f(object, key, createPropertyDescriptor(1, value));
} : function (object, key, value) {
  object[key] = value;
  return object;
};


/***/ }),

/***/ 1513:
/***/ ((module) => {


module.exports = function (bitmap, value) {
  return {
    enumerable: !(bitmap & 1),
    configurable: !(bitmap & 2),
    writable: !(bitmap & 4),
    value: value
  };
};


/***/ }),

/***/ 4119:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {


var DESCRIPTORS = __webpack_require__(1175);
var definePropertyModule = __webpack_require__(9100);
var createPropertyDescriptor = __webpack_require__(1513);

module.exports = function (object, key, value) {
  if (DESCRIPTORS) definePropertyModule.f(object, key, createPropertyDescriptor(0, value));
  else object[key] = value;
};


/***/ }),

/***/ 707:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {


var makeBuiltIn = __webpack_require__(8904);
var defineProperty = __webpack_require__(9100);

module.exports = function (target, name, descriptor) {
  if (descriptor.get) makeBuiltIn(descriptor.get, name, { getter: true });
  if (descriptor.set) makeBuiltIn(descriptor.set, name, { setter: true });
  return defineProperty.f(target, name, descriptor);
};


/***/ }),

/***/ 7255:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {


var isCallable = __webpack_require__(8794);
var definePropertyModule = __webpack_require__(9100);
var makeBuiltIn = __webpack_require__(8904);
var defineGlobalProperty = __webpack_require__(6564);

module.exports = function (O, key, value, options) {
  if (!options) options = {};
  var simple = options.enumerable;
  var name = options.name !== undefined ? options.name : key;
  if (isCallable(value)) makeBuiltIn(value, name, options);
  if (options.global) {
    if (simple) O[key] = value;
    else defineGlobalProperty(key, value);
  } else {
    try {
      if (!options.unsafe) delete O[key];
      else if (O[key]) simple = true;
    } catch (error) { /* empty */ }
    if (simple) O[key] = value;
    else definePropertyModule.f(O, key, {
      value: value,
      enumerable: false,
      configurable: !options.nonConfigurable,
      writable: !options.nonWritable
    });
  } return O;
};


/***/ }),

/***/ 8498:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {


var defineBuiltIn = __webpack_require__(7255);

module.exports = function (target, src, options) {
  for (var key in src) defineBuiltIn(target, key, src[key], options);
  return target;
};


/***/ }),

/***/ 6564:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {


var globalThis = __webpack_require__(4127);

// eslint-disable-next-line es/no-object-defineproperty -- safe
var defineProperty = Object.defineProperty;

module.exports = function (key, value) {
  try {
    defineProperty(globalThis, key, { value: value, configurable: true, writable: true });
  } catch (error) {
    globalThis[key] = value;
  } return value;
};


/***/ }),

/***/ 9319:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {


var tryToString = __webpack_require__(2272);

var $TypeError = TypeError;

module.exports = function (O, P) {
  if (!delete O[P]) throw new $TypeError('Cannot delete property ' + tryToString(P) + ' of ' + tryToString(O));
};


/***/ }),

/***/ 1175:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {


var fails = __webpack_require__(4892);

// Detect IE8's incomplete defineProperty implementation
module.exports = !fails(function () {
  // eslint-disable-next-line es/no-object-defineproperty -- required for testing
  return Object.defineProperty({}, 1, { get: function () { return 7; } })[1] !== 7;
});


/***/ }),

/***/ 4408:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {


var globalThis = __webpack_require__(4127);
var getBuiltInNodeModule = __webpack_require__(7260);
var PROPER_STRUCTURED_CLONE_TRANSFER = __webpack_require__(5365);

var structuredClone = globalThis.structuredClone;
var $ArrayBuffer = globalThis.ArrayBuffer;
var $MessageChannel = globalThis.MessageChannel;
var detach = false;
var WorkerThreads, channel, buffer, $detach;

if (PROPER_STRUCTURED_CLONE_TRANSFER) {
  detach = function (transferable) {
    structuredClone(transferable, { transfer: [transferable] });
  };
} else if ($ArrayBuffer) try {
  if (!$MessageChannel) {
    WorkerThreads = getBuiltInNodeModule('worker_threads');
    if (WorkerThreads) $MessageChannel = WorkerThreads.MessageChannel;
  }

  if ($MessageChannel) {
    channel = new $MessageChannel();
    buffer = new $ArrayBuffer(2);

    $detach = function (transferable) {
      channel.port1.postMessage(null, [transferable]);
    };

    if (buffer.byteLength === 2) {
      $detach(buffer);
      if (buffer.byteLength === 0) detach = $detach;
    }
  }
} catch (error) { /* empty */ }

module.exports = detach;


/***/ }),

/***/ 8752:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {


var globalThis = __webpack_require__(4127);
var isObject = __webpack_require__(8861);

var document = globalThis.document;
// typeof document.createElement is 'object' in old IE
var EXISTS = isObject(document) && isObject(document.createElement);

module.exports = function (it) {
  return EXISTS ? document.createElement(it) : {};
};


/***/ }),

/***/ 2504:
/***/ ((module) => {


var $TypeError = TypeError;
var MAX_SAFE_INTEGER = 0x1FFFFFFFFFFFFF; // 2 ** 53 - 1 == 9007199254740991

module.exports = function (it) {
  if (it > MAX_SAFE_INTEGER) throw new $TypeError('Maximum allowed index exceeded');
  return it;
};


/***/ }),

/***/ 1849:
/***/ ((module) => {


module.exports = {
  IndexSizeError: { s: 'INDEX_SIZE_ERR', c: 1, m: 1 },
  DOMStringSizeError: { s: 'DOMSTRING_SIZE_ERR', c: 2, m: 0 },
  HierarchyRequestError: { s: 'HIERARCHY_REQUEST_ERR', c: 3, m: 1 },
  WrongDocumentError: { s: 'WRONG_DOCUMENT_ERR', c: 4, m: 1 },
  InvalidCharacterError: { s: 'INVALID_CHARACTER_ERR', c: 5, m: 1 },
  NoDataAllowedError: { s: 'NO_DATA_ALLOWED_ERR', c: 6, m: 0 },
  NoModificationAllowedError: { s: 'NO_MODIFICATION_ALLOWED_ERR', c: 7, m: 1 },
  NotFoundError: { s: 'NOT_FOUND_ERR', c: 8, m: 1 },
  NotSupportedError: { s: 'NOT_SUPPORTED_ERR', c: 9, m: 1 },
  InUseAttributeError: { s: 'INUSE_ATTRIBUTE_ERR', c: 10, m: 1 },
  InvalidStateError: { s: 'INVALID_STATE_ERR', c: 11, m: 1 },
  SyntaxError: { s: 'SYNTAX_ERR', c: 12, m: 1 },
  InvalidModificationError: { s: 'INVALID_MODIFICATION_ERR', c: 13, m: 1 },
  NamespaceError: { s: 'NAMESPACE_ERR', c: 14, m: 1 },
  InvalidAccessError: { s: 'INVALID_ACCESS_ERR', c: 15, m: 1 },
  ValidationError: { s: 'VALIDATION_ERR', c: 16, m: 0 },
  TypeMismatchError: { s: 'TYPE_MISMATCH_ERR', c: 17, m: 1 },
  SecurityError: { s: 'SECURITY_ERR', c: 18, m: 1 },
  NetworkError: { s: 'NETWORK_ERR', c: 19, m: 1 },
  AbortError: { s: 'ABORT_ERR', c: 20, m: 1 },
  URLMismatchError: { s: 'URL_MISMATCH_ERR', c: 21, m: 1 },
  QuotaExceededError: { s: 'QUOTA_EXCEEDED_ERR', c: 22, m: 1 },
  TimeoutError: { s: 'TIMEOUT_ERR', c: 23, m: 1 },
  InvalidNodeTypeError: { s: 'INVALID_NODE_TYPE_ERR', c: 24, m: 1 },
  DataCloneError: { s: 'DATA_CLONE_ERR', c: 25, m: 1 }
};


/***/ }),

/***/ 9991:
/***/ ((module) => {


// iterable DOM collections
// flag - `iterable` interface - 'entries', 'keys', 'values', 'forEach' methods
module.exports = {
  CSSRuleList: 0,
  CSSStyleDeclaration: 0,
  CSSValueList: 0,
  ClientRectList: 0,
  DOMRectList: 0,
  DOMStringList: 0,
  DOMTokenList: 1,
  DataTransferItemList: 0,
  FileList: 0,
  HTMLAllCollection: 0,
  HTMLCollection: 0,
  HTMLFormElement: 0,
  HTMLSelectElement: 0,
  MediaList: 0,
  MimeTypeArray: 0,
  NamedNodeMap: 0,
  NodeList: 1,
  PaintRequestList: 0,
  Plugin: 0,
  PluginArray: 0,
  SVGLengthList: 0,
  SVGNumberList: 0,
  SVGPathSegList: 0,
  SVGPointList: 0,
  SVGStringList: 0,
  SVGTransformList: 0,
  SourceBufferList: 0,
  StyleSheetList: 0,
  TextTrackCueList: 0,
  TextTrackList: 0,
  TouchList: 0
};


/***/ }),

/***/ 3917:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {


// in old WebKit versions, `element.classList` is not an instance of global `DOMTokenList`
var documentCreateElement = __webpack_require__(8752);

var classList = documentCreateElement('span').classList;
var DOMTokenListPrototype = classList && classList.constructor && classList.constructor.prototype;

module.exports = DOMTokenListPrototype === Object.prototype ? undefined : DOMTokenListPrototype;


/***/ }),

/***/ 1976:
/***/ ((module) => {


// IE8- don't enum bug keys
module.exports = [
  'constructor',
  'hasOwnProperty',
  'isPrototypeOf',
  'propertyIsEnumerable',
  'toLocaleString',
  'toString',
  'valueOf'
];


/***/ }),

/***/ 4704:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {


var userAgent = __webpack_require__(4298);

var firefox = userAgent.match(/firefox\/(\d+)/i);

module.exports = !!firefox && +firefox[1];


/***/ }),

/***/ 5256:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {


var UA = __webpack_require__(4298);

module.exports = /MSIE|Trident/.test(UA);


/***/ }),

/***/ 4737:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {


var userAgent = __webpack_require__(4298);

module.exports = /ipad|iphone|ipod/i.test(userAgent) && typeof Pebble != 'undefined';


/***/ }),

/***/ 9810:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {


var ENVIRONMENT = __webpack_require__(9296);

module.exports = ENVIRONMENT === 'NODE';


/***/ }),

/***/ 8427:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {


var userAgent = __webpack_require__(4298);

module.exports = /web0s(?!.*chrome)/i.test(userAgent);


/***/ }),

/***/ 4298:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {


var globalThis = __webpack_require__(4127);

var navigator = globalThis.navigator;
var userAgent = navigator && navigator.userAgent;

module.exports = userAgent ? String(userAgent) : '';


/***/ }),

/***/ 5422:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {


var globalThis = __webpack_require__(4127);
var userAgent = __webpack_require__(4298);

var process = globalThis.process;
var Deno = globalThis.Deno;
var versions = process && process.versions || Deno && Deno.version;
var v8 = versions && versions.v8;
var match, version;

if (v8) {
  match = v8.split('.');
  // in old Chrome, versions of V8 isn't V8 = Chrome / 10
  // but their correct versions are not interesting for us
  version = match[0] > 0 && match[0] < 4 ? 1 : +(match[0] + match[1]);
}

// BrowserFS NodeJS `process` polyfill incorrectly set `.v8` to `0.0`
// so check `userAgent` even if `.v8` exists, but 0
if (!version && userAgent) {
  match = userAgent.match(/Edge\/(\d+)/);
  if (!match || match[1] >= 74) {
    match = userAgent.match(/Chrome\/(\d+)/);
    if (match) version = +match[1];
  }
}

module.exports = version;


/***/ }),

/***/ 8970:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {


var userAgent = __webpack_require__(4298);

var webkit = userAgent.match(/AppleWebKit\/(\d+)\./);

module.exports = !!webkit && +webkit[1];


/***/ }),

/***/ 9296:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {


/* global Bun, Deno -- detection */
var globalThis = __webpack_require__(4127);
var userAgent = __webpack_require__(4298);
var classof = __webpack_require__(2911);

var userAgentStartsWith = function (string) {
  return userAgent.slice(0, string.length) === string;
};

module.exports = (function () {
  if (userAgentStartsWith('Bun/')) return 'BUN';
  if (userAgentStartsWith('Cloudflare-Workers')) return 'CLOUDFLARE';
  if (userAgentStartsWith('Deno/')) return 'DENO';
  if (userAgentStartsWith('Node.js/')) return 'NODE';
  if (globalThis.Bun && typeof Bun.version == 'string') return 'BUN';
  if (globalThis.Deno && typeof Deno.version == 'object') return 'DENO';
  if (classof(globalThis.process) === 'process') return 'NODE';
  if (globalThis.window && globalThis.document) return 'BROWSER';
  return 'REST';
})();


/***/ }),

/***/ 2098:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {


var uncurryThis = __webpack_require__(3027);

var $Error = Error;
var replace = uncurryThis(''.replace);

var TEST = (function (arg) { return String(new $Error(arg).stack); })('zxcasd');
// eslint-disable-next-line redos/no-vulnerable -- safe
var V8_OR_CHAKRA_STACK_ENTRY = /\n\s*at [^:]*:[^\n]*/;
var IS_V8_OR_CHAKRA_STACK = V8_OR_CHAKRA_STACK_ENTRY.test(TEST);

module.exports = function (stack, dropEntries) {
  if (IS_V8_OR_CHAKRA_STACK && typeof stack == 'string' && !$Error.prepareStackTrace) {
    while (dropEntries--) stack = replace(stack, V8_OR_CHAKRA_STACK_ENTRY, '');
  } return stack;
};


/***/ }),

/***/ 4076:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {


var createNonEnumerableProperty = __webpack_require__(298);
var clearErrorStack = __webpack_require__(2098);
var ERROR_STACK_INSTALLABLE = __webpack_require__(1168);

// non-standard V8
// eslint-disable-next-line es/no-nonstandard-error-properties -- safe
var captureStackTrace = Error.captureStackTrace;

module.exports = function (error, C, stack, dropEntries) {
  if (ERROR_STACK_INSTALLABLE) {
    if (captureStackTrace) captureStackTrace(error, C);
    else createNonEnumerableProperty(error, 'stack', clearErrorStack(stack, dropEntries));
  }
};


/***/ }),

/***/ 1168:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {


var fails = __webpack_require__(4892);
var createPropertyDescriptor = __webpack_require__(1513);

module.exports = !fails(function () {
  var error = new Error('a');
  if (!('stack' in error)) return true;
  // eslint-disable-next-line es/no-object-defineproperty -- safe
  Object.defineProperty(error, 'stack', createPropertyDescriptor(1, 7));
  return error.stack !== 7;
});


/***/ }),

/***/ 2071:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {


var DESCRIPTORS = __webpack_require__(1175);
var fails = __webpack_require__(4892);
var anObject = __webpack_require__(4464);
var normalizeStringArgument = __webpack_require__(6848);

var nativeErrorToString = Error.prototype.toString;

var INCORRECT_TO_STRING = fails(function () {
  if (DESCRIPTORS) {
    // Chrome 32- incorrectly call accessor
    // eslint-disable-next-line es/no-object-create, es/no-object-defineproperty -- safe
    var object = Object.create(Object.defineProperty({}, 'name', { get: function () {
      return this === object;
    } }));
    if (nativeErrorToString.call(object) !== 'true') return true;
  }
  // FF10- does not properly handle non-strings
  return nativeErrorToString.call({ message: 1, name: 2 }) !== '2: 1'
    // IE8 does not properly handle defaults
    || nativeErrorToString.call({}) !== 'Error';
});

module.exports = INCORRECT_TO_STRING ? function toString() {
  var O = anObject(this);
  var name = normalizeStringArgument(O.name, 'Error');
  var message = normalizeStringArgument(O.message);
  return !name ? message : !message ? name : name + ': ' + message;
} : nativeErrorToString;


/***/ }),

/***/ 1187:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {


var globalThis = __webpack_require__(4127);
var getOwnPropertyDescriptor = (__webpack_require__(6150).f);
var createNonEnumerableProperty = __webpack_require__(298);
var defineBuiltIn = __webpack_require__(7255);
var defineGlobalProperty = __webpack_require__(6564);
var copyConstructorProperties = __webpack_require__(2491);
var isForced = __webpack_require__(7191);

/*
  options.target         - name of the target object
  options.global         - target is the global object
  options.stat           - export as static methods of target
  options.proto          - export as prototype methods of target
  options.real           - real prototype method for the `pure` version
  options.forced         - export even if the native feature is available
  options.bind           - bind methods to the target, required for the `pure` version
  options.wrap           - wrap constructors to preventing global pollution, required for the `pure` version
  options.unsafe         - use the simple assignment of property instead of delete + defineProperty
  options.sham           - add a flag to not completely full polyfills
  options.enumerable     - export as enumerable property
  options.dontCallGetSet - prevent calling a getter on target
  options.name           - the .name of the function if it does not match the key
*/
module.exports = function (options, source) {
  var TARGET = options.target;
  var GLOBAL = options.global;
  var STATIC = options.stat;
  var FORCED, target, key, targetProperty, sourceProperty, descriptor;
  if (GLOBAL) {
    target = globalThis;
  } else if (STATIC) {
    target = globalThis[TARGET] || defineGlobalProperty(TARGET, {});
  } else {
    target = globalThis[TARGET] && globalThis[TARGET].prototype;
  }
  if (target) for (key in source) {
    sourceProperty = source[key];
    if (options.dontCallGetSet) {
      descriptor = getOwnPropertyDescriptor(target, key);
      targetProperty = descriptor && descriptor.value;
    } else targetProperty = target[key];
    FORCED = isForced(GLOBAL ? key : TARGET + (STATIC ? '.' : '#') + key, options.forced);
    // contained in target
    if (!FORCED && targetProperty !== undefined) {
      if (typeof sourceProperty == typeof targetProperty) continue;
      copyConstructorProperties(sourceProperty, targetProperty);
    }
    // add a flag to not completely full polyfills
    if (options.sham || (targetProperty && targetProperty.sham)) {
      createNonEnumerableProperty(sourceProperty, 'sham', true);
    }
    defineBuiltIn(target, key, sourceProperty, options);
  }
};


/***/ }),

/***/ 4892:
/***/ ((module) => {


module.exports = function (exec) {
  try {
    return !!exec();
  } catch (error) {
    return true;
  }
};


/***/ }),

/***/ 4061:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {


// TODO: Remove from `core-js@4` since it's moved to entry points
__webpack_require__(2758);
var call = __webpack_require__(5418);
var defineBuiltIn = __webpack_require__(7255);
var regexpExec = __webpack_require__(6676);
var fails = __webpack_require__(4892);
var wellKnownSymbol = __webpack_require__(7080);
var createNonEnumerableProperty = __webpack_require__(298);

var SPECIES = wellKnownSymbol('species');
var RegExpPrototype = RegExp.prototype;

module.exports = function (KEY, exec, FORCED, SHAM) {
  var SYMBOL = wellKnownSymbol(KEY);

  var DELEGATES_TO_SYMBOL = !fails(function () {
    // String methods call symbol-named RegExp methods
    var O = {};
    // eslint-disable-next-line unicorn/no-immediate-mutation -- ES3 syntax limitation
    O[SYMBOL] = function () { return 7; };
    return ''[KEY](O) !== 7;
  });

  var DELEGATES_TO_EXEC = DELEGATES_TO_SYMBOL && !fails(function () {
    // Symbol-named RegExp methods call .exec
    var execCalled = false;
    var re = /a/;

    if (KEY === 'split') {
      // We can't use real regex here since it causes deoptimization
      // and serious performance degradation in V8
      // https://github.com/zloirock/core-js/issues/306
      // RegExp[@@split] doesn't call the regex's exec method, but first creates
      // a new one. We need to return the patched regex when creating the new one.
      var constructor = {};
      // eslint-disable-next-line unicorn/no-immediate-mutation -- ES3 syntax limitation
      constructor[SPECIES] = function () { return re; };
      re = { constructor: constructor, flags: '' };
      // eslint-disable-next-line unicorn/no-immediate-mutation -- ES3 syntax limitation
      re[SYMBOL] = /./[SYMBOL];
    }

    re.exec = function () {
      execCalled = true;
      return null;
    };

    re[SYMBOL]('');
    return !execCalled;
  });

  if (
    !DELEGATES_TO_SYMBOL ||
    !DELEGATES_TO_EXEC ||
    FORCED
  ) {
    var nativeRegExpMethod = /./[SYMBOL];
    var methods = exec(SYMBOL, ''[KEY], function (nativeMethod, regexp, str, arg2, forceStringMethod) {
      var $exec = regexp.exec;
      if ($exec === regexpExec || $exec === RegExpPrototype.exec) {
        if (DELEGATES_TO_SYMBOL && !forceStringMethod) {
          // The native String method already delegates to @@method (this
          // polyfilled function), leasing to infinite recursion.
          // We avoid it by directly calling the native @@method method.
          return { done: true, value: call(nativeRegExpMethod, regexp, str, arg2) };
        }
        return { done: true, value: call(nativeMethod, str, regexp, arg2) };
      }
      return { done: false };
    });

    defineBuiltIn(String.prototype, KEY, methods[0]);
    defineBuiltIn(RegExpPrototype, SYMBOL, methods[1]);
  }

  if (SHAM) createNonEnumerableProperty(RegExpPrototype[SYMBOL], 'sham', true);
};


/***/ }),

/***/ 3206:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {


var isArray = __webpack_require__(2001);
var lengthOfArrayLike = __webpack_require__(5807);
var doesNotExceedSafeInteger = __webpack_require__(2504);
var bind = __webpack_require__(1079);
var createProperty = __webpack_require__(4119);

// `FlattenIntoArray` abstract operation
// https://tc39.es/ecma262/#sec-flattenintoarray
var flattenIntoArray = function (target, original, source, sourceLen, start, depth, mapper, thisArg) {
  var targetIndex = start;
  var sourceIndex = 0;
  var mapFn = mapper ? bind(mapper, thisArg) : false;
  var element, elementLen;

  while (sourceIndex < sourceLen) {
    if (sourceIndex in source) {
      element = mapFn ? mapFn(source[sourceIndex], sourceIndex, original) : source[sourceIndex];

      if (depth > 0 && isArray(element)) {
        elementLen = lengthOfArrayLike(element);
        targetIndex = flattenIntoArray(target, original, element, elementLen, targetIndex, depth - 1) - 1;
      } else {
        doesNotExceedSafeInteger(targetIndex + 1);
        createProperty(target, targetIndex, element);
      }

      targetIndex++;
    }
    sourceIndex++;
  }
  return targetIndex;
};

module.exports = flattenIntoArray;


/***/ }),

/***/ 1217:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {


var fails = __webpack_require__(4892);

module.exports = !fails(function () {
  // eslint-disable-next-line es/no-object-isextensible, es/no-object-preventextensions -- required for testing
  return Object.isExtensible(Object.preventExtensions({}));
});


/***/ }),

/***/ 3160:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {


var NATIVE_BIND = __webpack_require__(5825);

var FunctionPrototype = Function.prototype;
var apply = FunctionPrototype.apply;
var call = FunctionPrototype.call;

// eslint-disable-next-line es/no-function-prototype-bind, es/no-reflect -- safe
module.exports = typeof Reflect == 'object' && Reflect.apply || (NATIVE_BIND ? call.bind(apply) : function () {
  return call.apply(apply, arguments);
});


/***/ }),

/***/ 1079:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {


var uncurryThis = __webpack_require__(3449);
var aCallable = __webpack_require__(6927);
var NATIVE_BIND = __webpack_require__(5825);

var bind = uncurryThis(uncurryThis.bind);

// optional / simple context binding
module.exports = function (fn, that) {
  aCallable(fn);
  return that === undefined ? fn : NATIVE_BIND ? bind(fn, that) : function (/* ...args */) {
    return fn.apply(that, arguments);
  };
};


/***/ }),

/***/ 5825:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {


var fails = __webpack_require__(4892);

module.exports = !fails(function () {
  // eslint-disable-next-line es/no-function-prototype-bind -- safe
  var test = function () { /* empty */ }.bind();
  // eslint-disable-next-line no-prototype-builtins -- safe
  return typeof test != 'function' || test.hasOwnProperty('prototype');
});


/***/ }),

/***/ 2881:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {


var uncurryThis = __webpack_require__(3027);
var aCallable = __webpack_require__(6927);
var isObject = __webpack_require__(8861);
var hasOwn = __webpack_require__(1324);
var arraySlice = __webpack_require__(803);
var NATIVE_BIND = __webpack_require__(5825);

var $Function = Function;
var concat = uncurryThis([].concat);
var join = uncurryThis([].join);
var factories = {};

var construct = function (C, argsLength, args) {
  if (!hasOwn(factories, argsLength)) {
    var list = [];
    var i = 0;
    for (; i < argsLength; i++) list[i] = 'a[' + i + ']';
    factories[argsLength] = $Function('C,a', 'return new C(' + join(list, ',') + ')');
  } return factories[argsLength](C, args);
};

// `Function.prototype.bind` method implementation
// https://tc39.es/ecma262/#sec-function.prototype.bind
// eslint-disable-next-line es/no-function-prototype-bind -- detection
module.exports = NATIVE_BIND ? $Function.bind : function bind(that /* , ...args */) {
  var F = aCallable(this);
  var Prototype = F.prototype;
  var partArgs = arraySlice(arguments, 1);
  var boundFunction = function bound(/* args... */) {
    var args = concat(partArgs, arraySlice(arguments));
    return this instanceof boundFunction ? construct(F, args.length, args) : F.apply(that, args);
  };
  if (isObject(Prototype)) boundFunction.prototype = Prototype;
  return boundFunction;
};


/***/ }),

/***/ 5418:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {


var NATIVE_BIND = __webpack_require__(5825);

var call = Function.prototype.call;
// eslint-disable-next-line es/no-function-prototype-bind -- safe
module.exports = NATIVE_BIND ? call.bind(call) : function () {
  return call.apply(call, arguments);
};


/***/ }),

/***/ 6993:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {


var DESCRIPTORS = __webpack_require__(1175);
var hasOwn = __webpack_require__(1324);

var FunctionPrototype = Function.prototype;
// eslint-disable-next-line es/no-object-getownpropertydescriptor -- safe
var getDescriptor = DESCRIPTORS && Object.getOwnPropertyDescriptor;

var EXISTS = hasOwn(FunctionPrototype, 'name');
// additional protection from minified / mangled / dropped function names
var PROPER = EXISTS && function something() { /* empty */ }.name === 'something';
var CONFIGURABLE = EXISTS && (!DESCRIPTORS || (DESCRIPTORS && getDescriptor(FunctionPrototype, 'name').configurable));

module.exports = {
  EXISTS: EXISTS,
  PROPER: PROPER,
  CONFIGURABLE: CONFIGURABLE
};


/***/ }),

/***/ 79:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {


var uncurryThis = __webpack_require__(3027);
var aCallable = __webpack_require__(6927);

module.exports = function (object, key, method) {
  try {
    // eslint-disable-next-line es/no-object-getownpropertydescriptor -- safe
    return uncurryThis(aCallable(Object.getOwnPropertyDescriptor(object, key)[method]));
  } catch (error) { /* empty */ }
};


/***/ }),

/***/ 3449:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {


var classofRaw = __webpack_require__(2911);
var uncurryThis = __webpack_require__(3027);

module.exports = function (fn) {
  // Nashorn bug:
  //   https://github.com/zloirock/core-js/issues/1128
  //   https://github.com/zloirock/core-js/issues/1130
  if (classofRaw(fn) === 'Function') return uncurryThis(fn);
};


/***/ }),

/***/ 3027:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {


var NATIVE_BIND = __webpack_require__(5825);

var FunctionPrototype = Function.prototype;
var call = FunctionPrototype.call;
// eslint-disable-next-line es/no-function-prototype-bind -- safe
var uncurryThisWithBind = NATIVE_BIND && FunctionPrototype.bind.bind(call, call);

module.exports = NATIVE_BIND ? uncurryThisWithBind : function (fn) {
  return function () {
    return call.apply(fn, arguments);
  };
};


/***/ }),

/***/ 8035:
/***/ ((module) => {


var $TypeError = TypeError;

module.exports = function (options) {
  var alphabet = options && options.alphabet;
  if (alphabet === undefined || alphabet === 'base64' || alphabet === 'base64url') return alphabet || 'base64';
  throw new $TypeError('Incorrect `alphabet` option');
};


/***/ }),

/***/ 7260:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {


var globalThis = __webpack_require__(4127);
var IS_NODE = __webpack_require__(9810);

module.exports = function (name) {
  if (IS_NODE) {
    try {
      return globalThis.process.getBuiltinModule(name);
    } catch (error) { /* empty */ }
    try {
      // eslint-disable-next-line no-new-func -- safe
      return Function('return require("' + name + '")')();
    } catch (error) { /* empty */ }
  }
};


/***/ }),

/***/ 5091:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {


var globalThis = __webpack_require__(4127);

module.exports = function (CONSTRUCTOR, METHOD) {
  var Constructor = globalThis[CONSTRUCTOR];
  var Prototype = Constructor && Constructor.prototype;
  return Prototype && Prototype[METHOD];
};


/***/ }),

/***/ 878:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {


var globalThis = __webpack_require__(4127);
var isCallable = __webpack_require__(8794);

var aFunction = function (argument) {
  return isCallable(argument) ? argument : undefined;
};

module.exports = function (namespace, method) {
  return arguments.length < 2 ? aFunction(globalThis[namespace]) : globalThis[namespace] && globalThis[namespace][method];
};


/***/ }),

/***/ 9060:
/***/ ((module) => {


// `GetIteratorDirect(obj)` abstract operation
// https://tc39.es/ecma262/#sec-getiteratordirect
module.exports = function (obj) {
  return {
    iterator: obj,
    next: obj.next,
    done: false
  };
};


/***/ }),

/***/ 1935:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {


var call = __webpack_require__(5418);
var anObject = __webpack_require__(4464);
var getIteratorDirect = __webpack_require__(9060);
var getIteratorMethod = __webpack_require__(4188);

module.exports = function (obj, stringHandling) {
  if (!stringHandling || typeof obj !== 'string') anObject(obj);
  var method = getIteratorMethod(obj);
  return getIteratorDirect(anObject(method !== undefined ? call(method, obj) : obj));
};


/***/ }),

/***/ 2248:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {


var call = __webpack_require__(5418);
var isCallable = __webpack_require__(8794);
var anObject = __webpack_require__(4464);
var tryToString = __webpack_require__(2272);
var getIteratorMethod = __webpack_require__(4188);

var $TypeError = TypeError;

module.exports = function (argument, usingIterator) {
  var iteratorMethod = arguments.length < 2 ? getIteratorMethod(argument) : usingIterator;
  if (isCallable(iteratorMethod)) return anObject(call(iteratorMethod, argument));
  throw new $TypeError(tryToString(argument) + ' is not iterable');
};


/***/ }),

/***/ 4188:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {


var classof = __webpack_require__(2911);
var isNullOrUndefined = __webpack_require__(3600);
var getMethod = __webpack_require__(4215);
var wellKnownSymbol = __webpack_require__(7080);

var ITERATOR = wellKnownSymbol('iterator');
var ArrayPrototype = Array.prototype;

module.exports = function (it) {
  if (!isNullOrUndefined(it)) return getMethod(it, ITERATOR)
    || getMethod(it, '@@iterator')
    || (classof(it) === 'Arguments' ? ArrayPrototype[ITERATOR] : undefined);
};


/***/ }),

/***/ 4215:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {


var aCallable = __webpack_require__(6927);
var isNullOrUndefined = __webpack_require__(3600);

// `GetMethod` abstract operation
// https://tc39.es/ecma262/#sec-getmethod
module.exports = function (V, P) {
  var func = V[P];
  return isNullOrUndefined(func) ? undefined : aCallable(func);
};


/***/ }),

/***/ 1052:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {


var aCallable = __webpack_require__(6927);
var anObject = __webpack_require__(4464);
var call = __webpack_require__(5418);
var toIntegerOrInfinity = __webpack_require__(1402);
var getIteratorDirect = __webpack_require__(9060);

var INVALID_SIZE = 'Invalid size';
var $RangeError = RangeError;
var $TypeError = TypeError;
var max = Math.max;

var SetRecord = function (set, intSize) {
  this.set = set;
  this.size = max(intSize, 0);
  this.has = aCallable(set.has);
  this.keys = aCallable(set.keys);
};

SetRecord.prototype = {
  getIterator: function () {
    return getIteratorDirect(anObject(call(this.keys, this.set)));
  },
  includes: function (it) {
    return call(this.has, this.set, it);
  }
};

// `GetSetRecord` abstract operation
// https://tc39.es/proposal-set-methods/#sec-getsetrecord
module.exports = function (obj) {
  anObject(obj);
  var numSize = +obj.size;
  // NOTE: If size is undefined, then numSize will be NaN
  // eslint-disable-next-line no-self-compare -- NaN check
  if (numSize !== numSize) throw new $TypeError(INVALID_SIZE);
  var intSize = toIntegerOrInfinity(numSize);
  if (intSize < 0) throw new $RangeError(INVALID_SIZE);
  return new SetRecord(obj, intSize);
};


/***/ }),

/***/ 4391:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {


var uncurryThis = __webpack_require__(3027);
var toObject = __webpack_require__(6674);

var floor = Math.floor;
var charAt = uncurryThis(''.charAt);
var replace = uncurryThis(''.replace);
var stringSlice = uncurryThis(''.slice);
// eslint-disable-next-line redos/no-vulnerable -- safe
var SUBSTITUTION_SYMBOLS = /\$([$&'`]|\d{1,2}|<[^>]*>)/g;
var SUBSTITUTION_SYMBOLS_NO_NAMED = /\$([$&'`]|\d{1,2})/g;

// `GetSubstitution` abstract operation
// https://tc39.es/ecma262/#sec-getsubstitution
module.exports = function (matched, str, position, captures, namedCaptures, replacement) {
  var tailPos = position + matched.length;
  var m = captures.length;
  var symbols = SUBSTITUTION_SYMBOLS_NO_NAMED;
  if (namedCaptures !== undefined) {
    namedCaptures = toObject(namedCaptures);
    symbols = SUBSTITUTION_SYMBOLS;
  }
  return replace(replacement, symbols, function (match, ch) {
    var capture;
    switch (charAt(ch, 0)) {
      case '$': return '$';
      case '&': return matched;
      case '`': return stringSlice(str, 0, position);
      case "'": return stringSlice(str, tailPos);
      case '<':
        capture = namedCaptures[stringSlice(ch, 1, -1)];
        break;
      default: // \d\d?
        var n = +ch;
        if (n === 0) return match;
        if (n > m) {
          var f = floor(n / 10);
          if (f === 0) return match;
          if (f <= m) return captures[f - 1] === undefined ? charAt(ch, 1) : captures[f - 1] + charAt(ch, 1);
          return match;
        }
        capture = captures[n - 1];
    }
    return capture === undefined ? '' : capture;
  });
};


/***/ }),

/***/ 4127:
/***/ (function(module, __unused_webpack_exports, __webpack_require__) {


var check = function (it) {
  return it && it.Math === Math && it;
};

// https://github.com/zloirock/core-js/issues/86#issuecomment-115759028
module.exports =
  // eslint-disable-next-line es/no-global-this -- safe
  check(typeof globalThis == 'object' && globalThis) ||
  check(typeof window == 'object' && window) ||
  // eslint-disable-next-line no-restricted-globals -- safe
  check(typeof self == 'object' && self) ||
  check(typeof __webpack_require__.g == 'object' && __webpack_require__.g) ||
  check(typeof this == 'object' && this) ||
  // eslint-disable-next-line no-new-func -- fallback
  (function () { return this; })() || Function('return this')();


/***/ }),

/***/ 1324:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {


var uncurryThis = __webpack_require__(3027);
var toObject = __webpack_require__(6674);

var hasOwnProperty = uncurryThis({}.hasOwnProperty);

// `HasOwnProperty` abstract operation
// https://tc39.es/ecma262/#sec-hasownproperty
// eslint-disable-next-line es/no-object-hasown -- safe
module.exports = Object.hasOwn || function hasOwn(it, key) {
  return hasOwnProperty(toObject(it), key);
};


/***/ }),

/***/ 5730:
/***/ ((module) => {


module.exports = {};


/***/ }),

/***/ 8352:
/***/ ((module) => {


module.exports = function (a, b) {
  try {
    // eslint-disable-next-line no-console -- safe
    arguments.length === 1 ? console.error(a) : console.error(a, b);
  } catch (error) { /* empty */ }
};


/***/ }),

/***/ 48:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {


var getBuiltIn = __webpack_require__(878);

module.exports = getBuiltIn('document', 'documentElement');


/***/ }),

/***/ 3696:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {


var DESCRIPTORS = __webpack_require__(1175);
var fails = __webpack_require__(4892);
var createElement = __webpack_require__(8752);

// Thanks to IE8 for its funny defineProperty
module.exports = !DESCRIPTORS && !fails(function () {
  // eslint-disable-next-line es/no-object-defineproperty -- required for testing
  return Object.defineProperty(createElement('div'), 'a', {
    get: function () { return 7; }
  }).a !== 7;
});


/***/ }),

/***/ 7077:
/***/ ((module) => {


// IEEE754 conversions based on https://github.com/feross/ieee754
var $Array = Array;
var abs = Math.abs;
var pow = Math.pow;
var floor = Math.floor;
var log = Math.log;
var LN2 = Math.LN2;

var pack = function (number, mantissaLength, bytes) {
  var buffer = $Array(bytes);
  var exponentLength = bytes * 8 - mantissaLength - 1;
  var eMax = (1 << exponentLength) - 1;
  var eBias = eMax >> 1;
  var rt = mantissaLength === 23 ? pow(2, -24) - pow(2, -77) : 0;
  var sign = number < 0 || number === 0 && 1 / number < 0 ? 1 : 0;
  var index = 0;
  var exponent, mantissa, c;
  number = abs(number);
  // eslint-disable-next-line no-self-compare -- NaN check
  if (number !== number || number === Infinity) {
    // eslint-disable-next-line no-self-compare -- NaN check
    mantissa = number !== number ? 1 : 0;
    exponent = eMax;
  } else {
    exponent = floor(log(number) / LN2);
    c = pow(2, -exponent);
    if (number * c < 1) {
      exponent--;
      c *= 2;
    }
    if (exponent + eBias >= 1) {
      number += rt / c;
    } else {
      number += rt * pow(2, 1 - eBias);
    }
    if (number * c >= 2) {
      exponent++;
      c /= 2;
    }
    if (exponent + eBias >= eMax) {
      mantissa = 0;
      exponent = eMax;
    } else if (exponent + eBias >= 1) {
      mantissa = (number * c - 1) * pow(2, mantissaLength);
      exponent += eBias;
    } else {
      mantissa = number * pow(2, eBias - 1) * pow(2, mantissaLength);
      exponent = 0;
    }
  }
  while (mantissaLength >= 8) {
    buffer[index++] = mantissa & 255;
    mantissa /= 256;
    mantissaLength -= 8;
  }
  exponent = exponent << mantissaLength | mantissa;
  exponentLength += mantissaLength;
  while (exponentLength > 0) {
    buffer[index++] = exponent & 255;
    exponent /= 256;
    exponentLength -= 8;
  }
  buffer[index - 1] |= sign * 128;
  return buffer;
};

var unpack = function (buffer, mantissaLength) {
  var bytes = buffer.length;
  var exponentLength = bytes * 8 - mantissaLength - 1;
  var eMax = (1 << exponentLength) - 1;
  var eBias = eMax >> 1;
  var nBits = exponentLength - 7;
  var index = bytes - 1;
  var sign = buffer[index--];
  var exponent = sign & 127;
  var mantissa;
  sign >>= 7;
  while (nBits > 0) {
    exponent = exponent * 256 + buffer[index--];
    nBits -= 8;
  }
  mantissa = exponent & (1 << -nBits) - 1;
  exponent >>= -nBits;
  nBits += mantissaLength;
  while (nBits > 0) {
    mantissa = mantissa * 256 + buffer[index--];
    nBits -= 8;
  }
  if (exponent === 0) {
    exponent = 1 - eBias;
  } else if (exponent === eMax) {
    return mantissa ? NaN : sign ? -Infinity : Infinity;
  } else {
    mantissa += pow(2, mantissaLength);
    exponent -= eBias;
  } return (sign ? -1 : 1) * mantissa * pow(2, exponent - mantissaLength);
};

module.exports = {
  pack: pack,
  unpack: unpack
};


/***/ }),

/***/ 2466:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {


var uncurryThis = __webpack_require__(3027);
var fails = __webpack_require__(4892);
var classof = __webpack_require__(2911);

var $Object = Object;
var split = uncurryThis(''.split);

// fallback for non-array-like ES3 and non-enumerable old V8 strings
module.exports = fails(function () {
  // throws an error in rhino, see https://github.com/mozilla/rhino/issues/346
  // eslint-disable-next-line no-prototype-builtins -- safe
  return !$Object('z').propertyIsEnumerable(0);
}) ? function (it) {
  return classof(it) === 'String' ? split(it, '') : $Object(it);
} : $Object;


/***/ }),

/***/ 6388:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {


var isCallable = __webpack_require__(8794);
var isObject = __webpack_require__(8861);
var setPrototypeOf = __webpack_require__(4792);

// makes subclassing work correct for wrapped built-ins
module.exports = function ($this, dummy, Wrapper) {
  var NewTarget, NewTargetPrototype;
  if (
    // it can work only with native `setPrototypeOf`
    setPrototypeOf &&
    // we haven't completely correct pre-ES6 way for getting `new.target`, so use this
    isCallable(NewTarget = dummy.constructor) &&
    NewTarget !== Wrapper &&
    isObject(NewTargetPrototype = NewTarget.prototype) &&
    NewTargetPrototype !== Wrapper.prototype
  ) setPrototypeOf($this, NewTargetPrototype);
  return $this;
};


/***/ }),

/***/ 3335:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {


var uncurryThis = __webpack_require__(3027);
var isCallable = __webpack_require__(8794);
var store = __webpack_require__(352);

var functionToString = uncurryThis(Function.toString);

// this helper broken in `[email protected]`, so we can't use `shared` helper
if (!isCallable(store.inspectSource)) {
  store.inspectSource = function (it) {
    return functionToString(it);
  };
}

module.exports = store.inspectSource;


/***/ }),

/***/ 7563:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {


var isObject = __webpack_require__(8861);
var createNonEnumerableProperty = __webpack_require__(298);

// `InstallErrorCause` abstract operation
// https://tc39.es/ecma262/#sec-installerrorcause
module.exports = function (O, options) {
  if (isObject(options) && 'cause' in options) {
    createNonEnumerableProperty(O, 'cause', options.cause);
  }
};


/***/ }),

/***/ 268:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {


var $ = __webpack_require__(1187);
var uncurryThis = __webpack_require__(3027);
var hiddenKeys = __webpack_require__(5730);
var isObject = __webpack_require__(8861);
var hasOwn = __webpack_require__(1324);
var defineProperty = (__webpack_require__(9100).f);
var getOwnPropertyNamesModule = __webpack_require__(8331);
var getOwnPropertyNamesExternalModule = __webpack_require__(6508);
var isExtensible = __webpack_require__(141);
var uid = __webpack_require__(3699);
var FREEZING = __webpack_require__(1217);

var REQUIRED = false;
var METADATA = uid('meta');
var id = 0;

var setMetadata = function (it) {
  defineProperty(it, METADATA, { value: {
    objectID: 'O' + id++, // object ID
    weakData: {}          // weak collections IDs
  } });
};

var fastKey = function (it, create) {
  // return a primitive with prefix
  if (!isObject(it)) return typeof it == 'symbol' ? it : (typeof it == 'string' ? 'S' : 'P') + it;
  if (!hasOwn(it, METADATA)) {
    // can't set metadata to uncaught frozen object
    if (!isExtensible(it)) return 'F';
    // not necessary to add metadata
    if (!create) return 'E';
    // add missing metadata
    setMetadata(it);
  // return object ID
  } return it[METADATA].objectID;
};

var getWeakData = function (it, create) {
  if (!hasOwn(it, METADATA)) {
    // can't set metadata to uncaught frozen object
    if (!isExtensible(it)) return true;
    // not necessary to add metadata
    if (!create) return false;
    // add missing metadata
    setMetadata(it);
  // return the store of weak collections IDs
  } return it[METADATA].weakData;
};

// add metadata on freeze-family methods calling
var onFreeze = function (it) {
  if (FREEZING && REQUIRED && isExtensible(it) && !hasOwn(it, METADATA)) setMetadata(it);
  return it;
};

var enable = function () {
  meta.enable = function () { /* empty */ };
  REQUIRED = true;
  var getOwnPropertyNames = getOwnPropertyNamesModule.f;
  var splice = uncurryThis([].splice);
  var test = {};
  // eslint-disable-next-line unicorn/no-immediate-mutation -- ES3 syntax limitation
  test[METADATA] = 1;

  // prevent exposing of metadata key
  if (getOwnPropertyNames(test).length) {
    getOwnPropertyNamesModule.f = function (it) {
      var result = getOwnPropertyNames(it);
      for (var i = 0, length = result.length; i < length; i++) {
        if (result[i] === METADATA) {
          splice(result, i, 1);
          break;
        }
      } return result;
    };

    $({ target: 'Object', stat: true, forced: true }, {
      getOwnPropertyNames: getOwnPropertyNamesExternalModule.f
    });
  }
};

var meta = module.exports = {
  enable: enable,
  fastKey: fastKey,
  getWeakData: getWeakData,
  onFreeze: onFreeze
};

hiddenKeys[METADATA] = true;


/***/ }),

/***/ 4852:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {


var NATIVE_WEAK_MAP = __webpack_require__(567);
var globalThis = __webpack_require__(4127);
var isObject = __webpack_require__(8861);
var createNonEnumerableProperty = __webpack_require__(298);
var hasOwn = __webpack_require__(1324);
var shared = __webpack_require__(352);
var sharedKey = __webpack_require__(9690);
var hiddenKeys = __webpack_require__(5730);

var OBJECT_ALREADY_INITIALIZED = 'Object already initialized';
var TypeError = globalThis.TypeError;
var WeakMap = globalThis.WeakMap;
var set, get, has;

var enforce = function (it) {
  return has(it) ? get(it) : set(it, {});
};

var getterFor = function (TYPE) {
  return function (it) {
    var state;
    if (!isObject(it) || (state = get(it)).type !== TYPE) {
      throw new TypeError('Incompatible receiver, ' + TYPE + ' required');
    } return state;
  };
};

if (NATIVE_WEAK_MAP || shared.state) {
  var store = shared.state || (shared.state = new WeakMap());
  /* eslint-disable no-self-assign -- prototype methods protection */
  store.get = store.get;
  store.has = store.has;
  store.set = store.set;
  /* eslint-enable no-self-assign -- prototype methods protection */
  set = function (it, metadata) {
    if (store.has(it)) throw new TypeError(OBJECT_ALREADY_INITIALIZED);
    metadata.facade = it;
    store.set(it, metadata);
    return metadata;
  };
  get = function (it) {
    return store.get(it) || {};
  };
  has = function (it) {
    return store.has(it);
  };
} else {
  var STATE = sharedKey('state');
  hiddenKeys[STATE] = true;
  set = function (it, metadata) {
    if (hasOwn(it, STATE)) throw new TypeError(OBJECT_ALREADY_INITIALIZED);
    metadata.facade = it;
    createNonEnumerableProperty(it, STATE, metadata);
    return metadata;
  };
  get = function (it) {
    return hasOwn(it, STATE) ? it[STATE] : {};
  };
  has = function (it) {
    return hasOwn(it, STATE);
  };
}

module.exports = {
  set: set,
  get: get,
  has: has,
  enforce: enforce,
  getterFor: getterFor
};


/***/ }),

/***/ 4916:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {


var wellKnownSymbol = __webpack_require__(7080);
var Iterators = __webpack_require__(510);

var ITERATOR = wellKnownSymbol('iterator');
var ArrayPrototype = Array.prototype;

// check on default Array iterator
module.exports = function (it) {
  return it !== undefined && (Iterators.Array === it || ArrayPrototype[ITERATOR] === it);
};


/***/ }),

/***/ 2001:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {


var classof = __webpack_require__(2911);

// `IsArray` abstract operation
// https://tc39.es/ecma262/#sec-isarray
// eslint-disable-next-line es/no-array-isarray -- safe
module.exports = Array.isArray || function isArray(argument) {
  return classof(argument) === 'Array';
};


/***/ }),

/***/ 4830:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {


var classof = __webpack_require__(7964);

module.exports = function (it) {
  var klass = classof(it);
  return klass === 'BigInt64Array' || klass === 'BigUint64Array';
};


/***/ }),

/***/ 8794:
/***/ ((module) => {


// https://tc39.es/ecma262/#sec-IsHTMLDDA-internal-slot
var documentAll = typeof document == 'object' && document.all;

// `IsCallable` abstract operation
// https://tc39.es/ecma262/#sec-iscallable
// eslint-disable-next-line unicorn/no-typeof-undefined -- required for testing
module.exports = typeof documentAll == 'undefined' && documentAll !== undefined ? function (argument) {
  return typeof argument == 'function' || argument === documentAll;
} : function (argument) {
  return typeof argument == 'function';
};


/***/ }),

/***/ 7036:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {


var uncurryThis = __webpack_require__(3027);
var fails = __webpack_require__(4892);
var isCallable = __webpack_require__(8794);
var classof = __webpack_require__(7964);
var getBuiltIn = __webpack_require__(878);
var inspectSource = __webpack_require__(3335);

var noop = function () { /* empty */ };
var construct = getBuiltIn('Reflect', 'construct');
var constructorRegExp = /^\s*(?:class|function)\b/;
var exec = uncurryThis(constructorRegExp.exec);
var INCORRECT_TO_STRING = !constructorRegExp.test(noop);

var isConstructorModern = function isConstructor(argument) {
  if (!isCallable(argument)) return false;
  try {
    construct(noop, [], argument);
    return true;
  } catch (error) {
    return false;
  }
};

var isConstructorLegacy = function isConstructor(argument) {
  if (!isCallable(argument)) return false;
  switch (classof(argument)) {
    case 'AsyncFunction':
    case 'GeneratorFunction':
    case 'AsyncGeneratorFunction': return false;
  }
  try {
    // we can't check .prototype since constructors produced by .bind haven't it
    // `Function#toString` throws on some built-it function in some legacy engines
    // (for example, `DOMQuad` and similar in FF41-)
    return INCORRECT_TO_STRING || !!exec(constructorRegExp, inspectSource(argument));
  } catch (error) {
    return true;
  }
};

isConstructorLegacy.sham = true;

// `IsConstructor` abstract operation
// https://tc39.es/ecma262/#sec-isconstructor
module.exports = !construct || fails(function () {
  var called;
  return isConstructorModern(isConstructorModern.call)
    || !isConstructorModern(Object)
    || !isConstructorModern(function () { called = true; })
    || called;
}) ? isConstructorLegacy : isConstructorModern;


/***/ }),

/***/ 1370:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {


var hasOwn = __webpack_require__(1324);

module.exports = function (descriptor) {
  return descriptor !== undefined && (hasOwn(descriptor, 'value') || hasOwn(descriptor, 'writable'));
};


/***/ }),

/***/ 7191:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {


var fails = __webpack_require__(4892);
var isCallable = __webpack_require__(8794);

var replacement = /#|\.prototype\./;

var isForced = function (feature, detection) {
  var value = data[normalize(feature)];
  return value === POLYFILL ? true
    : value === NATIVE ? false
    : isCallable(detection) ? fails(detection)
    : !!detection;
};

var normalize = isForced.normalize = function (string) {
  return String(string).replace(replacement, '.').toLowerCase();
};

var data = isForced.data = {};
var NATIVE = isForced.NATIVE = 'N';
var POLYFILL = isForced.POLYFILL = 'P';

module.exports = isForced;


/***/ }),

/***/ 4922:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {


var isObject = __webpack_require__(8861);

var floor = Math.floor;

// `IsIntegralNumber` abstract operation
// https://tc39.es/ecma262/#sec-isintegralnumber
// eslint-disable-next-line es/no-number-isinteger -- safe
module.exports = Number.isInteger || function isInteger(it) {
  return !isObject(it) && isFinite(it) && floor(it) === it;
};


/***/ }),

/***/ 3600:
/***/ ((module) => {


// we can't use just `it == null` since of `document.all` special case
// https://tc39.es/ecma262/#sec-IsHTMLDDA-internal-slot-aec
module.exports = function (it) {
  return it === null || it === undefined;
};


/***/ }),

/***/ 8861:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {


var isCallable = __webpack_require__(8794);

module.exports = function (it) {
  return typeof it == 'object' ? it !== null : isCallable(it);
};


/***/ }),

/***/ 658:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {


var isObject = __webpack_require__(8861);

module.exports = function (argument) {
  return isObject(argument) || argument === null;
};


/***/ }),

/***/ 4400:
/***/ ((module) => {


module.exports = false;


/***/ }),

/***/ 3606:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {


var isObject = __webpack_require__(8861);
var getInternalState = (__webpack_require__(4852).get);

module.exports = function isRawJSON(O) {
  if (!isObject(O)) return false;
  var state = getInternalState(O);
  return !!state && state.type === 'RawJSON';
};


/***/ }),

/***/ 3815:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {


var isObject = __webpack_require__(8861);
var classof = __webpack_require__(2911);
var wellKnownSymbol = __webpack_require__(7080);

var MATCH = wellKnownSymbol('match');

// `IsRegExp` abstract operation
// https://tc39.es/ecma262/#sec-isregexp
module.exports = function (it) {
  var isRegExp;
  return isObject(it) && ((isRegExp = it[MATCH]) !== undefined ? !!isRegExp : classof(it) === 'RegExp');
};


/***/ }),

/***/ 1898:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {


var getBuiltIn = __webpack_require__(878);
var isCallable = __webpack_require__(8794);
var isPrototypeOf = __webpack_require__(1688);
var USE_SYMBOL_AS_UID = __webpack_require__(535);

var $Object = Object;

module.exports = USE_SYMBOL_AS_UID ? function (it) {
  return typeof it == 'symbol';
} : function (it) {
  var $Symbol = getBuiltIn('Symbol');
  return isCallable($Symbol) && isPrototypeOf($Symbol.prototype, $Object(it));
};


/***/ }),

/***/ 7118:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {


var call = __webpack_require__(5418);

module.exports = function (record, fn, ITERATOR_INSTEAD_OF_RECORD) {
  var iterator = ITERATOR_INSTEAD_OF_RECORD ? record : record.iterator;
  var next = record.next;
  var step, result;
  while (!(step = call(next, iterator)).done) {
    result = fn(step.value);
    if (result !== undefined) return result;
  }
};


/***/ }),

/***/ 2711:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {


var bind = __webpack_require__(1079);
var call = __webpack_require__(5418);
var anObject = __webpack_require__(4464);
var tryToString = __webpack_require__(2272);
var isArrayIteratorMethod = __webpack_require__(4916);
var lengthOfArrayLike = __webpack_require__(5807);
var isPrototypeOf = __webpack_require__(1688);
var getIterator = __webpack_require__(2248);
var getIteratorMethod = __webpack_require__(4188);
var iteratorClose = __webpack_require__(4090);

var $TypeError = TypeError;

var Result = function (stopped, result) {
  this.stopped = stopped;
  this.result = result;
};

var ResultPrototype = Result.prototype;

module.exports = function (iterable, unboundFunction, options) {
  var that = options && options.that;
  var AS_ENTRIES = !!(options && options.AS_ENTRIES);
  var IS_RECORD = !!(options && options.IS_RECORD);
  var IS_ITERATOR = !!(options && options.IS_ITERATOR);
  var INTERRUPTED = !!(options && options.INTERRUPTED);
  var fn = bind(unboundFunction, that);
  var iterator, iterFn, index, length, result, next, step;

  var stop = function (condition) {
    var $iterator = iterator;
    iterator = undefined;
    if ($iterator) iteratorClose($iterator, 'normal');
    return new Result(true, condition);
  };

  var callFn = function (value) {
    if (AS_ENTRIES) {
      anObject(value);
      return INTERRUPTED ? fn(value[0], value[1], stop) : fn(value[0], value[1]);
    } return INTERRUPTED ? fn(value, stop) : fn(value);
  };

  if (IS_RECORD) {
    iterator = iterable.iterator;
  } else if (IS_ITERATOR) {
    iterator = iterable;
  } else {
    iterFn = getIteratorMethod(iterable);
    if (!iterFn) throw new $TypeError(tryToString(iterable) + ' is not iterable');
    // optimisation for array iterators
    if (isArrayIteratorMethod(iterFn)) {
      for (index = 0, length = lengthOfArrayLike(iterable); length > index; index++) {
        result = callFn(iterable[index]);
        if (result && isPrototypeOf(ResultPrototype, result)) return result;
      } return new Result(false);
    }
    iterator = getIterator(iterable, iterFn);
  }

  next = IS_RECORD ? iterable.next : iterator.next;
  while (!(step = call(next, iterator)).done) {
    // `IteratorValue` errors should propagate without closing the iterator
    var value = step.value;
    try {
      result = callFn(value);
    } catch (error) {
      if (iterator) iteratorClose(iterator, 'throw', error);
      else throw error;
    }
    if (typeof result == 'object' && result && isPrototypeOf(ResultPrototype, result)) return result;
  } return new Result(false);
};


/***/ }),

/***/ 4430:
/***/ ((module) => {


// release references held by exhausted / closed iterator helpers to allow GC of the source chain
module.exports = function (state) {
  state.iterator = state.next = state.nextHandler = state.mapper = state.predicate = state.inner =
    state.iterables = state.iters = state.openIters = state.padding = state.finishResults = state.buffer = null;
};


/***/ }),

/***/ 8772:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {


var iteratorClose = __webpack_require__(4090);

module.exports = function (iters, kind, value) {
  for (var i = iters.length - 1; i >= 0; i--) {
    if (iters[i] === undefined) continue;
    try {
      value = iteratorClose(iters[i].iterator, kind, value);
    } catch (error) {
      kind = 'throw';
      value = error;
    }
  }
  if (kind === 'throw') throw value;
  return value;
};


/***/ }),

/***/ 4090:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {


var call = __webpack_require__(5418);
var anObject = __webpack_require__(4464);
var getMethod = __webpack_require__(4215);

module.exports = function (iterator, kind, value) {
  var innerResult, innerError;
  anObject(iterator);
  try {
    innerResult = getMethod(iterator, 'return');
    if (!innerResult) {
      if (kind === 'throw') throw value;
      return value;
    }
    innerResult = call(innerResult, iterator);
  } catch (error) {
    innerError = true;
    innerResult = error;
  }
  if (kind === 'throw') throw value;
  if (innerError) throw innerResult;
  anObject(innerResult);
  return value;
};


/***/ }),

/***/ 3565:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {


var IteratorPrototype = (__webpack_require__(2636).IteratorPrototype);
var create = __webpack_require__(475);
var createPropertyDescriptor = __webpack_require__(1513);
var setToStringTag = __webpack_require__(4360);
var Iterators = __webpack_require__(510);

var returnThis = function () { return this; };

module.exports = function (IteratorConstructor, NAME, next, ENUMERABLE_NEXT) {
  var TO_STRING_TAG = NAME + ' Iterator';
  IteratorConstructor.prototype = create(IteratorPrototype, { next: createPropertyDescriptor(+!ENUMERABLE_NEXT, next) });
  setToStringTag(IteratorConstructor, TO_STRING_TAG, false, true);
  Iterators[TO_STRING_TAG] = returnThis;
  return IteratorConstructor;
};


/***/ }),

/***/ 5521:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {


var call = __webpack_require__(5418);
var create = __webpack_require__(475);
var createNonEnumerableProperty = __webpack_require__(298);
var defineBuiltIns = __webpack_require__(8498);
var wellKnownSymbol = __webpack_require__(7080);
var InternalStateModule = __webpack_require__(4852);
var getMethod = __webpack_require__(4215);
var IteratorPrototype = (__webpack_require__(2636).IteratorPrototype);
var createIterResultObject = __webpack_require__(9566);
var iteratorClose = __webpack_require__(4090);
var iteratorCloseAll = __webpack_require__(8772);
var cleanupState = __webpack_require__(4430);

var TO_STRING_TAG = wellKnownSymbol('toStringTag');
var ITERATOR_HELPER = 'IteratorHelper';
var WRAP_FOR_VALID_ITERATOR = 'WrapForValidIterator';
var NORMAL = 'normal';
var THROW = 'throw';
var setInternalState = InternalStateModule.set;

var createIteratorProxyPrototype = function (IS_ITERATOR) {
  var getInternalState = InternalStateModule.getterFor(IS_ITERATOR ? WRAP_FOR_VALID_ITERATOR : ITERATOR_HELPER);

  return defineBuiltIns(create(IteratorPrototype), {
    next: function next() {
      var state = getInternalState(this);
      // for simplification:
      //   for `%WrapForValidIteratorPrototype%.next` or with `state.returnHandlerResult` our `nextHandler` returns `IterResultObject`
      //   for `%IteratorHelperPrototype%.next` - just a value
      if (IS_ITERATOR) return state.nextHandler();
      if (state.done) return createIterResultObject(undefined, true);
      try {
        var result = state.nextHandler();
        if (state.done) cleanupState(state);
        return state.returnHandlerResult ? result : createIterResultObject(result, state.done);
      } catch (error) {
        state.done = true;
        cleanupState(state);
        throw error;
      }
    },
    'return': function () {
      var state = getInternalState(this);
      var iterator = state.iterator;
      var inner = state.inner;
      var openIters = state.openIters;
      var done = state.done;
      state.done = true;
      if (IS_ITERATOR) {
        var returnMethod = getMethod(iterator, 'return');
        return returnMethod ? call(returnMethod, iterator) : createIterResultObject(undefined, true);
      }
      cleanupState(state);
      if (done) return createIterResultObject(undefined, true);
      if (inner) try {
        iteratorClose(inner.iterator, NORMAL);
      } catch (error) {
        return iteratorClose(iterator, THROW, error);
      }
      if (openIters) try {
        iteratorCloseAll(openIters, NORMAL);
      } catch (error) {
        if (iterator) return iteratorClose(iterator, THROW, error);
        throw error;
      }
      if (iterator) iteratorClose(iterator, NORMAL);
      return createIterResultObject(undefined, true);
    }
  });
};

var WrapForValidIteratorPrototype = createIteratorProxyPrototype(true);
var IteratorHelperPrototype = createIteratorProxyPrototype(false);

createNonEnumerableProperty(IteratorHelperPrototype, TO_STRING_TAG, 'Iterator Helper');

module.exports = function (nextHandler, IS_ITERATOR, RETURN_HANDLER_RESULT) {
  var IteratorProxy = function Iterator(record, state) {
    if (state) {
      state.iterator = record.iterator;
      state.next = record.next;
    } else state = record;
    state.type = IS_ITERATOR ? WRAP_FOR_VALID_ITERATOR : ITERATOR_HELPER;
    state.returnHandlerResult = !!RETURN_HANDLER_RESULT;
    state.nextHandler = nextHandler;
    state.counter = 0;
    state.done = false;
    setInternalState(this, state);
  };

  IteratorProxy.prototype = IS_ITERATOR ? WrapForValidIteratorPrototype : IteratorHelperPrototype;

  return IteratorProxy;
};


/***/ }),

/***/ 3943:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {


var $ = __webpack_require__(1187);
var call = __webpack_require__(5418);
var IS_PURE = __webpack_require__(4400);
var FunctionName = __webpack_require__(6993);
var isCallable = __webpack_require__(8794);
var createIteratorConstructor = __webpack_require__(3565);
var getPrototypeOf = __webpack_require__(6068);
var setPrototypeOf = __webpack_require__(4792);
var setToStringTag = __webpack_require__(4360);
var createNonEnumerableProperty = __webpack_require__(298);
var defineBuiltIn = __webpack_require__(7255);
var wellKnownSymbol = __webpack_require__(7080);
var Iterators = __webpack_require__(510);
var IteratorsCore = __webpack_require__(2636);

var PROPER_FUNCTION_NAME = FunctionName.PROPER;
var CONFIGURABLE_FUNCTION_NAME = FunctionName.CONFIGURABLE;
var IteratorPrototype = IteratorsCore.IteratorPrototype;
var BUGGY_SAFARI_ITERATORS = IteratorsCore.BUGGY_SAFARI_ITERATORS;
var ITERATOR = wellKnownSymbol('iterator');
var KEYS = 'keys';
var VALUES = 'values';
var ENTRIES = 'entries';

var returnThis = function () { return this; };

module.exports = function (Iterable, NAME, IteratorConstructor, next, DEFAULT, IS_SET, FORCED) {
  createIteratorConstructor(IteratorConstructor, NAME, next);

  var getIterationMethod = function (KIND) {
    if (KIND === DEFAULT && defaultIterator) return defaultIterator;
    if (!BUGGY_SAFARI_ITERATORS && KIND && KIND in IterablePrototype) return IterablePrototype[KIND];

    switch (KIND) {
      case KEYS: return function keys() { return new IteratorConstructor(this, KIND); };
      case VALUES: return function values() { return new IteratorConstructor(this, KIND); };
      case ENTRIES: return function entries() { return new IteratorConstructor(this, KIND); };
    }

    return function () { return new IteratorConstructor(this); };
  };

  var TO_STRING_TAG = NAME + ' Iterator';
  var INCORRECT_VALUES_NAME = false;
  var IterablePrototype = Iterable.prototype;
  var nativeIterator = IterablePrototype[ITERATOR]
    || IterablePrototype['@@iterator']
    || DEFAULT && IterablePrototype[DEFAULT];
  var defaultIterator = !BUGGY_SAFARI_ITERATORS && nativeIterator || getIterationMethod(DEFAULT);
  var anyNativeIterator = NAME === 'Array' ? IterablePrototype.entries || nativeIterator : nativeIterator;
  var CurrentIteratorPrototype, methods, KEY;

  // fix native
  if (anyNativeIterator) {
    CurrentIteratorPrototype = getPrototypeOf(anyNativeIterator.call(new Iterable()));
    if (CurrentIteratorPrototype !== Object.prototype && CurrentIteratorPrototype.next) {
      if (!IS_PURE && getPrototypeOf(CurrentIteratorPrototype) !== IteratorPrototype) {
        if (setPrototypeOf) {
          setPrototypeOf(CurrentIteratorPrototype, IteratorPrototype);
        } else if (!isCallable(CurrentIteratorPrototype[ITERATOR])) {
          defineBuiltIn(CurrentIteratorPrototype, ITERATOR, returnThis);
        }
      }
      // Set @@toStringTag to native iterators
      setToStringTag(CurrentIteratorPrototype, TO_STRING_TAG, true, true);
      if (IS_PURE) Iterators[TO_STRING_TAG] = returnThis;
    }
  }

  // fix Array.prototype.{ values, @@iterator }.name in V8 / FF
  if (PROPER_FUNCTION_NAME && DEFAULT === VALUES && nativeIterator && nativeIterator.name !== VALUES) {
    if (!IS_PURE && CONFIGURABLE_FUNCTION_NAME) {
      createNonEnumerableProperty(IterablePrototype, 'name', VALUES);
    } else {
      INCORRECT_VALUES_NAME = true;
      defaultIterator = function values() { return call(nativeIterator, this); };
    }
  }

  // export additional methods
  if (DEFAULT) {
    methods = {
      values: getIterationMethod(VALUES),
      keys: IS_SET ? defaultIterator : getIterationMethod(KEYS),
      entries: getIterationMethod(ENTRIES)
    };
    if (FORCED) for (KEY in methods) {
      if (BUGGY_SAFARI_ITERATORS || INCORRECT_VALUES_NAME || !(KEY in IterablePrototype)) {
        defineBuiltIn(IterablePrototype, KEY, methods[KEY]);
      }
    } else $({ target: NAME, proto: true, forced: BUGGY_SAFARI_ITERATORS || INCORRECT_VALUES_NAME }, methods);
  }

  // define iterator
  if ((!IS_PURE || FORCED) && IterablePrototype[ITERATOR] !== defaultIterator) {
    defineBuiltIn(IterablePrototype, ITERATOR, defaultIterator, { name: DEFAULT });
  }
  Iterators[NAME] = defaultIterator;

  return methods;
};


/***/ }),

/***/ 909:
/***/ ((module) => {


// Should throw an error on invalid iterator
// https://issues.chromium.org/issues/336839115
module.exports = function (methodName, argument) {
  // eslint-disable-next-line es/no-iterator -- required for testing
  var method = typeof Iterator == 'function' && Iterator.prototype[methodName];
  if (method) try {
    method.call({ next: null }, argument).next();
  } catch (error) {
    return true;
  }
};


/***/ }),

/***/ 7280:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {


var globalThis = __webpack_require__(4127);

// https://github.com/tc39/ecma262/pull/3467
module.exports = function (METHOD_NAME, ExpectedError) {
  var Iterator = globalThis.Iterator;
  var IteratorPrototype = Iterator && Iterator.prototype;
  var method = IteratorPrototype && IteratorPrototype[METHOD_NAME];

  var CLOSED = false;

  if (method) try {
    method.call({
      next: function () { return { done: true }; },
      'return': function () { CLOSED = true; }
    }, -1);
  } catch (error) {
    // https://bugs.webkit.org/show_bug.cgi?id=291195
    if (!(error instanceof ExpectedError)) CLOSED = false;
  }

  if (!CLOSED) return method;
};


/***/ }),

/***/ 2636:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {


var fails = __webpack_require__(4892);
var isCallable = __webpack_require__(8794);
var isObject = __webpack_require__(8861);
var create = __webpack_require__(475);
var getPrototypeOf = __webpack_require__(6068);
var defineBuiltIn = __webpack_require__(7255);
var wellKnownSymbol = __webpack_require__(7080);
var IS_PURE = __webpack_require__(4400);

var ITERATOR = wellKnownSymbol('iterator');
var BUGGY_SAFARI_ITERATORS = false;

// `%IteratorPrototype%` object
// https://tc39.es/ecma262/#sec-%iteratorprototype%-object
var IteratorPrototype, PrototypeOfArrayIteratorPrototype, arrayIterator;

/* eslint-disable es/no-array-prototype-keys -- safe */
if ([].keys) {
  arrayIterator = [].keys();
  // Safari 8 has buggy iterators w/o `next`
  if (!('next' in arrayIterator)) BUGGY_SAFARI_ITERATORS = true;
  else {
    PrototypeOfArrayIteratorPrototype = getPrototypeOf(getPrototypeOf(arrayIterator));
    if (PrototypeOfArrayIteratorPrototype !== Object.prototype) IteratorPrototype = PrototypeOfArrayIteratorPrototype;
  }
}

var NEW_ITERATOR_PROTOTYPE = !isObject(IteratorPrototype) || fails(function () {
  var test = {};
  // FF44- legacy iterators case
  return IteratorPrototype[ITERATOR].call(test) !== test;
});

if (NEW_ITERATOR_PROTOTYPE) IteratorPrototype = {};
else if (IS_PURE) IteratorPrototype = create(IteratorPrototype);

// `%IteratorPrototype%[@@iterator]()` method
// https://tc39.es/ecma262/#sec-%iteratorprototype%-@@iterator
if (!isCallable(IteratorPrototype[ITERATOR])) {
  defineBuiltIn(IteratorPrototype, ITERATOR, function () {
    return this;
  });
}

module.exports = {
  IteratorPrototype: IteratorPrototype,
  BUGGY_SAFARI_ITERATORS: BUGGY_SAFARI_ITERATORS
};


/***/ }),

/***/ 510:
/***/ ((module) => {


module.exports = Object.create ? Object.create(null) : {};


/***/ }),

/***/ 5807:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {


var toLength = __webpack_require__(2737);

// `LengthOfArrayLike` abstract operation
// https://tc39.es/ecma262/#sec-lengthofarraylike
module.exports = function (obj) {
  return toLength(obj.length);
};


/***/ }),

/***/ 8904:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {


var uncurryThis = __webpack_require__(3027);
var fails = __webpack_require__(4892);
var isCallable = __webpack_require__(8794);
var hasOwn = __webpack_require__(1324);
var DESCRIPTORS = __webpack_require__(1175);
var CONFIGURABLE_FUNCTION_NAME = (__webpack_require__(6993).CONFIGURABLE);
var inspectSource = __webpack_require__(3335);
var InternalStateModule = __webpack_require__(4852);

var enforceInternalState = InternalStateModule.enforce;
var getInternalState = InternalStateModule.get;
var $String = String;
// eslint-disable-next-line es/no-object-defineproperty -- safe
var defineProperty = Object.defineProperty;
var stringSlice = uncurryThis(''.slice);
var replace = uncurryThis(''.replace);
var join = uncurryThis([].join);

var CONFIGURABLE_LENGTH = DESCRIPTORS && !fails(function () {
  return defineProperty(function () { /* empty */ }, 'length', { value: 8 }).length !== 8;
});

var TEMPLATE = String(String).split('String');

var makeBuiltIn = module.exports = function (value, name, options) {
  if (stringSlice($String(name), 0, 7) === 'Symbol(') {
    name = '[' + replace($String(name), /^Symbol\(([^)]*)\).*$/, '$1') + ']';
  }
  if (options && options.getter) name = 'get ' + name;
  if (options && options.setter) name = 'set ' + name;
  if (!hasOwn(value, 'name') || (CONFIGURABLE_FUNCTION_NAME && value.name !== name)) {
    if (DESCRIPTORS) defineProperty(value, 'name', { value: name, configurable: true });
    else value.name = name;
  }
  if (CONFIGURABLE_LENGTH && options && hasOwn(options, 'arity') && value.length !== options.arity) {
    defineProperty(value, 'length', { value: options.arity });
  }
  try {
    if (options && hasOwn(options, 'constructor') && options.constructor) {
      if (DESCRIPTORS) defineProperty(value, 'prototype', { writable: false });
    // in V8 ~ Chrome 53, prototypes of some methods, like `Array.prototype.values`, are non-writable
    } else if (value.prototype) value.prototype = undefined;
  } catch (error) { /* empty */ }
  var state = enforceInternalState(value);
  if (!hasOwn(state, 'source')) {
    state.source = join(TEMPLATE, typeof name == 'string' ? name : '');
  } return value;
};

// add fake Function#toString for correct work wrapped methods / constructors with methods like LoDash isNative
// eslint-disable-next-line no-extend-native -- required
Function.prototype.toString = makeBuiltIn(function toString() {
  return isCallable(this) && getInternalState(this).source || inspectSource(this);
}, 'toString');


/***/ }),

/***/ 3799:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {


var uncurryThis = __webpack_require__(3027);

// eslint-disable-next-line es/no-map -- safe
var MapPrototype = Map.prototype;

module.exports = {
  // eslint-disable-next-line es/no-map -- safe
  Map: Map,
  set: uncurryThis(MapPrototype.set),
  get: uncurryThis(MapPrototype.get),
  has: uncurryThis(MapPrototype.has),
  remove: uncurryThis(MapPrototype['delete']),
  proto: MapPrototype
};


/***/ }),

/***/ 3212:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {


var uncurryThis = __webpack_require__(3027);
var iterateSimple = __webpack_require__(7118);
var MapHelpers = __webpack_require__(3799);

var Map = MapHelpers.Map;
var MapPrototype = MapHelpers.proto;
var forEach = uncurryThis(MapPrototype.forEach);
var entries = uncurryThis(MapPrototype.entries);
var next = entries(new Map()).next;

module.exports = function (map, fn, interruptible) {
  return interruptible ? iterateSimple({ iterator: entries(map), next: next }, function (entry) {
    return fn(entry[1], entry[0]);
  }) : forEach(map, fn);
};


/***/ }),

/***/ 2057:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {


var sign = __webpack_require__(5505);
var roundTiesToEven = __webpack_require__(9685);

var abs = Math.abs;

var EPSILON = 2.220446049250313e-16; // Number.EPSILON

module.exports = function (x, FLOAT_EPSILON, FLOAT_MAX_VALUE, FLOAT_MIN_VALUE) {
  var n = +x;
  var absolute = abs(n);
  var s = sign(n);
  if (absolute < FLOAT_MIN_VALUE) return s * roundTiesToEven(absolute / FLOAT_MIN_VALUE / FLOAT_EPSILON) * FLOAT_MIN_VALUE * FLOAT_EPSILON;
  var a = (1 + FLOAT_EPSILON / EPSILON) * absolute;
  var result = a - (a - absolute);
  // eslint-disable-next-line no-self-compare -- NaN check
  if (result > FLOAT_MAX_VALUE || result !== result) return s * Infinity;
  return s * result;
};


/***/ }),

/***/ 5678:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {


var floatRound = __webpack_require__(2057);

var FLOAT32_EPSILON = 1.1920928955078125e-7; // 2 ** -23;
var FLOAT32_MAX_VALUE = 3.4028234663852886e+38; // 2 ** 128 - 2 ** 104
var FLOAT32_MIN_VALUE = 1.1754943508222875e-38; // 2 ** -126;

// `Math.fround` method implementation
// https://tc39.es/ecma262/#sec-math.fround
// eslint-disable-next-line es/no-math-fround -- safe
module.exports = Math.fround || function fround(x) {
  return floatRound(x, FLOAT32_EPSILON, FLOAT32_MAX_VALUE, FLOAT32_MIN_VALUE);
};


/***/ }),

/***/ 9685:
/***/ ((module) => {


var EPSILON = 2.220446049250313e-16; // Number.EPSILON
var INVERSE_EPSILON = 1 / EPSILON;

module.exports = function (n) {
  return n + INVERSE_EPSILON - INVERSE_EPSILON;
};


/***/ }),

/***/ 5505:
/***/ ((module) => {


// `Math.sign` method implementation
// https://tc39.es/ecma262/#sec-math.sign
// eslint-disable-next-line es/no-math-sign -- safe
module.exports = Math.sign || function sign(x) {
  var n = +x;
  // eslint-disable-next-line no-self-compare -- NaN check
  return n === 0 || n !== n ? n : n < 0 ? -1 : 1;
};


/***/ }),

/***/ 7352:
/***/ ((module) => {


var ceil = Math.ceil;
var floor = Math.floor;

// `Math.trunc` method
// https://tc39.es/ecma262/#sec-math.trunc
// eslint-disable-next-line es/no-math-trunc -- safe
module.exports = Math.trunc || function trunc(x) {
  var n = +x;
  return (n > 0 ? floor : ceil)(n);
};


/***/ }),

/***/ 4672:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {


/* eslint-disable es/no-json -- safe */
var fails = __webpack_require__(4892);

module.exports = !fails(function () {
  var unsafeInt = '9007199254740993';
  // eslint-disable-next-line es/no-json-rawjson -- feature detection
  var raw = JSON.rawJSON(unsafeInt);
  // eslint-disable-next-line es/no-json-israwjson -- feature detection
  return !JSON.isRawJSON(raw) || JSON.stringify(raw) !== unsafeInt;
});


/***/ }),

/***/ 2222:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {


var aCallable = __webpack_require__(6927);

var $TypeError = TypeError;

var PromiseCapability = function (C) {
  var resolve, reject;
  this.promise = new C(function ($$resolve, $$reject) {
    if (resolve !== undefined || reject !== undefined) throw new $TypeError('Bad Promise constructor');
    resolve = $$resolve;
    reject = $$reject;
  });
  this.resolve = aCallable(resolve);
  this.reject = aCallable(reject);
};

// `NewPromiseCapability` abstract operation
// https://tc39.es/ecma262/#sec-newpromisecapability
module.exports.f = function (C) {
  return new PromiseCapability(C);
};


/***/ }),

/***/ 6848:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {


var toString = __webpack_require__(7616);

module.exports = function (argument, $default) {
  return argument === undefined ? arguments.length < 2 ? '' : $default : toString(argument);
};


/***/ }),

/***/ 890:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {


var isRegExp = __webpack_require__(3815);

var $TypeError = TypeError;

module.exports = function (it) {
  if (isRegExp(it)) {
    throw new $TypeError("The method doesn't accept regular expressions");
  } return it;
};


/***/ }),

/***/ 8466:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {


var DESCRIPTORS = __webpack_require__(1175);
var uncurryThis = __webpack_require__(3027);
var call = __webpack_require__(5418);
var fails = __webpack_require__(4892);
var objectKeys = __webpack_require__(6251);
var getOwnPropertySymbolsModule = __webpack_require__(706);
var propertyIsEnumerableModule = __webpack_require__(3214);
var toObject = __webpack_require__(6674);
var IndexedObject = __webpack_require__(2466);

// eslint-disable-next-line es/no-object-assign -- safe
var $assign = Object.assign;
// eslint-disable-next-line es/no-object-defineproperty -- required for testing
var defineProperty = Object.defineProperty;
var concat = uncurryThis([].concat);

// `Object.assign` method
// https://tc39.es/ecma262/#sec-object.assign
module.exports = !$assign || fails(function () {
  // should have correct order of operations (Edge bug)
  if (DESCRIPTORS && $assign({ b: 1 }, $assign(defineProperty({}, 'a', {
    enumerable: true,
    get: function () {
      defineProperty(this, 'b', {
        value: 3,
        enumerable: false
      });
    }
  }), { b: 2 })).b !== 1) return true;
  // should work with symbols and should have deterministic property order (V8 bug)
  var A = {};
  var B = {};
  // eslint-disable-next-line es/no-symbol -- safe
  var symbol = Symbol('assign detection');
  var alphabet = 'abcdefghijklmnopqrst';
  A[symbol] = 7;
  // eslint-disable-next-line es/no-array-prototype-foreach -- safe
  alphabet.split('').forEach(function (chr) { B[chr] = chr; });
  return $assign({}, A)[symbol] !== 7 || objectKeys($assign({}, B)).join('') !== alphabet;
}) ? function assign(target, source) { // eslint-disable-line no-unused-vars -- required for `.length`
  var T = toObject(target);
  var argumentsLength = arguments.length;
  var index = 1;
  var getOwnPropertySymbols = getOwnPropertySymbolsModule.f;
  var propertyIsEnumerable = propertyIsEnumerableModule.f;
  while (argumentsLength > index) {
    var S = IndexedObject(arguments[index++]);
    var keys = getOwnPropertySymbols ? concat(objectKeys(S), getOwnPropertySymbols(S)) : objectKeys(S);
    var length = keys.length;
    var j = 0;
    var key;
    while (length > j) {
      key = keys[j++];
      if (!DESCRIPTORS || call(propertyIsEnumerable, S, key)) T[key] = S[key];
    }
  } return T;
} : $assign;


/***/ }),

/***/ 475:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {


/* global ActiveXObject -- old IE, WSH */
var anObject = __webpack_require__(4464);
var definePropertiesModule = __webpack_require__(6236);
var enumBugKeys = __webpack_require__(1976);
var hiddenKeys = __webpack_require__(5730);
var html = __webpack_require__(48);
var documentCreateElement = __webpack_require__(8752);
var sharedKey = __webpack_require__(9690);

var GT = '>';
var LT = '<';
var PROTOTYPE = 'prototype';
var SCRIPT = 'script';
var IE_PROTO = sharedKey('IE_PROTO');

var EmptyConstructor = function () { /* empty */ };

var scriptTag = function (content) {
  return LT + SCRIPT + GT + content + LT + '/' + SCRIPT + GT;
};

// Create object with fake `null` prototype: use ActiveX Object with cleared prototype
var NullProtoObjectViaActiveX = function (activeXDocument) {
  activeXDocument.write(scriptTag(''));
  activeXDocument.close();
  var temp = activeXDocument.parentWindow.Object;
  // eslint-disable-next-line no-useless-assignment -- avoid memory leak
  activeXDocument = null;
  return temp;
};

// Create object with fake `null` prototype: use iframe Object with cleared prototype
var NullProtoObjectViaIFrame = function () {
  // Thrash, waste and sodomy: IE GC bug
  var iframe = documentCreateElement('iframe');
  var JS = 'java' + SCRIPT + ':';
  var iframeDocument;
  iframe.style.display = 'none';
  html.appendChild(iframe);
  // https://github.com/zloirock/core-js/issues/475
  iframe.src = String(JS);
  iframeDocument = iframe.contentWindow.document;
  iframeDocument.open();
  iframeDocument.write(scriptTag('document.F=Object'));
  iframeDocument.close();
  return iframeDocument.F;
};

// Check for document.domain and active x support
// No need to use active x approach when document.domain is not set
// see https://github.com/es-shims/es5-shim/issues/150
// variation of https://github.com/kitcambridge/es5-shim/commit/4f738ac066346
// avoid IE GC bug
var activeXDocument;
var NullProtoObject = function () {
  try {
    activeXDocument = new ActiveXObject('htmlfile');
  } catch (error) { /* ignore */ }
  NullProtoObject = typeof document != 'undefined'
    ? document.domain && activeXDocument
      ? NullProtoObjectViaActiveX(activeXDocument) // old IE
      : NullProtoObjectViaIFrame()
    : NullProtoObjectViaActiveX(activeXDocument); // WSH
  var length = enumBugKeys.length;
  while (length--) delete NullProtoObject[PROTOTYPE][enumBugKeys[length]];
  return NullProtoObject();
};

hiddenKeys[IE_PROTO] = true;

// `Object.create` method
// https://tc39.es/ecma262/#sec-object.create
// eslint-disable-next-line es/no-object-create -- safe
module.exports = Object.create || function create(O, Properties) {
  var result;
  if (O !== null) {
    EmptyConstructor[PROTOTYPE] = anObject(O);
    result = new EmptyConstructor();
    EmptyConstructor[PROTOTYPE] = null;
    // add "__proto__" for Object.getPrototypeOf polyfill
    result[IE_PROTO] = O;
  } else result = NullProtoObject();
  return Properties === undefined ? result : definePropertiesModule.f(result, Properties);
};


/***/ }),

/***/ 6236:
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {


var DESCRIPTORS = __webpack_require__(1175);
var V8_PROTOTYPE_DEFINE_BUG = __webpack_require__(8549);
var definePropertyModule = __webpack_require__(9100);
var anObject = __webpack_require__(4464);
var toIndexedObject = __webpack_require__(9630);
var objectKeys = __webpack_require__(6251);

// `Object.defineProperties` method
// https://tc39.es/ecma262/#sec-object.defineproperties
// eslint-disable-next-line es/no-object-defineproperties -- safe
exports.f = DESCRIPTORS && !V8_PROTOTYPE_DEFINE_BUG ? Object.defineProperties : function defineProperties(O, Properties) {
  anObject(O);
  var props = toIndexedObject(Properties);
  var keys = objectKeys(Properties);
  var length = keys.length;
  var index = 0;
  var key;
  while (length > index) definePropertyModule.f(O, key = keys[index++], props[key]);
  return O;
};


/***/ }),

/***/ 9100:
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {


var DESCRIPTORS = __webpack_require__(1175);
var IE8_DOM_DEFINE = __webpack_require__(3696);
var V8_PROTOTYPE_DEFINE_BUG = __webpack_require__(8549);
var anObject = __webpack_require__(4464);
var toPropertyKey = __webpack_require__(3750);

var $TypeError = TypeError;
// eslint-disable-next-line es/no-object-defineproperty -- safe
var $defineProperty = Object.defineProperty;
// eslint-disable-next-line es/no-object-getownpropertydescriptor -- safe
var $getOwnPropertyDescriptor = Object.getOwnPropertyDescriptor;
var ENUMERABLE = 'enumerable';
var CONFIGURABLE = 'configurable';
var WRITABLE = 'writable';

// `Object.defineProperty` method
// https://tc39.es/ecma262/#sec-object.defineproperty
exports.f = DESCRIPTORS ? V8_PROTOTYPE_DEFINE_BUG ? function defineProperty(O, P, Attributes) {
  anObject(O);
  P = toPropertyKey(P);
  anObject(Attributes);
  if (typeof O === 'function' && P === 'prototype' && 'value' in Attributes && WRITABLE in Attributes && !Attributes[WRITABLE]) {
    var current = $getOwnPropertyDescriptor(O, P);
    if (current && current[WRITABLE]) {
      O[P] = Attributes.value;
      Attributes = {
        configurable: CONFIGURABLE in Attributes ? Attributes[CONFIGURABLE] : current[CONFIGURABLE],
        enumerable: ENUMERABLE in Attributes ? Attributes[ENUMERABLE] : current[ENUMERABLE],
        writable: false
      };
    }
  } return $defineProperty(O, P, Attributes);
} : $defineProperty : function defineProperty(O, P, Attributes) {
  anObject(O);
  P = toPropertyKey(P);
  anObject(Attributes);
  if (IE8_DOM_DEFINE) try {
    return $defineProperty(O, P, Attributes);
  } catch (error) { /* empty */ }
  if ('get' in Attributes || 'set' in Attributes) throw new $TypeError('Accessors not supported');
  if ('value' in Attributes) O[P] = Attributes.value;
  return O;
};


/***/ }),

/***/ 6150:
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {


var DESCRIPTORS = __webpack_require__(1175);
var call = __webpack_require__(5418);
var propertyIsEnumerableModule = __webpack_require__(3214);
var createPropertyDescriptor = __webpack_require__(1513);
var toIndexedObject = __webpack_require__(9630);
var toPropertyKey = __webpack_require__(3750);
var hasOwn = __webpack_require__(1324);
var IE8_DOM_DEFINE = __webpack_require__(3696);

// eslint-disable-next-line es/no-object-getownpropertydescriptor -- safe
var $getOwnPropertyDescriptor = Object.getOwnPropertyDescriptor;

// `Object.getOwnPropertyDescriptor` method
// https://tc39.es/ecma262/#sec-object.getownpropertydescriptor
exports.f = DESCRIPTORS ? $getOwnPropertyDescriptor : function getOwnPropertyDescriptor(O, P) {
  O = toIndexedObject(O);
  P = toPropertyKey(P);
  if (IE8_DOM_DEFINE) try {
    return $getOwnPropertyDescriptor(O, P);
  } catch (error) { /* empty */ }
  if (hasOwn(O, P)) return createPropertyDescriptor(!call(propertyIsEnumerableModule.f, O, P), O[P]);
};


/***/ }),

/***/ 6508:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {


/* eslint-disable es/no-object-getownpropertynames -- safe */
var classof = __webpack_require__(2911);
var toIndexedObject = __webpack_require__(9630);
var $getOwnPropertyNames = (__webpack_require__(8331).f);
var arraySlice = __webpack_require__(803);

var windowNames = typeof window == 'object' && window && Object.getOwnPropertyNames
  ? Object.getOwnPropertyNames(window) : [];

var getWindowNames = function (it) {
  try {
    return $getOwnPropertyNames(it);
  } catch (error) {
    return arraySlice(windowNames);
  }
};

// fallback for IE11 buggy Object.getOwnPropertyNames with iframe and window
module.exports.f = function getOwnPropertyNames(it) {
  return windowNames && classof(it) === 'Window'
    ? getWindowNames(it)
    : $getOwnPropertyNames(toIndexedObject(it));
};


/***/ }),

/***/ 8331:
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {


var internalObjectKeys = __webpack_require__(581);
var enumBugKeys = __webpack_require__(1976);

var hiddenKeys = enumBugKeys.concat('length', 'prototype');

// `Object.getOwnPropertyNames` method
// https://tc39.es/ecma262/#sec-object.getownpropertynames
// eslint-disable-next-line es/no-object-getownpropertynames -- safe
exports.f = Object.getOwnPropertyNames || function getOwnPropertyNames(O) {
  return internalObjectKeys(O, hiddenKeys);
};


/***/ }),

/***/ 706:
/***/ ((__unused_webpack_module, exports) => {


// eslint-disable-next-line es/no-object-getownpropertysymbols -- safe
exports.f = Object.getOwnPropertySymbols;


/***/ }),

/***/ 6068:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {


var hasOwn = __webpack_require__(1324);
var isCallable = __webpack_require__(8794);
var toObject = __webpack_require__(6674);
var sharedKey = __webpack_require__(9690);
var CORRECT_PROTOTYPE_GETTER = __webpack_require__(4678);

var IE_PROTO = sharedKey('IE_PROTO');
var $Object = Object;
var ObjectPrototype = $Object.prototype;

// `Object.getPrototypeOf` method
// https://tc39.es/ecma262/#sec-object.getprototypeof
// eslint-disable-next-line es/no-object-getprototypeof -- safe
module.exports = CORRECT_PROTOTYPE_GETTER ? $Object.getPrototypeOf : function (O) {
  var object = toObject(O);
  if (hasOwn(object, IE_PROTO)) return object[IE_PROTO];
  var constructor = object.constructor;
  if (isCallable(constructor) && object instanceof constructor) {
    return constructor.prototype;
  } return object instanceof $Object ? ObjectPrototype : null;
};


/***/ }),

/***/ 141:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {


var fails = __webpack_require__(4892);
var isObject = __webpack_require__(8861);
var classof = __webpack_require__(2911);
var ARRAY_BUFFER_NON_EXTENSIBLE = __webpack_require__(3879);

// eslint-disable-next-line es/no-object-isextensible -- safe
var $isExtensible = Object.isExtensible;
var FAILS_ON_PRIMITIVES = fails(function () { $isExtensible(1); });

// `Object.isExtensible` method
// https://tc39.es/ecma262/#sec-object.isextensible
module.exports = (FAILS_ON_PRIMITIVES || ARRAY_BUFFER_NON_EXTENSIBLE) ? function isExtensible(it) {
  if (!isObject(it)) return false;
  if (ARRAY_BUFFER_NON_EXTENSIBLE && classof(it) === 'ArrayBuffer') return false;
  return $isExtensible ? $isExtensible(it) : true;
} : $isExtensible;


/***/ }),

/***/ 1688:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {


var uncurryThis = __webpack_require__(3027);

module.exports = uncurryThis({}.isPrototypeOf);


/***/ }),

/***/ 581:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {


var uncurryThis = __webpack_require__(3027);
var hasOwn = __webpack_require__(1324);
var toIndexedObject = __webpack_require__(9630);
var indexOf = (__webpack_require__(5460)/* .indexOf */ .q);
var hiddenKeys = __webpack_require__(5730);

var push = uncurryThis([].push);

module.exports = function (object, names) {
  var O = toIndexedObject(object);
  var i = 0;
  var result = [];
  var key;
  for (key in O) !hasOwn(hiddenKeys, key) && hasOwn(O, key) && push(result, key);
  // Don't enum bug & hidden keys
  while (names.length > i) if (hasOwn(O, key = names[i++])) {
    ~indexOf(result, key) || push(result, key);
  }
  return result;
};


/***/ }),

/***/ 6251:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {


var internalObjectKeys = __webpack_require__(581);
var enumBugKeys = __webpack_require__(1976);

// `Object.keys` method
// https://tc39.es/ecma262/#sec-object.keys
// eslint-disable-next-line es/no-object-keys -- safe
module.exports = Object.keys || function keys(O) {
  return internalObjectKeys(O, enumBugKeys);
};


/***/ }),

/***/ 3214:
/***/ ((__unused_webpack_module, exports) => {


var $propertyIsEnumerable = {}.propertyIsEnumerable;
// eslint-disable-next-line es/no-object-getownpropertydescriptor -- safe
var getOwnPropertyDescriptor = Object.getOwnPropertyDescriptor;

// Nashorn ~ JDK8 bug
var NASHORN_BUG = getOwnPropertyDescriptor && !$propertyIsEnumerable.call({ 1: 2 }, 1);

// `Object.prototype.propertyIsEnumerable` method implementation
// https://tc39.es/ecma262/#sec-object.prototype.propertyisenumerable
exports.f = NASHORN_BUG ? function propertyIsEnumerable(V) {
  var descriptor = getOwnPropertyDescriptor(this, V);
  return !!descriptor && descriptor.enumerable;
} : $propertyIsEnumerable;


/***/ }),

/***/ 4792:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {


/* eslint-disable no-proto -- safe */
var uncurryThisAccessor = __webpack_require__(79);
var isObject = __webpack_require__(8861);
var requireObjectCoercible = __webpack_require__(7263);
var aPossiblePrototype = __webpack_require__(6299);

// `Object.setPrototypeOf` method
// https://tc39.es/ecma262/#sec-object.setprototypeof
// Works with __proto__ only. Old v8 can't work with null proto objects.
// eslint-disable-next-line es/no-object-setprototypeof -- safe
module.exports = Object.setPrototypeOf || ('__proto__' in {} ? function () {
  var CORRECT_SETTER = false;
  var test = {};
  var setter;
  try {
    setter = uncurryThisAccessor(Object.prototype, '__proto__', 'set');
    setter(test, []);
    CORRECT_SETTER = test instanceof Array;
  } catch (error) { /* empty */ }
  return function setPrototypeOf(O, proto) {
    requireObjectCoercible(O);
    aPossiblePrototype(proto);
    if (!isObject(O)) return O;
    if (CORRECT_SETTER) setter(O, proto);
    else O.__proto__ = proto;
    return O;
  };
}() : undefined);


/***/ }),

/***/ 9998:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {


var TO_STRING_TAG_SUPPORT = __webpack_require__(7167);
var classof = __webpack_require__(7964);

// `Object.prototype.toString` method implementation
// https://tc39.es/ecma262/#sec-object.prototype.tostring
module.exports = TO_STRING_TAG_SUPPORT ? {}.toString : function toString() {
  return '[object ' + classof(this) + ']';
};


/***/ }),

/***/ 5269:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {


var call = __webpack_require__(5418);
var isCallable = __webpack_require__(8794);
var isObject = __webpack_require__(8861);

var $TypeError = TypeError;

// `OrdinaryToPrimitive` abstract operation
// https://tc39.es/ecma262/#sec-ordinarytoprimitive
module.exports = function (input, pref) {
  var fn, val;
  if (pref === 'string' && isCallable(fn = input.toString) && !isObject(val = call(fn, input))) return val;
  if (isCallable(fn = input.valueOf) && !isObject(val = call(fn, input))) return val;
  if (pref !== 'string' && isCallable(fn = input.toString) && !isObject(val = call(fn, input))) return val;
  throw new $TypeError("Can't convert object to primitive value");
};


/***/ }),

/***/ 6162:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {


var getBuiltIn = __webpack_require__(878);
var uncurryThis = __webpack_require__(3027);
var getOwnPropertyNamesModule = __webpack_require__(8331);
var getOwnPropertySymbolsModule = __webpack_require__(706);
var anObject = __webpack_require__(4464);

var concat = uncurryThis([].concat);

// all object keys, includes non-enumerable and symbols
module.exports = getBuiltIn('Reflect', 'ownKeys') || function ownKeys(it) {
  var keys = getOwnPropertyNamesModule.f(anObject(it));
  var getOwnPropertySymbols = getOwnPropertySymbolsModule.f;
  return getOwnPropertySymbols ? concat(keys, getOwnPropertySymbols(it)) : keys;
};


/***/ }),

/***/ 9035:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {


var uncurryThis = __webpack_require__(3027);
var hasOwn = __webpack_require__(1324);

var $SyntaxError = SyntaxError;
var $parseInt = parseInt;
var fromCharCode = String.fromCharCode;
var at = uncurryThis(''.charAt);
var slice = uncurryThis(''.slice);
var exec = uncurryThis(/./.exec);

var codePoints = {
  '\\"': '"',
  '\\\\': '\\',
  '\\/': '/',
  '\\b': '\b',
  '\\f': '\f',
  '\\n': '\n',
  '\\r': '\r',
  '\\t': '\t'
};

var IS_4_HEX_DIGITS = /^[\da-f]{4}$/i;
// eslint-disable-next-line regexp/no-control-character -- safe
var IS_C0_CONTROL_CODE = /^[\u0000-\u001F]$/;

module.exports = function (source, i) {
  var unterminated = true;
  var value = '';
  while (i < source.length) {
    var chr = at(source, i);
    if (chr === '\\') {
      var twoChars = slice(source, i, i + 2);
      if (hasOwn(codePoints, twoChars)) {
        value += codePoints[twoChars];
        i += 2;
      } else if (twoChars === '\\u') {
        i += 2;
        var fourHexDigits = slice(source, i, i + 4);
        if (!exec(IS_4_HEX_DIGITS, fourHexDigits)) throw new $SyntaxError('Bad Unicode escape at: ' + i);
        value += fromCharCode($parseInt(fourHexDigits, 16));
        i += 4;
      } else throw new $SyntaxError('Unknown escape sequence: "' + twoChars + '"');
    } else if (chr === '"') {
      unterminated = false;
      i++;
      break;
    } else {
      if (exec(IS_C0_CONTROL_CODE, chr)) throw new $SyntaxError('Bad control character in string literal at: ' + i);
      value += chr;
      i++;
    }
  }
  if (unterminated) throw new $SyntaxError('Unterminated string at: ' + i);
  return { value: value, end: i };
};


/***/ }),

/***/ 8926:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {


var globalThis = __webpack_require__(4127);

module.exports = globalThis;


/***/ }),

/***/ 9636:
/***/ ((module) => {


module.exports = function (exec) {
  try {
    return { error: false, value: exec() };
  } catch (error) {
    return { error: true, value: error };
  }
};


/***/ }),

/***/ 9745:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {


var anObject = __webpack_require__(4464);
var isObject = __webpack_require__(8861);
var newPromiseCapability = __webpack_require__(2222);

module.exports = function (C, x) {
  anObject(C);
  if (isObject(x) && x.constructor === C) return x;
  var promiseCapability = newPromiseCapability.f(C);
  var resolve = promiseCapability.resolve;
  resolve(x);
  return promiseCapability.promise;
};


/***/ }),

/***/ 6925:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {


var defineProperty = (__webpack_require__(9100).f);

module.exports = function (Target, Source, key) {
  key in Target || defineProperty(Target, key, {
    configurable: true,
    get: function () { return Source[key]; },
    set: function (it) { Source[key] = it; }
  });
};


/***/ }),

/***/ 9226:
/***/ ((module) => {


var Queue = function () {
  this.head = null;
  this.tail = null;
};

Queue.prototype = {
  add: function (item) {
    var entry = { item: item, next: null };
    var tail = this.tail;
    if (tail) tail.next = entry;
    else this.head = entry;
    this.tail = entry;
  },
  get: function () {
    var entry = this.head;
    if (entry) {
      var next = this.head = entry.next;
      if (next === null) this.tail = null;
      return entry.item;
    }
  }
};

module.exports = Queue;


/***/ }),

/***/ 7332:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {


// TODO: in core-js@4, move /modules/ dependencies to public entries for better optimization by tools like `preset-env`
__webpack_require__(6244);
__webpack_require__(5643);
var getBuiltIn = __webpack_require__(878);
var uncurryThis = __webpack_require__(3027);
var shared = __webpack_require__(5384);

var Map = getBuiltIn('Map');
var WeakMap = getBuiltIn('WeakMap');
var push = uncurryThis([].push);

var metadata = shared('metadata');
var store = metadata.store || (metadata.store = new WeakMap());

var getOrCreateMetadataMap = function (target, targetKey, create) {
  var targetMetadata = store.get(target);
  if (!targetMetadata) {
    if (!create) return;
    store.set(target, targetMetadata = new Map());
  }
  var keyMetadata = targetMetadata.get(targetKey);
  if (!keyMetadata) {
    if (!create) return;
    targetMetadata.set(targetKey, keyMetadata = new Map());
  } return keyMetadata;
};

var ordinaryHasOwnMetadata = function (MetadataKey, O, P) {
  var metadataMap = getOrCreateMetadataMap(O, P, false);
  return metadataMap === undefined ? false : metadataMap.has(MetadataKey);
};

var ordinaryGetOwnMetadata = function (MetadataKey, O, P) {
  var metadataMap = getOrCreateMetadataMap(O, P, false);
  return metadataMap === undefined ? undefined : metadataMap.get(MetadataKey);
};

var ordinaryDefineOwnMetadata = function (MetadataKey, MetadataValue, O, P) {
  getOrCreateMetadataMap(O, P, true).set(MetadataKey, MetadataValue);
};

var ordinaryOwnMetadataKeys = function (target, targetKey) {
  var metadataMap = getOrCreateMetadataMap(target, targetKey, false);
  var keys = [];
  if (metadataMap) metadataMap.forEach(function (_, key) { push(keys, key); });
  return keys;
};

var toMetadataKey = function (it) {
  return it === undefined || typeof it == 'symbol' ? it : String(it);
};

module.exports = {
  store: store,
  getMap: getOrCreateMetadataMap,
  has: ordinaryHasOwnMetadata,
  get: ordinaryGetOwnMetadata,
  set: ordinaryDefineOwnMetadata,
  keys: ordinaryOwnMetadataKeys,
  toKey: toMetadataKey
};


/***/ }),

/***/ 5019:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {


var call = __webpack_require__(5418);
var anObject = __webpack_require__(4464);
var isCallable = __webpack_require__(8794);
var classof = __webpack_require__(2911);
var regexpExec = __webpack_require__(6676);

var $TypeError = TypeError;

// `RegExpExec` abstract operation
// https://tc39.es/ecma262/#sec-regexpexec
module.exports = function (R, S) {
  var exec = R.exec;
  if (isCallable(exec)) {
    var result = call(exec, R, S);
    if (result !== null) anObject(result);
    return result;
  }
  if (classof(R) === 'RegExp') return call(regexpExec, R, S);
  throw new $TypeError('RegExp#exec called on incompatible receiver');
};


/***/ }),

/***/ 6676:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {


/* eslint-disable regexp/no-empty-capturing-group, regexp/no-empty-group, regexp/no-lazy-ends -- testing */
/* eslint-disable regexp/no-useless-quantifier -- testing */
var call = __webpack_require__(5418);
var uncurryThis = __webpack_require__(3027);
var toString = __webpack_require__(7616);
var regexpFlags = __webpack_require__(9382);
var stickyHelpers = __webpack_require__(5446);
var shared = __webpack_require__(5384);
var create = __webpack_require__(475);
var getInternalState = (__webpack_require__(4852).get);
var UNSUPPORTED_DOT_ALL = __webpack_require__(8070);
var UNSUPPORTED_NCG = __webpack_require__(1091);

var nativeReplace = shared('native-string-replace', String.prototype.replace);
var nativeExec = RegExp.prototype.exec;
var patchedExec = nativeExec;
var charAt = uncurryThis(''.charAt);
var indexOf = uncurryThis(''.indexOf);
var replace = uncurryThis(''.replace);
var stringSlice = uncurryThis(''.slice);

var UPDATES_LAST_INDEX_WRONG = (function () {
  var re1 = /a/;
  var re2 = /b*/g;
  call(nativeExec, re1, 'a');
  call(nativeExec, re2, 'a');
  return re1.lastIndex !== 0 || re2.lastIndex !== 0;
})();

var UNSUPPORTED_Y = stickyHelpers.BROKEN_CARET;

// nonparticipating capturing group, copied from es5-shim's String#split patch.
var NPCG_INCLUDED = /()??/.exec('')[1] !== undefined;

var PATCH = UPDATES_LAST_INDEX_WRONG || NPCG_INCLUDED || UNSUPPORTED_Y || UNSUPPORTED_DOT_ALL || UNSUPPORTED_NCG;

var setGroups = function (re, groups) {
  var object = re.groups = create(null);
  for (var i = 0; i < groups.length; i++) {
    var group = groups[i];
    object[group[0]] = re[group[1]];
  }
};

if (PATCH) {
  patchedExec = function exec(string) {
    var re = this;
    var state = getInternalState(re);
    var str = toString(string);
    var raw = state.raw;
    var result, reCopy, lastIndex;

    if (raw) {
      raw.lastIndex = re.lastIndex;
      result = call(patchedExec, raw, str);
      re.lastIndex = raw.lastIndex;

      if (result && state.groups) setGroups(result, state.groups);

      return result;
    }

    var groups = state.groups;
    var sticky = UNSUPPORTED_Y && re.sticky;
    var flags = call(regexpFlags, re);
    var source = re.source;
    var charsAdded = 0;
    var strCopy = str;

    if (sticky) {
      flags = replace(flags, 'y', '');
      if (indexOf(flags, 'g') === -1) {
        flags += 'g';
      }

      strCopy = stringSlice(str, re.lastIndex);
      // Support anchored sticky behavior.
      var prevChar = re.lastIndex > 0 && charAt(str, re.lastIndex - 1);
      if (re.lastIndex > 0 &&
        (!re.multiline || re.multiline && prevChar !== '\n' && prevChar !== '\r' && prevChar !== '\u2028' && prevChar !== '\u2029')) {
        source = '(?: (?:' + source + '))';
        strCopy = ' ' + strCopy;
        charsAdded++;
      }
      // ^(? + rx + ) is needed, in combination with some str slicing, to
      // simulate the 'y' flag.
      reCopy = new RegExp('^(?:' + source + ')', flags);
    }

    if (NPCG_INCLUDED) {
      reCopy = new RegExp('^' + source + '$(?!\\s)', flags);
    }
    if (UPDATES_LAST_INDEX_WRONG) lastIndex = re.lastIndex;

    var match = call(nativeExec, sticky ? reCopy : re, strCopy);

    if (sticky) {
      if (match) {
        match.input = str;
        match[0] = stringSlice(match[0], charsAdded);
        match.index = re.lastIndex;
        re.lastIndex += match[0].length;
      } else re.lastIndex = 0;
    } else if (UPDATES_LAST_INDEX_WRONG && match) {
      re.lastIndex = re.global ? match.index + match[0].length : lastIndex;
    }
    if (NPCG_INCLUDED && match && match.length > 1) {
      // Fix browsers whose `exec` methods don't consistently return `undefined`
      // for NPCG, like IE8. NOTE: This doesn't work for /(.?)?/
      call(nativeReplace, match[0], reCopy, function () {
        for (var i = 1; i < arguments.length - 2; i++) {
          if (arguments[i] === undefined) match[i] = undefined;
        }
      });
    }

    if (match && groups) setGroups(match, groups);

    return match;
  };
}

module.exports = patchedExec;


/***/ }),

/***/ 616:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {


var globalThis = __webpack_require__(4127);
var fails = __webpack_require__(4892);

// babel-minify and Closure Compiler transpiles RegExp('.', 'd') -> /./d and it causes SyntaxError
var RegExp = globalThis.RegExp;

var FLAGS_GETTER_IS_CORRECT = !fails(function () {
  var INDICES_SUPPORT = true;
  try {
    RegExp('.', 'd');
  } catch (error) {
    INDICES_SUPPORT = false;
  }

  var O = {};
  // modern V8 bug
  var calls = '';
  var expected = INDICES_SUPPORT ? 'dgimsy' : 'gimsy';

  var addGetter = function (key, chr) {
    // eslint-disable-next-line es/no-object-defineproperty -- safe
    Object.defineProperty(O, key, { get: function () {
      calls += chr;
      return true;
    } });
  };

  var pairs = {
    dotAll: 's',
    global: 'g',
    ignoreCase: 'i',
    multiline: 'm',
    sticky: 'y'
  };

  if (INDICES_SUPPORT) pairs.hasIndices = 'd';

  for (var key in pairs) addGetter(key, pairs[key]);

  // eslint-disable-next-line es/no-object-getownpropertydescriptor -- safe
  var result = Object.getOwnPropertyDescriptor(RegExp.prototype, 'flags').get.call(O);

  return result !== expected || calls !== expected;
});

module.exports = { correct: FLAGS_GETTER_IS_CORRECT };


/***/ }),

/***/ 9382:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {


var anObject = __webpack_require__(4464);

// `RegExp.prototype.flags` getter implementation
// https://tc39.es/ecma262/#sec-get-regexp.prototype.flags
module.exports = function () {
  var that = anObject(this);
  var result = '';
  if (that.hasIndices) result += 'd';
  if (that.global) result += 'g';
  if (that.ignoreCase) result += 'i';
  if (that.multiline) result += 'm';
  if (that.dotAll) result += 's';
  if (that.unicode) result += 'u';
  if (that.unicodeSets) result += 'v';
  if (that.sticky) result += 'y';
  return result;
};


/***/ }),

/***/ 7767:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {


var call = __webpack_require__(5418);
var hasOwn = __webpack_require__(1324);
var isPrototypeOf = __webpack_require__(1688);
var regExpFlagsDetection = __webpack_require__(616);
var regExpFlagsGetterImplementation = __webpack_require__(9382);

var RegExpPrototype = RegExp.prototype;

module.exports = regExpFlagsDetection.correct ? function (it) {
  return it.flags;
} : function (it) {
  return (!regExpFlagsDetection.correct && isPrototypeOf(RegExpPrototype, it) && !hasOwn(it, 'flags'))
    ? call(regExpFlagsGetterImplementation, it)
    : it.flags;
};


/***/ }),

/***/ 5446:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {


var fails = __webpack_require__(4892);
var globalThis = __webpack_require__(4127);

// babel-minify and Closure Compiler transpiles RegExp('a', 'y') -> /a/y and it causes SyntaxError
var $RegExp = globalThis.RegExp;

var UNSUPPORTED_Y = fails(function () {
  var re = $RegExp('a', 'y');
  re.lastIndex = 2;
  return re.exec('abcd') !== null;
});

// UC Browser bug
// https://github.com/zloirock/core-js/issues/1008
var MISSED_STICKY = UNSUPPORTED_Y || fails(function () {
  return !$RegExp('a', 'y').sticky;
});

var BROKEN_CARET = UNSUPPORTED_Y || fails(function () {
  // https://bugzilla.mozilla.org/show_bug.cgi?id=773687
  var re = $RegExp('^r', 'gy');
  re.lastIndex = 2;
  return re.exec('str') !== null;
});

module.exports = {
  BROKEN_CARET: BROKEN_CARET,
  MISSED_STICKY: MISSED_STICKY,
  UNSUPPORTED_Y: UNSUPPORTED_Y
};


/***/ }),

/***/ 8070:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {


var fails = __webpack_require__(4892);
var globalThis = __webpack_require__(4127);

// babel-minify and Closure Compiler transpiles RegExp('.', 's') -> /./s and it causes SyntaxError
var $RegExp = globalThis.RegExp;

module.exports = fails(function () {
  var re = $RegExp('.', 's');
  return !(re.dotAll && re.test('\n') && re.flags === 's');
});


/***/ }),

/***/ 1091:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {


var fails = __webpack_require__(4892);
var globalThis = __webpack_require__(4127);

// babel-minify and Closure Compiler transpiles RegExp('(?<a>b)', 'g') -> /(?<a>b)/g and it causes SyntaxError
var $RegExp = globalThis.RegExp;

module.exports = fails(function () {
  var re = $RegExp('(?<a>b)', 'g');
  return re.exec('b').groups.a !== 'b' ||
    'b'.replace(re, '$<a>c') !== 'bc';
});


/***/ }),

/***/ 7263:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {


var isNullOrUndefined = __webpack_require__(3600);

var $TypeError = TypeError;

// `RequireObjectCoercible` abstract operation
// https://tc39.es/ecma262/#sec-requireobjectcoercible
module.exports = function (it) {
  if (isNullOrUndefined(it)) throw new $TypeError("Can't call method on " + it);
  return it;
};


/***/ }),

/***/ 3219:
/***/ ((module) => {


// `SameValue` abstract operation
// https://tc39.es/ecma262/#sec-samevalue
// eslint-disable-next-line es/no-object-is -- safe
module.exports = Object.is || function is(x, y) {
  // eslint-disable-next-line no-self-compare -- NaN check
  return x === y ? x !== 0 || 1 / x === 1 / y : x !== x && y !== y;
};


/***/ }),

/***/ 6321:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {


var SetHelpers = __webpack_require__(2793);
var iterate = __webpack_require__(386);

var Set = SetHelpers.Set;
var add = SetHelpers.add;

module.exports = function (set) {
  var result = new Set();
  iterate(set, function (it) {
    add(result, it);
  });
  return result;
};


/***/ }),

/***/ 6545:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {


var aSet = __webpack_require__(8831);
var SetHelpers = __webpack_require__(2793);
var clone = __webpack_require__(6321);
var size = __webpack_require__(7135);
var getSetRecord = __webpack_require__(1052);
var iterateSet = __webpack_require__(386);
var iterateSimple = __webpack_require__(7118);

var has = SetHelpers.has;
var remove = SetHelpers.remove;

// `Set.prototype.difference` method
// https://tc39.es/ecma262/#sec-set.prototype.difference
module.exports = function difference(other) {
  var O = aSet(this);
  var otherRec = getSetRecord(other);
  var result = clone(O);
  if (size(result) <= otherRec.size) iterateSet(result, function (e) {
    if (otherRec.includes(e)) remove(result, e);
  });
  else iterateSimple(otherRec.getIterator(), function (e) {
    if (has(result, e)) remove(result, e);
  });
  return result;
};


/***/ }),

/***/ 2793:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {


var uncurryThis = __webpack_require__(3027);

// eslint-disable-next-line es/no-set -- safe
var SetPrototype = Set.prototype;

module.exports = {
  // eslint-disable-next-line es/no-set -- safe
  Set: Set,
  add: uncurryThis(SetPrototype.add),
  has: uncurryThis(SetPrototype.has),
  remove: uncurryThis(SetPrototype['delete']),
  proto: SetPrototype
};


/***/ }),

/***/ 2179:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {


var aSet = __webpack_require__(8831);
var SetHelpers = __webpack_require__(2793);
var size = __webpack_require__(7135);
var getSetRecord = __webpack_require__(1052);
var iterateSet = __webpack_require__(386);
var iterateSimple = __webpack_require__(7118);

var Set = SetHelpers.Set;
var add = SetHelpers.add;
var has = SetHelpers.has;

// `Set.prototype.intersection` method
// https://tc39.es/ecma262/#sec-set.prototype.intersection
module.exports = function intersection(other) {
  var O = aSet(this);
  var otherRec = getSetRecord(other);
  var result = new Set();

  if (size(O) > otherRec.size) {
    iterateSimple(otherRec.getIterator(), function (e) {
      if (has(O, e)) add(result, e);
    });
  } else {
    iterateSet(O, function (e) {
      if (otherRec.includes(e)) add(result, e);
    });
  }

  return result;
};


/***/ }),

/***/ 3092:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {


var aSet = __webpack_require__(8831);
var has = (__webpack_require__(2793).has);
var size = __webpack_require__(7135);
var getSetRecord = __webpack_require__(1052);
var iterateSet = __webpack_require__(386);
var iterateSimple = __webpack_require__(7118);
var iteratorClose = __webpack_require__(4090);

// `Set.prototype.isDisjointFrom` method
// https://tc39.es/ecma262/#sec-set.prototype.isdisjointfrom
module.exports = function isDisjointFrom(other) {
  var O = aSet(this);
  var otherRec = getSetRecord(other);
  if (size(O) <= otherRec.size) return iterateSet(O, function (e) {
    if (otherRec.includes(e)) return false;
  }, true) !== false;
  var iterator = otherRec.getIterator();
  return iterateSimple(iterator, function (e) {
    if (has(O, e)) return iteratorClose(iterator.iterator, 'normal', false);
  }) !== false;
};


/***/ }),

/***/ 6243:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {


var aSet = __webpack_require__(8831);
var size = __webpack_require__(7135);
var iterate = __webpack_require__(386);
var getSetRecord = __webpack_require__(1052);

// `Set.prototype.isSubsetOf` method
// https://tc39.es/ecma262/#sec-set.prototype.issubsetof
module.exports = function isSubsetOf(other) {
  var O = aSet(this);
  var otherRec = getSetRecord(other);
  if (size(O) > otherRec.size) return false;
  return iterate(O, function (e) {
    if (!otherRec.includes(e)) return false;
  }, true) !== false;
};


/***/ }),

/***/ 5954:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {


var aSet = __webpack_require__(8831);
var has = (__webpack_require__(2793).has);
var size = __webpack_require__(7135);
var getSetRecord = __webpack_require__(1052);
var iterateSimple = __webpack_require__(7118);
var iteratorClose = __webpack_require__(4090);

// `Set.prototype.isSupersetOf` method
// https://tc39.es/ecma262/#sec-set.prototype.issupersetof
module.exports = function isSupersetOf(other) {
  var O = aSet(this);
  var otherRec = getSetRecord(other);
  if (size(O) < otherRec.size) return false;
  var iterator = otherRec.getIterator();
  return iterateSimple(iterator, function (e) {
    if (!has(O, e)) return iteratorClose(iterator.iterator, 'normal', false);
  }) !== false;
};


/***/ }),

/***/ 386:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {


var uncurryThis = __webpack_require__(3027);
var iterateSimple = __webpack_require__(7118);
var SetHelpers = __webpack_require__(2793);

var Set = SetHelpers.Set;
var SetPrototype = SetHelpers.proto;
var forEach = uncurryThis(SetPrototype.forEach);
var keys = uncurryThis(SetPrototype.keys);
var next = keys(new Set()).next;

module.exports = function (set, fn, interruptible) {
  return interruptible ? iterateSimple({ iterator: keys(set), next: next }, fn) : forEach(set, fn);
};


/***/ }),

/***/ 2405:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {


var getBuiltIn = __webpack_require__(878);

var createSetLike = function (size) {
  return {
    size: size,
    has: function () {
      return false;
    },
    keys: function () {
      return {
        next: function () {
          return { done: true };
        }
      };
    }
  };
};

var createSetLikeWithInfinitySize = function (size) {
  return {
    size: size,
    has: function () {
      return true;
    },
    keys: function () {
      throw new Error('e');
    }
  };
};

module.exports = function (name, callback) {
  var Set = getBuiltIn('Set');
  try {
    new Set()[name](createSetLike(0));
    try {
      // late spec change, early WebKit ~ Safari 17 implementation does not pass it
      // https://github.com/tc39/proposal-set-methods/pull/88
      // also covered engines with
      // https://bugs.webkit.org/show_bug.cgi?id=272679
      new Set()[name](createSetLike(-1));
      return false;
    } catch (error2) {
      if (!callback) return true;
      // early V8 implementation bug
      // https://issues.chromium.org/issues/351332634
      try {
        new Set()[name](createSetLikeWithInfinitySize(-Infinity));
        return false;
      } catch (error) {
        var set = new Set([1, 2]);
        return callback(set[name](createSetLikeWithInfinitySize(Infinity)));
      }
    }
  } catch (error) {
    return false;
  }
};


/***/ }),

/***/ 5758:
/***/ ((module) => {


// Should get iterator record of a set-like object before cloning this
// https://bugs.webkit.org/show_bug.cgi?id=289430
module.exports = function (METHOD_NAME) {
  try {
    // eslint-disable-next-line es/no-set -- needed for test
    var baseSet = new Set();
    var setLike = {
      size: 0,
      has: function () { return true; },
      keys: function () {
        // eslint-disable-next-line es/no-object-defineproperty -- needed for test
        return Object.defineProperty({}, 'next', {
          get: function () {
            baseSet.clear();
            baseSet.add(4);
            return function () {
              return { done: true };
            };
          }
        });
      }
    };
    var result = baseSet[METHOD_NAME](setLike);

    return result.size === 1 && result.values().next().value === 4;
  } catch (error) {
    return false;
  }
};


/***/ }),

/***/ 7135:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {


var uncurryThisAccessor = __webpack_require__(79);
var SetHelpers = __webpack_require__(2793);

module.exports = uncurryThisAccessor(SetHelpers.proto, 'size', 'get') || function (set) {
  return set.size;
};


/***/ }),

/***/ 3902:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {


var getBuiltIn = __webpack_require__(878);
var defineBuiltInAccessor = __webpack_require__(707);
var wellKnownSymbol = __webpack_require__(7080);
var DESCRIPTORS = __webpack_require__(1175);

var SPECIES = wellKnownSymbol('species');

module.exports = function (CONSTRUCTOR_NAME) {
  var Constructor = getBuiltIn(CONSTRUCTOR_NAME);

  if (DESCRIPTORS && Constructor && !Constructor[SPECIES]) {
    defineBuiltInAccessor(Constructor, SPECIES, {
      configurable: true,
      get: function () { return this; }
    });
  }
};


/***/ }),

/***/ 4851:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {


var aSet = __webpack_require__(8831);
var SetHelpers = __webpack_require__(2793);
var clone = __webpack_require__(6321);
var getSetRecord = __webpack_require__(1052);
var iterateSimple = __webpack_require__(7118);

var add = SetHelpers.add;
var has = SetHelpers.has;
var remove = SetHelpers.remove;

// `Set.prototype.symmetricDifference` method
// https://tc39.es/ecma262/#sec-set.prototype.symmetricdifference
module.exports = function symmetricDifference(other) {
  var O = aSet(this);
  var keysIter = getSetRecord(other).getIterator();
  var result = clone(O);
  iterateSimple(keysIter, function (e) {
    if (has(O, e)) remove(result, e);
    else add(result, e);
  });
  return result;
};


/***/ }),

/***/ 4360:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {


var defineProperty = (__webpack_require__(9100).f);
var hasOwn = __webpack_require__(1324);
var wellKnownSymbol = __webpack_require__(7080);

var TO_STRING_TAG = wellKnownSymbol('toStringTag');

module.exports = function (target, TAG, STATIC) {
  if (target && !STATIC) target = target.prototype;
  if (target && !hasOwn(target, TO_STRING_TAG)) {
    defineProperty(target, TO_STRING_TAG, { configurable: true, value: TAG });
  }
};


/***/ }),

/***/ 6471:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {


var aSet = __webpack_require__(8831);
var add = (__webpack_require__(2793).add);
var clone = __webpack_require__(6321);
var getSetRecord = __webpack_require__(1052);
var iterateSimple = __webpack_require__(7118);

// `Set.prototype.union` method
// https://tc39.es/ecma262/#sec-set.prototype.union
module.exports = function union(other) {
  var O = aSet(this);
  var keysIter = getSetRecord(other).getIterator();
  var result = clone(O);
  iterateSimple(keysIter, function (it) {
    add(result, it);
  });
  return result;
};


/***/ }),

/***/ 9690:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {


var shared = __webpack_require__(5384);
var uid = __webpack_require__(3699);

var keys = shared('keys');

module.exports = function (key) {
  return keys[key] || (keys[key] = uid(key));
};


/***/ }),

/***/ 352:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {


var IS_PURE = __webpack_require__(4400);
var globalThis = __webpack_require__(4127);
var defineGlobalProperty = __webpack_require__(6564);

var SHARED = '__core-js_shared__';
var store = module.exports = globalThis[SHARED] || defineGlobalProperty(SHARED, {});

(store.versions || (store.versions = [])).push({
  version: '3.50.0',
  mode: IS_PURE ? 'pure' : 'global',
  copyright: '© 2013–2025 Denis Pushkarev (zloirock.ru), 2025–2026 CoreJS Company (core-js.io). All rights reserved.',
  license: 'https://github.com/zloirock/core-js/blob/v3.50.0/LICENSE',
  source: 'https://github.com/zloirock/core-js'
});


/***/ }),

/***/ 5384:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {


var store = __webpack_require__(352);
// eslint-disable-next-line es/no-object-create -- safe
var create = Object.create || Object;

module.exports = function (key, value) {
  return store[key] || (store[key] = value || create(null));
};


/***/ }),

/***/ 8178:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {


var anObject = __webpack_require__(4464);
var aConstructor = __webpack_require__(9259);
var isNullOrUndefined = __webpack_require__(3600);
var wellKnownSymbol = __webpack_require__(7080);

var SPECIES = wellKnownSymbol('species');

// `SpeciesConstructor` abstract operation
// https://tc39.es/ecma262/#sec-speciesconstructor
module.exports = function (O, defaultConstructor) {
  var C = anObject(O).constructor;
  var S;
  return C === undefined || isNullOrUndefined(S = anObject(C)[SPECIES]) ? defaultConstructor : aConstructor(S);
};


/***/ }),

/***/ 6478:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {


var uncurryThis = __webpack_require__(3027);
var toIntegerOrInfinity = __webpack_require__(1402);
var toString = __webpack_require__(7616);
var requireObjectCoercible = __webpack_require__(7263);

var charAt = uncurryThis(''.charAt);
var charCodeAt = uncurryThis(''.charCodeAt);
var stringSlice = uncurryThis(''.slice);

var createMethod = function (CONVERT_TO_STRING) {
  return function ($this, pos) {
    var S = toString(requireObjectCoercible($this));
    var position = toIntegerOrInfinity(pos);
    var size = S.length;
    var first, second;
    if (position < 0 || position >= size) return CONVERT_TO_STRING ? '' : undefined;
    first = charCodeAt(S, position);
    return first < 0xD800 || first > 0xDBFF || position + 1 === size
      || (second = charCodeAt(S, position + 1)) < 0xDC00 || second > 0xDFFF
        ? CONVERT_TO_STRING
          ? charAt(S, position)
          : first
        : CONVERT_TO_STRING
          ? stringSlice(S, position, position + 2)
          : (first - 0xD800 << 10) + (second - 0xDC00) + 0x10000;
  };
};

module.exports = {
  // `String.prototype.codePointAt` method
  // https://tc39.es/ecma262/#sec-string.prototype.codepointat
  L: createMethod(false),
  // `String.prototype.at` method
  // https://github.com/mathiasbynens/String.prototype.at
  o: createMethod(true)
};


/***/ }),

/***/ 2068:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {


// based on https://github.com/bestiejs/punycode.js/blob/master/punycode.js
var uncurryThis = __webpack_require__(3027);

var maxInt = 2147483647; // aka. 0x7FFFFFFF or 2^31-1
var base = 36;
var tMin = 1;
var tMax = 26;
var skew = 38;
var damp = 700;
var initialBias = 72;
var initialN = 128; // 0x80
var delimiter = '-'; // '\x2D'
var regexNonASCII = /[^\0-\u007E]/; // non-ASCII chars
var regexSeparators = /[.\u3002\uFF0E\uFF61]/g; // RFC 3490 separators
var OVERFLOW_ERROR = 'Overflow: input needs wider integers to process';
var baseMinusTMin = base - tMin;

var $RangeError = RangeError;
var exec = uncurryThis(regexSeparators.exec);
var floor = Math.floor;
var fromCharCode = String.fromCharCode;
var charCodeAt = uncurryThis(''.charCodeAt);
var join = uncurryThis([].join);
var push = uncurryThis([].push);
var replace = uncurryThis(''.replace);
var split = uncurryThis(''.split);
var toLowerCase = uncurryThis(''.toLowerCase);

/**
 * Creates an array containing the numeric code points of each Unicode
 * character in the string. While JavaScript uses UCS-2 internally,
 * this function will convert a pair of surrogate halves (each of which
 * UCS-2 exposes as separate characters) into a single code point,
 * matching UTF-16.
 */
var ucs2decode = function (string) {
  var output = [];
  var counter = 0;
  var length = string.length;
  while (counter < length) {
    var value = charCodeAt(string, counter++);
    if (value >= 0xD800 && value <= 0xDBFF && counter < length) {
      // It's a high surrogate, and there is a next character.
      var extra = charCodeAt(string, counter++);
      if ((extra & 0xFC00) === 0xDC00) { // Low surrogate.
        push(output, ((value & 0x3FF) << 10) + (extra & 0x3FF) + 0x10000);
      } else {
        // It's an unmatched surrogate; only append this code unit, in case the
        // next code unit is the high surrogate of a surrogate pair.
        push(output, value);
        counter--;
      }
    } else {
      push(output, value);
    }
  }
  return output;
};

/**
 * Converts a digit/integer into a basic code point.
 */
var digitToBasic = function (digit) {
  //  0..25 map to ASCII a..z or A..Z
  // 26..35 map to ASCII 0..9
  return digit + 22 + 75 * (digit < 26);
};

/**
 * Bias adaptation function as per section 3.4 of RFC 3492.
 * https://tools.ietf.org/html/rfc3492#section-3.4
 */
var adapt = function (delta, numPoints, firstTime) {
  var k = 0;
  delta = firstTime ? floor(delta / damp) : delta >> 1;
  delta += floor(delta / numPoints);
  while (delta > baseMinusTMin * tMax >> 1) {
    delta = floor(delta / baseMinusTMin);
    k += base;
  }
  return floor(k + (baseMinusTMin + 1) * delta / (delta + skew));
};

/**
 * Converts a string of Unicode symbols (e.g. a domain name label) to a
 * Punycode string of ASCII-only symbols.
 */
var encode = function (input) {
  var output = [];

  // Convert the input in UCS-2 to an array of Unicode code points.
  input = ucs2decode(input);

  // Cache the length.
  var inputLength = input.length;

  // Initialize the state.
  var n = initialN;
  var delta = 0;
  var bias = initialBias;
  var i, currentValue;

  // Handle the basic code points.
  for (i = 0; i < input.length; i++) {
    currentValue = input[i];
    if (currentValue < 0x80) {
      push(output, fromCharCode(currentValue));
    }
  }

  var basicLength = output.length; // number of basic code points.
  var handledCPCount = basicLength; // number of code points that have been handled;

  // Finish the basic string with a delimiter unless it's empty.
  if (basicLength) {
    push(output, delimiter);
  }

  // Main encoding loop:
  while (handledCPCount < inputLength) {
    // All non-basic code points < n have been handled already. Find the next larger one:
    var m = maxInt;
    for (i = 0; i < input.length; i++) {
      currentValue = input[i];
      if (currentValue >= n && currentValue < m) {
        m = currentValue;
      }
    }

    // Increase `delta` enough to advance the decoder's <n,i> state to <m,0>, but guard against overflow.
    var handledCPCountPlusOne = handledCPCount + 1;
    if (m - n > floor((maxInt - delta) / handledCPCountPlusOne)) {
      throw new $RangeError(OVERFLOW_ERROR);
    }

    delta += (m - n) * handledCPCountPlusOne;
    n = m;

    for (i = 0; i < input.length; i++) {
      currentValue = input[i];
      if (currentValue < n && ++delta > maxInt) {
        throw new $RangeError(OVERFLOW_ERROR);
      }
      if (currentValue === n) {
        // Represent delta as a generalized variable-length integer.
        var q = delta;
        var k = base;
        while (true) {
          var t = k <= bias ? tMin : k >= bias + tMax ? tMax : k - bias;
          if (q < t) break;
          var qMinusT = q - t;
          var baseMinusT = base - t;
          push(output, fromCharCode(digitToBasic(t + qMinusT % baseMinusT)));
          q = floor(qMinusT / baseMinusT);
          k += base;
        }

        push(output, fromCharCode(digitToBasic(q)));
        bias = adapt(delta, handledCPCountPlusOne, handledCPCount === basicLength);
        delta = 0;
        handledCPCount++;
      }
    }

    delta++;
    n++;
  }
  return join(output, '');
};

module.exports = function (input) {
  var encoded = [];
  var labels = split(replace(toLowerCase(input), regexSeparators, '\u002E'), '.');
  var i, label;
  for (i = 0; i < labels.length; i++) {
    label = labels[i];
    push(encoded, exec(regexNonASCII, label) ? 'xn--' + encode(label) : label);
  }
  return join(encoded, '.');
};


/***/ }),

/***/ 1586:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {


var toIntegerOrInfinity = __webpack_require__(1402);
var toString = __webpack_require__(7616);
var requireObjectCoercible = __webpack_require__(7263);

var $RangeError = RangeError;
var floor = Math.floor;

// `String.prototype.repeat` method implementation
// https://tc39.es/ecma262/#sec-string.prototype.repeat
module.exports = function repeat(count) {
  var str = toString(requireObjectCoercible(this));
  var result = '';
  var n = toIntegerOrInfinity(count);
  if (n < 0 || n === Infinity) throw new $RangeError('Wrong number of repetitions');
  for (;n > 0; (n = floor(n / 2)) && (str += str)) if (n % 2) result += str;
  return result;
};


/***/ }),

/***/ 5365:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {


var globalThis = __webpack_require__(4127);
var fails = __webpack_require__(4892);
var V8 = __webpack_require__(5422);
var ENVIRONMENT = __webpack_require__(9296);

var structuredClone = globalThis.structuredClone;

module.exports = !!structuredClone && !fails(function () {
  // prevent V8 ArrayBufferDetaching protector cell invalidation and performance degradation
  // https://github.com/zloirock/core-js/issues/679
  if ((ENVIRONMENT === 'DENO' && V8 > 92) || (ENVIRONMENT === 'NODE' && V8 > 94) || (ENVIRONMENT === 'BROWSER' && V8 > 97)) return false;
  var buffer = new ArrayBuffer(8);
  var clone = structuredClone(buffer, { transfer: [buffer] });
  return buffer.byteLength !== 0 || clone.byteLength !== 8;
});


/***/ }),

/***/ 7974:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {


/* eslint-disable es/no-symbol -- required for testing */
var V8_VERSION = __webpack_require__(5422);
var fails = __webpack_require__(4892);
var globalThis = __webpack_require__(4127);

var $String = globalThis.String;

// eslint-disable-next-line es/no-object-getownpropertysymbols -- required for testing
module.exports = !!Object.getOwnPropertySymbols && !fails(function () {
  var symbol = Symbol('symbol detection');
  // Chrome 38 Symbol has incorrect toString conversion
  // `get-own-property-symbols` polyfill symbols converted to object are not Symbol instances
  // nb: Do not call `String` directly to avoid this being optimized out to `symbol+''` which will,
  // of course, fail.
  return !$String(symbol) || !(Object(symbol) instanceof Symbol) ||
    // Chrome 38-40 symbols are not inherited from DOM collections prototypes to instances
    !Symbol.sham && V8_VERSION && V8_VERSION < 41;
});


/***/ }),

/***/ 9295:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {


var uncurryThis = __webpack_require__(3027);

// `thisNumberValue` abstract operation
// https://tc39.es/ecma262/#sec-thisnumbervalue
module.exports = uncurryThis(1.1.valueOf);


/***/ }),

/***/ 8977:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {


var toIntegerOrInfinity = __webpack_require__(1402);

var max = Math.max;
var min = Math.min;

// Helper for a popular repeating case of the spec:
// Let integer be ? ToInteger(index).
// If integer < 0, let result be max((length + integer), 0); else let result be min(integer, length).
module.exports = function (index, length) {
  var integer = toIntegerOrInfinity(index);
  return integer < 0 ? max(integer + length, 0) : min(integer, length);
};


/***/ }),

/***/ 1835:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {


var toPrimitive = __webpack_require__(2732);

var $TypeError = TypeError;

// `ToBigInt` abstract operation
// https://tc39.es/ecma262/#sec-tobigint
module.exports = function (argument) {
  var prim = toPrimitive(argument, 'number');
  if (typeof prim == 'number') throw new $TypeError("Can't convert number to bigint");
  // eslint-disable-next-line es/no-bigint -- safe
  return BigInt(prim);
};


/***/ }),

/***/ 4473:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {


var toIntegerOrInfinity = __webpack_require__(1402);
var toLength = __webpack_require__(2737);

var $RangeError = RangeError;

// `ToIndex` abstract operation
// https://tc39.es/ecma262/#sec-toindex
module.exports = function (it) {
  if (it === undefined) return 0;
  var number = toIntegerOrInfinity(it);
  var length = toLength(number);
  if (number !== length) throw new $RangeError('Wrong length or index');
  return length;
};


/***/ }),

/***/ 9630:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {


// toObject with fallback for non-array-like ES3 strings
var IndexedObject = __webpack_require__(2466);
var requireObjectCoercible = __webpack_require__(7263);

module.exports = function (it) {
  return IndexedObject(requireObjectCoercible(it));
};


/***/ }),

/***/ 1402:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {


var trunc = __webpack_require__(7352);

// `ToIntegerOrInfinity` abstract operation
// https://tc39.es/ecma262/#sec-tointegerorinfinity
module.exports = function (argument) {
  var number = +argument;
  // eslint-disable-next-line no-self-compare -- NaN check
  return number !== number || number === 0 ? 0 : trunc(number);
};


/***/ }),

/***/ 2737:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {


var toIntegerOrInfinity = __webpack_require__(1402);

var min = Math.min;

// `ToLength` abstract operation
// https://tc39.es/ecma262/#sec-tolength
module.exports = function (argument) {
  var len = toIntegerOrInfinity(argument);
  return len > 0 ? min(len, 0x1FFFFFFFFFFFFF) : 0; // 2 ** 53 - 1 == 9007199254740991
};


/***/ }),

/***/ 6674:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {


var requireObjectCoercible = __webpack_require__(7263);

var $Object = Object;

// `ToObject` abstract operation
// https://tc39.es/ecma262/#sec-toobject
module.exports = function (argument) {
  return $Object(requireObjectCoercible(argument));
};


/***/ }),

/***/ 2886:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {


var toPositiveInteger = __webpack_require__(6137);

var $RangeError = RangeError;

module.exports = function (it, BYTES) {
  var offset = toPositiveInteger(it);
  if (offset % BYTES) throw new $RangeError('Wrong offset');
  return offset;
};


/***/ }),

/***/ 6137:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {


var toIntegerOrInfinity = __webpack_require__(1402);

var $RangeError = RangeError;

module.exports = function (it) {
  var result = toIntegerOrInfinity(it);
  if (result < 0) throw new $RangeError("The argument can't be less than 0");
  return result;
};


/***/ }),

/***/ 2732:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {


var call = __webpack_require__(5418);
var isObject = __webpack_require__(8861);
var isSymbol = __webpack_require__(1898);
var getMethod = __webpack_require__(4215);
var ordinaryToPrimitive = __webpack_require__(5269);
var wellKnownSymbol = __webpack_require__(7080);

var $TypeError = TypeError;
var TO_PRIMITIVE = wellKnownSymbol('toPrimitive');

// `ToPrimitive` abstract operation
// https://tc39.es/ecma262/#sec-toprimitive
module.exports = function (input, pref) {
  if (!isObject(input) || isSymbol(input)) return input;
  var exoticToPrim = getMethod(input, TO_PRIMITIVE);
  var result;
  if (exoticToPrim) {
    if (pref === undefined) pref = 'default';
    result = call(exoticToPrim, input, pref);
    if (!isObject(result) || isSymbol(result)) return result;
    throw new $TypeError("Can't convert object to primitive value");
  }
  if (pref === undefined) pref = 'number';
  return ordinaryToPrimitive(input, pref);
};


/***/ }),

/***/ 3750:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {


var toPrimitive = __webpack_require__(2732);
var isSymbol = __webpack_require__(1898);

// `ToPropertyKey` abstract operation
// https://tc39.es/ecma262/#sec-topropertykey
module.exports = function (argument) {
  var key = toPrimitive(argument, 'string');
  return isSymbol(key) ? key : key + '';
};


/***/ }),

/***/ 7167:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {


var wellKnownSymbol = __webpack_require__(7080);

var TO_STRING_TAG = wellKnownSymbol('toStringTag');
var test = {};
// eslint-disable-next-line unicorn/no-immediate-mutation -- ES3 syntax limitation
test[TO_STRING_TAG] = 'z';

module.exports = String(test) === '[object z]';


/***/ }),

/***/ 7616:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {


var classof = __webpack_require__(7964);

var $String = String;

module.exports = function (argument) {
  if (classof(argument) === 'Symbol') throw new TypeError('Cannot convert a Symbol value to a string');
  return $String(argument);
};


/***/ }),

/***/ 3782:
/***/ ((module) => {


var floor = Math.floor;

// https://tc39.es/ecma262/#sec-touint8clamp
module.exports = function (it) {
  var number = +it;
  // eslint-disable-next-line no-self-compare -- NaN check
  if (number !== number || number <= 0) return 0;
  if (number >= 0xFF) return 0xFF;
  var f = floor(number);
  if (f + 0.5 < number) return f + 1;
  if (number < f + 0.5) return f;
  // round-half-to-even (banker's rounding)
  return f % 2 === 0 ? f : f + 1;
};


/***/ }),

/***/ 2272:
/***/ ((module) => {


var $String = String;

module.exports = function (argument) {
  try {
    return $String(argument);
  } catch (error) {
    return 'Object';
  }
};


/***/ }),

/***/ 9364:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {


var $ = __webpack_require__(1187);
var globalThis = __webpack_require__(4127);
var call = __webpack_require__(5418);
var DESCRIPTORS = __webpack_require__(1175);
var TYPED_ARRAYS_CONSTRUCTORS_REQUIRES_WRAPPERS = __webpack_require__(7978);
var ArrayBufferViewCore = __webpack_require__(1977);
var ArrayBufferModule = __webpack_require__(4063);
var anInstance = __webpack_require__(1468);
var createPropertyDescriptor = __webpack_require__(1513);
var createNonEnumerableProperty = __webpack_require__(298);
var isIntegralNumber = __webpack_require__(4922);
var toIndex = __webpack_require__(4473);
var toOffset = __webpack_require__(2886);
var toUint8Clamped = __webpack_require__(3782);
var toPropertyKey = __webpack_require__(3750);
var hasOwn = __webpack_require__(1324);
var classof = __webpack_require__(7964);
var isObject = __webpack_require__(8861);
var isSymbol = __webpack_require__(1898);
var create = __webpack_require__(475);
var isPrototypeOf = __webpack_require__(1688);
var setPrototypeOf = __webpack_require__(4792);
var getOwnPropertyNames = (__webpack_require__(8331).f);
var typedArrayFrom = __webpack_require__(3790);
var forEach = (__webpack_require__(8454).forEach);
var setSpecies = __webpack_require__(3902);
var defineBuiltInAccessor = __webpack_require__(707);
var definePropertyModule = __webpack_require__(9100);
var getOwnPropertyDescriptorModule = __webpack_require__(6150);
var arrayFromConstructorAndList = __webpack_require__(293);
var InternalStateModule = __webpack_require__(4852);
var inheritIfRequired = __webpack_require__(6388);

var getInternalState = InternalStateModule.get;
var setInternalState = InternalStateModule.set;
var enforceInternalState = InternalStateModule.enforce;
var nativeDefineProperty = definePropertyModule.f;
var nativeGetOwnPropertyDescriptor = getOwnPropertyDescriptorModule.f;
var RangeError = globalThis.RangeError;
var ArrayBuffer = ArrayBufferModule.ArrayBuffer;
var ArrayBufferPrototype = ArrayBuffer.prototype;
var DataView = ArrayBufferModule.DataView;
var NATIVE_ARRAY_BUFFER_VIEWS = ArrayBufferViewCore.NATIVE_ARRAY_BUFFER_VIEWS;
var TYPED_ARRAY_TAG = ArrayBufferViewCore.TYPED_ARRAY_TAG;
var TypedArray = ArrayBufferViewCore.TypedArray;
var TypedArrayPrototype = ArrayBufferViewCore.TypedArrayPrototype;
var isTypedArray = ArrayBufferViewCore.isTypedArray;
var BYTES_PER_ELEMENT = 'BYTES_PER_ELEMENT';
var WRONG_LENGTH = 'Wrong length';

var addGetter = function (it, key) {
  defineBuiltInAccessor(it, key, {
    configurable: true,
    get: function () {
      return getInternalState(this)[key];
    }
  });
};

var isArrayBuffer = function (it) {
  var klass;
  return isPrototypeOf(ArrayBufferPrototype, it) || (klass = classof(it)) === 'ArrayBuffer' || klass === 'SharedArrayBuffer';
};

var isTypedArrayIndex = function (target, key) {
  return isTypedArray(target)
    && !isSymbol(key)
    && key in target
    && isIntegralNumber(+key)
    && key >= 0;
};

var wrappedGetOwnPropertyDescriptor = function getOwnPropertyDescriptor(target, key) {
  key = toPropertyKey(key);
  return isTypedArrayIndex(target, key)
    ? createPropertyDescriptor(2, target[key])
    : nativeGetOwnPropertyDescriptor(target, key);
};

var wrappedDefineProperty = function defineProperty(target, key, descriptor) {
  key = toPropertyKey(key);
  if (isTypedArrayIndex(target, key)
    && isObject(descriptor)
    && hasOwn(descriptor, 'value')
    && !hasOwn(descriptor, 'get')
    && !hasOwn(descriptor, 'set')
    // TODO: add validation descriptor w/o calling accessors
    && !descriptor.configurable
    && (!hasOwn(descriptor, 'writable') || descriptor.writable)
    && (!hasOwn(descriptor, 'enumerable') || descriptor.enumerable)
  ) {
    target[key] = descriptor.value;
    return target;
  } return nativeDefineProperty(target, key, descriptor);
};

if (DESCRIPTORS) {
  if (!NATIVE_ARRAY_BUFFER_VIEWS) {
    getOwnPropertyDescriptorModule.f = wrappedGetOwnPropertyDescriptor;
    definePropertyModule.f = wrappedDefineProperty;
    addGetter(TypedArrayPrototype, 'buffer');
    addGetter(TypedArrayPrototype, 'byteOffset');
    addGetter(TypedArrayPrototype, 'byteLength');
    addGetter(TypedArrayPrototype, 'length');
  }

  $({ target: 'Object', stat: true, forced: !NATIVE_ARRAY_BUFFER_VIEWS }, {
    getOwnPropertyDescriptor: wrappedGetOwnPropertyDescriptor,
    defineProperty: wrappedDefineProperty
  });

  module.exports = function (TYPE, wrapper, CLAMPED) {
    var BYTES = TYPE.match(/\d+/)[0] / 8;
    var CONSTRUCTOR_NAME = TYPE + (CLAMPED ? 'Clamped' : '') + 'Array';
    var GETTER = 'get' + TYPE;
    var SETTER = 'set' + TYPE;
    var NativeTypedArrayConstructor = globalThis[CONSTRUCTOR_NAME];
    var TypedArrayConstructor = NativeTypedArrayConstructor;
    var TypedArrayConstructorPrototype = TypedArrayConstructor && TypedArrayConstructor.prototype;
    var exported = {};

    var getter = function (that, index) {
      var data = getInternalState(that);
      return data.view[GETTER](index * BYTES + data.byteOffset, true);
    };

    var setter = function (that, index, value) {
      var data = getInternalState(that);
      data.view[SETTER](index * BYTES + data.byteOffset, CLAMPED ? toUint8Clamped(value) : value, true);
    };

    var addElement = function (that, index) {
      nativeDefineProperty(that, index, {
        get: function () {
          return getter(this, index);
        },
        set: function (value) {
          return setter(this, index, value);
        },
        enumerable: true
      });
    };

    if (!NATIVE_ARRAY_BUFFER_VIEWS) {
      TypedArrayConstructor = wrapper(function (that, data, offset, $length) {
        anInstance(that, TypedArrayConstructorPrototype);
        var index = 0;
        var byteOffset = 0;
        var buffer, byteLength, length;
        if (!isObject(data)) {
          length = toIndex(data);
          byteLength = length * BYTES;
          buffer = new ArrayBuffer(byteLength);
        } else if (isArrayBuffer(data)) {
          buffer = data;
          byteOffset = toOffset(offset, BYTES);
          var $len = data.byteLength;
          if ($length === undefined) {
            if ($len % BYTES) throw new RangeError(WRONG_LENGTH);
            byteLength = $len - byteOffset;
            if (byteLength < 0) throw new RangeError(WRONG_LENGTH);
          } else {
            byteLength = toIndex($length) * BYTES;
            if (byteLength + byteOffset > $len) throw new RangeError(WRONG_LENGTH);
          }
          length = byteLength / BYTES;
        } else if (isTypedArray(data)) {
          return arrayFromConstructorAndList(TypedArrayConstructor, data);
        } else {
          return call(typedArrayFrom, TypedArrayConstructor, data);
        }
        setInternalState(that, {
          buffer: buffer,
          byteOffset: byteOffset,
          byteLength: byteLength,
          length: length,
          view: new DataView(buffer)
        });
        while (index < length) addElement(that, index++);
      });

      if (setPrototypeOf) setPrototypeOf(TypedArrayConstructor, TypedArray);
      TypedArrayConstructorPrototype = TypedArrayConstructor.prototype = create(TypedArrayPrototype);
    } else if (TYPED_ARRAYS_CONSTRUCTORS_REQUIRES_WRAPPERS) {
      TypedArrayConstructor = wrapper(function (dummy, data, typedArrayOffset, $length) {
        anInstance(dummy, TypedArrayConstructorPrototype);
        return inheritIfRequired(function () {
          if (!isObject(data)) return new NativeTypedArrayConstructor(toIndex(data));
          if (isArrayBuffer(data)) return $length !== undefined
            ? new NativeTypedArrayConstructor(data, toOffset(typedArrayOffset, BYTES), $length)
            : typedArrayOffset !== undefined
              ? new NativeTypedArrayConstructor(data, toOffset(typedArrayOffset, BYTES))
              : new NativeTypedArrayConstructor(data);
          if (isTypedArray(data)) return arrayFromConstructorAndList(TypedArrayConstructor, data);
          return call(typedArrayFrom, TypedArrayConstructor, data);
        }(), dummy, TypedArrayConstructor);
      });

      if (setPrototypeOf) setPrototypeOf(TypedArrayConstructor, TypedArray);
      forEach(getOwnPropertyNames(NativeTypedArrayConstructor), function (key) {
        if (!(key in TypedArrayConstructor)) {
          createNonEnumerableProperty(TypedArrayConstructor, key, NativeTypedArrayConstructor[key]);
        }
      });
      TypedArrayConstructor.prototype = TypedArrayConstructorPrototype;
    }

    if (TypedArrayConstructorPrototype.constructor !== TypedArrayConstructor) {
      createNonEnumerableProperty(TypedArrayConstructorPrototype, 'constructor', TypedArrayConstructor);
    }

    enforceInternalState(TypedArrayConstructorPrototype).TypedArrayConstructor = TypedArrayConstructor;

    if (TYPED_ARRAY_TAG) {
      createNonEnumerableProperty(TypedArrayConstructorPrototype, TYPED_ARRAY_TAG, CONSTRUCTOR_NAME);
    }

    var FORCED = TypedArrayConstructor !== NativeTypedArrayConstructor;

    exported[CONSTRUCTOR_NAME] = TypedArrayConstructor;

    $({ global: true, constructor: true, forced: FORCED, sham: !NATIVE_ARRAY_BUFFER_VIEWS }, exported);

    if (!(BYTES_PER_ELEMENT in TypedArrayConstructor)) {
      createNonEnumerableProperty(TypedArrayConstructor, BYTES_PER_ELEMENT, BYTES);
    }

    if (!(BYTES_PER_ELEMENT in TypedArrayConstructorPrototype)) {
      createNonEnumerableProperty(TypedArrayConstructorPrototype, BYTES_PER_ELEMENT, BYTES);
    }

    setSpecies(CONSTRUCTOR_NAME);
  };
} else module.exports = function () { /* empty */ };


/***/ }),

/***/ 7978:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {


/* eslint-disable no-new, sonarjs/inconsistent-function-call -- required for testing */
var globalThis = __webpack_require__(4127);
var fails = __webpack_require__(4892);
var checkCorrectnessOfIteration = __webpack_require__(153);
var NATIVE_ARRAY_BUFFER_VIEWS = (__webpack_require__(1977).NATIVE_ARRAY_BUFFER_VIEWS);

var ArrayBuffer = globalThis.ArrayBuffer;
var Int8Array = globalThis.Int8Array;

module.exports = !NATIVE_ARRAY_BUFFER_VIEWS || !fails(function () {
  Int8Array(1);
}) || !fails(function () {
  new Int8Array(-1);
}) || !checkCorrectnessOfIteration(function (iterable) {
  new Int8Array();
  new Int8Array(null);
  new Int8Array(1.5);
  new Int8Array(iterable);
}, true) || fails(function () {
  // Safari (11+) bug - a reason why even Safari 13 should load a typed array polyfill
  return new Int8Array(new ArrayBuffer(2), 1, undefined).length !== 1;
});


/***/ }),

/***/ 3790:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {


var bind = __webpack_require__(1079);
var call = __webpack_require__(5418);
var aCallable = __webpack_require__(6927);
var aConstructor = __webpack_require__(9259);
var toObject = __webpack_require__(6674);
var lengthOfArrayLike = __webpack_require__(5807);
var getIterator = __webpack_require__(2248);
var getIteratorMethod = __webpack_require__(4188);
var isArrayIteratorMethod = __webpack_require__(4916);
var isBigIntArray = __webpack_require__(4830);
var aTypedArrayConstructor = (__webpack_require__(1977).aTypedArrayConstructor);
var toBigInt = __webpack_require__(1835);

module.exports = function from(source /* , mapfn, thisArg */) {
  var C = aConstructor(this);
  var argumentsLength = arguments.length;
  var mapfn = argumentsLength > 1 ? arguments[1] : undefined;
  var mapping = mapfn !== undefined;
  if (mapping) aCallable(mapfn);
  var O = toObject(source);
  var iteratorMethod = getIteratorMethod(O);
  var i, length, result, thisIsBigIntArray, value, step, iterator, next;
  if (iteratorMethod && !isArrayIteratorMethod(iteratorMethod)) {
    iterator = getIterator(O, iteratorMethod);
    next = iterator.next;
    O = [];
    while (!(step = call(next, iterator)).done) {
      O.push(step.value);
    }
  }
  if (mapping && argumentsLength > 2) {
    mapfn = bind(mapfn, arguments[2]);
  }
  length = lengthOfArrayLike(O);
  result = new (aTypedArrayConstructor(C))(length);
  thisIsBigIntArray = isBigIntArray(result);
  for (i = 0; length > i; i++) {
    value = mapping ? mapfn(O[i], i) : O[i];
    // FF30- typed arrays doesn't properly convert objects to typed array values
    result[i] = thisIsBigIntArray ? toBigInt(value) : +value;
  }
  return result;
};


/***/ }),

/***/ 3699:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {


var uncurryThis = __webpack_require__(3027);

var id = 0;
var postfix = Math.random();
var toString = uncurryThis(1.1.toString);

module.exports = function (key) {
  return 'Symbol(' + (key === undefined ? '' : key) + ')_' + toString(++id + postfix, 36);
};


/***/ }),

/***/ 9512:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {


var globalThis = __webpack_require__(4127);
var uncurryThis = __webpack_require__(3027);
var anObjectOrUndefined = __webpack_require__(2293);
var aString = __webpack_require__(2498);
var hasOwn = __webpack_require__(1324);
var base64Map = __webpack_require__(469);
var getAlphabetOption = __webpack_require__(8035);
var notDetached = __webpack_require__(3074);

var base64Alphabet = base64Map.c2i;
var base64UrlAlphabet = base64Map.c2iUrl;

var SyntaxError = globalThis.SyntaxError;
var TypeError = globalThis.TypeError;
var $Array = globalThis.Array;
var at = uncurryThis(''.charAt);
var floor = Math.floor;

var skipAsciiWhitespace = function (string, index) {
  var length = string.length;
  for (;index < length; index++) {
    var chr = at(string, index);
    if (chr !== ' ' && chr !== '\t' && chr !== '\n' && chr !== '\f' && chr !== '\r') break;
  } return index;
};

var decodeBase64Chunk = function (chunk, alphabet, throwOnExtraBits) {
  var chunkLength = chunk.length;

  if (chunkLength < 4) {
    chunk += chunkLength === 2 ? 'AA' : 'A';
  }

  var triplet = (alphabet[at(chunk, 0)] << 18)
    + (alphabet[at(chunk, 1)] << 12)
    + (alphabet[at(chunk, 2)] << 6)
    + alphabet[at(chunk, 3)];

  var chunkBytes = [
    (triplet >> 16) & 255,
    (triplet >> 8) & 255,
    triplet & 255
  ];

  if (chunkLength === 2) {
    if (throwOnExtraBits && chunkBytes[1] !== 0) {
      throw new SyntaxError('Extra bits');
    }
    return [chunkBytes[0]];
  }

  if (chunkLength === 3) {
    if (throwOnExtraBits && chunkBytes[2] !== 0) {
      throw new SyntaxError('Extra bits');
    }
    return [chunkBytes[0], chunkBytes[1]];
  }

  return chunkBytes;
};

var writeBytes = function (bytes, elements, written) {
  var elementsLength = elements.length;
  for (var index = 0; index < elementsLength; index++) {
    bytes[written + index] = elements[index];
  }
  return written + elementsLength;
};

/* eslint-disable max-statements, max-depth -- TODO */
module.exports = function (string, options, into, maxLength) {
  aString(string);
  anObjectOrUndefined(options);
  var alphabet = getAlphabetOption(options) === 'base64' ? base64Alphabet : base64UrlAlphabet;
  var lastChunkHandling = options ? options.lastChunkHandling : undefined;

  if (lastChunkHandling === undefined) lastChunkHandling = 'loose';

  if (lastChunkHandling !== 'loose' && lastChunkHandling !== 'strict' && lastChunkHandling !== 'stop-before-partial') {
    throw new TypeError('Incorrect `lastChunkHandling` option');
  }

  if (into) notDetached(into.buffer);

  var stringLength = string.length;
  var bytes = into || $Array(floor(stringLength * 3 / 4));
  var written = 0;
  var read = 0;
  var chunk = '';
  var index = 0;

  if (maxLength) while (true) {
    index = skipAsciiWhitespace(string, index);
    if (index === stringLength) {
      if (chunk.length > 0) {
        if (lastChunkHandling === 'stop-before-partial') {
          break;
        }
        if (lastChunkHandling === 'loose') {
          if (chunk.length === 1) {
            throw new SyntaxError('Malformed padding: exactly one additional character');
          }
          written = writeBytes(bytes, decodeBase64Chunk(chunk, alphabet, false), written);
        } else {
          throw new SyntaxError('Missing padding');
        }
      }
      read = stringLength;
      break;
    }
    var chr = at(string, index);
    ++index;
    if (chr === '=') {
      if (chunk.length < 2) {
        throw new SyntaxError('Padding is too early');
      }
      index = skipAsciiWhitespace(string, index);
      if (chunk.length === 2) {
        if (index === stringLength) {
          if (lastChunkHandling === 'stop-before-partial') {
            break;
          }
          throw new SyntaxError('Malformed padding: only one =');
        }
        if (at(string, index) === '=') {
          ++index;
          index = skipAsciiWhitespace(string, index);
        }
      }
      if (index < stringLength) {
        throw new SyntaxError('Unexpected character after padding');
      }
      written = writeBytes(bytes, decodeBase64Chunk(chunk, alphabet, lastChunkHandling === 'strict'), written);
      read = stringLength;
      break;
    }
    if (!hasOwn(alphabet, chr)) {
      throw new SyntaxError('Unexpected character');
    }
    var remainingBytes = maxLength - written;
    if (remainingBytes === 1 && chunk.length === 2 || remainingBytes === 2 && chunk.length === 3) {
      // special case: we can fit exactly the number of bytes currently represented by chunk, so we were just checking for `=`
      break;
    }

    chunk += chr;
    if (chunk.length === 4) {
      written = writeBytes(bytes, decodeBase64Chunk(chunk, alphabet, false), written);
      chunk = '';
      read = index;
      if (written === maxLength) {
        break;
      }
    }
  }
  if (!into) bytes.length = written;
  return { bytes: bytes, read: read, written: written };
};


/***/ }),

/***/ 5874:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {


var globalThis = __webpack_require__(4127);
var uncurryThis = __webpack_require__(3027);

var Uint8Array = globalThis.Uint8Array;
var SyntaxError = globalThis.SyntaxError;
var min = Math.min;
var stringMatch = uncurryThis(''.match);

module.exports = function (string, into) {
  var stringLength = string.length;
  if (stringLength % 2 !== 0) throw new SyntaxError('String should be an even number of characters');
  var maxLength = into ? min(into.length, stringLength / 2) : stringLength / 2;
  var bytes = into || new Uint8Array(maxLength);
  var segments = stringMatch(string, /[\S\s]{2}/g);
  var written = 0;
  for (; written < maxLength; written++) {
    var result = +('0x' + segments[written] + '0');
    // eslint-disable-next-line no-self-compare -- NaN check
    if (result !== result) {
      throw new SyntaxError('String should only contain hex characters');
    }
    bytes[written] = result >> 4;
  }
  return { bytes: bytes, read: written << 1 };
};


/***/ }),

/***/ 535:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {


/* eslint-disable es/no-symbol -- required for testing */
var NATIVE_SYMBOL = __webpack_require__(7974);

module.exports = NATIVE_SYMBOL &&
  !Symbol.sham &&
  typeof Symbol.iterator == 'symbol';


/***/ }),

/***/ 8549:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {


var DESCRIPTORS = __webpack_require__(1175);
var fails = __webpack_require__(4892);

// V8 ~ Chrome 36-
// https://bugs.chromium.org/p/v8/issues/detail?id=3334
module.exports = DESCRIPTORS && fails(function () {
  // eslint-disable-next-line es/no-object-defineproperty -- required for testing
  return Object.defineProperty(function () { /* empty */ }, 'prototype', {
    value: 42,
    writable: false
  }).prototype !== 42;
});


/***/ }),

/***/ 567:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {


var globalThis = __webpack_require__(4127);
var isCallable = __webpack_require__(8794);

var WeakMap = globalThis.WeakMap;

module.exports = isCallable(WeakMap) && /native code/.test(String(WeakMap));


/***/ }),

/***/ 5290:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {


var uncurryThis = __webpack_require__(3027);

// eslint-disable-next-line es/no-weak-map -- safe
var WeakMapPrototype = WeakMap.prototype;

module.exports = {
  // eslint-disable-next-line es/no-weak-map -- safe
  WeakMap: WeakMap,
  set: uncurryThis(WeakMapPrototype.set),
  get: uncurryThis(WeakMapPrototype.get),
  has: uncurryThis(WeakMapPrototype.has),
  remove: uncurryThis(WeakMapPrototype['delete'])
};


/***/ }),

/***/ 5358:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {


var path = __webpack_require__(8926);
var hasOwn = __webpack_require__(1324);
var wrappedWellKnownSymbolModule = __webpack_require__(1664);
var defineProperty = (__webpack_require__(9100).f);

module.exports = function (NAME) {
  var Symbol = path.Symbol || (path.Symbol = {});
  if (!hasOwn(Symbol, NAME)) defineProperty(Symbol, NAME, {
    value: wrappedWellKnownSymbolModule.f(NAME)
  });
};


/***/ }),

/***/ 1664:
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {


var wellKnownSymbol = __webpack_require__(7080);

exports.f = wellKnownSymbol;


/***/ }),

/***/ 7080:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {


var globalThis = __webpack_require__(4127);
var shared = __webpack_require__(5384);
var hasOwn = __webpack_require__(1324);
var uid = __webpack_require__(3699);
var NATIVE_SYMBOL = __webpack_require__(7974);
var USE_SYMBOL_AS_UID = __webpack_require__(535);

var Symbol = globalThis.Symbol;
var WellKnownSymbolsStore = shared('wks');
var createWellKnownSymbol = USE_SYMBOL_AS_UID ? Symbol['for'] || Symbol : Symbol && Symbol.withoutSetter || uid;

module.exports = function (name) {
  if (!hasOwn(WellKnownSymbolsStore, name)) {
    WellKnownSymbolsStore[name] = NATIVE_SYMBOL && hasOwn(Symbol, name)
      ? Symbol[name]
      : createWellKnownSymbol('Symbol.' + name);
  } return WellKnownSymbolsStore[name];
};


/***/ }),

/***/ 6142:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {


var getBuiltIn = __webpack_require__(878);
var hasOwn = __webpack_require__(1324);
var createNonEnumerableProperty = __webpack_require__(298);
var isPrototypeOf = __webpack_require__(1688);
var setPrototypeOf = __webpack_require__(4792);
var copyConstructorProperties = __webpack_require__(2491);
var proxyAccessor = __webpack_require__(6925);
var inheritIfRequired = __webpack_require__(6388);
var normalizeStringArgument = __webpack_require__(6848);
var installErrorCause = __webpack_require__(7563);
var installErrorStack = __webpack_require__(4076);
var DESCRIPTORS = __webpack_require__(1175);
var IS_PURE = __webpack_require__(4400);

module.exports = function (FULL_NAME, wrapper, FORCED, IS_AGGREGATE_ERROR) {
  var STACK_TRACE_LIMIT = 'stackTraceLimit';
  var OPTIONS_POSITION = IS_AGGREGATE_ERROR ? 2 : 1;
  var path = FULL_NAME.split('.');
  var ERROR_NAME = path[path.length - 1];
  var OriginalError = getBuiltIn.apply(null, path);

  if (!OriginalError) return;

  var OriginalErrorPrototype = OriginalError.prototype;

  // V8 9.3- bug https://bugs.chromium.org/p/v8/issues/detail?id=12006
  if (!IS_PURE && hasOwn(OriginalErrorPrototype, 'cause')) delete OriginalErrorPrototype.cause;

  if (!FORCED) return OriginalError;

  var BaseError = getBuiltIn('Error');

  var WrappedError = wrapper(function (a, b) {
    var message = normalizeStringArgument(IS_AGGREGATE_ERROR ? b : a, undefined);
    var result = IS_AGGREGATE_ERROR ? new OriginalError(a) : new OriginalError();
    if (message !== undefined) createNonEnumerableProperty(result, 'message', message);
    installErrorStack(result, WrappedError, result.stack, 2);
    if (this && isPrototypeOf(OriginalErrorPrototype, this)) inheritIfRequired(result, this, WrappedError);
    if (arguments.length > OPTIONS_POSITION) installErrorCause(result, arguments[OPTIONS_POSITION]);
    return result;
  });

  WrappedError.prototype = OriginalErrorPrototype;

  if (ERROR_NAME !== 'Error') {
    if (setPrototypeOf) setPrototypeOf(WrappedError, BaseError);
    else copyConstructorProperties(WrappedError, BaseError, { name: true });
  } else if (DESCRIPTORS && STACK_TRACE_LIMIT in OriginalError) {
    proxyAccessor(WrappedError, OriginalError, STACK_TRACE_LIMIT);
    proxyAccessor(WrappedError, OriginalError, 'prepareStackTrace');
  }

  copyConstructorProperties(WrappedError, OriginalError);

  if (!IS_PURE) try {
    // Safari 13- bug: WebAssembly errors does not have a proper `.name`
    if (OriginalErrorPrototype.name !== ERROR_NAME) {
      createNonEnumerableProperty(OriginalErrorPrototype, 'name', ERROR_NAME);
    }
    OriginalErrorPrototype.constructor = WrappedError;
  } catch (error) { /* empty */ }

  return WrappedError;
};


/***/ }),

/***/ 9921:
/***/ ((__unused_webpack_module, __unused_webpack_exports, __webpack_require__) => {


var $ = __webpack_require__(1187);
var toObject = __webpack_require__(6674);
var lengthOfArrayLike = __webpack_require__(5807);
var setArrayLength = __webpack_require__(9786);
var doesNotExceedSafeInteger = __webpack_require__(2504);
var fails = __webpack_require__(4892);

var INCORRECT_TO_LENGTH = fails(function () {
  return [].push.call({ length: 0x100000000 }, 1) !== 4294967297;
});

// V8 <= 121 and Safari <= 15.4; FF < 23 throws InternalError
// https://bugs.chromium.org/p/v8/issues/detail?id=12681
var properErrorOnNonWritableLength = function () {
  try {
    // eslint-disable-next-line es/no-object-defineproperty -- safe
    Object.defineProperty([], 'length', { writable: false }).push();
  } catch (error) {
    return error instanceof TypeError;
  }
};

var FORCED = INCORRECT_TO_LENGTH || !properErrorOnNonWritableLength();

// `Array.prototype.push` method
// https://tc39.es/ecma262/#sec-array.prototype.push
$({ target: 'Array', proto: true, arity: 1, forced: FORCED }, {
  // eslint-disable-next-line no-unused-vars -- required for `.length`
  push: function push(item) {
    var O = toObject(this);
    var len = lengthOfArrayLike(O);
    var argCount = arguments.length;
    doesNotExceedSafeInteger(len + argCount);
    for (var i = 0; i < argCount; i++) {
      O[len] = arguments[i];
      len++;
    }
    setArrayLength(O, len);
    return len;
  }
});


/***/ }),

/***/ 7144:
/***/ ((__unused_webpack_module, __unused_webpack_exports, __webpack_require__) => {


var $ = __webpack_require__(1187);
var globalThis = __webpack_require__(4127);
var anInstance = __webpack_require__(1468);
var anObject = __webpack_require__(4464);
var isCallable = __webpack_require__(8794);
var getPrototypeOf = __webpack_require__(6068);
var defineBuiltInAccessor = __webpack_require__(707);
var createProperty = __webpack_require__(4119);
var fails = __webpack_require__(4892);
var hasOwn = __webpack_require__(1324);
var wellKnownSymbol = __webpack_require__(7080);
var IteratorPrototype = (__webpack_require__(2636).IteratorPrototype);
var DESCRIPTORS = __webpack_require__(1175);
var IS_PURE = __webpack_require__(4400);

var CONSTRUCTOR = 'constructor';
var ITERATOR = 'Iterator';
var TO_STRING_TAG = wellKnownSymbol('toStringTag');

var $TypeError = TypeError;
var NativeIterator = globalThis[ITERATOR];

// FF56- have non-standard global helper `Iterator`
var FORCED = IS_PURE
  || !isCallable(NativeIterator)
  || NativeIterator.prototype !== IteratorPrototype
  // FF44- non-standard `Iterator` passes previous tests
  || !fails(function () { NativeIterator({}); });

var IteratorConstructor = function Iterator() {
  anInstance(this, IteratorPrototype);
  if (getPrototypeOf(this) === IteratorPrototype) throw new $TypeError('Abstract class Iterator not directly constructable');
};

var defineIteratorPrototypeAccessor = function (key, value) {
  if (DESCRIPTORS) {
    defineBuiltInAccessor(IteratorPrototype, key, {
      configurable: true,
      get: function () {
        return value;
      },
      set: function (replacement) {
        anObject(this);
        if (this === IteratorPrototype) throw new $TypeError("You can't redefine this property");
        if (hasOwn(this, key)) this[key] = replacement;
        else createProperty(this, key, replacement);
      }
    });
  } else IteratorPrototype[key] = value;
};

if (!hasOwn(IteratorPrototype, TO_STRING_TAG)) defineIteratorPrototypeAccessor(TO_STRING_TAG, ITERATOR);

if (FORCED || !hasOwn(IteratorPrototype, CONSTRUCTOR) || IteratorPrototype[CONSTRUCTOR] === Object) {
  defineIteratorPrototypeAccessor(CONSTRUCTOR, IteratorConstructor);
}

IteratorConstructor.prototype = IteratorPrototype;

// `Iterator` constructor
// https://tc39.es/ecma262/#sec-iterator
$({ global: true, constructor: true, forced: FORCED }, {
  Iterator: IteratorConstructor
});


/***/ }),

/***/ 9542:
/***/ ((__unused_webpack_module, __unused_webpack_exports, __webpack_require__) => {


var $ = __webpack_require__(1187);
var call = __webpack_require__(5418);
var aCallable = __webpack_require__(6927);
var anObject = __webpack_require__(4464);
var getIteratorDirect = __webpack_require__(9060);
var createIteratorProxy = __webpack_require__(5521);
var callWithSafeIterationClosing = __webpack_require__(3666);
var iteratorClose = __webpack_require__(4090);
var iteratorHelperThrowsOnInvalidIterator = __webpack_require__(909);
var iteratorHelperWithoutClosingOnEarlyError = __webpack_require__(7280);
var IS_PURE = __webpack_require__(4400);

var MAP_WITHOUT_THROWING_ON_INVALID_ITERATOR = !IS_PURE && !iteratorHelperThrowsOnInvalidIterator('map', function () { /* empty */ });
var mapWithoutClosingOnEarlyError = !IS_PURE && !MAP_WITHOUT_THROWING_ON_INVALID_ITERATOR
  && iteratorHelperWithoutClosingOnEarlyError('map', TypeError);

var FORCED = IS_PURE || MAP_WITHOUT_THROWING_ON_INVALID_ITERATOR || mapWithoutClosingOnEarlyError;

var IteratorProxy = createIteratorProxy(function () {
  var iterator = this.iterator;
  var result = anObject(call(this.next, iterator));
  var done = this.done = !!result.done;
  if (!done) return callWithSafeIterationClosing(iterator, this.mapper, [result.value, this.counter++], true);
});

// `Iterator.prototype.map` method
// https://tc39.es/ecma262/#sec-iterator.prototype.map
$({ target: 'Iterator', proto: true, real: true, forced: FORCED }, {
  map: function map(mapper) {
    anObject(this);
    try {
      aCallable(mapper);
    } catch (error) {
      iteratorClose(this, 'throw', error);
    }

    if (mapWithoutClosingOnEarlyError) return call(mapWithoutClosingOnEarlyError, this, mapper);

    return new IteratorProxy(getIteratorDirect(this), {
      mapper: mapper
    });
  }
});


/***/ }),

/***/ 6873:
/***/ ((__unused_webpack_module, __unused_webpack_exports, __webpack_require__) => {


var $ = __webpack_require__(1187);
var getBuiltIn = __webpack_require__(878);
var call = __webpack_require__(5418);
var uncurryThis = __webpack_require__(3027);
var fails = __webpack_require__(4892);
var isArray = __webpack_require__(2001);
var isCallable = __webpack_require__(8794);
var isObject = __webpack_require__(8861);
var create = __webpack_require__(475);
var isRawJSON = __webpack_require__(3606);
var isSymbol = __webpack_require__(1898);
var classof = __webpack_require__(2911);
var thisNumberValue = __webpack_require__(9295);
var includes = (__webpack_require__(5460)/* .includes */ .m);
var hasOwn = __webpack_require__(1324);
var toString = __webpack_require__(7616);
var parseJSONString = __webpack_require__(9035);
var uid = __webpack_require__(3699);
var NATIVE_SYMBOL = __webpack_require__(7974);
var NATIVE_RAW_JSON = __webpack_require__(4672);

var $String = String;
var $TypeError = TypeError;
var $stringify = getBuiltIn('JSON', 'stringify');
var $BigInt = getBuiltIn('BigInt');
var stringValueOf = uncurryThis(''.valueOf);
var booleanValueOf = uncurryThis(true.valueOf);
var bigIntValueOf = $BigInt && uncurryThis($BigInt.prototype.valueOf);
var exec = uncurryThis(/./.exec);
var charAt = uncurryThis(''.charAt);
var charCodeAt = uncurryThis(''.charCodeAt);
var replace = uncurryThis(''.replace);
var slice = uncurryThis(''.slice);
var push = uncurryThis([].push);
var pop = uncurryThis([].pop);
var numberToString = uncurryThis(1.1.toString);

var surrogates = /[\uD800-\uDFFF]/g;
var leadingSurrogates = /^[\uD800-\uDBFF]$/;
var trailingSurrogates = /^[\uDC00-\uDFFF]$/;
var digits = /^\d+$/;

// a placeholder of a raw JSON value
var RAW_MARK = uid();
// a prefix of keys of a reordered object, see `createOrderedObject`
var KEY_MARK = uid();
// the last key of a reordered object, marks the end of its serialization
var END_MARK = uid();
var RAW_MARK_LENGTH = RAW_MARK.length;
var KEY_MARK_LENGTH = KEY_MARK.length;

var WRONG_SYMBOLS_CONVERSION = !NATIVE_SYMBOL || fails(function () {
  var symbol = getBuiltIn('Symbol')('stringify detection');
  // MS Edge converts symbol values to JSON as {}
  return $stringify([symbol]) !== '[null]'
    // WebKit converts symbol values to JSON as null
    || $stringify({ a: symbol }) !== '{}'
    // V8 throws on boxed symbols
    || $stringify(Object(symbol)) !== '{}';
});

// https://github.com/tc39/proposal-well-formed-stringify
var ILL_FORMED_UNICODE = fails(function () {
  return $stringify('\uDF06\uD834') !== '"\\udf06\\ud834"'
    || $stringify('\uDEAD') !== '"\\udead"';
});

var isRawJSONValue = NATIVE_RAW_JSON ? getBuiltIn('JSON', 'isRawJSON') : isRawJSON;

var stringifyWithProperSymbolsConversion = WRONG_SYMBOLS_CONVERSION ? function (it, replacer, space) {
  return $stringify(it, function (key, value) {
    var replaced = call(replacer, this, key, value);
    if (!isSymbol(replaced)) return replaced;
  }, space);
} : $stringify;

var fixIllFormedJSON = function (match, offset, string) {
  var prev = charAt(string, offset - 1);
  var next = charAt(string, offset + 1);
  if (
    (exec(leadingSurrogates, match) && !exec(trailingSurrogates, next)) ||
    (exec(trailingSurrogates, match) && !exec(leadingSurrogates, prev))
  ) {
    return '\\u' + numberToString(charCodeAt(match, 0), 16);
  } return match;
};

// `PropertyList` of `JSON.stringify`
// https://tc39.es/ecma262/#sec-json.stringify
var getPropertyList = function (replacer) {
  if (!isArray(replacer)) return;
  var rawLength = replacer.length;
  var propertyList = [];
  // a null prototype object is used as a set of already added keys to keep the deduplication linear
  var addedKeys = create(null);
  for (var i = 0; i < rawLength; i++) {
    var element = replacer[i];
    var key;
    if (typeof element == 'string') key = element;
    else if (typeof element == 'number' || classof(element) === 'Number' || classof(element) === 'String') key = toString(element);
    else continue;
    if (!hasOwn(addedKeys, key)) {
      addedKeys[key] = true;
      push(propertyList, key);
    }
  }
  return propertyList;
};

// values with such an internal slot are unwrapped by `SerializeJSONProperty` instead of being serialized as objects
var hasInternalSlot = function (valueOf, it) {
  try {
    valueOf(it);
    return true;
  } catch (error) {
    return false;
  }
};

// the slot check is expensive, so it's performed only for the kind reported by the value itself -
// a value lying about its kind via `Symbol.toStringTag` is serialized as an ordinary object
var isBoxedPrimitive = function (it) {
  var kind = classof(it);
  return (kind === 'Number' && hasInternalSlot(thisNumberValue, it))
    || (kind === 'String' && hasInternalSlot(stringValueOf, it))
    || (kind === 'Boolean' && hasInternalSlot(booleanValueOf, it))
    || (!!bigIntValueOf && kind === 'BigInt' && hasInternalSlot(bigIntValueOf, it));
};

// only objects serialized by `SerializeJSONObject` are affected by the property list
var isSerializedAsObject = function (it) {
  if (!isObject(it) || isCallable(it) || isArray(it)) return false;
  try {
    return !isBoxedPrimitive(it);
  // `classof` reads `Symbol.toStringTag`, so a proxy could throw - it has no internal slots anyway
  } catch (error) {
    return true;
  }
};

// the engine unwraps it in the same order as it would read the original property,
// so the property is read lazily and `toJSON` is called once and with the original key
var createElementHolder = function (holder, key) {
  return {
    toJSON: function () {
      var element = holder[key];
      if (isObject(element) || typeof element == 'bigint') {
        var elementToJSON = element.toJSON;
        if (isCallable(elementToJSON)) element = call(elementToJSON, element, key);
      } return element;
    }
  };
};

// own keys of objects are sorted - integer-like keys are moved to the beginning,
// so such keys should be marked and restored in the serialized string
var getKeyPrefix = function (propertyList) {
  for (var i = 0, length = propertyList.length; i < length; i++) {
    if (exec(digits, propertyList[i])) return KEY_MARK;
  } return '';
};

// `SerializeJSONObject` iterates the property list, so the value is replaced with an object with keys in this order
var createOrderedObject = function (value, propertyList, keyPrefix) {
  // keys are not marked if the property list has no integer-like keys, so `Object.prototype`
  // with a setter, a non-writable property or `__proto__` should not intercept the assignment
  var ordered = create(null);
  for (var i = 0, length = propertyList.length; i < length; i++) {
    var key = propertyList[i];
    ordered[keyPrefix + key] = createElementHolder(value, key);
  }
  ordered[END_MARK] = null;
  return ordered;
};

// `JSON.stringify` method
// https://tc39.es/ecma262/#sec-json.stringify
// https://github.com/tc39/proposal-json-parse-with-source
if ($stringify) $({ target: 'JSON', stat: true, arity: 3, forced: WRONG_SYMBOLS_CONVERSION || ILL_FORMED_UNICODE || !NATIVE_RAW_JSON }, {
  stringify: function stringify(text, replacer, space) {
    var replacerFunction = isCallable(replacer) ? replacer : undefined;
    var propertyList = replacerFunction ? undefined : getPropertyList(replacer);
    var keyPrefix = propertyList && getKeyPrefix(propertyList);
    var rawStrings = [];
    var openObjects = [];
    var parentOrdered = [];
    var currentOrdered;
    var marked = false;
    var root = true;

    var json = stringifyWithProperSymbolsConversion(text, function (key, value) {
      // some old implementations (like WebKit) could pass numbers as keys
      key = $String(key);

      if (propertyList) {
        if (key === END_MARK) {
          pop(openObjects);
          currentOrdered = pop(parentOrdered);
          return;
        }
        if (root) root = false;
        // the innermost reordered object already contains only keys of the property list and arrays are not
        // affected by it, the rest of objects (like objects with a fake `Symbol.toStringTag`) are filtered here
        else if (this !== currentOrdered && !isArray(this) && !includes(propertyList, key)) return;
      } else if (replacerFunction) value = call(replacerFunction, this, key, value);

      if (isRawJSONValue(value)) {
        if (NATIVE_RAW_JSON) return value;
        marked = true;
        return RAW_MARK + (push(rawStrings, value.rawJSON) - 1);
      }

      if (propertyList && isSerializedAsObject(value)) {
        // reordered objects are new each time, so cycles should be detected before the engine does it
        if (includes(openObjects, value)) throw new $TypeError('Converting circular structure to JSON');
        var ordered = createOrderedObject(value, propertyList, keyPrefix);
        push(openObjects, value);
        push(parentOrdered, currentOrdered);
        currentOrdered = ordered;
        if (keyPrefix) marked = true;
        return ordered;
      }

      return value;
    }, space);

    if (typeof json != 'string') return json;

    if (ILL_FORMED_UNICODE) json = replace(json, surrogates, fixIllFormedJSON);

    if (!marked) return json;

    var result = '';
    var length = json.length;

    for (var i = 0; i < length; i++) {
      var chr = charAt(json, i);
      if (chr === '"') {
        var end = parseJSONString(json, ++i).end - 1;
        var string = slice(json, i, end);
        if (slice(string, 0, RAW_MARK_LENGTH) === RAW_MARK) result += rawStrings[slice(string, RAW_MARK_LENGTH)];
        else if (slice(string, 0, KEY_MARK_LENGTH) === KEY_MARK) result += '"' + slice(string, KEY_MARK_LENGTH) + '"';
        else result += '"' + string + '"';
        i = end;
      } else result += chr;
    }

    return result;
  }
});


/***/ }),

/***/ 9002:
/***/ ((__unused_webpack_module, __unused_webpack_exports, __webpack_require__) => {


var collection = __webpack_require__(7193);
var collectionStrong = __webpack_require__(1225);

// `Map` constructor
// https://tc39.es/ecma262/#sec-map-objects
collection('Map', function (init) {
  return function Map() { return init(this, arguments.length ? arguments[0] : undefined); };
}, collectionStrong);


/***/ }),

/***/ 6244:
/***/ ((__unused_webpack_module, __unused_webpack_exports, __webpack_require__) => {


// TODO: Remove this module from `core-js@4` since it's replaced to module below
__webpack_require__(9002);


/***/ }),

/***/ 7720:
/***/ ((__unused_webpack_module, __unused_webpack_exports, __webpack_require__) => {


var TO_STRING_TAG_SUPPORT = __webpack_require__(7167);
var defineBuiltIn = __webpack_require__(7255);
var toString = __webpack_require__(9998);

// `Object.prototype.toString` method
// https://tc39.es/ecma262/#sec-object.prototype.tostring
if (!TO_STRING_TAG_SUPPORT) {
  defineBuiltIn(Object.prototype, 'toString', toString, { unsafe: true });
}


/***/ }),

/***/ 4001:
/***/ ((__unused_webpack_module, __unused_webpack_exports, __webpack_require__) => {


var $ = __webpack_require__(1187);
var functionApply = __webpack_require__(3160);
var aCallable = __webpack_require__(6927);
var anObject = __webpack_require__(4464);
var fails = __webpack_require__(4892);

// MS Edge argumentsList argument is optional
var OPTIONAL_ARGUMENTS_LIST = !fails(function () {
  // eslint-disable-next-line es/no-reflect -- required for testing
  Reflect.apply(function () { /* empty */ });
});

// `Reflect.apply` method
// https://tc39.es/ecma262/#sec-reflect.apply
$({ target: 'Reflect', stat: true, forced: OPTIONAL_ARGUMENTS_LIST }, {
  apply: function apply(target, thisArgument, argumentsList) {
    return functionApply(aCallable(target), thisArgument, anObject(argumentsList));
  }
});


/***/ }),

/***/ 1380:
/***/ ((__unused_webpack_module, __unused_webpack_exports, __webpack_require__) => {


var $ = __webpack_require__(1187);
var getBuiltIn = __webpack_require__(878);
var apply = __webpack_require__(3160);
var bind = __webpack_require__(2881);
var aConstructor = __webpack_require__(9259);
var anObject = __webpack_require__(4464);
var isObject = __webpack_require__(8861);
var create = __webpack_require__(475);
var fails = __webpack_require__(4892);

var nativeConstruct = getBuiltIn('Reflect', 'construct');
var ObjectPrototype = Object.prototype;
var push = [].push;

// `Reflect.construct` method
// https://tc39.es/ecma262/#sec-reflect.construct
// MS Edge supports only 2 arguments and argumentsList argument is optional
// FF Nightly sets third argument as `new.target`, but does not create `this` from it
var NEW_TARGET_BUG = fails(function () {
  function F() { /* empty */ }
  return !(nativeConstruct(function () { /* empty */ }, [], F) instanceof F);
});

var ARGS_BUG = !fails(function () {
  nativeConstruct(function () { /* empty */ });
});

var FORCED = NEW_TARGET_BUG || ARGS_BUG;

$({ target: 'Reflect', stat: true, forced: FORCED, sham: FORCED }, {
  construct: function construct(Target, args /* , newTarget */) {
    aConstructor(Target);
    var newTarget = arguments.length < 3 ? Target : aConstructor(arguments[2]);
    anObject(args);
    if (ARGS_BUG && !NEW_TARGET_BUG) return nativeConstruct(Target, args, newTarget);
    if (Target === newTarget) {
      // w/o altered newTarget, optimization for 0-4 arguments
      switch (args.length) {
        case 0: return new Target();
        case 1: return new Target(args[0]);
        case 2: return new Target(args[0], args[1]);
        case 3: return new Target(args[0], args[1], args[2]);
        case 4: return new Target(args[0], args[1], args[2], args[3]);
      }
      // w/o altered newTarget, lot of arguments case
      var $args = [null];
      apply(push, $args, args);
      return new (apply(bind, Target, $args))();
    }
    // with altered newTarget, not support built-in constructors
    var proto = newTarget.prototype;
    var instance = create(isObject(proto) ? proto : ObjectPrototype);
    var result = apply(Target, instance, args);
    return isObject(result) ? result : instance;
  }
});


/***/ }),

/***/ 2806:
/***/ ((__unused_webpack_module, __unused_webpack_exports, __webpack_require__) => {


var $ = __webpack_require__(1187);
var DESCRIPTORS = __webpack_require__(1175);
var anObject = __webpack_require__(4464);
var toPropertyKey = __webpack_require__(3750);
var definePropertyModule = __webpack_require__(9100);
var isCallable = __webpack_require__(8794);
var fails = __webpack_require__(4892);

var $TypeError = TypeError;

// MS Edge has broken Reflect.defineProperty - throwing instead of returning false
var ERROR_INSTEAD_OF_FALSE = fails(function () {
  // eslint-disable-next-line es/no-reflect -- required for testing
  Reflect.defineProperty(definePropertyModule.f({}, 1, { value: 1 }), 1, { value: 2 });
});

// `Reflect.defineProperty` method
// https://tc39.es/ecma262/#sec-reflect.defineproperty
$({ target: 'Reflect', stat: true, forced: ERROR_INSTEAD_OF_FALSE, sham: !DESCRIPTORS }, {
  defineProperty: function defineProperty(target, propertyKey, attributes) {
    anObject(target);
    var key = toPropertyKey(propertyKey);
    var get, set;
    anObject(attributes);
    // propagate `ToPropertyDescriptor` errors instead of catching them
    if (('get' in attributes || 'set' in attributes) && (
      ('get' in attributes && !isCallable(get = attributes.get) && get !== undefined) ||
      ('set' in attributes && !isCallable(set = attributes.set) && set !== undefined) ||
      ('value' in attributes || 'writable' in attributes)
    )) throw new $TypeError('Invalid property descriptor');
    try {
      definePropertyModule.f(target, key, attributes);
      return true;
    } catch (error) {
      return false;
    }
  }
});


/***/ }),

/***/ 6646:
/***/ ((__unused_webpack_module, __unused_webpack_exports, __webpack_require__) => {


var $ = __webpack_require__(1187);
var anObject = __webpack_require__(4464);
var getOwnPropertyDescriptor = (__webpack_require__(6150).f);
var toPropertyKey = __webpack_require__(3750);

// `Reflect.deleteProperty` method
// https://tc39.es/ecma262/#sec-reflect.deleteproperty
$({ target: 'Reflect', stat: true }, {
  deleteProperty: function deleteProperty(target, propertyKey) {
    anObject(target);
    var key = toPropertyKey(propertyKey);
    var descriptor = getOwnPropertyDescriptor(target, key);
    return descriptor && !descriptor.configurable ? false : delete target[key];
  }
});


/***/ }),

/***/ 8420:
/***/ ((__unused_webpack_module, __unused_webpack_exports, __webpack_require__) => {


var $ = __webpack_require__(1187);
var DESCRIPTORS = __webpack_require__(1175);
var anObject = __webpack_require__(4464);
var getOwnPropertyDescriptorModule = __webpack_require__(6150);

// `Reflect.getOwnPropertyDescriptor` method
// https://tc39.es/ecma262/#sec-reflect.getownpropertydescriptor
$({ target: 'Reflect', stat: true, sham: !DESCRIPTORS }, {
  getOwnPropertyDescriptor: function getOwnPropertyDescriptor(target, propertyKey) {
    return getOwnPropertyDescriptorModule.f(anObject(target), propertyKey);
  }
});


/***/ }),

/***/ 3038:
/***/ ((__unused_webpack_module, __unused_webpack_exports, __webpack_require__) => {


var $ = __webpack_require__(1187);
var anObject = __webpack_require__(4464);
var objectGetPrototypeOf = __webpack_require__(6068);
var CORRECT_PROTOTYPE_GETTER = __webpack_require__(4678);

// `Reflect.getPrototypeOf` method
// https://tc39.es/ecma262/#sec-reflect.getprototypeof
$({ target: 'Reflect', stat: true, sham: !CORRECT_PROTOTYPE_GETTER }, {
  getPrototypeOf: function getPrototypeOf(target) {
    return objectGetPrototypeOf(anObject(target));
  }
});


/***/ }),

/***/ 6557:
/***/ ((__unused_webpack_module, __unused_webpack_exports, __webpack_require__) => {


var $ = __webpack_require__(1187);
var call = __webpack_require__(5418);
var isObject = __webpack_require__(8861);
var anObject = __webpack_require__(4464);
var isDataDescriptor = __webpack_require__(1370);
var getOwnPropertyDescriptorModule = __webpack_require__(6150);
var getPrototypeOf = __webpack_require__(6068);
var toPropertyKey = __webpack_require__(3750);

// `Reflect.get` method
// https://tc39.es/ecma262/#sec-reflect.get
var $get = function (target, propertyKey, receiver) {
  if (anObject(target) === receiver) return target[propertyKey];
  var descriptor = getOwnPropertyDescriptorModule.f(target, propertyKey);
  if (descriptor) return isDataDescriptor(descriptor)
    ? descriptor.value
    : descriptor.get === undefined ? undefined : call(descriptor.get, receiver);
  var prototype = getPrototypeOf(target);
  if (isObject(prototype)) return $get(prototype, propertyKey, receiver);
};

$({ target: 'Reflect', stat: true }, {
  get: function get(target, propertyKey /* , receiver */) {
    return $get(anObject(target), toPropertyKey(propertyKey), arguments.length < 3 ? target : arguments[2]);
  }
});


/***/ }),

/***/ 1121:
/***/ ((__unused_webpack_module, __unused_webpack_exports, __webpack_require__) => {


var $ = __webpack_require__(1187);

// `Reflect.has` method
// https://tc39.es/ecma262/#sec-reflect.has
$({ target: 'Reflect', stat: true }, {
  has: function has(target, propertyKey) {
    return propertyKey in target;
  }
});


/***/ }),

/***/ 9387:
/***/ ((__unused_webpack_module, __unused_webpack_exports, __webpack_require__) => {


var $ = __webpack_require__(1187);
var anObject = __webpack_require__(4464);
var $isExtensible = __webpack_require__(141);

// `Reflect.isExtensible` method
// https://tc39.es/ecma262/#sec-reflect.isextensible
$({ target: 'Reflect', stat: true }, {
  isExtensible: function isExtensible(target) {
    anObject(target);
    return $isExtensible(target);
  }
});


/***/ }),

/***/ 4082:
/***/ ((__unused_webpack_module, __unused_webpack_exports, __webpack_require__) => {


var $ = __webpack_require__(1187);
var ownKeys = __webpack_require__(6162);

// `Reflect.ownKeys` method
// https://tc39.es/ecma262/#sec-reflect.ownkeys
$({ target: 'Reflect', stat: true }, {
  ownKeys: ownKeys
});


/***/ }),

/***/ 34:
/***/ ((__unused_webpack_module, __unused_webpack_exports, __webpack_require__) => {


var $ = __webpack_require__(1187);
var getBuiltIn = __webpack_require__(878);
var anObject = __webpack_require__(4464);
var FREEZING = __webpack_require__(1217);

// `Reflect.preventExtensions` method
// https://tc39.es/ecma262/#sec-reflect.preventextensions
$({ target: 'Reflect', stat: true, sham: !FREEZING }, {
  preventExtensions: function preventExtensions(target) {
    anObject(target);
    try {
      var objectPreventExtensions = getBuiltIn('Object', 'preventExtensions');
      if (objectPreventExtensions) objectPreventExtensions(target);
      return true;
    } catch (error) {
      return false;
    }
  }
});


/***/ }),

/***/ 3882:
/***/ ((__unused_webpack_module, __unused_webpack_exports, __webpack_require__) => {


var $ = __webpack_require__(1187);
var anObject = __webpack_require__(4464);
var aPossiblePrototype = __webpack_require__(6299);
var objectSetPrototypeOf = __webpack_require__(4792);

// `Reflect.setPrototypeOf` method
// https://tc39.es/ecma262/#sec-reflect.setprototypeof
if (objectSetPrototypeOf) $({ target: 'Reflect', stat: true }, {
  setPrototypeOf: function setPrototypeOf(target, proto) {
    anObject(target);
    aPossiblePrototype(proto);
    try {
      objectSetPrototypeOf(target, proto);
      return true;
    } catch (error) {
      return false;
    }
  }
});


/***/ }),

/***/ 5385:
/***/ ((__unused_webpack_module, __unused_webpack_exports, __webpack_require__) => {


var $ = __webpack_require__(1187);
var call = __webpack_require__(5418);
var anObject = __webpack_require__(4464);
var isObject = __webpack_require__(8861);
var isDataDescriptor = __webpack_require__(1370);
var fails = __webpack_require__(4892);
var definePropertyModule = __webpack_require__(9100);
var getOwnPropertyDescriptorModule = __webpack_require__(6150);
var getPrototypeOf = __webpack_require__(6068);
var createPropertyDescriptor = __webpack_require__(1513);
var toPropertyKey = __webpack_require__(3750);

// `Reflect.set` method
// https://tc39.es/ecma262/#sec-reflect.set
var $set = function (target, propertyKey, V, receiver) {
  var ownDescriptor = getOwnPropertyDescriptorModule.f(anObject(target), propertyKey);
  var existingDescriptor, prototype, setter;
  if (!ownDescriptor) {
    if (isObject(prototype = getPrototypeOf(target))) {
      return $set(prototype, propertyKey, V, receiver);
    }
    ownDescriptor = createPropertyDescriptor(0);
  }
  if (isDataDescriptor(ownDescriptor)) {
    if (ownDescriptor.writable === false || !isObject(receiver)) return false;
    if (existingDescriptor = getOwnPropertyDescriptorModule.f(receiver, propertyKey)) {
      if (!isDataDescriptor(existingDescriptor) || existingDescriptor.writable === false) return false;
      definePropertyModule.f(receiver, propertyKey, { value: V });
    } else try {
      definePropertyModule.f(receiver, propertyKey, createPropertyDescriptor(0, V));
    } catch (error) {
      return false;
    }
  } else {
    setter = ownDescriptor.set;
    if (setter === undefined) return false;
    call(setter, receiver, V);
  } return true;
};

// MS Edge 17-18 Reflect.set allows setting the property to object
// with non-writable property on the prototype
var MS_EDGE_BUG = fails(function () {
  var Constructor = function () { /* empty */ };
  var object = definePropertyModule.f(new Constructor(), 'a', { configurable: true });
  // eslint-disable-next-line es/no-reflect -- required for testing
  return Reflect.set(Constructor.prototype, 'a', 1, object) !== false;
});

$({ target: 'Reflect', stat: true, forced: MS_EDGE_BUG }, {
  set: function set(target, propertyKey, V /* , receiver */) {
    return $set(anObject(target), toPropertyKey(propertyKey), V, arguments.length < 4 ? target : arguments[3]);
  }
});


/***/ }),

/***/ 1941:
/***/ ((__unused_webpack_module, __unused_webpack_exports, __webpack_require__) => {


var $ = __webpack_require__(1187);
var globalThis = __webpack_require__(4127);
var setToStringTag = __webpack_require__(4360);

$({ global: true }, { Reflect: {} });

// Reflect[@@toStringTag] property
// https://tc39.es/ecma262/#sec-reflect-@@tostringtag
setToStringTag(globalThis.Reflect, 'Reflect', true);


/***/ }),

/***/ 2758:
/***/ ((__unused_webpack_module, __unused_webpack_exports, __webpack_require__) => {


var $ = __webpack_require__(1187);
var exec = __webpack_require__(6676);

// `RegExp.prototype.exec` method
// https://tc39.es/ecma262/#sec-regexp.prototype.exec
$({ target: 'RegExp', proto: true, forced: /./.exec !== exec }, {
  exec: exec
});


/***/ }),

/***/ 6607:
/***/ ((__unused_webpack_module, __unused_webpack_exports, __webpack_require__) => {


// TODO: Remove from `core-js@4` since it's moved to entry points
__webpack_require__(2758);
var $ = __webpack_require__(1187);
var call = __webpack_require__(5418);
var isCallable = __webpack_require__(8794);
var anObject = __webpack_require__(4464);
var toString = __webpack_require__(7616);

var DELEGATES_TO_EXEC = function () {
  var execCalled = false;
  var re = /[ac]/;
  re.exec = function () {
    execCalled = true;
    return /./.exec.apply(this, arguments);
  };
  return re.test('abc') === true && execCalled;
}();

var nativeTest = /./.test;

// `RegExp.prototype.test` method
// https://tc39.es/ecma262/#sec-regexp.prototype.test
$({ target: 'RegExp', proto: true, forced: !DELEGATES_TO_EXEC }, {
  test: function (S) {
    var R = anObject(this);
    var string = toString(S);
    var exec = R.exec;
    if (!isCallable(exec)) return call(nativeTest, R, string);
    var result = call(exec, R, string);
    if (result === null) return false;
    anObject(result);
    return true;
  }
});


/***/ }),

/***/ 5522:
/***/ ((__unused_webpack_module, __unused_webpack_exports, __webpack_require__) => {


var PROPER_FUNCTION_NAME = (__webpack_require__(6993).PROPER);
var defineBuiltIn = __webpack_require__(7255);
var anObject = __webpack_require__(4464);
var $toString = __webpack_require__(7616);
var fails = __webpack_require__(4892);
var getRegExpFlags = __webpack_require__(7767);

var TO_STRING = 'toString';
var RegExpPrototype = RegExp.prototype;
var nativeToString = RegExpPrototype[TO_STRING];

var NOT_GENERIC = fails(function () { return nativeToString.call({ source: 'a', flags: 'b' }) !== '/a/b'; });
// FF44- RegExp#toString has a wrong name
var INCORRECT_NAME = PROPER_FUNCTION_NAME && nativeToString.name !== TO_STRING;

// `RegExp.prototype.toString` method
// https://tc39.es/ecma262/#sec-regexp.prototype.tostring
if (NOT_GENERIC || INCORRECT_NAME) {
  defineBuiltIn(RegExpPrototype, TO_STRING, function toString() {
    var R = anObject(this);
    var pattern = $toString(R.source);
    var flags = $toString(getRegExpFlags(R));
    return '/' + pattern + '/' + flags;
  }, { unsafe: true });
}


/***/ }),

/***/ 6667:
/***/ ((__unused_webpack_module, __unused_webpack_exports, __webpack_require__) => {


var apply = __webpack_require__(3160);
var call = __webpack_require__(5418);
var uncurryThis = __webpack_require__(3027);
var fixRegExpWellKnownSymbolLogic = __webpack_require__(4061);
var fails = __webpack_require__(4892);
var anObject = __webpack_require__(4464);
var isCallable = __webpack_require__(8794);
var isObject = __webpack_require__(8861);
var toIntegerOrInfinity = __webpack_require__(1402);
var toLength = __webpack_require__(2737);
var toString = __webpack_require__(7616);
var requireObjectCoercible = __webpack_require__(7263);
var advanceStringIndex = __webpack_require__(8568);
var getMethod = __webpack_require__(4215);
var getSubstitution = __webpack_require__(4391);
var getRegExpFlags = __webpack_require__(7767);
var regExpExec = __webpack_require__(5019);
var wellKnownSymbol = __webpack_require__(7080);

var REPLACE = wellKnownSymbol('replace');
var max = Math.max;
var min = Math.min;
var concat = uncurryThis([].concat);
var push = uncurryThis([].push);
var stringIndexOf = uncurryThis(''.indexOf);
var stringSlice = uncurryThis(''.slice);

var maybeToString = function (it) {
  return it === undefined ? it : String(it);
};

// IE <= 11 replaces $0 with the whole match, as if it was $&
// https://stackoverflow.com/questions/6024666/getting-ie-to-replace-a-regex-with-the-literal-string-0
var REPLACE_KEEPS_$0 = (function () {
  // eslint-disable-next-line regexp/prefer-escape-replacement-dollar-char -- required for testing
  return 'a'.replace(/./, '$0') === '$0';
})();

// Safari <= 13.0.3(?) substitutes nth capture where n>m with an empty string
var REGEXP_REPLACE_SUBSTITUTES_UNDEFINED_CAPTURE = (function () {
  if (/./[REPLACE]) {
    return /./[REPLACE]('a', '$0') === '';
  }
  return false;
})();

var REPLACE_SUPPORTS_NAMED_GROUPS = !fails(function () {
  var re = /./;
  re.exec = function () {
    var result = [];
    result.groups = { a: '7' };
    return result;
  };
  // eslint-disable-next-line regexp/no-useless-dollar-replacements -- false positive
  return ''.replace(re, '$<a>') !== '7';
});

// @@replace logic
fixRegExpWellKnownSymbolLogic('replace', function (_, nativeReplace, maybeCallNative) {
  var UNSAFE_SUBSTITUTE = REGEXP_REPLACE_SUBSTITUTES_UNDEFINED_CAPTURE ? '$' : '$0';

  return [
    // `String.prototype.replace` method
    // https://tc39.es/ecma262/#sec-string.prototype.replace
    function replace(searchValue, replaceValue) {
      var O = requireObjectCoercible(this);
      var replacer = isObject(searchValue) ? getMethod(searchValue, REPLACE) : undefined;
      return replacer
        ? call(replacer, searchValue, O, replaceValue)
        : call(nativeReplace, toString(O), searchValue, replaceValue);
    },
    // `RegExp.prototype[@@replace]` method
    // https://tc39.es/ecma262/#sec-regexp.prototype-@@replace
    function (string, replaceValue) {
      var rx = anObject(this);
      var S = toString(string);

      var functionalReplace = isCallable(replaceValue);
      if (!functionalReplace) replaceValue = toString(replaceValue);
      var flags = toString(getRegExpFlags(rx));

      if (
        typeof replaceValue == 'string' &&
        !~stringIndexOf(replaceValue, UNSAFE_SUBSTITUTE) &&
        !~stringIndexOf(replaceValue, '$<') &&
        !~stringIndexOf(flags, 'y')
      ) {
        var res = maybeCallNative(nativeReplace, rx, S, replaceValue);
        if (res.done) return res.value;
      }

      var global = !!~stringIndexOf(flags, 'g');
      var fullUnicode;
      if (global) {
        fullUnicode = !!~stringIndexOf(flags, 'u') || !!~stringIndexOf(flags, 'v');
        rx.lastIndex = 0;
      }

      var results = [];
      var result;
      while (true) {
        result = regExpExec(rx, S);
        if (result === null) break;

        push(results, result);
        if (!global) break;

        var matchStr = toString(result[0]);
        if (matchStr === '') rx.lastIndex = advanceStringIndex(S, toLength(rx.lastIndex), fullUnicode);
      }

      var accumulatedResult = '';
      var nextSourcePosition = 0;
      for (var i = 0; i < results.length; i++) {
        result = results[i];

        var matched = toString(result[0]);
        var position = max(min(toIntegerOrInfinity(result.index), S.length), 0);
        var captures = [];
        var replacement;
        // NOTE: This is equivalent to
        //   captures = result.slice(1).map(maybeToString)
        // but for some reason `nativeSlice.call(result, 1, result.length)` (called in
        // the slice polyfill when slicing native arrays) "doesn't work" in safari 9 and
        // causes a crash (https://pastebin.com/N21QzeQA) when trying to debug it.
        for (var j = 1; j < result.length; j++) push(captures, maybeToString(result[j]));
        var namedCaptures = result.groups;
        if (functionalReplace) {
          var replacerArgs = concat([matched], captures, position, S);
          if (namedCaptures !== undefined) push(replacerArgs, namedCaptures);
          replacement = toString(apply(replaceValue, undefined, replacerArgs));
        } else {
          replacement = getSubstitution(matched, S, position, captures, namedCaptures, replaceValue);
        }
        if (position >= nextSourcePosition) {
          accumulatedResult += stringSlice(S, nextSourcePosition, position) + replacement;
          nextSourcePosition = position + matched.length;
        }
      }

      return accumulatedResult + stringSlice(S, nextSourcePosition);
    }
  ];
}, !REPLACE_SUPPORTS_NAMED_GROUPS || !REPLACE_KEEPS_$0 || REGEXP_REPLACE_SUBSTITUTES_UNDEFINED_CAPTURE);


/***/ }),

/***/ 1425:
/***/ ((__unused_webpack_module, __unused_webpack_exports, __webpack_require__) => {


var FREEZING = __webpack_require__(1217);
var globalThis = __webpack_require__(4127);
var uncurryThis = __webpack_require__(3027);
var defineBuiltIns = __webpack_require__(8498);
var InternalMetadataModule = __webpack_require__(268);
var collection = __webpack_require__(7193);
var collectionWeak = __webpack_require__(6190);
var isObject = __webpack_require__(8861);
var enforceInternalState = (__webpack_require__(4852).enforce);
var fails = __webpack_require__(4892);
var NATIVE_WEAK_MAP = __webpack_require__(567);

var $Object = Object;
// eslint-disable-next-line es/no-array-isarray -- safe
var isArray = Array.isArray;
// eslint-disable-next-line es/no-object-isextensible -- safe
var isExtensible = $Object.isExtensible;
// eslint-disable-next-line es/no-object-isfrozen -- safe
var isFrozen = $Object.isFrozen;
// eslint-disable-next-line es/no-object-issealed -- safe
var isSealed = $Object.isSealed;
// eslint-disable-next-line es/no-object-freeze -- safe
var freeze = $Object.freeze;
// eslint-disable-next-line es/no-object-seal -- safe
var seal = $Object.seal;

var IS_IE11 = !globalThis.ActiveXObject && 'ActiveXObject' in globalThis;
var InternalWeakMap;

var wrapper = function (init) {
  return function WeakMap() {
    return init(this, arguments.length ? arguments[0] : undefined);
  };
};

// `WeakMap` constructor
// https://tc39.es/ecma262/#sec-weakmap-constructor
var $WeakMap = collection('WeakMap', wrapper, collectionWeak);
var WeakMapPrototype = $WeakMap.prototype;
var nativeSet = uncurryThis(WeakMapPrototype.set);

// Chakra Edge bug: adding frozen arrays to WeakMap unfreeze them
var hasMSEdgeFreezingBug = function () {
  return FREEZING && fails(function () {
    var frozenArray = freeze([]);
    nativeSet(new $WeakMap(), frozenArray, 1);
    return !isFrozen(frozenArray);
  });
};

// IE11 WeakMap frozen keys fix
// We can't use feature detection because it crash some old IE builds
// https://github.com/zloirock/core-js/issues/485
if (NATIVE_WEAK_MAP) if (IS_IE11) {
  InternalWeakMap = collectionWeak.getConstructor(wrapper, 'WeakMap', true);
  InternalMetadataModule.enable();
  var nativeDelete = uncurryThis(WeakMapPrototype['delete']);
  var nativeHas = uncurryThis(WeakMapPrototype.has);
  var nativeGet = uncurryThis(WeakMapPrototype.get);
  defineBuiltIns(WeakMapPrototype, {
    'delete': function (key) {
      if (isObject(key) && !isExtensible(key)) {
        var state = enforceInternalState(this);
        if (!state.frozen) state.frozen = new InternalWeakMap();
        return nativeDelete(this, key) || state.frozen['delete'](key);
      } return nativeDelete(this, key);
    },
    has: function has(key) {
      if (isObject(key) && !isExtensible(key)) {
        var state = enforceInternalState(this);
        if (!state.frozen) state.frozen = new InternalWeakMap();
        return nativeHas(this, key) || state.frozen.has(key);
      } return nativeHas(this, key);
    },
    get: function get(key) {
      if (isObject(key) && !isExtensible(key)) {
        var state = enforceInternalState(this);
        if (!state.frozen) state.frozen = new InternalWeakMap();
        return nativeHas(this, key) ? nativeGet(this, key) : state.frozen.get(key);
      } return nativeGet(this, key);
    },
    set: function set(key, value) {
      if (isObject(key) && !isExtensible(key)) {
        var state = enforceInternalState(this);
        if (!state.frozen) state.frozen = new InternalWeakMap();
        nativeHas(this, key) ? nativeSet(this, key, value) : state.frozen.set(key, value);
      } else nativeSet(this, key, value);
      return this;
    }
  });
// Chakra Edge frozen keys fix
} else if (hasMSEdgeFreezingBug()) {
  defineBuiltIns(WeakMapPrototype, {
    set: function set(key, value) {
      var arrayIntegrityLevel;
      if (isArray(key)) {
        if (isFrozen(key)) arrayIntegrityLevel = freeze;
        else if (isSealed(key)) arrayIntegrityLevel = seal;
      }
      nativeSet(this, key, value);
      if (arrayIntegrityLevel) arrayIntegrityLevel(key);
      return this;
    }
  });
}


/***/ }),

/***/ 5643:
/***/ ((__unused_webpack_module, __unused_webpack_exports, __webpack_require__) => {


// TODO: Remove this module from `core-js@4` since it's replaced to module below
__webpack_require__(1425);


/***/ }),

/***/ 6980:
/***/ ((__unused_webpack_module, __unused_webpack_exports, __webpack_require__) => {


var $ = __webpack_require__(1187);
var getBuiltIn = __webpack_require__(878);
var getBuiltInNodeModule = __webpack_require__(7260);
var fails = __webpack_require__(4892);
var create = __webpack_require__(475);
var createPropertyDescriptor = __webpack_require__(1513);
var defineProperty = (__webpack_require__(9100).f);
var defineBuiltIn = __webpack_require__(7255);
var defineBuiltInAccessor = __webpack_require__(707);
var hasOwn = __webpack_require__(1324);
var anInstance = __webpack_require__(1468);
var anObject = __webpack_require__(4464);
var errorToString = __webpack_require__(2071);
var normalizeStringArgument = __webpack_require__(6848);
var DOMExceptionConstants = __webpack_require__(1849);
var clearErrorStack = __webpack_require__(2098);
var InternalStateModule = __webpack_require__(4852);
var DESCRIPTORS = __webpack_require__(1175);
var IS_PURE = __webpack_require__(4400);

var DOM_EXCEPTION = 'DOMException';
var DATA_CLONE_ERR = 'DATA_CLONE_ERR';
var Error = getBuiltIn('Error');
// NodeJS < 17.0 does not expose `DOMException` to global
var NativeDOMException = getBuiltIn(DOM_EXCEPTION) || (function () {
  try {
    // NodeJS < 15.0 does not expose `MessageChannel` to global
    var MessageChannel = getBuiltIn('MessageChannel') || getBuiltInNodeModule('worker_threads').MessageChannel;
    // eslint-disable-next-line es/no-weak-map, unicorn/require-post-message-target-origin -- safe
    new MessageChannel().port1.postMessage(new WeakMap());
  } catch (error) {
    if (error.name === DATA_CLONE_ERR && error.code === 25) return error.constructor;
  }
})();
var NativeDOMExceptionPrototype = NativeDOMException && NativeDOMException.prototype;
var ErrorPrototype = Error.prototype;
var setInternalState = InternalStateModule.set;
var getInternalState = InternalStateModule.getterFor(DOM_EXCEPTION);
var HAS_STACK = 'stack' in new Error(DOM_EXCEPTION);

var codeFor = function (name) {
  return hasOwn(DOMExceptionConstants, name) && DOMExceptionConstants[name].m ? DOMExceptionConstants[name].c : 0;
};

var $DOMException = function DOMException() {
  anInstance(this, DOMExceptionPrototype);
  var argumentsLength = arguments.length;
  var message = normalizeStringArgument(argumentsLength < 1 ? undefined : arguments[0]);
  var name = normalizeStringArgument(argumentsLength < 2 ? undefined : arguments[1], 'Error');
  var code = codeFor(name);
  setInternalState(this, {
    type: DOM_EXCEPTION,
    name: name,
    message: message,
    code: code
  });
  if (!DESCRIPTORS) {
    this.name = name;
    this.message = message;
    this.code = code;
  }
  if (HAS_STACK) {
    var error = new Error(message);
    error.name = DOM_EXCEPTION;
    defineProperty(this, 'stack', createPropertyDescriptor(1, clearErrorStack(error.stack, 1)));
  }
};

var DOMExceptionPrototype = $DOMException.prototype = create(ErrorPrototype);

var createGetterDescriptor = function (get) {
  return { enumerable: true, configurable: true, get: get };
};

var getterFor = function (key) {
  return createGetterDescriptor(function () {
    return getInternalState(this)[key];
  });
};

if (DESCRIPTORS) {
  // `DOMException.prototype.code` getter
  defineBuiltInAccessor(DOMExceptionPrototype, 'code', getterFor('code'));
  // `DOMException.prototype.message` getter
  defineBuiltInAccessor(DOMExceptionPrototype, 'message', getterFor('message'));
  // `DOMException.prototype.name` getter
  defineBuiltInAccessor(DOMExceptionPrototype, 'name', getterFor('name'));
}

defineProperty(DOMExceptionPrototype, 'constructor', createPropertyDescriptor(1, $DOMException));

// FF36- DOMException is a function, but can't be constructed
var INCORRECT_CONSTRUCTOR = fails(function () {
  return !(new NativeDOMException() instanceof Error);
});

// Safari 10.1 / Chrome 32- / IE8- DOMException.prototype.toString bugs
var INCORRECT_TO_STRING = INCORRECT_CONSTRUCTOR || fails(function () {
  return ErrorPrototype.toString !== errorToString || String(new NativeDOMException(1, 2)) !== '2: 1';
});

// Deno 1.6.3- DOMException.prototype.code just missed
var INCORRECT_CODE = INCORRECT_CONSTRUCTOR || fails(function () {
  return new NativeDOMException(1, 'DataCloneError').code !== 25;
});

// Deno 1.6.3- DOMException constants just missed
var MISSED_CONSTANTS = INCORRECT_CONSTRUCTOR
  || NativeDOMException[DATA_CLONE_ERR] !== 25
  || NativeDOMExceptionPrototype[DATA_CLONE_ERR] !== 25;

var FORCED_CONSTRUCTOR = IS_PURE ? INCORRECT_TO_STRING || INCORRECT_CODE || MISSED_CONSTANTS : INCORRECT_CONSTRUCTOR;

// `DOMException` constructor
// https://webidl.spec.whatwg.org/#idl-DOMException
$({ global: true, constructor: true, forced: FORCED_CONSTRUCTOR }, {
  DOMException: FORCED_CONSTRUCTOR ? $DOMException : NativeDOMException
});

var PolyfilledDOMException = getBuiltIn(DOM_EXCEPTION);
var PolyfilledDOMExceptionPrototype = PolyfilledDOMException.prototype;

if (INCORRECT_TO_STRING && (IS_PURE || NativeDOMException === PolyfilledDOMException)) {
  defineBuiltIn(PolyfilledDOMExceptionPrototype, 'toString', errorToString);
}

if (INCORRECT_CODE && DESCRIPTORS && NativeDOMException === PolyfilledDOMException) {
  defineBuiltInAccessor(PolyfilledDOMExceptionPrototype, 'code', createGetterDescriptor(function () {
    return codeFor(anObject(this).name);
  }));
}

// `DOMException` constants
for (var key in DOMExceptionConstants) if (hasOwn(DOMExceptionConstants, key)) {
  var constant = DOMExceptionConstants[key];
  var constantName = constant.s;
  var descriptor = createPropertyDescriptor(6, constant.c);
  if (!hasOwn(PolyfilledDOMException, constantName)) {
    defineProperty(PolyfilledDOMException, constantName, descriptor);
  }
  if (!hasOwn(PolyfilledDOMExceptionPrototype, constantName)) {
    defineProperty(PolyfilledDOMExceptionPrototype, constantName, descriptor);
  }
}


/***/ }),

/***/ 6316:
/***/ ((__unused_webpack_module, __unused_webpack_exports, __webpack_require__) => {


var $ = __webpack_require__(1187);
var globalThis = __webpack_require__(4127);
var getBuiltIn = __webpack_require__(878);
var createPropertyDescriptor = __webpack_require__(1513);
var defineProperty = (__webpack_require__(9100).f);
var hasOwn = __webpack_require__(1324);
var anInstance = __webpack_require__(1468);
var inheritIfRequired = __webpack_require__(6388);
var normalizeStringArgument = __webpack_require__(6848);
var DOMExceptionConstants = __webpack_require__(1849);
var clearErrorStack = __webpack_require__(2098);
var DESCRIPTORS = __webpack_require__(1175);
var IS_PURE = __webpack_require__(4400);

var DOM_EXCEPTION = 'DOMException';
var Error = getBuiltIn('Error');
var NativeDOMException = getBuiltIn(DOM_EXCEPTION);

var $DOMException = function DOMException() {
  anInstance(this, DOMExceptionPrototype);
  var argumentsLength = arguments.length;
  var message = normalizeStringArgument(argumentsLength < 1 ? undefined : arguments[0]);
  var name = normalizeStringArgument(argumentsLength < 2 ? undefined : arguments[1], 'Error');
  var that = new NativeDOMException(message, name);
  var error = new Error(message);
  error.name = DOM_EXCEPTION;
  defineProperty(that, 'stack', createPropertyDescriptor(1, clearErrorStack(error.stack, 1)));
  inheritIfRequired(that, this, $DOMException);
  return that;
};

var DOMExceptionPrototype = $DOMException.prototype = NativeDOMException.prototype;

var ERROR_HAS_STACK = 'stack' in new Error(DOM_EXCEPTION);
var DOM_EXCEPTION_HAS_STACK = 'stack' in new NativeDOMException(1, 2);

// eslint-disable-next-line es/no-object-getownpropertydescriptor -- safe
var descriptor = NativeDOMException && DESCRIPTORS && Object.getOwnPropertyDescriptor(globalThis, DOM_EXCEPTION);

// Bun ~ 0.1.1 DOMException have incorrect descriptor and we can't redefine it
// https://github.com/Jarred-Sumner/bun/issues/399
var BUGGY_DESCRIPTOR = !!descriptor && !(descriptor.writable && descriptor.configurable);

var FORCED_CONSTRUCTOR = ERROR_HAS_STACK && !BUGGY_DESCRIPTOR && !DOM_EXCEPTION_HAS_STACK;

// `DOMException` constructor patch for `.stack` where it's required
// https://webidl.spec.whatwg.org/#es-DOMException-specialness
$({ global: true, constructor: true, forced: IS_PURE || FORCED_CONSTRUCTOR }, { // TODO: fix export logic
  DOMException: FORCED_CONSTRUCTOR ? $DOMException : NativeDOMException
});

var PolyfilledDOMException = getBuiltIn(DOM_EXCEPTION);
var PolyfilledDOMExceptionPrototype = PolyfilledDOMException.prototype;

if (PolyfilledDOMExceptionPrototype.constructor !== PolyfilledDOMException) {
  if (!IS_PURE) {
    defineProperty(PolyfilledDOMExceptionPrototype, 'constructor', createPropertyDescriptor(1, PolyfilledDOMException));
  }

  for (var key in DOMExceptionConstants) if (hasOwn(DOMExceptionConstants, key)) {
    var constant = DOMExceptionConstants[key];
    var constantName = constant.s;
    if (!hasOwn(PolyfilledDOMException, constantName)) {
      defineProperty(PolyfilledDOMException, constantName, createPropertyDescriptor(6, constant.c));
    }
  }
}


/***/ }),

/***/ 6460:
/***/ ((__unused_webpack_module, __unused_webpack_exports, __webpack_require__) => {


var getBuiltIn = __webpack_require__(878);
var setToStringTag = __webpack_require__(4360);

var DOM_EXCEPTION = 'DOMException';

// `DOMException.prototype[@@toStringTag]` property
setToStringTag(getBuiltIn(DOM_EXCEPTION), DOM_EXCEPTION);


/***/ }),

/***/ 756:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {


var parent = __webpack_require__(7231);

module.exports = parent;


/***/ })

/******/ 	});
/************************************************************************/
/******/ 	// The module cache
/******/ 	const __webpack_module_cache__ = {};
/******/ 	
/******/ 	// The require function
/******/ 	function __webpack_require__(moduleId) {
/******/ 		// Check if module is in cache
/******/ 		const cachedModule = __webpack_module_cache__[moduleId];
/******/ 		if (cachedModule !== undefined) {
/******/ 			return cachedModule.exports;
/******/ 		}
/******/ 		// Create a new module (and put it into the cache)
/******/ 		const module = __webpack_module_cache__[moduleId] = {
/******/ 			id: moduleId,
/******/ 			// no module.loaded needed
/******/ 			exports: {}
/******/ 		};
/******/ 	
/******/ 		// Execute the module function
/******/ 		__webpack_modules__[moduleId].call(module.exports, module, module.exports, __webpack_require__);
/******/ 	
/******/ 		// Return the exports of the module
/******/ 		return module.exports;
/******/ 	}
/******/ 	
/************************************************************************/
/******/ 	/* webpack/runtime/compat get default export */
/******/ 	// getDefaultExport function for compatibility with non-harmony modules
/******/ 	__webpack_require__.n = (module) => {
/******/ 		const getter = module && module.__esModule ?
/******/ 			() => (module['default']) :
/******/ 			() => (module);
/******/ 		__webpack_require__.d(getter, { a: getter });
/******/ 		return getter;
/******/ 	};
/******/ 	
/******/ 	/* webpack/runtime/concatenation wrap */
/******/ 	// wrap a concatenated module body as a lazy, memoized accessor; mod is
/******/ 	// set before the body runs so re-entrant calls (require cycles) observe
/******/ 	// the partial exports like Node.js
/******/ 	__webpack_require__.cw = (body) => {
/******/ 		var mod;
/******/ 		return () => {
/******/ 			if (body) {
/******/ 				var fn = body;
/******/ 				body = 0;
/******/ 				mod = { exports: {} };
/******/ 				fn.call(mod.exports, mod, mod.exports);
/******/ 			}
/******/ 			return mod.exports;
/******/ 		};
/******/ 	};
/******/ 	
/******/ 	/* webpack/runtime/define property getters */
/******/ 	// define getter/value functions for harmony exports
/******/ 	__webpack_require__.d = (exports, definition) => {
/******/ 		if(Array.isArray(definition)) {
/******/ 			var i = 0;
/******/ 			while(i < definition.length) {
/******/ 				var key = definition[i++];
/******/ 				var binding = definition[i++];
/******/ 				var descriptor = binding === 0 ? { enumerable: true, value: definition[i++] } : { enumerable: true, get: binding };
/******/ 				if(!__webpack_require__.o(exports, key)) Object.defineProperty(exports, key, descriptor);
/******/ 			}
/******/ 		} else {
/******/ 			for(var key in definition) {
/******/ 				if(__webpack_require__.o(definition, key) && !__webpack_require__.o(exports, key)) {
/******/ 					Object.defineProperty(exports, key, { enumerable: true, get: definition[key] });
/******/ 				}
/******/ 			}
/******/ 		}
/******/ 	};
/******/ 	
/******/ 	/* webpack/runtime/global */
/******/ 	__webpack_require__.g = (function() {
/******/ 		if (typeof globalThis === 'object') return globalThis;
/******/ 		try {
/******/ 			return this || new Function('return this')();
/******/ 		} catch (e) {
/******/ 			if (typeof window === 'object') return window;
/******/ 		}
/******/ 	})();
/******/ 	
/******/ 	/* webpack/runtime/hasOwnProperty shorthand */
/******/ 	__webpack_require__.o = (obj, prop) => (Object.prototype.hasOwnProperty.call(obj, prop));
/******/ 	
/******/ 	/* webpack/runtime/set anonymous default export name */
/******/ 	// set .name for anonymous default exports per ES spec
/******/ 	// skipped when the property is non-configurable (pre-ES2015 engines),
/******/ 	// where Object.defineProperty would throw
/******/ 	__webpack_require__.dn = (x) => {
/******/ 		var descriptor = Object.getOwnPropertyDescriptor(x, "name");
/******/ 		if (!descriptor || (!descriptor.writable && descriptor.configurable)) Object.defineProperty(x, "name", { value: "default", configurable: true });
/******/ 	};
/******/ 	
/******/ 	/* webpack/runtime/jsonp chunk loading */
/******/ 	(() => {
/******/ 		__webpack_require__.b = (typeof document !== 'undefined' && document.baseURI) || self.location.href;
/******/ 		
/******/ 		// no installed chunks
/******/ 		
/******/ 		// no chunk on demand loading
/******/ 		
/******/ 		// no prefetching
/******/ 		
/******/ 		// no preloaded
/******/ 		
/******/ 		// no HMR
/******/ 		
/******/ 		// no HMR manifest
/******/ 		
/******/ 		// no on chunks loaded
/******/ 		
/******/ 		// no jsonp function
/******/ 	})();
/******/ 	
/******/ 	/* webpack/runtime/nonce */
/******/ 	__webpack_require__.nc = undefined;
/******/ 	
/************************************************************************/
let __webpack_exports__ = {};

// EXTERNAL MODULE: ./node_modules/.pnpm/[email protected]/node_modules/core-js/actual/reflect/index.js
var reflect_namespaceFn = () => {
	return __webpack_require__(7281);
};

// MODULE: ./node_modules/.pnpm/[email protected]/node_modules/core-js/features/reflect/index.js
var features_reflect_namespaceFn = /*#__PURE__*/__webpack_require__.cw(function(module, exports) {

/* unused reexport */ (full_reflect_namespaceFn());

});

// MODULE: ./node_modules/.pnpm/[email protected]/node_modules/core-js/full/reflect/index.js
var full_reflect_namespaceFn = /*#__PURE__*/__webpack_require__.cw(function(module, exports) {

var parent = (reflect_namespaceFn());
(esnext_reflect_define_metadata_namespaceFn());
(esnext_reflect_delete_metadata_namespaceFn());
(esnext_reflect_get_metadata_namespaceFn());
(esnext_reflect_get_metadata_keys_namespaceFn());
(esnext_reflect_get_own_metadata_namespaceFn());
(esnext_reflect_get_own_metadata_keys_namespaceFn());
(esnext_reflect_has_metadata_namespaceFn());
(esnext_reflect_has_own_metadata_namespaceFn());
(esnext_reflect_metadata_namespaceFn());

module.exports = parent;

});

// EXTERNAL MODULE: ./node_modules/.pnpm/[email protected]/node_modules/core-js/internals/an-object.js
var polyfills_an_object_namespaceFn = () => {
	return __webpack_require__(4464);
};

// EXTERNAL MODULE: ./node_modules/.pnpm/[email protected]/node_modules/core-js/internals/array-unique-by.js
var array_unique_by_namespaceFn = () => {
	return __webpack_require__(522);
};

// EXTERNAL MODULE: ./node_modules/.pnpm/[email protected]/node_modules/core-js/internals/export.js
var polyfills_export_namespaceFn = () => {
	return __webpack_require__(1187);
};

// EXTERNAL MODULE: ./node_modules/.pnpm/[email protected]/node_modules/core-js/internals/function-uncurry-this.js
var polyfills_function_uncurry_this_namespaceFn = () => {
	return __webpack_require__(3027);
};

// EXTERNAL MODULE: ./node_modules/.pnpm/[email protected]/node_modules/core-js/internals/object-get-prototype-of.js
var object_get_prototype_of_namespaceFn = () => {
	return __webpack_require__(6068);
};

// EXTERNAL MODULE: ./node_modules/.pnpm/[email protected]/node_modules/core-js/internals/reflect-metadata.js
var reflect_metadata_namespaceFn = () => {
	return __webpack_require__(7332);
};

// MODULE: ./node_modules/.pnpm/[email protected]/node_modules/core-js/modules/esnext.reflect.define-metadata.js
var esnext_reflect_define_metadata_namespaceFn = /*#__PURE__*/__webpack_require__.cw(function(module, exports) {

// TODO: Remove from `core-js@4`
var $ = (polyfills_export_namespaceFn());
var ReflectMetadataModule = (reflect_metadata_namespaceFn());
var anObject = (polyfills_an_object_namespaceFn());

var toMetadataKey = ReflectMetadataModule.toKey;
var ordinaryDefineOwnMetadata = ReflectMetadataModule.set;

// `Reflect.defineMetadata` method
// https://github.com/rbuckton/reflect-metadata
$({ target: 'Reflect', stat: true }, {
  defineMetadata: function defineMetadata(metadataKey, metadataValue, target /* , targetKey */) {
    var targetKey = arguments.length < 4 ? undefined : toMetadataKey(arguments[3]);
    ordinaryDefineOwnMetadata(metadataKey, metadataValue, anObject(target), targetKey);
  }
});

});

// MODULE: ./node_modules/.pnpm/[email protected]/node_modules/core-js/modules/esnext.reflect.delete-metadata.js
var esnext_reflect_delete_metadata_namespaceFn = /*#__PURE__*/__webpack_require__.cw(function(module, exports) {

var $ = (polyfills_export_namespaceFn());
var ReflectMetadataModule = (reflect_metadata_namespaceFn());
var anObject = (polyfills_an_object_namespaceFn());

var toMetadataKey = ReflectMetadataModule.toKey;
var getOrCreateMetadataMap = ReflectMetadataModule.getMap;
var store = ReflectMetadataModule.store;

// `Reflect.deleteMetadata` method
// https://github.com/rbuckton/reflect-metadata
$({ target: 'Reflect', stat: true }, {
  deleteMetadata: function deleteMetadata(metadataKey, target /* , targetKey */) {
    var targetKey = arguments.length < 3 ? undefined : toMetadataKey(arguments[2]);
    var metadataMap = getOrCreateMetadataMap(anObject(target), targetKey, false);
    if (metadataMap === undefined || !metadataMap['delete'](metadataKey)) return false;
    if (metadataMap.size) return true;
    var targetMetadata = store.get(target);
    targetMetadata['delete'](targetKey);
    return !!targetMetadata.size || store['delete'](target);
  }
});

});

// MODULE: ./node_modules/.pnpm/[email protected]/node_modules/core-js/modules/esnext.reflect.get-metadata-keys.js
var esnext_reflect_get_metadata_keys_namespaceFn = /*#__PURE__*/__webpack_require__.cw(function(module, exports) {

// TODO: Remove from `core-js@4`
var $ = (polyfills_export_namespaceFn());
var uncurryThis = (polyfills_function_uncurry_this_namespaceFn());
var ReflectMetadataModule = (reflect_metadata_namespaceFn());
var anObject = (polyfills_an_object_namespaceFn());
var getPrototypeOf = (object_get_prototype_of_namespaceFn());
var $arrayUniqueBy = (array_unique_by_namespaceFn());

var arrayUniqueBy = uncurryThis($arrayUniqueBy);
var concat = uncurryThis([].concat);
var ordinaryOwnMetadataKeys = ReflectMetadataModule.keys;
var toMetadataKey = ReflectMetadataModule.toKey;

var ordinaryMetadataKeys = function (O, P) {
  var oKeys = ordinaryOwnMetadataKeys(O, P);
  var parent = getPrototypeOf(O);
  if (parent === null) return oKeys;
  var pKeys = ordinaryMetadataKeys(parent, P);
  return pKeys.length ? oKeys.length ? arrayUniqueBy(concat(oKeys, pKeys)) : pKeys : oKeys;
};

// `Reflect.getMetadataKeys` method
// https://github.com/rbuckton/reflect-metadata
$({ target: 'Reflect', stat: true }, {
  getMetadataKeys: function getMetadataKeys(target /* , targetKey */) {
    var targetKey = arguments.length < 2 ? undefined : toMetadataKey(arguments[1]);
    return ordinaryMetadataKeys(anObject(target), targetKey);
  }
});

});

// MODULE: ./node_modules/.pnpm/[email protected]/node_modules/core-js/modules/esnext.reflect.get-metadata.js
var esnext_reflect_get_metadata_namespaceFn = /*#__PURE__*/__webpack_require__.cw(function(module, exports) {

// TODO: Remove from `core-js@4`
var $ = (polyfills_export_namespaceFn());
var ReflectMetadataModule = (reflect_metadata_namespaceFn());
var anObject = (polyfills_an_object_namespaceFn());
var getPrototypeOf = (object_get_prototype_of_namespaceFn());

var ordinaryHasOwnMetadata = ReflectMetadataModule.has;
var ordinaryGetOwnMetadata = ReflectMetadataModule.get;
var toMetadataKey = ReflectMetadataModule.toKey;

var ordinaryGetMetadata = function (MetadataKey, O, P) {
  var hasOwn = ordinaryHasOwnMetadata(MetadataKey, O, P);
  if (hasOwn) return ordinaryGetOwnMetadata(MetadataKey, O, P);
  var parent = getPrototypeOf(O);
  return parent !== null ? ordinaryGetMetadata(MetadataKey, parent, P) : undefined;
};

// `Reflect.getMetadata` method
// https://github.com/rbuckton/reflect-metadata
$({ target: 'Reflect', stat: true }, {
  getMetadata: function getMetadata(metadataKey, target /* , targetKey */) {
    var targetKey = arguments.length < 3 ? undefined : toMetadataKey(arguments[2]);
    return ordinaryGetMetadata(metadataKey, anObject(target), targetKey);
  }
});

});

// MODULE: ./node_modules/.pnpm/[email protected]/node_modules/core-js/modules/esnext.reflect.get-own-metadata-keys.js
var esnext_reflect_get_own_metadata_keys_namespaceFn = /*#__PURE__*/__webpack_require__.cw(function(module, exports) {

// TODO: Remove from `core-js@4`
var $ = (polyfills_export_namespaceFn());
var ReflectMetadataModule = (reflect_metadata_namespaceFn());
var anObject = (polyfills_an_object_namespaceFn());

var ordinaryOwnMetadataKeys = ReflectMetadataModule.keys;
var toMetadataKey = ReflectMetadataModule.toKey;

// `Reflect.getOwnMetadataKeys` method
// https://github.com/rbuckton/reflect-metadata
$({ target: 'Reflect', stat: true }, {
  getOwnMetadataKeys: function getOwnMetadataKeys(target /* , targetKey */) {
    var targetKey = arguments.length < 2 ? undefined : toMetadataKey(arguments[1]);
    return ordinaryOwnMetadataKeys(anObject(target), targetKey);
  }
});

});

// MODULE: ./node_modules/.pnpm/[email protected]/node_modules/core-js/modules/esnext.reflect.get-own-metadata.js
var esnext_reflect_get_own_metadata_namespaceFn = /*#__PURE__*/__webpack_require__.cw(function(module, exports) {

// TODO: Remove from `core-js@4`
var $ = (polyfills_export_namespaceFn());
var ReflectMetadataModule = (reflect_metadata_namespaceFn());
var anObject = (polyfills_an_object_namespaceFn());

var ordinaryGetOwnMetadata = ReflectMetadataModule.get;
var toMetadataKey = ReflectMetadataModule.toKey;

// `Reflect.getOwnMetadata` method
// https://github.com/rbuckton/reflect-metadata
$({ target: 'Reflect', stat: true }, {
  getOwnMetadata: function getOwnMetadata(metadataKey, target /* , targetKey */) {
    var targetKey = arguments.length < 3 ? undefined : toMetadataKey(arguments[2]);
    return ordinaryGetOwnMetadata(metadataKey, anObject(target), targetKey);
  }
});

});

// MODULE: ./node_modules/.pnpm/[email protected]/node_modules/core-js/modules/esnext.reflect.has-metadata.js
var esnext_reflect_has_metadata_namespaceFn = /*#__PURE__*/__webpack_require__.cw(function(module, exports) {

// TODO: Remove from `core-js@4`
var $ = (polyfills_export_namespaceFn());
var ReflectMetadataModule = (reflect_metadata_namespaceFn());
var anObject = (polyfills_an_object_namespaceFn());
var getPrototypeOf = (object_get_prototype_of_namespaceFn());

var ordinaryHasOwnMetadata = ReflectMetadataModule.has;
var toMetadataKey = ReflectMetadataModule.toKey;

var ordinaryHasMetadata = function (MetadataKey, O, P) {
  var hasOwn = ordinaryHasOwnMetadata(MetadataKey, O, P);
  if (hasOwn) return true;
  var parent = getPrototypeOf(O);
  return parent !== null ? ordinaryHasMetadata(MetadataKey, parent, P) : false;
};

// `Reflect.hasMetadata` method
// https://github.com/rbuckton/reflect-metadata
$({ target: 'Reflect', stat: true }, {
  hasMetadata: function hasMetadata(metadataKey, target /* , targetKey */) {
    var targetKey = arguments.length < 3 ? undefined : toMetadataKey(arguments[2]);
    return ordinaryHasMetadata(metadataKey, anObject(target), targetKey);
  }
});

});

// MODULE: ./node_modules/.pnpm/[email protected]/node_modules/core-js/modules/esnext.reflect.has-own-metadata.js
var esnext_reflect_has_own_metadata_namespaceFn = /*#__PURE__*/__webpack_require__.cw(function(module, exports) {

// TODO: Remove from `core-js@4`
var $ = (polyfills_export_namespaceFn());
var ReflectMetadataModule = (reflect_metadata_namespaceFn());
var anObject = (polyfills_an_object_namespaceFn());

var ordinaryHasOwnMetadata = ReflectMetadataModule.has;
var toMetadataKey = ReflectMetadataModule.toKey;

// `Reflect.hasOwnMetadata` method
// https://github.com/rbuckton/reflect-metadata
$({ target: 'Reflect', stat: true }, {
  hasOwnMetadata: function hasOwnMetadata(metadataKey, target /* , targetKey */) {
    var targetKey = arguments.length < 3 ? undefined : toMetadataKey(arguments[2]);
    return ordinaryHasOwnMetadata(metadataKey, anObject(target), targetKey);
  }
});

});

// MODULE: ./node_modules/.pnpm/[email protected]/node_modules/core-js/modules/esnext.reflect.metadata.js
var esnext_reflect_metadata_namespaceFn = /*#__PURE__*/__webpack_require__.cw(function(module, exports) {

var $ = (polyfills_export_namespaceFn());
var ReflectMetadataModule = (reflect_metadata_namespaceFn());
var anObject = (polyfills_an_object_namespaceFn());

var toMetadataKey = ReflectMetadataModule.toKey;
var ordinaryDefineOwnMetadata = ReflectMetadataModule.set;

// `Reflect.metadata` method
// https://github.com/rbuckton/reflect-metadata
$({ target: 'Reflect', stat: true }, {
  metadata: function metadata(metadataKey, metadataValue) {
    return function decorator(target, key) {
      ordinaryDefineOwnMetadata(metadataKey, metadataValue, anObject(target), toMetadataKey(key));
    };
  }
});

});

;// ./node_modules/.pnpm/[email protected]/node_modules/core-js/features/reflect/index.js
features_reflect_namespaceFn();

;// ./src/polyfills.ts

;// ./src/user-script/polyfills.ts


// MODULE: ./node_modules/.pnpm/[email protected]/node_modules/escape-html/index.js
var escape_html_namespaceFn = /*#__PURE__*/__webpack_require__.cw(function(module, exports) {
/*!
 * escape-html
 * Copyright(c) 2012-2013 TJ Holowaychuk
 * Copyright(c) 2015 Andreas Lubbe
 * Copyright(c) 2015 Tiancheng "Timothy" Gu
 * MIT Licensed
 */



/**
 * Module variables.
 * @private
 */
(es_regexp_exec_namespaceFn());
var matchHtmlRegExp = /["'&<>]/;

/**
 * Module exports.
 * @public
 */

module.exports = escapeHtml;

/**
 * Escape special characters in the given string of html.
 *
 * @param  {string} string The string to escape for inserting into HTML
 * @return {string}
 * @public
 */

function escapeHtml(string) {
  var str = '' + string;
  var match = matchHtmlRegExp.exec(str);
  if (!match) {
    return str;
  }
  var escape;
  var html = '';
  var index = 0;
  var lastIndex = 0;
  for (index = match.index; index < str.length; index++) {
    switch (str.charCodeAt(index)) {
      case 34:
        // "
        escape = '&quot;';
        break;
      case 38:
        // &
        escape = '&amp;';
        break;
      case 39:
        // '
        escape = '&#39;';
        break;
      case 60:
        // <
        escape = '&lt;';
        break;
      case 62:
        // >
        escape = '&gt;';
        break;
      default:
        continue;
    }
    if (lastIndex !== index) {
      html += str.substring(lastIndex, index);
    }
    lastIndex = index + 1;
    html += escape;
  }
  return lastIndex !== index ? html + str.substring(lastIndex, index) : html;
}
});

// MODULE: ./node_modules/.pnpm/[email protected][email protected]/node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js
var injectStylesIntoStyleTag_namespaceFn = /*#__PURE__*/__webpack_require__.cw(function(module, exports) {


var stylesInDOM = [];
function getIndexByIdentifier(identifier) {
  var result = -1;
  for (var i = 0; i < stylesInDOM.length; i++) {
    if (stylesInDOM[i].identifier === identifier) {
      result = i;
      break;
    }
  }
  return result;
}
function modulesToDom(list, options) {
  var idCountMap = {};
  var identifiers = [];
  for (var i = 0; i < list.length; i++) {
    var item = list[i];
    var id = options.base ? item[0] + options.base : item[0];
    var count = idCountMap[id] || 0;
    var identifier = "".concat(id, " ").concat(count);
    idCountMap[id] = count + 1;
    var indexByIdentifier = getIndexByIdentifier(identifier);
    var obj = {
      css: item[1],
      media: item[2],
      sourceMap: item[3],
      supports: item[4],
      layer: item[5]
    };
    if (indexByIdentifier !== -1) {
      stylesInDOM[indexByIdentifier].references++;
      stylesInDOM[indexByIdentifier].updater(obj);
    } else {
      var updater = addElementStyle(obj, options);
      options.byIndex = i;
      stylesInDOM.splice(i, 0, {
        identifier: identifier,
        updater: updater,
        references: 1
      });
    }
    identifiers.push(identifier);
  }
  return identifiers;
}
function addElementStyle(obj, options) {
  var api = options.domAPI(options);
  api.update(obj);
  var updater = function updater(newObj) {
    if (newObj) {
      if (newObj.css === obj.css && newObj.media === obj.media && newObj.sourceMap === obj.sourceMap && newObj.supports === obj.supports && newObj.layer === obj.layer) {
        return;
      }
      api.update(obj = newObj);
    } else {
      api.remove();
    }
  };
  return updater;
}
module.exports = function (list, options) {
  options = options || {};
  list = list || [];
  var lastIdentifiers = modulesToDom(list, options);
  return function update(newList) {
    newList = newList || [];
    for (var i = 0; i < lastIdentifiers.length; i++) {
      var identifier = lastIdentifiers[i];
      var index = getIndexByIdentifier(identifier);
      stylesInDOM[index].references--;
    }
    var newLastIdentifiers = modulesToDom(newList, options);
    for (var _i = 0; _i < lastIdentifiers.length; _i++) {
      var _identifier = lastIdentifiers[_i];
      var _index = getIndexByIdentifier(_identifier);
      if (stylesInDOM[_index].references === 0) {
        stylesInDOM[_index].updater();
        stylesInDOM.splice(_index, 1);
      }
    }
    lastIdentifiers = newLastIdentifiers;
  };
};
});

// MODULE: ./node_modules/.pnpm/[email protected][email protected]/node_modules/style-loader/dist/runtime/insertBySelector.js
var insertBySelector_namespaceFn = /*#__PURE__*/__webpack_require__.cw(function(module, exports) {


var memo = {};

/* istanbul ignore next  */
function getTarget(target) {
  if (typeof memo[target] === "undefined") {
    var styleTarget = document.querySelector(target);

    // Special case to return head of iframe instead of iframe itself
    if (window.HTMLIFrameElement && styleTarget instanceof window.HTMLIFrameElement) {
      try {
        // This will throw an exception if access to iframe is blocked
        // due to cross-origin restrictions
        styleTarget = styleTarget.contentDocument.head;
      } catch (e) {
        // istanbul ignore next
        styleTarget = null;
      }
    }
    memo[target] = styleTarget;
  }
  return memo[target];
}

/* istanbul ignore next  */
function insertBySelector(insert, style) {
  var target = getTarget(insert);
  if (!target) {
    throw new Error("Couldn't find a style target. This probably means that the value for the 'insert' parameter is invalid.");
  }
  target.appendChild(style);
}
module.exports = insertBySelector;
});

// MODULE: ./node_modules/.pnpm/[email protected][email protected]/node_modules/style-loader/dist/runtime/insertStyleElement.js
var insertStyleElement_namespaceFn = /*#__PURE__*/__webpack_require__.cw(function(module, exports) {


/* istanbul ignore next  */
function insertStyleElement(options) {
  var element = document.createElement("style");
  options.setAttributes(element, options.attributes);
  options.insert(element, options.options);
  return element;
}
module.exports = insertStyleElement;
});

// MODULE: ./node_modules/.pnpm/[email protected][email protected]/node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js
var setAttributesWithoutAttributes_namespaceFn = /*#__PURE__*/__webpack_require__.cw(function(module, exports) {


/* istanbul ignore next  */
function setAttributesWithoutAttributes(styleElement) {
  var nonce =  true ? __webpack_require__.nc : 0;
  if (nonce) {
    styleElement.setAttribute("nonce", nonce);
  }
}
module.exports = setAttributesWithoutAttributes;
});

// MODULE: ./node_modules/.pnpm/[email protected][email protected]/node_modules/style-loader/dist/runtime/styleDomAPI.js
var styleDomAPI_namespaceFn = /*#__PURE__*/__webpack_require__.cw(function(module, exports) {


/* istanbul ignore next  */
function apply(styleElement, options, obj) {
  var css = "";
  if (obj.supports) {
    css += "@supports (".concat(obj.supports, ") {");
  }
  if (obj.media) {
    css += "@media ".concat(obj.media, " {");
  }
  var needLayer = typeof obj.layer !== "undefined";
  if (needLayer) {
    css += "@layer".concat(obj.layer.length > 0 ? " ".concat(obj.layer) : "", " {");
  }
  css += obj.css;
  if (needLayer) {
    css += "}";
  }
  if (obj.media) {
    css += "}";
  }
  if (obj.supports) {
    css += "}";
  }
  var sourceMap = obj.sourceMap;
  if (sourceMap && typeof btoa !== "undefined") {
    css += "\n/*# sourceMappingURL=data:application/json;base64,".concat(btoa(unescape(encodeURIComponent(JSON.stringify(sourceMap)))), " */");
  }

  // For old IE
  /* istanbul ignore if  */
  options.styleTagTransform(css, styleElement, options.options);
}
function removeStyleElement(styleElement) {
  // istanbul ignore if
  if (styleElement.parentNode === null) {
    return false;
  }
  styleElement.parentNode.removeChild(styleElement);
}

/* istanbul ignore next  */
function domAPI(options) {
  if (typeof document === "undefined") {
    return {
      update: function update() {},
      remove: function remove() {}
    };
  }
  var styleElement = options.insertStyleElement(options);
  return {
    update: function update(obj) {
      apply(styleElement, options, obj);
    },
    remove: function remove() {
      removeStyleElement(styleElement);
    }
  };
}
module.exports = domAPI;
});

// MODULE: ./node_modules/.pnpm/[email protected][email protected]/node_modules/style-loader/dist/runtime/styleTagTransform.js
var styleTagTransform_namespaceFn = /*#__PURE__*/__webpack_require__.cw(function(module, exports) {


/* istanbul ignore next  */
function styleTagTransform(css, styleElement) {
  if (styleElement.styleSheet) {
    styleElement.styleSheet.cssText = css;
  } else {
    while (styleElement.firstChild) {
      styleElement.removeChild(styleElement.firstChild);
    }
    styleElement.appendChild(document.createTextNode(css));
  }
}
module.exports = styleTagTransform;
});

// EXTERNAL MODULE: ./node_modules/.pnpm/[email protected]/node_modules/core-js/internals/a-callable.js
var a_callable_namespaceFn = () => {
	return __webpack_require__(6927);
};

// EXTERNAL MODULE: ./node_modules/.pnpm/[email protected]/node_modules/core-js/internals/a-string.js
var a_string_namespaceFn = () => {
	return __webpack_require__(2498);
};

// EXTERNAL MODULE: ./node_modules/.pnpm/[email protected]/node_modules/core-js/internals/a-weak-key.js
var a_weak_key_namespaceFn = () => {
	return __webpack_require__(7033);
};

// EXTERNAL MODULE: ./node_modules/.pnpm/[email protected]/node_modules/core-js/internals/a-weak-map.js
var a_weak_map_namespaceFn = () => {
	return __webpack_require__(6372);
};

// EXTERNAL MODULE: ./node_modules/.pnpm/[email protected]/node_modules/core-js/internals/add-to-unscopables.js
var add_to_unscopables_namespaceFn = () => {
	return __webpack_require__(8924);
};

// EXTERNAL MODULE: ./node_modules/.pnpm/[email protected]/node_modules/core-js/internals/advance-string-index.js
var advance_string_index_namespaceFn = () => {
	return __webpack_require__(8568);
};

// EXTERNAL MODULE: ./node_modules/.pnpm/[email protected]/node_modules/core-js/internals/an-instance.js
var an_instance_namespaceFn = () => {
	return __webpack_require__(1468);
};

// EXTERNAL MODULE: ./node_modules/.pnpm/[email protected]/node_modules/core-js/internals/an-object-or-undefined.js
var an_object_or_undefined_namespaceFn = () => {
	return __webpack_require__(2293);
};

// EXTERNAL MODULE: ./node_modules/.pnpm/[email protected]/node_modules/core-js/internals/an-object.js
var an_object_namespaceFn = () => {
	return __webpack_require__(4464);
};

// EXTERNAL MODULE: ./node_modules/.pnpm/[email protected]/node_modules/core-js/internals/an-uint8-array.js
var an_uint8_array_namespaceFn = () => {
	return __webpack_require__(3919);
};

// EXTERNAL MODULE: ./node_modules/.pnpm/[email protected]/node_modules/core-js/internals/array-buffer-is-detached.js
var array_buffer_is_detached_namespaceFn = () => {
	return __webpack_require__(8827);
};

// EXTERNAL MODULE: ./node_modules/.pnpm/[email protected]/node_modules/core-js/internals/array-buffer-not-detached.js
var array_buffer_not_detached_namespaceFn = () => {
	return __webpack_require__(3074);
};

// EXTERNAL MODULE: ./node_modules/.pnpm/[email protected]/node_modules/core-js/internals/array-buffer-transfer.js
var array_buffer_transfer_namespaceFn = () => {
	return __webpack_require__(5347);
};

// EXTERNAL MODULE: ./node_modules/.pnpm/[email protected]/node_modules/core-js/internals/array-buffer-view-core.js
var array_buffer_view_core_namespaceFn = () => {
	return __webpack_require__(1977);
};

// EXTERNAL MODULE: ./node_modules/.pnpm/[email protected]/node_modules/core-js/internals/array-buffer.js
var array_buffer_namespaceFn = () => {
	return __webpack_require__(4063);
};

// EXTERNAL MODULE: ./node_modules/.pnpm/[email protected]/node_modules/core-js/internals/array-fill.js
var array_fill_namespaceFn = () => {
	return __webpack_require__(632);
};

// EXTERNAL MODULE: ./node_modules/.pnpm/[email protected]/node_modules/core-js/internals/array-from-constructor-and-list.js
var array_from_constructor_and_list_namespaceFn = () => {
	return __webpack_require__(293);
};

// EXTERNAL MODULE: ./node_modules/.pnpm/[email protected]/node_modules/core-js/internals/array-from.js
var array_from_namespaceFn = () => {
	return __webpack_require__(6205);
};

// EXTERNAL MODULE: ./node_modules/.pnpm/[email protected]/node_modules/core-js/internals/array-includes.js
var array_includes_namespaceFn = () => {
	return __webpack_require__(5460);
};

// MODULE: ./node_modules/.pnpm/[email protected]/node_modules/core-js/internals/array-iteration-from-last.js
var array_iteration_from_last_namespaceFn = /*#__PURE__*/__webpack_require__.cw(function(module, exports) {

var bind = (function_bind_context_namespaceFn());
var IndexedObject = (indexed_object_namespaceFn());
var toObject = (to_object_namespaceFn());
var lengthOfArrayLike = (length_of_array_like_namespaceFn());

// `Array.prototype.{ findLast, findLastIndex }` methods implementation
var createMethod = function (TYPE) {
  var IS_FIND_LAST_INDEX = TYPE === 1;
  return function ($this, callbackfn, that) {
    var O = toObject($this);
    var self = IndexedObject(O);
    var index = lengthOfArrayLike(self);
    var boundFunction = bind(callbackfn, that);
    var value, result;
    while (index-- > 0) {
      value = self[index];
      result = boundFunction(value, index, O);
      if (result) switch (TYPE) {
        case 0: return value; // findLast
        case 1: return index; // findLastIndex
      }
    }
    return IS_FIND_LAST_INDEX ? -1 : undefined;
  };
};

module.exports = {
  // `Array.prototype.findLast` method
  // https://github.com/tc39/proposal-array-find-from-last
  U: createMethod(0),
  // `Array.prototype.findLastIndex` method
  // https://github.com/tc39/proposal-array-find-from-last
  K: createMethod(1)
};

});

// EXTERNAL MODULE: ./node_modules/.pnpm/[email protected]/node_modules/core-js/internals/array-method-is-strict.js
var array_method_is_strict_namespaceFn = () => {
	return __webpack_require__(6839);
};

// MODULE: ./node_modules/.pnpm/[email protected]/node_modules/core-js/internals/array-reduce.js
var array_reduce_namespaceFn = /*#__PURE__*/__webpack_require__.cw(function(module, exports) {

var aCallable = (a_callable_namespaceFn());
var toObject = (to_object_namespaceFn());
var IndexedObject = (indexed_object_namespaceFn());
var lengthOfArrayLike = (length_of_array_like_namespaceFn());

var $TypeError = TypeError;

var REDUCE_EMPTY = 'Reduce of empty array with no initial value';

// `Array.prototype.{ reduce, reduceRight }` methods implementation
var createMethod = function (IS_RIGHT) {
  return function (that, callbackfn, argumentsLength, memo) {
    var O = toObject(that);
    var self = IndexedObject(O);
    var length = lengthOfArrayLike(O);
    aCallable(callbackfn);
    if (length === 0 && argumentsLength < 2) throw new $TypeError(REDUCE_EMPTY);
    var index = IS_RIGHT ? length - 1 : 0;
    var i = IS_RIGHT ? -1 : 1;
    if (argumentsLength < 2) while (true) {
      if (index in self) {
        memo = self[index];
        index += i;
        break;
      }
      index += i;
      if (IS_RIGHT ? index < 0 : length <= index) {
        throw new $TypeError(REDUCE_EMPTY);
      }
    }
    for (;IS_RIGHT ? index >= 0 : length > index; index += i) if (index in self) {
      memo = callbackfn(memo, self[index], index, O);
    }
    return memo;
  };
};

module.exports = {
  // `Array.prototype.reduce` method
  // https://tc39.es/ecma262/#sec-array.prototype.reduce
  k: createMethod(false),
  // `Array.prototype.reduceRight` method
  // https://tc39.es/ecma262/#sec-array.prototype.reduceright
  right: createMethod(true)
};

});

// EXTERNAL MODULE: ./node_modules/.pnpm/[email protected]/node_modules/core-js/internals/array-slice.js
var array_slice_namespaceFn = () => {
	return __webpack_require__(803);
};

// MODULE: ./node_modules/.pnpm/[email protected]/node_modules/core-js/internals/array-sort.js
var array_sort_namespaceFn = /*#__PURE__*/__webpack_require__.cw(function(module, exports) {

var arraySlice = (array_slice_namespaceFn());

var floor = Math.floor;

var sort = function (array, comparefn) {
  var length = array.length;

  if (length < 8) {
    // insertion sort
    var i = 1;
    var element, j;

    while (i < length) {
      j = i;
      element = array[i];
      while (j && comparefn(array[j - 1], element) > 0) {
        array[j] = array[--j];
      }
      if (j !== i++) array[j] = element;
    }
  } else {
    // merge sort
    var middle = floor(length / 2);
    var left = sort(arraySlice(array, 0, middle), comparefn);
    var right = sort(arraySlice(array, middle), comparefn);
    var llength = left.length;
    var rlength = right.length;
    var lindex = 0;
    var rindex = 0;

    while (lindex < llength || rindex < rlength) {
      array[lindex + rindex] = (lindex < llength && rindex < rlength)
        ? comparefn(left[lindex], right[rindex]) <= 0 ? left[lindex++] : right[rindex++]
        : lindex < llength ? left[lindex++] : right[rindex++];
    }
  }

  return array;
};

module.exports = sort;

});

// EXTERNAL MODULE: ./node_modules/.pnpm/[email protected]/node_modules/core-js/internals/array-species-create.js
var array_species_create_namespaceFn = () => {
	return __webpack_require__(2200);
};

// EXTERNAL MODULE: ./node_modules/.pnpm/[email protected]/node_modules/core-js/internals/base64-map.js
var base64_map_namespaceFn = () => {
	return __webpack_require__(469);
};

// EXTERNAL MODULE: ./node_modules/.pnpm/[email protected]/node_modules/core-js/internals/call-with-safe-iteration-closing.js
var call_with_safe_iteration_closing_namespaceFn = () => {
	return __webpack_require__(3666);
};

// EXTERNAL MODULE: ./node_modules/.pnpm/[email protected]/node_modules/core-js/internals/check-correctness-of-iteration.js
var check_correctness_of_iteration_namespaceFn = () => {
	return __webpack_require__(153);
};

// EXTERNAL MODULE: ./node_modules/.pnpm/[email protected]/node_modules/core-js/internals/classof-raw.js
var classof_raw_namespaceFn = () => {
	return __webpack_require__(2911);
};

// EXTERNAL MODULE: ./node_modules/.pnpm/[email protected]/node_modules/core-js/internals/classof.js
var classof_namespaceFn = () => {
	return __webpack_require__(7964);
};

// EXTERNAL MODULE: ./node_modules/.pnpm/[email protected]/node_modules/core-js/internals/copy-constructor-properties.js
var copy_constructor_properties_namespaceFn = () => {
	return __webpack_require__(2491);
};

// EXTERNAL MODULE: ./node_modules/.pnpm/[email protected]/node_modules/core-js/internals/correct-is-regexp-logic.js
var correct_is_regexp_logic_namespaceFn = () => {
	return __webpack_require__(6887);
};

// EXTERNAL MODULE: ./node_modules/.pnpm/[email protected]/node_modules/core-js/internals/create-iter-result-object.js
var create_iter_result_object_namespaceFn = () => {
	return __webpack_require__(9566);
};

// EXTERNAL MODULE: ./node_modules/.pnpm/[email protected]/node_modules/core-js/internals/create-non-enumerable-property.js
var create_non_enumerable_property_namespaceFn = () => {
	return __webpack_require__(298);
};

// EXTERNAL MODULE: ./node_modules/.pnpm/[email protected]/node_modules/core-js/internals/create-property-descriptor.js
var create_property_descriptor_namespaceFn = () => {
	return __webpack_require__(1513);
};

// EXTERNAL MODULE: ./node_modules/.pnpm/[email protected]/node_modules/core-js/internals/create-property.js
var create_property_namespaceFn = () => {
	return __webpack_require__(4119);
};

// EXTERNAL MODULE: ./node_modules/.pnpm/[email protected]/node_modules/core-js/internals/define-built-in-accessor.js
var define_built_in_accessor_namespaceFn = () => {
	return __webpack_require__(707);
};

// EXTERNAL MODULE: ./node_modules/.pnpm/[email protected]/node_modules/core-js/internals/define-built-in.js
var define_built_in_namespaceFn = () => {
	return __webpack_require__(7255);
};

// EXTERNAL MODULE: ./node_modules/.pnpm/[email protected]/node_modules/core-js/internals/define-built-ins.js
var define_built_ins_namespaceFn = () => {
	return __webpack_require__(8498);
};

// EXTERNAL MODULE: ./node_modules/.pnpm/[email protected]/node_modules/core-js/internals/delete-property-or-throw.js
var delete_property_or_throw_namespaceFn = () => {
	return __webpack_require__(9319);
};

// EXTERNAL MODULE: ./node_modules/.pnpm/[email protected]/node_modules/core-js/internals/descriptors.js
var descriptors_namespaceFn = () => {
	return __webpack_require__(1175);
};

// EXTERNAL MODULE: ./node_modules/.pnpm/[email protected]/node_modules/core-js/internals/document-create-element.js
var document_create_element_namespaceFn = () => {
	return __webpack_require__(8752);
};

// EXTERNAL MODULE: ./node_modules/.pnpm/[email protected]/node_modules/core-js/internals/dom-iterables.js
var dom_iterables_namespaceFn = () => {
	return __webpack_require__(9991);
};

// EXTERNAL MODULE: ./node_modules/.pnpm/[email protected]/node_modules/core-js/internals/dom-token-list-prototype.js
var dom_token_list_prototype_namespaceFn = () => {
	return __webpack_require__(3917);
};

// EXTERNAL MODULE: ./node_modules/.pnpm/[email protected]/node_modules/core-js/internals/environment-ff-version.js
var environment_ff_version_namespaceFn = () => {
	return __webpack_require__(4704);
};

// EXTERNAL MODULE: ./node_modules/.pnpm/[email protected]/node_modules/core-js/internals/environment-is-ie-or-edge.js
var environment_is_ie_or_edge_namespaceFn = () => {
	return __webpack_require__(5256);
};

// EXTERNAL MODULE: ./node_modules/.pnpm/[email protected]/node_modules/core-js/internals/environment-is-ios-pebble.js
var environment_is_ios_pebble_namespaceFn = () => {
	return __webpack_require__(4737);
};

// MODULE: ./node_modules/.pnpm/[email protected]/node_modules/core-js/internals/environment-is-ios.js
var environment_is_ios_namespaceFn = /*#__PURE__*/__webpack_require__.cw(function(module, exports) {

var userAgent = (environment_user_agent_namespaceFn());

module.exports = /ipad|iphone|ipod/i.test(userAgent) && /applewebkit/i.test(userAgent);

});

// EXTERNAL MODULE: ./node_modules/.pnpm/[email protected]/node_modules/core-js/internals/environment-is-node.js
var environment_is_node_namespaceFn = () => {
	return __webpack_require__(9810);
};

// EXTERNAL MODULE: ./node_modules/.pnpm/[email protected]/node_modules/core-js/internals/environment-is-webos-webkit.js
var environment_is_webos_webkit_namespaceFn = () => {
	return __webpack_require__(8427);
};

// EXTERNAL MODULE: ./node_modules/.pnpm/[email protected]/node_modules/core-js/internals/environment-user-agent.js
var environment_user_agent_namespaceFn = () => {
	return __webpack_require__(4298);
};

// EXTERNAL MODULE: ./node_modules/.pnpm/[email protected]/node_modules/core-js/internals/environment-v8-version.js
var environment_v8_version_namespaceFn = () => {
	return __webpack_require__(5422);
};

// EXTERNAL MODULE: ./node_modules/.pnpm/[email protected]/node_modules/core-js/internals/environment-webkit-version.js
var environment_webkit_version_namespaceFn = () => {
	return __webpack_require__(8970);
};

// EXTERNAL MODULE: ./node_modules/.pnpm/[email protected]/node_modules/core-js/internals/environment.js
var environment_namespaceFn = () => {
	return __webpack_require__(9296);
};

// EXTERNAL MODULE: ./node_modules/.pnpm/[email protected]/node_modules/core-js/internals/export.js
var export_namespaceFn = () => {
	return __webpack_require__(1187);
};

// EXTERNAL MODULE: ./node_modules/.pnpm/[email protected]/node_modules/core-js/internals/fails.js
var fails_namespaceFn = () => {
	return __webpack_require__(4892);
};

// EXTERNAL MODULE: ./node_modules/.pnpm/[email protected]/node_modules/core-js/internals/fix-regexp-well-known-symbol-logic.js
var fix_regexp_well_known_symbol_logic_namespaceFn = () => {
	return __webpack_require__(4061);
};

// EXTERNAL MODULE: ./node_modules/.pnpm/[email protected]/node_modules/core-js/internals/flatten-into-array.js
var flatten_into_array_namespaceFn = () => {
	return __webpack_require__(3206);
};

// EXTERNAL MODULE: ./node_modules/.pnpm/[email protected]/node_modules/core-js/internals/function-apply.js
var function_apply_namespaceFn = () => {
	return __webpack_require__(3160);
};

// EXTERNAL MODULE: ./node_modules/.pnpm/[email protected]/node_modules/core-js/internals/function-bind-context.js
var function_bind_context_namespaceFn = () => {
	return __webpack_require__(1079);
};

// EXTERNAL MODULE: ./node_modules/.pnpm/[email protected]/node_modules/core-js/internals/function-call.js
var function_call_namespaceFn = () => {
	return __webpack_require__(5418);
};

// EXTERNAL MODULE: ./node_modules/.pnpm/[email protected]/node_modules/core-js/internals/function-name.js
var function_name_namespaceFn = () => {
	return __webpack_require__(6993);
};

// EXTERNAL MODULE: ./node_modules/.pnpm/[email protected]/node_modules/core-js/internals/function-uncurry-this-clause.js
var function_uncurry_this_clause_namespaceFn = () => {
	return __webpack_require__(3449);
};

// EXTERNAL MODULE: ./node_modules/.pnpm/[email protected]/node_modules/core-js/internals/function-uncurry-this.js
var function_uncurry_this_namespaceFn = () => {
	return __webpack_require__(3027);
};

// EXTERNAL MODULE: ./node_modules/.pnpm/[email protected]/node_modules/core-js/internals/get-alphabet-option.js
var get_alphabet_option_namespaceFn = () => {
	return __webpack_require__(8035);
};

// EXTERNAL MODULE: ./node_modules/.pnpm/[email protected]/node_modules/core-js/internals/get-built-in-prototype-method.js
var get_built_in_prototype_method_namespaceFn = () => {
	return __webpack_require__(5091);
};

// EXTERNAL MODULE: ./node_modules/.pnpm/[email protected]/node_modules/core-js/internals/get-built-in.js
var get_built_in_namespaceFn = () => {
	return __webpack_require__(878);
};

// EXTERNAL MODULE: ./node_modules/.pnpm/[email protected]/node_modules/core-js/internals/get-iterator-direct.js
var get_iterator_direct_namespaceFn = () => {
	return __webpack_require__(9060);
};

// EXTERNAL MODULE: ./node_modules/.pnpm/[email protected]/node_modules/core-js/internals/get-iterator-flattenable.js
var get_iterator_flattenable_namespaceFn = () => {
	return __webpack_require__(1935);
};

// EXTERNAL MODULE: ./node_modules/.pnpm/[email protected]/node_modules/core-js/internals/get-iterator-internal.js
var get_iterator_internal_namespaceFn = () => {
	return __webpack_require__(2248);
};

// EXTERNAL MODULE: ./node_modules/.pnpm/[email protected]/node_modules/core-js/internals/get-iterator-method-internal.js
var get_iterator_method_internal_namespaceFn = () => {
	return __webpack_require__(4188);
};

// EXTERNAL MODULE: ./node_modules/.pnpm/[email protected]/node_modules/core-js/internals/get-method.js
var get_method_namespaceFn = () => {
	return __webpack_require__(4215);
};

// EXTERNAL MODULE: ./node_modules/.pnpm/[email protected]/node_modules/core-js/internals/global-this.js
var global_this_namespaceFn = () => {
	return __webpack_require__(4127);
};

// EXTERNAL MODULE: ./node_modules/.pnpm/[email protected]/node_modules/core-js/internals/has-own-property.js
var has_own_property_namespaceFn = () => {
	return __webpack_require__(1324);
};

// EXTERNAL MODULE: ./node_modules/.pnpm/[email protected]/node_modules/core-js/internals/host-report-errors.js
var host_report_errors_namespaceFn = () => {
	return __webpack_require__(8352);
};

// EXTERNAL MODULE: ./node_modules/.pnpm/[email protected]/node_modules/core-js/internals/html.js
var html_namespaceFn = () => {
	return __webpack_require__(48);
};

// EXTERNAL MODULE: ./node_modules/.pnpm/[email protected]/node_modules/core-js/internals/indexed-object.js
var indexed_object_namespaceFn = () => {
	return __webpack_require__(2466);
};

// EXTERNAL MODULE: ./node_modules/.pnpm/[email protected]/node_modules/core-js/internals/inherit-if-required.js
var inherit_if_required_namespaceFn = () => {
	return __webpack_require__(6388);
};

// EXTERNAL MODULE: ./node_modules/.pnpm/[email protected]/node_modules/core-js/internals/inspect-source.js
var inspect_source_namespaceFn = () => {
	return __webpack_require__(3335);
};

// EXTERNAL MODULE: ./node_modules/.pnpm/[email protected]/node_modules/core-js/internals/internal-state.js
var internal_state_namespaceFn = () => {
	return __webpack_require__(4852);
};

// EXTERNAL MODULE: ./node_modules/.pnpm/[email protected]/node_modules/core-js/internals/is-array.js
var is_array_namespaceFn = () => {
	return __webpack_require__(2001);
};

// EXTERNAL MODULE: ./node_modules/.pnpm/[email protected]/node_modules/core-js/internals/is-big-int-array.js
var is_big_int_array_namespaceFn = () => {
	return __webpack_require__(4830);
};

// EXTERNAL MODULE: ./node_modules/.pnpm/[email protected]/node_modules/core-js/internals/is-callable.js
var is_callable_namespaceFn = () => {
	return __webpack_require__(8794);
};

// EXTERNAL MODULE: ./node_modules/.pnpm/[email protected]/node_modules/core-js/internals/is-forced.js
var is_forced_namespaceFn = () => {
	return __webpack_require__(7191);
};

// EXTERNAL MODULE: ./node_modules/.pnpm/[email protected]/node_modules/core-js/internals/is-object.js
var is_object_namespaceFn = () => {
	return __webpack_require__(8861);
};

// EXTERNAL MODULE: ./node_modules/.pnpm/[email protected]/node_modules/core-js/internals/is-pure.js
var is_pure_namespaceFn = () => {
	return __webpack_require__(4400);
};

// EXTERNAL MODULE: ./node_modules/.pnpm/[email protected]/node_modules/core-js/internals/is-regexp.js
var is_regexp_namespaceFn = () => {
	return __webpack_require__(3815);
};

// EXTERNAL MODULE: ./node_modules/.pnpm/[email protected]/node_modules/core-js/internals/iterate.js
var iterate_namespaceFn = () => {
	return __webpack_require__(2711);
};

// EXTERNAL MODULE: ./node_modules/.pnpm/[email protected]/node_modules/core-js/internals/iterator-close.js
var iterator_close_namespaceFn = () => {
	return __webpack_require__(4090);
};

// EXTERNAL MODULE: ./node_modules/.pnpm/[email protected]/node_modules/core-js/internals/iterator-create-constructor.js
var iterator_create_constructor_namespaceFn = () => {
	return __webpack_require__(3565);
};

// EXTERNAL MODULE: ./node_modules/.pnpm/[email protected]/node_modules/core-js/internals/iterator-create-proxy.js
var iterator_create_proxy_namespaceFn = () => {
	return __webpack_require__(5521);
};

// EXTERNAL MODULE: ./node_modules/.pnpm/[email protected]/node_modules/core-js/internals/iterator-define.js
var iterator_define_namespaceFn = () => {
	return __webpack_require__(3943);
};

// EXTERNAL MODULE: ./node_modules/.pnpm/[email protected]/node_modules/core-js/internals/iterator-helper-throws-on-invalid-iterator.js
var iterator_helper_throws_on_invalid_iterator_namespaceFn = () => {
	return __webpack_require__(909);
};

// EXTERNAL MODULE: ./node_modules/.pnpm/[email protected]/node_modules/core-js/internals/iterator-helper-without-closing-on-early-error.js
var iterator_helper_without_closing_on_early_error_namespaceFn = () => {
	return __webpack_require__(7280);
};

// EXTERNAL MODULE: ./node_modules/.pnpm/[email protected]/node_modules/core-js/internals/iterators.js
var iterators_namespaceFn = () => {
	return __webpack_require__(510);
};

// EXTERNAL MODULE: ./node_modules/.pnpm/[email protected]/node_modules/core-js/internals/length-of-array-like.js
var length_of_array_like_namespaceFn = () => {
	return __webpack_require__(5807);
};

// EXTERNAL MODULE: ./node_modules/.pnpm/[email protected]/node_modules/core-js/internals/map-helpers.js
var map_helpers_namespaceFn = () => {
	return __webpack_require__(3799);
};

// MODULE: ./node_modules/.pnpm/[email protected]/node_modules/core-js/internals/microtask.js
var microtask_namespaceFn = /*#__PURE__*/__webpack_require__.cw(function(module, exports) {

var globalThis = (global_this_namespaceFn());
var safeGetBuiltIn = (safe_get_built_in_namespaceFn());
var bind = (function_bind_context_namespaceFn());
var macrotask = (task_namespaceFn().h);
var Queue = (queue_namespaceFn());
var IS_IOS = (environment_is_ios_namespaceFn());
var IS_IOS_PEBBLE = (environment_is_ios_pebble_namespaceFn());
var IS_WEBOS_WEBKIT = (environment_is_webos_webkit_namespaceFn());
var IS_NODE = (environment_is_node_namespaceFn());

var MutationObserver = globalThis.MutationObserver || globalThis.WebKitMutationObserver;
var document = globalThis.document;
var process = globalThis.process;
var Promise = globalThis.Promise;
var microtask = safeGetBuiltIn('queueMicrotask');
var notify, toggle, node, promise, then;

// modern engines have queueMicrotask method
if (!microtask) {
  var queue = new Queue();

  var flush = function () {
    var parent, fn;
    if (IS_NODE && (parent = process.domain)) parent.exit();
    while (fn = queue.get()) try {
      fn();
    } catch (error) {
      if (queue.head) notify();
      throw error;
    }
    if (parent) parent.enter();
  };

  // browsers with MutationObserver, except iOS - https://github.com/zloirock/core-js/issues/339
  // also except WebOS Webkit https://github.com/zloirock/core-js/issues/898
  if (!IS_IOS && !IS_NODE && !IS_WEBOS_WEBKIT && MutationObserver && document) {
    toggle = true;
    node = document.createTextNode('');
    new MutationObserver(flush).observe(node, { characterData: true });
    notify = function () {
      node.data = toggle = !toggle;
    };
  // environments with maybe non-completely correct, but existent Promise
  } else if (!IS_IOS_PEBBLE && Promise && Promise.resolve) {
    // Promise.resolve without an argument throws an error in LG WebOS 2
    promise = Promise.resolve(undefined);
    // workaround of WebKit ~ iOS Safari 10.1 bug
    promise.constructor = Promise;
    then = bind(promise.then, promise);
    notify = function () {
      then(flush);
    };
  // Node.js without promises
  } else if (IS_NODE) {
    notify = function () {
      process.nextTick(flush);
    };
  // for other environments - macrotask based on:
  // - setImmediate
  // - MessageChannel
  // - window.postMessage
  // - onreadystatechange
  // - setTimeout
  } else {
    // `webpack` dev server bug on IE global methods - use bind(fn, global)
    macrotask = bind(macrotask, globalThis);
    notify = function () {
      macrotask(flush);
    };
  }

  microtask = function (fn) {
    if (!queue.head) notify();
    queue.add(fn);
  };
}

module.exports = microtask;

});

// EXTERNAL MODULE: ./node_modules/.pnpm/[email protected]/node_modules/core-js/internals/new-promise-capability.js
var new_promise_capability_namespaceFn = () => {
	return __webpack_require__(2222);
};

// EXTERNAL MODULE: ./node_modules/.pnpm/[email protected]/node_modules/core-js/internals/not-a-regexp.js
var not_a_regexp_namespaceFn = () => {
	return __webpack_require__(890);
};

// MODULE: ./node_modules/.pnpm/[email protected]/node_modules/core-js/internals/number-parse-float.js
var number_parse_float_namespaceFn = /*#__PURE__*/__webpack_require__.cw(function(module, exports) {

var globalThis = (global_this_namespaceFn());
var fails = (fails_namespaceFn());
var uncurryThis = (function_uncurry_this_namespaceFn());
var toString = (to_string_namespaceFn());
var trim = (string_trim_namespaceFn().Bq);
var whitespaces = (whitespaces_namespaceFn());

var charAt = uncurryThis(''.charAt);
var $parseFloat = globalThis.parseFloat;
var Symbol = globalThis.Symbol;
var ITERATOR = Symbol && Symbol.iterator;
var FORCED = 1 / $parseFloat(whitespaces + '-0') !== -Infinity
  // MS Edge 18- broken with boxed symbols
  || (ITERATOR && !fails(function () { $parseFloat(Object(ITERATOR)); }));

// `parseFloat` method
// https://tc39.es/ecma262/#sec-parsefloat-string
module.exports = FORCED ? function parseFloat(string) {
  var trimmedString = trim(toString(string));
  var result = $parseFloat(trimmedString);
  return result === 0 && charAt(trimmedString, 0) === '-' ? -0 : result;
} : $parseFloat;

});

// MODULE: ./node_modules/.pnpm/[email protected]/node_modules/core-js/internals/number-parse-int.js
var number_parse_int_namespaceFn = /*#__PURE__*/__webpack_require__.cw(function(module, exports) {

var globalThis = (global_this_namespaceFn());
var fails = (fails_namespaceFn());
var uncurryThis = (function_uncurry_this_namespaceFn());
var toString = (to_string_namespaceFn());
var trim = (string_trim_namespaceFn().Bq);
var whitespaces = (whitespaces_namespaceFn());

var $parseInt = globalThis.parseInt;
var Symbol = globalThis.Symbol;
var ITERATOR = Symbol && Symbol.iterator;
var hex = /^[+-]?0x/i;
var exec = uncurryThis(hex.exec);
var FORCED = $parseInt(whitespaces + '08') !== 8 || $parseInt(whitespaces + '0x16') !== 22
  // MS Edge 18- broken with boxed symbols
  || (ITERATOR && !fails(function () { $parseInt(Object(ITERATOR)); }));

// `parseInt` method
// https://tc39.es/ecma262/#sec-parseint-string-radix
module.exports = FORCED ? function parseInt(string, radix) {
  var S = trim(toString(string));
  return $parseInt(S, (radix >>> 0) || (exec(hex, S) ? 16 : 10));
} : $parseInt;

});

// EXTERNAL MODULE: ./node_modules/.pnpm/[email protected]/node_modules/core-js/internals/object-assign.js
var object_assign_namespaceFn = () => {
	return __webpack_require__(8466);
};

// EXTERNAL MODULE: ./node_modules/.pnpm/[email protected]/node_modules/core-js/internals/object-create.js
var object_create_namespaceFn = () => {
	return __webpack_require__(475);
};

// EXTERNAL MODULE: ./node_modules/.pnpm/[email protected]/node_modules/core-js/internals/object-define-property.js
var object_define_property_namespaceFn = () => {
	return __webpack_require__(9100);
};

// EXTERNAL MODULE: ./node_modules/.pnpm/[email protected]/node_modules/core-js/internals/object-get-own-property-descriptor.js
var object_get_own_property_descriptor_namespaceFn = () => {
	return __webpack_require__(6150);
};

// EXTERNAL MODULE: ./node_modules/.pnpm/[email protected]/node_modules/core-js/internals/object-get-own-property-names.js
var object_get_own_property_names_namespaceFn = () => {
	return __webpack_require__(8331);
};

// EXTERNAL MODULE: ./node_modules/.pnpm/[email protected]/node_modules/core-js/internals/object-is-prototype-of.js
var object_is_prototype_of_namespaceFn = () => {
	return __webpack_require__(1688);
};

// EXTERNAL MODULE: ./node_modules/.pnpm/[email protected]/node_modules/core-js/internals/object-set-prototype-of.js
var object_set_prototype_of_namespaceFn = () => {
	return __webpack_require__(4792);
};

// EXTERNAL MODULE: ./node_modules/.pnpm/[email protected]/node_modules/core-js/internals/parse-json-string.js
var parse_json_string_namespaceFn = () => {
	return __webpack_require__(9035);
};

// EXTERNAL MODULE: ./node_modules/.pnpm/[email protected]/node_modules/core-js/internals/path.js
var path_namespaceFn = () => {
	return __webpack_require__(8926);
};

// EXTERNAL MODULE: ./node_modules/.pnpm/[email protected]/node_modules/core-js/internals/perform.js
var perform_namespaceFn = () => {
	return __webpack_require__(9636);
};

// MODULE: ./node_modules/.pnpm/[email protected]/node_modules/core-js/internals/promise-constructor-detection.js
var promise_constructor_detection_namespaceFn = /*#__PURE__*/__webpack_require__.cw(function(module, exports) {

var globalThis = (global_this_namespaceFn());
var NativePromiseConstructor = (promise_native_constructor_namespaceFn());
var isCallable = (is_callable_namespaceFn());
var isForced = (is_forced_namespaceFn());
var inspectSource = (inspect_source_namespaceFn());
var wellKnownSymbol = (well_known_symbol_namespaceFn());
var ENVIRONMENT = (environment_namespaceFn());
var IS_PURE = (is_pure_namespaceFn());
var V8_VERSION = (environment_v8_version_namespaceFn());

var NativePromisePrototype = NativePromiseConstructor && NativePromiseConstructor.prototype;
var SPECIES = wellKnownSymbol('species');
var SUBCLASSING = false;
var NATIVE_PROMISE_REJECTION_EVENT = isCallable(globalThis.PromiseRejectionEvent);

var FORCED_PROMISE_CONSTRUCTOR = isForced('Promise', function () {
  var PROMISE_CONSTRUCTOR_SOURCE = inspectSource(NativePromiseConstructor);
  var GLOBAL_CORE_JS_PROMISE = PROMISE_CONSTRUCTOR_SOURCE !== String(NativePromiseConstructor);
  // V8 6.6 (Node 10 and Chrome 66) have a bug with resolving custom thenables
  // https://bugs.chromium.org/p/chromium/issues/detail?id=830565
  // We can't detect it synchronously, so just check versions
  if (!GLOBAL_CORE_JS_PROMISE && V8_VERSION === 66) return true;
  // We need Promise#{ catch, finally } in the pure version for preventing prototype pollution
  if (IS_PURE && !(NativePromisePrototype['catch'] && NativePromisePrototype['finally'])) return true;
  // We can't use @@species feature detection in V8 since it causes
  // deoptimization and performance degradation
  // https://github.com/zloirock/core-js/issues/679
  if (!V8_VERSION || V8_VERSION < 51 || !/native code/.test(PROMISE_CONSTRUCTOR_SOURCE)) {
    // Detect correctness of subclassing with @@species support
    var promise = new NativePromiseConstructor(function (resolve) { resolve(1); });
    var FakePromise = function (exec) {
      exec(function () { /* empty */ }, function () { /* empty */ });
    };
    var constructor = promise.constructor = {};
    constructor[SPECIES] = FakePromise;
    SUBCLASSING = promise.then(function () { /* empty */ }) instanceof FakePromise;
    if (!SUBCLASSING) return true;
  // Unhandled rejections tracking support, NodeJS Promise without it fails @@species test
  } return !GLOBAL_CORE_JS_PROMISE && (ENVIRONMENT === 'BROWSER' || ENVIRONMENT === 'DENO') && !NATIVE_PROMISE_REJECTION_EVENT;
});

module.exports = {
  CONSTRUCTOR: FORCED_PROMISE_CONSTRUCTOR,
  REJECTION_EVENT: NATIVE_PROMISE_REJECTION_EVENT,
  SUBCLASSING: SUBCLASSING
};

});

// MODULE: ./node_modules/.pnpm/[email protected]/node_modules/core-js/internals/promise-native-constructor.js
var promise_native_constructor_namespaceFn = /*#__PURE__*/__webpack_require__.cw(function(module, exports) {

var globalThis = (global_this_namespaceFn());

module.exports = globalThis.Promise;

});

// EXTERNAL MODULE: ./node_modules/.pnpm/[email protected]/node_modules/core-js/internals/promise-resolve.js
var promise_resolve_namespaceFn = () => {
	return __webpack_require__(9745);
};

// MODULE: ./node_modules/.pnpm/[email protected]/node_modules/core-js/internals/promise-statics-incorrect-iteration.js
var promise_statics_incorrect_iteration_namespaceFn = /*#__PURE__*/__webpack_require__.cw(function(module, exports) {

var NativePromiseConstructor = (promise_native_constructor_namespaceFn());
var checkCorrectnessOfIteration = (check_correctness_of_iteration_namespaceFn());
var FORCED_PROMISE_CONSTRUCTOR = (promise_constructor_detection_namespaceFn().CONSTRUCTOR);

module.exports = FORCED_PROMISE_CONSTRUCTOR || !checkCorrectnessOfIteration(function (iterable) {
  NativePromiseConstructor.all(iterable).then(undefined, function () { /* empty */ });
});

});

// EXTERNAL MODULE: ./node_modules/.pnpm/[email protected]/node_modules/core-js/internals/proxy-accessor.js
var proxy_accessor_namespaceFn = () => {
	return __webpack_require__(6925);
};

// EXTERNAL MODULE: ./node_modules/.pnpm/[email protected]/node_modules/core-js/internals/queue.js
var queue_namespaceFn = () => {
	return __webpack_require__(9226);
};

// EXTERNAL MODULE: ./node_modules/.pnpm/[email protected]/node_modules/core-js/internals/regexp-exec-abstract.js
var regexp_exec_abstract_namespaceFn = () => {
	return __webpack_require__(5019);
};

// EXTERNAL MODULE: ./node_modules/.pnpm/[email protected]/node_modules/core-js/internals/regexp-get-flags.js
var regexp_get_flags_namespaceFn = () => {
	return __webpack_require__(7767);
};

// EXTERNAL MODULE: ./node_modules/.pnpm/[email protected]/node_modules/core-js/internals/regexp-sticky-helpers.js
var regexp_sticky_helpers_namespaceFn = () => {
	return __webpack_require__(5446);
};

// EXTERNAL MODULE: ./node_modules/.pnpm/[email protected]/node_modules/core-js/internals/regexp-unsupported-dot-all.js
var regexp_unsupported_dot_all_namespaceFn = () => {
	return __webpack_require__(8070);
};

// EXTERNAL MODULE: ./node_modules/.pnpm/[email protected]/node_modules/core-js/internals/regexp-unsupported-ncg.js
var regexp_unsupported_ncg_namespaceFn = () => {
	return __webpack_require__(1091);
};

// EXTERNAL MODULE: ./node_modules/.pnpm/[email protected]/node_modules/core-js/internals/require-object-coercible.js
var require_object_coercible_namespaceFn = () => {
	return __webpack_require__(7263);
};

// MODULE: ./node_modules/.pnpm/[email protected]/node_modules/core-js/internals/safe-get-built-in.js
var safe_get_built_in_namespaceFn = /*#__PURE__*/__webpack_require__.cw(function(module, exports) {

var globalThis = (global_this_namespaceFn());
var DESCRIPTORS = (descriptors_namespaceFn());

// eslint-disable-next-line es/no-object-getownpropertydescriptor -- safe
var getOwnPropertyDescriptor = Object.getOwnPropertyDescriptor;

// Avoid NodeJS experimental warning
module.exports = function (name) {
  if (!DESCRIPTORS) return globalThis[name];
  var descriptor = getOwnPropertyDescriptor(globalThis, name);
  return descriptor && descriptor.value;
};

});

// EXTERNAL MODULE: ./node_modules/.pnpm/[email protected]/node_modules/core-js/internals/same-value.js
var same_value_namespaceFn = () => {
	return __webpack_require__(3219);
};

// EXTERNAL MODULE: ./node_modules/.pnpm/[email protected]/node_modules/core-js/internals/set-difference.js
var set_difference_namespaceFn = () => {
	return __webpack_require__(6545);
};

// EXTERNAL MODULE: ./node_modules/.pnpm/[email protected]/node_modules/core-js/internals/set-intersection.js
var set_intersection_namespaceFn = () => {
	return __webpack_require__(2179);
};

// EXTERNAL MODULE: ./node_modules/.pnpm/[email protected]/node_modules/core-js/internals/set-is-disjoint-from.js
var set_is_disjoint_from_namespaceFn = () => {
	return __webpack_require__(3092);
};

// EXTERNAL MODULE: ./node_modules/.pnpm/[email protected]/node_modules/core-js/internals/set-is-subset-of.js
var set_is_subset_of_namespaceFn = () => {
	return __webpack_require__(6243);
};

// EXTERNAL MODULE: ./node_modules/.pnpm/[email protected]/node_modules/core-js/internals/set-is-superset-of.js
var set_is_superset_of_namespaceFn = () => {
	return __webpack_require__(5954);
};

// EXTERNAL MODULE: ./node_modules/.pnpm/[email protected]/node_modules/core-js/internals/set-method-accept-set-like.js
var set_method_accept_set_like_namespaceFn = () => {
	return __webpack_require__(2405);
};

// EXTERNAL MODULE: ./node_modules/.pnpm/[email protected]/node_modules/core-js/internals/set-method-get-keys-before-cloning-detection.js
var set_method_get_keys_before_cloning_detection_namespaceFn = () => {
	return __webpack_require__(5758);
};

// EXTERNAL MODULE: ./node_modules/.pnpm/[email protected]/node_modules/core-js/internals/set-species.js
var set_species_namespaceFn = () => {
	return __webpack_require__(3902);
};

// EXTERNAL MODULE: ./node_modules/.pnpm/[email protected]/node_modules/core-js/internals/set-symmetric-difference.js
var set_symmetric_difference_namespaceFn = () => {
	return __webpack_require__(4851);
};

// EXTERNAL MODULE: ./node_modules/.pnpm/[email protected]/node_modules/core-js/internals/set-to-string-tag.js
var set_to_string_tag_namespaceFn = () => {
	return __webpack_require__(4360);
};

// EXTERNAL MODULE: ./node_modules/.pnpm/[email protected]/node_modules/core-js/internals/set-union.js
var set_union_namespaceFn = () => {
	return __webpack_require__(6471);
};

// EXTERNAL MODULE: ./node_modules/.pnpm/[email protected]/node_modules/core-js/internals/species-constructor.js
var species_constructor_namespaceFn = () => {
	return __webpack_require__(8178);
};

// EXTERNAL MODULE: ./node_modules/.pnpm/[email protected]/node_modules/core-js/internals/string-multibyte.js
var string_multibyte_namespaceFn = () => {
	return __webpack_require__(6478);
};

// EXTERNAL MODULE: ./node_modules/.pnpm/[email protected]/node_modules/core-js/internals/string-punycode-to-ascii.js
var string_punycode_to_ascii_namespaceFn = () => {
	return __webpack_require__(2068);
};

// EXTERNAL MODULE: ./node_modules/.pnpm/[email protected]/node_modules/core-js/internals/string-repeat.js
var string_repeat_namespaceFn = () => {
	return __webpack_require__(1586);
};

// MODULE: ./node_modules/.pnpm/[email protected]/node_modules/core-js/internals/string-trim-forced.js
var string_trim_forced_namespaceFn = /*#__PURE__*/__webpack_require__.cw(function(module, exports) {

var PROPER_FUNCTION_NAME = (function_name_namespaceFn().PROPER);
var fails = (fails_namespaceFn());
var whitespaces = (whitespaces_namespaceFn());

var non = '\u200B\u0085\u180E';

// check that a method works with the correct list
// of whitespaces and has a correct name
module.exports = function (METHOD_NAME) {
  return fails(function () {
    return !!whitespaces[METHOD_NAME]()
      || non[METHOD_NAME]() !== non
      || (PROPER_FUNCTION_NAME && whitespaces[METHOD_NAME].name !== METHOD_NAME);
  });
};

});

// MODULE: ./node_modules/.pnpm/[email protected]/node_modules/core-js/internals/string-trim.js
var string_trim_namespaceFn = /*#__PURE__*/__webpack_require__.cw(function(module, exports) {

var uncurryThis = (function_uncurry_this_namespaceFn());
var requireObjectCoercible = (require_object_coercible_namespaceFn());
var toString = (to_string_namespaceFn());
var whitespaces = (whitespaces_namespaceFn());

var replace = uncurryThis(''.replace);
var ltrim = RegExp('^[' + whitespaces + ']+');
var rtrim = RegExp('(^|[^' + whitespaces + '])[' + whitespaces + ']+$');

// `String.prototype.{ trim, trimStart, trimEnd, trimLeft, trimRight }` methods implementation
var createMethod = function (TYPE) {
  return function ($this) {
    var string = toString(requireObjectCoercible($this));
    if (TYPE & 1) string = replace(string, ltrim, '');
    if (TYPE & 2) string = replace(string, rtrim, '$1');
    return string;
  };
};

module.exports = {
  // `String.prototype.{ trimLeft, trimStart }` methods
  // https://tc39.es/ecma262/#sec-string.prototype.trimstart
  start: createMethod(1),
  // `String.prototype.{ trimRight, trimEnd }` methods
  // https://tc39.es/ecma262/#sec-string.prototype.trimend
  end: createMethod(2),
  // `String.prototype.trim` method
  // https://tc39.es/ecma262/#sec-string.prototype.trim
  Bq: createMethod(3)
};

});

// EXTERNAL MODULE: ./node_modules/.pnpm/[email protected]/node_modules/core-js/internals/symbol-constructor-detection.js
var symbol_constructor_detection_namespaceFn = () => {
	return __webpack_require__(7974);
};

// MODULE: ./node_modules/.pnpm/[email protected]/node_modules/core-js/internals/task.js
var task_namespaceFn = /*#__PURE__*/__webpack_require__.cw(function(module, exports) {

var globalThis = (global_this_namespaceFn());
var apply = (function_apply_namespaceFn());
var bind = (function_bind_context_namespaceFn());
var isCallable = (is_callable_namespaceFn());
var hasOwn = (has_own_property_namespaceFn());
var fails = (fails_namespaceFn());
var html = (html_namespaceFn());
var arraySlice = (array_slice_namespaceFn());
var createElement = (document_create_element_namespaceFn());
var validateArgumentsLength = (validate_arguments_length_namespaceFn());
var IS_IOS = (environment_is_ios_namespaceFn());
var IS_NODE = (environment_is_node_namespaceFn());

var set = globalThis.setImmediate;
var clear = globalThis.clearImmediate;
var process = globalThis.process;
var Dispatch = globalThis.Dispatch;
var Function = globalThis.Function;
var MessageChannel = globalThis.MessageChannel;
var String = globalThis.String;
var counter = 0;
var queue = {};
var ONREADYSTATECHANGE = 'onreadystatechange';
var $location, defer, channel, port;

fails(function () {
  // Deno throws a ReferenceError on `location` access without `--location` flag
  $location = globalThis.location;
});

var run = function (id) {
  if (hasOwn(queue, id)) {
    var fn = queue[id];
    delete queue[id];
    fn();
  }
};

var runner = function (id) {
  return function () {
    run(id);
  };
};

var eventListener = function (event) {
  run(event.data);
};

var globalPostMessageDefer = function (id) {
  // old engines have not location.origin
  globalThis.postMessage(String(id), $location.protocol + '//' + $location.host);
};

// Node.js 0.9+ & IE10+ has setImmediate, otherwise:
if (!set || !clear) {
  set = function setImmediate(handler) {
    validateArgumentsLength(arguments.length, 1);
    var fn = isCallable(handler) ? handler : Function(handler);
    var args = arraySlice(arguments, 1);
    queue[++counter] = function () {
      apply(fn, undefined, args);
    };
    defer(counter);
    return counter;
  };
  clear = function clearImmediate(id) {
    delete queue[id];
  };
  // Node.js 0.8-
  if (IS_NODE) {
    defer = function (id) {
      process.nextTick(runner(id));
    };
  // Sphere (JS game engine) Dispatch API
  } else if (Dispatch && Dispatch.now) {
    defer = function (id) {
      Dispatch.now(runner(id));
    };
  // Browsers with MessageChannel, includes WebWorkers
  // except iOS - https://github.com/zloirock/core-js/issues/624
  } else if (MessageChannel && !IS_IOS) {
    channel = new MessageChannel();
    port = channel.port2;
    channel.port1.onmessage = eventListener;
    defer = bind(port.postMessage, port);
  // Browsers with postMessage, skip WebWorkers
  // IE8 has postMessage, but it's sync & typeof its postMessage is 'object'
  } else if (
    globalThis.addEventListener &&
    isCallable(globalThis.postMessage) &&
    !globalThis.importScripts &&
    $location && $location.protocol !== 'file:' &&
    !fails(globalPostMessageDefer)
  ) {
    defer = globalPostMessageDefer;
    globalThis.addEventListener('message', eventListener, false);
  // IE8-
  } else if (ONREADYSTATECHANGE in createElement('script')) {
    defer = function (id) {
      html.appendChild(createElement('script'))[ONREADYSTATECHANGE] = function () {
        html.removeChild(this);
        run(id);
      };
    };
  // Rest old browsers
  } else {
    defer = function (id) {
      setTimeout(runner(id), 0);
    };
  }
}

module.exports = {
  h: set,
  clear: clear
};

});

// EXTERNAL MODULE: ./node_modules/.pnpm/[email protected]/node_modules/core-js/internals/this-number-value.js
var this_number_value_namespaceFn = () => {
	return __webpack_require__(9295);
};

// EXTERNAL MODULE: ./node_modules/.pnpm/[email protected]/node_modules/core-js/internals/to-absolute-index.js
var to_absolute_index_namespaceFn = () => {
	return __webpack_require__(8977);
};

// EXTERNAL MODULE: ./node_modules/.pnpm/[email protected]/node_modules/core-js/internals/to-big-int.js
var to_big_int_namespaceFn = () => {
	return __webpack_require__(1835);
};

// EXTERNAL MODULE: ./node_modules/.pnpm/[email protected]/node_modules/core-js/internals/to-indexed-object.js
var to_indexed_object_namespaceFn = () => {
	return __webpack_require__(9630);
};

// EXTERNAL MODULE: ./node_modules/.pnpm/[email protected]/node_modules/core-js/internals/to-integer-or-infinity.js
var to_integer_or_infinity_namespaceFn = () => {
	return __webpack_require__(1402);
};

// EXTERNAL MODULE: ./node_modules/.pnpm/[email protected]/node_modules/core-js/internals/to-length.js
var to_length_namespaceFn = () => {
	return __webpack_require__(2737);
};

// EXTERNAL MODULE: ./node_modules/.pnpm/[email protected]/node_modules/core-js/internals/to-object.js
var to_object_namespaceFn = () => {
	return __webpack_require__(6674);
};

// EXTERNAL MODULE: ./node_modules/.pnpm/[email protected]/node_modules/core-js/internals/to-offset.js
var to_offset_namespaceFn = () => {
	return __webpack_require__(2886);
};

// EXTERNAL MODULE: ./node_modules/.pnpm/[email protected]/node_modules/core-js/internals/to-string.js
var to_string_namespaceFn = () => {
	return __webpack_require__(7616);
};

// EXTERNAL MODULE: ./node_modules/.pnpm/[email protected]/node_modules/core-js/internals/typed-array-constructor.js
var typed_array_constructor_namespaceFn = () => {
	return __webpack_require__(9364);
};

// EXTERNAL MODULE: ./node_modules/.pnpm/[email protected]/node_modules/core-js/internals/uint8-from-base64.js
var uint8_from_base64_namespaceFn = () => {
	return __webpack_require__(9512);
};

// EXTERNAL MODULE: ./node_modules/.pnpm/[email protected]/node_modules/core-js/internals/uint8-from-hex.js
var uint8_from_hex_namespaceFn = () => {
	return __webpack_require__(5874);
};

// MODULE: ./node_modules/.pnpm/[email protected]/node_modules/core-js/internals/url-constructor-detection.js
var url_constructor_detection_namespaceFn = /*#__PURE__*/__webpack_require__.cw(function(module, exports) {

var fails = (fails_namespaceFn());
var wellKnownSymbol = (well_known_symbol_namespaceFn());
var DESCRIPTORS = (descriptors_namespaceFn());
var IS_PURE = (is_pure_namespaceFn());

var ITERATOR = wellKnownSymbol('iterator');

module.exports = !fails(function () {
  // eslint-disable-next-line unicorn/relative-url-style -- required for testing
  var url = new URL('b?a=1&b=2&c=3', 'https://a');
  var params = url.searchParams;
  var params2 = new URLSearchParams('a=1&a=2&b=3');
  var result = '';
  url.pathname = 'c%20d';
  params.forEach(function (value, key) {
    params['delete']('b');
    result += key + value;
  });
  params2['delete']('a', 2);
  // `undefined` case is a Chromium 117 bug
  // https://bugs.chromium.org/p/v8/issues/detail?id=14222
  params2['delete']('b', undefined);
  return (IS_PURE && (!url.toJSON || !params2.has('a', 1) || params2.has('a', 2) || !params2.has('a', undefined) || params2.has('b')))
    || (!params.size && (IS_PURE || !DESCRIPTORS))
    || !params.sort
    || url.href !== 'https://a/c%20d?a=1&c=3'
    || params.get('c') !== '3'
    || String(new URLSearchParams('?a=1')) !== 'a=1'
    || !params[ITERATOR]
    // throws in Edge
    || new URL('https://a@b').username !== 'a'
    || new URLSearchParams(new URLSearchParams('a=b')).get('a') !== 'b'
    // not punycoded in Edge
    || new URL('https://тест').host !== 'xn--e1aybc'
    // not escaped in Chrome 62-
    || new URL('https://a#б').hash !== '#%D0%B1'
    // fails in Chrome 66-
    || result !== 'a1c3'
    // throws in Safari
    || new URL('https://x', undefined).host !== 'x';
});

});

// MODULE: ./node_modules/.pnpm/[email protected]/node_modules/core-js/internals/url-percent-coding.js
var url_percent_coding_namespaceFn = /*#__PURE__*/__webpack_require__.cw(function(module, exports) {

// TODO: in core-js@4, move /modules/ dependencies to public entries for better optimization by tools like `preset-env`
(es_string_from_code_point_namespaceFn());
var getBuiltIn = (get_built_in_namespaceFn());
var uncurryThis = (function_uncurry_this_namespaceFn());

var fromCharCode = String.fromCharCode;
var fromCodePoint = getBuiltIn('String', 'fromCodePoint');
var $encodeURIComponent = encodeURIComponent;
var $parseInt = parseInt;
var charAt = uncurryThis(''.charAt);
var push = uncurryThis([].push);
var replace = uncurryThis(''.replace);
var stringSlice = uncurryThis(''.slice);
var exec = uncurryThis(/./.exec);

var FALLBACK_REPLACER = '\uFFFD';
var VALID_HEX = /^[0-9a-f]+$/i;
// a surrogate pair is matched first, so a one-unit match is always a lone surrogate
var SURROGATE = /[\uD800-\uDBFF][\uDC00-\uDFFF]|[\uD800-\uDFFF]/g;

var parseHexOctet = function (string, start) {
  var substr = stringSlice(string, start, start + 2);
  if (!exec(VALID_HEX, substr)) return NaN;

  return $parseInt(substr, 16);
};

var getLeadingOnes = function (octet) {
  var count = 0;
  for (var mask = 0x80; mask > 0 && (octet & mask) !== 0; mask >>= 1) {
    count++;
  }
  return count;
};

var utf8Decode = function (octets) {
  var codePoint = null;
  var length = octets.length;

  switch (length) {
    case 1:
      codePoint = octets[0];
      break;
    case 2:
      codePoint = (octets[0] & 0x1F) << 6 | (octets[1] & 0x3F);
      break;
    case 3:
      codePoint = (octets[0] & 0x0F) << 12 | (octets[1] & 0x3F) << 6 | (octets[2] & 0x3F);
      break;
    case 4:
      codePoint = (octets[0] & 0x07) << 18 | (octets[1] & 0x3F) << 12 | (octets[2] & 0x3F) << 6 | (octets[3] & 0x3F);
      break;
  }

  // reject surrogates, overlong encodings, and out-of-range codepoints
  if (codePoint === null
    || codePoint > 0x10FFFF
    || (codePoint >= 0xD800 && codePoint <= 0xDFFF)
    || codePoint < (length > 3 ? 0x10000 : length > 2 ? 0x800 : length > 1 ? 0x80 : 0)
  ) return null;

  return codePoint;
};

var replaceLoneSurrogate = function (chunk) {
  return chunk.length === 2 ? chunk : FALLBACK_REPLACER;
};

// https://url.spec.whatwg.org/#percent-decode
/* eslint-disable max-depth -- ok */
var decode = function (input) {
  var length = input.length;
  var result = '';
  var i = 0;

  while (i < length) {
    var decodedChar = charAt(input, i);

    if (decodedChar === '%') {
      if (charAt(input, i + 1) === '%' || i + 3 > length) {
        result += '%';
        i++;
        continue;
      }

      var octet = parseHexOctet(input, i + 1);

      // eslint-disable-next-line no-self-compare -- NaN check
      if (octet !== octet) {
        result += decodedChar;
        i++;
        continue;
      }

      i += 2;
      var byteSequenceLength = getLeadingOnes(octet);

      if (byteSequenceLength === 0) {
        decodedChar = fromCharCode(octet);
      } else {
        if (byteSequenceLength === 1 || byteSequenceLength > 4) {
          result += FALLBACK_REPLACER;
          i++;
          continue;
        }

        var octets = [octet];
        var sequenceIndex = 1;

        while (sequenceIndex < byteSequenceLength) {
          i++;
          if (i + 3 > length || charAt(input, i) !== '%') break;

          var nextByte = parseHexOctet(input, i + 1);

          // eslint-disable-next-line no-self-compare -- NaN check
          if (nextByte !== nextByte || nextByte > 191 || nextByte < 128) break;

          // https://encoding.spec.whatwg.org/#utf-8-decoder - position-specific byte ranges
          if (sequenceIndex === 1) {
            if (octet === 0xE0 && nextByte < 0xA0) break;
            if (octet === 0xED && nextByte > 0x9F) break;
            if (octet === 0xF0 && nextByte < 0x90) break;
            if (octet === 0xF4 && nextByte > 0x8F) break;
          }

          push(octets, nextByte);
          i += 2;
          sequenceIndex++;
        }

        if (octets.length !== byteSequenceLength) {
          result += FALLBACK_REPLACER;
          continue;
        }

        var codePoint = utf8Decode(octets);
        if (codePoint === null) {
          for (var replacement = 0; replacement < byteSequenceLength; replacement++) result += FALLBACK_REPLACER;
          i++;
          continue;
        } else {
          decodedChar = fromCodePoint(codePoint);
        }
      }
    }

    result += decodedChar;
    i++;
  }

  return result;
};
/* eslint-enable max-depth -- ok */

// https://url.spec.whatwg.org/#string-percent-encode-after-encoding
// a lone surrogate is the only input `encodeURIComponent` throws on, and the UTF-8
// encoder replaces it - so the throw selects the slow path instead of a per-call scan
var encode = function (input) {
  try {
    return $encodeURIComponent(input);
  } catch (error) {
    return $encodeURIComponent(replace(input, SURROGATE, replaceLoneSurrogate));
  }
};

module.exports = {
  decode: decode,
  encode: encode
};

});

// MODULE: ./node_modules/.pnpm/[email protected]/node_modules/core-js/internals/validate-arguments-length.js
var validate_arguments_length_namespaceFn = /*#__PURE__*/__webpack_require__.cw(function(module, exports) {

var $TypeError = TypeError;

module.exports = function (passed, required) {
  if (passed < required) throw new $TypeError('Not enough arguments');
  return passed;
};

});

// EXTERNAL MODULE: ./node_modules/.pnpm/[email protected]/node_modules/core-js/internals/weak-map-helpers.js
var weak_map_helpers_namespaceFn = () => {
	return __webpack_require__(5290);
};

// EXTERNAL MODULE: ./node_modules/.pnpm/[email protected]/node_modules/core-js/internals/well-known-symbol-define.js
var well_known_symbol_define_namespaceFn = () => {
	return __webpack_require__(5358);
};

// EXTERNAL MODULE: ./node_modules/.pnpm/[email protected]/node_modules/core-js/internals/well-known-symbol.js
var well_known_symbol_namespaceFn = () => {
	return __webpack_require__(7080);
};

// MODULE: ./node_modules/.pnpm/[email protected]/node_modules/core-js/internals/whitespaces.js
var whitespaces_namespaceFn = /*#__PURE__*/__webpack_require__.cw(function(module, exports) {

// a string of all valid unicode whitespaces
module.exports = '\u0009\u000A\u000B\u000C\u000D\u0020\u00A0\u1680\u2000\u2001\u2002' +
  '\u2003\u2004\u2005\u2006\u2007\u2008\u2009\u200A\u202F\u205F\u3000\u2028\u2029\uFEFF';

});

// EXTERNAL MODULE: ./node_modules/.pnpm/[email protected]/node_modules/core-js/internals/wrap-error-constructor-with-cause.js
var wrap_error_constructor_with_cause_namespaceFn = () => {
	return __webpack_require__(6142);
};

// MODULE: ./node_modules/.pnpm/[email protected]/node_modules/core-js/modules/es.array-buffer.constructor.js
var es_array_buffer_constructor_namespaceFn = /*#__PURE__*/__webpack_require__.cw(function(module, exports) {

var $ = (export_namespaceFn());
var globalThis = (global_this_namespaceFn());
var arrayBufferModule = (array_buffer_namespaceFn());
var setSpecies = (set_species_namespaceFn());

var ARRAY_BUFFER = 'ArrayBuffer';
var ArrayBuffer = arrayBufferModule[ARRAY_BUFFER];
var NativeArrayBuffer = globalThis[ARRAY_BUFFER];

// `ArrayBuffer` constructor
// https://tc39.es/ecma262/#sec-arraybuffer-constructor
$({ global: true, constructor: true, forced: NativeArrayBuffer !== ArrayBuffer }, {
  ArrayBuffer: ArrayBuffer
});

setSpecies(ARRAY_BUFFER);

});

// MODULE: ./node_modules/.pnpm/[email protected]/node_modules/core-js/modules/es.array-buffer.detached.js
var es_array_buffer_detached_namespaceFn = /*#__PURE__*/__webpack_require__.cw(function(module, exports) {

var DESCRIPTORS = (descriptors_namespaceFn());
var defineBuiltInAccessor = (define_built_in_accessor_namespaceFn());
var isDetached = (array_buffer_is_detached_namespaceFn());

var ArrayBufferPrototype = ArrayBuffer.prototype;

// `ArrayBuffer.prototype.detached` getter
// https://tc39.es/ecma262/#sec-get-arraybuffer.prototype.detached
if (DESCRIPTORS && !('detached' in ArrayBufferPrototype)) {
  defineBuiltInAccessor(ArrayBufferPrototype, 'detached', {
    configurable: true,
    get: function detached() {
      return isDetached(this);
    }
  });
}

});

// MODULE: ./node_modules/.pnpm/[email protected]/node_modules/core-js/modules/es.array-buffer.slice.js
var es_array_buffer_slice_namespaceFn = /*#__PURE__*/__webpack_require__.cw(function(module, exports) {

var $ = (export_namespaceFn());
var uncurryThis = (function_uncurry_this_clause_namespaceFn());
var fails = (fails_namespaceFn());
var ArrayBufferModule = (array_buffer_namespaceFn());
var anObject = (an_object_namespaceFn());
var toAbsoluteIndex = (to_absolute_index_namespaceFn());
var toLength = (to_length_namespaceFn());

var ArrayBuffer = ArrayBufferModule.ArrayBuffer;
var DataView = ArrayBufferModule.DataView;
var DataViewPrototype = DataView.prototype;
var nativeArrayBufferSlice = uncurryThis(ArrayBuffer.prototype.slice);
var getUint8 = uncurryThis(DataViewPrototype.getUint8);
var setUint8 = uncurryThis(DataViewPrototype.setUint8);

var INCORRECT_SLICE = fails(function () {
  return !new ArrayBuffer(2).slice(1, undefined).byteLength;
});

// `ArrayBuffer.prototype.slice` method
// https://tc39.es/ecma262/#sec-arraybuffer.prototype.slice
$({ target: 'ArrayBuffer', proto: true, unsafe: true, forced: INCORRECT_SLICE }, {
  slice: function slice(start, end) {
    if (nativeArrayBufferSlice && end === undefined) {
      return nativeArrayBufferSlice(anObject(this), start); // FF fix
    }
    var length = anObject(this).byteLength;
    var first = toAbsoluteIndex(start, length);
    var fin = toAbsoluteIndex(end === undefined ? length : end, length);
    var result = new ArrayBuffer(toLength(fin - first));
    var viewSource = new DataView(this);
    var viewTarget = new DataView(result);
    var index = 0;
    while (first < fin) {
      setUint8(viewTarget, index++, getUint8(viewSource, first++));
    } return result;
  }
});

});

// MODULE: ./node_modules/.pnpm/[email protected]/node_modules/core-js/modules/es.array-buffer.transfer-to-fixed-length.js
var es_array_buffer_transfer_to_fixed_length_namespaceFn = /*#__PURE__*/__webpack_require__.cw(function(module, exports) {

var $ = (export_namespaceFn());
var $transfer = (array_buffer_transfer_namespaceFn());

// `ArrayBuffer.prototype.transferToFixedLength` method
// https://tc39.es/ecma262/#sec-arraybuffer.prototype.transfertofixedlength
if ($transfer) $({ target: 'ArrayBuffer', proto: true }, {
  transferToFixedLength: function transferToFixedLength() {
    return $transfer(this, arguments.length ? arguments[0] : undefined, false);
  }
});

});

// MODULE: ./node_modules/.pnpm/[email protected]/node_modules/core-js/modules/es.array-buffer.transfer.js
var es_array_buffer_transfer_namespaceFn = /*#__PURE__*/__webpack_require__.cw(function(module, exports) {

var $ = (export_namespaceFn());
var $transfer = (array_buffer_transfer_namespaceFn());

// `ArrayBuffer.prototype.transfer` method
// https://tc39.es/ecma262/#sec-arraybuffer.prototype.transfer
if ($transfer) $({ target: 'ArrayBuffer', proto: true }, {
  transfer: function transfer() {
    return $transfer(this, arguments.length ? arguments[0] : undefined, true);
  }
});

});

// MODULE: ./node_modules/.pnpm/[email protected]/node_modules/core-js/modules/es.array.flat-map.js
var es_array_flat_map_namespaceFn = /*#__PURE__*/__webpack_require__.cw(function(module, exports) {

var $ = (export_namespaceFn());
var flattenIntoArray = (flatten_into_array_namespaceFn());
var aCallable = (a_callable_namespaceFn());
var toObject = (to_object_namespaceFn());
var lengthOfArrayLike = (length_of_array_like_namespaceFn());
var arraySpeciesCreate = (array_species_create_namespaceFn());

// `Array.prototype.flatMap` method
// https://tc39.es/ecma262/#sec-array.prototype.flatmap
$({ target: 'Array', proto: true }, {
  flatMap: function flatMap(callbackfn /* , thisArg */) {
    var O = toObject(this);
    var sourceLen = lengthOfArrayLike(O);
    var A;
    aCallable(callbackfn);
    A = arraySpeciesCreate(O, 0);
    flattenIntoArray(A, O, O, sourceLen, 0, 1, callbackfn, arguments.length > 1 ? arguments[1] : undefined);
    return A;
  }
});

});

// MODULE: ./node_modules/.pnpm/[email protected]/node_modules/core-js/modules/es.array.includes.js
var es_array_includes_namespaceFn = /*#__PURE__*/__webpack_require__.cw(function(module, exports) {

var $ = (export_namespaceFn());
var $includes = (array_includes_namespaceFn()/* includes */.m);
var fails = (fails_namespaceFn());
var addToUnscopables = (add_to_unscopables_namespaceFn());

// FF99+ bug
var BROKEN_ON_SPARSE = fails(function () {
  // eslint-disable-next-line es/no-array-prototype-includes -- detection
  return !Array(1).includes();
});

// Safari 26.4- bug
var BROKEN_ON_SPARSE_WITH_FROM_INDEX = fails(function () {
  // eslint-disable-next-line no-sparse-arrays, es/no-array-prototype-includes -- detection
  return [, 1].includes(undefined, 1);
});

// `Array.prototype.includes` method
// https://tc39.es/ecma262/#sec-array.prototype.includes
$({ target: 'Array', proto: true, forced: BROKEN_ON_SPARSE || BROKEN_ON_SPARSE_WITH_FROM_INDEX }, {
  includes: function includes(el /* , fromIndex = 0 */) {
    return $includes(this, el, arguments.length > 1 ? arguments[1] : undefined);
  }
});

// https://tc39.es/ecma262/#sec-array.prototype-@@unscopables
addToUnscopables('includes');

});

// MODULE: ./node_modules/.pnpm/[email protected]/node_modules/core-js/modules/es.array.iterator.js
var es_array_iterator_namespaceFn = /*#__PURE__*/__webpack_require__.cw(function(module, exports) {

var toIndexedObject = (to_indexed_object_namespaceFn());
var addToUnscopables = (add_to_unscopables_namespaceFn());
var Iterators = (iterators_namespaceFn());
var InternalStateModule = (internal_state_namespaceFn());
var defineProperty = (object_define_property_namespaceFn().f);
var defineIterator = (iterator_define_namespaceFn());
var createIterResultObject = (create_iter_result_object_namespaceFn());
var IS_PURE = (is_pure_namespaceFn());
var DESCRIPTORS = (descriptors_namespaceFn());

var ARRAY_ITERATOR = 'Array Iterator';
var setInternalState = InternalStateModule.set;
var getInternalState = InternalStateModule.getterFor(ARRAY_ITERATOR);

// `Array.prototype.entries` method
// https://tc39.es/ecma262/#sec-array.prototype.entries
// `Array.prototype.keys` method
// https://tc39.es/ecma262/#sec-array.prototype.keys
// `Array.prototype.values` method
// https://tc39.es/ecma262/#sec-array.prototype.values
// `Array.prototype[@@iterator]` method
// https://tc39.es/ecma262/#sec-array.prototype-@@iterator
// `CreateArrayIterator` internal method
// https://tc39.es/ecma262/#sec-createarrayiterator
module.exports = defineIterator(Array, 'Array', function (iterated, kind) {
  setInternalState(this, {
    type: ARRAY_ITERATOR,
    target: toIndexedObject(iterated), // target
    index: 0,                          // next index
    kind: kind                         // kind
  });
// `%ArrayIteratorPrototype%.next` method
// https://tc39.es/ecma262/#sec-%arrayiteratorprototype%.next
}, function () {
  var state = getInternalState(this);
  var target = state.target;
  var index = state.index++;
  if (!target || index >= target.length) {
    state.target = null;
    return createIterResultObject(undefined, true);
  }
  switch (state.kind) {
    case 'keys': return createIterResultObject(index, false);
    case 'values': return createIterResultObject(target[index], false);
  } return createIterResultObject([index, target[index]], false);
}, 'values');

// argumentsList[@@iterator] is %ArrayProto_values%
// https://tc39.es/ecma262/#sec-createunmappedargumentsobject
// https://tc39.es/ecma262/#sec-createmappedargumentsobject
var values = Iterators.Arguments = Iterators.Array;

// https://tc39.es/ecma262/#sec-array.prototype-@@unscopables
addToUnscopables('keys');
addToUnscopables('values');
addToUnscopables('entries');

// V8 ~ Chrome 45- bug
if (!IS_PURE && DESCRIPTORS && values.name !== 'values') try {
  defineProperty(values, 'name', { value: 'values' });
} catch (error) { /* empty */ }

});

// MODULE: ./node_modules/.pnpm/[email protected]/node_modules/core-js/modules/es.array.reduce.js
var es_array_reduce_namespaceFn = /*#__PURE__*/__webpack_require__.cw(function(module, exports) {

var $ = (export_namespaceFn());
var $reduce = (array_reduce_namespaceFn().k);
var arrayMethodIsStrict = (array_method_is_strict_namespaceFn());
var CHROME_VERSION = (environment_v8_version_namespaceFn());
var IS_NODE = (environment_is_node_namespaceFn());

// Chrome 80-82 has a critical bug
// https://bugs.chromium.org/p/chromium/issues/detail?id=1049982
var CHROME_BUG = !IS_NODE && CHROME_VERSION > 79 && CHROME_VERSION < 83;
var FORCED = CHROME_BUG || !arrayMethodIsStrict('reduce');

// `Array.prototype.reduce` method
// https://tc39.es/ecma262/#sec-array.prototype.reduce
$({ target: 'Array', proto: true, forced: FORCED }, {
  reduce: function reduce(callbackfn /* , initialValue */) {
    var length = arguments.length;
    return $reduce(this, callbackfn, length, length > 1 ? arguments[1] : undefined);
  }
});

});

// MODULE: ./node_modules/.pnpm/[email protected]/node_modules/core-js/modules/es.array.sort.js
var es_array_sort_namespaceFn = /*#__PURE__*/__webpack_require__.cw(function(module, exports) {

var $ = (export_namespaceFn());
var uncurryThis = (function_uncurry_this_namespaceFn());
var aCallable = (a_callable_namespaceFn());
var toObject = (to_object_namespaceFn());
var lengthOfArrayLike = (length_of_array_like_namespaceFn());
var deletePropertyOrThrow = (delete_property_or_throw_namespaceFn());
var toString = (to_string_namespaceFn());
var fails = (fails_namespaceFn());
var internalSort = (array_sort_namespaceFn());
var arrayMethodIsStrict = (array_method_is_strict_namespaceFn());
var FF = (environment_ff_version_namespaceFn());
var IE_OR_EDGE = (environment_is_ie_or_edge_namespaceFn());
var V8 = (environment_v8_version_namespaceFn());
var WEBKIT = (environment_webkit_version_namespaceFn());

var test = [];
var nativeSort = uncurryThis(test.sort);
var push = uncurryThis(test.push);

// IE8-
var FAILS_ON_UNDEFINED = fails(function () {
  test.sort(undefined);
});
// V8 bug
var FAILS_ON_NULL = fails(function () {
  test.sort(null);
});
// Old WebKit
var STRICT_METHOD = arrayMethodIsStrict('sort');

var STABLE_SORT = !fails(function () {
  // feature detection can be too slow, so check engines versions
  if (V8) return V8 < 70;
  if (FF && FF > 3) return;
  if (IE_OR_EDGE) return true;
  if (WEBKIT) return WEBKIT < 603;

  var result = '';
  var code, chr, value, index;

  // generate an array with more 512 elements (Chakra and old V8 fails only in this case)
  for (code = 65; code < 76; code++) {
    chr = String.fromCharCode(code);

    switch (code) {
      case 66: case 69: case 70: case 72: value = 3; break;
      case 68: case 71: value = 4; break;
      default: value = 2;
    }

    for (index = 0; index < 47; index++) {
      test.push({ k: chr + index, v: value });
    }
  }

  test.sort(function (a, b) { return b.v - a.v; });

  for (index = 0; index < test.length; index++) {
    chr = test[index].k.charAt(0);
    if (result.charAt(result.length - 1) !== chr) result += chr;
  }

  return result !== 'DGBEFHACIJK';
});

var FORCED = FAILS_ON_UNDEFINED || !FAILS_ON_NULL || !STRICT_METHOD || !STABLE_SORT;

var getSortCompare = function (comparefn) {
  return function (x, y) {
    if (y === undefined) return -1;
    if (x === undefined) return 1;
    if (comparefn !== undefined) return +comparefn(x, y) || 0;
    var xString = toString(x);
    var yString = toString(y);
    return xString === yString ? 0 : xString > yString ? 1 : -1;
  };
};

// `Array.prototype.sort` method
// https://tc39.es/ecma262/#sec-array.prototype.sort
$({ target: 'Array', proto: true, forced: FORCED }, {
  sort: function sort(comparefn) {
    if (comparefn !== undefined) aCallable(comparefn);

    var array = toObject(this);

    if (STABLE_SORT) return comparefn === undefined ? nativeSort(array) : nativeSort(array, comparefn);

    var items = [];
    var arrayLength = lengthOfArrayLike(array);
    var itemsLength, index;

    for (index = 0; index < arrayLength; index++) {
      if (index in array) push(items, array[index]);
    }

    internalSort(items, getSortCompare(comparefn));

    itemsLength = lengthOfArrayLike(items);
    index = 0;

    while (index < itemsLength) array[index] = items[index++];
    while (index < arrayLength) deletePropertyOrThrow(array, index++);

    return array;
  }
});

});

// MODULE: ./node_modules/.pnpm/[email protected]/node_modules/core-js/modules/es.array.unscopables.flat-map.js
var es_array_unscopables_flat_map_namespaceFn = /*#__PURE__*/__webpack_require__.cw(function(module, exports) {

// this method was added to unscopables after implementation
// in popular engines, so it's moved to a separate module
var addToUnscopables = (add_to_unscopables_namespaceFn());

// https://tc39.es/ecma262/#sec-array.prototype-@@unscopables
addToUnscopables('flatMap');

});

// MODULE: ./node_modules/.pnpm/[email protected]/node_modules/core-js/modules/es.error.cause.js
var es_error_cause_namespaceFn = /*#__PURE__*/__webpack_require__.cw(function(module, exports) {

/* eslint-disable no-unused-vars -- required for functions `.length` */
var $ = (export_namespaceFn());
var globalThis = (global_this_namespaceFn());
var apply = (function_apply_namespaceFn());
var wrapErrorConstructorWithCause = (wrap_error_constructor_with_cause_namespaceFn());

var WEB_ASSEMBLY = 'WebAssembly';
var WebAssembly = globalThis[WEB_ASSEMBLY];

// eslint-disable-next-line es/no-error-cause -- feature detection
var FORCED = new Error('e', { cause: 7 }).cause !== 7;

var exportGlobalErrorCauseWrapper = function (ERROR_NAME, wrapper) {
  var O = {};
  // eslint-disable-next-line unicorn/no-immediate-mutation -- ES3 syntax limitation
  O[ERROR_NAME] = wrapErrorConstructorWithCause(ERROR_NAME, wrapper, FORCED);
  $({ global: true, constructor: true, arity: 1, forced: FORCED }, O);
};

var exportWebAssemblyErrorCauseWrapper = function (ERROR_NAME, wrapper) {
  if (WebAssembly && WebAssembly[ERROR_NAME]) {
    var O = {};
    // eslint-disable-next-line unicorn/no-immediate-mutation -- ES3 syntax limitation
    O[ERROR_NAME] = wrapErrorConstructorWithCause(WEB_ASSEMBLY + '.' + ERROR_NAME, wrapper, FORCED);
    $({ target: WEB_ASSEMBLY, stat: true, constructor: true, arity: 1, forced: FORCED }, O);
  }
};

// https://tc39.es/ecma262/#sec-nativeerror
exportGlobalErrorCauseWrapper('Error', function (init) {
  return function Error(message) { return apply(init, this, arguments); };
});
exportGlobalErrorCauseWrapper('EvalError', function (init) {
  return function EvalError(message) { return apply(init, this, arguments); };
});
exportGlobalErrorCauseWrapper('RangeError', function (init) {
  return function RangeError(message) { return apply(init, this, arguments); };
});
exportGlobalErrorCauseWrapper('ReferenceError', function (init) {
  return function ReferenceError(message) { return apply(init, this, arguments); };
});
exportGlobalErrorCauseWrapper('SyntaxError', function (init) {
  return function SyntaxError(message) { return apply(init, this, arguments); };
});
exportGlobalErrorCauseWrapper('TypeError', function (init) {
  return function TypeError(message) { return apply(init, this, arguments); };
});
exportGlobalErrorCauseWrapper('URIError', function (init) {
  return function URIError(message) { return apply(init, this, arguments); };
});
exportWebAssemblyErrorCauseWrapper('CompileError', function (init) {
  return function CompileError(message) { return apply(init, this, arguments); };
});
exportWebAssemblyErrorCauseWrapper('LinkError', function (init) {
  return function LinkError(message) { return apply(init, this, arguments); };
});
exportWebAssemblyErrorCauseWrapper('RuntimeError', function (init) {
  return function RuntimeError(message) { return apply(init, this, arguments); };
});

});

// MODULE: ./node_modules/.pnpm/[email protected]/node_modules/core-js/modules/es.global-this.js
var es_global_this_namespaceFn = /*#__PURE__*/__webpack_require__.cw(function(module, exports) {

var $ = (export_namespaceFn());
var globalThis = (global_this_namespaceFn());

// `globalThis` object
// https://tc39.es/ecma262/#sec-globalthis
$({ global: true, forced: globalThis.globalThis !== globalThis }, {
  globalThis: globalThis
});

});

// MODULE: ./node_modules/.pnpm/[email protected]/node_modules/core-js/modules/es.iterator.filter.js
var es_iterator_filter_namespaceFn = /*#__PURE__*/__webpack_require__.cw(function(module, exports) {

var $ = (export_namespaceFn());
var call = (function_call_namespaceFn());
var aCallable = (a_callable_namespaceFn());
var anObject = (an_object_namespaceFn());
var getIteratorDirect = (get_iterator_direct_namespaceFn());
var createIteratorProxy = (iterator_create_proxy_namespaceFn());
var callWithSafeIterationClosing = (call_with_safe_iteration_closing_namespaceFn());
var IS_PURE = (is_pure_namespaceFn());
var iteratorClose = (iterator_close_namespaceFn());
var iteratorHelperThrowsOnInvalidIterator = (iterator_helper_throws_on_invalid_iterator_namespaceFn());
var iteratorHelperWithoutClosingOnEarlyError = (iterator_helper_without_closing_on_early_error_namespaceFn());

var FILTER_WITHOUT_THROWING_ON_INVALID_ITERATOR = !IS_PURE && !iteratorHelperThrowsOnInvalidIterator('filter', function () { /* empty */ });
var filterWithoutClosingOnEarlyError = !IS_PURE && !FILTER_WITHOUT_THROWING_ON_INVALID_ITERATOR
  && iteratorHelperWithoutClosingOnEarlyError('filter', TypeError);

var FORCED = IS_PURE || FILTER_WITHOUT_THROWING_ON_INVALID_ITERATOR || filterWithoutClosingOnEarlyError;

var IteratorProxy = createIteratorProxy(function () {
  var iterator = this.iterator;
  var predicate = this.predicate;
  var next = this.next;
  var result, done, value;
  while (true) {
    result = anObject(call(next, iterator));
    done = this.done = !!result.done;
    if (done) return;
    value = result.value;
    if (callWithSafeIterationClosing(iterator, predicate, [value, this.counter++], true)) return value;
  }
});

// `Iterator.prototype.filter` method
// https://tc39.es/ecma262/#sec-iterator.prototype.filter
$({ target: 'Iterator', proto: true, real: true, forced: FORCED }, {
  filter: function filter(predicate) {
    anObject(this);
    try {
      aCallable(predicate);
    } catch (error) {
      iteratorClose(this, 'throw', error);
    }

    if (filterWithoutClosingOnEarlyError) return call(filterWithoutClosingOnEarlyError, this, predicate);

    return new IteratorProxy(getIteratorDirect(this), {
      predicate: predicate
    });
  }
});

});

// MODULE: ./node_modules/.pnpm/[email protected]/node_modules/core-js/modules/es.iterator.find.js
var es_iterator_find_namespaceFn = /*#__PURE__*/__webpack_require__.cw(function(module, exports) {

var $ = (export_namespaceFn());
var call = (function_call_namespaceFn());
var iterate = (iterate_namespaceFn());
var aCallable = (a_callable_namespaceFn());
var anObject = (an_object_namespaceFn());
var getIteratorDirect = (get_iterator_direct_namespaceFn());
var iteratorClose = (iterator_close_namespaceFn());
var iteratorHelperWithoutClosingOnEarlyError = (iterator_helper_without_closing_on_early_error_namespaceFn());

var findWithoutClosingOnEarlyError = iteratorHelperWithoutClosingOnEarlyError('find', TypeError);

// `Iterator.prototype.find` method
// https://tc39.es/ecma262/#sec-iterator.prototype.find
$({ target: 'Iterator', proto: true, real: true, forced: findWithoutClosingOnEarlyError }, {
  find: function find(predicate) {
    anObject(this);
    try {
      aCallable(predicate);
    } catch (error) {
      iteratorClose(this, 'throw', error);
    }

    if (findWithoutClosingOnEarlyError) return call(findWithoutClosingOnEarlyError, this, predicate);

    var record = getIteratorDirect(this);
    var counter = 0;
    return iterate(record, function (value, stop) {
      if (predicate(value, counter++)) return stop(value);
    }, { IS_RECORD: true, INTERRUPTED: true }).result;
  }
});

});

// MODULE: ./node_modules/.pnpm/[email protected]/node_modules/core-js/modules/es.iterator.flat-map.js
var es_iterator_flat_map_namespaceFn = /*#__PURE__*/__webpack_require__.cw(function(module, exports) {

var $ = (export_namespaceFn());
var call = (function_call_namespaceFn());
var aCallable = (a_callable_namespaceFn());
var anObject = (an_object_namespaceFn());
var getIteratorDirect = (get_iterator_direct_namespaceFn());
var getIteratorFlattenable = (get_iterator_flattenable_namespaceFn());
var createIteratorProxy = (iterator_create_proxy_namespaceFn());
var iteratorClose = (iterator_close_namespaceFn());
var fails = (fails_namespaceFn());
var IS_PURE = (is_pure_namespaceFn());
var iteratorHelperThrowsOnInvalidIterator = (iterator_helper_throws_on_invalid_iterator_namespaceFn());
var iteratorHelperWithoutClosingOnEarlyError = (iterator_helper_without_closing_on_early_error_namespaceFn());

// Should not throw an error for an iterator without `return` method. Fixed in Safari 26.2
// https://bugs.webkit.org/show_bug.cgi?id=297532
var THROWS_ON_ITERATOR_WITHOUT_RETURN = !IS_PURE && fails(function () {
  // eslint-disable-next-line es/no-array-prototype-values, es/no-iterator-prototype-flatmap, es/no-iterator-prototype-find -- testing
  return [1].values()
    .flatMap(function () { return [1]; })
    .find(function () { return true; }) !== 1;
});

var FLAT_MAP_WITHOUT_THROWING_ON_INVALID_ITERATOR = !IS_PURE && !THROWS_ON_ITERATOR_WITHOUT_RETURN
  && !iteratorHelperThrowsOnInvalidIterator('flatMap', function () { /* empty */ });

var flatMapWithoutClosingOnEarlyError = !IS_PURE && !THROWS_ON_ITERATOR_WITHOUT_RETURN && !FLAT_MAP_WITHOUT_THROWING_ON_INVALID_ITERATOR
  && iteratorHelperWithoutClosingOnEarlyError('flatMap', TypeError);

var FORCED = IS_PURE || THROWS_ON_ITERATOR_WITHOUT_RETURN || FLAT_MAP_WITHOUT_THROWING_ON_INVALID_ITERATOR
  || flatMapWithoutClosingOnEarlyError;

var IteratorProxy = createIteratorProxy(function () {
  var iterator = this.iterator;
  var mapper = this.mapper;
  var result, inner;

  while (true) {
    if (inner = this.inner) try {
      result = anObject(call(inner.next, inner.iterator));
      if (!result.done) return result.value;
      this.inner = null;
    } catch (error) { iteratorClose(iterator, 'throw', error); }

    result = anObject(call(this.next, iterator));

    if (this.done = !!result.done) return;

    try {
      this.inner = getIteratorFlattenable(mapper(result.value, this.counter++), false);
    } catch (error) { iteratorClose(iterator, 'throw', error); }
  }
});

// `Iterator.prototype.flatMap` method
// https://tc39.es/ecma262/#sec-iterator.prototype.flatmap
$({ target: 'Iterator', proto: true, real: true, forced: FORCED }, {
  flatMap: function flatMap(mapper) {
    anObject(this);
    try {
      aCallable(mapper);
    } catch (error) {
      iteratorClose(this, 'throw', error);
    }

    if (flatMapWithoutClosingOnEarlyError) return call(flatMapWithoutClosingOnEarlyError, this, mapper);

    return new IteratorProxy(getIteratorDirect(this), {
      mapper: mapper,
      inner: null
    });
  }
});

});

// MODULE: ./node_modules/.pnpm/[email protected]/node_modules/core-js/modules/es.iterator.for-each.js
var es_iterator_for_each_namespaceFn = /*#__PURE__*/__webpack_require__.cw(function(module, exports) {

var $ = (export_namespaceFn());
var call = (function_call_namespaceFn());
var iterate = (iterate_namespaceFn());
var aCallable = (a_callable_namespaceFn());
var anObject = (an_object_namespaceFn());
var getIteratorDirect = (get_iterator_direct_namespaceFn());
var iteratorClose = (iterator_close_namespaceFn());
var iteratorHelperWithoutClosingOnEarlyError = (iterator_helper_without_closing_on_early_error_namespaceFn());

var forEachWithoutClosingOnEarlyError = iteratorHelperWithoutClosingOnEarlyError('forEach', TypeError);

// `Iterator.prototype.forEach` method
// https://tc39.es/ecma262/#sec-iterator.prototype.foreach
$({ target: 'Iterator', proto: true, real: true, forced: forEachWithoutClosingOnEarlyError }, {
  forEach: function forEach(fn) {
    anObject(this);
    try {
      aCallable(fn);
    } catch (error) {
      iteratorClose(this, 'throw', error);
    }

    if (forEachWithoutClosingOnEarlyError) return call(forEachWithoutClosingOnEarlyError, this, fn);

    var record = getIteratorDirect(this);
    var counter = 0;
    iterate(record, function (value) {
      fn(value, counter++);
    }, { IS_RECORD: true });
  }
});

});

// MODULE: ./node_modules/.pnpm/[email protected]/node_modules/core-js/modules/es.iterator.reduce.js
var es_iterator_reduce_namespaceFn = /*#__PURE__*/__webpack_require__.cw(function(module, exports) {

var $ = (export_namespaceFn());
var iterate = (iterate_namespaceFn());
var aCallable = (a_callable_namespaceFn());
var anObject = (an_object_namespaceFn());
var getIteratorDirect = (get_iterator_direct_namespaceFn());
var iteratorClose = (iterator_close_namespaceFn());
var iteratorHelperWithoutClosingOnEarlyError = (iterator_helper_without_closing_on_early_error_namespaceFn());
var apply = (function_apply_namespaceFn());
var fails = (fails_namespaceFn());

var $TypeError = TypeError;

// https://bugs.webkit.org/show_bug.cgi?id=291651
var FAILS_ON_INITIAL_UNDEFINED = fails(function () {
  // eslint-disable-next-line es/no-iterator-prototype-reduce, es/no-array-prototype-keys, array-callback-return -- required for testing
  [].keys().reduce(function () { /* empty */ }, undefined);
});

var reduceWithoutClosingOnEarlyError = !FAILS_ON_INITIAL_UNDEFINED && iteratorHelperWithoutClosingOnEarlyError('reduce', $TypeError);

// `Iterator.prototype.reduce` method
// https://tc39.es/ecma262/#sec-iterator.prototype.reduce
$({ target: 'Iterator', proto: true, real: true, forced: FAILS_ON_INITIAL_UNDEFINED || reduceWithoutClosingOnEarlyError }, {
  reduce: function reduce(reducer /* , initialValue */) {
    anObject(this);
    try {
      aCallable(reducer);
    } catch (error) {
      iteratorClose(this, 'throw', error);
    }

    var noInitial = arguments.length < 2;
    var accumulator = noInitial ? undefined : arguments[1];
    if (reduceWithoutClosingOnEarlyError) {
      return apply(reduceWithoutClosingOnEarlyError, this, noInitial ? [reducer] : [reducer, accumulator]);
    }
    var record = getIteratorDirect(this);
    var counter = 0;
    iterate(record, function (value) {
      if (noInitial) {
        noInitial = false;
        accumulator = value;
      } else {
        accumulator = reducer(accumulator, value, counter);
      }
      counter++;
    }, { IS_RECORD: true });
    if (noInitial) throw new $TypeError('Reduce of empty iterator with no initial value');
    return accumulator;
  }
});

});

// MODULE: ./node_modules/.pnpm/[email protected]/node_modules/core-js/modules/es.iterator.some.js
var es_iterator_some_namespaceFn = /*#__PURE__*/__webpack_require__.cw(function(module, exports) {

var $ = (export_namespaceFn());
var call = (function_call_namespaceFn());
var iterate = (iterate_namespaceFn());
var aCallable = (a_callable_namespaceFn());
var anObject = (an_object_namespaceFn());
var getIteratorDirect = (get_iterator_direct_namespaceFn());
var iteratorClose = (iterator_close_namespaceFn());
var iteratorHelperWithoutClosingOnEarlyError = (iterator_helper_without_closing_on_early_error_namespaceFn());

var someWithoutClosingOnEarlyError = iteratorHelperWithoutClosingOnEarlyError('some', TypeError);

// `Iterator.prototype.some` method
// https://tc39.es/ecma262/#sec-iterator.prototype.some
$({ target: 'Iterator', proto: true, real: true, forced: someWithoutClosingOnEarlyError }, {
  some: function some(predicate) {
    anObject(this);
    try {
      aCallable(predicate);
    } catch (error) {
      iteratorClose(this, 'throw', error);
    }

    if (someWithoutClosingOnEarlyError) return call(someWithoutClosingOnEarlyError, this, predicate);

    var record = getIteratorDirect(this);
    var counter = 0;
    return iterate(record, function (value, stop) {
      if (predicate(value, counter++)) return stop();
    }, { IS_RECORD: true, INTERRUPTED: true }).stopped;
  }
});

});

// MODULE: ./node_modules/.pnpm/[email protected]/node_modules/core-js/modules/es.json.parse.js
var es_json_parse_namespaceFn = /*#__PURE__*/__webpack_require__.cw(function(module, exports) {

var $ = (export_namespaceFn());
var DESCRIPTORS = (descriptors_namespaceFn());
var globalThis = (global_this_namespaceFn());
var getBuiltIn = (get_built_in_namespaceFn());
var uncurryThis = (function_uncurry_this_namespaceFn());
var call = (function_call_namespaceFn());
var isCallable = (is_callable_namespaceFn());
var isObject = (is_object_namespaceFn());
var isArray = (is_array_namespaceFn());
var hasOwn = (has_own_property_namespaceFn());
var toString = (to_string_namespaceFn());
var lengthOfArrayLike = (length_of_array_like_namespaceFn());
var createProperty = (create_property_namespaceFn());
var fails = (fails_namespaceFn());
var parseJSONString = (parse_json_string_namespaceFn());
var NATIVE_SYMBOL = (symbol_constructor_detection_namespaceFn());

var JSON = globalThis.JSON;
var Number = globalThis.Number;
var SyntaxError = globalThis.SyntaxError;
var nativeParse = JSON && JSON.parse;
var enumerableOwnProperties = getBuiltIn('Object', 'keys');
// eslint-disable-next-line es/no-object-getownpropertydescriptor -- safe
var getOwnPropertyDescriptor = Object.getOwnPropertyDescriptor;
var at = uncurryThis(''.charAt);
var slice = uncurryThis(''.slice);
var exec = uncurryThis(/./.exec);
var push = uncurryThis([].push);

var IS_DIGIT = /^\d$/;
var IS_NON_ZERO_DIGIT = /^[1-9]$/;
var IS_NUMBER_START = /^[\d-]$/;
var IS_WHITESPACE = /^[\t\n\r ]$/;

var PRIMITIVE = 0;
var OBJECT = 1;

var $parse = function (source, reviver) {
  source = toString(source);
  var context = new Context(source, 0);
  var root = context.parse();
  var value = root.value;
  var endIndex = context.skip(IS_WHITESPACE, root.end);
  if (endIndex < source.length) {
    throw new SyntaxError('Unexpected extra character: "' + at(source, endIndex) + '" after the parsed data at: ' + endIndex);
  }
  return isCallable(reviver) ? internalize({ '': value }, '', reviver, root) : value;
};

var internalize = function (holder, name, reviver, node) {
  var val = holder[name];
  var unmodified = node && val === node.value;
  var context = unmodified && typeof node.source == 'string' ? { source: node.source } : {};
  var elementRecordsLen, keys, len, i, P;
  if (isObject(val)) {
    var nodeIsArray = isArray(val);
    var nodes = unmodified ? node.nodes : nodeIsArray ? [] : {};
    if (nodeIsArray) {
      elementRecordsLen = nodes.length;
      len = lengthOfArrayLike(val);
      for (i = 0; i < len; i++) {
        internalizeProperty(val, i, internalize(val, '' + i, reviver, i < elementRecordsLen ? nodes[i] : undefined));
      }
    } else {
      keys = enumerableOwnProperties(val);
      len = lengthOfArrayLike(keys);
      for (i = 0; i < len; i++) {
        P = keys[i];
        internalizeProperty(val, P, internalize(val, P, reviver, hasOwn(nodes, P) ? nodes[P] : undefined));
      }
    }
  }
  return call(reviver, holder, name, val, context);
};

var internalizeProperty = function (object, key, value) {
  if (DESCRIPTORS) {
    var descriptor = getOwnPropertyDescriptor(object, key);
    if (descriptor && !descriptor.configurable) return;
  }
  if (value === undefined) delete object[key];
  else createProperty(object, key, value);
};

var Node = function (value, end, source, nodes) {
  this.value = value;
  this.end = end;
  this.source = source;
  this.nodes = nodes;
};

var Context = function (source, index) {
  this.source = source;
  this.index = index;
};

// https://www.json.org/json-en.html
Context.prototype = {
  fork: function (nextIndex) {
    return new Context(this.source, nextIndex);
  },
  parse: function () {
    var source = this.source;
    var i = this.skip(IS_WHITESPACE, this.index);
    var fork = this.fork(i);
    var chr = at(source, i);
    if (exec(IS_NUMBER_START, chr)) return fork.number();
    switch (chr) {
      case '{':
        return fork.object();
      case '[':
        return fork.array();
      case '"':
        return fork.string();
      case 't':
        return fork.keyword(true);
      case 'f':
        return fork.keyword(false);
      case 'n':
        return fork.keyword(null);
    } throw new SyntaxError('Unexpected character: "' + chr + '" at: ' + i);
  },
  node: function (type, value, start, end, nodes) {
    return new Node(value, end, type ? null : slice(this.source, start, end), nodes);
  },
  object: function () {
    var source = this.source;
    var i = this.index + 1;
    var expectKeypair = false;
    var object = {};
    var nodes = {};
    var closed = false;
    while (i < source.length) {
      i = this.until(['"', '}'], i);
      if (at(source, i) === '}' && !expectKeypair) {
        i++;
        closed = true;
        break;
      }
      // Parsing the key
      var result = this.fork(i).string();
      var key = result.value;
      i = result.end;
      i = this.until([':'], i) + 1;
      // Parsing value
      i = this.skip(IS_WHITESPACE, i);
      result = this.fork(i).parse();
      createProperty(nodes, key, result);
      createProperty(object, key, result.value);
      i = this.until([',', '}'], result.end);
      var chr = at(source, i);
      if (chr === ',') {
        expectKeypair = true;
        i++;
      } else if (chr === '}') {
        i++;
        closed = true;
        break;
      }
    }
    if (!closed) throw new SyntaxError('Unterminated object at: ' + i);
    return this.node(OBJECT, object, this.index, i, nodes);
  },
  array: function () {
    var source = this.source;
    var i = this.index + 1;
    var expectElement = false;
    var array = [];
    var nodes = [];
    var closed = false;
    while (i < source.length) {
      i = this.skip(IS_WHITESPACE, i);
      if (at(source, i) === ']' && !expectElement) {
        i++;
        closed = true;
        break;
      }
      var result = this.fork(i).parse();
      push(nodes, result);
      push(array, result.value);
      i = this.until([',', ']'], result.end);
      if (at(source, i) === ',') {
        expectElement = true;
        i++;
      } else if (at(source, i) === ']') {
        i++;
        closed = true;
        break;
      }
    }
    if (!closed) throw new SyntaxError('Unterminated array at: ' + i);
    return this.node(OBJECT, array, this.index, i, nodes);
  },
  string: function () {
    var index = this.index;
    var parsed = parseJSONString(this.source, this.index + 1);
    return this.node(PRIMITIVE, parsed.value, index, parsed.end);
  },
  number: function () {
    var source = this.source;
    var startIndex = this.index;
    var i = startIndex;
    if (at(source, i) === '-') i++;
    if (at(source, i) === '0') i++;
    else if (exec(IS_NON_ZERO_DIGIT, at(source, i))) i = this.skip(IS_DIGIT, i + 1);
    else throw new SyntaxError('Failed to parse number at: ' + i);
    if (at(source, i) === '.') {
      var fractionStartIndex = i + 1;
      i = this.skip(IS_DIGIT, fractionStartIndex);
      if (fractionStartIndex === i) throw new SyntaxError("Failed to parse number's fraction at: " + i);
    }
    if (at(source, i) === 'e' || at(source, i) === 'E') {
      i++;
      if (at(source, i) === '+' || at(source, i) === '-') i++;
      var exponentStartIndex = i;
      i = this.skip(IS_DIGIT, i);
      if (exponentStartIndex === i) throw new SyntaxError("Failed to parse number's exponent value at: " + i);
    }
    return this.node(PRIMITIVE, Number(slice(source, startIndex, i)), startIndex, i);
  },
  keyword: function (value) {
    var keyword = '' + value;
    var index = this.index;
    var endIndex = index + keyword.length;
    if (slice(this.source, index, endIndex) !== keyword) throw new SyntaxError('Failed to parse value at: ' + index);
    return this.node(PRIMITIVE, value, index, endIndex);
  },
  skip: function (regex, i) {
    var source = this.source;
    for (; i < source.length; i++) if (!exec(regex, at(source, i))) break;
    return i;
  },
  until: function (array, i) {
    i = this.skip(IS_WHITESPACE, i);
    var chr = at(this.source, i);
    for (var j = 0; j < array.length; j++) if (array[j] === chr) return i;
    throw new SyntaxError('Unexpected character: "' + chr + '" at: ' + i);
  }
};

var NO_SOURCE_SUPPORT = fails(function () {
  var unsafeInt = '9007199254740993';
  var source;
  nativeParse(unsafeInt, function (key, value, context) {
    source = context.source;
  });
  return source !== unsafeInt;
});

var PROPER_BASE_PARSE = NATIVE_SYMBOL && !fails(function () {
  // Safari 9 bug
  return 1 / nativeParse('-0 \t') !== -Infinity;
});

// `JSON.parse` method
// https://tc39.es/ecma262/#sec-json.parse
// https://github.com/tc39/proposal-json-parse-with-source
$({ target: 'JSON', stat: true, forced: NO_SOURCE_SUPPORT }, {
  parse: function parse(text, reviver) {
    return PROPER_BASE_PARSE && !isCallable(reviver) ? nativeParse(text) : $parse(text, reviver);
  }
});

});

// MODULE: ./node_modules/.pnpm/[email protected]/node_modules/core-js/modules/es.map.get-or-insert-computed.js
var es_map_get_or_insert_computed_namespaceFn = /*#__PURE__*/__webpack_require__.cw(function(module, exports) {

var $ = (export_namespaceFn());
var aCallable = (a_callable_namespaceFn());
var MapHelpers = (map_helpers_namespaceFn());
var IS_PURE = (is_pure_namespaceFn());

var get = MapHelpers.get;
var has = MapHelpers.has;
var set = MapHelpers.set;

// `Map.prototype.getOrInsertComputed` method
// https://tc39.es/ecma262/#sec-map.prototype.getorinsertcomputed
$({ target: 'Map', proto: true, real: true, forced: IS_PURE }, {
  getOrInsertComputed: function getOrInsertComputed(key, callbackfn) {
    var hasKey = has(this, key);
    aCallable(callbackfn);
    if (hasKey) return get(this, key);
    // CanonicalizeKeyedCollectionKey
    if (key === 0 && 1 / key === -Infinity) key = 0;
    var value = callbackfn(key);
    set(this, key, value);
    return value;
  }
});

});

// MODULE: ./node_modules/.pnpm/[email protected]/node_modules/core-js/modules/es.map.get-or-insert.js
var es_map_get_or_insert_namespaceFn = /*#__PURE__*/__webpack_require__.cw(function(module, exports) {

var $ = (export_namespaceFn());
var MapHelpers = (map_helpers_namespaceFn());
var IS_PURE = (is_pure_namespaceFn());

var get = MapHelpers.get;
var has = MapHelpers.has;
var set = MapHelpers.set;

// `Map.prototype.getOrInsert` method
// https://tc39.es/ecma262/#sec-map.prototype.getorinsert
$({ target: 'Map', proto: true, real: true, forced: IS_PURE }, {
  getOrInsert: function getOrInsert(key, value) {
    if (has(this, key)) return get(this, key);
    set(this, key, value);
    return value;
  }
});

});

// MODULE: ./node_modules/.pnpm/[email protected]/node_modules/core-js/modules/es.number.parse-float.js
var es_number_parse_float_namespaceFn = /*#__PURE__*/__webpack_require__.cw(function(module, exports) {

var $ = (export_namespaceFn());
var parseFloat = (number_parse_float_namespaceFn());

// `Number.parseFloat` method
// https://tc39.es/ecma262/#sec-number.parseFloat
// eslint-disable-next-line es/no-number-parsefloat -- required for testing
$({ target: 'Number', stat: true, forced: Number.parseFloat !== parseFloat }, {
  parseFloat: parseFloat
});

});

// MODULE: ./node_modules/.pnpm/[email protected]/node_modules/core-js/modules/es.number.to-fixed.js
var es_number_to_fixed_namespaceFn = /*#__PURE__*/__webpack_require__.cw(function(module, exports) {

var $ = (export_namespaceFn());
var uncurryThis = (function_uncurry_this_namespaceFn());
var toIntegerOrInfinity = (to_integer_or_infinity_namespaceFn());
var thisNumberValue = (this_number_value_namespaceFn());
var $repeat = (string_repeat_namespaceFn());
var fails = (fails_namespaceFn());

var $RangeError = RangeError;
var $String = String;
var floor = Math.floor;
var repeat = uncurryThis($repeat);
var stringSlice = uncurryThis(''.slice);
var nativeToFixed = uncurryThis(1.1.toFixed);

var pow = function (x, n, acc) {
  return n === 0 ? acc : n % 2 === 1 ? pow(x, n - 1, acc * x) : pow(x * x, n / 2, acc);
};

var log = function (x) {
  var n = 0;
  var x2 = x;
  while (x2 >= 4096) {
    n += 12;
    x2 /= 4096;
  }
  while (x2 >= 2) {
    n += 1;
    x2 /= 2;
  } return n;
};

var multiply = function (data, n, c) {
  var index = -1;
  var c2 = c;
  while (++index < 6) {
    c2 += n * data[index];
    data[index] = c2 % 1e7;
    c2 = floor(c2 / 1e7);
  }
};

var divide = function (data, n) {
  var index = 6;
  var c = 0;
  while (--index >= 0) {
    c += data[index];
    data[index] = floor(c / n);
    c = (c % n) * 1e7;
  }
};

var dataToString = function (data) {
  var index = 6;
  var s = '';
  while (--index >= 0) {
    if (s !== '' || index === 0 || data[index] !== 0) {
      var t = $String(data[index]);
      s = s === '' ? t : s + repeat('0', 7 - t.length) + t;
    }
  } return s;
};

var FORCED = fails(function () {
  return nativeToFixed(0.00008, 3) !== '0.000' ||
    nativeToFixed(0.9, 0) !== '1' ||
    nativeToFixed(1.255, 2) !== '1.25' ||
    nativeToFixed(1000000000000000128.0, 0) !== '1000000000000000128';
}) || !fails(function () {
  // V8 ~ Android 4.3-
  nativeToFixed({});
});

// `Number.prototype.toFixed` method
// https://tc39.es/ecma262/#sec-number.prototype.tofixed
$({ target: 'Number', proto: true, forced: FORCED }, {
  toFixed: function toFixed(fractionDigits) {
    var number = thisNumberValue(this);
    var fractDigits = toIntegerOrInfinity(fractionDigits);
    var data = [0, 0, 0, 0, 0, 0];
    var sign = '';
    var result = '0';
    var e, z, j, k;

    // TODO: ES2018 increased the maximum number of fraction digits to 100, need to improve the implementation
    if (fractDigits < 0 || fractDigits > 20) throw new $RangeError('Incorrect fraction digits');
    // eslint-disable-next-line no-self-compare -- NaN check
    if (number !== number) return 'NaN';
    if (number <= -1e21 || number >= 1e21) return $String(number);
    if (number < 0) {
      sign = '-';
      number = -number;
    }
    if (number > 1e-21) {
      e = log(number * pow(2, 69, 1)) - 69;
      z = e < 0 ? number * pow(2, -e, 1) : number / pow(2, e, 1);
      z *= 0x10000000000000;
      e = 52 - e;
      if (e > 0) {
        multiply(data, 0, z);
        j = fractDigits;
        while (j >= 7) {
          multiply(data, 1e7, 0);
          j -= 7;
        }
        multiply(data, pow(10, j, 1), 0);
        j = e - 1;
        while (j >= 23) {
          divide(data, 1 << 23);
          j -= 23;
        }
        divide(data, 1 << j);
        multiply(data, 1, 1);
        divide(data, 2);
        result = dataToString(data);
      } else {
        multiply(data, 0, z);
        multiply(data, 1 << -e, 0);
        result = dataToString(data) + repeat('0', fractDigits);
      }
    }
    if (fractDigits > 0) {
      k = result.length;
      result = sign + (k <= fractDigits
        ? '0.' + repeat('0', fractDigits - k) + result
        : stringSlice(result, 0, k - fractDigits) + '.' + stringSlice(result, k - fractDigits));
    } else {
      result = sign + result;
    } return result;
  }
});

});

// MODULE: ./node_modules/.pnpm/[email protected]/node_modules/core-js/modules/es.object.assign.js
var es_object_assign_namespaceFn = /*#__PURE__*/__webpack_require__.cw(function(module, exports) {

var $ = (export_namespaceFn());
var assign = (object_assign_namespaceFn());

// `Object.assign` method
// https://tc39.es/ecma262/#sec-object.assign
// eslint-disable-next-line es/no-object-assign -- required for testing
$({ target: 'Object', stat: true, arity: 2, forced: Object.assign !== assign }, {
  assign: assign
});

});

// MODULE: ./node_modules/.pnpm/[email protected]/node_modules/core-js/modules/es.object.from-entries.js
var es_object_from_entries_namespaceFn = /*#__PURE__*/__webpack_require__.cw(function(module, exports) {

var $ = (export_namespaceFn());
var iterate = (iterate_namespaceFn());
var createProperty = (create_property_namespaceFn());

// `Object.fromEntries` method
// https://tc39.es/ecma262/#sec-object.fromentries
$({ target: 'Object', stat: true }, {
  fromEntries: function fromEntries(iterable) {
    var obj = {};
    iterate(iterable, function (k, v) {
      createProperty(obj, k, v);
    }, { AS_ENTRIES: true });
    return obj;
  }
});

});

// MODULE: ./node_modules/.pnpm/[email protected]/node_modules/core-js/modules/es.parse-int.js
var es_parse_int_namespaceFn = /*#__PURE__*/__webpack_require__.cw(function(module, exports) {

var $ = (export_namespaceFn());
var $parseInt = (number_parse_int_namespaceFn());

// `parseInt` method
// https://tc39.es/ecma262/#sec-parseint-string-radix
$({ global: true, forced: parseInt !== $parseInt }, {
  parseInt: $parseInt
});

});

// MODULE: ./node_modules/.pnpm/[email protected]/node_modules/core-js/modules/es.promise.all.js
var es_promise_all_namespaceFn = /*#__PURE__*/__webpack_require__.cw(function(module, exports) {

var $ = (export_namespaceFn());
var call = (function_call_namespaceFn());
var aCallable = (a_callable_namespaceFn());
var newPromiseCapabilityModule = (new_promise_capability_namespaceFn());
var perform = (perform_namespaceFn());
var iterate = (iterate_namespaceFn());
var PROMISE_STATICS_INCORRECT_ITERATION = (promise_statics_incorrect_iteration_namespaceFn());

// `Promise.all` method
// https://tc39.es/ecma262/#sec-promise.all
$({ target: 'Promise', stat: true, forced: PROMISE_STATICS_INCORRECT_ITERATION }, {
  all: function all(iterable) {
    var C = this;
    var capability = newPromiseCapabilityModule.f(C);
    var resolve = capability.resolve;
    var reject = capability.reject;
    var result = perform(function () {
      var $promiseResolve = aCallable(C.resolve);
      var values = [];
      var counter = 0;
      var remaining = 1;
      iterate(iterable, function (promise) {
        var index = counter++;
        var alreadyCalled = false;
        remaining++;
        call($promiseResolve, C, promise).then(function (value) {
          if (alreadyCalled) return;
          alreadyCalled = true;
          values[index] = value;
          --remaining || resolve(values);
        }, reject);
      });
      --remaining || resolve(values);
    });
    if (result.error) reject(result.value);
    return capability.promise;
  }
});

});

// MODULE: ./node_modules/.pnpm/[email protected]/node_modules/core-js/modules/es.promise.catch.js
var es_promise_catch_namespaceFn = /*#__PURE__*/__webpack_require__.cw(function(module, exports) {

var $ = (export_namespaceFn());
var IS_PURE = (is_pure_namespaceFn());
var FORCED_PROMISE_CONSTRUCTOR = (promise_constructor_detection_namespaceFn().CONSTRUCTOR);
var NativePromiseConstructor = (promise_native_constructor_namespaceFn());
var getBuiltIn = (get_built_in_namespaceFn());
var isCallable = (is_callable_namespaceFn());
var defineBuiltIn = (define_built_in_namespaceFn());

var NativePromisePrototype = NativePromiseConstructor && NativePromiseConstructor.prototype;

// `Promise.prototype.catch` method
// https://tc39.es/ecma262/#sec-promise.prototype.catch
$({ target: 'Promise', proto: true, forced: FORCED_PROMISE_CONSTRUCTOR, real: true }, {
  'catch': function (onRejected) {
    return this.then(undefined, onRejected);
  }
});

// makes sure that native promise-based APIs `Promise#catch` properly works with patched `Promise#then`
if (!IS_PURE && isCallable(NativePromiseConstructor)) {
  var method = getBuiltIn('Promise').prototype['catch'];
  if (NativePromisePrototype['catch'] !== method) {
    defineBuiltIn(NativePromisePrototype, 'catch', method, { unsafe: true });
  }
}

});

// MODULE: ./node_modules/.pnpm/[email protected]/node_modules/core-js/modules/es.promise.constructor.js
var es_promise_constructor_namespaceFn = /*#__PURE__*/__webpack_require__.cw(function(module, exports) {

var $ = (export_namespaceFn());
var IS_PURE = (is_pure_namespaceFn());
var IS_NODE = (environment_is_node_namespaceFn());
var globalThis = (global_this_namespaceFn());
var path = (path_namespaceFn());
var call = (function_call_namespaceFn());
var defineBuiltIn = (define_built_in_namespaceFn());
var setPrototypeOf = (object_set_prototype_of_namespaceFn());
var setToStringTag = (set_to_string_tag_namespaceFn());
var setSpecies = (set_species_namespaceFn());
var aCallable = (a_callable_namespaceFn());
var isCallable = (is_callable_namespaceFn());
var isObject = (is_object_namespaceFn());
var anInstance = (an_instance_namespaceFn());
var speciesConstructor = (species_constructor_namespaceFn());
var task = (task_namespaceFn().h);
var microtask = (microtask_namespaceFn());
var hostReportErrors = (host_report_errors_namespaceFn());
var perform = (perform_namespaceFn());
var Queue = (queue_namespaceFn());
var InternalStateModule = (internal_state_namespaceFn());
var NativePromiseConstructor = (promise_native_constructor_namespaceFn());
var PromiseConstructorDetection = (promise_constructor_detection_namespaceFn());
var newPromiseCapabilityModule = (new_promise_capability_namespaceFn());

var PROMISE = 'Promise';
var FORCED_PROMISE_CONSTRUCTOR = PromiseConstructorDetection.CONSTRUCTOR;
var NATIVE_PROMISE_REJECTION_EVENT = PromiseConstructorDetection.REJECTION_EVENT;
var NATIVE_PROMISE_SUBCLASSING = PromiseConstructorDetection.SUBCLASSING;
var getInternalPromiseState = InternalStateModule.getterFor(PROMISE);
var setInternalState = InternalStateModule.set;
var NativePromisePrototype = NativePromiseConstructor && NativePromiseConstructor.prototype;
var PromiseConstructor = NativePromiseConstructor;
var PromisePrototype = NativePromisePrototype;
var TypeError = globalThis.TypeError;
var document = globalThis.document;
var process = globalThis.process;
var newPromiseCapability = newPromiseCapabilityModule.f;
var newGenericPromiseCapability = newPromiseCapability;

var DISPATCH_EVENT = !!(document && document.createEvent && globalThis.dispatchEvent);
var UNHANDLED_REJECTION = 'unhandledrejection';
var REJECTION_HANDLED = 'rejectionhandled';
var PENDING = 0;
var FULFILLED = 1;
var REJECTED = 2;
var HANDLED = 1;
var UNHANDLED = 2;

var Internal, OwnPromiseCapability, PromiseWrapper, nativeThen;

// helpers
var isThenable = function (it) {
  var then;
  return isObject(it) && isCallable(then = it.then) ? then : false;
};

var callReaction = function (reaction, state) {
  var value = state.value;
  var ok = state.state === FULFILLED;
  var handler = ok ? reaction.ok : reaction.fail;
  var resolve = reaction.resolve;
  var reject = reaction.reject;
  var domain = reaction.domain;
  var result, then, exited;
  try {
    if (handler) {
      if (!ok) {
        if (state.rejection === UNHANDLED) onHandleUnhandled(state);
        state.rejection = HANDLED;
      }
      if (handler === true) result = value;
      else {
        if (domain) domain.enter();
        result = handler(value); // can throw
        if (domain) {
          domain.exit();
          exited = true;
        }
      }
      if (result === reaction.promise) {
        reject(new TypeError('Promise-chain cycle'));
      } else if (then = isThenable(result)) {
        call(then, result, resolve, reject);
      } else resolve(result);
    } else reject(value);
  } catch (error) {
    if (domain && !exited) domain.exit();
    reject(error);
  }
};

var notify = function (state, isReject) {
  if (state.notified) return;
  state.notified = true;
  microtask(function () {
    var reactions = state.reactions;
    var reaction;
    while (reaction = reactions.get()) {
      callReaction(reaction, state);
    }
    state.notified = false;
    if (isReject && !state.rejection) onUnhandled(state);
  });
};

var dispatchEvent = function (name, promise, reason) {
  var event, handler;
  if (DISPATCH_EVENT) {
    event = document.createEvent('Event');
    event.promise = promise;
    event.reason = reason;
    event.initEvent(name, false, true);
    globalThis.dispatchEvent(event);
  } else event = { promise: promise, reason: reason };
  if (!NATIVE_PROMISE_REJECTION_EVENT && (handler = globalThis['on' + name])) handler(event);
  else if (name === UNHANDLED_REJECTION) hostReportErrors('Unhandled promise rejection', reason);
};

var onUnhandled = function (state) {
  call(task, globalThis, function () {
    var promise = state.facade;
    var value = state.value;
    var IS_UNHANDLED = isUnhandled(state);
    var result;
    if (IS_UNHANDLED) {
      result = perform(function () {
        if (IS_NODE) {
          process.emit('unhandledRejection', value, promise);
        } else dispatchEvent(UNHANDLED_REJECTION, promise, value);
      });
      // Browsers should not trigger `rejectionHandled` event if it was handled here, NodeJS - should
      state.rejection = IS_NODE || isUnhandled(state) ? UNHANDLED : HANDLED;
      if (result.error) throw result.value;
    }
  });
};

var isUnhandled = function (state) {
  return state.rejection !== HANDLED && !state.parent;
};

var onHandleUnhandled = function (state) {
  call(task, globalThis, function () {
    var promise = state.facade;
    if (IS_NODE) {
      process.emit('rejectionHandled', promise);
    } else dispatchEvent(REJECTION_HANDLED, promise, state.value);
  });
};

var bind = function (fn, state, unwrap) {
  return function (value) {
    fn(state, value, unwrap);
  };
};

var internalReject = function (state, value, unwrap) {
  if (state.done) return;
  state.done = true;
  if (unwrap) state = unwrap;
  state.value = value;
  state.state = REJECTED;
  notify(state, true);
};

var internalResolve = function (state, value, unwrap) {
  if (state.done) return;
  state.done = true;
  if (unwrap) state = unwrap;
  try {
    if (state.facade === value) throw new TypeError("Promise can't be resolved itself");
    var then = isThenable(value);
    if (then) {
      microtask(function () {
        var wrapper = { done: false };
        try {
          call(then, value,
            bind(internalResolve, wrapper, state),
            bind(internalReject, wrapper, state)
          );
        } catch (error) {
          internalReject(wrapper, error, state);
        }
      });
    } else {
      state.value = value;
      state.state = FULFILLED;
      notify(state, false);
    }
  } catch (error) {
    internalReject({ done: false }, error, state);
  }
};

// constructor polyfill
if (FORCED_PROMISE_CONSTRUCTOR) {
  // 25.4.3.1 Promise(executor)
  PromiseConstructor = function Promise(executor) {
    anInstance(this, PromisePrototype);
    aCallable(executor);
    call(Internal, this);
    var state = getInternalPromiseState(this);
    try {
      executor(bind(internalResolve, state), bind(internalReject, state));
    } catch (error) {
      internalReject(state, error);
    }
  };

  PromisePrototype = PromiseConstructor.prototype;

  // eslint-disable-next-line no-unused-vars -- required for `.length`
  Internal = function Promise(executor) {
    setInternalState(this, {
      type: PROMISE,
      done: false,
      notified: false,
      parent: false,
      reactions: new Queue(),
      rejection: false,
      state: PENDING,
      value: null
    });
  };

  // `Promise.prototype.then` method
  // https://tc39.es/ecma262/#sec-promise.prototype.then
  Internal.prototype = defineBuiltIn(PromisePrototype, 'then', function then(onFulfilled, onRejected) {
    var state = getInternalPromiseState(this);
    var reaction = newPromiseCapability(speciesConstructor(this, PromiseConstructor));
    state.parent = true;
    reaction.ok = isCallable(onFulfilled) ? onFulfilled : true;
    reaction.fail = isCallable(onRejected) && onRejected;
    reaction.domain = IS_NODE ? process.domain : undefined;
    if (state.state === PENDING) state.reactions.add(reaction);
    else microtask(function () {
      callReaction(reaction, state);
    });
    return reaction.promise;
  });

  OwnPromiseCapability = function () {
    var promise = new Internal();
    var state = getInternalPromiseState(promise);
    this.promise = promise;
    this.resolve = bind(internalResolve, state);
    this.reject = bind(internalReject, state);
  };

  newPromiseCapabilityModule.f = newPromiseCapability = function (C) {
    return C === PromiseConstructor || C === PromiseWrapper
      ? new OwnPromiseCapability(C)
      : newGenericPromiseCapability(C);
  };

  if (!IS_PURE && isCallable(NativePromiseConstructor) && NativePromisePrototype !== Object.prototype) {
    nativeThen = NativePromisePrototype.then;

    if (!NATIVE_PROMISE_SUBCLASSING) {
      // make `Promise#then` return a polyfilled `Promise` for native promise-based APIs
      defineBuiltIn(NativePromisePrototype, 'then', function then(onFulfilled, onRejected) {
        var that = this;
        return new PromiseConstructor(function (resolve, reject) {
          call(nativeThen, that, resolve, reject);
        }).then(onFulfilled, onRejected);
      // https://github.com/zloirock/core-js/issues/640
      }, { unsafe: true });
    }

    // make `.constructor === Promise` work for native promise-based APIs
    try {
      delete NativePromisePrototype.constructor;
    } catch (error) { /* empty */ }

    // make `instanceof Promise` work for native promise-based APIs
    if (setPrototypeOf) {
      setPrototypeOf(NativePromisePrototype, PromisePrototype);
    }
  }
}

// `Promise` constructor
// https://tc39.es/ecma262/#sec-promise-executor
$({ global: true, constructor: true, wrap: true, forced: FORCED_PROMISE_CONSTRUCTOR }, {
  Promise: PromiseConstructor
});

PromiseWrapper = path.Promise;

setToStringTag(PromiseConstructor, PROMISE, false, true);
setSpecies(PROMISE);

});

// MODULE: ./node_modules/.pnpm/[email protected]/node_modules/core-js/modules/es.promise.js
var es_promise_namespaceFn = /*#__PURE__*/__webpack_require__.cw(function(module, exports) {

// TODO: Remove this module from `core-js@4` since it's split to modules listed below
(es_promise_constructor_namespaceFn());
(es_promise_all_namespaceFn());
(es_promise_catch_namespaceFn());
(es_promise_race_namespaceFn());
(es_promise_reject_namespaceFn());
(es_promise_resolve_namespaceFn());

});

// MODULE: ./node_modules/.pnpm/[email protected]/node_modules/core-js/modules/es.promise.race.js
var es_promise_race_namespaceFn = /*#__PURE__*/__webpack_require__.cw(function(module, exports) {

var $ = (export_namespaceFn());
var call = (function_call_namespaceFn());
var aCallable = (a_callable_namespaceFn());
var newPromiseCapabilityModule = (new_promise_capability_namespaceFn());
var perform = (perform_namespaceFn());
var iterate = (iterate_namespaceFn());
var PROMISE_STATICS_INCORRECT_ITERATION = (promise_statics_incorrect_iteration_namespaceFn());

// `Promise.race` method
// https://tc39.es/ecma262/#sec-promise.race
$({ target: 'Promise', stat: true, forced: PROMISE_STATICS_INCORRECT_ITERATION }, {
  race: function race(iterable) {
    var C = this;
    var capability = newPromiseCapabilityModule.f(C);
    var reject = capability.reject;
    var result = perform(function () {
      var $promiseResolve = aCallable(C.resolve);
      iterate(iterable, function (promise) {
        call($promiseResolve, C, promise).then(capability.resolve, reject);
      });
    });
    if (result.error) reject(result.value);
    return capability.promise;
  }
});

});

// MODULE: ./node_modules/.pnpm/[email protected]/node_modules/core-js/modules/es.promise.reject.js
var es_promise_reject_namespaceFn = /*#__PURE__*/__webpack_require__.cw(function(module, exports) {

var $ = (export_namespaceFn());
var newPromiseCapabilityModule = (new_promise_capability_namespaceFn());
var FORCED_PROMISE_CONSTRUCTOR = (promise_constructor_detection_namespaceFn().CONSTRUCTOR);

// `Promise.reject` method
// https://tc39.es/ecma262/#sec-promise.reject
$({ target: 'Promise', stat: true, forced: FORCED_PROMISE_CONSTRUCTOR }, {
  reject: function reject(r) {
    var capability = newPromiseCapabilityModule.f(this);
    var capabilityReject = capability.reject;
    capabilityReject(r);
    return capability.promise;
  }
});

});

// MODULE: ./node_modules/.pnpm/[email protected]/node_modules/core-js/modules/es.promise.resolve.js
var es_promise_resolve_namespaceFn = /*#__PURE__*/__webpack_require__.cw(function(module, exports) {

var $ = (export_namespaceFn());
var getBuiltIn = (get_built_in_namespaceFn());
var IS_PURE = (is_pure_namespaceFn());
var NativePromiseConstructor = (promise_native_constructor_namespaceFn());
var FORCED_PROMISE_CONSTRUCTOR = (promise_constructor_detection_namespaceFn().CONSTRUCTOR);
var promiseResolve = (promise_resolve_namespaceFn());

var PromiseConstructorWrapper = getBuiltIn('Promise');
var CHECK_WRAPPER = IS_PURE && !FORCED_PROMISE_CONSTRUCTOR;

// `Promise.resolve` method
// https://tc39.es/ecma262/#sec-promise.resolve
$({ target: 'Promise', stat: true, forced: IS_PURE || FORCED_PROMISE_CONSTRUCTOR }, {
  resolve: function resolve(x) {
    return promiseResolve(CHECK_WRAPPER && this === PromiseConstructorWrapper ? NativePromiseConstructor : this, x);
  }
});

});

// MODULE: ./node_modules/.pnpm/[email protected]/node_modules/core-js/modules/es.regexp.constructor.js
var es_regexp_constructor_namespaceFn = /*#__PURE__*/__webpack_require__.cw(function(module, exports) {

var DESCRIPTORS = (descriptors_namespaceFn());
var globalThis = (global_this_namespaceFn());
var uncurryThis = (function_uncurry_this_namespaceFn());
var isForced = (is_forced_namespaceFn());
var inheritIfRequired = (inherit_if_required_namespaceFn());
var createNonEnumerableProperty = (create_non_enumerable_property_namespaceFn());
var create = (object_create_namespaceFn());
var getOwnPropertyNames = (object_get_own_property_names_namespaceFn().f);
var isPrototypeOf = (object_is_prototype_of_namespaceFn());
var isRegExp = (is_regexp_namespaceFn());
var toString = (to_string_namespaceFn());
var getRegExpFlags = (regexp_get_flags_namespaceFn());
var stickyHelpers = (regexp_sticky_helpers_namespaceFn());
var proxyAccessor = (proxy_accessor_namespaceFn());
var defineBuiltIn = (define_built_in_namespaceFn());
var fails = (fails_namespaceFn());
var hasOwn = (has_own_property_namespaceFn());
var enforceInternalState = (internal_state_namespaceFn().enforce);
var setSpecies = (set_species_namespaceFn());
var wellKnownSymbol = (well_known_symbol_namespaceFn());
var UNSUPPORTED_DOT_ALL = (regexp_unsupported_dot_all_namespaceFn());
var UNSUPPORTED_NCG = (regexp_unsupported_ncg_namespaceFn());

var MATCH = wellKnownSymbol('match');
var NativeRegExp = globalThis.RegExp;
var RegExpPrototype = NativeRegExp.prototype;
var SyntaxError = globalThis.SyntaxError;
var exec = uncurryThis(RegExpPrototype.exec);
var charAt = uncurryThis(''.charAt);
var replace = uncurryThis(''.replace);
var stringIndexOf = uncurryThis(''.indexOf);
var stringSlice = uncurryThis(''.slice);
// TODO: Use only proper RegExpIdentifierName
var IS_NCG = /^\?<[^\s\d!#%&*+<=>@^][^\s!#%&*+<=>@^]*>/;
var re1 = /a/g;
var re2 = /a/g;

// "new" should create a new object, old webkit bug
var CORRECT_NEW = new NativeRegExp(re1) !== re1;

var MISSED_STICKY = stickyHelpers.MISSED_STICKY;
var UNSUPPORTED_Y = stickyHelpers.UNSUPPORTED_Y;

var BASE_FORCED = DESCRIPTORS &&
  (!CORRECT_NEW || MISSED_STICKY || UNSUPPORTED_DOT_ALL || UNSUPPORTED_NCG || fails(function () {
    re2[MATCH] = false;
    // RegExp constructor can alter flags and IsRegExp works correct with @@match
    // eslint-disable-next-line sonarjs/inconsistent-function-call -- required for testing
    return NativeRegExp(re1) !== re1 || NativeRegExp(re2) === re2 || String(NativeRegExp(re1, 'i')) !== '/a/i';
  }));

var handleDotAll = function (string) {
  var length = string.length;
  var index = 0;
  var result = '';
  var brackets = false;
  var chr;
  for (; index < length; index++) {
    chr = charAt(string, index);
    if (chr === '\\') {
      result += chr + charAt(string, ++index);
      continue;
    }
    if (!brackets && chr === '.') {
      result += '[\\s\\S]';
    } else {
      if (chr === '[') {
        brackets = true;
      } else if (chr === ']') {
        brackets = false;
      } result += chr;
    }
  } return result;
};

var handleNCG = function (string) {
  var length = string.length;
  var index = 0;
  var result = '';
  var named = [];
  var names = create(null);
  var brackets = false;
  var ncg = false;
  var groupid = 0;
  var groupname = '';
  var chr;
  for (; index < length; index++) {
    chr = charAt(string, index);
    if (chr === '\\') {
      chr += charAt(string, ++index);
      // use `\x5c` for escaped backslash to avoid corruption by `\k<name>` to `\N` replacement below
      if (!ncg && charAt(chr, 1) === '\\') {
        result += '\\x5c';
        continue;
      }
    } else if (chr === ']') {
      brackets = false;
    } else if (!brackets) switch (true) {
      case chr === '[':
        brackets = true;
        break;
      case chr === '(':
        result += chr;
        if (exec(IS_NCG, stringSlice(string, index + 1))) {
          index += 2;
          ncg = true;
          groupid++;
        } else if (charAt(string, index + 1) !== '?') {
          groupid++;
        }
        continue;
      case chr === '>' && ncg:
        if (groupname === '' || hasOwn(names, groupname)) {
          throw new SyntaxError('Invalid capture group name');
        }
        names[groupname] = true;
        named[named.length] = [groupname, groupid];
        ncg = false;
        groupname = '';
        continue;
    }
    if (ncg) groupname += chr;
    else result += chr;
  }
  // convert `\k<name>` backreferences to numbered backreferences
  for (var ni = 0; ni < named.length; ni++) {
    var backref = '\\k<' + named[ni][0] + '>';
    var numRef = '\\' + named[ni][1];
    while (stringIndexOf(result, backref) > -1) {
      result = replace(result, backref, numRef);
    }
  } return [result, named];
};

// `RegExp` constructor
// https://tc39.es/ecma262/#sec-regexp-constructor
if (isForced('RegExp', BASE_FORCED)) {
  var RegExpWrapper = function RegExp(pattern, flags) {
    var thisIsRegExp = isPrototypeOf(RegExpPrototype, this);
    var patternIsRegExp = isRegExp(pattern);
    var flagsAreUndefined = flags === undefined;
    var groups = [];
    var rawPattern = pattern;
    var rawFlags, dotAll, sticky, handled, result, state;

    if (!thisIsRegExp && patternIsRegExp && flagsAreUndefined && pattern.constructor === RegExpWrapper) {
      return pattern;
    }

    if (patternIsRegExp || isPrototypeOf(RegExpPrototype, pattern)) {
      pattern = pattern.source;
      if (flagsAreUndefined) flags = getRegExpFlags(rawPattern);
    }

    pattern = pattern === undefined ? '' : toString(pattern);
    flags = flags === undefined ? '' : toString(flags);
    rawPattern = pattern;

    if (UNSUPPORTED_DOT_ALL && 'dotAll' in re1) {
      dotAll = !!flags && stringIndexOf(flags, 's') > -1;
      if (dotAll) flags = replace(flags, /s/g, '');
    }

    rawFlags = flags;

    if (MISSED_STICKY && 'sticky' in re1) {
      sticky = !!flags && stringIndexOf(flags, 'y') > -1;
      if (sticky && UNSUPPORTED_Y) flags = replace(flags, /y/g, '');
    }

    if (UNSUPPORTED_NCG) {
      handled = handleNCG(pattern);
      pattern = handled[0];
      groups = handled[1];
    }

    result = inheritIfRequired(NativeRegExp(pattern, flags), thisIsRegExp ? this : RegExpPrototype, RegExpWrapper);

    if (dotAll || sticky || groups.length) {
      state = enforceInternalState(result);
      if (dotAll) {
        state.dotAll = true;
        state.raw = RegExpWrapper(handleDotAll(pattern), rawFlags);
      }
      if (sticky) state.sticky = true;
      if (groups.length) state.groups = groups;
    }

    if (pattern !== rawPattern) try {
      // fails in old engines, but we have no alternatives for unsupported regex syntax
      createNonEnumerableProperty(result, 'source', rawPattern === '' ? '(?:)' : rawPattern);
    } catch (error) { /* empty */ }

    return result;
  };

  for (var keys = getOwnPropertyNames(NativeRegExp), index = 0; keys.length > index;) {
    proxyAccessor(RegExpWrapper, NativeRegExp, keys[index++]);
  }

  RegExpPrototype.constructor = RegExpWrapper;
  RegExpWrapper.prototype = RegExpPrototype;
  defineBuiltIn(globalThis, 'RegExp', RegExpWrapper, { constructor: true });
}

// https://tc39.es/ecma262/#sec-get-regexp-@@species
setSpecies('RegExp');

});

// MODULE: ./node_modules/.pnpm/[email protected]/node_modules/core-js/modules/es.regexp.dot-all.js
var es_regexp_dot_all_namespaceFn = /*#__PURE__*/__webpack_require__.cw(function(module, exports) {

var DESCRIPTORS = (descriptors_namespaceFn());
var UNSUPPORTED_DOT_ALL = (regexp_unsupported_dot_all_namespaceFn());
var classof = (classof_raw_namespaceFn());
var defineBuiltInAccessor = (define_built_in_accessor_namespaceFn());
var getInternalState = (internal_state_namespaceFn().get);

var RegExpPrototype = RegExp.prototype;
var $TypeError = TypeError;

// `RegExp.prototype.dotAll` getter
// https://tc39.es/ecma262/#sec-get-regexp.prototype.dotall
if (DESCRIPTORS && UNSUPPORTED_DOT_ALL) {
  defineBuiltInAccessor(RegExpPrototype, 'dotAll', {
    configurable: true,
    get: function dotAll() {
      if (this === RegExpPrototype) return;
      // We can't use InternalStateModule.getterFor because
      // we don't add metadata for regexps created by a literal.
      if (classof(this) === 'RegExp') {
        return !!getInternalState(this).dotAll;
      }
      throw new $TypeError('Incompatible receiver, RegExp required');
    }
  });
}

});

// EXTERNAL MODULE: ./node_modules/.pnpm/[email protected]/node_modules/core-js/modules/es.regexp.exec.js
var es_regexp_exec_namespaceFn = () => {
	return __webpack_require__(2758);
};

// MODULE: ./node_modules/.pnpm/[email protected]/node_modules/core-js/modules/es.set.difference.v2.js
var es_set_difference_v2_namespaceFn = /*#__PURE__*/__webpack_require__.cw(function(module, exports) {

var $ = (export_namespaceFn());
var difference = (set_difference_namespaceFn());
var fails = (fails_namespaceFn());
var setMethodAcceptSetLike = (set_method_accept_set_like_namespaceFn());

var SET_LIKE_INCORRECT_BEHAVIOR = !setMethodAcceptSetLike('difference', function (result) {
  return result.size === 0;
});

var FORCED = SET_LIKE_INCORRECT_BEHAVIOR || fails(function () {
  // https://bugs.webkit.org/show_bug.cgi?id=288595
  var setLike = {
    size: 1,
    has: function () { return true; },
    keys: function () {
      var index = 0;
      return {
        next: function () {
          var done = index++ > 1;
          if (baseSet.has(1)) baseSet.clear();
          return { done: done, value: 2 };
        }
      };
    }
  };
  // eslint-disable-next-line es/no-set -- testing
  var baseSet = new Set([1, 2, 3, 4]);
  // eslint-disable-next-line es/no-set-prototype-difference -- testing
  return baseSet.difference(setLike).size !== 3;
});

// `Set.prototype.difference` method
// https://tc39.es/ecma262/#sec-set.prototype.difference
$({ target: 'Set', proto: true, real: true, forced: FORCED }, {
  difference: difference
});

});

// MODULE: ./node_modules/.pnpm/[email protected]/node_modules/core-js/modules/es.set.intersection.v2.js
var es_set_intersection_v2_namespaceFn = /*#__PURE__*/__webpack_require__.cw(function(module, exports) {

var $ = (export_namespaceFn());
var fails = (fails_namespaceFn());
var intersection = (set_intersection_namespaceFn());
var setMethodAcceptSetLike = (set_method_accept_set_like_namespaceFn());

var INCORRECT = !setMethodAcceptSetLike('intersection', function (result) {
  return result.size === 2 && result.has(1) && result.has(2);
}) || fails(function () {
  // eslint-disable-next-line es/no-array-from, es/no-set, es/no-set-prototype-intersection -- testing
  return String(Array.from(new Set([1, 2, 3]).intersection(new Set([3, 2])))) !== '3,2';
});

// `Set.prototype.intersection` method
// https://tc39.es/ecma262/#sec-set.prototype.intersection
$({ target: 'Set', proto: true, real: true, forced: INCORRECT }, {
  intersection: intersection
});

});

// MODULE: ./node_modules/.pnpm/[email protected]/node_modules/core-js/modules/es.set.is-disjoint-from.v2.js
var es_set_is_disjoint_from_v2_namespaceFn = /*#__PURE__*/__webpack_require__.cw(function(module, exports) {

var $ = (export_namespaceFn());
var isDisjointFrom = (set_is_disjoint_from_namespaceFn());
var setMethodAcceptSetLike = (set_method_accept_set_like_namespaceFn());

var INCORRECT = !setMethodAcceptSetLike('isDisjointFrom', function (result) {
  return !result;
});

// `Set.prototype.isDisjointFrom` method
// https://tc39.es/ecma262/#sec-set.prototype.isdisjointfrom
$({ target: 'Set', proto: true, real: true, forced: INCORRECT }, {
  isDisjointFrom: isDisjointFrom
});

});

// MODULE: ./node_modules/.pnpm/[email protected]/node_modules/core-js/modules/es.set.is-subset-of.v2.js
var es_set_is_subset_of_v2_namespaceFn = /*#__PURE__*/__webpack_require__.cw(function(module, exports) {

var $ = (export_namespaceFn());
var isSubsetOf = (set_is_subset_of_namespaceFn());
var setMethodAcceptSetLike = (set_method_accept_set_like_namespaceFn());

var INCORRECT = !setMethodAcceptSetLike('isSubsetOf', function (result) {
  return result;
});

// `Set.prototype.isSubsetOf` method
// https://tc39.es/ecma262/#sec-set.prototype.issubsetof
$({ target: 'Set', proto: true, real: true, forced: INCORRECT }, {
  isSubsetOf: isSubsetOf
});

});

// MODULE: ./node_modules/.pnpm/[email protected]/node_modules/core-js/modules/es.set.is-superset-of.v2.js
var es_set_is_superset_of_v2_namespaceFn = /*#__PURE__*/__webpack_require__.cw(function(module, exports) {

var $ = (export_namespaceFn());
var isSupersetOf = (set_is_superset_of_namespaceFn());
var setMethodAcceptSetLike = (set_method_accept_set_like_namespaceFn());

var INCORRECT = !setMethodAcceptSetLike('isSupersetOf', function (result) {
  return !result;
});

// `Set.prototype.isSupersetOf` method
// https://tc39.es/ecma262/#sec-set.prototype.issupersetof
$({ target: 'Set', proto: true, real: true, forced: INCORRECT }, {
  isSupersetOf: isSupersetOf
});

});

// MODULE: ./node_modules/.pnpm/[email protected]/node_modules/core-js/modules/es.set.symmetric-difference.v2.js
var es_set_symmetric_difference_v2_namespaceFn = /*#__PURE__*/__webpack_require__.cw(function(module, exports) {

var $ = (export_namespaceFn());
var symmetricDifference = (set_symmetric_difference_namespaceFn());
var setMethodGetKeysBeforeCloning = (set_method_get_keys_before_cloning_detection_namespaceFn());
var setMethodAcceptSetLike = (set_method_accept_set_like_namespaceFn());

var FORCED = !setMethodAcceptSetLike('symmetricDifference') || !setMethodGetKeysBeforeCloning('symmetricDifference');

// `Set.prototype.symmetricDifference` method
// https://tc39.es/ecma262/#sec-set.prototype.symmetricdifference
$({ target: 'Set', proto: true, real: true, forced: FORCED }, {
  symmetricDifference: symmetricDifference
});

});

// MODULE: ./node_modules/.pnpm/[email protected]/node_modules/core-js/modules/es.set.union.v2.js
var es_set_union_v2_namespaceFn = /*#__PURE__*/__webpack_require__.cw(function(module, exports) {

var $ = (export_namespaceFn());
var union = (set_union_namespaceFn());
var setMethodGetKeysBeforeCloning = (set_method_get_keys_before_cloning_detection_namespaceFn());
var setMethodAcceptSetLike = (set_method_accept_set_like_namespaceFn());

var FORCED = !setMethodAcceptSetLike('union') || !setMethodGetKeysBeforeCloning('union');

// `Set.prototype.union` method
// https://tc39.es/ecma262/#sec-set.prototype.union
$({ target: 'Set', proto: true, real: true, forced: FORCED }, {
  union: union
});

});

// MODULE: ./node_modules/.pnpm/[email protected]/node_modules/core-js/modules/es.string.ends-with.js
var es_string_ends_with_namespaceFn = /*#__PURE__*/__webpack_require__.cw(function(module, exports) {

var $ = (export_namespaceFn());
var uncurryThis = (function_uncurry_this_clause_namespaceFn());
var getOwnPropertyDescriptor = (object_get_own_property_descriptor_namespaceFn().f);
var toLength = (to_length_namespaceFn());
var toString = (to_string_namespaceFn());
var notARegExp = (not_a_regexp_namespaceFn());
var requireObjectCoercible = (require_object_coercible_namespaceFn());
var correctIsRegExpLogic = (correct_is_regexp_logic_namespaceFn());
var IS_PURE = (is_pure_namespaceFn());

var slice = uncurryThis(''.slice);
var min = Math.min;

var CORRECT_IS_REGEXP_LOGIC = correctIsRegExpLogic('endsWith');
// https://github.com/zloirock/core-js/pull/702
var MDN_POLYFILL_BUG = !IS_PURE && !CORRECT_IS_REGEXP_LOGIC && !!function () {
  var descriptor = getOwnPropertyDescriptor(String.prototype, 'endsWith');
  return descriptor && !descriptor.writable;
}();

// `String.prototype.endsWith` method
// https://tc39.es/ecma262/#sec-string.prototype.endswith
$({ target: 'String', proto: true, forced: !MDN_POLYFILL_BUG && !CORRECT_IS_REGEXP_LOGIC }, {
  endsWith: function endsWith(searchString /* , endPosition = @length */) {
    var that = toString(requireObjectCoercible(this));
    notARegExp(searchString);
    var search = toString(searchString);
    var endPosition = arguments.length > 1 ? arguments[1] : undefined;
    var len = that.length;
    var end = endPosition === undefined ? len : min(toLength(endPosition), len);
    return slice(that, end - search.length, end) === search;
  }
});

});

// MODULE: ./node_modules/.pnpm/[email protected]/node_modules/core-js/modules/es.string.from-code-point.js
var es_string_from_code_point_namespaceFn = /*#__PURE__*/__webpack_require__.cw(function(module, exports) {

var $ = (export_namespaceFn());
var uncurryThis = (function_uncurry_this_namespaceFn());
var toAbsoluteIndex = (to_absolute_index_namespaceFn());

var $RangeError = RangeError;
var fromCharCode = String.fromCharCode;
// eslint-disable-next-line es/no-string-fromcodepoint -- required for testing
var $fromCodePoint = String.fromCodePoint;
var join = uncurryThis([].join);

// length should be 1, old FF problem
var INCORRECT_LENGTH = !!$fromCodePoint && $fromCodePoint.length !== 1;

// `String.fromCodePoint` method
// https://tc39.es/ecma262/#sec-string.fromcodepoint
$({ target: 'String', stat: true, arity: 1, forced: INCORRECT_LENGTH }, {
  // eslint-disable-next-line no-unused-vars -- required for `.length`
  fromCodePoint: function fromCodePoint(x) {
    var elements = [];
    var length = arguments.length;
    var i = 0;
    var code;
    while (length > i) {
      code = +arguments[i];
      if (toAbsoluteIndex(code, 0x10FFFF) !== code) throw new $RangeError(code + ' is not a valid code point');
      elements[i++] = code < 0x10000
        ? fromCharCode(code)
        : fromCharCode(((code -= 0x10000) >> 10) + 0xD800, code % 0x400 + 0xDC00);
    } return join(elements, '');
  }
});

});

// MODULE: ./node_modules/.pnpm/[email protected]/node_modules/core-js/modules/es.string.includes.js
var es_string_includes_namespaceFn = /*#__PURE__*/__webpack_require__.cw(function(module, exports) {

var $ = (export_namespaceFn());
var uncurryThis = (function_uncurry_this_namespaceFn());
var notARegExp = (not_a_regexp_namespaceFn());
var requireObjectCoercible = (require_object_coercible_namespaceFn());
var toString = (to_string_namespaceFn());
var correctIsRegExpLogic = (correct_is_regexp_logic_namespaceFn());

var stringIndexOf = uncurryThis(''.indexOf);

// `String.prototype.includes` method
// https://tc39.es/ecma262/#sec-string.prototype.includes
$({ target: 'String', proto: true, forced: !correctIsRegExpLogic('includes') }, {
  includes: function includes(searchString /* , position = 0 */) {
    return !!~stringIndexOf(
      toString(requireObjectCoercible(this)),
      toString(notARegExp(searchString)),
      arguments.length > 1 ? arguments[1] : undefined
    );
  }
});

});

// MODULE: ./node_modules/.pnpm/[email protected]/node_modules/core-js/modules/es.string.iterator.js
var es_string_iterator_namespaceFn = /*#__PURE__*/__webpack_require__.cw(function(module, exports) {

var charAt = (string_multibyte_namespaceFn()/* charAt */.o);
var toString = (to_string_namespaceFn());
var InternalStateModule = (internal_state_namespaceFn());
var defineIterator = (iterator_define_namespaceFn());
var createIterResultObject = (create_iter_result_object_namespaceFn());

var STRING_ITERATOR = 'String Iterator';
var setInternalState = InternalStateModule.set;
var getInternalState = InternalStateModule.getterFor(STRING_ITERATOR);

// `String.prototype[@@iterator]` method
// https://tc39.es/ecma262/#sec-string.prototype-@@iterator
defineIterator(String, 'String', function (iterated) {
  setInternalState(this, {
    type: STRING_ITERATOR,
    string: toString(iterated),
    index: 0
  });
// `%StringIteratorPrototype%.next` method
// https://tc39.es/ecma262/#sec-%stringiteratorprototype%.next
}, function next() {
  var state = getInternalState(this);
  var string = state.string;
  var index = state.index;
  var point;
  if (index >= string.length) return createIterResultObject(undefined, true);
  point = charAt(string, index);
  state.index += point.length;
  return createIterResultObject(point, false);
});

});

// MODULE: ./node_modules/.pnpm/[email protected]/node_modules/core-js/modules/es.string.match.js
var es_string_match_namespaceFn = /*#__PURE__*/__webpack_require__.cw(function(module, exports) {

var call = (function_call_namespaceFn());
var uncurryThis = (function_uncurry_this_namespaceFn());
var fixRegExpWellKnownSymbolLogic = (fix_regexp_well_known_symbol_logic_namespaceFn());
var anObject = (an_object_namespaceFn());
var isObject = (is_object_namespaceFn());
var toLength = (to_length_namespaceFn());
var toString = (to_string_namespaceFn());
var requireObjectCoercible = (require_object_coercible_namespaceFn());
var getMethod = (get_method_namespaceFn());
var advanceStringIndex = (advance_string_index_namespaceFn());
var getRegExpFlags = (regexp_get_flags_namespaceFn());
var regExpExec = (regexp_exec_abstract_namespaceFn());

var stringIndexOf = uncurryThis(''.indexOf);

// @@match logic
fixRegExpWellKnownSymbolLogic('match', function (MATCH, nativeMatch, maybeCallNative) {
  return [
    // `String.prototype.match` method
    // https://tc39.es/ecma262/#sec-string.prototype.match
    function match(regexp) {
      var O = requireObjectCoercible(this);
      var matcher = isObject(regexp) ? getMethod(regexp, MATCH) : undefined;
      if (matcher) return call(matcher, regexp, O);
      var S = toString(O);
      return new RegExp(regexp)[MATCH](S);
    },
    // `RegExp.prototype[@@match]` method
    // https://tc39.es/ecma262/#sec-regexp.prototype-@@match
    function (string) {
      var rx = anObject(this);
      var S = toString(string);
      var res = maybeCallNative(nativeMatch, rx, S);

      if (res.done) return res.value;

      var flags = toString(getRegExpFlags(rx));

      if (!~stringIndexOf(flags, 'g')) return regExpExec(rx, S);

      var fullUnicode = !!~stringIndexOf(flags, 'u') || !!~stringIndexOf(flags, 'v');
      rx.lastIndex = 0;
      var A = [];
      var n = 0;
      var result;
      while ((result = regExpExec(rx, S)) !== null) {
        var matchStr = toString(result[0]);
        A[n] = matchStr;
        if (matchStr === '') rx.lastIndex = advanceStringIndex(S, toLength(rx.lastIndex), fullUnicode);
        n++;
      }
      return n === 0 ? null : A;
    }
  ];
});

});

// MODULE: ./node_modules/.pnpm/[email protected]/node_modules/core-js/modules/es.string.search.js
var es_string_search_namespaceFn = /*#__PURE__*/__webpack_require__.cw(function(module, exports) {

var call = (function_call_namespaceFn());
var fixRegExpWellKnownSymbolLogic = (fix_regexp_well_known_symbol_logic_namespaceFn());
var anObject = (an_object_namespaceFn());
var isObject = (is_object_namespaceFn());
var requireObjectCoercible = (require_object_coercible_namespaceFn());
var sameValue = (same_value_namespaceFn());
var toString = (to_string_namespaceFn());
var getMethod = (get_method_namespaceFn());
var regExpExec = (regexp_exec_abstract_namespaceFn());

// @@search logic
fixRegExpWellKnownSymbolLogic('search', function (SEARCH, nativeSearch, maybeCallNative) {
  return [
    // `String.prototype.search` method
    // https://tc39.es/ecma262/#sec-string.prototype.search
    function search(regexp) {
      var O = requireObjectCoercible(this);
      var searcher = isObject(regexp) ? getMethod(regexp, SEARCH) : undefined;
      if (searcher) return call(searcher, regexp, O);
      var S = toString(O);
      return new RegExp(regexp)[SEARCH](S);
    },
    // `RegExp.prototype[@@search]` method
    // https://tc39.es/ecma262/#sec-regexp.prototype-@@search
    function (string) {
      var rx = anObject(this);
      var S = toString(string);
      var res = maybeCallNative(nativeSearch, rx, S);

      if (res.done) return res.value;

      var previousLastIndex = rx.lastIndex;
      if (!sameValue(previousLastIndex, 0)) rx.lastIndex = 0;
      var result = regExpExec(rx, S);
      if (!sameValue(rx.lastIndex, previousLastIndex)) rx.lastIndex = previousLastIndex;
      return result === null ? -1 : result.index;
    }
  ];
});

});

// MODULE: ./node_modules/.pnpm/[email protected]/node_modules/core-js/modules/es.string.split.js
var es_string_split_namespaceFn = /*#__PURE__*/__webpack_require__.cw(function(module, exports) {

var call = (function_call_namespaceFn());
var uncurryThis = (function_uncurry_this_namespaceFn());
var fixRegExpWellKnownSymbolLogic = (fix_regexp_well_known_symbol_logic_namespaceFn());
var anObject = (an_object_namespaceFn());
var isObject = (is_object_namespaceFn());
var requireObjectCoercible = (require_object_coercible_namespaceFn());
var speciesConstructor = (species_constructor_namespaceFn());
var advanceStringIndex = (advance_string_index_namespaceFn());
var toLength = (to_length_namespaceFn());
var toString = (to_string_namespaceFn());
var getMethod = (get_method_namespaceFn());
var getRegExpFlags = (regexp_get_flags_namespaceFn());
var regExpExec = (regexp_exec_abstract_namespaceFn());
var stickyHelpers = (regexp_sticky_helpers_namespaceFn());
var fails = (fails_namespaceFn());

var UNSUPPORTED_Y = stickyHelpers.UNSUPPORTED_Y;
var MAX_UINT32 = 0xFFFFFFFF;
var min = Math.min;
var push = uncurryThis([].push);
var stringSlice = uncurryThis(''.slice);
var stringIndexOf = uncurryThis(''.indexOf);

// Chrome 51 has a buggy "split" implementation when RegExp#exec !== nativeExec
// Weex JS has frozen built-in prototypes, so use try / catch wrapper
var SPLIT_WORKS_WITH_OVERWRITTEN_EXEC = !fails(function () {
  // eslint-disable-next-line regexp/no-empty-group -- required for testing
  var re = /(?:)/;
  var originalExec = re.exec;
  re.exec = function () { return originalExec.apply(this, arguments); };
  var result = 'ab'.split(re);
  return result.length !== 2 || result[0] !== 'a' || result[1] !== 'b';
});

var BUGGY = 'abbc'.split(/(b)*/)[1] === 'c' ||
  // eslint-disable-next-line regexp/no-empty-group -- required for testing
  'test'.split(/(?:)/, -1).length !== 4 ||
  'ab'.split(/(?:ab)*/).length !== 2 ||
  '.'.split(/(.?)(.?)/).length !== 4 ||
  // eslint-disable-next-line regexp/no-empty-capturing-group, regexp/no-empty-group -- required for testing
  '.'.split(/()()/).length > 1 ||
  ''.split(/.?/).length;

// @@split logic
fixRegExpWellKnownSymbolLogic('split', function (SPLIT, nativeSplit, maybeCallNative) {
  var internalSplit = '0'.split(undefined, 0).length ? function (separator, limit) {
    return separator === undefined && limit === 0 ? [] : call(nativeSplit, this, separator, limit);
  } : nativeSplit;

  return [
    // `String.prototype.split` method
    // https://tc39.es/ecma262/#sec-string.prototype.split
    function split(separator, limit) {
      var O = requireObjectCoercible(this);
      var splitter = isObject(separator) ? getMethod(separator, SPLIT) : undefined;
      return splitter
        ? call(splitter, separator, O, limit)
        : call(internalSplit, toString(O), separator, limit);
    },
    // `RegExp.prototype[@@split]` method
    // https://tc39.es/ecma262/#sec-regexp.prototype-@@split
    //
    // NOTE: This cannot be properly polyfilled in engines that don't support
    // the 'y' flag.
    function (string, limit) {
      var rx = anObject(this);
      var S = toString(string);

      if (!BUGGY) {
        var res = maybeCallNative(internalSplit, rx, S, limit, internalSplit !== nativeSplit);
        if (res.done) return res.value;
      }

      var C = speciesConstructor(rx, RegExp);
      var flags = toString(getRegExpFlags(rx));
      var unicodeMatching = !!~stringIndexOf(flags, 'u') || !!~stringIndexOf(flags, 'v');
      if (UNSUPPORTED_Y) {
        if (!~stringIndexOf(flags, 'g')) flags += 'g';
      } else if (!~stringIndexOf(flags, 'y')) flags += 'y';
      // ^(? + rx + ) is needed, in combination with some S slicing, to
      // simulate the 'y' flag.
      var splitter = new C(UNSUPPORTED_Y ? '^(?:' + rx.source + ')' : rx, flags);
      var lim = limit === undefined ? MAX_UINT32 : limit >>> 0;
      if (lim === 0) return [];
      if (S.length === 0) return regExpExec(splitter, S) === null ? [S] : [];
      var p = 0;
      var q = 0;
      var A = [];
      while (q < S.length) {
        splitter.lastIndex = UNSUPPORTED_Y ? 0 : q;
        var z = regExpExec(splitter, UNSUPPORTED_Y ? stringSlice(S, q) : S);
        var e;
        if (
          z === null ||
          (e = min(toLength(splitter.lastIndex + (UNSUPPORTED_Y ? q : 0)), S.length)) === p
        ) {
          q = advanceStringIndex(S, q, unicodeMatching);
        } else {
          push(A, stringSlice(S, p, q));
          if (A.length === lim) return A;
          for (var i = 1; i <= z.length - 1; i++) {
            push(A, z[i]);
            if (A.length === lim) return A;
          }
          q = p = e;
        }
      }
      push(A, stringSlice(S, p));
      return A;
    }
  ];
}, BUGGY || !SPLIT_WORKS_WITH_OVERWRITTEN_EXEC, UNSUPPORTED_Y);

});

// MODULE: ./node_modules/.pnpm/[email protected]/node_modules/core-js/modules/es.string.starts-with.js
var es_string_starts_with_namespaceFn = /*#__PURE__*/__webpack_require__.cw(function(module, exports) {

var $ = (export_namespaceFn());
var uncurryThis = (function_uncurry_this_clause_namespaceFn());
var getOwnPropertyDescriptor = (object_get_own_property_descriptor_namespaceFn().f);
var toLength = (to_length_namespaceFn());
var toString = (to_string_namespaceFn());
var notARegExp = (not_a_regexp_namespaceFn());
var requireObjectCoercible = (require_object_coercible_namespaceFn());
var correctIsRegExpLogic = (correct_is_regexp_logic_namespaceFn());
var IS_PURE = (is_pure_namespaceFn());

var stringSlice = uncurryThis(''.slice);
var min = Math.min;

var CORRECT_IS_REGEXP_LOGIC = correctIsRegExpLogic('startsWith');
// https://github.com/zloirock/core-js/pull/702
var MDN_POLYFILL_BUG = !IS_PURE && !CORRECT_IS_REGEXP_LOGIC && !!function () {
  var descriptor = getOwnPropertyDescriptor(String.prototype, 'startsWith');
  return descriptor && !descriptor.writable;
}();

// `String.prototype.startsWith` method
// https://tc39.es/ecma262/#sec-string.prototype.startswith
$({ target: 'String', proto: true, forced: !MDN_POLYFILL_BUG && !CORRECT_IS_REGEXP_LOGIC }, {
  startsWith: function startsWith(searchString /* , position = 0 */) {
    var that = toString(requireObjectCoercible(this));
    notARegExp(searchString);
    var search = toString(searchString);
    var index = toLength(min(arguments.length > 1 ? arguments[1] : undefined, that.length));
    return stringSlice(that, index, index + search.length) === search;
  }
});

});

// MODULE: ./node_modules/.pnpm/[email protected]/node_modules/core-js/modules/es.string.trim.js
var es_string_trim_namespaceFn = /*#__PURE__*/__webpack_require__.cw(function(module, exports) {

var $ = (export_namespaceFn());
var $trim = (string_trim_namespaceFn().Bq);
var forcedStringTrimMethod = (string_trim_forced_namespaceFn());

// `String.prototype.trim` method
// https://tc39.es/ecma262/#sec-string.prototype.trim
$({ target: 'String', proto: true, forced: forcedStringTrimMethod('trim') }, {
  trim: function trim() {
    return $trim(this);
  }
});

});

// MODULE: ./node_modules/.pnpm/[email protected]/node_modules/core-js/modules/es.symbol.async-iterator.js
var es_symbol_async_iterator_namespaceFn = /*#__PURE__*/__webpack_require__.cw(function(module, exports) {

var defineWellKnownSymbol = (well_known_symbol_define_namespaceFn());

// `Symbol.asyncIterator` well-known symbol
// https://tc39.es/ecma262/#sec-symbol.asynciterator
defineWellKnownSymbol('asyncIterator');

});

// MODULE: ./node_modules/.pnpm/[email protected]/node_modules/core-js/modules/es.symbol.description.js
var es_symbol_description_namespaceFn = /*#__PURE__*/__webpack_require__.cw(function(module, exports) {
// `Symbol.prototype.description` getter
// https://tc39.es/ecma262/#sec-symbol.prototype.description

var $ = (export_namespaceFn());
var DESCRIPTORS = (descriptors_namespaceFn());
var globalThis = (global_this_namespaceFn());
var call = (function_call_namespaceFn());
var uncurryThis = (function_uncurry_this_namespaceFn());
var hasOwn = (has_own_property_namespaceFn());
var isCallable = (is_callable_namespaceFn());
var isPrototypeOf = (object_is_prototype_of_namespaceFn());
var toString = (to_string_namespaceFn());
var defineBuiltInAccessor = (define_built_in_accessor_namespaceFn());
var copyConstructorProperties = (copy_constructor_properties_namespaceFn());

var NativeSymbol = globalThis.Symbol;
var SymbolPrototype = NativeSymbol && NativeSymbol.prototype;

if (DESCRIPTORS && isCallable(NativeSymbol) && (!('description' in SymbolPrototype) ||
  // Safari 12 bug
  NativeSymbol().description !== undefined
)) {
  var EmptyStringDescriptionStore = {};
  // wrap Symbol constructor for correct work with undefined description
  var SymbolWrapper = function Symbol() {
    var description = arguments.length < 1 || arguments[0] === undefined ? undefined : toString(arguments[0]);
    var result = isPrototypeOf(SymbolPrototype, this)
      // eslint-disable-next-line sonarjs/inconsistent-function-call -- ok
      ? new NativeSymbol(description)
      // in Edge 13, String(Symbol(undefined)) === 'Symbol(undefined)'
      : description === undefined ? NativeSymbol() : NativeSymbol(description);
    if (description === '') EmptyStringDescriptionStore[result] = true;
    return result;
  };

  copyConstructorProperties(SymbolWrapper, NativeSymbol);
  // wrap Symbol.for for correct handling of empty string descriptions
  var nativeFor = SymbolWrapper['for'];
  SymbolWrapper['for'] = { 'for': function (key) {
    var stringKey = toString(key);
    var symbol = call(nativeFor, this, stringKey);
    if (stringKey === '') EmptyStringDescriptionStore[symbol] = true;
    return symbol;
  } }['for'];
  SymbolWrapper.prototype = SymbolPrototype;
  SymbolPrototype.constructor = SymbolWrapper;

  var NATIVE_SYMBOL = String(NativeSymbol('description detection')) === 'Symbol(description detection)';
  var thisSymbolValue = uncurryThis(SymbolPrototype.valueOf);
  var symbolDescriptiveString = uncurryThis(SymbolPrototype.toString);
  var regexp = /^Symbol\((.*)\)[^)]+$/;
  var replace = uncurryThis(''.replace);
  var stringSlice = uncurryThis(''.slice);

  defineBuiltInAccessor(SymbolPrototype, 'description', {
    configurable: true,
    get: function description() {
      var symbol = thisSymbolValue(this);
      if (hasOwn(EmptyStringDescriptionStore, symbol)) return '';
      var string = symbolDescriptiveString(symbol);
      var desc = NATIVE_SYMBOL ? stringSlice(string, 7, -1) : replace(string, regexp, '$1');
      return desc === '' ? undefined : desc;
    }
  });

  $({ global: true, constructor: true, forced: true }, {
    Symbol: SymbolWrapper
  });
}

});

// MODULE: ./node_modules/.pnpm/[email protected]/node_modules/core-js/modules/es.typed-array.at.js
var es_typed_array_at_namespaceFn = /*#__PURE__*/__webpack_require__.cw(function(module, exports) {

var ArrayBufferViewCore = (array_buffer_view_core_namespaceFn());
var lengthOfArrayLike = (length_of_array_like_namespaceFn());
var toIntegerOrInfinity = (to_integer_or_infinity_namespaceFn());

var aTypedArray = ArrayBufferViewCore.aTypedArray;
var exportTypedArrayMethod = ArrayBufferViewCore.exportTypedArrayMethod;

// `%TypedArray%.prototype.at` method
// https://tc39.es/ecma262/#sec-%typedarray%.prototype.at
exportTypedArrayMethod('at', function at(index) {
  var O = aTypedArray(this);
  var len = lengthOfArrayLike(O);
  var relativeIndex = toIntegerOrInfinity(index);
  var k = relativeIndex >= 0 ? relativeIndex : len + relativeIndex;
  return (k < 0 || k >= len) ? undefined : O[k];
});

});

// MODULE: ./node_modules/.pnpm/[email protected]/node_modules/core-js/modules/es.typed-array.fill.js
var es_typed_array_fill_namespaceFn = /*#__PURE__*/__webpack_require__.cw(function(module, exports) {

var ArrayBufferViewCore = (array_buffer_view_core_namespaceFn());
var $fill = (array_fill_namespaceFn());
var toBigInt = (to_big_int_namespaceFn());
var classof = (classof_namespaceFn());
var call = (function_call_namespaceFn());
var uncurryThis = (function_uncurry_this_namespaceFn());
var fails = (fails_namespaceFn());

var aTypedArray = ArrayBufferViewCore.aTypedArray;
var exportTypedArrayMethod = ArrayBufferViewCore.exportTypedArrayMethod;
var slice = uncurryThis(''.slice);

// V8 ~ Chrome < 59, Safari < 14.1, FF < 55, Edge <=18
var CONVERSION_BUG = fails(function () {
  var count = 0;
  // eslint-disable-next-line es/no-typed-arrays -- safe
  new Int8Array(2).fill({ valueOf: function () { return count++; } });
  return count !== 1;
});

// `%TypedArray%.prototype.fill` method
// https://tc39.es/ecma262/#sec-%typedarray%.prototype.fill
exportTypedArrayMethod('fill', function fill(value /* , start, end */) {
  var length = arguments.length;
  aTypedArray(this);
  var actualValue = slice(classof(this), 0, 3) === 'Big' ? toBigInt(value) : +value;
  return call($fill, this, actualValue, length > 1 ? arguments[1] : undefined, length > 2 ? arguments[2] : undefined);
}, CONVERSION_BUG);

});

// MODULE: ./node_modules/.pnpm/[email protected]/node_modules/core-js/modules/es.typed-array.find-last-index.js
var es_typed_array_find_last_index_namespaceFn = /*#__PURE__*/__webpack_require__.cw(function(module, exports) {

var ArrayBufferViewCore = (array_buffer_view_core_namespaceFn());
var $findLastIndex = (array_iteration_from_last_namespaceFn().K);

var aTypedArray = ArrayBufferViewCore.aTypedArray;
var exportTypedArrayMethod = ArrayBufferViewCore.exportTypedArrayMethod;

// `%TypedArray%.prototype.findLastIndex` method
// https://tc39.es/ecma262/#sec-%typedarray%.prototype.findlastindex
exportTypedArrayMethod('findLastIndex', function findLastIndex(predicate /* , thisArg */) {
  return $findLastIndex(aTypedArray(this), predicate, arguments.length > 1 ? arguments[1] : undefined);
});

});

// MODULE: ./node_modules/.pnpm/[email protected]/node_modules/core-js/modules/es.typed-array.find-last.js
var es_typed_array_find_last_namespaceFn = /*#__PURE__*/__webpack_require__.cw(function(module, exports) {

var ArrayBufferViewCore = (array_buffer_view_core_namespaceFn());
var $findLast = (array_iteration_from_last_namespaceFn().U);

var aTypedArray = ArrayBufferViewCore.aTypedArray;
var exportTypedArrayMethod = ArrayBufferViewCore.exportTypedArrayMethod;

// `%TypedArray%.prototype.findLast` method
// https://tc39.es/ecma262/#sec-%typedarray%.prototype.findlast
exportTypedArrayMethod('findLast', function findLast(predicate /* , thisArg */) {
  return $findLast(aTypedArray(this), predicate, arguments.length > 1 ? arguments[1] : undefined);
});

});

// MODULE: ./node_modules/.pnpm/[email protected]/node_modules/core-js/modules/es.typed-array.set.js
var es_typed_array_set_namespaceFn = /*#__PURE__*/__webpack_require__.cw(function(module, exports) {

var globalThis = (global_this_namespaceFn());
var call = (function_call_namespaceFn());
var ArrayBufferViewCore = (array_buffer_view_core_namespaceFn());
var lengthOfArrayLike = (length_of_array_like_namespaceFn());
var toOffset = (to_offset_namespaceFn());
var toIndexedObject = (to_object_namespaceFn());
var fails = (fails_namespaceFn());

var RangeError = globalThis.RangeError;
var Int8Array = globalThis.Int8Array;
var Int8ArrayPrototype = Int8Array && Int8Array.prototype;
var $set = Int8ArrayPrototype && Int8ArrayPrototype.set;
var aTypedArray = ArrayBufferViewCore.aTypedArray;
var exportTypedArrayMethod = ArrayBufferViewCore.exportTypedArrayMethod;

var WORKS_WITH_OBJECTS_AND_GENERIC_ON_TYPED_ARRAYS = !fails(function () {
  // eslint-disable-next-line es/no-typed-arrays -- required for testing
  var array = new Uint8ClampedArray(2);
  call($set, array, { length: 1, 0: 3 }, 1);
  return array[1] !== 3;
});

// https://bugs.chromium.org/p/v8/issues/detail?id=11294 and other
var TO_OBJECT_BUG = WORKS_WITH_OBJECTS_AND_GENERIC_ON_TYPED_ARRAYS && ArrayBufferViewCore.NATIVE_ARRAY_BUFFER_VIEWS && fails(function () {
  var array = new Int8Array(2);
  array.set(1);
  array.set('2', 1);
  return array[0] !== 0 || array[1] !== 2;
});

// `%TypedArray%.prototype.set` method
// https://tc39.es/ecma262/#sec-%typedarray%.prototype.set
exportTypedArrayMethod('set', function set(arrayLike /* , offset */) {
  aTypedArray(this);
  var offset = toOffset(arguments.length > 1 ? arguments[1] : undefined, 1);
  var src = toIndexedObject(arrayLike);
  if (WORKS_WITH_OBJECTS_AND_GENERIC_ON_TYPED_ARRAYS) return call($set, this, src, offset);
  var length = this.length;
  var len = lengthOfArrayLike(src);
  var index = 0;
  if (len + offset > length) throw new RangeError('Wrong length');
  while (index < len) this[offset + index] = src[index++];
}, !WORKS_WITH_OBJECTS_AND_GENERIC_ON_TYPED_ARRAYS || TO_OBJECT_BUG);

});

// MODULE: ./node_modules/.pnpm/[email protected]/node_modules/core-js/modules/es.typed-array.sort.js
var es_typed_array_sort_namespaceFn = /*#__PURE__*/__webpack_require__.cw(function(module, exports) {

var globalThis = (global_this_namespaceFn());
var uncurryThis = (function_uncurry_this_clause_namespaceFn());
var fails = (fails_namespaceFn());
var aCallable = (a_callable_namespaceFn());
var internalSort = (array_sort_namespaceFn());
var ArrayBufferViewCore = (array_buffer_view_core_namespaceFn());
var FF = (environment_ff_version_namespaceFn());
var IE_OR_EDGE = (environment_is_ie_or_edge_namespaceFn());
var V8 = (environment_v8_version_namespaceFn());
var WEBKIT = (environment_webkit_version_namespaceFn());

var aTypedArray = ArrayBufferViewCore.aTypedArray;
var exportTypedArrayMethod = ArrayBufferViewCore.exportTypedArrayMethod;
var Uint16Array = globalThis.Uint16Array;
var nativeSort = Uint16Array && uncurryThis(Uint16Array.prototype.sort);

// WebKit
var ACCEPT_INCORRECT_ARGUMENTS = !!nativeSort && !(fails(function () {
  nativeSort(new Uint16Array(2), null);
}) && fails(function () {
  nativeSort(new Uint16Array(2), {});
}));

var STABLE_SORT = !!nativeSort && !fails(function () {
  // feature detection can be too slow, so check engines versions
  if (V8) return V8 < 74;
  if (FF) return FF < 67;
  if (IE_OR_EDGE) return true;
  if (WEBKIT) return WEBKIT < 602;

  var array = new Uint16Array(516);
  var expected = Array(516);
  var index, mod;

  for (index = 0; index < 516; index++) {
    mod = index % 4;
    array[index] = 515 - index;
    expected[index] = index - 2 * mod + 3;
  }

  nativeSort(array, function (a, b) {
    return (a / 4 | 0) - (b / 4 | 0);
  });

  for (index = 0; index < 516; index++) {
    if (array[index] !== expected[index]) return true;
  }
});

var getSortCompare = function (comparefn) {
  return function (x, y) {
    if (comparefn !== undefined) return +comparefn(x, y) || 0;
    // eslint-disable-next-line no-self-compare -- NaN check
    if (y !== y) return x !== x ? 0 : -1;
    // eslint-disable-next-line no-self-compare -- NaN check
    if (x !== x) return 1;
    if (x === 0 && y === 0) return 1 / x > 0 ? (1 / y > 0 ? 0 : 1) : (1 / y > 0 ? -1 : 0);
    return x > y ? 1 : x < y ? -1 : 0;
  };
};

// `%TypedArray%.prototype.sort` method
// https://tc39.es/ecma262/#sec-%typedarray%.prototype.sort
exportTypedArrayMethod('sort', function sort(comparefn) {
  if (comparefn !== undefined) aCallable(comparefn);
  if (STABLE_SORT) return nativeSort(this, comparefn);

  return internalSort(aTypedArray(this), getSortCompare(comparefn));
}, !STABLE_SORT || ACCEPT_INCORRECT_ARGUMENTS);

});

// MODULE: ./node_modules/.pnpm/[email protected]/node_modules/core-js/modules/es.typed-array.to-locale-string.js
var es_typed_array_to_locale_string_namespaceFn = /*#__PURE__*/__webpack_require__.cw(function(module, exports) {

var globalThis = (global_this_namespaceFn());
var apply = (function_apply_namespaceFn());
var ArrayBufferViewCore = (array_buffer_view_core_namespaceFn());
var fails = (fails_namespaceFn());
var arraySlice = (array_slice_namespaceFn());

var Int8Array = globalThis.Int8Array;
var aTypedArray = ArrayBufferViewCore.aTypedArray;
var exportTypedArrayMethod = ArrayBufferViewCore.exportTypedArrayMethod;
var $toLocaleString = [].toLocaleString;

// iOS Safari 6.x fails here
var TO_LOCALE_STRING_BUG = !!Int8Array && fails(function () {
  $toLocaleString.call(new Int8Array(1));
});

var FORCED = fails(function () {
  return [1, 2].toLocaleString() !== new Int8Array([1, 2]).toLocaleString();
}) || !fails(function () {
  Int8Array.prototype.toLocaleString.call([1, 2]);
});

// `%TypedArray%.prototype.toLocaleString` method
// https://tc39.es/ecma262/#sec-%typedarray%.prototype.tolocalestring
exportTypedArrayMethod('toLocaleString', function toLocaleString() {
  return apply(
    $toLocaleString,
    TO_LOCALE_STRING_BUG ? arraySlice(aTypedArray(this)) : aTypedArray(this),
    arraySlice(arguments)
  );
}, FORCED);

});

// MODULE: ./node_modules/.pnpm/[email protected]/node_modules/core-js/modules/es.typed-array.to-reversed.js
var es_typed_array_to_reversed_namespaceFn = /*#__PURE__*/__webpack_require__.cw(function(module, exports) {

var lengthOfArrayLike = (length_of_array_like_namespaceFn());
var ArrayBufferViewCore = (array_buffer_view_core_namespaceFn());

var aTypedArray = ArrayBufferViewCore.aTypedArray;
var exportTypedArrayMethod = ArrayBufferViewCore.exportTypedArrayMethod;
var getTypedArrayConstructor = ArrayBufferViewCore.getTypedArrayConstructor;

// `%TypedArray%.prototype.toReversed` method
// https://tc39.es/ecma262/#sec-%typedarray%.prototype.toreversed
exportTypedArrayMethod('toReversed', function toReversed() {
  var O = aTypedArray(this);
  var len = lengthOfArrayLike(O);
  var A = new (getTypedArrayConstructor(O))(len);
  var k = 0;
  for (; k < len; k++) A[k] = O[len - k - 1];
  return A;
});

});

// MODULE: ./node_modules/.pnpm/[email protected]/node_modules/core-js/modules/es.typed-array.to-sorted.js
var es_typed_array_to_sorted_namespaceFn = /*#__PURE__*/__webpack_require__.cw(function(module, exports) {

var ArrayBufferViewCore = (array_buffer_view_core_namespaceFn());
var uncurryThis = (function_uncurry_this_namespaceFn());
var aCallable = (a_callable_namespaceFn());
var arrayFromConstructorAndList = (array_from_constructor_and_list_namespaceFn());

var aTypedArray = ArrayBufferViewCore.aTypedArray;
var getTypedArrayConstructor = ArrayBufferViewCore.getTypedArrayConstructor;
var exportTypedArrayMethod = ArrayBufferViewCore.exportTypedArrayMethod;
var sort = uncurryThis(ArrayBufferViewCore.TypedArrayPrototype.sort);

// `%TypedArray%.prototype.toSorted` method
// https://tc39.es/ecma262/#sec-%typedarray%.prototype.tosorted
exportTypedArrayMethod('toSorted', function toSorted(compareFn) {
  if (compareFn !== undefined) aCallable(compareFn);
  var O = aTypedArray(this);
  var A = arrayFromConstructorAndList(getTypedArrayConstructor(O), O);
  return sort(A, compareFn);
});

});

// MODULE: ./node_modules/.pnpm/[email protected]/node_modules/core-js/modules/es.typed-array.uint8-array.js
var es_typed_array_uint8_array_namespaceFn = /*#__PURE__*/__webpack_require__.cw(function(module, exports) {

var createTypedArrayConstructor = (typed_array_constructor_namespaceFn());

// `Uint8Array` constructor
// https://tc39.es/ecma262/#sec-typedarray-objects
createTypedArrayConstructor('Uint8', function (init) {
  return function Uint8Array(data, byteOffset, length) {
    return init(this, data, byteOffset, length);
  };
});

});

// MODULE: ./node_modules/.pnpm/[email protected]/node_modules/core-js/modules/es.typed-array.with.js
var es_typed_array_with_namespaceFn = /*#__PURE__*/__webpack_require__.cw(function(module, exports) {

var ArrayBufferViewCore = (array_buffer_view_core_namespaceFn());
var isBigIntArray = (is_big_int_array_namespaceFn());
var lengthOfArrayLike = (length_of_array_like_namespaceFn());
var toIntegerOrInfinity = (to_integer_or_infinity_namespaceFn());
var toBigInt = (to_big_int_namespaceFn());

var aTypedArray = ArrayBufferViewCore.aTypedArray;
var getTypedArrayConstructor = ArrayBufferViewCore.getTypedArrayConstructor;
var exportTypedArrayMethod = ArrayBufferViewCore.exportTypedArrayMethod;

var $RangeError = RangeError;

var PROPER_ORDER = function () {
  try {
    // eslint-disable-next-line no-throw-literal, es/no-typed-arrays, es/no-array-prototype-with -- required for testing
    new Int8Array(1)['with'](2, { valueOf: function () { throw 8; } });
  } catch (error) {
    // some early implementations, like WebKit, does not follow the final semantic
    // https://github.com/tc39/proposal-change-array-by-copy/pull/86
    return error === 8;
  }
}();

// Bug in WebKit. It should truncate a negative fractional index to zero, but instead throws an error
var THROW_ON_NEGATIVE_FRACTIONAL_INDEX = PROPER_ORDER && function () {
  try {
    // eslint-disable-next-line es/no-typed-arrays, es/no-array-prototype-with -- required for testing
    new Int8Array(1)['with'](-0.5, 1);
  } catch (error) {
    return true;
  }
}();

// `%TypedArray%.prototype.with` method
// https://tc39.es/ecma262/#sec-%typedarray%.prototype.with
exportTypedArrayMethod('with', { 'with': function (index, value) {
  var O = aTypedArray(this);
  var len = lengthOfArrayLike(O);
  var relativeIndex = toIntegerOrInfinity(index);
  var actualIndex = relativeIndex < 0 ? len + relativeIndex : relativeIndex;
  var numericValue = isBigIntArray(O) ? toBigInt(value) : +value;
  if (actualIndex >= len || actualIndex < 0) throw new $RangeError('Incorrect index');
  var A = new (getTypedArrayConstructor(O))(len);
  var k = 0;
  for (; k < len; k++) A[k] = k === actualIndex ? numericValue : O[k];
  return A;
} }['with'], !PROPER_ORDER || THROW_ON_NEGATIVE_FRACTIONAL_INDEX);

});

// MODULE: ./node_modules/.pnpm/[email protected]/node_modules/core-js/modules/es.uint8-array.set-from-base64.js
var es_uint8_array_set_from_base64_namespaceFn = /*#__PURE__*/__webpack_require__.cw(function(module, exports) {

var $ = (export_namespaceFn());
var globalThis = (global_this_namespaceFn());
var $fromBase64 = (uint8_from_base64_namespaceFn());
var anUint8Array = (an_uint8_array_namespaceFn());

var Uint8Array = globalThis.Uint8Array;

var INCORRECT_BEHAVIOR_OR_DOESNT_EXISTS = !Uint8Array || !Uint8Array.prototype.setFromBase64 || !function () {
  var target = new Uint8Array([255, 255, 255, 255, 255]);
  try {
    target.setFromBase64('', null);
    return;
  } catch (error) { /* empty */ }
  // Webkit not throw an error on odd length string
  try {
    target.setFromBase64('a');
    return;
  } catch (error) { /* empty */ }
  try {
    target.setFromBase64('MjYyZg===');
  } catch (error) {
    return target[0] === 50 && target[1] === 54 && target[2] === 50 && target[3] === 255 && target[4] === 255;
  }
}();

// `Uint8Array.prototype.setFromBase64` method
// https://tc39.es/ecma262/#sec-uint8array.prototype.setfrombase64
if (Uint8Array) $({ target: 'Uint8Array', proto: true, forced: INCORRECT_BEHAVIOR_OR_DOESNT_EXISTS }, {
  setFromBase64: function setFromBase64(string /* , options */) {
    anUint8Array(this);

    var result = $fromBase64(string, arguments.length > 1 ? arguments[1] : undefined, this, this.length);

    return { read: result.read, written: result.written };
  }
});

});

// MODULE: ./node_modules/.pnpm/[email protected]/node_modules/core-js/modules/es.uint8-array.set-from-hex.js
var es_uint8_array_set_from_hex_namespaceFn = /*#__PURE__*/__webpack_require__.cw(function(module, exports) {

var $ = (export_namespaceFn());
var globalThis = (global_this_namespaceFn());
var aString = (a_string_namespaceFn());
var anUint8Array = (an_uint8_array_namespaceFn());
var notDetached = (array_buffer_not_detached_namespaceFn());
var $fromHex = (uint8_from_hex_namespaceFn());

// Should not throw an error on length-tracking views over ResizableArrayBuffer
// https://issues.chromium.org/issues/454630441
function throwsOnLengthTrackingView() {
  try {
    // eslint-disable-next-line es/no-resizable-and-growable-arraybuffers -- required for testing
    var rab = new ArrayBuffer(16, { maxByteLength: 1024 });
    // eslint-disable-next-line es/no-uint8array-prototype-setfromhex, es/no-typed-arrays -- required for testing
    new Uint8Array(rab).setFromHex('cafed00d');
  } catch (error) {
    return true;
  }
}

// `Uint8Array.prototype.setFromHex` method
// https://tc39.es/ecma262/#sec-uint8array.prototype.setfromhex
if (globalThis.Uint8Array) $({ target: 'Uint8Array', proto: true, forced: throwsOnLengthTrackingView() }, {
  setFromHex: function setFromHex(string) {
    anUint8Array(this);
    aString(string);
    notDetached(this.buffer);
    var read = $fromHex(string, this).read;
    return { read: read, written: read / 2 };
  }
});

});

// MODULE: ./node_modules/.pnpm/[email protected]/node_modules/core-js/modules/es.uint8-array.to-base64.js
var es_uint8_array_to_base64_namespaceFn = /*#__PURE__*/__webpack_require__.cw(function(module, exports) {

/* eslint-disable no-useless-assignment -- false positive for [index++] syntax */
var $ = (export_namespaceFn());
var globalThis = (global_this_namespaceFn());
var uncurryThis = (function_uncurry_this_namespaceFn());
var anObjectOrUndefined = (an_object_or_undefined_namespaceFn());
var anUint8Array = (an_uint8_array_namespaceFn());
var notDetached = (array_buffer_not_detached_namespaceFn());
var base64Map = (base64_map_namespaceFn());
var getAlphabetOption = (get_alphabet_option_namespaceFn());

var base64Alphabet = base64Map.i2c;
var base64UrlAlphabet = base64Map.i2cUrl;
var $floor = Math.floor;
var $ceil = Math.ceil;

var charAt = uncurryThis(''.charAt);

var Uint8Array = globalThis.Uint8Array;
var $Array = globalThis.Array;
var join = uncurryThis([].join);

var INCORRECT_BEHAVIOR_OR_DOESNT_EXISTS = !Uint8Array || !Uint8Array.prototype.toBase64 || !function () {
  try {
    var target = new Uint8Array();
    target.toBase64(null);
  } catch (error) {
    return true;
  }
}();

// `Uint8Array.prototype.toBase64` method
// https://tc39.es/ecma262/#sec-uint8array.prototype.tobase64
if (Uint8Array) $({ target: 'Uint8Array', proto: true, forced: INCORRECT_BEHAVIOR_OR_DOESNT_EXISTS }, {
  toBase64: function toBase64(/* options */) {
    var array = anUint8Array(this);
    var options = arguments.length ? anObjectOrUndefined(arguments[0]) : undefined;
    var alphabet = getAlphabetOption(options) === 'base64' ? base64Alphabet : base64UrlAlphabet;
    var omitPadding = !!options && !!options.omitPadding;
    notDetached(this.buffer);

    var i = 0;
    var length = array.length;
    var result = $Array(omitPadding ? $floor(length / 3) * 4 + (length % 3 ? length % 3 + 1 : 0) : $ceil(length / 3) * 4);
    var written = 0;
    var triplet;

    var at = function (shift) {
      return charAt(alphabet, (triplet >> (6 * shift)) & 63);
    };

    for (; i + 2 < length; i += 3) {
      triplet = (array[i] << 16) + (array[i + 1] << 8) + array[i + 2];
      result[written++] = at(3);
      result[written++] = at(2);
      result[written++] = at(1);
      result[written++] = at(0);
    }
    if (i + 2 === length) {
      triplet = (array[i] << 16) + (array[i + 1] << 8);
      result[written++] = at(3);
      result[written++] = at(2);
      result[written++] = at(1);
      if (!omitPadding) result[written++] = '=';
    } else if (i + 1 === length) {
      triplet = array[i] << 16;
      result[written++] = at(3);
      result[written++] = at(2);
      if (!omitPadding) {
        result[written++] = '=';
        result[written++] = '=';
      }
    }

    return join(result, '');
  }
});

});

// MODULE: ./node_modules/.pnpm/[email protected]/node_modules/core-js/modules/es.uint8-array.to-hex.js
var es_uint8_array_to_hex_namespaceFn = /*#__PURE__*/__webpack_require__.cw(function(module, exports) {

var $ = (export_namespaceFn());
var globalThis = (global_this_namespaceFn());
var uncurryThis = (function_uncurry_this_namespaceFn());
var anUint8Array = (an_uint8_array_namespaceFn());
var notDetached = (array_buffer_not_detached_namespaceFn());

var numberToString = uncurryThis(1.1.toString);
var join = uncurryThis([].join);
var $Array = Array;

var Uint8Array = globalThis.Uint8Array;

var INCORRECT_BEHAVIOR_OR_DOESNT_EXISTS = !Uint8Array || !Uint8Array.prototype.toHex || !(function () {
  try {
    var target = new Uint8Array([255, 255, 255, 255, 255, 255, 255, 255]);
    return target.toHex() === 'ffffffffffffffff';
  } catch (error) {
    return false;
  }
})();

// `Uint8Array.prototype.toHex` method
// https://tc39.es/ecma262/#sec-uint8array.prototype.tohex
if (Uint8Array) $({ target: 'Uint8Array', proto: true, forced: INCORRECT_BEHAVIOR_OR_DOESNT_EXISTS }, {
  toHex: function toHex() {
    anUint8Array(this);
    notDetached(this.buffer);
    var result = $Array(this.length);
    for (var i = 0, length = this.length; i < length; i++) {
      var hex = numberToString(this[i], 16);
      result[i] = hex.length === 1 ? '0' + hex : hex;
    }
    return join(result, '');
  }
});

});

// MODULE: ./node_modules/.pnpm/[email protected]/node_modules/core-js/modules/es.weak-map.get-or-insert-computed.js
var es_weak_map_get_or_insert_computed_namespaceFn = /*#__PURE__*/__webpack_require__.cw(function(module, exports) {

var $ = (export_namespaceFn());
var aCallable = (a_callable_namespaceFn());
var aWeakMap = (a_weak_map_namespaceFn());
var aWeakKey = (a_weak_key_namespaceFn());
var WeakMapHelpers = (weak_map_helpers_namespaceFn());
var IS_PURE = (is_pure_namespaceFn());

var get = WeakMapHelpers.get;
var has = WeakMapHelpers.has;
var set = WeakMapHelpers.set;

var FORCED = IS_PURE || !function () {
  try {
    // eslint-disable-next-line es/no-weak-map, no-throw-literal -- testing
    if (WeakMap.prototype.getOrInsertComputed) new WeakMap().getOrInsertComputed(1, function () { throw 1; });
  } catch (error) {
    // FF144 Nightly - Beta 3 bug
    // https://bugzilla.mozilla.org/show_bug.cgi?id=1988369
    return error instanceof TypeError;
  }
}();

// `WeakMap.prototype.getOrInsertComputed` method
// https://tc39.es/ecma262/#sec-weakmap.prototype.getorinsertcomputed
$({ target: 'WeakMap', proto: true, real: true, forced: FORCED }, {
  getOrInsertComputed: function getOrInsertComputed(key, callbackfn) {
    if (!IS_PURE) aWeakMap(this);
    aWeakKey(key);
    aCallable(callbackfn);
    if (has(this, key)) return get(this, key);
    var value = callbackfn(key);
    set(this, key, value);
    return value;
  }
});

});

// MODULE: ./node_modules/.pnpm/[email protected]/node_modules/core-js/modules/es.weak-map.get-or-insert.js
var es_weak_map_get_or_insert_namespaceFn = /*#__PURE__*/__webpack_require__.cw(function(module, exports) {

var $ = (export_namespaceFn());
var WeakMapHelpers = (weak_map_helpers_namespaceFn());
var IS_PURE = (is_pure_namespaceFn());

var get = WeakMapHelpers.get;
var has = WeakMapHelpers.has;
var set = WeakMapHelpers.set;

// `WeakMap.prototype.getOrInsert` method
// https://tc39.es/ecma262/#sec-weakmap.prototype.getorinsert
$({ target: 'WeakMap', proto: true, real: true, forced: IS_PURE }, {
  getOrInsert: function getOrInsert(key, value) {
    if (has(this, key)) return get(this, key);
    set(this, key, value);
    return value;
  }
});

});

// MODULE: ./node_modules/.pnpm/[email protected]/node_modules/core-js/modules/web.dom-collections.iterator.js
var web_dom_collections_iterator_namespaceFn = /*#__PURE__*/__webpack_require__.cw(function(module, exports) {

var globalThis = (global_this_namespaceFn());
var DOMIterables = (dom_iterables_namespaceFn());
var DOMTokenListPrototype = (dom_token_list_prototype_namespaceFn());
var ArrayIteratorMethods = (es_array_iterator_namespaceFn());
var createNonEnumerableProperty = (create_non_enumerable_property_namespaceFn());
var setToStringTag = (set_to_string_tag_namespaceFn());
var wellKnownSymbol = (well_known_symbol_namespaceFn());

var ITERATOR = wellKnownSymbol('iterator');
var ArrayValues = ArrayIteratorMethods.values;

var handlePrototype = function (CollectionPrototype, COLLECTION_NAME) {
  if (CollectionPrototype) {
    // some Chrome versions have non-configurable methods on DOMTokenList
    if (CollectionPrototype[ITERATOR] !== ArrayValues) try {
      createNonEnumerableProperty(CollectionPrototype, ITERATOR, ArrayValues);
    } catch (error) {
      CollectionPrototype[ITERATOR] = ArrayValues;
    }
    setToStringTag(CollectionPrototype, COLLECTION_NAME, true);
    if (DOMIterables[COLLECTION_NAME]) for (var METHOD_NAME in ArrayIteratorMethods) {
      // some Chrome versions have non-configurable methods on DOMTokenList
      if (CollectionPrototype[METHOD_NAME] !== ArrayIteratorMethods[METHOD_NAME]) try {
        createNonEnumerableProperty(CollectionPrototype, METHOD_NAME, ArrayIteratorMethods[METHOD_NAME]);
      } catch (error) {
        CollectionPrototype[METHOD_NAME] = ArrayIteratorMethods[METHOD_NAME];
      }
    }
  }
};

for (var COLLECTION_NAME in DOMIterables) {
  handlePrototype(globalThis[COLLECTION_NAME] && globalThis[COLLECTION_NAME].prototype, COLLECTION_NAME);
}

handlePrototype(DOMTokenListPrototype, 'DOMTokenList');

});

// MODULE: ./node_modules/.pnpm/[email protected]/node_modules/core-js/modules/web.url-search-params.constructor.js
var web_url_search_params_constructor_namespaceFn = /*#__PURE__*/__webpack_require__.cw(function(module, exports) {

// TODO: in core-js@4, move /modules/ dependencies to public entries for better optimization by tools like `preset-env`
(es_array_iterator_namespaceFn());
var $ = (export_namespaceFn());
var globalThis = (global_this_namespaceFn());
var safeGetBuiltIn = (safe_get_built_in_namespaceFn());
var call = (function_call_namespaceFn());
var uncurryThis = (function_uncurry_this_namespaceFn());
var DESCRIPTORS = (descriptors_namespaceFn());
var USE_NATIVE_URL = (url_constructor_detection_namespaceFn());
var percentCoding = (url_percent_coding_namespaceFn());
var defineBuiltIn = (define_built_in_namespaceFn());
var defineBuiltInAccessor = (define_built_in_accessor_namespaceFn());
var defineBuiltIns = (define_built_ins_namespaceFn());
var setToStringTag = (set_to_string_tag_namespaceFn());
var createIteratorConstructor = (iterator_create_constructor_namespaceFn());
var InternalStateModule = (internal_state_namespaceFn());
var anInstance = (an_instance_namespaceFn());
var isCallable = (is_callable_namespaceFn());
var hasOwn = (has_own_property_namespaceFn());
var bind = (function_bind_context_namespaceFn());
var classof = (classof_namespaceFn());
var anObject = (an_object_namespaceFn());
var isObject = (is_object_namespaceFn());
var $toString = (to_string_namespaceFn());
var create = (object_create_namespaceFn());
var createPropertyDescriptor = (create_property_descriptor_namespaceFn());
var getIterator = (get_iterator_internal_namespaceFn());
var getIteratorMethod = (get_iterator_method_internal_namespaceFn());
var createIterResultObject = (create_iter_result_object_namespaceFn());
var validateArgumentsLength = (validate_arguments_length_namespaceFn());
var wellKnownSymbol = (well_known_symbol_namespaceFn());
var arraySort = (array_sort_namespaceFn());

var ITERATOR = wellKnownSymbol('iterator');
var URL_SEARCH_PARAMS = 'URLSearchParams';
var URL_SEARCH_PARAMS_ITERATOR = URL_SEARCH_PARAMS + 'Iterator';
var setInternalState = InternalStateModule.set;
var getInternalParamsState = InternalStateModule.getterFor(URL_SEARCH_PARAMS);
var getInternalIteratorState = InternalStateModule.getterFor(URL_SEARCH_PARAMS_ITERATOR);
var percentDecode = percentCoding.decode;
var percentEncode = percentCoding.encode;

var nativeFetch = safeGetBuiltIn('fetch');
var NativeRequest = safeGetBuiltIn('Request');
var Headers = safeGetBuiltIn('Headers');
var RequestPrototype = NativeRequest && NativeRequest.prototype;
var HeadersPrototype = Headers && Headers.prototype;
var TypeError = globalThis.TypeError;
var charAt = uncurryThis(''.charAt);
var join = uncurryThis([].join);
var push = uncurryThis([].push);
var replace = uncurryThis(''.replace);
var shift = uncurryThis([].shift);
var splice = uncurryThis([].splice);
var split = uncurryThis(''.split);
var stringSlice = uncurryThis(''.slice);

var plus = /\+/g;

// https://url.spec.whatwg.org/#urlencoded-parsing - `+` decodes to a space
var decodeQueryComponent = function (input) {
  return percentDecode(replace(input, plus, ' '));
};

var find = /[!'()~]|%20/g;

var replacements = {
  '!': '%21',
  "'": '%27',
  '(': '%28',
  ')': '%29',
  '~': '%7E',
  '%20': '+'
};

var replacer = function (match) {
  return replacements[match];
};

var serialize = function (it) {
  return replace(percentEncode(it), find, replacer);
};

var URLSearchParamsIterator = createIteratorConstructor(function Iterator(params, kind) {
  setInternalState(this, {
    type: URL_SEARCH_PARAMS_ITERATOR,
    target: getInternalParamsState(params).entries,
    index: 0,
    kind: kind
  });
}, URL_SEARCH_PARAMS, function next() {
  var state = getInternalIteratorState(this);
  var target = state.target;
  var index = state.index++;
  if (!target || index >= target.length) {
    state.target = null;
    return createIterResultObject(undefined, true);
  }
  var entry = target[index];
  switch (state.kind) {
    case 'keys': return createIterResultObject(entry.key, false);
    case 'values': return createIterResultObject(entry.value, false);
  } return createIterResultObject([entry.key, entry.value], false);
}, true);

var URLSearchParamsState = function (init) {
  this.entries = [];
  this.url = null;

  if (init !== undefined) {
    if (isObject(init)) this.parseObject(init);
    else this.parseQuery(typeof init == 'string' ? charAt(init, 0) === '?' ? stringSlice(init, 1) : init : $toString(init));
  }
};

URLSearchParamsState.prototype = {
  type: URL_SEARCH_PARAMS,
  bindURL: function (url) {
    this.url = url;
    this.update();
  },
  parseObject: function (object) {
    var entries = this.entries;
    var iteratorMethod = getIteratorMethod(object);
    var iterator, next, step, entryIterator, entryNext, first, second;

    if (iteratorMethod) {
      iterator = getIterator(object, iteratorMethod);
      next = iterator.next;
      while (!(step = call(next, iterator)).done) {
        entryIterator = getIterator(anObject(step.value));
        entryNext = entryIterator.next;
        if (
          (first = call(entryNext, entryIterator)).done ||
          (second = call(entryNext, entryIterator)).done ||
          !call(entryNext, entryIterator).done
        ) throw new TypeError('Expected sequence with length 2');
        push(entries, { key: $toString(first.value), value: $toString(second.value) });
      }
    } else for (var key in object) if (hasOwn(object, key)) {
      push(entries, { key: key, value: $toString(object[key]) });
    }
  },
  parseQuery: function (query) {
    if (query) {
      var entries = this.entries;
      var attributes = split(query, '&');
      var index = 0;
      var attribute, entry;
      while (index < attributes.length) {
        attribute = attributes[index++];
        if (attribute.length) {
          entry = split(attribute, '=');
          push(entries, {
            key: decodeQueryComponent(shift(entry)),
            value: decodeQueryComponent(join(entry, '='))
          });
        }
      }
    }
  },
  serialize: function () {
    var entries = this.entries;
    var result = [];
    var index = 0;
    var entry;
    while (index < entries.length) {
      entry = entries[index++];
      push(result, serialize(entry.key) + '=' + serialize(entry.value));
    } return join(result, '&');
  },
  update: function () {
    this.entries.length = 0;
    this.parseQuery(this.url.query);
  },
  updateURL: function () {
    if (this.url) this.url.update();
  }
};

// `URLSearchParams` constructor
// https://url.spec.whatwg.org/#interface-urlsearchparams
var URLSearchParamsConstructor = function URLSearchParams(/* init */) {
  anInstance(this, URLSearchParamsPrototype);
  var init = arguments.length > 0 ? arguments[0] : undefined;
  var state = setInternalState(this, new URLSearchParamsState(init));
  if (!DESCRIPTORS) this.size = state.entries.length;
};

var URLSearchParamsPrototype = URLSearchParamsConstructor.prototype;

defineBuiltIns(URLSearchParamsPrototype, {
  // `URLSearchParams.prototype.append` method
  // https://url.spec.whatwg.org/#dom-urlsearchparams-append
  append: function append(name, value) {
    var state = getInternalParamsState(this);
    validateArgumentsLength(arguments.length, 2);
    push(state.entries, { key: $toString(name), value: $toString(value) });
    if (!DESCRIPTORS) this.size++;
    state.updateURL();
  },
  // `URLSearchParams.prototype.delete` method
  // https://url.spec.whatwg.org/#dom-urlsearchparams-delete
  'delete': function (name /* , value */) {
    var state = getInternalParamsState(this);
    var length = validateArgumentsLength(arguments.length, 1);
    var entries = state.entries;
    var key = $toString(name);
    var $value = length < 2 ? undefined : arguments[1];
    var value = $value === undefined ? $value : $toString($value);
    var index = 0;
    while (index < entries.length) {
      var entry = entries[index];
      if (entry.key === key && (value === undefined || entry.value === value)) {
        splice(entries, index, 1);
      } else index++;
    }
    if (!DESCRIPTORS) this.size = entries.length;
    state.updateURL();
  },
  // `URLSearchParams.prototype.get` method
  // https://url.spec.whatwg.org/#dom-urlsearchparams-get
  get: function get(name) {
    var entries = getInternalParamsState(this).entries;
    validateArgumentsLength(arguments.length, 1);
    var key = $toString(name);
    var index = 0;
    for (; index < entries.length; index++) {
      if (entries[index].key === key) return entries[index].value;
    }
    return null;
  },
  // `URLSearchParams.prototype.getAll` method
  // https://url.spec.whatwg.org/#dom-urlsearchparams-getall
  getAll: function getAll(name) {
    var entries = getInternalParamsState(this).entries;
    validateArgumentsLength(arguments.length, 1);
    var key = $toString(name);
    var result = [];
    var index = 0;
    for (; index < entries.length; index++) {
      if (entries[index].key === key) push(result, entries[index].value);
    }
    return result;
  },
  // `URLSearchParams.prototype.has` method
  // https://url.spec.whatwg.org/#dom-urlsearchparams-has
  has: function has(name /* , value */) {
    var entries = getInternalParamsState(this).entries;
    var length = validateArgumentsLength(arguments.length, 1);
    var key = $toString(name);
    var $value = length < 2 ? undefined : arguments[1];
    var value = $value === undefined ? $value : $toString($value);
    var index = 0;
    while (index < entries.length) {
      var entry = entries[index++];
      if (entry.key === key && (value === undefined || entry.value === value)) return true;
    }
    return false;
  },
  // `URLSearchParams.prototype.set` method
  // https://url.spec.whatwg.org/#dom-urlsearchparams-set
  set: function set(name, value) {
    var state = getInternalParamsState(this);
    validateArgumentsLength(arguments.length, 2);
    var entries = state.entries;
    var found = false;
    var key = $toString(name);
    var val = $toString(value);
    var index = 0;
    var entry;
    for (; index < entries.length; index++) {
      entry = entries[index];
      if (entry.key === key) {
        if (found) splice(entries, index--, 1);
        else {
          found = true;
          entry.value = val;
        }
      }
    }
    if (!found) push(entries, { key: key, value: val });
    if (!DESCRIPTORS) this.size = entries.length;
    state.updateURL();
  },
  // `URLSearchParams.prototype.sort` method
  // https://url.spec.whatwg.org/#dom-urlsearchparams-sort
  sort: function sort() {
    var state = getInternalParamsState(this);
    arraySort(state.entries, function (a, b) {
      return a.key > b.key ? 1 : -1;
    });
    state.updateURL();
  },
  // `URLSearchParams.prototype.forEach` method
  forEach: function forEach(callback /* , thisArg */) {
    var entries = getInternalParamsState(this).entries;
    var boundFunction = bind(callback, arguments.length > 1 ? arguments[1] : undefined);
    var index = 0;
    var entry;
    while (index < entries.length) {
      entry = entries[index++];
      boundFunction(entry.value, entry.key, this);
    }
  },
  // `URLSearchParams.prototype.keys` method
  keys: function keys() {
    return new URLSearchParamsIterator(this, 'keys');
  },
  // `URLSearchParams.prototype.values` method
  values: function values() {
    return new URLSearchParamsIterator(this, 'values');
  },
  // `URLSearchParams.prototype.entries` method
  entries: function entries() {
    return new URLSearchParamsIterator(this, 'entries');
  }
}, { enumerable: true });

// `URLSearchParams.prototype[@@iterator]` method
defineBuiltIn(URLSearchParamsPrototype, ITERATOR, URLSearchParamsPrototype.entries, { name: 'entries' });

// `URLSearchParams.prototype.toString` method
// https://url.spec.whatwg.org/#urlsearchparams-stringification-behavior
defineBuiltIn(URLSearchParamsPrototype, 'toString', function toString() {
  return getInternalParamsState(this).serialize();
}, { enumerable: true });

// `URLSearchParams.prototype.size` getter
// https://url.spec.whatwg.org/#dom-urlsearchparams-size
if (DESCRIPTORS) defineBuiltInAccessor(URLSearchParamsPrototype, 'size', {
  get: function size() {
    return getInternalParamsState(this).entries.length;
  },
  configurable: true,
  enumerable: true
});

setToStringTag(URLSearchParamsConstructor, URL_SEARCH_PARAMS);

$({ global: true, constructor: true, forced: !USE_NATIVE_URL }, {
  URLSearchParams: URLSearchParamsConstructor
});

// Wrap `fetch` and `Request` for correct work with polyfilled `URLSearchParams`
if (!USE_NATIVE_URL && isCallable(Headers)) {
  var headersHas = uncurryThis(HeadersPrototype.has);
  var headersSet = uncurryThis(HeadersPrototype.set);

  var wrapRequestOptions = function (init) {
    if (isObject(init)) {
      var body = init.body;
      var headers;
      if (classof(body) === URL_SEARCH_PARAMS) {
        headers = init.headers ? new Headers(init.headers) : new Headers();
        if (!headersHas(headers, 'content-type')) {
          headersSet(headers, 'content-type', 'application/x-www-form-urlencoded;charset=UTF-8');
        }
        return create(init, {
          body: createPropertyDescriptor(0, $toString(body)),
          headers: createPropertyDescriptor(0, headers)
        });
      }
    } return init;
  };

  if (isCallable(nativeFetch)) {
    $({ global: true, enumerable: true, dontCallGetSet: true, forced: true }, {
      fetch: function fetch(input /* , init */) {
        return nativeFetch(input, arguments.length > 1 ? wrapRequestOptions(arguments[1]) : {});
      }
    });
  }

  if (isCallable(NativeRequest)) {
    var RequestConstructor = function Request(input /* , init */) {
      anInstance(this, RequestPrototype);
      return new NativeRequest(input, arguments.length > 1 ? wrapRequestOptions(arguments[1]) : {});
    };

    RequestPrototype.constructor = RequestConstructor;
    RequestConstructor.prototype = RequestPrototype;

    $({ global: true, constructor: true, dontCallGetSet: true, forced: true }, {
      Request: RequestConstructor
    });
  }
}

module.exports = {
  URLSearchParams: URLSearchParamsConstructor,
  getState: getInternalParamsState
};

});

// MODULE: ./node_modules/.pnpm/[email protected]/node_modules/core-js/modules/web.url-search-params.delete.js
var web_url_search_params_delete_namespaceFn = /*#__PURE__*/__webpack_require__.cw(function(module, exports) {

var defineBuiltIn = (define_built_in_namespaceFn());
var uncurryThis = (function_uncurry_this_namespaceFn());
var toString = (to_string_namespaceFn());
var validateArgumentsLength = (validate_arguments_length_namespaceFn());

var $URLSearchParams = URLSearchParams;
var URLSearchParamsPrototype = $URLSearchParams.prototype;
var append = uncurryThis(URLSearchParamsPrototype.append);
var $delete = uncurryThis(URLSearchParamsPrototype['delete']);
var forEach = uncurryThis(URLSearchParamsPrototype.forEach);
var push = uncurryThis([].push);
var params = new $URLSearchParams('a=1&a=2&b=3');

params['delete']('a', 1);
// `undefined` case is a Chromium 117 bug
// https://bugs.chromium.org/p/v8/issues/detail?id=14222
params['delete']('b', undefined);

if (params + '' !== 'a=2') {
  defineBuiltIn(URLSearchParamsPrototype, 'delete', function (name /* , value */) {
    var length = arguments.length;
    var $value = length < 2 ? undefined : arguments[1];
    if (length && $value === undefined) return $delete(this, name);
    var entries = [];
    forEach(this, function (v, k) { // also validates `this`
      push(entries, { key: k, value: v });
    });
    validateArgumentsLength(length, 1);
    var key = toString(name);
    var value = toString($value);
    var index = 0;
    var entriesLength = entries.length;
    var entry;
    while (index < entriesLength) {
      entry = entries[index];
      $delete(this, entry.key);
      index++;
    }
    index = 0;
    while (index < entriesLength) {
      entry = entries[index++];
      if (!(entry.key === key && entry.value === value)) append(this, entry.key, entry.value);
    }
  }, { enumerable: true, unsafe: true });
}

});

// MODULE: ./node_modules/.pnpm/[email protected]/node_modules/core-js/modules/web.url-search-params.has.js
var web_url_search_params_has_namespaceFn = /*#__PURE__*/__webpack_require__.cw(function(module, exports) {

var defineBuiltIn = (define_built_in_namespaceFn());
var uncurryThis = (function_uncurry_this_namespaceFn());
var toString = (to_string_namespaceFn());
var validateArgumentsLength = (validate_arguments_length_namespaceFn());

var $URLSearchParams = URLSearchParams;
var URLSearchParamsPrototype = $URLSearchParams.prototype;
var getAll = uncurryThis(URLSearchParamsPrototype.getAll);
var $has = uncurryThis(URLSearchParamsPrototype.has);
var params = new $URLSearchParams('a=1');

// `undefined` case is a Chromium 117 bug
// https://bugs.chromium.org/p/v8/issues/detail?id=14222
if (params.has('a', 2) || !params.has('a', undefined)) {
  defineBuiltIn(URLSearchParamsPrototype, 'has', function has(name /* , value */) {
    var length = arguments.length;
    var $value = length < 2 ? undefined : arguments[1];
    if (length && $value === undefined) return $has(this, name);
    var values = getAll(this, name); // also validates `this`
    validateArgumentsLength(length, 1);
    var value = toString($value);
    var index = 0;
    while (index < values.length) {
      if (values[index++] === value) return true;
    } return false;
  }, { enumerable: true, unsafe: true });
}

});

// MODULE: ./node_modules/.pnpm/[email protected]/node_modules/core-js/modules/web.url-search-params.js
var web_url_search_params_namespaceFn = /*#__PURE__*/__webpack_require__.cw(function(module, exports) {

// TODO: Remove this module from `core-js@4` since it's replaced to module below
(web_url_search_params_constructor_namespaceFn());

});

// MODULE: ./node_modules/.pnpm/[email protected]/node_modules/core-js/modules/web.url-search-params.size.js
var web_url_search_params_size_namespaceFn = /*#__PURE__*/__webpack_require__.cw(function(module, exports) {

var DESCRIPTORS = (descriptors_namespaceFn());
var uncurryThis = (function_uncurry_this_namespaceFn());
var defineBuiltInAccessor = (define_built_in_accessor_namespaceFn());

var URLSearchParamsPrototype = URLSearchParams.prototype;
var forEach = uncurryThis(URLSearchParamsPrototype.forEach);

// `URLSearchParams.prototype.size` getter
// https://github.com/whatwg/url/pull/734
if (DESCRIPTORS && !('size' in URLSearchParamsPrototype)) {
  defineBuiltInAccessor(URLSearchParamsPrototype, 'size', {
    get: function size() {
      var count = 0;
      forEach(this, function () { count++; });
      return count;
    },
    configurable: true,
    enumerable: true
  });
}

});

// MODULE: ./node_modules/.pnpm/[email protected]/node_modules/core-js/modules/web.url.constructor.js
var web_url_constructor_namespaceFn = /*#__PURE__*/__webpack_require__.cw(function(module, exports) {

// TODO: in core-js@4, move /modules/ dependencies to public entries for better optimization by tools like `preset-env`
(es_string_iterator_namespaceFn());
var $ = (export_namespaceFn());
var DESCRIPTORS = (descriptors_namespaceFn());
var USE_NATIVE_URL = (url_constructor_detection_namespaceFn());
var globalThis = (global_this_namespaceFn());
var bind = (function_bind_context_namespaceFn());
var uncurryThis = (function_uncurry_this_namespaceFn());
var defineBuiltIn = (define_built_in_namespaceFn());
var defineBuiltInAccessor = (define_built_in_accessor_namespaceFn());
var anInstance = (an_instance_namespaceFn());
var hasOwn = (has_own_property_namespaceFn());
var assign = (object_assign_namespaceFn());
var arrayFrom = (array_from_namespaceFn());
var arraySlice = (array_slice_namespaceFn());
var codeAt = (string_multibyte_namespaceFn()/* codeAt */.L);
var toASCII = (string_punycode_to_ascii_namespaceFn());
var percentCoding = (url_percent_coding_namespaceFn());
var $toString = (to_string_namespaceFn());
var setToStringTag = (set_to_string_tag_namespaceFn());
var validateArgumentsLength = (validate_arguments_length_namespaceFn());
var URLSearchParamsModule = (web_url_search_params_constructor_namespaceFn());
var InternalStateModule = (internal_state_namespaceFn());

var setInternalState = InternalStateModule.set;
var getInternalURLState = InternalStateModule.getterFor('URL');
var URLSearchParams = URLSearchParamsModule.URLSearchParams;
var getInternalSearchParamsState = URLSearchParamsModule.getState;
var percentDecode = percentCoding.decode;
var percentEncode = percentCoding.encode;

var NativeURL = globalThis.URL;
var TypeError = globalThis.TypeError;
var parseInt = globalThis.parseInt;
var floor = Math.floor;
var pow = Math.pow;
var fromCharCode = String.fromCharCode;
var charAt = uncurryThis(''.charAt);
var exec = uncurryThis(/./.exec);
var join = uncurryThis([].join);
var numberToString = uncurryThis(1.1.toString);
var pop = uncurryThis([].pop);
var push = uncurryThis([].push);
var replace = uncurryThis(''.replace);
var shift = uncurryThis([].shift);
var split = uncurryThis(''.split);
var stringIndexOf = uncurryThis(''.indexOf);
var stringSlice = uncurryThis(''.slice);
var toLowerCase = uncurryThis(''.toLowerCase);
var unshift = uncurryThis([].unshift);

var INVALID_AUTHORITY = 'Invalid authority';
var INVALID_SCHEME = 'Invalid scheme';
var INVALID_HOST = 'Invalid host';
var INVALID_PORT = 'Invalid port';

var ALPHA = /[a-z]/i;
var ALPHANUMERIC_PLUS_MINUS_DOT = /[\d+\-.a-z]/i;
var DIGIT = /\d/;
var HEX_START = /^0x/i;
var OCT = /^[0-7]+$/;
var DEC = /^\d+$/;
var HEX = /^[\da-f]+$/i;
/* eslint-disable regexp/no-control-character -- safe */
// https://url.spec.whatwg.org/#forbidden-domain-code-point
var FORBIDDEN_DOMAIN_CODE_POINT = /[\u0000-\u0020#%/:<>?@[\\\]^|\u007F]/;
// https://url.spec.whatwg.org/#forbidden-host-code-point
var FORBIDDEN_HOST_CODE_POINT = /[\0\t\n\r #/:<>?@[\\\]^|]/;
var LEADING_C0_CONTROL_OR_SPACE = /^[\u0000-\u0020]+/;
var TRAILING_C0_CONTROL_OR_SPACE = /(^|[^\u0000-\u0020])[\u0000-\u0020]+$/;
var TAB_AND_NEW_LINE = /[\t\n\r]/g;
var NON_ASCII = /[^\u0000-\u007F]/;
/* eslint-enable regexp/no-control-character -- safe */
// UTS#46 maps these onto a string containing a forbidden domain code point, so a domain
// holding one is rejected - listing them is far smaller than shipping the mapping table
var MAPPED_ONTO_FORBIDDEN = '\u00A8\u00AF\u00B4\u00B8\u02D8\u02D9\u02DA\u02DB\u02DC\u02DD\u037A\u0384\u0385\u1FBD\u1FBF\u1FC0'
  + '\u1FC1\u1FCD\u1FCE\u1FCF\u1FDD\u1FDE\u1FDF\u1FED\u1FEE\u1FFD\u1FFE\u2017\u203E\u2047\u2048\u2049'
  + '\u2100\u2101\u2105\u2106\u2A74\u309B\u309C\uFC5E\uFC5F\uFC60\uFC61\uFC62\uFC63\uFDFA\uFDFB\uFE13'
  + '\uFE16\uFE47\uFE48\uFE49\uFE4A\uFE4B\uFE4C\uFE55\uFE56\uFE5F\uFE64\uFE65\uFE68\uFE6A\uFE6B\uFE70'
  + '\uFE72\uFE74\uFE76\uFE78\uFE7A\uFE7C\uFE7E\uFFE3';
// eslint-disable-next-line no-unassigned-vars -- expected `undefined` value
var EOF;

// https://www.unicode.org/reports/tr46/#IDNA_Mapping_Table
var isIgnoredCodePoint = function (code) {
  return code === 0xAD || code === 0x34F || code === 0x200B || code === 0x3164
    || code === 0xFEFF || code === 0xFFA0
    || (code >= 0x115F && code <= 0x1160)
    || (code >= 0x17B4 && code <= 0x17B5)
    || (code >= 0x180B && code <= 0x180F)
    || (code >= 0x2060 && code <= 0x2064) || (code >= 0x206A && code <= 0x206F)
    || (code >= 0xFE00 && code <= 0xFE0F)
    || (code >= 0xE0100 && code <= 0xE01EF);
};

var isDisallowedCodePoint = function (code) {
  return code === 0xFFFD
    // lone surrogate - a matched pair is a single code point and never lands here
    || (code >= 0xD800 && code <= 0xDFFF)
    // C1 controls
    || (code >= 0x80 && code <= 0x9F)
    // line and paragraph separators, bidirectional formatting characters
    || (code >= 0x200E && code <= 0x200F) || (code >= 0x2028 && code <= 0x2029)
    || (code >= 0x202A && code <= 0x202E) || (code >= 0x2065 && code <= 0x2069)
    // noncharacters
    || (code >= 0xFDD0 && code <= 0xFDEF) || (code & 0xFFFE) === 0xFFFE
    // private use
    || (code >= 0xE000 && code <= 0xF8FF) || (code >= 0xF0000 && code <= 0x10FFFD);
};

var mapCodePoint = function (code) {
  // full-width forms
  if (code >= 0xFF01 && code <= 0xFF5E) return code - 0xFEE0;
  // spaces and the listed code points collapse onto a forbidden domain code point; a space
  // stands in for the real mapping since either way the domain is rejected
  if (code === 0xA0 || code === 0x1680 || code === 0x202F || code === 0x205F || code === 0x3000) return 0x20;
  if (code >= 0x2000 && code <= 0x200A) return 0x20;
  // the list holds no supplementary code point, and `fromCharCode` would truncate one
  if (code <= 0xFFFF && stringIndexOf(MAPPED_ONTO_FORBIDDEN, fromCharCode(code)) > -1) return 0x20;
  return code;
};

// https://url.spec.whatwg.org/#concept-domain-to-ascii
// A subset of UTS#46 processing - the full mapping table is too large to ship. Covered are the
// entries cheap to express: the ignored and disallowed code points, full-width forms, and the
// code points mapping onto a forbidden domain code point. Not covered, so such domains are
// punycoded rather than mapped or rejected: unassigned code points, half-width forms,
// compatibility decompositions, NFC, CheckJoiners, CheckBidi, and labels that already arrive
// punycoded - those are not decoded back for validation.
var domainToASCII = function (domain) {
  // every mapped, ignored and disallowed code point is non-ASCII, so an ASCII domain
  // needs the punycode step only - this keeps the common case off the slow path
  if (!exec(NON_ASCII, domain)) return domain === '' ? null : toASCII(domain);
  var codePoints = arrayFrom(domain);
  var result = '';
  var index, code, mapped;
  for (index = 0; index < codePoints.length; index++) {
    code = codeAt(codePoints[index], 0);
    if (isDisallowedCodePoint(code)) return null;
    if (isIgnoredCodePoint(code)) continue;
    mapped = mapCodePoint(code);
    result += mapped === code ? codePoints[index] : fromCharCode(mapped);
  }
  return result === '' ? null : toASCII(result);
};

// https://url.spec.whatwg.org/#ends-in-a-number-checker
var endsInNumber = function (input) {
  var parts = split(input, '.');
  var last, hexPart;
  if (parts[parts.length - 1] === '') {
    if (parts.length === 1) return false;
    parts.length--;
  }
  last = parts[parts.length - 1];
  if (exec(DEC, last)) return true;
  if (exec(HEX_START, last)) {
    hexPart = stringSlice(last, 2);
    return hexPart === '' || !!exec(HEX, hexPart);
  }
  return false;
};

// https://url.spec.whatwg.org/#concept-ipv4-parser
var parseIPv4 = function (input) {
  var parts = split(input, '.');
  var partsLength, numbers, index, part, radix, number, ipv4;
  if (parts.length && parts[parts.length - 1] === '') {
    parts.length--;
  }
  partsLength = parts.length;
  if (partsLength > 4) return null;
  numbers = [];
  for (index = 0; index < partsLength; index++) {
    part = parts[index];
    if (part === '') return null;
    radix = 10;
    if (part.length > 1 && charAt(part, 0) === '0') {
      radix = exec(HEX_START, part) ? 16 : 8;
      part = stringSlice(part, radix === 8 ? 1 : 2);
    }
    if (part === '') {
      number = 0;
    } else {
      if (!exec(radix === 10 ? DEC : radix === 8 ? OCT : HEX, part)) return null;
      number = parseInt(part, radix);
    }
    push(numbers, number);
  }
  for (index = 0; index < partsLength; index++) {
    number = numbers[index];
    if (index === partsLength - 1) {
      if (number >= pow(256, 5 - partsLength)) return null;
    } else if (number > 255) return null;
  }
  ipv4 = pop(numbers);
  for (index = 0; index < numbers.length; index++) {
    ipv4 += numbers[index] * pow(256, 3 - index);
  }
  return ipv4;
};

// https://url.spec.whatwg.org/#concept-ipv6-parser
// eslint-disable-next-line max-statements -- TODO
var parseIPv6 = function (input) {
  var address = [0, 0, 0, 0, 0, 0, 0, 0];
  var pieceIndex = 0;
  var compress = null;
  var pointer = 0;
  var value, length, numbersSeen, ipv4Piece, number, swaps, swap;

  var chr = function () {
    return charAt(input, pointer);
  };

  if (chr() === ':') {
    if (charAt(input, 1) !== ':') return;
    pointer += 2;
    pieceIndex++;
    compress = pieceIndex;
  }
  while (chr()) {
    if (pieceIndex === 8) return;
    if (chr() === ':') {
      if (compress !== null) return;
      pointer++;
      pieceIndex++;
      compress = pieceIndex;
      continue;
    }
    value = length = 0;
    while (length < 4 && exec(HEX, chr())) {
      value = value * 16 + parseInt(chr(), 16);
      pointer++;
      length++;
    }
    if (chr() === '.') {
      if (length === 0) return;
      pointer -= length;
      if (pieceIndex > 6) return;
      numbersSeen = 0;
      while (chr()) {
        ipv4Piece = null;
        if (numbersSeen > 0) {
          if (chr() === '.' && numbersSeen < 4) pointer++;
          else return;
        }
        if (!exec(DIGIT, chr())) return;
        while (exec(DIGIT, chr())) {
          number = parseInt(chr(), 10);
          if (ipv4Piece === null) ipv4Piece = number;
          else if (ipv4Piece === 0) return;
          else ipv4Piece = ipv4Piece * 10 + number;
          if (ipv4Piece > 255) return;
          pointer++;
        }
        address[pieceIndex] = address[pieceIndex] * 256 + ipv4Piece;
        numbersSeen++;
        if (numbersSeen === 2 || numbersSeen === 4) pieceIndex++;
      }
      if (numbersSeen !== 4) return;
      break;
    } else if (chr() === ':') {
      pointer++;
      if (!chr()) return;
    } else if (chr()) return;
    address[pieceIndex++] = value;
  }
  if (compress !== null) {
    swaps = pieceIndex - compress;
    pieceIndex = 7;
    while (pieceIndex !== 0 && swaps > 0) {
      swap = address[pieceIndex];
      address[pieceIndex--] = address[compress + swaps - 1];
      address[compress + --swaps] = swap;
    }
  } else if (pieceIndex !== 8) return;
  return address;
};

var findLongestZeroSequence = function (ipv6) {
  var maxIndex = null;
  var maxLength = 1;
  var currStart = null;
  var currLength = 0;
  var index = 0;
  for (; index < 8; index++) {
    if (ipv6[index] !== 0) {
      if (currLength > maxLength) {
        maxIndex = currStart;
        maxLength = currLength;
      }
      currStart = null;
      currLength = 0;
    } else {
      if (currStart === null) currStart = index;
      ++currLength;
    }
  }
  return currLength > maxLength ? currStart : maxIndex;
};

// https://url.spec.whatwg.org/#host-serializing
var serializeHost = function (host) {
  var result, index, compress, ignore0;

  // ipv4
  if (typeof host == 'number') {
    result = [];
    for (index = 0; index < 4; index++) {
      unshift(result, host % 256);
      host = floor(host / 256);
    }
    return join(result, '.');
  }

  // ipv6
  if (typeof host == 'object') {
    result = '';
    compress = findLongestZeroSequence(host);
    for (index = 0; index < 8; index++) {
      if (ignore0 && host[index] === 0) continue;
      if (ignore0) ignore0 = false;
      if (compress === index) {
        result += index ? ':' : '::';
        ignore0 = true;
      } else {
        result += numberToString(host[index], 16);
        if (index < 7) result += ':';
      }
    }
    return '[' + result + ']';
  }

  return host;
};

// https://url.spec.whatwg.org/#c0-control-percent-encode-set
// empty because the set is the code points outside U+0020..U+007E, which the range
// check below already covers; the sets extending it only add code points inside it
var C0ControlPercentEncodeSet = {};
var queryPercentEncodeSet = assign({}, C0ControlPercentEncodeSet, {
  ' ': 1, '"': 1, '#': 1, '<': 1, '>': 1
});
var specialQueryPercentEncodeSet = assign({}, queryPercentEncodeSet, {
  "'": 1
});
var fragmentPercentEncodeSet = assign({}, C0ControlPercentEncodeSet, {
  ' ': 1, '"': 1, '<': 1, '>': 1, '`': 1
});
var pathPercentEncodeSet = assign({}, fragmentPercentEncodeSet, {
  '#': 1, '?': 1, '{': 1, '}': 1, '^': 1
});
var userinfoPercentEncodeSet = assign({}, pathPercentEncodeSet, {
  '/': 1, ':': 1, ';': 1, '=': 1, '@': 1, '[': 1, '\\': 1, ']': 1, '^': 1, '|': 1
});

// https://url.spec.whatwg.org/#string-utf-8-percent-encode
var utf8PercentEncode = function (chr, set) {
  var code = codeAt(chr, 0);
  // percent-encoding leaves ' alone, but it belongs to the special-query percent-encode set
  return code >= 0x20 && code < 0x7F && !hasOwn(set, chr) ? chr : chr === "'" && hasOwn(set, chr) ? '%27' : percentEncode(chr);
};

// https://url.spec.whatwg.org/#special-scheme
var specialSchemes = {
  ftp: 21,
  file: null,
  http: 80,
  https: 443,
  ws: 80,
  wss: 443
};

// https://url.spec.whatwg.org/#windows-drive-letter
var isWindowsDriveLetter = function (string, normalized) {
  var second;
  return string.length === 2 && exec(ALPHA, charAt(string, 0))
    && ((second = charAt(string, 1)) === ':' || (!normalized && second === '|'));
};

// https://url.spec.whatwg.org/#start-with-a-windows-drive-letter
var startsWithWindowsDriveLetter = function (string) {
  var third;
  return string.length > 1 && isWindowsDriveLetter(stringSlice(string, 0, 2)) && (
    string.length === 2 ||
    ((third = charAt(string, 2)) === '/' || third === '\\' || third === '?' || third === '#')
  );
};

// https://url.spec.whatwg.org/#single-dot-path-segment
var isSingleDot = function (segment) {
  return segment === '.' || toLowerCase(segment) === '%2e';
};

// https://url.spec.whatwg.org/#double-dot-path-segment
var isDoubleDot = function (segment) {
  segment = toLowerCase(segment);
  return segment === '..' || segment === '%2e.' || segment === '.%2e' || segment === '%2e%2e';
};

// States:
var SCHEME_START = {};
var SCHEME = {};
var NO_SCHEME = {};
var SPECIAL_RELATIVE_OR_AUTHORITY = {};
var PATH_OR_AUTHORITY = {};
var RELATIVE = {};
var RELATIVE_SLASH = {};
var SPECIAL_AUTHORITY_SLASHES = {};
var SPECIAL_AUTHORITY_IGNORE_SLASHES = {};
var AUTHORITY = {};
var HOST = {};
var HOSTNAME = {};
var PORT = {};
var FILE = {};
var FILE_SLASH = {};
var FILE_HOST = {};
var PATH_START = {};
var PATH = {};
var CANNOT_BE_A_BASE_URL_PATH = {};
var QUERY = {};
var FRAGMENT = {};

var URLState = function (url, isBase, base) {
  var urlString = $toString(url);
  var baseState, failure, searchParams;
  if (isBase) {
    failure = this.parse(urlString);
    if (failure) throw new TypeError(failure);
    this.searchParams = null;
  } else {
    if (base !== undefined) baseState = new URLState(base, true);
    failure = this.parse(urlString, null, baseState);
    if (failure) throw new TypeError(failure);
    searchParams = getInternalSearchParamsState(new URLSearchParams());
    searchParams.bindURL(this);
    this.searchParams = searchParams;
  }
};

URLState.prototype = {
  type: 'URL',
  // https://url.spec.whatwg.org/#url-parsing
  // eslint-disable-next-line max-statements -- TODO
  parse: function (input, stateOverride, base) {
    var url = this;
    var state = stateOverride || SCHEME_START;
    var pointer = 0;
    var buffer = '';
    var seenAt = false;
    var seenBracket = false;
    var seenPasswordToken = false;
    var codePoints, chr, bufferCodePoints, failure;

    input = $toString(input);

    if (!stateOverride) {
      url.scheme = '';
      url.username = '';
      url.password = '';
      url.host = null;
      url.port = null;
      url.path = [];
      url.query = null;
      url.fragment = null;
      url.cannotBeABaseURL = false;
      input = replace(input, LEADING_C0_CONTROL_OR_SPACE, '');
      input = replace(input, TRAILING_C0_CONTROL_OR_SPACE, '$1');
    }

    input = replace(input, TAB_AND_NEW_LINE, '');

    codePoints = arrayFrom(input);

    while (pointer <= codePoints.length) {
      chr = codePoints[pointer];
      switch (state) {
        case SCHEME_START:
          if (chr && exec(ALPHA, chr)) {
            buffer += toLowerCase(chr);
            state = SCHEME;
          } else if (!stateOverride) {
            state = NO_SCHEME;
            continue;
          } else return INVALID_SCHEME;
          break;

        case SCHEME:
          if (chr && exec(ALPHANUMERIC_PLUS_MINUS_DOT, chr)) {
            buffer += toLowerCase(chr);
          } else if (chr === ':') {
            if (stateOverride && (
              (url.isSpecial() !== hasOwn(specialSchemes, buffer)) ||
              (buffer === 'file' && (url.includesCredentials() || url.port !== null)) ||
              (url.scheme === 'file' && url.host === '')
            )) return;
            url.scheme = buffer;
            if (stateOverride) {
              if (url.isSpecial() && specialSchemes[url.scheme] === url.port) url.port = null;
              return;
            }
            buffer = '';
            if (url.scheme === 'file') {
              state = FILE;
            } else if (url.isSpecial() && base && base.scheme === url.scheme) {
              state = SPECIAL_RELATIVE_OR_AUTHORITY;
            } else if (url.isSpecial()) {
              state = SPECIAL_AUTHORITY_SLASHES;
            } else if (codePoints[pointer + 1] === '/') {
              state = PATH_OR_AUTHORITY;
              pointer++;
            } else {
              url.cannotBeABaseURL = true;
              push(url.path, '');
              state = CANNOT_BE_A_BASE_URL_PATH;
            }
          } else if (!stateOverride) {
            buffer = '';
            state = NO_SCHEME;
            pointer = 0;
            continue;
          } else return INVALID_SCHEME;
          break;

        case NO_SCHEME:
          if (!base || (base.cannotBeABaseURL && chr !== '#')) return INVALID_SCHEME;
          if (base.cannotBeABaseURL && chr === '#') {
            url.scheme = base.scheme;
            url.path = arraySlice(base.path);
            url.query = base.query;
            url.fragment = '';
            url.cannotBeABaseURL = true;
            state = FRAGMENT;
            break;
          }
          state = base.scheme === 'file' ? FILE : RELATIVE;
          continue;

        case SPECIAL_RELATIVE_OR_AUTHORITY:
          if (chr === '/' && codePoints[pointer + 1] === '/') {
            state = SPECIAL_AUTHORITY_IGNORE_SLASHES;
            pointer++;
          } else {
            state = RELATIVE;
            continue;
          } break;

        case PATH_OR_AUTHORITY:
          if (chr === '/') {
            state = AUTHORITY;
            break;
          } else {
            state = PATH;
            continue;
          }

        case RELATIVE:
          url.scheme = base.scheme;
          if (chr === EOF) {
            url.username = base.username;
            url.password = base.password;
            url.host = base.host;
            url.port = base.port;
            url.path = arraySlice(base.path);
            url.query = base.query;
          } else if (chr === '/' || (chr === '\\' && url.isSpecial())) {
            state = RELATIVE_SLASH;
          } else if (chr === '?') {
            url.username = base.username;
            url.password = base.password;
            url.host = base.host;
            url.port = base.port;
            url.path = arraySlice(base.path);
            url.query = '';
            state = QUERY;
          } else if (chr === '#') {
            url.username = base.username;
            url.password = base.password;
            url.host = base.host;
            url.port = base.port;
            url.path = arraySlice(base.path);
            url.query = base.query;
            url.fragment = '';
            state = FRAGMENT;
          } else {
            url.username = base.username;
            url.password = base.password;
            url.host = base.host;
            url.port = base.port;
            url.path = arraySlice(base.path);
            if (url.path.length) url.path.length--;
            state = PATH;
            continue;
          } break;

        case RELATIVE_SLASH:
          if (url.isSpecial() && (chr === '/' || chr === '\\')) {
            state = SPECIAL_AUTHORITY_IGNORE_SLASHES;
          } else if (chr === '/') {
            state = AUTHORITY;
          } else {
            url.username = base.username;
            url.password = base.password;
            url.host = base.host;
            url.port = base.port;
            state = PATH;
            continue;
          } break;

        case SPECIAL_AUTHORITY_SLASHES:
          state = SPECIAL_AUTHORITY_IGNORE_SLASHES;
          if (chr !== '/' || codePoints[pointer + 1] !== '/') continue;
          pointer++;
          break;

        case SPECIAL_AUTHORITY_IGNORE_SLASHES:
          if (chr !== '/' && chr !== '\\') {
            state = AUTHORITY;
            continue;
          } break;

        case AUTHORITY:
          if (chr === '@') {
            if (seenAt) buffer = '%40' + buffer;
            seenAt = true;
            bufferCodePoints = arrayFrom(buffer);
            for (var i = 0; i < bufferCodePoints.length; i++) {
              var codePoint = bufferCodePoints[i];
              if (codePoint === ':' && !seenPasswordToken) {
                seenPasswordToken = true;
                continue;
              }
              var encodedCodePoints = utf8PercentEncode(codePoint, userinfoPercentEncodeSet);
              if (seenPasswordToken) url.password += encodedCodePoints;
              else url.username += encodedCodePoints;
            }
            buffer = '';
          } else if (
            chr === EOF || chr === '/' || chr === '?' || chr === '#' ||
            (chr === '\\' && url.isSpecial())
          ) {
            if (seenAt && buffer === '') return INVALID_AUTHORITY;
            pointer -= arrayFrom(buffer).length + 1;
            buffer = '';
            state = HOST;
          } else buffer += chr;
          break;

        case HOST:
        case HOSTNAME:
          if (stateOverride && url.scheme === 'file') {
            state = FILE_HOST;
            continue;
          } else if (chr === ':' && !seenBracket) {
            if (buffer === '') return INVALID_HOST;
            if (stateOverride === HOSTNAME) return;
            failure = url.parseHost(buffer);
            if (failure) return failure;
            buffer = '';
            state = PORT;
          } else if (
            chr === EOF || chr === '/' || chr === '?' || chr === '#' ||
            (chr === '\\' && url.isSpecial())
          ) {
            if (url.isSpecial() && buffer === '') return INVALID_HOST;
            if (stateOverride && buffer === '' && (url.includesCredentials() || url.port !== null)) return;
            failure = url.parseHost(buffer);
            if (failure) return failure;
            buffer = '';
            state = PATH_START;
            if (stateOverride) return;
            continue;
          } else {
            if (chr === '[') seenBracket = true;
            else if (chr === ']') seenBracket = false;
            buffer += chr;
          } break;

        case PORT:
          if (exec(DIGIT, chr)) {
            buffer += chr;
          } else if (
            chr === EOF || chr === '/' || chr === '?' || chr === '#' ||
            (chr === '\\' && url.isSpecial()) ||
            stateOverride
          ) {
            if (buffer !== '') {
              var port = parseInt(buffer, 10);
              if (port > 0xFFFF) return INVALID_PORT;
              url.port = (url.isSpecial() && port === specialSchemes[url.scheme]) ? null : port;
              buffer = '';
            }
            if (stateOverride) return;
            state = PATH_START;
            continue;
          } else return INVALID_PORT;
          break;

        case FILE:
          url.scheme = 'file';
          url.host = '';
          if (chr === '/' || chr === '\\') state = FILE_SLASH;
          else if (base && base.scheme === 'file') {
            switch (chr) {
              case EOF:
                url.host = base.host;
                url.path = arraySlice(base.path);
                url.query = base.query;
                break;
              case '?':
                url.host = base.host;
                url.path = arraySlice(base.path);
                url.query = '';
                state = QUERY;
                break;
              case '#':
                url.host = base.host;
                url.path = arraySlice(base.path);
                url.query = base.query;
                url.fragment = '';
                state = FRAGMENT;
                break;
              default:
                url.host = base.host;
                if (!startsWithWindowsDriveLetter(join(arraySlice(codePoints, pointer), ''))) {
                  url.path = arraySlice(base.path);
                  url.shortenPath();
                }
                state = PATH;
                continue;
            }
          } else {
            state = PATH;
            continue;
          } break;

        case FILE_SLASH:
          if (chr === '/' || chr === '\\') {
            state = FILE_HOST;
            break;
          }
          if (base && base.scheme === 'file') {
            url.host = base.host;
            if (!startsWithWindowsDriveLetter(join(arraySlice(codePoints, pointer), ''))
              && isWindowsDriveLetter(base.path[0], true)) push(url.path, base.path[0]);
          }
          state = PATH;
          continue;

        case FILE_HOST:
          if (chr === EOF || chr === '/' || chr === '\\' || chr === '?' || chr === '#') {
            if (!stateOverride && isWindowsDriveLetter(buffer)) {
              state = PATH;
            } else if (buffer === '') {
              url.host = '';
              if (stateOverride) return;
              state = PATH_START;
            } else {
              failure = url.parseHost(buffer);
              if (failure) return failure;
              if (url.host === 'localhost') url.host = '';
              if (stateOverride) return;
              buffer = '';
              state = PATH_START;
            } continue;
          } else buffer += chr;
          break;

        case PATH_START:
          if (url.isSpecial()) {
            state = PATH;
            if (chr !== '/' && chr !== '\\') continue;
          } else if (!stateOverride && chr === '?') {
            url.query = '';
            state = QUERY;
          } else if (!stateOverride && chr === '#') {
            url.fragment = '';
            state = FRAGMENT;
          } else if (chr !== EOF) {
            state = PATH;
            if (chr !== '/') continue;
          } break;

        case PATH:
          if (
            chr === EOF || chr === '/' ||
            (chr === '\\' && url.isSpecial()) ||
            (!stateOverride && (chr === '?' || chr === '#'))
          ) {
            if (isDoubleDot(buffer)) {
              url.shortenPath();
              if (chr !== '/' && !(chr === '\\' && url.isSpecial())) {
                push(url.path, '');
              }
            } else if (isSingleDot(buffer)) {
              if (chr !== '/' && !(chr === '\\' && url.isSpecial())) {
                push(url.path, '');
              }
            } else {
              if (url.scheme === 'file' && !url.path.length && isWindowsDriveLetter(buffer)) {
                // eslint-disable-next-line max-depth -- ok
                if (url.host !== null && url.host !== '') url.host = '';
                buffer = charAt(buffer, 0) + ':'; // normalize windows drive letter
              }
              push(url.path, buffer);
            }
            buffer = '';
            if (url.scheme === 'file' && (chr === EOF || chr === '?' || chr === '#')) {
              while (url.path.length > 1 && url.path[0] === '') {
                shift(url.path);
              }
            }
            if (chr === '?') {
              url.query = '';
              state = QUERY;
            } else if (chr === '#') {
              url.fragment = '';
              state = FRAGMENT;
            }
          } else {
            buffer += utf8PercentEncode(chr, pathPercentEncodeSet);
          } break;

        case CANNOT_BE_A_BASE_URL_PATH:
          if (chr === '?') {
            url.query = '';
            state = QUERY;
          } else if (chr === '#') {
            url.fragment = '';
            state = FRAGMENT;
          } else if (chr !== EOF) {
            if (chr === ' ') {
              url.path[0] += codePoints[pointer + 1] === '?' || codePoints[pointer + 1] === '#' ? '%20' : ' ';
            } else {
              url.path[0] += utf8PercentEncode(chr, C0ControlPercentEncodeSet);
            }
          } break;

        case QUERY:
          if (!stateOverride && chr === '#') {
            url.fragment = '';
            state = FRAGMENT;
          } else if (chr !== EOF) {
            url.query += utf8PercentEncode(chr, url.isSpecial() ? specialQueryPercentEncodeSet : queryPercentEncodeSet);
          } break;

        case FRAGMENT:
          if (chr !== EOF) url.fragment += utf8PercentEncode(chr, fragmentPercentEncodeSet);
          break;
      }

      pointer++;
    }
  },
  // https://url.spec.whatwg.org/#host-parsing
  parseHost: function (input) {
    var result, codePoints, index;
    if (charAt(input, 0) === '[') {
      if (charAt(input, input.length - 1) !== ']') return INVALID_HOST;
      result = parseIPv6(stringSlice(input, 1, -1));
      if (!result) return INVALID_HOST;
      this.host = result;
    // opaque host
    } else if (!this.isSpecial()) {
      if (exec(FORBIDDEN_HOST_CODE_POINT, input)) return INVALID_HOST;
      result = '';
      codePoints = arrayFrom(input);
      for (index = 0; index < codePoints.length; index++) {
        result += utf8PercentEncode(codePoints[index], C0ControlPercentEncodeSet);
      }
      this.host = result;
    } else {
      input = domainToASCII(percentDecode(input));
      if (input === null || exec(FORBIDDEN_DOMAIN_CODE_POINT, input)) return INVALID_HOST;
      if (endsInNumber(input)) {
        result = parseIPv4(input);
        if (result === null) return INVALID_HOST;
        this.host = result;
      } else {
        this.host = input;
      }
    }
  },
  // https://url.spec.whatwg.org/#cannot-have-a-username-password-port
  cannotHaveUsernamePasswordPort: function () {
    return this.host === null || this.host === '' || this.cannotBeABaseURL || this.scheme === 'file';
  },
  // https://url.spec.whatwg.org/#include-credentials
  includesCredentials: function () {
    return this.username !== '' || this.password !== '';
  },
  // https://url.spec.whatwg.org/#is-special
  isSpecial: function () {
    return hasOwn(specialSchemes, this.scheme);
  },
  // https://url.spec.whatwg.org/#shorten-a-urls-path
  shortenPath: function () {
    var path = this.path;
    var pathSize = path.length;
    if (pathSize && (this.scheme !== 'file' || pathSize !== 1 || !isWindowsDriveLetter(path[0], true))) {
      path.length--;
    }
  },
  // https://url.spec.whatwg.org/#concept-url-serializer
  serialize: function () {
    var url = this;
    var scheme = url.scheme;
    var username = url.username;
    var password = url.password;
    var host = url.host;
    var port = url.port;
    var path = url.path;
    var query = url.query;
    var fragment = url.fragment;
    var output = scheme + ':';
    if (host !== null) {
      output += '//';
      if (url.includesCredentials()) {
        output += username + (password ? ':' + password : '') + '@';
      }
      output += serializeHost(host);
      if (port !== null) output += ':' + port;
    } else if (scheme === 'file') output += '//';
    if (host === null && !url.cannotBeABaseURL && path.length > 1 && path[0] === '') output += '/.';
    output += url.cannotBeABaseURL ? path[0] : path.length ? '/' + join(path, '/') : '';
    if (query !== null) output += '?' + query;
    if (fragment !== null) output += '#' + fragment;
    return output;
  },
  // https://url.spec.whatwg.org/#dom-url-href
  setHref: function (href) {
    var failure = this.parse(href);
    if (failure) throw new TypeError(failure);
    this.searchParams.update();
  },
  // https://url.spec.whatwg.org/#dom-url-origin
  getOrigin: function () {
    var scheme = this.scheme;
    var port = this.port;
    if (scheme === 'blob') try {
      return new URLConstructor(this.path[0]).origin;
    } catch (error) {
      return 'null';
    }
    if (scheme === 'file' || !this.isSpecial()) return 'null';
    return scheme + '://' + serializeHost(this.host) + (port !== null ? ':' + port : '');
  },
  // https://url.spec.whatwg.org/#dom-url-protocol
  getProtocol: function () {
    return this.scheme + ':';
  },
  setProtocol: function (protocol) {
    this.parse($toString(protocol) + ':', SCHEME_START);
  },
  // https://url.spec.whatwg.org/#dom-url-username
  getUsername: function () {
    return this.username;
  },
  setUsername: function (username) {
    var codePoints = arrayFrom($toString(username));
    if (this.cannotHaveUsernamePasswordPort()) return;
    this.username = '';
    for (var i = 0; i < codePoints.length; i++) {
      this.username += utf8PercentEncode(codePoints[i], userinfoPercentEncodeSet);
    }
  },
  // https://url.spec.whatwg.org/#dom-url-password
  getPassword: function () {
    return this.password;
  },
  setPassword: function (password) {
    var codePoints = arrayFrom($toString(password));
    if (this.cannotHaveUsernamePasswordPort()) return;
    this.password = '';
    for (var i = 0; i < codePoints.length; i++) {
      this.password += utf8PercentEncode(codePoints[i], userinfoPercentEncodeSet);
    }
  },
  // https://url.spec.whatwg.org/#dom-url-host
  getHost: function () {
    var host = this.host;
    var port = this.port;
    return host === null ? ''
      : port === null ? serializeHost(host)
      : serializeHost(host) + ':' + port;
  },
  setHost: function (host) {
    if (this.cannotBeABaseURL) return;
    this.parse(host, HOST);
  },
  // https://url.spec.whatwg.org/#dom-url-hostname
  getHostname: function () {
    var host = this.host;
    return host === null ? '' : serializeHost(host);
  },
  setHostname: function (hostname) {
    if (this.cannotBeABaseURL) return;
    this.parse(hostname, HOSTNAME);
  },
  // https://url.spec.whatwg.org/#dom-url-port
  getPort: function () {
    var port = this.port;
    return port === null ? '' : $toString(port);
  },
  setPort: function (port) {
    if (this.cannotHaveUsernamePasswordPort()) return;
    port = $toString(port);
    if (port === '') this.port = null;
    else this.parse(port, PORT);
  },
  // https://url.spec.whatwg.org/#dom-url-pathname
  getPathname: function () {
    var path = this.path;
    return this.cannotBeABaseURL ? path[0] : path.length ? '/' + join(path, '/') : '';
  },
  setPathname: function (pathname) {
    if (this.cannotBeABaseURL) return;
    this.path = [];
    this.parse(pathname, PATH_START);
  },
  // https://url.spec.whatwg.org/#dom-url-search
  getSearch: function () {
    var query = this.query;
    return query ? '?' + query : '';
  },
  setSearch: function (search) {
    search = $toString(search);
    if (search === '') {
      this.query = null;
    } else {
      if (charAt(search, 0) === '?') search = stringSlice(search, 1);
      this.query = '';
      this.parse(search, QUERY);
    }
    this.searchParams.update();
  },
  // https://url.spec.whatwg.org/#dom-url-searchparams
  getSearchParams: function () {
    return this.searchParams.facade;
  },
  // https://url.spec.whatwg.org/#dom-url-hash
  getHash: function () {
    var fragment = this.fragment;
    return fragment ? '#' + fragment : '';
  },
  setHash: function (hash) {
    hash = $toString(hash);
    if (hash === '') {
      this.fragment = null;
      return;
    }
    if (charAt(hash, 0) === '#') hash = stringSlice(hash, 1);
    this.fragment = '';
    this.parse(hash, FRAGMENT);
  },
  update: function () {
    this.query = this.searchParams.serialize() || null;
  }
};

// `URL` constructor
// https://url.spec.whatwg.org/#url-class
var URLConstructor = function URL(url /* , base */) {
  var that = anInstance(this, URLPrototype);
  var base = validateArgumentsLength(arguments.length, 1) > 1 ? arguments[1] : undefined;
  var state = setInternalState(that, new URLState(url, false, base));
  if (!DESCRIPTORS) {
    that.href = state.serialize();
    that.origin = state.getOrigin();
    that.protocol = state.getProtocol();
    that.username = state.getUsername();
    that.password = state.getPassword();
    that.host = state.getHost();
    that.hostname = state.getHostname();
    that.port = state.getPort();
    that.pathname = state.getPathname();
    that.search = state.getSearch();
    that.searchParams = state.getSearchParams();
    that.hash = state.getHash();
  }
};

var URLPrototype = URLConstructor.prototype;

var accessorDescriptor = function (getter, setter) {
  return {
    get: function () {
      return getInternalURLState(this)[getter]();
    },
    set: setter && function (value) {
      return getInternalURLState(this)[setter](value);
    },
    configurable: true,
    enumerable: true
  };
};

if (DESCRIPTORS) {
  // `URL.prototype.href` accessors pair
  // https://url.spec.whatwg.org/#dom-url-href
  defineBuiltInAccessor(URLPrototype, 'href', accessorDescriptor('serialize', 'setHref'));
  // `URL.prototype.origin` getter
  // https://url.spec.whatwg.org/#dom-url-origin
  defineBuiltInAccessor(URLPrototype, 'origin', accessorDescriptor('getOrigin'));
  // `URL.prototype.protocol` accessors pair
  // https://url.spec.whatwg.org/#dom-url-protocol
  defineBuiltInAccessor(URLPrototype, 'protocol', accessorDescriptor('getProtocol', 'setProtocol'));
  // `URL.prototype.username` accessors pair
  // https://url.spec.whatwg.org/#dom-url-username
  defineBuiltInAccessor(URLPrototype, 'username', accessorDescriptor('getUsername', 'setUsername'));
  // `URL.prototype.password` accessors pair
  // https://url.spec.whatwg.org/#dom-url-password
  defineBuiltInAccessor(URLPrototype, 'password', accessorDescriptor('getPassword', 'setPassword'));
  // `URL.prototype.host` accessors pair
  // https://url.spec.whatwg.org/#dom-url-host
  defineBuiltInAccessor(URLPrototype, 'host', accessorDescriptor('getHost', 'setHost'));
  // `URL.prototype.hostname` accessors pair
  // https://url.spec.whatwg.org/#dom-url-hostname
  defineBuiltInAccessor(URLPrototype, 'hostname', accessorDescriptor('getHostname', 'setHostname'));
  // `URL.prototype.port` accessors pair
  // https://url.spec.whatwg.org/#dom-url-port
  defineBuiltInAccessor(URLPrototype, 'port', accessorDescriptor('getPort', 'setPort'));
  // `URL.prototype.pathname` accessors pair
  // https://url.spec.whatwg.org/#dom-url-pathname
  defineBuiltInAccessor(URLPrototype, 'pathname', accessorDescriptor('getPathname', 'setPathname'));
  // `URL.prototype.search` accessors pair
  // https://url.spec.whatwg.org/#dom-url-search
  defineBuiltInAccessor(URLPrototype, 'search', accessorDescriptor('getSearch', 'setSearch'));
  // `URL.prototype.searchParams` getter
  // https://url.spec.whatwg.org/#dom-url-searchparams
  defineBuiltInAccessor(URLPrototype, 'searchParams', accessorDescriptor('getSearchParams'));
  // `URL.prototype.hash` accessors pair
  // https://url.spec.whatwg.org/#dom-url-hash
  defineBuiltInAccessor(URLPrototype, 'hash', accessorDescriptor('getHash', 'setHash'));
}

// `URL.prototype.toJSON` method
// https://url.spec.whatwg.org/#dom-url-tojson
defineBuiltIn(URLPrototype, 'toJSON', function toJSON() {
  return getInternalURLState(this).serialize();
}, { enumerable: true });

// `URL.prototype.toString` method
// https://url.spec.whatwg.org/#URL-stringification-behavior
defineBuiltIn(URLPrototype, 'toString', function toString() {
  return getInternalURLState(this).serialize();
}, { enumerable: true });

if (NativeURL) {
  var nativeCreateObjectURL = NativeURL.createObjectURL;
  var nativeRevokeObjectURL = NativeURL.revokeObjectURL;
  // `URL.createObjectURL` method
  // https://developer.mozilla.org/en-US/docs/Web/API/URL/createObjectURL
  if (nativeCreateObjectURL) defineBuiltIn(URLConstructor, 'createObjectURL', bind(nativeCreateObjectURL, NativeURL));
  // `URL.revokeObjectURL` method
  // https://developer.mozilla.org/en-US/docs/Web/API/URL/revokeObjectURL
  if (nativeRevokeObjectURL) defineBuiltIn(URLConstructor, 'revokeObjectURL', bind(nativeRevokeObjectURL, NativeURL));
}

setToStringTag(URLConstructor, 'URL');

$({ global: true, constructor: true, forced: !USE_NATIVE_URL, sham: !DESCRIPTORS }, {
  URL: URLConstructor
});

});

// MODULE: ./node_modules/.pnpm/[email protected]/node_modules/core-js/modules/web.url.js
var web_url_namespaceFn = /*#__PURE__*/__webpack_require__.cw(function(module, exports) {

// TODO: Remove this module from `core-js@4` since it's replaced to module below
(web_url_constructor_namespaceFn());

});

// MODULE: ./node_modules/.pnpm/[email protected]/node_modules/core-js/modules/web.url.to-json.js
var web_url_to_json_namespaceFn = /*#__PURE__*/__webpack_require__.cw(function(module, exports) {

var $ = (export_namespaceFn());
var call = (function_call_namespaceFn());
var getBuiltInPrototypeMethod = (get_built_in_prototype_method_namespaceFn());

var toString = getBuiltInPrototypeMethod('URL', 'toString');

// `URL.prototype.toJSON` method
// https://url.spec.whatwg.org/#dom-url-tojson
$({ target: 'URL', proto: true, enumerable: true }, {
  toJSON: function toJSON() {
    return call(toString, this);
  }
});

});

// EXTERNAL MODULE: ./node_modules/.pnpm/[email protected]/node_modules/core-js/modules/es.array.push.js
var es_array_push = __webpack_require__(9921);
// EXTERNAL MODULE: ./node_modules/.pnpm/[email protected]/node_modules/core-js/modules/es.iterator.constructor.js
var es_iterator_constructor = __webpack_require__(7144);
;// ./node_modules/.pnpm/[email protected]/node_modules/core-js/modules/es.iterator.find.js
es_iterator_find_namespaceFn();

;// ./node_modules/.pnpm/[email protected]/node_modules/core-js/modules/es.iterator.for-each.js
es_iterator_for_each_namespaceFn();

;// ./node_modules/.pnpm/[email protected]/node_modules/core-js/modules/es.error.cause.js
es_error_cause_namespaceFn();

;// ./node_modules/.pnpm/[email protected]/node_modules/core-js/modules/es.array.includes.js
es_array_includes_namespaceFn();

;// ./node_modules/.pnpm/[email protected]/node_modules/core-js/modules/es.iterator.filter.js
es_iterator_filter_namespaceFn();

// EXTERNAL MODULE: ./node_modules/.pnpm/[email protected]/node_modules/core-js/modules/es.iterator.map.js
var es_iterator_map = __webpack_require__(9542);
;// ./node_modules/.pnpm/[email protected]/node_modules/core-js/modules/es.object.assign.js
es_object_assign_namespaceFn();

// EXTERNAL MODULE: ./node_modules/.pnpm/[email protected]/node_modules/core-js/modules/es.reflect.to-string-tag.js
var es_reflect_to_string_tag = __webpack_require__(1941);
;// ./node_modules/.pnpm/[email protected]/node_modules/typedi/esm5/token.class.js
/**
 * Used to create unique typed service identifier.
 * Useful when service has only interface, but don't have a class.
 */
var Token = /** @class */function () {
  /**
   * @param name Token name, optional and only used for debugging purposes.
   */
  function Token(name) {
    this.name = name;
  }
  return Token;
}();

;// ./node_modules/.pnpm/[email protected]/node_modules/typedi/esm5/error/service-not-found.error.js

var __extends = undefined && undefined.__extends || function () {
  var _extendStatics = function extendStatics(d, b) {
    _extendStatics = Object.setPrototypeOf || {
      __proto__: []
    } instanceof Array && function (d, b) {
      d.__proto__ = b;
    } || function (d, b) {
      for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p];
    };
    return _extendStatics(d, b);
  };
  return function (d, b) {
    _extendStatics(d, b);
    function __() {
      this.constructor = d;
    }
    d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());
  };
}();

/**
 * Thrown when requested service was not found.
 */
var ServiceNotFoundError = /** @class */function (_super) {
  __extends(ServiceNotFoundError, _super);
  function ServiceNotFoundError(identifier) {
    var _a, _b;
    var _this = _super.call(this) || this;
    _this.name = 'ServiceNotFoundError';
    /** Normalized identifier name used in the error message. */
    _this.normalizedIdentifier = '<UNKNOWN_IDENTIFIER>';
    if (typeof identifier === 'string') {
      _this.normalizedIdentifier = identifier;
    } else if (identifier instanceof Token) {
      _this.normalizedIdentifier = "Token<" + (identifier.name || 'UNSET_NAME') + ">";
    } else if (identifier && (identifier.name || ((_a = identifier.prototype) === null || _a === void 0 ? void 0 : _a.name))) {
      _this.normalizedIdentifier = "MaybeConstructable<" + identifier.name + ">" || 0;
    }
    return _this;
  }
  Object.defineProperty(ServiceNotFoundError.prototype, "message", {
    get: function () {
      return "Service with \"" + this.normalizedIdentifier + "\" identifier was not found in the container. " + "Register it before usage via explicitly calling the \"Container.set\" function or using the \"@Service()\" decorator.";
    },
    enumerable: false,
    configurable: true
  });
  return ServiceNotFoundError;
}(Error);

;// ./node_modules/.pnpm/[email protected]/node_modules/typedi/esm5/error/cannot-instantiate-value.error.js

var cannot_instantiate_value_error_extends = undefined && undefined.__extends || function () {
  var _extendStatics = function extendStatics(d, b) {
    _extendStatics = Object.setPrototypeOf || {
      __proto__: []
    } instanceof Array && function (d, b) {
      d.__proto__ = b;
    } || function (d, b) {
      for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p];
    };
    return _extendStatics(d, b);
  };
  return function (d, b) {
    _extendStatics(d, b);
    function __() {
      this.constructor = d;
    }
    d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());
  };
}();

/**
 * Thrown when DI cannot inject value into property decorated by @Inject decorator.
 */
var CannotInstantiateValueError = /** @class */function (_super) {
  cannot_instantiate_value_error_extends(CannotInstantiateValueError, _super);
  function CannotInstantiateValueError(identifier) {
    var _a, _b;
    var _this = _super.call(this) || this;
    _this.name = 'CannotInstantiateValueError';
    /** Normalized identifier name used in the error message. */
    _this.normalizedIdentifier = '<UNKNOWN_IDENTIFIER>';
    // TODO: Extract this to a helper function and share between this and NotFoundError.
    if (typeof identifier === 'string') {
      _this.normalizedIdentifier = identifier;
    } else if (identifier instanceof Token) {
      _this.normalizedIdentifier = "Token<" + (identifier.name || 'UNSET_NAME') + ">";
    } else if (identifier && (identifier.name || ((_a = identifier.prototype) === null || _a === void 0 ? void 0 : _a.name))) {
      _this.normalizedIdentifier = "MaybeConstructable<" + identifier.name + ">" || 0;
    }
    return _this;
  }
  Object.defineProperty(CannotInstantiateValueError.prototype, "message", {
    get: function () {
      return "Cannot instantiate the requested value for the \"" + this.normalizedIdentifier + "\" identifier. " + "The related metadata doesn't contain a factory or a type to instantiate.";
    },
    enumerable: false,
    configurable: true
  });
  return CannotInstantiateValueError;
}(Error);

;// ./node_modules/.pnpm/[email protected]/node_modules/core-js/modules/es.symbol.description.js
es_symbol_description_namespaceFn();

;// ./node_modules/.pnpm/[email protected]/node_modules/typedi/esm5/empty.const.js

var EMPTY_VALUE = Symbol('EMPTY_VALUE');
;// ./node_modules/.pnpm/[email protected]/node_modules/typedi/esm5/container-instance.class.js










var __assign = undefined && undefined.__assign || function () {
  __assign = Object.assign || function (t) {
    for (var s, i = 1, n = arguments.length; i < n; i++) {
      s = arguments[i];
      for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p)) t[p] = s[p];
    }
    return t;
  };
  return __assign.apply(this, arguments);
};
var __spreadArrays = undefined && undefined.__spreadArrays || function () {
  for (var s = 0, i = 0, il = arguments.length; i < il; i++) s += arguments[i].length;
  for (var r = Array(s), k = 0, i = 0; i < il; i++) for (var a = arguments[i], j = 0, jl = a.length; j < jl; j++, k++) r[k] = a[j];
  return r;
};





/**
 * TypeDI can have multiple containers.
 * One container is ContainerInstance.
 */
var ContainerInstance = /** @class */function () {
  function ContainerInstance(id) {
    /** All registered services in the container. */
    this.services = [];
    this.id = id;
  }
  ContainerInstance.prototype.has = function (identifier) {
    return !!this.findService(identifier);
  };
  ContainerInstance.prototype.get = function (identifier) {
    var globalContainer = Container.of(undefined);
    var globalService = globalContainer.findService(identifier);
    var scopedService = this.findService(identifier);
    if (globalService && globalService.global === true) return this.getServiceValue(globalService);
    if (scopedService) return this.getServiceValue(scopedService);
    /** If it's the first time requested in the child container we load it from parent and set it. */
    if (globalService && this !== globalContainer) {
      var clonedService = __assign({}, globalService);
      clonedService.value = EMPTY_VALUE;
      /**
       * We need to immediately set the empty value from the root container
       * to prevent infinite lookup in cyclic dependencies.
       */
      this.set(clonedService);
      var value = this.getServiceValue(clonedService);
      this.set(__assign(__assign({}, clonedService), {
        value: value
      }));
      return value;
    }
    if (globalService) return this.getServiceValue(globalService);
    throw new ServiceNotFoundError(identifier);
  };
  ContainerInstance.prototype.getMany = function (identifier) {
    var _this = this;
    return this.findAllServices(identifier).map(function (service) {
      return _this.getServiceValue(service);
    });
  };
  ContainerInstance.prototype.set = function (identifierOrServiceMetadata, value) {
    var _this = this;
    if (identifierOrServiceMetadata instanceof Array) {
      identifierOrServiceMetadata.forEach(function (data) {
        return _this.set(data);
      });
      return this;
    }
    if (typeof identifierOrServiceMetadata === 'string' || identifierOrServiceMetadata instanceof Token) {
      return this.set({
        id: identifierOrServiceMetadata,
        type: null,
        value: value,
        factory: undefined,
        global: false,
        multiple: false,
        eager: false,
        transient: false
      });
    }
    if (typeof identifierOrServiceMetadata === 'function') {
      return this.set({
        id: identifierOrServiceMetadata,
        // TODO: remove explicit casting
        type: identifierOrServiceMetadata,
        value: value,
        factory: undefined,
        global: false,
        multiple: false,
        eager: false,
        transient: false
      });
    }
    var newService = __assign({
      id: new Token('UNREACHABLE'),
      type: null,
      factory: undefined,
      value: EMPTY_VALUE,
      global: false,
      multiple: false,
      eager: false,
      transient: false
    }, identifierOrServiceMetadata);
    var service = this.findService(newService.id);
    if (service && service.multiple !== true) {
      Object.assign(service, newService);
    } else {
      this.services.push(newService);
    }
    if (newService.eager) {
      this.get(newService.id);
    }
    return this;
  };
  /**
   * Removes services with a given service identifiers.
   */
  ContainerInstance.prototype.remove = function (identifierOrIdentifierArray) {
    var _this = this;
    if (Array.isArray(identifierOrIdentifierArray)) {
      identifierOrIdentifierArray.forEach(function (id) {
        return _this.remove(id);
      });
    } else {
      this.services = this.services.filter(function (service) {
        if (service.id === identifierOrIdentifierArray) {
          _this.destroyServiceInstance(service);
          return false;
        }
        return true;
      });
    }
    return this;
  };
  /**
   * Completely resets the container by removing all previously registered services from it.
   */
  ContainerInstance.prototype.reset = function (options) {
    var _this = this;
    if (options === void 0) {
      options = {
        strategy: 'resetValue'
      };
    }
    switch (options.strategy) {
      case 'resetValue':
        this.services.forEach(function (service) {
          return _this.destroyServiceInstance(service);
        });
        break;
      case 'resetServices':
        this.services.forEach(function (service) {
          return _this.destroyServiceInstance(service);
        });
        this.services = [];
        break;
      default:
        throw new Error('Received invalid reset strategy.');
    }
    return this;
  };
  /**
   * Returns all services registered with the given identifier.
   */
  ContainerInstance.prototype.findAllServices = function (identifier) {
    return this.services.filter(function (service) {
      return service.id === identifier;
    });
  };
  /**
   * Finds registered service in the with a given service identifier.
   */
  ContainerInstance.prototype.findService = function (identifier) {
    return this.services.find(function (service) {
      return service.id === identifier;
    });
  };
  /**
   * Gets the value belonging to `serviceMetadata.id`.
   *
   * - if `serviceMetadata.value` is already set it is immediately returned
   * - otherwise the requested type is resolved to the value saved to `serviceMetadata.value` and returned
   */
  ContainerInstance.prototype.getServiceValue = function (serviceMetadata) {
    var _a;
    var value = EMPTY_VALUE;
    /**
     * If the service value has been set to anything prior to this call we return that value.
     * NOTE: This part builds on the assumption that transient dependencies has no value set ever.
     */
    if (serviceMetadata.value !== EMPTY_VALUE) {
      return serviceMetadata.value;
    }
    /** If both factory and type is missing, we cannot resolve the requested ID. */
    if (!serviceMetadata.factory && !serviceMetadata.type) {
      throw new CannotInstantiateValueError(serviceMetadata.id);
    }
    /**
     * If a factory is defined it takes priority over creating an instance via `new`.
     * The return value of the factory is not checked, we believe by design that the user knows what he/she is doing.
     */
    if (serviceMetadata.factory) {
      /**
       * If we received the factory in the [Constructable<Factory>, "functionName"] format, we need to create the
       * factory first and then call the specified function on it.
       */
      if (serviceMetadata.factory instanceof Array) {
        var factoryInstance = void 0;
        try {
          /** Try to get the factory from TypeDI first, if failed, fall back to simply initiating the class. */
          factoryInstance = this.get(serviceMetadata.factory[0]);
        } catch (error) {
          if (error instanceof ServiceNotFoundError) {
            factoryInstance = new serviceMetadata.factory[0]();
          } else {
            throw error;
          }
        }
        value = factoryInstance[serviceMetadata.factory[1]](this, serviceMetadata.id);
      } else {
        /** If only a simple function was provided we simply call it. */
        value = serviceMetadata.factory(this, serviceMetadata.id);
      }
    }
    /**
     * If no factory was provided and only then, we create the instance from the type if it was set.
     */
    if (!serviceMetadata.factory && serviceMetadata.type) {
      var constructableTargetType = serviceMetadata.type;
      // setup constructor parameters for a newly initialized service
      var paramTypes = ((_a = Reflect) === null || _a === void 0 ? void 0 : _a.getMetadata('design:paramtypes', constructableTargetType)) || [];
      var params = this.initializeParams(constructableTargetType, paramTypes);
      // "extra feature" - always pass container instance as the last argument to the service function
      // this allows us to support javascript where we don't have decorators and emitted metadata about dependencies
      // need to be injected, and user can use provided container to get instances he needs
      params.push(this);
      value = new (constructableTargetType.bind.apply(constructableTargetType, __spreadArrays([void 0], params)))();
      // TODO: Calling this here, leads to infinite loop, because @Inject decorator registerds a handler
      // TODO: which calls Container.get, which will check if the requested type has a value set and if not
      // TODO: it will start the instantiation process over. So this is currently called outside of the if branch
      // TODO: after the current value has been assigned to the serviceMetadata.
      // this.applyPropertyHandlers(constructableTargetType, value as Constructable<unknown>);
    }
    /** If this is not a transient service, and we resolved something, then we set it as the value. */
    if (!serviceMetadata.transient && value !== EMPTY_VALUE) {
      serviceMetadata.value = value;
    }
    if (value === EMPTY_VALUE) {
      /** This branch should never execute, but better to be safe than sorry. */
      throw new CannotInstantiateValueError(serviceMetadata.id);
    }
    if (serviceMetadata.type) {
      this.applyPropertyHandlers(serviceMetadata.type, value);
    }
    return value;
  };
  /**
   * Initializes all parameter types for a given target service class.
   */
  ContainerInstance.prototype.initializeParams = function (target, paramTypes) {
    var _this = this;
    return paramTypes.map(function (paramType, index) {
      var paramHandler = Container.handlers.find(function (handler) {
        /**
         * @Inject()-ed values are stored as parameter handlers and they reference their target
         * when created. So when a class is extended the @Inject()-ed values are not inherited
         * because the handler still points to the old object only.
         *
         * As a quick fix a single level parent lookup is added via `Object.getPrototypeOf(target)`,
         * however this should be updated to a more robust solution.
         *
         * TODO: Add proper inheritance handling: either copy the handlers when a class is registered what
         * TODO: has it's parent already registered as dependency or make the lookup search up to the base Object.
         */
        return (handler.object === target || handler.object === Object.getPrototypeOf(target)) && handler.index === index;
      });
      if (paramHandler) return paramHandler.value(_this);
      if (paramType && paramType.name && !_this.isPrimitiveParamType(paramType.name)) {
        return _this.get(paramType);
      }
      return undefined;
    });
  };
  /**
   * Checks if given parameter type is primitive type or not.
   */
  ContainerInstance.prototype.isPrimitiveParamType = function (paramTypeName) {
    return ['string', 'boolean', 'number', 'object'].includes(paramTypeName.toLowerCase());
  };
  /**
   * Applies all registered handlers on a given target class.
   */
  ContainerInstance.prototype.applyPropertyHandlers = function (target, instance) {
    var _this = this;
    Container.handlers.forEach(function (handler) {
      if (typeof handler.index === 'number') return;
      if (handler.object.constructor !== target && !(target.prototype instanceof handler.object.constructor)) return;
      if (handler.propertyName) {
        instance[handler.propertyName] = handler.value(_this);
      }
    });
  };
  /**
   * Checks if the given service metadata contains a destroyable service instance and destroys it in place. If the service
   * contains a callable function named `destroy` it is called but not awaited and the return value is ignored..
   *
   * @param serviceMetadata the service metadata containing the instance to destroy
   * @param force when true the service will be always destroyed even if it's cannot be re-created
   */
  ContainerInstance.prototype.destroyServiceInstance = function (serviceMetadata, force) {
    if (force === void 0) {
      force = false;
    }
    /** We reset value only if we can re-create it (aka type or factory exists). */
    var shouldResetValue = force || !!serviceMetadata.type || !!serviceMetadata.factory;
    if (shouldResetValue) {
      /** If we wound a function named destroy we call it without any params. */
      if (typeof (serviceMetadata === null || serviceMetadata === void 0 ? void 0 : serviceMetadata.value)['destroy'] === 'function') {
        try {
          serviceMetadata.value.destroy();
        } catch (error) {
          /** We simply ignore the errors from the destroy function. */
        }
      }
      serviceMetadata.value = EMPTY_VALUE;
    }
  };
  return ContainerInstance;
}();

;// ./node_modules/.pnpm/[email protected]/node_modules/typedi/esm5/container.class.js





/**
 * Service container.
 */
var Container = /** @class */function () {
  function Container() {}
  /**
   * Gets a separate container instance for the given instance id.
   */
  Container.of = function (containerId) {
    if (containerId === void 0) {
      containerId = 'default';
    }
    if (containerId === 'default') return this.globalInstance;
    var container = this.instances.find(function (instance) {
      return instance.id === containerId;
    });
    if (!container) {
      container = new ContainerInstance(containerId);
      this.instances.push(container);
      // TODO: Why we are not reseting here? Let's reset here. (I have added the commented code.)
      // container.reset();
    }
    return container;
  };
  Container.has = function (identifier) {
    return this.globalInstance.has(identifier);
  };
  Container.get = function (identifier) {
    return this.globalInstance.get(identifier);
  };
  Container.getMany = function (id) {
    return this.globalInstance.getMany(id);
  };
  Container.set = function (identifierOrServiceMetadata, value) {
    this.globalInstance.set(identifierOrServiceMetadata, value);
    return this;
  };
  /**
   * Removes services with a given service identifiers.
   */
  Container.remove = function (identifierOrIdentifierArray) {
    this.globalInstance.remove(identifierOrIdentifierArray);
    return this;
  };
  /**
   * Completely resets the container by removing all previously registered services and handlers from it.
   */
  Container.reset = function (containerId) {
    if (containerId === void 0) {
      containerId = 'default';
    }
    if (containerId == 'default') {
      this.globalInstance.reset();
      this.instances.forEach(function (instance) {
        return instance.reset();
      });
    } else {
      var instance = this.instances.find(function (instance) {
        return instance.id === containerId;
      });
      if (instance) {
        instance.reset();
        this.instances.splice(this.instances.indexOf(instance), 1);
      }
    }
    return this;
  };
  /**
   * Registers a new handler.
   */
  Container.registerHandler = function (handler) {
    this.handlers.push(handler);
    return this;
  };
  /**
   * Helper method that imports given services.
   */
  /* eslint-disable-next-line @typescript-eslint/no-unused-vars */
  Container.import = function (services) {
    return this;
  };
  /**
   * All registered handlers. The @Inject() decorator uses handlers internally to mark a property for injection.
   **/
  Container.handlers = [];
  /**  Global container instance. */
  Container.globalInstance = new ContainerInstance('default');
  /** Other containers created using Container.of method. */
  Container.instances = [];
  return Container;
}();

;// ./node_modules/.pnpm/[email protected]/node_modules/typedi/esm5/decorators/service.decorator.js



function Service(optionsOrServiceIdentifier) {
  return function (targetConstructor) {
    var serviceMetadata = {
      id: targetConstructor,
      // TODO: Let's investigate why we receive Function type instead of a constructable.
      type: targetConstructor,
      factory: undefined,
      multiple: false,
      global: false,
      eager: false,
      transient: false,
      value: EMPTY_VALUE
    };
    if (optionsOrServiceIdentifier instanceof Token || typeof optionsOrServiceIdentifier === 'string') {
      /** We received a Token or string ID. */
      serviceMetadata.id = optionsOrServiceIdentifier;
    } else if (optionsOrServiceIdentifier) {
      /** We received a ServiceOptions object. */
      serviceMetadata.id = optionsOrServiceIdentifier.id || targetConstructor;
      serviceMetadata.factory = optionsOrServiceIdentifier.factory || undefined;
      serviceMetadata.multiple = optionsOrServiceIdentifier.multiple || false;
      serviceMetadata.global = optionsOrServiceIdentifier.global || false;
      serviceMetadata.eager = optionsOrServiceIdentifier.eager || false;
      serviceMetadata.transient = optionsOrServiceIdentifier.transient || false;
    }
    Container.set(serviceMetadata);
  };
}
;// ./src/services/index.ts


const services_Container = Container.of('default');
;// ./node_modules/.pnpm/[email protected]/node_modules/core-js/modules/es.string.ends-with.js
es_string_ends_with_namespaceFn();

;// ./src/utils/hosts.ts

function isDomain(hostname, domain) {
  return hostname === domain || hostname.endsWith(`.${domain}`);
}
function isEh(hostname) {
  if (hostname === FORUM) return false;
  if (hostname === REPO) return false;
  return isDomain(hostname, EH);
}
function isUnion(hostname) {
  return isDomain(hostname, EXU);
}
function isEhGt(hostname) {
  return isDomain(hostname, EHGT);
}
function isEx(hostname) {
  return isDomain(hostname, EX) || isUnion(hostname);
}
function isRepo(hostname) {
  return isDomain(hostname, REPO);
}
function isHathNetwork(hostname) {
  return isDomain(hostname, HATH);
}
function isWiki(hostname) {
  return hostname === 'ehwiki.org';
}
function isValidHost(hostname) {
  if (!hostname) return false;
  return isEh(hostname) || isEx(hostname) || isHathNetwork(hostname) || isRepo(hostname) || isWiki(hostname);
}
const EX = 'exhentai.org';
const EH = 'e-hentai.org';
const EXU = 'exhentai55ld2wyap5juskbm67czulomrouspdacjamjeloj7ugjbsad.onion';
const EHGT = 'ehgt.org';
const REPO = 'repo.e-hentai.org';
const HATH = 'hath.network';
const FORUM = 'forums.e-hentai.org';
;// ./node_modules/.pnpm/[email protected]/node_modules/core-js/modules/es.promise.js
es_promise_namespaceFn();

;// ./node_modules/.pnpm/[email protected]/node_modules/tslib/tslib.es6.mjs
/******************************************************************************
Copyright (c) Microsoft Corporation.

Permission to use, copy, modify, and/or distribute this software for any
purpose with or without fee is hereby granted.

THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH
REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY
AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT,
INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM
LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR
OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
PERFORMANCE OF THIS SOFTWARE.
***************************************************************************** */
/* global Reflect, Promise, SuppressedError, Symbol, Iterator */

var extendStatics = function(d, b) {
  extendStatics = Object.setPrototypeOf ||
      ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||
      function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };
  return extendStatics(d, b);
};

function tslib_es6_extends(d, b) {
  if (typeof b !== "function" && b !== null)
      throw new TypeError("Class extends value " + String(b) + " is not a constructor or null");
  extendStatics(d, b);
  function __() { this.constructor = d; }
  d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());
}

var tslib_es6_assign = function() {
  tslib_es6_assign = Object.assign || function __assign(t) {
      for (var s, i = 1, n = arguments.length; i < n; i++) {
          s = arguments[i];
          for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p)) t[p] = s[p];
      }
      return t;
  }
  return tslib_es6_assign.apply(this, arguments);
}

function __rest(s, e) {
  var t = {};
  for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)
      t[p] = s[p];
  if (s != null && typeof Object.getOwnPropertySymbols === "function")
      for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
          if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))
              t[p[i]] = s[p[i]];
      }
  return t;
}

function __decorate(decorators, target, key, desc) {
  var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
  if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
  else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
  return c > 3 && r && Object.defineProperty(target, key, r), r;
}

function __param(paramIndex, decorator) {
  return function (target, key) { decorator(target, 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 target = !descriptorIn && ctor ? contextIn["static"] ? ctor : ctor.prototype : null;
  var descriptor = descriptorIn || (target ? Object.getOwnPropertyDescriptor(target, contextIn.name) : {});
  var _, done = false;
  for (var i = decorators.length - 1; i >= 0; i--) {
      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 result = (0, decorators[i])(kind === "accessor" ? { get: descriptor.get, set: descriptor.set } : descriptor[key], context);
      if (kind === "accessor") {
          if (result === void 0) continue;
          if (result === null || typeof result !== "object") throw new TypeError("Object expected");
          if (_ = accept(result.get)) descriptor.get = _;
          if (_ = accept(result.set)) descriptor.set = _;
          if (_ = accept(result.init)) initializers.unshift(_);
      }
      else if (_ = accept(result)) {
          if (kind === "field") initializers.unshift(_);
          else descriptor[key] = _;
      }
  }
  if (target) Object.defineProperty(target, contextIn.name, descriptor);
  done = true;
};

function __runInitializers(thisArg, initializers, value) {
  var useValue = arguments.length > 2;
  for (var i = 0; i < initializers.length; i++) {
      value = useValue ? initializers[i].call(thisArg, value) : initializers[i].call(thisArg);
  }
  return useValue ? value : void 0;
};

function __propKey(x) {
  return typeof x === "symbol" ? x : "".concat(x);
};

function __setFunctionName(f, name, prefix) {
  if (typeof name === "symbol") name = name.description ? "[".concat(name.description, "]") : "";
  return Object.defineProperty(f, "name", { configurable: true, value: prefix ? "".concat(prefix, " ", name) : name });
};

function __metadata(metadataKey, metadataValue) {
  if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(metadataKey, metadataValue);
}

function __awaiter(thisArg, _arguments, P, generator) {
  function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
  return new (P || (P = Promise))(function (resolve, reject) {
      function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
      function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
      function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
      step((generator = generator.apply(thisArg, _arguments || [])).next());
  });
}

function __generator(thisArg, body) {
  var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, 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(n) { return function (v) { return step([n, v]); }; }
  function step(op) {
      if (f) throw new TypeError("Generator is already executing.");
      while (g && (g = 0, op[0] && (_ = 0)), _) try {
          if (f = 1, y && (t = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t = y["return"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;
          if (y = 0, t) op = [op[0] & 2, t.value];
          switch (op[0]) {
              case 0: case 1: t = 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 (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }
                  if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }
                  if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }
                  if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }
                  if (t[2]) _.ops.pop();
                  _.trys.pop(); continue;
          }
          op = body.call(thisArg, _);
      } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }
      if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };
  }
}

var __createBinding = Object.create ? (function(o, m, k, k2) {
  if (k2 === undefined) k2 = k;
  var desc = Object.getOwnPropertyDescriptor(m, k);
  if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
      desc = { enumerable: true, get: function() { return m[k]; } };
  }
  Object.defineProperty(o, k2, desc);
}) : (function(o, m, k, k2) {
  if (k2 === undefined) k2 = k;
  o[k2] = m[k];
});

function __exportStar(m, o) {
  for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(o, p)) __createBinding(o, m, p);
}

function __values(o) {
  var s = typeof Symbol === "function" && Symbol.iterator, m = s && o[s], i = 0;
  if (m) return m.call(o);
  if (o && typeof o.length === "number") return {
      next: function () {
          if (o && i >= o.length) o = void 0;
          return { value: o && o[i++], done: !o };
      }
  };
  throw new TypeError(s ? "Object is not iterable." : "Symbol.iterator is not defined.");
}

function __read(o, n) {
  var m = typeof Symbol === "function" && o[Symbol.iterator];
  if (!m) return o;
  var i = m.call(o), r, ar = [], e;
  try {
      while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);
  }
  catch (error) { e = { error: error }; }
  finally {
      try {
          if (r && !r.done && (m = i["return"])) m.call(i);
      }
      finally { if (e) throw e.error; }
  }
  return ar;
}

/** @deprecated */
function __spread() {
  for (var ar = [], i = 0; i < arguments.length; i++)
      ar = ar.concat(__read(arguments[i]));
  return ar;
}

/** @deprecated */
function tslib_es6_spreadArrays() {
  for (var s = 0, i = 0, il = arguments.length; i < il; i++) s += arguments[i].length;
  for (var r = Array(s), k = 0, i = 0; i < il; i++)
      for (var a = arguments[i], j = 0, jl = a.length; j < jl; j++, k++)
          r[k] = a[j];
  return r;
}

function __spreadArray(to, from, pack) {
  if (pack || arguments.length === 2) for (var i = 0, l = from.length, ar; i < l; i++) {
      if (ar || !(i in from)) {
          if (!ar) ar = Array.prototype.slice.call(from, 0, i);
          ar[i] = from[i];
      }
  }
  return to.concat(ar || Array.prototype.slice.call(from));
}

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 || []), i, q = [];
  return i = Object.create((typeof AsyncIterator === "function" ? AsyncIterator : Object).prototype), verb("next"), verb("throw"), verb("return", awaitReturn), i[Symbol.asyncIterator] = function () { return this; }, i;
  function awaitReturn(f) { return function (v) { return Promise.resolve(v).then(f, reject); }; }
  function verb(n, f) { if (g[n]) { i[n] = function (v) { return new Promise(function (a, b) { q.push([n, v, a, b]) > 1 || resume(n, v); }); }; if (f) i[n] = f(i[n]); } }
  function resume(n, v) { try { step(g[n](v)); } catch (e) { settle(q[0][3], e); } }
  function step(r) { r.value instanceof __await ? Promise.resolve(r.value.v).then(fulfill, reject) : settle(q[0][2], r); }
  function fulfill(value) { resume("next", value); }
  function reject(value) { resume("throw", value); }
  function settle(f, v) { if (f(v), q.shift(), q.length) resume(q[0][0], q[0][1]); }
}

function __asyncDelegator(o) {
  var i, p;
  return i = {}, verb("next"), verb("throw", function (e) { throw e; }), verb("return"), i[Symbol.iterator] = function () { return this; }, i;
  function verb(n, f) { i[n] = o[n] ? function (v) { return (p = !p) ? { value: __await(o[n](v)), done: false } : f ? f(v) : v; } : f; }
}

function __asyncValues(o) {
  if (!Symbol.asyncIterator) throw new TypeError("Symbol.asyncIterator is not defined.");
  var m = o[Symbol.asyncIterator], i;
  return m ? m.call(o) : (o = typeof __values === "function" ? __values(o) : o[Symbol.iterator](), i = {}, verb("next"), verb("throw"), verb("return"), i[Symbol.asyncIterator] = function () { return this; }, i);
  function verb(n) { i[n] = o[n] && function (v) { return new Promise(function (resolve, reject) { v = o[n](v), settle(resolve, reject, v.done, v.value); }); }; }
  function settle(resolve, reject, d, v) { Promise.resolve(v).then(function(v) { resolve({ value: v, done: d }); }, reject); }
}

function __makeTemplateObject(cooked, raw) {
  if (Object.defineProperty) { Object.defineProperty(cooked, "raw", { value: raw }); } else { cooked.raw = raw; }
  return cooked;
};

var __setModuleDefault = Object.create ? (function(o, v) {
  Object.defineProperty(o, "default", { enumerable: true, value: v });
}) : function(o, v) {
  o["default"] = v;
};

var ownKeys = function(o) {
  ownKeys = Object.getOwnPropertyNames || function (o) {
    var ar = [];
    for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
    return ar;
  };
  return ownKeys(o);
};

function __importStar(mod) {
  if (mod && mod.__esModule) return mod;
  var result = {};
  if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
  __setModuleDefault(result, mod);
  return result;
}

function __importDefault(mod) {
  return (mod && mod.__esModule) ? mod : { default: mod };
}

function __classPrivateFieldGet(receiver, state, kind, f) {
  if (kind === "a" && !f) throw new TypeError("Private accessor was defined without a getter");
  if (typeof state === "function" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError("Cannot read private member from an object whose class did not declare it");
  return kind === "m" ? f : kind === "a" ? f.call(receiver) : f ? f.value : state.get(receiver);
}

function __classPrivateFieldSet(receiver, state, value, kind, f) {
  if (kind === "m") throw new TypeError("Private method is not writable");
  if (kind === "a" && !f) throw new TypeError("Private accessor was defined without a setter");
  if (typeof state === "function" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError("Cannot write private member to an object whose class did not declare it");
  return (kind === "a" ? f.call(receiver, value) : f ? f.value = value : state.set(receiver, value)), value;
}

function __classPrivateFieldIn(state, receiver) {
  if (receiver === null || (typeof receiver !== "object" && typeof receiver !== "function")) throw new TypeError("Cannot use 'in' operator on non-object");
  return typeof state === "function" ? receiver === state : state.has(receiver);
}

function __addDisposableResource(env, 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); } };
    env.stack.push({ value: value, dispose: dispose, async: async });
  }
  else if (async) {
    env.stack.push({ async: true });
  }
  return value;
}

var _SuppressedError = (/* unused pure expression or super */ null && (typeof SuppressedError === "function" ? SuppressedError : function (error, suppressed, message) {
  var e = new Error(message);
  return e.name = "SuppressedError", e.error = error, e.suppressed = suppressed, e;
}));

function __disposeResources(env) {
  function fail(e) {
    env.error = env.hasError ? new _SuppressedError(e, env.error, "An error was suppressed during disposal.") : e;
    env.hasError = true;
  }
  var r, s = 0;
  function next() {
    while (r = env.stack.pop()) {
      try {
        if (!r.async && s === 1) return s = 0, env.stack.push(r), Promise.resolve().then(next);
        if (r.dispose) {
          var result = r.dispose.call(r.value);
          if (r.async) return s |= 2, Promise.resolve(result).then(next, function(e) { fail(e); return next(); });
        }
        else s |= 1;
      }
      catch (e) {
        fail(e);
      }
    }
    if (s === 1) return env.hasError ? Promise.reject(env.error) : Promise.resolve();
    if (env.hasError) throw env.error;
  }
  return next();
}

function __rewriteRelativeImportExtension(path, preserveJsx) {
  if (typeof path === "string" && /^\.\.?\//.test(path)) {
      return path.replace(/\.(tsx)$|((?:\.d)?)((?:\.[^./]+?)?)\.([cm]?)ts$/i, function (m, tsx, d, ext, cm) {
          return tsx ? preserveJsx ? ".jsx" : ".js" : d && (!ext || !cm) ? m : (d + ext + "." + cm.toLowerCase() + "js");
      });
  }
  return path;
}

/* harmony default export */ const tslib_es6 = ((/* unused pure expression or super */ null && ({
  __extends: tslib_es6_extends,
  __assign: tslib_es6_assign,
  __rest,
  __decorate,
  __param,
  __esDecorate,
  __runInitializers,
  __propKey,
  __setFunctionName,
  __metadata,
  __awaiter,
  __generator,
  __createBinding,
  __exportStar,
  __values,
  __read,
  __spread,
  __spreadArrays: tslib_es6_spreadArrays,
  __spreadArray,
  __await,
  __asyncGenerator,
  __asyncDelegator,
  __asyncValues,
  __makeTemplateObject,
  __importStar,
  __importDefault,
  __classPrivateFieldGet,
  __classPrivateFieldSet,
  __classPrivateFieldIn,
  __addDisposableResource,
  __disposeResources,
  __rewriteRelativeImportExtension,
})));

;// ./src/services/logger.ts


let Logger = class Logger {
  constructor() {
    this.prefix =  true ? '💉 脚本 ' : 0;
    this.log = console.log.bind(console, this.prefix);
    this.info = console.info.bind(console, this.prefix);
    this.warn = console.warn.bind(console, this.prefix);
    this.error = console.error.bind(console, this.prefix);
    this.debug = console.debug.bind(console, this.prefix);
    this.time = label => {
      const pLabel = `${this.prefix} ${label}`;
      console.time(pLabel);
      return {
        label,
        log: (console.timeLog || console.log).bind(console, pLabel),
        end: console.timeEnd.bind(console, pLabel)
      };
    };
  }
};
Logger = __decorate([Service()], Logger);

;// ./src/utils/dom.ts



/** 网页加载后调用 */
function ready(callback) {
  const onError = ex => {
    const logger = Container.get(Logger);
    logger.error('执行文档加载回调失败', ex);
  };
  const f = () => {
    Promise.resolve().then(callback).catch(onError);
  };
  if (document.readyState === 'loading') {
    document.addEventListener('DOMContentLoaded', f, {
      passive: true,
      once: true
    });
  } else {
    setTimeout(f);
  }
}
;// EXTERNAL MODULE: ./node_modules/.pnpm/[email protected]/node_modules/core-js/modules/es.regexp.exec.js
es_regexp_exec_namespaceFn();

;// ./node_modules/.pnpm/[email protected]/node_modules/core-js/modules/es.string.starts-with.js
es_string_starts_with_namespaceFn();

;// ./node_modules/.pnpm/[email protected]/node_modules/core-js/modules/es.array.iterator.js
es_array_iterator_namespaceFn();

;// ./node_modules/.pnpm/[email protected]/node_modules/core-js/modules/es.global-this.js
es_global_this_namespaceFn();

;// ./node_modules/.pnpm/[email protected]/node_modules/core-js/modules/es.string.includes.js
es_string_includes_namespaceFn();

;// ./node_modules/.pnpm/[email protected]/node_modules/core-js/modules/web.dom-collections.iterator.js
web_dom_collections_iterator_namespaceFn();

;// ./node_modules/.pnpm/[email protected]/node_modules/core-js/modules/es.json.parse.js
es_json_parse_namespaceFn();

// EXTERNAL MODULE: ./node_modules/.pnpm/[email protected]/node_modules/core-js/modules/es.json.stringify.js
var es_json_stringify = __webpack_require__(6873);
;// ./node_modules/.pnpm/[email protected]/node_modules/core-js/modules/es.map.get-or-insert.js
es_map_get_or_insert_namespaceFn();

;// ./node_modules/.pnpm/[email protected]/node_modules/core-js/modules/es.map.get-or-insert-computed.js
es_map_get_or_insert_computed_namespaceFn();

;// ./node_modules/.pnpm/[email protected]/node_modules/idb-keyval/dist/index.js







function promisifyRequest(request) {
  return new Promise((resolve, reject) => {
    // @ts-ignore - file size hacks
    request.oncomplete = request.onsuccess = () => resolve(request.result);
    // @ts-ignore - file size hacks
    request.onabort = request.onerror = () => reject(request.error);
  });
}
function createStore(dbName, storeName) {
  let dbp;
  const getDB = () => {
    if (dbp) return dbp;
    const request = indexedDB.open(dbName);
    request.onupgradeneeded = () => request.result.createObjectStore(storeName);
    dbp = promisifyRequest(request);
    dbp.then(db => {
      // It seems like Safari sometimes likes to just close the connection.
      // It's supposed to fire this event when that happens. Let's hope it does!
      db.onclose = () => dbp = undefined;
    }, () => {
      dbp = undefined;
    });
    return dbp;
  };
  return (txMode, callback) => getDB().then(db => callback(db.transaction(storeName, txMode).objectStore(storeName)));
}
let defaultGetStoreFunc;
function defaultGetStore() {
  if (!defaultGetStoreFunc) {
    defaultGetStoreFunc = createStore('keyval-store', 'keyval');
  }
  return defaultGetStoreFunc;
}
/**
 * Get a value by its key.
 *
 * @param key
 * @param customStore Method to get a custom store. Use with caution (see the docs).
 */
function dist_get(key, customStore = defaultGetStore()) {
  return customStore('readonly', store => promisifyRequest(store.get(key)));
}
/**
 * Set a value with a key.
 *
 * @param key
 * @param value
 * @param customStore Method to get a custom store. Use with caution (see the docs).
 */
function dist_set(key, value, customStore = defaultGetStore()) {
  return customStore('readwrite', store => {
    store.put(value, key);
    return promisifyRequest(store.transaction);
  });
}
/**
 * Set multiple values at once. This is faster than calling set() multiple times.
 * It's also atomic – if one of the pairs can't be added, none will be added.
 *
 * @param entries Array of entries, where each entry is an array of `[key, value]`.
 * @param customStore Method to get a custom store. Use with caution (see the docs).
 */
function setMany(entries, customStore = defaultGetStore()) {
  return customStore('readwrite', store => {
    entries.forEach(entry => store.put(entry[1], entry[0]));
    return promisifyRequest(store.transaction);
  });
}
/**
 * Get multiple values by their keys
 *
 * @param keys
 * @param customStore Method to get a custom store. Use with caution (see the docs).
 */
function getMany(keys, customStore = defaultGetStore()) {
  return customStore('readonly', store => Promise.all(keys.map(key => promisifyRequest(store.get(key)))));
}
/**
 * Update a value. This lets you see the old value and update it as an atomic operation.
 *
 * @param key
 * @param updater A callback that takes the old value and returns a new value.
 * @param customStore Method to get a custom store. Use with caution (see the docs).
 */
function dist_update(key, updater, customStore = defaultGetStore()) {
  return customStore('readwrite', store =>
  // Need to create the promise manually.
  // If I try to chain promises, the transaction closes in browsers
  // that use a promise polyfill (IE10/11).
  new Promise((resolve, reject) => {
    const req = store.get(key);
    req.onsuccess = function () {
      try {
        store.put(updater(req.result), key);
        resolve(promisifyRequest(store.transaction));
      } catch (err) {
        reject(err);
      }
    };
    req.onerror = () => reject(req.error);
  }));
}
/**
 * Delete a particular key from the store.
 *
 * @param key
 * @param customStore Method to get a custom store. Use with caution (see the docs).
 */
function del(key, customStore = defaultGetStore()) {
  return customStore('readwrite', store => {
    store.delete(key);
    return promisifyRequest(store.transaction);
  });
}
/**
 * Delete multiple keys at once.
 *
 * @param keys List of keys to delete.
 * @param customStore Method to get a custom store. Use with caution (see the docs).
 */
function delMany(keys, customStore = defaultGetStore()) {
  return customStore('readwrite', store => {
    keys.forEach(key => store.delete(key));
    return promisifyRequest(store.transaction);
  });
}
/**
 * Clear all values in the store.
 *
 * @param customStore Method to get a custom store. Use with caution (see the docs).
 */
function dist_clear(customStore = defaultGetStore()) {
  return customStore('readwrite', store => {
    store.clear();
    return promisifyRequest(store.transaction);
  });
}
function eachCursor(store, callback) {
  store.openCursor().onsuccess = function () {
    if (!this.result) return;
    callback(this.result);
    this.result.continue();
  };
  return promisifyRequest(store.transaction);
}
/**
 * Get all keys in the store.
 *
 * @param customStore Method to get a custom store. Use with caution (see the docs).
 */
function dist_keys(customStore = defaultGetStore()) {
  return customStore('readonly', store => {
    // Fast path for modern browsers
    if (store.getAllKeys) {
      return promisifyRequest(store.getAllKeys());
    }
    const items = [];
    return eachCursor(store, cursor => items.push(cursor.key)).then(() => items);
  });
}
/**
 * Get all values in the store.
 *
 * @param customStore Method to get a custom store. Use with caution (see the docs).
 */
function dist_values(customStore = defaultGetStore()) {
  return customStore('readonly', store => {
    // Fast path for modern browsers
    if (store.getAll) {
      return promisifyRequest(store.getAll());
    }
    const items = [];
    return eachCursor(store, cursor => items.push(cursor.value)).then(() => items);
  });
}
/**
 * Get all entries in the store. Each entry is an array of `[key, value]`.
 *
 * @param customStore Method to get a custom store. Use with caution (see the docs).
 */
function dist_entries(customStore = defaultGetStore()) {
  return customStore('readonly', store => {
    // Fast path for modern browsers
    // (although, hopefully we'll get a simpler path some day)
    if (store.getAll && store.getAllKeys) {
      return Promise.all([promisifyRequest(store.getAllKeys()), promisifyRequest(store.getAll())]).then(([keys, values]) => keys.map((key, i) => [key, values[i]]));
    }
    const items = [];
    return eachCursor(store, cursor => items.push([cursor.key, cursor.value])).then(() => items);
  });
}

;// ./src/providers/user-script/storage.ts













const syncMark = '__sync__';
function storage_parse(value) {
  if (value == null) return undefined;
  try {
    return JSON.parse(value);
  } catch (_unused) {
    return undefined;
  }
}
function storage_serialize(value) {
  if (value === undefined) return undefined;
  try {
    return JSON.stringify(value);
  } catch (_unused2) {
    return undefined;
  }
}
class AsyncPolyfill {
  constructor() {
    this.listenerId = 1;
    this.listeners = new Map();
    this.store = createStore('EhSyringe', 'keyval');
  }
  async onAllStorageChange() {
    const values = new Map();
    for (const {
      name
    } of this.listeners.values()) {
      if (!values.has(name)) {
        values.set(name, await this.get(name));
      }
    }
    for (const {
      name,
      listener
    } of this.listeners.values()) {
      listener(name, undefined, values.get(name), false);
    }
  }
  onStorageChange(key, oldValue, value) {
    if (!key) {
      void this.onAllStorageChange();
      return;
    }
    for (const {
      name,
      listener
    } of this.listeners.values()) {
      if (name !== key) continue;
      listener(name, oldValue, value, false);
    }
  }
  async get(key) {
    return await dist_get(key, this.store);
  }
  async set(key, value) {
    const oldValue = await this.get(key);
    await dist_set(key, value, this.store);
    this.onStorageChange(key, oldValue, value);
  }
  async delete(key) {
    const oldValue = await this.get(key);
    await del(key, this.store);
    this.onStorageChange(key, oldValue, undefined);
  }
  async keys() {
    const ks = await dist_keys(this.store);
    return ks.filter(k => typeof k == 'string');
  }
  on(key, listener) {
    const id = this.listenerId++;
    this.listeners.set(id, {
      name: key,
      listener
    });
    return id;
  }
  off(key, id) {
    this.listeners.delete(id);
  }
}
function runAsync(f) {
  return new Promise((resolve, reject) => {
    setTimeout(() => {
      try {
        resolve(f());
      } catch (ex) {
        reject(ex instanceof Error ? ex : new Error(String(ex)));
      }
    });
  });
}
class GmAsyncStorage {
  get(key) {
    return runAsync(() => storage_parse(GM_getValue(key)));
  }
  set(key, value) {
    return runAsync(() => GM_setValue(key, storage_serialize(value)));
  }
  delete(key) {
    return runAsync(() => GM_deleteValue(key));
  }
  keys() {
    return runAsync(() => {
      const ks = GM_listValues();
      return ks.filter(k => !k.startsWith(syncMark));
    });
  }
  on(key, listener) {
    return GM_addValueChangeListener(key, (key, ov, nv) => listener(key, storage_parse(ov), storage_parse(nv)));
  }
  off(key, id) {
    GM_removeValueChangeListener(id);
  }
}
const GM_ALL_DEFINED = typeof GM_getValue == 'function' && typeof GM_setValue == 'function' && typeof GM_deleteValue == 'function' && typeof GM_listValues == 'function' && typeof GM_addValueChangeListener == 'function' && typeof GM_removeValueChangeListener == 'function';
const storage = GM_ALL_DEFINED ? new GmAsyncStorage() : new AsyncPolyfill();
class SyncStorageBase {
  get(key) {
    const value = this.getRaw(this.KEY_PREFIX + key);
    return storage_parse(value);
  }
  set(key, value) {
    this.setRaw(this.KEY_PREFIX + key, storage_serialize(value));
  }
  delete(key) {
    this.setRaw(this.KEY_PREFIX + key, undefined);
  }
  keys() {
    const names = [];
    const prefix = this.KEY_PREFIX;
    for (const key of this.listRaw()) {
      if (!key) continue;
      if (key.startsWith(prefix)) {
        names.push(key.slice(prefix.length));
      }
    }
    return names;
  }
}
class SyncPolyfill extends SyncStorageBase {
  constructor() {
    super(...arguments);
    this.KEY_PREFIX = 'EH_SYNC_POLYFILL_';
  }
  getRaw(key) {
    return localStorage.getItem(key);
  }
  setRaw(key, value) {
    if (value == null) {
      return localStorage.removeItem(key);
    }
    localStorage.setItem(key, value);
  }
  *listRaw() {
    for (let i = 0; i < localStorage.length; i++) {
      const key = localStorage.key(i);
      if (key) yield key;
    }
  }
}
class GMSyncStorage extends SyncStorageBase {
  constructor() {
    super(...arguments);
    this.KEY_PREFIX = syncMark;
  }
  getRaw(key) {
    return GM_getValue(key);
  }
  setRaw(key, value) {
    if (value == null) {
      return GM_deleteValue(key);
    }
    GM_setValue(key, value);
  }
  listRaw() {
    return GM_listValues();
  }
}
const GM_ALL_SYNC_DEFINED = typeof GM_getValue == 'function' && typeof GM_setValue == 'function' && typeof GM_deleteValue == 'function' && typeof GM_listValues == 'function';
const syncStorage = GM_ALL_SYNC_DEFINED ? new GMSyncStorage() : new SyncPolyfill();
;// ./src/services/storage.ts












var ImageLevel;
(function (ImageLevel) {
  ImageLevel[ImageLevel["hide"] = 0] = "hide";
  ImageLevel[ImageLevel["nonH"] = 1] = "nonH";
  ImageLevel[ImageLevel["r18"] = 2] = "r18";
  ImageLevel[ImageLevel["r18g"] = 3] = "r18g";
})(ImageLevel || (ImageLevel = {}));
let Storage = class Storage {
  constructor(logger) {
    this.logger = logger;
    this.defaults = {
      extensionCheck: 0,
      config: {
        translateUi: true,
        translateTag: true,
        translateTimestamp: true,
        showIntroduce: true,
        showIcon: true,
        introduceImageLevel: ImageLevel.r18g,
        autoUpdate: true,
        tagTip: true,
        overrideDbUrl: ''
      },
      database: undefined,
      databaseInfo: undefined,
      release: undefined,
      origin: 'https://e-hentai.org'
    };
    Object.defineProperty(globalThis, '__eh_storage__', {
      value: () => {
        (async () => {
          const keys = await this.keys();
          for (const key of keys) {
            console.log(key, await this.get(key));
          }
        })().catch(logger.error);
      }
    });
    this.migrate().catch(logger.error);
  }
  async get(key) {
    const value = await storage.get(key);
    if (value == null) return this.defaults[key];
    return value;
  }
  async set(key, value) {
    if (value == null) return this.delete(key);
    return storage.set(key, value);
  }
  async delete(key) {
    return await storage.delete(key);
  }
  async keys() {
    return await storage.keys();
  }
  on(key, listener) {
    return storage.on(key, listener);
  }
  off(key, listener) {
    return storage.off(key, listener);
  }
  async migrate() {
    const keys = await this.keys();
    const keysInCurrentVersion = Object.keys(this.defaults);
    const deletes = keys.filter(k => !keysInCurrentVersion.includes(k));
    if (deletes.length === 0) return;
    this.logger.log(`迁移存储版本,删除 `, deletes);
    for (const key of deletes) {
      await this.delete(key);
    }
  }
};
Storage = __decorate([Service(), __metadata("design:paramtypes", [Logger])], Storage);

;// ./node_modules/.pnpm/[email protected]/node_modules/core-js/modules/es.set.difference.v2.js
es_set_difference_v2_namespaceFn();

;// ./node_modules/.pnpm/[email protected]/node_modules/core-js/modules/es.set.intersection.v2.js
es_set_intersection_v2_namespaceFn();

;// ./node_modules/.pnpm/[email protected]/node_modules/core-js/modules/es.set.is-disjoint-from.v2.js
es_set_is_disjoint_from_v2_namespaceFn();

;// ./node_modules/.pnpm/[email protected]/node_modules/core-js/modules/es.set.is-subset-of.v2.js
es_set_is_subset_of_v2_namespaceFn();

;// ./node_modules/.pnpm/[email protected]/node_modules/core-js/modules/es.set.is-superset-of.v2.js
es_set_is_superset_of_v2_namespaceFn();

;// ./node_modules/.pnpm/[email protected]/node_modules/core-js/modules/es.set.symmetric-difference.v2.js
es_set_symmetric_difference_v2_namespaceFn();

;// ./node_modules/.pnpm/[email protected]/node_modules/core-js/modules/es.set.union.v2.js
es_set_union_v2_namespaceFn();

;// ./src/providers/common/messaging.ts













class Multicast {
  constructor(key) {
    this.key = key;
    this.listeners = new Set();
  }
  get size() {
    return this.listeners.size;
  }
  add(listener) {
    this.listeners.add(listener);
  }
  remove(listener) {
    return this.listeners.delete(listener);
  }
  async handle(request) {
    const promises = [...this.listeners.keys()].map(listener => Promise.resolve(listener(request)));
    let first, all;
    try {
      first = await Promise.race(promises);
      all = await Promise.all(promises);
      return first;
    } catch (error) {
      Object.defineProperty(error, 'request', {
        value: request,
        enumerable: true
      });
      if (first) Object.defineProperty(error, 'firstReply', {
        value: first,
        enumerable: true
      });
      if (all) Object.defineProperty(error, 'replies', {
        value: all,
        enumerable: true
      });
      throw error;
    }
  }
}
class Messaging {
  constructor() {
    this.handlers = new Map();
  }
  on(key, listener) {
    let handler = this.handlers.get(key);
    if (!handler) {
      handler = new Multicast(key);
      this.handlers.set(key, handler);
    }
    handler.add(listener);
    return {
      key,
      value: listener
    };
  }
  off(listener) {
    const handler = this.handlers.get(listener.key);
    if (!handler) return false;
    return handler.remove(listener.value);
  }
  async emit(key, args, broadcast = false) {
    const handler = this.handlers.get(key);
    if (!handler || handler.size === 0) {
      if (broadcast) return Promise.resolve(undefined);
      return Promise.reject(new Error(`消息 ${key} 还未注册过处理程序`));
    }
    const handles = handler.handle(args);
    if (broadcast) {
      try {
        return await handles;
      } catch (ex) {
        console.error(ex);
        return undefined;
      }
    }
    return handles;
  }
}
const messaging = new Messaging();
;// ./src/providers/user-script/messaging.ts

const messaging_messaging = new Messaging();
;// ./src/services/messaging.ts




let messaging_Messaging = class Messaging {
  constructor(logger) {
    this.logger = logger;
  }
  on(key, listener) {
    this.logger.log(`监听事件`, key);
    return messaging_messaging.on(key, listener);
  }
  off(listener) {
    return messaging_messaging.off(listener);
  }
  emit(key, args, broadcast = false) {
    return messaging_messaging.emit(key, args, broadcast);
  }
};
messaging_Messaging = __decorate([Service(), __metadata("design:paramtypes", [Logger])], messaging_Messaging);

;// ./node_modules/.pnpm/[email protected][email protected]/node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js
injectStylesIntoStyleTag_namespaceFn();

function injectStylesIntoStyleTag_default() { return injectStylesIntoStyleTag_default.c || (injectStylesIntoStyleTag_default.c = __webpack_require__.n(injectStylesIntoStyleTag_namespaceFn())); }
;// ./node_modules/.pnpm/[email protected][email protected]/node_modules/style-loader/dist/runtime/styleDomAPI.js
styleDomAPI_namespaceFn();

function styleDomAPI_default() { return styleDomAPI_default.c || (styleDomAPI_default.c = __webpack_require__.n(styleDomAPI_namespaceFn())); }
;// ./node_modules/.pnpm/[email protected][email protected]/node_modules/style-loader/dist/runtime/insertBySelector.js
insertBySelector_namespaceFn();

function insertBySelector_default() { return insertBySelector_default.c || (insertBySelector_default.c = __webpack_require__.n(insertBySelector_namespaceFn())); }
;// ./node_modules/.pnpm/[email protected][email protected]/node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js
setAttributesWithoutAttributes_namespaceFn();

function setAttributesWithoutAttributes_default() { return setAttributesWithoutAttributes_default.c || (setAttributesWithoutAttributes_default.c = __webpack_require__.n(setAttributesWithoutAttributes_namespaceFn())); }
;// ./node_modules/.pnpm/[email protected][email protected]/node_modules/style-loader/dist/runtime/insertStyleElement.js
insertStyleElement_namespaceFn();

function insertStyleElement_default() { return insertStyleElement_default.c || (insertStyleElement_default.c = __webpack_require__.n(insertStyleElement_namespaceFn())); }
;// ./node_modules/.pnpm/[email protected][email protected]/node_modules/style-loader/dist/runtime/styleTagTransform.js
styleTagTransform_namespaceFn();

function styleTagTransform_default() { return styleTagTransform_default.c || (styleTagTransform_default.c = __webpack_require__.n(styleTagTransform_namespaceFn())); }
// EXTERNAL MODULE: ./node_modules/.pnpm/[email protected][email protected]/node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[3].use[1]!./node_modules/.pnpm/[email protected][email protected][email protected][email protected]/node_modules/postcss-loader/dist/cjs.js??ruleSet[1].rules[3].use[2]!./node_modules/.pnpm/[email protected][email protected][email protected]/node_modules/less-loader/dist/cjs/index.js!./src/plugin/introduce/index.less
var introduce = __webpack_require__(8191);
;// ./src/plugin/introduce/index.less

      
      
      
      
      
      
      
      
      

var introduce_options = {};

introduce_options.styleTagTransform = (styleTagTransform_default()());
introduce_options.setAttributes = (setAttributesWithoutAttributes_default()());
introduce_options.insert = (insertBySelector_default()().bind)(null, ":root");
introduce_options.domAPI = (styleDomAPI_default()());
introduce_options.insertStyleElement = (insertStyleElement_default()());

var introduce_update = injectStylesIntoStyleTag_default()()(introduce/* default */.A, introduce_options);




       /* harmony default export */ const plugin_introduce = (introduce/* default */.A && introduce/* default */.A.locals ? introduce/* default */.A.locals : undefined);

// EXTERNAL MODULE: ./node_modules/.pnpm/[email protected]/node_modules/core-js/modules/es.regexp.test.js
var es_regexp_test = __webpack_require__(6607);
;// ./node_modules/.pnpm/[email protected]/node_modules/core-js/modules/es.string.match.js
es_string_match_namespaceFn();

// EXTERNAL MODULE: ./node_modules/.pnpm/[email protected]/node_modules/core-js/modules/es.string.replace.js
var es_string_replace = __webpack_require__(6667);
;// ./node_modules/.pnpm/[email protected]/node_modules/core-js/modules/es.string.trim.js
es_string_trim_namespaceFn();

;// ./node_modules/.pnpm/[email protected]/node_modules/escape-html/index.js
escape_html_namespaceFn();

function escape_html_default() { return escape_html_default.c || (escape_html_default.c = __webpack_require__.n(escape_html_namespaceFn())); }
;// ./node_modules/.pnpm/[email protected]/node_modules/emoji-regex/index.mjs
/* harmony default export */ const emoji_regex = (() => {
	// https://mths.be/emoji
	return /[#*0-9]\uFE0F?\u20E3|[\xA9\xAE\u203C\u2049\u2122\u2139\u2194-\u2199\u21A9\u21AA\u231A\u231B\u2328\u23CF\u23ED-\u23EF\u23F1\u23F2\u23F8-\u23FA\u24C2\u25AA\u25AB\u25B6\u25C0\u25FB\u25FC\u25FE\u2600-\u2604\u260E\u2611\u2614\u2615\u2618\u2620\u2622\u2623\u2626\u262A\u262E\u262F\u2638-\u263A\u2640\u2642\u2648-\u2653\u265F\u2660\u2663\u2665\u2666\u2668\u267B\u267E\u267F\u2692\u2694-\u2697\u2699\u269B\u269C\u26A0\u26A7\u26AA\u26B0\u26B1\u26BD\u26BE\u26C4\u26C8\u26CF\u26D1\u26E9\u26F0-\u26F5\u26F7\u26F8\u26FA\u2702\u2708\u2709\u270F\u2712\u2714\u2716\u271D\u2721\u2733\u2734\u2744\u2747\u2757\u2763\u27A1\u2934\u2935\u2B05-\u2B07\u2B1B\u2B1C\u2B55\u3030\u303D\u3297\u3299]\uFE0F?|[\u261D\u270C\u270D](?:\uD83C[\uDFFB-\uDFFF]|\uFE0F)?|[\u270A\u270B](?:\uD83C[\uDFFB-\uDFFF])?|[\u23E9-\u23EC\u23F0\u23F3\u25FD\u2693\u26A1\u26AB\u26C5\u26CE\u26D4\u26EA\u26FD\u2705\u2728\u274C\u274E\u2753-\u2755\u2795-\u2797\u27B0\u27BF\u2B50]|\u26D3\uFE0F?(?:\u200D\uD83D\uDCA5)?|\u26F9(?:\uD83C[\uDFFB-\uDFFF]|\uFE0F)?(?:\u200D[\u2640\u2642]\uFE0F?)?|\u2764\uFE0F?(?:\u200D(?:\uD83D\uDD25|\uD83E\uDE79))?|\uD83C(?:[\uDC04\uDD70\uDD71\uDD7E\uDD7F\uDE02\uDE37\uDF21\uDF24-\uDF2C\uDF36\uDF7D\uDF96\uDF97\uDF99-\uDF9B\uDF9E\uDF9F\uDFCD\uDFCE\uDFD4-\uDFDF\uDFF5\uDFF7]\uFE0F?|[\uDF85\uDFC2\uDFC7](?:\uD83C[\uDFFB-\uDFFF])?|[\uDFC4\uDFCA](?:\uD83C[\uDFFB-\uDFFF])?(?:\u200D[\u2640\u2642]\uFE0F?)?|[\uDFCB\uDFCC](?:\uD83C[\uDFFB-\uDFFF]|\uFE0F)?(?:\u200D[\u2640\u2642]\uFE0F?)?|[\uDCCF\uDD8E\uDD91-\uDD9A\uDE01\uDE1A\uDE2F\uDE32-\uDE36\uDE38-\uDE3A\uDE50\uDE51\uDF00-\uDF20\uDF2D-\uDF35\uDF37-\uDF43\uDF45-\uDF4A\uDF4C-\uDF7C\uDF7E-\uDF84\uDF86-\uDF93\uDFA0-\uDFC1\uDFC5\uDFC6\uDFC8\uDFC9\uDFCF-\uDFD3\uDFE0-\uDFF0\uDFF8-\uDFFF]|\uDDE6\uD83C[\uDDE8-\uDDEC\uDDEE\uDDF1\uDDF2\uDDF4\uDDF6-\uDDFA\uDDFC\uDDFD\uDDFF]|\uDDE7\uD83C[\uDDE6\uDDE7\uDDE9-\uDDEF\uDDF1-\uDDF4\uDDF6-\uDDF9\uDDFB\uDDFC\uDDFE\uDDFF]|\uDDE8\uD83C[\uDDE6\uDDE8\uDDE9\uDDEB-\uDDEE\uDDF0-\uDDF7\uDDFA-\uDDFF]|\uDDE9\uD83C[\uDDEA\uDDEC\uDDEF\uDDF0\uDDF2\uDDF4\uDDFF]|\uDDEA\uD83C[\uDDE6\uDDE8\uDDEA\uDDEC\uDDED\uDDF7-\uDDFA]|\uDDEB\uD83C[\uDDEE-\uDDF0\uDDF2\uDDF4\uDDF7]|\uDDEC\uD83C[\uDDE6\uDDE7\uDDE9-\uDDEE\uDDF1-\uDDF3\uDDF5-\uDDFA\uDDFC\uDDFE]|\uDDED\uD83C[\uDDF0\uDDF2\uDDF3\uDDF7\uDDF9\uDDFA]|\uDDEE\uD83C[\uDDE8-\uDDEA\uDDF1-\uDDF4\uDDF6-\uDDF9]|\uDDEF\uD83C[\uDDEA\uDDF2\uDDF4\uDDF5]|\uDDF0\uD83C[\uDDEA\uDDEC-\uDDEE\uDDF2\uDDF3\uDDF5\uDDF7\uDDFC\uDDFE\uDDFF]|\uDDF1\uD83C[\uDDE6-\uDDE8\uDDEE\uDDF0\uDDF7-\uDDFB\uDDFE]|\uDDF2\uD83C[\uDDE6\uDDE8-\uDDED\uDDF0-\uDDFF]|\uDDF3\uD83C[\uDDE6\uDDE8\uDDEA-\uDDEC\uDDEE\uDDF1\uDDF4\uDDF5\uDDF7\uDDFA\uDDFF]|\uDDF4\uD83C\uDDF2|\uDDF5\uD83C[\uDDE6\uDDEA-\uDDED\uDDF0-\uDDF3\uDDF7-\uDDF9\uDDFC\uDDFE]|\uDDF6\uD83C\uDDE6|\uDDF7\uD83C[\uDDEA\uDDF4\uDDF8\uDDFA\uDDFC]|\uDDF8\uD83C[\uDDE6-\uDDEA\uDDEC-\uDDF4\uDDF7-\uDDF9\uDDFB\uDDFD-\uDDFF]|\uDDF9\uD83C[\uDDE6\uDDE8\uDDE9\uDDEB-\uDDED\uDDEF-\uDDF4\uDDF7\uDDF9\uDDFB\uDDFC\uDDFF]|\uDDFA\uD83C[\uDDE6\uDDEC\uDDF2\uDDF3\uDDF8\uDDFE\uDDFF]|\uDDFB\uD83C[\uDDE6\uDDE8\uDDEA\uDDEC\uDDEE\uDDF3\uDDFA]|\uDDFC\uD83C[\uDDEB\uDDF8]|\uDDFD\uD83C\uDDF0|\uDDFE\uD83C[\uDDEA\uDDF9]|\uDDFF\uD83C[\uDDE6\uDDF2\uDDFC]|\uDF44(?:\u200D\uD83D\uDFEB)?|\uDF4B(?:\u200D\uD83D\uDFE9)?|\uDFC3(?:\uD83C[\uDFFB-\uDFFF])?(?:\u200D(?:[\u2640\u2642]\uFE0F?(?:\u200D\u27A1\uFE0F?)?|\u27A1\uFE0F?))?|\uDFF3\uFE0F?(?:\u200D(?:\u26A7\uFE0F?|\uD83C\uDF08))?|\uDFF4(?:\u200D\u2620\uFE0F?|\uDB40\uDC67\uDB40\uDC62\uDB40(?:\uDC65\uDB40\uDC6E\uDB40\uDC67|\uDC73\uDB40\uDC63\uDB40\uDC74|\uDC77\uDB40\uDC6C\uDB40\uDC73)\uDB40\uDC7F)?)|\uD83D(?:[\uDC3F\uDCFD\uDD49\uDD4A\uDD6F\uDD70\uDD73\uDD76-\uDD79\uDD87\uDD8A-\uDD8D\uDDA5\uDDA8\uDDB1\uDDB2\uDDBC\uDDC2-\uDDC4\uDDD1-\uDDD3\uDDDC-\uDDDE\uDDE1\uDDE3\uDDE8\uDDEF\uDDF3\uDDFA\uDECB\uDECD-\uDECF\uDEE0-\uDEE5\uDEE9\uDEF0\uDEF3]\uFE0F?|[\uDC42\uDC43\uDC46-\uDC50\uDC66\uDC67\uDC6B-\uDC6D\uDC72\uDC74-\uDC76\uDC78\uDC7C\uDC83\uDC85\uDC8F\uDC91\uDCAA\uDD7A\uDD95\uDD96\uDE4C\uDE4F\uDEC0\uDECC](?:\uD83C[\uDFFB-\uDFFF])?|[\uDC6E-\uDC71\uDC73\uDC77\uDC81\uDC82\uDC86\uDC87\uDE45-\uDE47\uDE4B\uDE4D\uDE4E\uDEA3\uDEB4\uDEB5](?:\uD83C[\uDFFB-\uDFFF])?(?:\u200D[\u2640\u2642]\uFE0F?)?|[\uDD74\uDD90](?:\uD83C[\uDFFB-\uDFFF]|\uFE0F)?|[\uDC00-\uDC07\uDC09-\uDC14\uDC16-\uDC25\uDC27-\uDC3A\uDC3C-\uDC3E\uDC40\uDC44\uDC45\uDC51-\uDC65\uDC6A\uDC79-\uDC7B\uDC7D-\uDC80\uDC84\uDC88-\uDC8E\uDC90\uDC92-\uDCA9\uDCAB-\uDCFC\uDCFF-\uDD3D\uDD4B-\uDD4E\uDD50-\uDD67\uDDA4\uDDFB-\uDE2D\uDE2F-\uDE34\uDE37-\uDE41\uDE43\uDE44\uDE48-\uDE4A\uDE80-\uDEA2\uDEA4-\uDEB3\uDEB7-\uDEBF\uDEC1-\uDEC5\uDED0-\uDED2\uDED5-\uDED9\uDEDC-\uDEDF\uDEEB\uDEEC\uDEF4-\uDEFC\uDFE0-\uDFEB\uDFF0]|\uDC08(?:\u200D\u2B1B)?|\uDC15(?:\u200D\uD83E\uDDBA)?|\uDC26(?:\u200D(?:\u2B1B|\uD83D\uDD25))?|\uDC3B(?:\u200D\u2744\uFE0F?)?|\uDC41\uFE0F?(?:\u200D\uD83D\uDDE8\uFE0F?)?|\uDC68(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:\uDC8B\u200D\uD83D)?\uDC68|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D(?:[\uDC68\uDC69]\u200D\uD83D(?:\uDC66(?:\u200D\uD83D\uDC66)?|\uDC67(?:\u200D\uD83D[\uDC66\uDC67])?)|[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uDC66(?:\u200D\uD83D\uDC66)?|\uDC67(?:\u200D\uD83D[\uDC66\uDC67])?)|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]))|\uD83C(?:\uDFFB(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:\uDC8B\u200D\uD83D)?\uDC68\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D(?:[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uDC30\u200D\uD83D\uDC68\uD83C[\uDFFC-\uDFFF])|\uD83E(?:[\uDD1D\uDEEF]\u200D\uD83D\uDC68\uD83C[\uDFFC-\uDFFF]|[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3])))?|\uDFFC(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:\uDC8B\u200D\uD83D)?\uDC68\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D(?:[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uDC30\u200D\uD83D\uDC68\uD83C[\uDFFB\uDFFD-\uDFFF])|\uD83E(?:[\uDD1D\uDEEF]\u200D\uD83D\uDC68\uD83C[\uDFFB\uDFFD-\uDFFF]|[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3])))?|\uDFFD(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:\uDC8B\u200D\uD83D)?\uDC68\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D(?:[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uDC30\u200D\uD83D\uDC68\uD83C[\uDFFB\uDFFC\uDFFE\uDFFF])|\uD83E(?:[\uDD1D\uDEEF]\u200D\uD83D\uDC68\uD83C[\uDFFB\uDFFC\uDFFE\uDFFF]|[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3])))?|\uDFFE(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:\uDC8B\u200D\uD83D)?\uDC68\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D(?:[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uDC30\u200D\uD83D\uDC68\uD83C[\uDFFB-\uDFFD\uDFFF])|\uD83E(?:[\uDD1D\uDEEF]\u200D\uD83D\uDC68\uD83C[\uDFFB-\uDFFD\uDFFF]|[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3])))?|\uDFFF(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:\uDC8B\u200D\uD83D)?\uDC68\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D(?:[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uDC30\u200D\uD83D\uDC68\uD83C[\uDFFB-\uDFFE])|\uD83E(?:[\uDD1D\uDEEF]\u200D\uD83D\uDC68\uD83C[\uDFFB-\uDFFE]|[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3])))?))?|\uDC69(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:\uDC8B\u200D\uD83D)?[\uDC68\uDC69]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D(?:[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uDC66(?:\u200D\uD83D\uDC66)?|\uDC67(?:\u200D\uD83D[\uDC66\uDC67])?|\uDC69\u200D\uD83D(?:\uDC66(?:\u200D\uD83D\uDC66)?|\uDC67(?:\u200D\uD83D[\uDC66\uDC67])?))|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]))|\uD83C(?:\uDFFB(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:[\uDC68\uDC69]|\uDC8B\u200D\uD83D[\uDC68\uDC69])\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D(?:[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uDC30\u200D\uD83D\uDC69\uD83C[\uDFFC-\uDFFF])|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D[\uDC68\uDC69]\uD83C[\uDFFC-\uDFFF]|\uDEEF\u200D\uD83D\uDC69\uD83C[\uDFFC-\uDFFF])))?|\uDFFC(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:[\uDC68\uDC69]|\uDC8B\u200D\uD83D[\uDC68\uDC69])\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D(?:[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uDC30\u200D\uD83D\uDC69\uD83C[\uDFFB\uDFFD-\uDFFF])|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D[\uDC68\uDC69]\uD83C[\uDFFB\uDFFD-\uDFFF]|\uDEEF\u200D\uD83D\uDC69\uD83C[\uDFFB\uDFFD-\uDFFF])))?|\uDFFD(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:[\uDC68\uDC69]|\uDC8B\u200D\uD83D[\uDC68\uDC69])\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D(?:[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uDC30\u200D\uD83D\uDC69\uD83C[\uDFFB\uDFFC\uDFFE\uDFFF])|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D[\uDC68\uDC69]\uD83C[\uDFFB\uDFFC\uDFFE\uDFFF]|\uDEEF\u200D\uD83D\uDC69\uD83C[\uDFFB\uDFFC\uDFFE\uDFFF])))?|\uDFFE(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:[\uDC68\uDC69]|\uDC8B\u200D\uD83D[\uDC68\uDC69])\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D(?:[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uDC30\u200D\uD83D\uDC69\uD83C[\uDFFB-\uDFFD\uDFFF])|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D[\uDC68\uDC69]\uD83C[\uDFFB-\uDFFD\uDFFF]|\uDEEF\u200D\uD83D\uDC69\uD83C[\uDFFB-\uDFFD\uDFFF])))?|\uDFFF(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:[\uDC68\uDC69]|\uDC8B\u200D\uD83D[\uDC68\uDC69])\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D(?:[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uDC30\u200D\uD83D\uDC69\uD83C[\uDFFB-\uDFFE])|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D[\uDC68\uDC69]\uD83C[\uDFFB-\uDFFE]|\uDEEF\u200D\uD83D\uDC69\uD83C[\uDFFB-\uDFFE])))?))?|\uDD75(?:\uD83C[\uDFFB-\uDFFF]|\uFE0F)?(?:\u200D[\u2640\u2642]\uFE0F?)?|\uDE2E(?:\u200D\uD83D\uDCA8)?|\uDE35(?:\u200D\uD83D\uDCAB)?|\uDE36(?:\u200D\uD83C\uDF2B\uFE0F?)?|\uDE42(?:\u200D[\u2194\u2195]\uFE0F?)?|\uDEB6(?:\uD83C[\uDFFB-\uDFFF])?(?:\u200D(?:[\u2640\u2642]\uFE0F?(?:\u200D\u27A1\uFE0F?)?|\u27A1\uFE0F?))?)|\uD83E(?:[\uDD0C\uDD0F\uDD18-\uDD1F\uDD30-\uDD34\uDD36\uDD77\uDDB5\uDDB6\uDDBB\uDDD2\uDDD3\uDDD5\uDEC3-\uDEC5\uDEF0\uDEF2-\uDEFA](?:\uD83C[\uDFFB-\uDFFF])?|[\uDD26\uDD35\uDD37-\uDD39\uDD3C-\uDD3E\uDDB8\uDDB9\uDDCD\uDDCF\uDDD4\uDDD6-\uDDDD](?:\uD83C[\uDFFB-\uDFFF])?(?:\u200D[\u2640\u2642]\uFE0F?)?|[\uDDDE\uDDDF](?:\u200D[\u2640\u2642]\uFE0F?)?|[\uDD0D\uDD0E\uDD10-\uDD17\uDD20-\uDD25\uDD27-\uDD2F\uDD3A\uDD3F-\uDD45\uDD47-\uDD76\uDD78-\uDDB4\uDDB7\uDDBA\uDDBC-\uDDCC\uDDD0\uDDE0-\uDDFF\uDE70-\uDE7C\uDE80-\uDEC2\uDEC6\uDEC8\uDECC-\uDEDD\uDEDF-\uDEEB\uDEEF]|\uDDCE(?:\uD83C[\uDFFB-\uDFFF])?(?:\u200D(?:[\u2640\u2642]\uFE0F?(?:\u200D\u27A1\uFE0F?)?|\u27A1\uFE0F?))?|\uDDD1(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3\uDE70]|\uDD1D\u200D\uD83E\uDDD1|\uDDD1\u200D\uD83E\uDDD2(?:\u200D\uD83E\uDDD2)?|\uDDD2(?:\u200D\uD83E\uDDD2)?))|\uD83C(?:\uDFFB(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D(?:\uD83D\uDC8B\u200D)?\uD83E\uDDD1\uD83C[\uDFFC-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D(?:[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uDC30\u200D\uD83E\uDDD1\uD83C[\uDFFC-\uDFFF])|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3\uDE70]|\uDD1D\u200D\uD83E\uDDD1\uD83C[\uDFFB-\uDFFF]|\uDEEF\u200D\uD83E\uDDD1\uD83C[\uDFFC-\uDFFF])))?|\uDFFC(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D(?:\uD83D\uDC8B\u200D)?\uD83E\uDDD1\uD83C[\uDFFB\uDFFD-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D(?:[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uDC30\u200D\uD83E\uDDD1\uD83C[\uDFFB\uDFFD-\uDFFF])|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3\uDE70]|\uDD1D\u200D\uD83E\uDDD1\uD83C[\uDFFB-\uDFFF]|\uDEEF\u200D\uD83E\uDDD1\uD83C[\uDFFB\uDFFD-\uDFFF])))?|\uDFFD(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D(?:\uD83D\uDC8B\u200D)?\uD83E\uDDD1\uD83C[\uDFFB\uDFFC\uDFFE\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D(?:[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uDC30\u200D\uD83E\uDDD1\uD83C[\uDFFB\uDFFC\uDFFE\uDFFF])|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3\uDE70]|\uDD1D\u200D\uD83E\uDDD1\uD83C[\uDFFB-\uDFFF]|\uDEEF\u200D\uD83E\uDDD1\uD83C[\uDFFB\uDFFC\uDFFE\uDFFF])))?|\uDFFE(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D(?:\uD83D\uDC8B\u200D)?\uD83E\uDDD1\uD83C[\uDFFB-\uDFFD\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D(?:[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uDC30\u200D\uD83E\uDDD1\uD83C[\uDFFB-\uDFFD\uDFFF])|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3\uDE70]|\uDD1D\u200D\uD83E\uDDD1\uD83C[\uDFFB-\uDFFF]|\uDEEF\u200D\uD83E\uDDD1\uD83C[\uDFFB-\uDFFD\uDFFF])))?|\uDFFF(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D(?:\uD83D\uDC8B\u200D)?\uD83E\uDDD1\uD83C[\uDFFB-\uDFFE]|\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D(?:[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uDC30\u200D\uD83E\uDDD1\uD83C[\uDFFB-\uDFFE])|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3\uDE70]|\uDD1D\u200D\uD83E\uDDD1\uD83C[\uDFFB-\uDFFF]|\uDEEF\u200D\uD83E\uDDD1\uD83C[\uDFFB-\uDFFE])))?))?|\uDEF1(?:\uD83C(?:\uDFFB(?:\u200D\uD83E\uDEF2\uD83C[\uDFFC-\uDFFF])?|\uDFFC(?:\u200D\uD83E\uDEF2\uD83C[\uDFFB\uDFFD-\uDFFF])?|\uDFFD(?:\u200D\uD83E\uDEF2\uD83C[\uDFFB\uDFFC\uDFFE\uDFFF])?|\uDFFE(?:\u200D\uD83E\uDEF2\uD83C[\uDFFB-\uDFFD\uDFFF])?|\uDFFF(?:\u200D\uD83E\uDEF2\uD83C[\uDFFB-\uDFFE])?))?)/g;
});
__webpack_require__.dn(emoji_regex);

;// ./src/services/tagging.ts











const emojiReg = emoji_regex();
const nsDic = {
  r: 'reclass',
  reclass: 'reclass',
  l: 'language',
  language: 'language',
  lang: 'language',
  loc: 'location',
  location: 'location',
  o: 'other',
  other: 'other',
  p: 'parody',
  parody: 'parody',
  series: 'parody',
  c: 'character',
  char: 'character',
  character: 'character',
  cos: 'cosplayer',
  coser: 'cosplayer',
  cosplayer: 'cosplayer',
  g: 'group',
  group: 'group',
  creator: 'group',
  circle: 'group',
  a: 'artist',
  artist: 'artist',
  m: 'male',
  male: 'male',
  f: 'female',
  female: 'female',
  x: 'mixed',
  mixed: 'mixed'
};
const shortNsDic = {
  rows: '',
  reclass: 'r',
  language: 'l',
  parody: 'p',
  character: 'c',
  group: 'g',
  artist: 'a',
  cosplayer: 'cos',
  male: 'm',
  female: 'f',
  mixed: 'x',
  other: 'o',
  location: 'loc',
  temp: ''
};
let Tagging = class Tagging {
  constructor() {
    this.suggestUrl = 'https://forums.e-hentai.org/index.php?showtopic=246656';
    this.namespaceTranslate = {
      rows: '行名',
      artist: '艺术家',
      cosplayer: 'Coser',
      parody: '原作',
      character: '角色',
      group: '团队',
      language: '语言',
      other: '其他',
      female: '女',
      male: '男',
      mixed: '混',
      location: '地点',
      reclass: '重新分类',
      temp: '临时'
    };
  }
  namespace(ns) {
    if (!ns) return 'temp';
    if (ns in nsDic) return nsDic[ns];
    ns = ns.toLowerCase();
    if (ns in nsDic) return nsDic[ns];
    ns = ns.trim();
    if (ns in nsDic) return nsDic[ns];
    ns = ns[0];
    if (ns in nsDic) return nsDic[ns];
    return 'temp';
  }
  ns(ns) {
    const fns = this.namespace(ns);
    return shortNsDic[fns];
  }
  removePara(name) {
    return name.replace(/^<p>(.+?)<\/p>$/, '$1').trim();
  }
  markImagesAndEmoji(text) {
    return text.replace(emojiReg, `<span ehs-emoji>$&</span>`).replace(/<img(.*?)>/gi, `<img onerror="this.style.display='none'" ehs-icon $1>`);
  }
  removeImagesAndEmoji(text) {
    return text.replace(emojiReg, '').replace(/<img.*?>/gi, '').trim();
  }
  removeHtmlTags(text) {
    return text.replace(/<abbr title="(\w+:)?([^"]+)" ns="(\w+)">/gi, '($3:$2)').replace(/<(img|a).*?>/gi, '').replace(/<(p|strong|em|abbr)>/gi, '').replace(/<\/(a|p|strong|em|abbr)>/gi, '').trim();
  }
  isTagName(name) {
    if (!name || typeof name != 'string') return false;
    return /^[a-z0-9. -]+$/.test(name);
  }
  fullKey(tag) {
    const ns = 'namespace' in tag ? this.ns(tag.namespace) : tag.ns;
    const key = tag.key.toLowerCase();
    return ns ? `${ns}:${key}` : key;
  }
  searchTerm(tag) {
    const ns = 'namespace' in tag ? this.ns(tag.namespace) : tag.ns;
    const key = tag.key.toLowerCase();
    const nsP = ns ? `${ns}:` : '';
    const search = key.includes(' ') ? `"${key}$"` : `${key}$`;
    return nsP + search;
  }
  editorUrl(tag) {
    const namespace = 'namespace' in tag ? this.namespace(tag.namespace) : this.namespace(tag.ns);
    const key = tag.key.toLowerCase();
    return `https://ehtt.vercel.app/edit/${namespace}/${encodeURIComponent(key)}`;
  }
  makeTagMatchHtml(suggestion, markTag = 'mark') {
    const tag = suggestion.tag;
    const cnNamespace = this.namespaceTranslate[this.namespace(tag.ns)];
    let cnNameHtml = '';
    let enNameHtml;
    if (tag.ns) {
      cnNameHtml += escape_html_default()()(cnNamespace) + ':';
    }
    if (suggestion.match.cn) {
      const range = suggestion.match.cn;
      cnNameHtml += `${escape_html_default()()(tag.cn.slice(0, range.start))}<${markTag}>${escape_html_default()()(tag.cn.slice(range.start, range.end))}</${markTag}>${escape_html_default()()(tag.cn.slice(range.end))}`;
    } else {
      cnNameHtml += escape_html_default()()(tag.cn);
    }
    if (suggestion.match.key) {
      const range = suggestion.match.key;
      enNameHtml = `${escape_html_default()()(tag.key.slice(0, range.start))}<${markTag}>${escape_html_default()()(tag.key.slice(range.start, range.end))}</${markTag}>${escape_html_default()()(tag.key.slice(range.end))}`;
    } else {
      enNameHtml = escape_html_default()()(tag.key);
    }
    return {
      cn: cnNameHtml,
      en: enNameHtml
    };
  }
};
Tagging = __decorate([Service()], Tagging);

;// ./src/plugin/introduce/index.ts












let Introduce = class Introduce {
  constructor(logger, storage, messaging, tagging) {
    this.logger = logger;
    this.storage = storage;
    this.messaging = messaging;
    this.tagging = tagging;
    this.target = null;
    this.onclick = e => {
      var _target$getAttribute;
      const target = this.findTarget(e.target);
      if (!target) {
        return;
      }
      this.target = target;
      const isOpen = !!target.style.color;
      if (!isOpen) {
        this.closeIntroduceBox();
        return;
      }
      const m = /'(.*)'/gi.exec((_target$getAttribute = target.getAttribute('onclick')) !== null && _target$getAttribute !== void 0 ? _target$getAttribute : '');
      if (!(m !== null && m !== void 0 && m[1])) return;
      const m2 = m[1].split(':');
      let namespace = 'temp';
      let tag;
      if (m2.length === 1) {
        tag = m2[0];
      } else {
        namespace = m2.shift();
        tag = m2.join(':');
      }
      this.openIntroduceBox(namespace, tag, () => this.target !== target).catch(this.logger.error);
    };
    this.init().catch(logger.error);
  }
  async init() {
    const conf = await this.storage.get('config');
    if (!conf.showIntroduce) return;
    const tagList = document.querySelector('#taglist');
    this.tagList = tagList;
    const gridRight = document.querySelector('#gd5');
    if (!(tagList && gridRight)) return;
    this.logger.log('标签介绍');
    this.initIntroduceBox();
    gridRight.insertBefore(this.introduceBox, null);
    tagList.addEventListener('click', this.onclick);
  }
  initIntroduceBox() {
    this.introduceBox = document.createElement('div');
    this.introduceBox.id = 'ehs-introduce-box';
    this.introduceBox.addEventListener('click', ev => {
      let target = ev.target;
      if (target instanceof HTMLElement && target.classList.contains('ehs-close')) {
        const selectedTag = this.tagList.querySelector('[style*="color"]');
        if (selectedTag) {
          selectedTag.click();
        } else {
          this.closeIntroduceBox();
        }
        return;
      }
      while (target) {
        if (target.nodeName === 'A' && 'href' in target) break;
        target = target.parentNode;
      }
      if (target) {
        const a = target;
        ev.preventDefault();
        window.open(a.href, '_BLANK');
      }
    });
  }
  findTarget(node) {
    const isTarget = n => n.nodeType === Node.ELEMENT_NODE && n.nodeName === 'A' && n.id.startsWith('ta_') && n.parentElement != null && (n.parentElement.classList.contains('gt') || n.parentElement.classList.contains('gtl') || n.parentElement.classList.contains('gtw'));
    while (node) {
      if (isTarget(node)) return node;
      node = node.parentNode;
    }
    return null;
  }
  onImageError(ev) {
    const target = ev.target;
    // eslint-disable-next-line @typescript-eslint/unbound-method
    target.removeEventListener('error', this.onImageError);
    target.referrerPolicy = '';
  }
  async openIntroduceBox(namespace, key, canceled) {
    const timer = this.logger.time('获取标签介绍');
    const tagData = await this.messaging.emit('get-tag', this.tagging.fullKey({
      namespace,
      key
    }));
    timer.log(tagData);
    timer.end();
    if (canceled()) {
      return;
    }
    const editorUrl = this.tagging.editorUrl({
      namespace,
      key
    });
    if (tagData) {
      var _tagData$links;
      const tagEn = `${this.tagging.namespace(tagData.ns)}:${tagData.key}`;
      // language=HTML
      this.introduceBox.innerHTML = `
            <div class="ehs-title">
                <div title="${`${this.tagging.removeImagesAndEmoji(tagData.name)}\n${tagEn}`}">
                    <div class="ehs-cn">${this.tagging.markImagesAndEmoji(tagData.name)}</div>
                    <div class="ehs-en">${tagEn}</div>
                </div>
                <span class="ehs-close"></span>
            </div>
            <div class="ehs-content">
                ${tagData.intro || `<div class="ehs-no-intro">
                        <h3>无介绍</h3>
                        <center><a href="${editorUrl}" target="_blank">提供介绍</a></center>
                    </div> `}
            </div>
            <div class="ehs-href">${(_tagData$links = tagData.links) !== null && _tagData$links !== void 0 ? _tagData$links : ''}</div>`;
    } else {
      // language=HTML
      this.introduceBox.innerHTML = `
            <div class="ehs-title">
                <div title="${namespace}:${key}">
                    <div class="ehs-cn">${namespace}:${key}</div>
                    <div class="ehs-en">该标签尚未翻译</div>
                </div>
                <span class="ehs-close"></span>
            </div>
            <div class="ehs-content">
                <div class="ehs-no-translation">
                    <h3>该标签尚未翻译</h3>
                ${namespace === 'temp' ? `
                    <p>
                        该标签尚未正式添加至 EH 标签系统。在提供翻译前,需要在 <a href="${this.tagging.suggestUrl}" target="_blank">EH 论坛</a>发帖将该标签移动到合适的命名空间。
                    </p>` : `
                    <center>
                        <a href="${editorUrl}" target="_blank">提供翻译</a>
                    </center>`}
                </div>
            </div>`;
    }
    this.introduceBox.querySelectorAll('img').forEach(img => {
      img.referrerPolicy = 'no-referrer';
      // eslint-disable-next-line @typescript-eslint/unbound-method
      img.addEventListener('error', this.onImageError);
    });
  }
  closeIntroduceBox() {
    this.introduceBox.innerHTML = '';
  }
};
Introduce = __decorate([Service(), __metadata("design:paramtypes", [Logger, Storage, messaging_Messaging, Tagging])], Introduce);

;// ./node_modules/.pnpm/[email protected]/node_modules/core-js/modules/es.array.sort.js
es_array_sort_namespaceFn();

;// ./node_modules/.pnpm/[email protected]/node_modules/core-js/modules/es.string.search.js
es_string_search_namespaceFn();

;// ./node_modules/.pnpm/[email protected]/node_modules/rxjs/dist/esm5/internal/util/isArrayLike.js
var isArrayLike = function isArrayLike(x) {
  return x && typeof x.length === 'number' && typeof x !== 'function';
};
;// ./node_modules/.pnpm/[email protected]/node_modules/rxjs/dist/esm5/internal/util/isFunction.js
function isFunction(value) {
  return typeof value === 'function';
}
;// ./node_modules/.pnpm/[email protected]/node_modules/rxjs/dist/esm5/internal/util/isPromise.js

function isPromise(value) {
  return isFunction(value === null || value === void 0 ? void 0 : value.then);
}
// EXTERNAL MODULE: ./node_modules/.pnpm/[email protected]/node_modules/core-js/modules/es.regexp.to-string.js
var es_regexp_to_string = __webpack_require__(5522);
;// ./node_modules/.pnpm/[email protected]/node_modules/rxjs/dist/esm5/internal/util/createErrorClass.js

function createErrorClass(createImpl) {
  var _super = function _super(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;
}
;// ./node_modules/.pnpm/[email protected]/node_modules/rxjs/dist/esm5/internal/util/UnsubscriptionError.js




var UnsubscriptionError = createErrorClass(function (_super) {
  return function UnsubscriptionErrorImpl(errors) {
    _super(this);
    this.message = errors ? errors.length + " errors occurred during unsubscription:\n" + errors.map(function (err, i) {
      return i + 1 + ") " + err.toString();
    }).join('\n  ') : '';
    this.name = 'UnsubscriptionError';
    this.errors = errors;
  };
});
;// ./node_modules/.pnpm/[email protected]/node_modules/rxjs/dist/esm5/internal/util/arrRemove.js
function arrRemove(arr, item) {
  if (arr) {
    var index = arr.indexOf(item);
    0 <= index && arr.splice(index, 1);
  }
}
;// ./node_modules/.pnpm/[email protected]/node_modules/rxjs/dist/esm5/internal/Subscription.js







var Subscription = function () {
  function Subscription(initialTeardown) {
    this.initialTeardown = initialTeardown;
    this.closed = false;
    this._parentage = null;
    this._finalizers = null;
  }
  Subscription.prototype.unsubscribe = function () {
    var e_1, _a, e_2, _b;
    var errors;
    if (!this.closed) {
      this.closed = true;
      var _parentage = this._parentage;
      if (_parentage) {
        this._parentage = null;
        if (Array.isArray(_parentage)) {
          try {
            for (var _parentage_1 = __values(_parentage), _parentage_1_1 = _parentage_1.next(); !_parentage_1_1.done; _parentage_1_1 = _parentage_1.next()) {
              var parent_1 = _parentage_1_1.value;
              parent_1.remove(this);
            }
          } catch (e_1_1) {
            e_1 = {
              error: e_1_1
            };
          } finally {
            try {
              if (_parentage_1_1 && !_parentage_1_1.done && (_a = _parentage_1.return)) _a.call(_parentage_1);
            } finally {
              if (e_1) throw e_1.error;
            }
          }
        } else {
          _parentage.remove(this);
        }
      }
      var initialFinalizer = this.initialTeardown;
      if (isFunction(initialFinalizer)) {
        try {
          initialFinalizer();
        } catch (e) {
          errors = e instanceof UnsubscriptionError ? e.errors : [e];
        }
      }
      var _finalizers = this._finalizers;
      if (_finalizers) {
        this._finalizers = null;
        try {
          for (var _finalizers_1 = __values(_finalizers), _finalizers_1_1 = _finalizers_1.next(); !_finalizers_1_1.done; _finalizers_1_1 = _finalizers_1.next()) {
            var finalizer = _finalizers_1_1.value;
            try {
              execFinalizer(finalizer);
            } catch (err) {
              errors = errors !== null && errors !== void 0 ? errors : [];
              if (err instanceof UnsubscriptionError) {
                errors = __spreadArray(__spreadArray([], __read(errors)), __read(err.errors));
              } else {
                errors.push(err);
              }
            }
          }
        } catch (e_2_1) {
          e_2 = {
            error: e_2_1
          };
        } finally {
          try {
            if (_finalizers_1_1 && !_finalizers_1_1.done && (_b = _finalizers_1.return)) _b.call(_finalizers_1);
          } finally {
            if (e_2) throw e_2.error;
          }
        }
      }
      if (errors) {
        throw new UnsubscriptionError(errors);
      }
    }
  };
  Subscription.prototype.add = function (teardown) {
    var _a;
    if (teardown && teardown !== this) {
      if (this.closed) {
        execFinalizer(teardown);
      } else {
        if (teardown instanceof Subscription) {
          if (teardown.closed || teardown._hasParent(this)) {
            return;
          }
          teardown._addParent(this);
        }
        (this._finalizers = (_a = this._finalizers) !== null && _a !== void 0 ? _a : []).push(teardown);
      }
    }
  };
  Subscription.prototype._hasParent = function (parent) {
    var _parentage = this._parentage;
    return _parentage === parent || Array.isArray(_parentage) && _parentage.includes(parent);
  };
  Subscription.prototype._addParent = function (parent) {
    var _parentage = this._parentage;
    this._parentage = Array.isArray(_parentage) ? (_parentage.push(parent), _parentage) : _parentage ? [_parentage, parent] : parent;
  };
  Subscription.prototype._removeParent = function (parent) {
    var _parentage = this._parentage;
    if (_parentage === parent) {
      this._parentage = null;
    } else if (Array.isArray(_parentage)) {
      arrRemove(_parentage, parent);
    }
  };
  Subscription.prototype.remove = function (teardown) {
    var _finalizers = this._finalizers;
    _finalizers && arrRemove(_finalizers, teardown);
    if (teardown instanceof Subscription) {
      teardown._removeParent(this);
    }
  };
  Subscription.EMPTY = function () {
    var empty = new Subscription();
    empty.closed = true;
    return empty;
  }();
  return Subscription;
}();

var EMPTY_SUBSCRIPTION = Subscription.EMPTY;
function isSubscription(value) {
  return value instanceof Subscription || value && 'closed' in value && isFunction(value.remove) && isFunction(value.add) && isFunction(value.unsubscribe);
}
function execFinalizer(finalizer) {
  if (isFunction(finalizer)) {
    finalizer();
  } else {
    finalizer.unsubscribe();
  }
}
;// ./node_modules/.pnpm/[email protected]/node_modules/rxjs/dist/esm5/internal/config.js
var config = {
  onUnhandledError: null,
  onStoppedNotification: null,
  Promise: undefined,
  useDeprecatedSynchronousErrorHandling: false,
  useDeprecatedNextContext: false
};
;// ./node_modules/.pnpm/[email protected]/node_modules/rxjs/dist/esm5/internal/scheduler/timeoutProvider.js

var timeoutProvider = {
  setTimeout: function (handler, timeout) {
    var args = [];
    for (var _i = 2; _i < arguments.length; _i++) {
      args[_i - 2] = arguments[_i];
    }
    var delegate = timeoutProvider.delegate;
    if (delegate === null || delegate === void 0 ? void 0 : delegate.setTimeout) {
      return delegate.setTimeout.apply(delegate, __spreadArray([handler, timeout], __read(args)));
    }
    return setTimeout.apply(void 0, __spreadArray([handler, timeout], __read(args)));
  },
  clearTimeout: function (handle) {
    var delegate = timeoutProvider.delegate;
    return ((delegate === null || delegate === void 0 ? void 0 : delegate.clearTimeout) || clearTimeout)(handle);
  },
  delegate: undefined
};
;// ./node_modules/.pnpm/[email protected]/node_modules/rxjs/dist/esm5/internal/util/reportUnhandledError.js


function reportUnhandledError(err) {
  timeoutProvider.setTimeout(function () {
    var onUnhandledError = config.onUnhandledError;
    if (onUnhandledError) {
      onUnhandledError(err);
    } else {
      throw err;
    }
  });
}
;// ./node_modules/.pnpm/[email protected]/node_modules/rxjs/dist/esm5/internal/util/noop.js
function noop() {}
;// ./node_modules/.pnpm/[email protected]/node_modules/rxjs/dist/esm5/internal/NotificationFactories.js
var COMPLETE_NOTIFICATION = function () {
  return createNotification('C', undefined, undefined);
}();
function errorNotification(error) {
  return createNotification('E', undefined, error);
}
function nextNotification(value) {
  return createNotification('N', value, undefined);
}
function createNotification(kind, value, error) {
  return {
    kind: kind,
    value: value,
    error: error
  };
}
;// ./node_modules/.pnpm/[email protected]/node_modules/rxjs/dist/esm5/internal/util/errorContext.js

var errorContext_context = null;
function errorContext(cb) {
  if (config.useDeprecatedSynchronousErrorHandling) {
    var isRoot = !errorContext_context;
    if (isRoot) {
      errorContext_context = {
        errorThrown: false,
        error: null
      };
    }
    cb();
    if (isRoot) {
      var _a = errorContext_context,
        errorThrown = _a.errorThrown,
        error = _a.error;
      errorContext_context = null;
      if (errorThrown) {
        throw error;
      }
    }
  } else {
    cb();
  }
}
function captureError(err) {
  if (config.useDeprecatedSynchronousErrorHandling && errorContext_context) {
    errorContext_context.errorThrown = true;
    errorContext_context.error = err;
  }
}
;// ./node_modules/.pnpm/[email protected]/node_modules/rxjs/dist/esm5/internal/Subscriber.js









var Subscriber = function (_super) {
  tslib_es6_extends(Subscriber, _super);
  function Subscriber(destination) {
    var _this = _super.call(this) || this;
    _this.isStopped = false;
    if (destination) {
      _this.destination = destination;
      if (isSubscription(destination)) {
        destination.add(_this);
      }
    } else {
      _this.destination = EMPTY_OBSERVER;
    }
    return _this;
  }
  Subscriber.create = function (next, error, complete) {
    return new SafeSubscriber(next, error, complete);
  };
  Subscriber.prototype.next = function (value) {
    if (this.isStopped) {
      handleStoppedNotification(nextNotification(value), this);
    } else {
      this._next(value);
    }
  };
  Subscriber.prototype.error = function (err) {
    if (this.isStopped) {
      handleStoppedNotification(errorNotification(err), this);
    } else {
      this.isStopped = true;
      this._error(err);
    }
  };
  Subscriber.prototype.complete = function () {
    if (this.isStopped) {
      handleStoppedNotification(COMPLETE_NOTIFICATION, this);
    } else {
      this.isStopped = true;
      this._complete();
    }
  };
  Subscriber.prototype.unsubscribe = function () {
    if (!this.closed) {
      this.isStopped = true;
      _super.prototype.unsubscribe.call(this);
      this.destination = null;
    }
  };
  Subscriber.prototype._next = function (value) {
    this.destination.next(value);
  };
  Subscriber.prototype._error = function (err) {
    try {
      this.destination.error(err);
    } finally {
      this.unsubscribe();
    }
  };
  Subscriber.prototype._complete = function () {
    try {
      this.destination.complete();
    } finally {
      this.unsubscribe();
    }
  };
  return Subscriber;
}(Subscription);

var _bind = Function.prototype.bind;
function Subscriber_bind(fn, thisArg) {
  return _bind.call(fn, thisArg);
}
var ConsumerObserver = function () {
  function ConsumerObserver(partialObserver) {
    this.partialObserver = partialObserver;
  }
  ConsumerObserver.prototype.next = function (value) {
    var partialObserver = this.partialObserver;
    if (partialObserver.next) {
      try {
        partialObserver.next(value);
      } catch (error) {
        handleUnhandledError(error);
      }
    }
  };
  ConsumerObserver.prototype.error = function (err) {
    var partialObserver = this.partialObserver;
    if (partialObserver.error) {
      try {
        partialObserver.error(err);
      } catch (error) {
        handleUnhandledError(error);
      }
    } else {
      handleUnhandledError(err);
    }
  };
  ConsumerObserver.prototype.complete = function () {
    var partialObserver = this.partialObserver;
    if (partialObserver.complete) {
      try {
        partialObserver.complete();
      } catch (error) {
        handleUnhandledError(error);
      }
    }
  };
  return ConsumerObserver;
}();
var SafeSubscriber = function (_super) {
  tslib_es6_extends(SafeSubscriber, _super);
  function SafeSubscriber(observerOrNext, error, complete) {
    var _this = _super.call(this) || this;
    var partialObserver;
    if (isFunction(observerOrNext) || !observerOrNext) {
      partialObserver = {
        next: observerOrNext !== null && observerOrNext !== void 0 ? observerOrNext : undefined,
        error: error !== null && error !== void 0 ? error : undefined,
        complete: complete !== null && complete !== void 0 ? complete : undefined
      };
    } else {
      var context_1;
      if (_this && config.useDeprecatedNextContext) {
        context_1 = Object.create(observerOrNext);
        context_1.unsubscribe = function () {
          return _this.unsubscribe();
        };
        partialObserver = {
          next: observerOrNext.next && Subscriber_bind(observerOrNext.next, context_1),
          error: observerOrNext.error && Subscriber_bind(observerOrNext.error, context_1),
          complete: observerOrNext.complete && Subscriber_bind(observerOrNext.complete, context_1)
        };
      } else {
        partialObserver = observerOrNext;
      }
    }
    _this.destination = new ConsumerObserver(partialObserver);
    return _this;
  }
  return SafeSubscriber;
}(Subscriber);

function handleUnhandledError(error) {
  if (config.useDeprecatedSynchronousErrorHandling) {
    captureError(error);
  } else {
    reportUnhandledError(error);
  }
}
function defaultErrorHandler(err) {
  throw err;
}
function handleStoppedNotification(notification, subscriber) {
  var onStoppedNotification = config.onStoppedNotification;
  onStoppedNotification && timeoutProvider.setTimeout(function () {
    return onStoppedNotification(notification, subscriber);
  });
}
var EMPTY_OBSERVER = {
  closed: true,
  next: noop,
  error: defaultErrorHandler,
  complete: noop
};
;// ./node_modules/.pnpm/[email protected]/node_modules/rxjs/dist/esm5/internal/symbol/observable.js

var observable = function () {
  return typeof Symbol === 'function' && Symbol.observable || '@@observable';
}();
;// ./node_modules/.pnpm/[email protected]/node_modules/core-js/modules/es.array.reduce.js
es_array_reduce_namespaceFn();

;// ./node_modules/.pnpm/[email protected]/node_modules/core-js/modules/es.iterator.reduce.js
es_iterator_reduce_namespaceFn();

;// ./node_modules/.pnpm/[email protected]/node_modules/rxjs/dist/esm5/internal/util/identity.js
function identity(x) {
  return x;
}
;// ./node_modules/.pnpm/[email protected]/node_modules/rxjs/dist/esm5/internal/util/pipe.js




function pipe() {
  var fns = [];
  for (var _i = 0; _i < arguments.length; _i++) {
    fns[_i] = arguments[_i];
  }
  return pipeFromArray(fns);
}
function pipeFromArray(fns) {
  if (fns.length === 0) {
    return identity;
  }
  if (fns.length === 1) {
    return fns[0];
  }
  return function piped(input) {
    return fns.reduce(function (prev, fn) {
      return fn(prev);
    }, input);
  };
}
;// ./node_modules/.pnpm/[email protected]/node_modules/rxjs/dist/esm5/internal/Observable.js










var Observable = function () {
  function Observable(subscribe) {
    if (subscribe) {
      this._subscribe = subscribe;
    }
  }
  Observable.prototype.lift = function (operator) {
    var observable = new Observable();
    observable.source = this;
    observable.operator = operator;
    return observable;
  };
  Observable.prototype.subscribe = function (observerOrNext, error, complete) {
    var _this = this;
    var subscriber = isSubscriber(observerOrNext) ? observerOrNext : new SafeSubscriber(observerOrNext, error, complete);
    errorContext(function () {
      var _a = _this,
        operator = _a.operator,
        source = _a.source;
      subscriber.add(operator ? operator.call(subscriber, source) : source ? _this._subscribe(subscriber) : _this._trySubscribe(subscriber));
    });
    return subscriber;
  };
  Observable.prototype._trySubscribe = function (sink) {
    try {
      return this._subscribe(sink);
    } catch (err) {
      sink.error(err);
    }
  };
  Observable.prototype.forEach = function (next, promiseCtor) {
    var _this = this;
    promiseCtor = getPromiseCtor(promiseCtor);
    return new promiseCtor(function (resolve, reject) {
      var subscriber = new SafeSubscriber({
        next: function (value) {
          try {
            next(value);
          } catch (err) {
            reject(err);
            subscriber.unsubscribe();
          }
        },
        error: reject,
        complete: resolve
      });
      _this.subscribe(subscriber);
    });
  };
  Observable.prototype._subscribe = function (subscriber) {
    var _a;
    return (_a = this.source) === null || _a === void 0 ? void 0 : _a.subscribe(subscriber);
  };
  Observable.prototype[observable] = function () {
    return this;
  };
  Observable.prototype.pipe = function () {
    var operations = [];
    for (var _i = 0; _i < arguments.length; _i++) {
      operations[_i] = arguments[_i];
    }
    return pipeFromArray(operations)(this);
  };
  Observable.prototype.toPromise = function (promiseCtor) {
    var _this = this;
    promiseCtor = getPromiseCtor(promiseCtor);
    return new promiseCtor(function (resolve, reject) {
      var value;
      _this.subscribe(function (x) {
        return value = x;
      }, function (err) {
        return reject(err);
      }, function () {
        return resolve(value);
      });
    });
  };
  Observable.create = function (subscribe) {
    return new Observable(subscribe);
  };
  return Observable;
}();

function getPromiseCtor(promiseCtor) {
  var _a;
  return (_a = promiseCtor !== null && promiseCtor !== void 0 ? promiseCtor : config.Promise) !== null && _a !== void 0 ? _a : Promise;
}
function isObserver(value) {
  return value && isFunction(value.next) && isFunction(value.error) && isFunction(value.complete);
}
function isSubscriber(value) {
  return value && value instanceof Subscriber || isObserver(value) && isSubscription(value);
}
;// ./node_modules/.pnpm/[email protected]/node_modules/rxjs/dist/esm5/internal/util/isInteropObservable.js


function isInteropObservable(input) {
  return isFunction(input[observable]);
}
;// ./node_modules/.pnpm/[email protected]/node_modules/core-js/modules/es.symbol.async-iterator.js
es_symbol_async_iterator_namespaceFn();

;// ./node_modules/.pnpm/[email protected]/node_modules/rxjs/dist/esm5/internal/util/isAsyncIterable.js


function isAsyncIterable(obj) {
  return Symbol.asyncIterator && isFunction(obj === null || obj === void 0 ? void 0 : obj[Symbol.asyncIterator]);
}
;// ./node_modules/.pnpm/[email protected]/node_modules/rxjs/dist/esm5/internal/util/throwUnobservableError.js

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.");
}
;// ./node_modules/.pnpm/[email protected]/node_modules/rxjs/dist/esm5/internal/symbol/iterator.js



function getSymbolIterator() {
  if (typeof Symbol !== 'function' || !Symbol.iterator) {
    return '@@iterator';
  }
  return Symbol.iterator;
}
var iterator_iterator = getSymbolIterator();
;// ./node_modules/.pnpm/[email protected]/node_modules/rxjs/dist/esm5/internal/util/isIterable.js


function isIterable(input) {
  return isFunction(input === null || input === void 0 ? void 0 : input[iterator_iterator]);
}
;// ./node_modules/.pnpm/[email protected]/node_modules/rxjs/dist/esm5/internal/util/isReadableStreamLike.js



function readableStreamLikeToAsyncGenerator(readableStream) {
  return __asyncGenerator(this, arguments, function readableStreamLikeToAsyncGenerator_1() {
    var reader, _a, value, done;
    return __generator(this, function (_b) {
      switch (_b.label) {
        case 0:
          reader = readableStream.getReader();
          _b.label = 1;
        case 1:
          _b.trys.push([1,, 9, 10]);
          _b.label = 2;
        case 2:
          if (false) // removed by dead control flow
{}
          return [4, __await(reader.read())];
        case 3:
          _a = _b.sent(), value = _a.value, done = _a.done;
          if (!done) return [3, 5];
          return [4, __await(void 0)];
        case 4:
          return [2, _b.sent()];
        case 5:
          return [4, __await(value)];
        case 6:
          return [4, _b.sent()];
        case 7:
          _b.sent();
          return [3, 2];
        case 8:
          return [3, 10];
        case 9:
          reader.releaseLock();
          return [7];
        case 10:
          return [2];
      }
    });
  });
}
function isReadableStreamLike(obj) {
  return isFunction(obj === null || obj === void 0 ? void 0 : obj.getReader);
}
;// ./node_modules/.pnpm/[email protected]/node_modules/rxjs/dist/esm5/internal/observable/innerFrom.js














function innerFrom(input) {
  if (input instanceof Observable) {
    return input;
  }
  if (input != null) {
    if (isInteropObservable(input)) {
      return fromInteropObservable(input);
    }
    if (isArrayLike(input)) {
      return fromArrayLike(input);
    }
    if (isPromise(input)) {
      return fromPromise(input);
    }
    if (isAsyncIterable(input)) {
      return fromAsyncIterable(input);
    }
    if (isIterable(input)) {
      return fromIterable(input);
    }
    if (isReadableStreamLike(input)) {
      return fromReadableStreamLike(input);
    }
  }
  throw createInvalidObservableTypeError(input);
}
function fromInteropObservable(obj) {
  return new Observable(function (subscriber) {
    var obs = obj[observable]();
    if (isFunction(obs.subscribe)) {
      return obs.subscribe(subscriber);
    }
    throw new TypeError('Provided object does not correctly implement Symbol.observable');
  });
}
function fromArrayLike(array) {
  return new Observable(function (subscriber) {
    for (var i = 0; i < array.length && !subscriber.closed; i++) {
      subscriber.next(array[i]);
    }
    subscriber.complete();
  });
}
function fromPromise(promise) {
  return new Observable(function (subscriber) {
    promise.then(function (value) {
      if (!subscriber.closed) {
        subscriber.next(value);
        subscriber.complete();
      }
    }, function (err) {
      return subscriber.error(err);
    }).then(null, reportUnhandledError);
  });
}
function fromIterable(iterable) {
  return new Observable(function (subscriber) {
    var e_1, _a;
    try {
      for (var iterable_1 = __values(iterable), iterable_1_1 = iterable_1.next(); !iterable_1_1.done; iterable_1_1 = iterable_1.next()) {
        var value = iterable_1_1.value;
        subscriber.next(value);
        if (subscriber.closed) {
          return;
        }
      }
    } catch (e_1_1) {
      e_1 = {
        error: e_1_1
      };
    } finally {
      try {
        if (iterable_1_1 && !iterable_1_1.done && (_a = iterable_1.return)) _a.call(iterable_1);
      } finally {
        if (e_1) throw e_1.error;
      }
    }
    subscriber.complete();
  });
}
function fromAsyncIterable(asyncIterable) {
  return new Observable(function (subscriber) {
    innerFrom_process(asyncIterable, subscriber).catch(function (err) {
      return subscriber.error(err);
    });
  });
}
function fromReadableStreamLike(readableStream) {
  return fromAsyncIterable(readableStreamLikeToAsyncGenerator(readableStream));
}
function innerFrom_process(asyncIterable, subscriber) {
  var asyncIterable_1, asyncIterable_1_1;
  var e_2, _a;
  return __awaiter(this, void 0, void 0, function () {
    var value, e_2_1;
    return __generator(this, function (_b) {
      switch (_b.label) {
        case 0:
          _b.trys.push([0, 5, 6, 11]);
          asyncIterable_1 = __asyncValues(asyncIterable);
          _b.label = 1;
        case 1:
          return [4, asyncIterable_1.next()];
        case 2:
          if (!(asyncIterable_1_1 = _b.sent(), !asyncIterable_1_1.done)) return [3, 4];
          value = asyncIterable_1_1.value;
          subscriber.next(value);
          if (subscriber.closed) {
            return [2];
          }
          _b.label = 3;
        case 3:
          return [3, 1];
        case 4:
          return [3, 11];
        case 5:
          e_2_1 = _b.sent();
          e_2 = {
            error: e_2_1
          };
          return [3, 11];
        case 6:
          _b.trys.push([6,, 9, 10]);
          if (!(asyncIterable_1_1 && !asyncIterable_1_1.done && (_a = asyncIterable_1.return))) return [3, 8];
          return [4, _a.call(asyncIterable_1)];
        case 7:
          _b.sent();
          _b.label = 8;
        case 8:
          return [3, 10];
        case 9:
          if (e_2) throw e_2.error;
          return [7];
        case 10:
          return [7];
        case 11:
          subscriber.complete();
          return [2];
      }
    });
  });
}
;// ./node_modules/.pnpm/[email protected]/node_modules/rxjs/dist/esm5/internal/util/lift.js


function hasLift(source) {
  return isFunction(source === null || source === void 0 ? void 0 : source.lift);
}
function operate(init) {
  return function (source) {
    if (hasLift(source)) {
      return source.lift(function (liftedSource) {
        try {
          return init(liftedSource, this);
        } catch (err) {
          this.error(err);
        }
      });
    }
    throw new TypeError('Unable to lift unknown Observable type');
  };
}
;// ./node_modules/.pnpm/[email protected]/node_modules/rxjs/dist/esm5/internal/operators/OperatorSubscriber.js


function createOperatorSubscriber(destination, onNext, onComplete, onError, onFinalize) {
  return new OperatorSubscriber(destination, onNext, onComplete, onError, onFinalize);
}
var OperatorSubscriber = function (_super) {
  tslib_es6_extends(OperatorSubscriber, _super);
  function OperatorSubscriber(destination, onNext, onComplete, onError, onFinalize, shouldUnsubscribe) {
    var _this = _super.call(this, destination) || this;
    _this.onFinalize = onFinalize;
    _this.shouldUnsubscribe = shouldUnsubscribe;
    _this._next = onNext ? function (value) {
      try {
        onNext(value);
      } catch (err) {
        destination.error(err);
      }
    } : _super.prototype._next;
    _this._error = onError ? function (err) {
      try {
        onError(err);
      } catch (err) {
        destination.error(err);
      } finally {
        this.unsubscribe();
      }
    } : _super.prototype._error;
    _this._complete = onComplete ? function () {
      try {
        onComplete();
      } catch (err) {
        destination.error(err);
      } finally {
        this.unsubscribe();
      }
    } : _super.prototype._complete;
    return _this;
  }
  OperatorSubscriber.prototype.unsubscribe = function () {
    var _a;
    if (!this.shouldUnsubscribe || this.shouldUnsubscribe()) {
      var closed_1 = this.closed;
      _super.prototype.unsubscribe.call(this);
      !closed_1 && ((_a = this.onFinalize) === null || _a === void 0 ? void 0 : _a.call(this));
    }
  };
  return OperatorSubscriber;
}(Subscriber);

;// ./node_modules/.pnpm/[email protected]/node_modules/rxjs/dist/esm5/internal/operators/map.js


function map_map(project, thisArg) {
  return operate(function (source, subscriber) {
    var index = 0;
    source.subscribe(createOperatorSubscriber(subscriber, function (value) {
      subscriber.next(project.call(thisArg, value, index++));
    }));
  });
}
;// ./node_modules/.pnpm/[email protected]/node_modules/rxjs/dist/esm5/internal/util/executeSchedule.js
function executeSchedule(parentSubscription, scheduler, work, delay, repeat) {
  if (delay === void 0) {
    delay = 0;
  }
  if (repeat === void 0) {
    repeat = false;
  }
  var scheduleSubscription = scheduler.schedule(function () {
    work();
    if (repeat) {
      parentSubscription.add(this.schedule(null, delay));
    } else {
      this.unsubscribe();
    }
  }, delay);
  parentSubscription.add(scheduleSubscription);
  if (!repeat) {
    return scheduleSubscription;
  }
}
;// ./node_modules/.pnpm/[email protected]/node_modules/rxjs/dist/esm5/internal/operators/mergeInternals.js




function mergeInternals(source, subscriber, project, concurrent, onBeforeNext, expand, innerSubScheduler, additionalFinalizer) {
  var buffer = [];
  var active = 0;
  var index = 0;
  var isComplete = false;
  var checkComplete = function checkComplete() {
    if (isComplete && !buffer.length && !active) {
      subscriber.complete();
    }
  };
  var outerNext = function outerNext(value) {
    return active < concurrent ? doInnerSub(value) : buffer.push(value);
  };
  var doInnerSub = function doInnerSub(value) {
    expand && subscriber.next(value);
    active++;
    var innerComplete = false;
    innerFrom(project(value, index++)).subscribe(createOperatorSubscriber(subscriber, function (innerValue) {
      onBeforeNext === null || onBeforeNext === void 0 ? void 0 : onBeforeNext(innerValue);
      if (expand) {
        outerNext(innerValue);
      } else {
        subscriber.next(innerValue);
      }
    }, function () {
      innerComplete = true;
    }, undefined, function () {
      if (innerComplete) {
        try {
          active--;
          var _loop_1 = function _loop_1() {
            var bufferedValue = buffer.shift();
            if (innerSubScheduler) {
              executeSchedule(subscriber, innerSubScheduler, function () {
                return doInnerSub(bufferedValue);
              });
            } else {
              doInnerSub(bufferedValue);
            }
          };
          while (buffer.length && active < concurrent) {
            _loop_1();
          }
          checkComplete();
        } catch (err) {
          subscriber.error(err);
        }
      }
    }));
  };
  source.subscribe(createOperatorSubscriber(subscriber, outerNext, function () {
    isComplete = true;
    checkComplete();
  }));
  return function () {
    additionalFinalizer === null || additionalFinalizer === void 0 ? void 0 : additionalFinalizer();
  };
}
;// ./node_modules/.pnpm/[email protected]/node_modules/rxjs/dist/esm5/internal/operators/mergeMap.js





function mergeMap(project, resultSelector, concurrent) {
  if (concurrent === void 0) {
    concurrent = Infinity;
  }
  if (isFunction(resultSelector)) {
    return mergeMap(function (a, i) {
      return map_map(function (b, ii) {
        return resultSelector(a, b, i, ii);
      })(innerFrom(project(a, i)));
    }, concurrent);
  } else if (typeof resultSelector === 'number') {
    concurrent = resultSelector;
  }
  return operate(function (source, subscriber) {
    return mergeInternals(source, subscriber, project, concurrent);
  });
}
;// ./node_modules/.pnpm/[email protected]/node_modules/rxjs/dist/esm5/internal/util/mapOneOrManyArgs.js


var mapOneOrManyArgs_isArray = Array.isArray;
function callOrApply(fn, args) {
  return mapOneOrManyArgs_isArray(args) ? fn.apply(void 0, __spreadArray([], __read(args))) : fn(args);
}
function mapOneOrManyArgs(fn) {
  return map_map(function (args) {
    return callOrApply(fn, args);
  });
}
;// ./node_modules/.pnpm/[email protected]/node_modules/rxjs/dist/esm5/internal/observable/fromEvent.js








var nodeEventEmitterMethods = ['addListener', 'removeListener'];
var eventTargetMethods = ['addEventListener', 'removeEventListener'];
var jqueryMethods = ['on', 'off'];
function fromEvent(target, eventName, options, resultSelector) {
  if (isFunction(options)) {
    resultSelector = options;
    options = undefined;
  }
  if (resultSelector) {
    return fromEvent(target, eventName, options).pipe(mapOneOrManyArgs(resultSelector));
  }
  var _a = __read(isEventTarget(target) ? eventTargetMethods.map(function (methodName) {
      return function (handler) {
        return target[methodName](eventName, handler, options);
      };
    }) : isNodeStyleEventEmitter(target) ? nodeEventEmitterMethods.map(toCommonHandlerRegistry(target, eventName)) : isJQueryStyleEventEmitter(target) ? jqueryMethods.map(toCommonHandlerRegistry(target, eventName)) : [], 2),
    add = _a[0],
    remove = _a[1];
  if (!add) {
    if (isArrayLike(target)) {
      return mergeMap(function (subTarget) {
        return fromEvent(subTarget, eventName, options);
      })(innerFrom(target));
    }
  }
  if (!add) {
    throw new TypeError('Invalid event target');
  }
  return new Observable(function (subscriber) {
    var handler = function handler() {
      var args = [];
      for (var _i = 0; _i < arguments.length; _i++) {
        args[_i] = arguments[_i];
      }
      return subscriber.next(1 < args.length ? args : args[0]);
    };
    add(handler);
    return function () {
      return remove(handler);
    };
  });
}
function toCommonHandlerRegistry(target, eventName) {
  return function (methodName) {
    return function (handler) {
      return target[methodName](eventName, handler);
    };
  };
}
function isNodeStyleEventEmitter(target) {
  return isFunction(target.addListener) && isFunction(target.removeListener);
}
function isJQueryStyleEventEmitter(target) {
  return isFunction(target.on) && isFunction(target.off);
}
function isEventTarget(target) {
  return isFunction(target.addEventListener) && isFunction(target.removeEventListener);
}
;// ./node_modules/.pnpm/[email protected]/node_modules/rxjs/dist/esm5/internal/operators/filter.js


function filter_filter(predicate, thisArg) {
  return operate(function (source, subscriber) {
    var index = 0;
    source.subscribe(createOperatorSubscriber(subscriber, function (value) {
      return predicate.call(thisArg, value, index++) && subscriber.next(value);
    }));
  });
}
// EXTERNAL MODULE: ./node_modules/.pnpm/[email protected][email protected]/node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[3].use[1]!./node_modules/.pnpm/[email protected][email protected][email protected][email protected]/node_modules/postcss-loader/dist/cjs.js??ruleSet[1].rules[3].use[2]!./node_modules/.pnpm/[email protected][email protected][email protected]/node_modules/less-loader/dist/cjs/index.js!./src/plugin/tag-tip/index.less
var tag_tip = __webpack_require__(7190);
;// ./src/plugin/tag-tip/index.less

      
      
      
      
      
      
      
      
      

var tag_tip_options = {};

tag_tip_options.styleTagTransform = (styleTagTransform_default()());
tag_tip_options.setAttributes = (setAttributesWithoutAttributes_default()());
tag_tip_options.insert = (insertBySelector_default()().bind)(null, ":root");
tag_tip_options.domAPI = (styleDomAPI_default()());
tag_tip_options.insertStyleElement = (insertStyleElement_default()());

var tag_tip_update = injectStylesIntoStyleTag_default()()(tag_tip/* default */.A, tag_tip_options);




       /* harmony default export */ const plugin_tag_tip = (tag_tip/* default */.A && tag_tip/* default */.A.locals ? tag_tip/* default */.A.locals : undefined);

;// ./src/plugin/tag-tip/index.ts






























const SUGGEST_LIMIT = 100;
let TagTip = class TagTip {
  constructor(storage, logger, messaging, tagging) {
    this.storage = storage;
    this.logger = logger;
    this.messaging = messaging;
    this.tagging = tagging;
    this.selectedIndex = 0;
    this.delimiter = ' ';
    this.ctrlKey = false;
    this.disableExclusionMode = false;
    this.searchCache = ['', []];
    this.init().catch(logger.error);
  }
  async init() {
    const conf = await this.storage.get('config');
    if (!conf.tagTip) return;
    this.logger.log('标签提示');
    const searchInput = document.querySelector('#f_search, #newtagfield, [name=f_search]');
    if (!searchInput) return;
    this.disableExclusionMode = searchInput.id === 'newtagfield';
    this.delimiter = location.pathname.startsWith('/g/') ? ',' : ' ';
    this.inputElement = searchInput;
    this.inputElement.autocomplete = 'off';
    this.autoCompleteList = document.createElement('div');
    this.autoCompleteList.className = 'eh-syringe-lite-auto-complete-list eh-syringe-ignore';
    fromEvent(this.inputElement, 'keyup').pipe(filter_filter(e => !new Set(['ArrowUp', 'ArrowDown', 'Enter', 'Meta', 'Control', 'Alt']).has(e.key)), map_map(() => this.inputElement.value.replace(/  +/gm, ' '))).subscribe(s => {
      this.search(s).catch(this.logger.error);
    });
    fromEvent(this.inputElement, 'keydown').subscribe(e => this.keydown(e));
    fromEvent(this.inputElement, 'keyup').subscribe(e => this.checkCtrl(e));
    fromEvent(this.autoCompleteList, 'click').subscribe(e => {
      this.inputElement.focus();
      e.preventDefault();
      e.stopPropagation();
    });
    fromEvent(this.inputElement, 'focus').subscribe(() => this.setListPosition());
    fromEvent(this.inputElement, 'pointerenter').subscribe(() => this.setListPosition());
    fromEvent(window, 'resize').subscribe(() => this.setListPosition());
    fromEvent(document, 'click').subscribe(() => {
      this.autoCompleteList.innerHTML = '';
    });
    document.body.appendChild(this.autoCompleteList);
    this.setListPosition();
  }
  async search(value) {
    this.inputElement.value = value;
    let result;
    if (this.searchCache[0] === value) {
      result = this.searchCache[1];
    } else {
      var _value$match;
      // [^\s,] 空白字符和逗号以外的字符 (用于支持逗号)
      // (?:"|$) 非捕获分组, 引号或文本结束  (用于匹配不完整的引号)
      // [^\s,]+:".+?(?:"|$)     NS:"ab cd"     NS:"ab c...
      // ".+?(?:"|$)]            "ab cd"        "ab c...
      // [^\s,]+:[^\s,]+         NS:abcd
      // [^\s,]+                 abcd
      const values = (_value$match = value.match(/([^\s,]+:".+?(?:"|$)|".+?(?:"|$)]|[^\s,]+:[^\s,]+|[^\s,]+)/gim)) !== null && _value$match !== void 0 ? _value$match : [];
      result = [];
      const used = new Set();
      await Promise.all(values.map(async (v, i) => {
        const sv = values.slice(i);
        if (!sv) return;
        const svs = sv.join(this.delimiter);
        if (!svs || svs.replace(/\s+/, '').length === 0) return;
        const suggestions = await this.messaging.emit('suggest-tag', {
          term: svs,
          limit: SUGGEST_LIMIT
        });
        for (const suggestion of suggestions) {
          const {
            tag
          } = suggestion;
          if (used.has(this.tagging.fullKey(tag))) continue;
          used.add(this.tagging.fullKey(tag));
          result.push(suggestion);
        }
      }));
      if (values.length > 1) {
        // 整合了多个关键词的搜索结果,重新排序并限制数量
        result.sort((a, b) => b.score - a.score);
        result.splice(SUGGEST_LIMIT);
      }
      this.searchCache = [value, result];
    }
    this.autoCompleteList.innerHTML = '';
    for (const suggestion of result) {
      this.autoCompleteList.appendChild(this.tagElementItem(suggestion));
    }
    this.selectedIndex = -1;
    this.scrollList();
  }
  checkCtrl(e) {
    if (this.disableExclusionMode) return;
    this.ctrlKey = e.ctrlKey || e.metaKey;
    if (this.ctrlKey) {
      this.autoCompleteList.classList.add('exclude');
    } else {
      this.autoCompleteList.classList.remove('exclude');
    }
  }
  keydown(e) {
    this.checkCtrl(e);
    if (e.key === 'ArrowUp' || e.key === 'ArrowDown') {
      if (e.key === 'ArrowUp') {
        this.selectedIndex--;
        if (this.selectedIndex < 0) {
          this.selectedIndex = this.autoCompleteList.children.length - 1;
        }
      } else {
        this.selectedIndex++;
        if (this.selectedIndex >= this.autoCompleteList.children.length) {
          this.selectedIndex = 0;
        }
      }
      const children = Array.from(this.autoCompleteList.children);
      children.forEach(element => {
        element.classList.remove('selected');
      });
      if (this.selectedIndex >= 0 && children[this.selectedIndex]) {
        children[this.selectedIndex].classList.add('selected');
      }
      e.preventDefault();
      e.stopPropagation();
      this.scrollList();
    } else if (e.key === 'Enter') {
      const children = Array.from(this.autoCompleteList.children);
      if (this.selectedIndex >= 0 && children[this.selectedIndex]) {
        children[this.selectedIndex].click();
        e.preventDefault();
        e.stopPropagation();
      }
    }
  }
  scrollList() {
    if (this.selectedIndex < 0) {
      this.autoCompleteList.scrollTop = 0;
      return;
    }
    const current = this.autoCompleteList.children[this.selectedIndex];
    if (!current) return;
    current.scrollIntoView({
      block: 'nearest',
      behavior: 'instant'
    });
  }
  setListPosition() {
    const rect = this.inputElement.getBoundingClientRect();
    this.autoCompleteList.style.left = `${rect.left + window.scrollX}px`;
    this.autoCompleteList.style.top = `${rect.bottom + window.scrollY}px`;
    this.autoCompleteList.style.width = `${rect.width}px`;
  }
  tagElementItem(suggestion) {
    const tag = suggestion.tag;
    const item = document.createElement('div');
    const cnName = document.createElement('span');
    cnName.className = 'auto-complete-text cn-name';
    const enName = document.createElement('span');
    enName.className = 'auto-complete-text en-name';
    const html = this.tagging.makeTagMatchHtml(suggestion, 'mark');
    cnName.innerHTML = html.cn;
    enName.innerHTML = html.en;
    item.insertBefore(cnName, null);
    item.insertBefore(enName, null);
    item.className = 'auto-complete-item';
    item.onclick = () => {
      let length = suggestion.term.length;
      if (this.inputElement.value.endsWith(this.delimiter)) {
        length++;
      }
      const exclude = this.ctrlKey ? '-' : '';
      this.inputElement.value = `${this.inputElement.value.slice(0, 0 - length)}${exclude}${this.tagging.searchTerm(tag)}${this.delimiter}`;
      this.autoCompleteList.innerHTML = '';
    };
    return item;
  }
};
TagTip = __decorate([Service(), __metadata("design:paramtypes", [Storage, Logger, messaging_Messaging, Tagging])], TagTip);

;// ./node_modules/.pnpm/[email protected]/node_modules/core-js/modules/web.url.js
web_url_namespaceFn();

;// ./node_modules/.pnpm/[email protected]/node_modules/core-js/modules/web.url.to-json.js
web_url_to_json_namespaceFn();

;// ./node_modules/.pnpm/[email protected]/node_modules/core-js/modules/web.url-search-params.js
web_url_search_params_namespaceFn();

;// ./node_modules/.pnpm/[email protected]/node_modules/core-js/modules/web.url-search-params.delete.js
web_url_search_params_delete_namespaceFn();

;// ./node_modules/.pnpm/[email protected]/node_modules/core-js/modules/web.url-search-params.has.js
web_url_search_params_has_namespaceFn();

;// ./node_modules/.pnpm/[email protected]/node_modules/core-js/modules/web.url-search-params.size.js
web_url_search_params_size_namespaceFn();

;// ./node_modules/.pnpm/[email protected]/node_modules/core-js/modules/es.regexp.constructor.js
es_regexp_constructor_namespaceFn();

;// ./node_modules/.pnpm/[email protected]/node_modules/core-js/modules/es.regexp.dot-all.js
es_regexp_dot_all_namespaceFn();

;// ./src/services/ui-translation/helper.ts














const dataMaps = [];
function helper_merge(regex, host, plainReplacements, regexReplacements) {
  const hosts = host ? [...new Set(Array.isArray(host) ? host : [host])].sort() : undefined;
  let map = dataMaps.find(d => JSON.stringify(d.hosts) === JSON.stringify(hosts) && d.regex.source === regex.source);
  if (!map) {
    map = {
      regex,
      hosts,
      plainReplacements: new Map(),
      regexReplacements: new Map()
    };
    dataMaps.push(map);
  }
  for (const key in plainReplacements) {
    const element = plainReplacements[key];
    map.plainReplacements.set(key, element);
  }
  if (regexReplacements) {
    for (const [k, v] of regexReplacements) {
      map.regexReplacements.set(k, v);
    }
  }
}
;// ./src/services/ui-translation/data/archiver.ts

helper_merge(/^\/archiver\.php/, undefined, {
  'Current Funds:': '现有资金',
  'Estimated Size: \xA0 ': '预计大小:',
  'Download Cost: \xA0 ': '下载费用:',
  'Free!': '免费!',
  'Insufficient Funds': '余额不足',
  'Download Original Archive': '下载原始档案',
  'Download Resample Archive': '下载重采样档案',
  original: '原始',
  resample: '重采样',
  ' download of this archive on ': '档案下载,时间:',
  cancel: '取消',
  'Locating archive server and preparing file for download...': '定位归档服务器并准备下载文件...',
  '(this can take several minutes)': '(这可能需要几分钟时间)',
  'Please wait...': '请稍候...',
  Close: '取消',
  'H@H Downloader': 'H@H 下载器',
  'N/A': '不适用',
  Original: '原图',
  Free: '免费',
  'You must have a H@H client assigned to your account to use this feature.': '您必须拥有 H@H 客户端才能使用此功能',
  'Your H@H client appears to be offline.': '您的 H@H 客户端处于离线状态',
  'Turn it on, then try again.': '请启动 H@H 客户端后重试',
  'Downloads should start processing within a couple of minutes.': '下载会在几分钟内开始'
}, [[/^You unlocked an? $/, '已解锁'], [/^An original resolution/, '原始分辨率'], [/^A (\d+x) resolution/, '$1 分辨率'], [/ download has been queued for client $/, '的下载请求已添加到下载队列,目标客户端 ']]);
helper_merge(/^\/archive\//, '*.hath.network', {
  'The file was successfully prepared, and is ready for download.': '文件已准备就绪,可供下载',
  'Click Here To Start Downloading': '点击此处开始下载',
  'You can also copy this link to a download manager.': '您也可以将链接复制到下载软件中',
  'The file is already being processed. I will now wait for this file to finish. Please contact staff if this does not resolve itself within a few minutes.': '该文件已在处理中。我将等待该文件完成。如果几分钟后问题未解决,请联系工作人员。',
  'Click here if your browser does not continue automatically': '如果您的浏览器没有自动继续,请点击此处'
});
;// ./src/services/ui-translation/data/bitcoin.ts

helper_merge(/^\/bitcoin\.php/, undefined, {
  'Bitcoin Donation': '比特币捐赠',
  '\n\t\tBitcoin (BTC) and Bitcoin Cash (BCH) are decentralized virtual currencies. This page allows you to donate these coins from an exchange service or a local wallet, track the confirmation process of the transaction, and apply the donated coins as a USD donation or Adopt-a-Server slots. This is not a custodial service; all coins sent to these addresses are considered donated to this site and cannot be withdrawn. ': '\n\t\t比特币 (BTC) 和比特币现金 (BCH) 是去中心化的虚拟货币。本页面允许您从交易所或本地钱包捐赠并跟踪交易过程,并能够将捐赠的虚拟货币作为美元捐赠或领养服务器。这不是一个保管服务,所有发送到这些地址的虚拟货币都被认为是捐赠给本网站的,无法撤回。',
  'Read this thread for more information about donating and how to buy coins': '阅读此帖子以了解更多关于捐赠和如何购买虚拟货币的信息',
  'Bitcoin (BTC) transaction fees can be high and/or unpredictable at times. It is currently ': '比特币 (BTC) 的交易手续费有时会很高和/或不可预测。当前',
  estimated: '预估',
  'This is the lowest viable feerate currently required for a transaction to be mined, which is estimated by sampling the minimum feerate of transactions that would have been included in a block in the last hour, assuming an average distribution of blocks.': '这是当前交易被挖掘所需的最低可行费率,通过采样最近一小时内可能被包含在区块中的交易的最低费率来估算,假设区块的分布是平均的。',
  'average-sized': '常规金额',
  'An average one-input two-output native segwit (P2WPKH) transaction is around 140 vB. Batched transactions from exchanges could have a lower fee. Legacy transactions and transactions spending more than one input could have a higher fee.': '一个常规的单输入双输出原生隔离见证 (P2WPKH) 交易约为 140 vB。来自交易所的批量交易可能会有更低的费用。传统交易和消耗多个输入的交易可能会有更高的费用。',
  ' transaction. We recommend using Bitcoin Cash (BCH) whenever possible, especially for smaller amounts, since it is essentially free.': '交易。我们建议尽可能使用比特币现金 (BCH),尤其是较小金额的交易,因为它的手续费基本上可忽略不计。',
  ' Bitcoin (BTC)': ' 比特币 (BTC)',
  ' Bitcoin Cash (BCH)': ' 比特币现金 (BCH)',
  'Generate an address first...': '请先生成地址',
  'Not Created Yet - Click To Generate': '未创建 - 点击生成',
  'Your Bitcoin (BTC) Donation Wallet Address': '您的比特币 (BTC) 捐赠钱包地址',
  'IMPORTANT: ONLY USE THIS ADDRESS FOR BITCOIN (BTC)': '重要提示:只能将此地址用于比特币 (BTC)',
  'ANY OTHER COINS SENT TO THIS ADDRESS WILL BE LOST': '发送到此地址的其他类型加密货币都将丢失',
  'Your Bitcoin Cash (BCH) Donation Wallet Address': '您的比特币现金 (BCH) 捐赠钱包地址',
  'If your wallet cannot send to this address, ': '如果您的钱包无法发送到此地址,请',
  'create a legacy address': '创建传统地址',
  'We automatically ': '当旧地址被使用时,我们会自动',
  'generate a new address': '生成一个新地址',
  ' when the old one is used. You will still be credited if you reuse recent addresses, but please use the currently displayed address whenever possible.': '。如果您重复使用最近的地址,仍然会被计入,但请尽可能使用当前显示的地址。',
  'You can only manually create a new address once every 24 hours.': '每 24 小时,您只能手动创建一次新地址。',
  'Send a Bitcoin (BTC) Wallet Address PM': '私信发送比特币 (BTC) 钱包地址',
  'Send a Bitcoin Cash (BCH) Wallet Address PM': '私信发送比特币现金 (BCH) 钱包地址',
  'You can use this form to send a private message from the gallery system with your wallet address. This guarantees that a given wallet address belongs to you and that it exists in the E-Hentai system.': '您可以通过此表单以图库系统 (Gallery System) 的名义发送一条包含钱包地址的私信。这样能够保证此钱包地址属于您,并存在于 E-Hentai 系统中。',
  'Member name: ': '收件人:',
  Send: '发送',
  'You already sent a wallet message to that member.': '您已经向此用户发送了包含钱包地址的私信。',
  'Member not found.': '未找到此用户。',
  'Recent Bitcoin (BTC) Donations': '最近的比特币 (BTC) 捐赠',
  'Recent Bitcoin Cash (BCH) Donations': '最近的比特币现金 (BCH) 捐赠',
  'New donations will typically show up here in less than two minutes. It will show as ': '新的捐赠通常会在两分钟内显示在这里,但它会显示为',
  Pending: '待定',
  ' until it is included in a block and reaches two confirmations. This usually takes less than an hour, but can take longer in some cases. After it has been marked as ': ',直到它被包含在一个区块中并达到两次确认。这个过程通常不到一小时,但某些情况下可能需要更长时间。在它被标记为',
  Confirmed: '已确认',
  ', you still have to apply it below to make it take effect.': '后,你仍需要在下面应用它才能使其生效。',
  'No transactions in the past year.': '过去一年没有交易记录。',
  'Refresh List': '刷新列表',
  'Unspent: ': '未使用:',
  'Total All-Time Donations: ': '捐赠总额:',
  'Total Adopt-a-Server Days: ': '领养服务器天数:',
  'Current Conversion Rate: ': '当前汇率:',
  'Apply BTC as Donation': '使用 BTC 捐赠',
  'Apply BCH as Donation': '使用 BCH 捐赠',
  'use max': '最大',
  'Apply Donation': '我要捐赠',
  'Apply BCH as Adopt-a-Server': '使用 BCH 领养服务器',
  'Apply BTC as Adopt-a-Server': '使用 BTC 领养服务器',
  'Select slot duration..': '选择时长..',
  '1 Month @ $10/month $10': '1 个月 @ $10/月 $10',
  '3 Month @ $9/month $27': '3 个月 @ $9/月 $27',
  '6 Month @ $8/month $48': '6 个月 @ $8/月 $48',
  '1 Year @ $7/month $84': '1 年 @ $7/月 $84',
  '2 Year @ $6/month $144': '2 年 @ $6/月 $144',
  '3 Year @ $5/month $180': '3 年 @ $5/月 $180',
  'Purchase Slots': '我要领养',
  'Donated coins are applied as their equivalent USD value at a time of your choosing, using the site rate which is calculated from recent exchange market value.': '捐赠的虚拟货币在您使用时会以最近的交易所市场价格作为网站的汇率转换为美元。',
  'The site rate will never drop sharply; it adjusts slowly over time if the exchange market value is higher than the site rate, or less than 90% of the site rate.': '网站的汇率永远不会急剧下降,只有当实际交易所价格高于网站汇率,或低于网站汇率的 90% 时,才会随着时间推移缓慢调整。',
  'The conversion rates right now are ': '当前汇率:',
  ' for Bitcoin, and ': ' (比特币) \xA0 ',
  ' for Bitcoin Cash.': ' (比特币现金)',
  'Donation Tier': '捐赠等级',
  'EXP Bonus': '经验加成',
  'Daily Bonus': '每日奖励',
  'Daily Hath': '每日 Hath',
  'Free Archives': '免费档案配额',
  'EXP Bonus: ': '经验加成:',
  ' \xA0 Free Archives: ': ' \xA0 免费档案配额:',
  'Daily Bonus: ': '每日奖励:',
  'You did not donate anything yet, but we still love you.': '您还没有捐赠,但我们仍然爱您。',
  'Bronze Star': '铜星',
  'Silver Star': '银星',
  'Gold Star': '金星',
  'Tri Star': '三星',
  'Quint Star': '五星',
  'Septua Star': '七星',
  'Honorary Catgirl': '荣誉猫娘',
  'Recent Spending History': '近期消费记录',
  'No coins have been applied recently': '近期没有使用此类虚拟货币',
  'Active + Recent Adopt-a-Server Slots': '近期服务器领养记录',
  'No slots have been adopted recently': '近期没有领养服务器'
}, [[/^Refunded (.*?) Hath/, '已退还 $1 Hath'], [/^(\$.*?) Donation$/, '捐赠 $1'], [/^A wallet address PM was sent to user (.+?) \(uid=(\d+)\)$/, '您的钱包地址已私信发送给 $1 (UID $2)。'], [/^Awarded for a total donation of (\$\d+).$/, '授予的捐赠总额为 $1。'], [/^(\d+) GB \/ week$/, '$1 GB / 周'], [/^Catgirl Lv.(\d)$/, '猫娘 Lv.$1'], [/^Insufficient (BCH|BTC) available.\s?/, '$1 余额不足。'], [/You have ([\d.]+) (BCH|BTC) pending, but these need to be confirmed first.$/, '您有 $1 $2 待确认,请等到确认完成后再操作。'], [/^ to at least ([\d.]+) sats\/vB, which is about \$([\d.]+) for an $/, '至少为 $1 sats/vB,约为 $$$2 每笔']]);
;// ./src/services/ui-translation/data/bounty.ts

helper_merge(/^\/bounty(_post)?\.php/, undefined, {
  'Bounty List': '悬赏列表',
  'Most Wanted Standard Bounties': '热门标准悬赏',
  'Most Wanted Translation Bounties': '热门翻译悬赏',
  'Most Wanted Editing Bounties': '热门编辑悬赏',
  'Post New Bounty': '发布新悬赏',
  'Search Bounties': '搜索悬赏',
  'Bounty Type: ': '悬赏类型:',
  All: '全部',
  Standard: '标准',
  Translation: '翻译',
  Editing: '编辑',
  ' \xA0 Bounty Status: ': ' \xA0 悬赏状态:',
  'Last Updated': '最后更新',
  'Bounty Headline': '悬赏标题',
  'Bounty Type': '悬赏类型',
  'Bounty Status': '悬赏状态',
  'Total Bounty': '总赏金',
  'Posted By': '发布者',
  'Open/New': '开放/新创建',
  'Open/Accepted': '开放/已接受',
  'Closed/Reserved': '关闭/已保留',
  'Closed/Claimed': '关闭/已认领',
  'Closed/Completed': '关闭/已完成',
  'You are currently an Unranked Bounty Hunter.': '您当前是未评级赏金猎人。',
  'Bounty Poster:': '发布者:',
  'Posted Date:': '发布日期:',
  'Bounty Status:': '悬赏状态:',
  'Min Hunter Rank:': '最低等级要求:',
  Unranked: '未评级',
  'Current Reward:': '当前赏金:',
  '< Prev 10': '< 上一页',
  'Next 10 >': '下一页 >',
  'Bounty Headline:': '悬赏标题:',
  'A short one-liner consistently describing the bounty.': '一句话描述悬赏内容。',
  'This will appear on the Bounty Overview screen.': '它会显示在悬赏概览页面。',
  'Detailed Bounty Description:': '悬赏详情:',
  'Remember to be specific. Bounties like "Requesting ': '请注意要具体。悬赏如 “请求 ',
  ' Hentai" is not very specific, and any bounty claim featuring anything that matches would be accepted; bounties like "Any ': ' Hentai” 不是很具体,包含匹配内容的悬赏认领都可以被接受;悬赏如 “任何我没有的 ',
  ' Hentai I don\'t have" would require an actual list; and so on. If you have any minimum quality/resolution demands, make sure to include this as well.': ' Hentai” 需要一个确切的列表;以此类推。如果您有任何最低质量/分辨率要求,请务必包含在内。',
  'The more precise you can define your bounty, the higher the chance you will be satisfied with its result. Keep in mind that if your bounty is vague and someone technically fulfills it (as determined by a Bounty Moderator), your posted reward is forfeit.': '您的悬赏内容定义的越精确,您对其结果的满意度就会越高。请记住,如果您的悬赏内容含糊不清,而某人在技术上满足了它 (由悬赏版主裁定),您发布的奖励会被没收。',
  'Wanted Poster:': '悬赏海报:',
  'You can optionally upload a thumbnail, cover page, an image from an incomplete collection, or any other relevant image to further specify the bounty. (JPG/PNG)': '您可以选择上传缩略图、封面、不完整合集的图像或任何其他相关的图像,以进一步指定悬赏。(JPG/PNG)',
  'Offered Reward:': '悬赏金额:',
  'The reward you offer for this bounty, in Credits and/or Hath. The minimum allowed is 25000 Credits or 5 Hath.': '您为此悬赏提供的赏金,以 Credits 和/或 Hath 计。最低要求 25000 Credits 或 5 Hath。',
  'Bounty Type:': '悬赏类型:',
  'If this bounty is for a translation or editing job, select the corresponding type and provide a link to the source material.': '如果此悬赏为翻译或编辑工作,请选择相应的类型并提供源材料的链接。',
  'Otherwise, select Standard.': '否则,请选择标准。',
  'Minimum Hunter Rank:': '最低等级要求:',
  'The minimum rank a Bounty Hunter needs to accept or claim this bounty.': '赏金猎人能够接受或认领此悬赏所需的最低等级。',
  'Accepted Delivery:': '交付方式:',
  'These are the delivery methods you accept for this bounty. If you only want galleries posted to E-Hentai Galleries, you do not need to change this.': '请选择您接受的交付方式。如果您只是希望将图库发布到 E-Hentai,则无需更改此设置。',
  'Posted to the E-Hentai Galleries System': '发布到 E-Hentai 图库系统',
  'Archive download at a file locker service': '通过文件保管服务下载归档文件',
  'BitTorrent download at a public tracker': '通过使用公共 tracker 的 BT 下载',
  'Other; specify in bounty description': '其他,请在悬赏描述中指定',
  'Please verify that the information is correct before you submit this bounty.': '在提交此悬赏之前,请确认信息正确。',
  'Post Bounty': '发布悬赏',
  'Bounty Posted By:': '发布者:',
  'Contact Poster': '联系发布者',
  Updated: '更新于',
  'Bounties that are ': '状态为 ',
  ' are open to be accepted and claimed. If you intent to fulfill a bounty within a reasonable amount of time, you can optionally ': ' 的悬赏可以被接受和认领。如果您打算在合理的时间内完成悬赏,可以先 ',
  accept: '接受',
  ' the bounty first. These expire after a month.': ' 悬赏,此状态会在一个月后过期。',
  'After a bounty has been ': '若悬赏被 ',
  claimed: '认领',
  ', the original poster of the bounty has seven days to accept or dispute it. If there is a dispute or the acceptance period expires, a Bounty Moderator will decide the outcome of the bounty.': ',悬赏发布者有七天时间来选择接受认领或提出质疑。如果出现争议或接受期限过期,将由悬赏版主裁定悬赏的结果。',
  'A rejected claim cannot be resubmitted, and will affect your rank.': '被拒绝的认领不能重新提交,并且会影响您的等级。',
  'You have not yet accepted or claimed this bounty.': '您尚未接受或认领此悬赏。',
  'You have accepted this bounty.': '您已接受此悬赏。',
  'You cannot post a blank accept/claim, or you do not have sufficient funds to claim the bounty.': '您不能发布空的接受/认领请求,或者您没有足够的资金来认领悬赏。',
  'Your rank (Unranked) is insufficient to accept this bounty.': '您的等级 (未评级) 不足以接受此悬赏。',
  'For accepting a bounty, you can enter a short comment here. For claiming a bounty, you must enter all the necessary details for where the bounty can be found.': '接受悬赏时,您可以在此处输入简短的评论。认领悬赏时,则必须提供悬赏所需的所有详细信息。',
  'If you intend to claim this bounty, make sure that all necessary URLs entered above are correct, and that they match the accepted delivery methods of this bounty. Do not, for instance, submit a link to a torrent file if that delivery method is not accepted. All information required to determine the validity of a claim MUST be posted in the claim itself.': '如果您准备认领此悬赏,请确保上方提供的所有必要 URL 都是正确的,并且与此悬赏的指定交付方式相匹配。例如,请不要在发布者不接受 BT 下载的情况下提供一个指向种子文件的链接。为保证认领的有效性,必须在认领请求中包含所有必要的信息。',
  'In order to claim a bounty, you have to post a deposit of 1000 credits. This is returned to you if the claim is accepted, but if the claim is found to be invalid, it will be forfeit.': '要认领悬赏,您必须支付 1000 Credits 的保证金。如果认领被接受,保证金将退还给您,但如果认领被判定无效,则会被没收。',
  'Accept Bounty': '接受悬赏',
  'Claim Bounty': '认领悬赏',
  'Withdraw Accept/Claim': '撤回接受/认领',
  'You can add additional rewards as long as the bounty has not been accepted or claimed. Rewards lock in after 15 minutes and can then only be rescinded after a month or if the bounty is cancelled. You will have no saying in whether a claim is accepted or not.': '只要悬赏未被认领,您就可以增加额外赏金。赏金会在 15 分钟后被锁定,只能在一个月后或悬赏被取消时才能撤回。您无权决定是否接受认领。',
  'You have ': '您拥有 ',
  '. Minimum is ': '。最低要求 ',
  ' or ': ' 或 ',
  '.': '。',
  'Submit Additional Reward': '提交额外赏金',
  'You must enter a minimum additional reward of 5000 C or 1 Hath.': '您必须输入最低额外赏金 (5000 C 或 1 Hath)。',
  'You can no longer add rewards for this bounty.\n\n\t\t': '您无法再为此悬赏增加赏金。',
  'Grant Date': '授予日期',
  Amount: '赏金',
  'Added By': '添加者',
  'Original Bounty': '初始赏金',
  'Claim Date': '认领日期',
  Status: '状态',
  'Bounty Hunter': '赏金猎人',
  Rating: '等级',
  'This bounty has not been accepted or claimed by anyone.': '此悬赏尚未被任何人接受或认领。',
  'Bounty Accepted': '悬赏接受',
  'Bounty Reserved': '悬赏保留',
  'Claim Pending': '认领待定',
  'Claim Disputed': '认领争议',
  'Claim Accepted': '认领接受',
  '\n\tn/t\n\t\n\t': '',
  // E-Hentai's bug
  'Comments from Bounty Poster:': '悬赏发布者评论:',
  '(No comment was given.)': '(未提供评论)',
  'This claim has been accepted, and the bounty has been closed.\n\t': '此认领已被接受,悬赏已关闭。',
  'This claim has been disputed, and is pending ruling by a Bounty Moderator.\n\t': '此认领存在争议,正在等待悬赏版主裁决。'
}, [[/^Showing /, '正在显示'], [/All Open Bounties$/, '所有未完成悬赏'], [/All Reserved Bounties$/, '所有已保留悬赏'], [/All Claimed Bounties$/, '所有已认领悬赏'], [/All Completed Bounties$/, '所有已完成悬赏'], [/Bounties Posted By Me$/, '我发布的悬赏'], [/Bounties Boosted By Me$/, '我加价的悬赏'], [/Bounties Accepted By Me$/, '我接受的悬赏'], [/Bounties Reserved For Me$/, '我保留的悬赏'], [/Bounties Claimed By Me$/, '我认领的悬赏'], [/Bounties Completed By Me$/, '我完成的悬赏'], [/^Rank ([A-Z])$/, '$1 级'], [/^Remaining Claim Dispute Time: /, '剩余认领争议时间:'], [/(\d+) days and (\d+) hours/, '$1 天 $2 小时']]);
;// ./src/services/ui-translation/data/common.ts

helper_merge(/.*/, undefined, {
  'Front Page': '首页',
  Watched: '订阅',
  Popular: '热门',
  Torrents: '种子',
  Favorites: '收藏',
  'My ': '我的',
  Home: '主页',
  Uploads: '上传',
  Toplists: '排行',
  Bounties: '悬赏',
  News: '新闻',
  Forums: '论坛',
  Wiki: '维基',
  Overview: '概况',
  'My Stats': '我的统计',
  'My Settings': '我的设置',
  'My Tags': '我的标签',
  Stats: '统计',
  Settings: '设置',
  Tags: '标签',
  Donations: '捐赠',
  'Hath Exchange': 'Hath 交易',
  'GP Exchange': 'GP 交易',
  'Credit Log': 'Credit 记录',
  'Karma Log': 'Karma 记录',
  Front: '首页',
  LoFi: '低保真版',
  'Terms of Service': '服务条款',
  ToS: '服务条款',
  Advertise: '广告',
  Onion: '洋葱网址',
  'E-Hentai Galleries: The Free Hentai Doujinshi, Manga and Image Gallery System': 'E-Hentai: 一个免费的绅士同人志、漫画和图像的图库系统',
  'Now With Layers': '有了洋葱网址',
  Doujinshi: '同人志',
  Manga: '漫画',
  'Artist CG': '画师CG',
  'Game CG': '游戏CG',
  Western: '西方',
  'Non-H': '无H',
  'Image Set': '图集',
  'Asian Porn': '亚洲色情',
  Misc: '杂项',
  Private: '私有',
  'Search Keywords': '搜索关键词',
  Search: '搜索',
  Clear: '清除',
  'Show Advanced Options': '显示高级选项',
  'Hide Advanced Options': '隐藏高级选项',
  ' Browse Expunged Galleries': '只显示已删除的图库',
  ' Require Gallery Torrent': '只显示有种子的图库',
  'Between ': '介于 ',
  ' and ': ' 和 ',
  ' pages': ' 页',
  'Minimum Rating: ': '最低评分:',
  'Any Rating': '无限制',
  '2 Stars': '2 星',
  '3 Stars': '3 星',
  '4 Stars': '4 星',
  '5 Stars': '5 星',
  'Disable custom filters for:': '禁用自定义过滤器:',
  ' Language': ' 语言',
  ' Uploader': ' 上传者',
  ' Tags': ' 标签',
  'Show File Search': '显示文件搜索',
  'Hide File Search': '隐藏文件搜索',
  'Select a file to upload, then hit File Search. All public galleries containing this exact file will be displayed.': '请选择要搜索的图像文件后点击“文件搜索”。将列出包含此文件的所有公开图库。',
  'File Search': '文件搜索',
  'For color images, the system can also perform a similarity lookup to find resampled images.': '对于彩色图像,系统还可以执行相似性查询以找到重采样过的图像。',
  ' Use Similarity Scan': ' 使用相似性查询',
  ' Only Search Covers': ' 仅搜索封面',
  'The keyword ': '关键词 ',
  ' is short and will be searched as an exact tag only.': ' 太短,因此只会搜索精确匹配的标签。',
  'Some terms use unsupported syntax, are too short, or are otherwise not valid.': '某些关键词使用了不支持的语法、太短或无效。',
  'The provided date is invalid or outside the range of posted galleries.': '提供的日期无效或超出已发布图库的日期范围。',
  'The page range minimum cannot be above 1000.': '页数最小值至多为 1000。',
  'The page range maximum cannot be below 10.': '页数最大值至少为 10。',
  'Your page range filter is too narrow.': '页数范围差至少为 20,范围比至多为 0.8。',
  'You provided too many keywords. Use fewer keywords, or combine keywords with quotes.': '使用的关键词过多。请减少关键词或使用引号组合关键词。',
  'You provided too many keywords. Use fewer keywords, or combine keywords with quotes. (Ignored ': '使用的关键词过多。请减少关键词或使用引号组合关键词。(已忽略 ',
  'No hits found': '什么也没有',
  'No unfiltered results found.': '没有未过滤的结果',
  'No unfiltered results in this page range. Use less aggressive filters.': '在此页数范围内没有未过滤的结果。请使用更宽松的过滤器。',
  'Disable Filters': '禁用过滤器',
  '<< First': '<< 首页',
  '< Prev': '< 上一页',
  '< Jump': '< 跳页',
  '< Seek': '< 搜寻',
  'Jump/Seek': '跳页/搜寻',
  'Seek >': '搜寻 >',
  'Jump >': '跳页 >',
  'Next >': '下一页 >',
  'Last >>': '末页 >>',
  'date or offset': '日期或偏移量',
  'Enter a year or date in YYYY, (YY)YY-MM or (YY)YY-MM-DD format to seek to, or the number of days to jump backwards or forwards, or a number followed by w, m and y to jump weeks, months or years respectively.': '请输入要跳转的年份或日期,格式为 YYYY,(YY)YY-MM 或 (YY)YY-MM-DD;\n或者输入要向前或向后跳转的天数,输入数字后可以加 w,m,y 分别跳转周,月,年',
  'Set the date to seek from or to.': '设置要跳转的日期',
  'Use Date Selector': '日期选择器',
  Minimal: '最小化',
  'Minimal+': '最小化 + 关注标签',
  Compact: '紧凑 + 标签',
  Extended: '扩展',
  Thumbnail: '缩略图',
  Published: '发布时间',
  Title: '标题',
  Uploader: '上传者',
  'reclass:': '重新分类:',
  'language:': '语言:',
  'parody:': '原作:',
  'character:': '角色:',
  'group:': '社团:',
  'artist:': '艺术家:',
  'cosplayer:': 'Coser:',
  'female:': '女性:',
  'male:': '男性:',
  'mixed:': '混合:',
  'other:': '其他:',
  'location:': '地点:',
  'temp:': '临时:',
  '(Disowned)': '(已放弃)',
  'No torrents available': '无可用种子',
  'Show torrents': '查看种子',
  'It is the dawn of a new day!': '新的一天开始了!',
  'Reflecting on your journey so far, you find that you are a little wiser.': '回想一下你迄今为止的旅程,你发现你更聪明了。',
  'You gain ': '你获得了 ',
  ' EXP, ': ' 经验,',
  ' Credits, ': ' Credits,',
  ' Credits!': ' Credits!',
  ' Credits and ': ' Credits 和 ',
  ' GP!': ' GP!',
  ' GP and ': ' GP 和 ',
  ' Hath!': ' Hath!',
  'You have encountered a monster!': '你遇到了怪物!',
  'Click here to fight in the HentaiVerse.': '点击此处进入 HentaiVerse 战斗',
  'Favorites 0': '收藏夹 0',
  'Favorites 1': '收藏夹 1',
  'Favorites 2': '收藏夹 2',
  'Favorites 3': '收藏夹 3',
  'Favorites 4': '收藏夹 4',
  'Favorites 5': '收藏夹 5',
  'Favorites 6': '收藏夹 6',
  'Favorites 7': '收藏夹 7',
  'Favorites 8': '收藏夹 8',
  'Favorites 9': '收藏夹 9',
  'Create New': '新建',
  Rename: '重命名',
  Cancel: '取消',
  Close: '关闭',
  Confirm: '确定',
  Delete: '删除',
  Save: '保存',
  None: '无',
  Yes: '是',
  No: '否',
  'No (Private)': '否 (私有)',
  'No (Expunged)': '否 (已删除)',
  'No (Deleted)': '否 (已移除)',
  'No (Replaced)': '否 (已替换)',
  'The site is currently in Read Only/Failover Mode. Some functionality will not be available. Details may be available on ': '网站当前处于只读/故障转移模式,部分功能会不可用。详情请关注 ',
  'The site is currently in Read Only Mode. This page is therefore not available.': '网站当前处于只读模式,因此本页面不可用。',
  'This content is not available in Russia.RU': '此内容在俄罗斯 (RU) 不可用',
  // 洋葱网址登录页
  'user:': '用户:',
  'pass:': '密码:',
  'code:': '代码:',
  username: '用户名',
  password: '密码',
  CPTCA: '验证码',
  'Fuck Off': '刷新',
  'Log In': '登录',
  'You have to complete every field': '您必须填完每个字段',
  'Please try again': '请再试一次'
}, [[/^(\d+) pages?$/, '$1 页'], [/^Found about ([\d,]+) results?./, '找到约 $1 个结果。'], [/^Found ([\d,]+\+?) results?./, '找到 $1 个结果。'], [/^Found hundreds of results./, '找到数百结果。'], [/^Found thousands of results./, '找到数千结果。'], [/^Found many results./, '找到许多结果。'], [/\s?Filtered ([\d,]+) galler(ies|y) from this page.\s?/, '已从此页面过滤 $1 个结果。'], [/\s?Excluded ([\d,]+) galler(ies|y) from this page.\s?/, '已从此页面排除 $1 个结果。'], [/\s?Excluded ([\d,]+) galler(ies|y) and filtered ([\d,]+) galler(ies|y) from this page.\s?/, '已从此页面排除 $1 个结果,过滤 $3 个结果。'], [/^This IP address has been temporarily banned due to an excessive request rate. This probably means you are using automated mirroring\/harvesting software or share the IP address with someone who does. The ban expires in (\d+) hours and (\d+) minutes$/, '由于请求速率过高,此 IP 地址已被暂时封禁。这可能意味着您正在使用自动镜像/采集软件,或与某人共享 IP 地址。封禁将在 $1 小时 $2 分钟后解除。']]);
;// ./src/services/ui-translation/data/ehwiki.ts

// 提交此文件时请先登录到 EHWiki
// 并在 https://ehwiki.org/wiki/Special:Preferences#mw-htmlform-i18n 中设置界面语言为“中文(简体)”
// 不要翻译已经被 MediaWiki 翻译过的内容
helper_merge(/.*/, 'ehwiki.org', {
  'external links': '外部链接',
  'E-Hentai Forums': 'E-Hentai 论坛'
}, []);
;// ./src/services/ui-translation/data/exchange.ts

helper_merge(/^\/exchange\.php\?/, undefined, {
  'The Hath Exchange': 'Hath 交易',
  'The GP Exchange': 'GP 交易',
  'Last 8 Hours (Credits per 1000 GP)': '最近 8 小时 (Credits/kGP)',
  'Last 24 Hours (Credits per 1000 GP)': '最近 24 小时 (Credits/kGP)',
  'Last 8 Hours (Credits per Hath)': '最近 8 小时 (Credits/Hath)',
  'Last 24 Hours (Credits per Hath)': '最近 24 小时 (Credits/Hath)',
  'Buy Hath': '买进 Hath',
  'Sell Hath': '卖出 Hath',
  'Buy GP': '买进 GP',
  'Sell GP': '卖出 GP',
  'Update Bid!': '更新买单',
  'Update Ask!': '更新卖单',
  'Insufficient credits': 'Credits 不足',
  'Insufficient Hath': 'Hath 不足',
  'Insufficient GP': 'GP 不足',
  '\n\t\t\t\tCount: ': '数量:',
  ' Hath \xA0\n\t\t\t\tBid Price per Hath: ': ' Hath \xA0 买入单价:',
  ' Hath \xA0\n\t\t\t\tAsk Price per Hath: ': ' Hath \xA0 卖出单价:',
  'Buy Hath!': '买进 Hath',
  'Sell Hath!': '卖出 Hath',
  ' kGP \xA0\n\t\t\t\tBid Price per kGP: ': ' kGP \xA0 买入单价:',
  ' kGP \xA0\n\t\t\t\tAsk Price per kGP: ': ' kGP \xA0 卖出单价:',
  'Buy GP!': '买进 GP',
  'Sell GP!': '卖出 GP',
  'Active Orders': '当前挂单',
  'Recent Transactions': '最近成交',
  'Bid (Buyers)': '买单',
  'Ask (Sellers)': '卖单',
  Time: '时间',
  Seller: '卖家',
  Buyer: '买家',
  Volume: '成交量',
  'Unit Cost': '单价',
  High: '最高',
  Low: '最低',
  Avg: '平均',
  Vol: '成交'
}, [[/^Available: ([\d,]+) (\w+)$/, '可用:$1 $2']]);
;// ./src/services/ui-translation/data/favorites.ts

helper_merge(/^\/favorites\.php/, undefined, {
  'Show All Favorites': '显示所有收藏夹',
  'Order: ': '排序:',
  'Published Time': '发布时间',
  'Favorited Time': '收藏时间',
  Favorited: '收藏时间',
  'Favorited:': '收藏于:',
  'Delete Selected': '删除选中收藏',
  'Change Category': '移动到'
}, [[/^Note: /, '备注:']]);
;// ./src/services/ui-translation/data/gallery.ts

helper_merge(/^\/g\//, undefined, {
  'Contact Uploader': '联系上传者',
  'Posted:': '发布于:',
  'Parent:': '父级:',
  'Visible:': '显示:',
  'Language:': '语言:',
  'This gallery has been translated from the original language text.': '此图库已从原始语言翻译',
  'This gallery is a rewrite, which means that a new text has been made up based on the visual content, but with little regard to the original language text.': '此图库存在内容改写,这意味着根据视觉内容创作了新的文本,与原始文本关联不大',
  'File Size:': '文件大小:',
  'Length:': '页数:',
  'Favorited:': '收藏:',
  Never: '从未',
  Once: '1 次',
  'Rating:': '评分:',
  'Not Yet Rated': '还没有评分',
  'Thanks for rating!': '感谢评分!',
  'Rating failed.': '评分失败。',
  ' Add to Favorites': ' 添加到收藏夹',
  'A Quick Note About Tagging': '关于标签系统的简单说明',
  'While tagging is relatively straight-forward, there are a number of established guidelines that determine when adding a particular tag is proper and when it is not. Before you put any significant amount of effort into it, we therefore ask that you skim through the ': '虽然打标签相对简单,但有许多既定准则可以确定何时添加特定标签是正确的。因此,在您投入其中之前,我们要求您阅读',
  'Basic Tagging Guidelines': '基本标签指南',
  ' and ': '和',
  'Fetish Listing': '恋物标签列表',
  '. This will likely save both you and the tagging moderators from doing unnecessary work. In particular, you should note the following:': '。这能有效避免您和标签版主进行不必要的工作。特别需要注意以下几点:',
  '- These are galleries, not individual images. ': '● 这些是「图库」而非单张图像,',
  'Do not tag stuff that is only featured in a few images.': '请勿标记仅出现在少量图像中的内容。',
  '- If a tag is ambiguous or frequently misused, you may have to specify a ': '● 如果某个标签不明确或经常被误用,则可能需要指定',
  namespace: '命名空间',
  '; ': ',',
  'see the Wiki': '参见 Wiki',
  '.': '。',
  '- The ': '● 您对标签的影响',
  power: '权重',
  ' with which you can affect tagging is determined by a number of factors, such as your account age and whether or not you are active on the ': '取决于多种因素,例如您的账户资历、您是否活跃于',
  forums: '论坛等',
  '- The forums is also where ': '● 论坛也是',
  'everything about tagging is discussed': '讨论标签相关内容',
  '. If you have any comments, suggestions or questions about tagging, this is where you should take it.': '的地方。如果您对标签有任何意见、建议或问题,可以在这里讨论。',
  'Alright Already': '好的',
  'Vote Up': '顶',
  'Vote Down': '踩',
  'Withdraw Vote': '撤销投票',
  'Show Tagged Galleries': '含有此标签的图库',
  'Show Tag Definition': '显示标签定义',
  'Add New Tag': '添加新标签',
  'Enter new tags, separated with comma': '输入新标签,使用半角逗号分隔',
  Tag: '打标签',
  'No tags have been added for this gallery yet.': '当前图库还没有标签。',
  'This gallery has been replaced; tags can no longer be added on this version.': '当前图库已被替换,不允许在此版本添加新的标签。',
  'Report Gallery': '举报图库',
  'Archive Download': '归档下载',
  'Petition to Expunge': '申请删除',
  'Expunge Petition Sent': '已发送删除申请',
  'Show Expunge Log': '显示删除日志',
  'Petition to Rename': '申请重命名',
  'Rename Petition Sent': '已发送重命名申请',
  'Show Gallery Stats': '查看统计',
  'Multi-Page Viewer': '多页查看器',
  'There are newer versions of this gallery available:': '此图库有更新的版本可用:',
  'Back to Gallery': '返回图库',
  'Contact Poster': '联系评论者',
  'Uploader Comment': '上传者评论',
  'Score ': '分数 ',
  'Vote+': '顶',
  'Vote-': '踩',
  'Last edited on ': '最后编辑于 ',
  'click to show all': '显示全部',
  'Post New Comment': '发送新评论',
  'Enter your comments here, then hit Post Comment. If the last comment posted is yours, this will be appended to that post.': '在此处输入您的评论,然后点击发表评论。如果最后一条评论是您的,则新评论会被附加到最后一条评论下。',
  'Post Comment': '发表评论',
  'Your comment is too short.': '您的评论太短了。',
  Edit: '编辑',
  'Edit Comment': '编辑评论',
  'Gallery not found. If you just added this gallery, you may have to wait a short while before it becomes available.': '没有找到图库。如果您刚刚添加了此图库,可能需要等待一段时间后才能变得可用。',
  'This gallery has been removed or is unavailable.': '此图库已被删除或无法使用。',
  'You will be redirected to the front page momentarily.': '您将在几秒后返回首页。',
  '(Click here to continue)': '(点此继续)',
  'Please wait...': '请稍候...',
  'Sorry about that.': '非常抱歉。',
  'Content Warning': '内容警告',
  'This gallery has been flagged as ': '此图库已被标记为',
  'Offensive For Everyone': '“对所有人具有攻击性”',
  '. Due to its content, it should not be viewed by anyone.': '。基于其内容,任何人都不应观看。',
  '(And if you choose to ignore this warning, you lose all rights to complain about it.)': '(如果您选择无视这一警告,您就失去了所有投诉的权利)',
  'View Gallery': '浏览图库',
  'Get Me Outta Here': '带我离开这里',
  'Never Warn Me Again': '不再提醒'
}, [[/^Japanese\s*$/, '日语 \xA0'], [/^English\s*$/, '英语 \xA0'], [/^Chinese\s*$/, '汉语 \xA0'], [/^Dutch\s*$/, '荷兰语 \xA0'], [/^French\s*$/, '法语 \xA0'], [/^German\s*$/, '德语 \xA0'], [/^Hungarian\s*$/, '匈牙利语 \xA0'], [/^Italian\s*$/, '意大利语 \xA0'], [/^Korean\s*$/, '韩语 \xA0'], [/^Polish\s*$/, '波兰语 \xA0'], [/^Portuguese\s*$/, '葡萄牙语 \xA0'], [/^Russian\s*$/, '俄语 \xA0'], [/^Spanish\s*$/, '西班牙语 \xA0'], [/^Thai\s*$/, '泰语 \xA0'], [/^Vietnamese\s*$/, '越南语 \xA0'], [/^(\d+) times$/, '$1 次'], [/^Average: ([\d.]+)$/, '平均值:$1'], [/^Rate as ([\d.]+) stars?$/, '$1 星'], [/^\s*Add to Favorites\s*$/, ' 添加到收藏夹'], [/^Torrent Download \((\d+)\)$/, '种子下载 ($1)'], [/^, added (\d\d\d\d-\d\d-\d\d \d\d:\d\d)$/, ',更新于 $1'], [/^Showing ([\d,]+) - ([\d,]+) of ([\d,]+) images?$/, '$1 - $2,共 $3 张图像'], [/^Page (\d+): /, '第 $1 页:'], [/^Page (\d+)$/, '第 $1 页'], [/^Posted on (\d\d \w+ \d\d\d\d, \d\d:\d\d) by:\s*$/, '评论时间:$1 \xA0作者:'], [/^Posted on (\d\d \w+ \d\d\d\d, \d\d:\d\d)\s*/, '评论时间:$1'], [/^There (is|are) ([\d,]+) more comments? below the viewing threshold - $/, '还有 $2 条评论尚未显示 - '], [/^This gallery is unavailable due to a copyright claim by (.*)\.$/, '由于 $1 提出的版权要求,此图库无法使用']]);
helper_merge(/^\/g\/\w+\/\w+\/.*act=expunge/, undefined, {
  'Submit New Expunge Petition': '提交新的删除申请',
  'Specify a valid objective reason why this gallery should be expunged.': '请说明申请删除此图库的客观原因。',
  ' This gallery is a duplicate of equal or lower quality of an earlier posted gallery.': '此图库是之前发布的图库的质量相同或较低的副本。',
  ' A newer higher-quality and clearly marked copy of this gallery has been uploaded.': '此图库的更高质量和标记清楚的副本已上传。',
  ' This gallery contains either illicit content like child porn or anything else forbidden by the ': '此图库包含非法内容,如儿童色情或其他列于',
  ', or otherwise falls under the ': '的禁止内容,或列于',
  'Expunge Guidelines': '删除指南',
  ' (specify below).': '的内容 (在下方详细描述)。',
  ' This gallery contains either illicit content like child porn or anything else that has been banned.': '此图库包含非法内容,如儿童色情或其他已被禁止的内容。',
  ' Content has been defaced by adding content-obstructing scanmarks, censorship or advertisements beyond what is present in the original artist release, or has been intentionally degraded to the point where legibility is an issue.': '图库内容被污损,添加了与内容无关的扫描水印、审查或广告,超出了原作者发布的内容或被故意降低画质,以至于影响了易读性。',
  'Enter a reason for this expunge here. Note that submitting petitions with subjective reasons along the line of "I hate this content/artist/uploader/etc" are NOT valid and can cause account penalties/restrictions.': '在此处输入删除的详细原因。请注意,“我讨厌此内容/艺术家/上传者”等主观理由是无效的,并且可能导致账户处罚/限制。',
  'Enter the URL of the conflicting gallery, if applicable.': '如有必要,在此处输入冲突图库的 URL。',
  'Create New Petition': '提交新申请',
  'Cancel Expunge Petition': '撤回删除申请',
  'You must specify a valid expunge type to start new expunge petition.': '您必须选择一个删除类型才能提交新的删除申请。',
  'You must provide a reason to start a new expunge petition.': '您必须提供一个理由才能提交新的删除申请。',
  'You must provide a link to the conflicting gallery to start a new expunge petition of this type.': '您必须提供冲突图库的链接才能提交此类型的删除申请。',
  'Pending Expunge Petition': '待处理的删除申请',
  'Active Expunge Petition': '完成的删除申请',
  'Rejected Expunge Petition': '否决的删除申请',
  'Active Expunge Petition (Pending Appeal)': '完成的删除申请 (申诉中)',
  'Revoked Expunge Petition': '撤销的删除申请',
  'Submitted:': '提交于:',
  'Expunge Type:': '删除类型:',
  Duplicate: '重复',
  Replaced: '已替换',
  Forbidden: '违规内容',
  Defaced: '污损',
  'Expunge Reason:': '删除原因:',
  'Conflict Gallery:': '冲突图库:',
  'Appeal Reason:': '申诉原因:',
  ', who added:': ',并评论',
  'Add a comment with this vote (optional)': '为投票添加一个评论 (可选)',
  'Vote +': '支持',
  'Vote -': '反对',
  'You have already voted ': '您已为此申请投出',
  FOR: '支持',
  AGAINST: '反对',
  ' this expunge petition.': '票',
  ' this appeal.': '票',
  'This petition will be ': '此申请将被',
  'This appeal will take effect in approximately ': '此申请将被撤销,除非在 ',
  ACTIVATED: '激活',
  REJECTED: '否决',
  REVOKED: '撤销',
  ' in approximately ': ',除非在 ',
  ' unless sufficiently upvoted.': ' 内有足够的支持票',
  ' unless sufficiently downvoted.': ' 内有足够的反对票',
  'This petition was ': '此申请已被',
  'This expunge petition is active and prevents the gallery from being listed by default.': '此删除申请已激活,图库已在列表中默认隐藏。',
  'If you have an objective reason for why this gallery should not have been expunged, you can initiate an appeal below.': '如果您有客观原因说明不应该删除此图库,可以在下方提出申诉。',
  'Appeals must not be submitted if the gallery should be expunged but the wrong expunge type was used.': '如果图库应该被删除但使用了错误的删除类型,则不得提交申诉。',
  'Note that submitting invalid appeals can lead to account restrictions/penalities.': '请注意,提交无效申诉可能会导致账户受到限制/处罚。',
  'Enter a valid reason for why this expunge petition should be revoked here.': '请在此处输入应撤销此删除申请的正当理由。',
  'Create New Appeal': '提交新申诉',
  'An appeal has been submitted for this expunge petition.': '已针对此删除申请提出申诉。',
  'You cannot currently start an expunge for this gallery.': '您目前无法为此图库提交删除申请。',
  'You cannot start additional expunges on this gallery.': '您无法为此图库提交更多删除申请。',
  'This petition is being processed and can no longer be voted on.': '此申请正在处理,无法继续投票。',
  'New expunges for this gallery can currently only be started by trusted users.': '目前只有可信用户能为此图库提交新的删除申请。',
  'If you believe that the gallery should be expunged, please make a post in the ': '如果您认为此图库应当被删除,请在 ',
  'Expunging, Appealing and Reverting Assistance': '删除、申诉和恢复帮助',
  ' thread.': ' 主题中发表帖子。'
}, [[/^(\d\d\d\d-\d\d-\d\d \d\d:\d\d) by (.*)$/, '$1 由 $2'], [/^on (\d\d\d\d-\d\d-\d\d \d\d:\d\d) by (.*)$/, '投票于 $1 由 $2'], [/^(\d+) minutes?$/, '$1 分钟'], [/^ on (\d\d\d\d-\d\d-\d\d \d\d:\d\d)$/, ',于 $1']]);
helper_merge(/^\/g\/\w+\/\w+\/.*report=/, undefined, {
  'Report Type': '举报类型',
  '[Select a complaint type...]': '[请选择一个举报类型...]',
  Content: '内容',
  'DMCA/Copyright Infringement': 'DMCA / 侵犯版权',
  'Child Pornography': '儿童色情',
  'Other Illicit Content': '其他非法内容',
  Technical: '技术',
  'Excessive Updates': '频繁更新',
  'Reversion/Split/Undisown Request': '回退/拆分/恢复所有权请求',
  'If you log on with an account, we will remember your provided contact details.': '如果您使用账户登录,我们将记住您提供的联系信息。',
  'We remember and automatically fill in any previous contact details you have entered.': '我们会记住并自动填充您曾经输入的联系信息。',
  'Your email address': '您的电子邮件地址',
  'Please provide a working email address.': '请提供有效的电子邮件地址。',
  'Your full legal name': '您的全名',
  'Aliases and pseudonyms cannot be used.': '不能使用别名和假名。',
  "Copyright holder's full name": '版权所有者的全名',
  'Enter if you are not the copyright holder. You must be an authorized agent.': '如果您不是版权所有者,请输入。您必须是授权代理。',
  'Company Name': '公司名称',
  Optional: '可选',
  'Phone Number': '电话号码',
  Address: '地址',
  'Your residential home address': '您的住宅地址',
  City: '城市',
  'Your city of residence': '您居住的城市',
  'State / Province': '州 / 省',
  'Your state or province of residence, if applicable': '您居住的州或省,如果适用',
  Country: '国家',
  'Your country of residence': '您居住的国家',
  'Describe the nature of the infringement': '描述侵权性质',
  'Elaborate on why this gallery is infringing on your copyrighted work. Include links to where the original work can be purchased, or evidence of source material.': '详细说明为何此图库侵犯了您的版权。包括原作购买链接或源材料证据。',
  'Please elaborate on why this gallery infringes on your copyright. If this work is for sale, provide links to where it can be legally purchased.': '请详细说明为何此图库侵犯了您的版权。如果此作品正在出售,请提供可以合法购买的链接。',
  'Digital signature': '数字签名',
  'Enter your name to sign this submission': '输入您的姓名以签署此提交',
  Acknowledgement: '确认',
  "By submitting this form, you attest, under penalty of perjury, that you have a good faith belief that use of the material in this report is not authorized by the copyright owner, its agent, or the law; AND you are authorized to act on behalf of the copyright owner; AND you understand that you may be liable for any damages, including costs and attorneys' fees, if you knowingly materially misrepresent reported material.": '通过提交此表单,您声明,根据伪证处罚,您有充分的信心相信本报告中的材料未经版权所有者、其代理人或法律授权;并且您有权代表版权所有者行使权利;并且您了解,如果您故意提供错误的材料,您的利益可能会因此受到损害,包括支出和律师费。',
  'Send Report': '发送报告',
  'Report Details': '报告详情',
  'Please describe the illicit content of this gallery. Include the specific pages where the content in question can be found.': '请描述此图库的非法内容。包括可以找到有问题内容的特定页面。',
  'Details of illicit content and what pages you found it on. Using this form for copyright-related requests or anything else that is not actual illicit content can get you blocked from using this site.': '非法内容的详细信息以及发现位置。如果使用此表单进行与版权相关的请求或其他任何与实际非法内容无关的请求,可能会导致您无法继续使用本网站。',
  'Provide any relevant details. If the gallery has excessive updates that are not allowed under the community guidelines, it will be locked for further updates.': '提供任何相关细节。图库频繁更新不符合社区指南,会被锁定以防止继续更新。',
  'Please provide additional details.': '请提供详细信息。',
  'Provide any relevant details. If valid content has been removed from the gallery, it will be reverted. If valid content has been replaced with other valid content, it will be split into two separate galleries.': '提供任何相关细节。如果图库中的有效内容被删除,则会被恢复。如果有效内容被其他有效内容替换,将被拆分成两个单独的图库。'
}, []);
;// ./src/services/ui-translation/data/gallerypopups.ts

helper_merge(/^\/gallerypopups\.php\?.*act=rename/, undefined, {
  'Uploader:': '上传者:',
  'Roman Script': '罗马音',
  'Japanese Script': '日文',
  'Not Set': '未设置',
  'Blank Vote': '空投票',
  ' New': ' 新',
  Submit: '提交'
});
helper_merge(/^\/gallerypopups\.php\?.*act=addfav/, undefined, {
  'Choose a favorite category to save this gallery under. You can also add a note to it if you wish.': '请选择一个分类保存您的收藏,您也可以添加一些备注。',
  'Favorite Note (Max 200 Characters)': '收藏备注 (最多 200 字符)',
  'Add to Favorites': '添加到收藏',
  'Remove from Favorites': '从收藏中移除',
  'Apply Changes': '应用更改'
}, [[/(\d+) \/ (\d+) favorite note slots? used./, '已使用 $1 个备注,共 $2 个。']]);
;// ./src/services/ui-translation/data/hathperks.ts

helper_merge(/^\/hathperks\.php/, undefined, {
  'By running the Hentai@Home client, you will over time gain special bonus points known as ': '通过运行 Hentai@Home 客户端,您会随着时间的推移获得特殊的奖励积分,即 ',
  '. These are rewards for people who help keeping this site free, fast and responsive by donating bandwidth and computer resources, and can be exchanged here for ': '。这是给予捐献带宽和计算机资源,帮助网站保持自由与快速的人的奖励,可以在本页面兑换 ',
  ', which grant beneficial effects on E-Hentai Galleries and in the HentaiVerse.': ',以提升 E-Hentai 和 HentaiVerse 体验。',
  'If running H@H is not an option, you can exchange Credits for Hath at the ': '如果您无法运行 H@H,可以在这里使用 Credits 交换 Hath:',
  'While the Hath Perks for the HentaiVerse cannot be obtained in any other way, most of the ones that are specific for Galleries will also get unlocked by making a donation on the ': '虽然用于 HentaiVerse 的 Hath Perks 不能通过其他方法获取,但关于图库的大部分 Hath Perks 还可以通过',
  'Donation Screen': '捐赠',
  '. These will be refunded if you buy them for Hath, and later make a qualifying donation. There is also an option to "adopt" H@H clients that will grant you Hath over time as if you were running it yourself.': '获取。如果您已经使用 Hath 购买,在达成符合条件的捐赠后将获得退款。此外还有一个“领养” H@H 客户端的选项,它会随着时间的推移而授予您 Hath,就好像自己运行它一样。',
  'You currently have ': '您现在拥有 ',
  ' Hath.': ' Hath。',
  ' Activated!': ' 已激活!',
  Description: '描述',
  Obtained: '已获得',
  Purchase: '购买',
  'Free with a $20 donation.': '捐赠 $20 免费解锁',
  'Free with a $50 donation.': '捐赠 $50 免费解锁',
  'Free with a $100 donation.': '捐赠 $100 免费解锁',
  'Ads-Be-Gone': '广告不见了',
  'Makes ads be gone.': '让广告消失。',
  'Source Nexus': '原始之力',
  'Unlocks the Original Images functionality on E-Hentai Galleries. This allows you to browse most files with the original, non-resampled version.': '解锁 E-Hentai 图库的原始图像功能,这允许您直接浏览大部分图像的原始非重采样版本。',
  'Multi-Page Viewer': '多页查看器',
  'Unlocks the Multi-Page Viewer function on E-Hentai Galleries. This allows you to view all images from a gallery on one page. (': '解锁 E-Hentai 图库的多页查看器功能,这允许您在单个页面上查看图库中的所有图像。(',
  demo: '演示',
  'More Thumbs': '更多缩略图',
  'Doubles the maximum number of thumbnail rows.': '将最大缩略图行数增加到 8。',
  'Thumbs Up': '超多缩略图',
  'Further increases the maximum number of thumbnail rows to 20.': '将最大缩略图行数增加到 20。',
  'All Thumbs': '全部缩略图',
  'Further increases the maximum number of thumbnail rows to 40.': '将最大缩略图行数增加到 40。',
  'More Pages': '更多页面',
  'Increases all limits on how many pages you can view by a factor of two.': '将图像限制变为原来的 2 倍。',
  'Lots of Pages': '超多页面',
  'Increases all limits on how many pages you can view by a factor of five.': '将图像限制变为原来的 5 倍。',
  'Too Many Pages': '全部页面',
  'Increases all limits on how many pages you can view by a factor of ten.': '将图像限制变为原来的 10 倍。',
  'More Favorite Notes I': '更多收藏备注 I',
  'Increases the number of favorite note slots to 10000.': '将收藏备注限制增加到 10000。',
  'More Favorite Notes II': '更多收藏备注 II',
  'Increases the number of favorite note slots to 25000.': '将收藏备注限制增加到 25000。',
  'Paging Enlargement I': '页面扩大 I',
  'Increases the number of results you can show per page on the index, search and torrent pages to 50.': '将索引、搜索和种子页面的结果数量变为 50。',
  'Paging Enlargement II': '页面扩大 II',
  'Increases the number of results you can show per page on the index, search and torrent pages to 100.': '将索引、搜索和种子页面的结果数量变为 100。',
  // https://ehwiki.org/wiki/Hath_Perks/Chinese
  'Postage Paid': '邮费已付',
  'You no longer have to pay postage or CoD fees on messages sent through MoogleMail.': '您使用莫古利邮局可免收邮费和货到付款手续费。',
  'Vigorous Vitality': '生机勃勃',
  'Increases your base health by 10%.': '增加您的基础生命值 10%。',
  'Effluent Ether': '溢流以太',
  'Increases your base mana by 10%.': '增加您的基础魔力值 10%。',
  'Suffusive Spirit': '心灵坚强',
  'Increases your base spirit by 10%.': '增加您的基础灵力值 10%。',
  'Resplendent Regeneration': '辉煌再起',
  'Increases your in-combat regeneration by 50%.': '增强您战斗中的再生能力 50%。',
  'Enigma Energizer': '谜之劲量',
  'Doubles the bonus from the riddlemaster, and increases duration to 50 turns.': '加倍御谜士的奖励,持续回合数增加至 50 回合。',
  'Yakety Sax': '叶克蒂·萨克斯',
  'Monsters will never catch you when fleeing.': '您逃跑时不会被怪物抓到。',
  'Soul Catcher': '灵魂捕手',
  'Get ten free soul fragments per day.': '每天可得到十片免费的灵魂碎片。',
  'These are added automatically if you have opened HV at some point during the past 30 days.': '如果您最近 30 天内还有开启游戏将会自动增加。',
  'Extra Strength Formula': '特强配方',
  'Happy Pills are twice as effective at improving monster morale.': '快乐药丸会加倍恢复怪物的士气值。',
  "That's Good Eatin'": '这倒是挺好吃的!',
  'Increases monster food recovery amount by 20%.': '增加怪物食物的饱足感 20%。',
  'Coupon Clipper': '食利者',
  '10% discount on all purchases at the Item Shop.': '在道具店的所有购物享 10% 折扣。',
  'Long Gone Before Daylight': '黎明之前',
  'The first energy drink used in a day gives twice the normal amount of stamina.': '每天的第一瓶能量饮料恢复量加倍。',
  'Dark Descent': '黑暗后裔',
  'Increases the number of World Seeds dropped from higher-level arenas.': '高等级竞技场掉落的世界种子数量增加 30%。',
  'Eminent Elementalist': '元素大师',
  'Increases effective Elemental Magic Proficiency by 10% of your natural base proficiency.': '您自身的基础元素魔法熟练度的 10% 会增加到有效熟练度里。',
  'Divine Warmage': '圣战法师',
  'Increases effective Divine Magic Proficiency by 10% of your natural base proficiency.': '您自身的基础神圣魔法熟练度的 10% 会增加到有效熟练度里。',
  'Death and Decay': '死亡凋零',
  'Increases effective Forbidden Magic Proficiency by 10% of your natural base proficiency.': '您自身的基础黑暗魔法熟练度的 10% 会增加到有效熟练度里。',
  'Evil Enchantress': '邪恶的女巫',
  'Increases effective Deprecating Magic Proficiency by 10% of your natural base proficiency.': '您自身的基础减益魔法熟练度的 10% 会增加到有效熟练度里。',
  'Force of Nature': '自然之力',
  'Increases effective Supportive Magic Proficiency by 10% of your natural base proficiency.': '您自身的基础增益魔法熟练度的 10% 会增加到有效熟练度里。',
  'Manehattan Project': '曼哈顿计划',
  'Significantly boosts the damage output of the Orbital Friendship Cannon.': '大幅提升「友情小马炮」的杀伤力。',
  'Follower of Snowflake': '雪花的信徒',
  'Displays your unyielding devotion to Snowflake, the Goddess of Loot and Harvest.': '雪花 ─ 专司战利品与收获的女神。宣示您对她不屈不挠的奉献精神。',
  'Limit Breaker I': '极限突破 I',
  'For those who believe that power is but a number; increases the equipment stat fusion cap to 210.': '献给那些相信力量只是一个数字的人。将装备属性融合上限提升至 210。',
  'Limit Breaker II': '极限突破 II',
  'Further increases the equipment stat fusion cap to 220.': '进一步提高装备属性融合上限至 220。',
  'Limit Breaker III': '极限突破 III',
  'Further increases the equipment stat fusion cap to 230.': '进一步提高装备属性融合上限至 230。',
  'Limit Breaker IV': '极限突破 IV',
  'Further increases the equipment stat fusion cap to 240.': '进一步提高装备属性融合上限至 240。',
  'Limit Breaker V': '极限突破 V',
  'Further increases the equipment stat fusion cap to 250.': '进一步提高装备属性融合上限至 250。',
  'Thinking Cap': '深思',
  'Increases EXP gain by 25%. For calculation purposes, this bonus is added to the HentaiVerse training bonus.': '所有取得的经验值提升 25%。为计算方便,此奖励被合并到 HentaiVerse 训练奖励。',
  Mentats: '晶算师',
  'Increases this EXP bonus to 50%.': '提升经验值奖励至 50%。',
  'Learning Chip': '学习晶片',
  'Increases this EXP bonus to 75%.': '提升经验值奖励至 75%。',
  'Cybernetic Implants': '神经植入物',
  'Increases this EXP bonus to 100%.': '提升经验值奖励至 100%。',
  'Innate Arcana I': '天赋奥术 I',
  'Applies a 10% upkeep discount on autocast spells.': '维持自动施法所需魔力减少10%。',
  'Innate Arcana II': '天赋奥术 II',
  'Increases the upkeep discount on autocast spells to 20%.': '维持自动施法所需魔力减少20%。',
  'Innate Arcana III': '天赋奥术 III',
  'Increases the upkeep discount on autocast spells to 30%.': '维持自动施法所需魔力减少30%。',
  'Innate Arcana IV': '天赋奥术 IV',
  'Increases the upkeep discount on autocast spells to 40%.': '维持自动施法所需魔力减少40%。',
  'Innate Arcana V': '天赋奥术 V',
  'Increases the upkeep discount on autocast spells to 50%.': '维持自动施法所需魔力减少50%。',
  'Crystarium I': '水晶矿脉 I',
  'Whenever a monster drops a crystal in the HentaiVerse, you will receive an additional bonus crystal.': '在 HentaiVerse 里每当一只怪物掉落一颗水晶时,您将会再获得一颗水晶作为追加奖励。',
  'Crystarium II': '水晶矿脉 II',
  'Further increases the number of crystals received per drop to three.': '进一步提高水晶掉落数量至三倍。',
  'Crystarium III': '水晶矿脉 III',
  'Further increases the number of crystals received per drop to five.': '进一步提高水晶掉落数量至五倍。',
  'Crystarium IV': '水晶矿脉 IV',
  'Further increases the number of crystals received per drop to seven.': '进一步提高水晶掉落数量至七倍。',
  'Crystarium V': '水晶矿脉 V',
  'Further increases the number of crystals received per drop to ten.': '进一步提高水晶掉落数量至十倍。',
  'Tokenizer I': '令牌技师 I',
  'Doubles the chance of random mob token drops.': '打怪的令牌掉落率变成双倍。',
  'Tokenizer II': '令牌技师 II',
  'Triples the chance of random mob token drops.': '打怪的令牌掉落率变成三倍。',
  'Tokenizer III': '令牌技师 III',
  'Quadruples the chance of random mob token drops.': '打怪的令牌掉落率变成四倍。',
  'Hoarder I': '囤积者 I',
  'The first 200 equips placed in storage do not count towards your equipment limit.': '放置于仓库的前 200 件装备不计入您的装备数量限制。',
  'Hoarder II': '囤积者 II',
  'Increases the equipment storage allowance to 400 equips.': '将装备数量限制增加到 400。',
  'Hoarder III': '囤积者 III',
  'Increases the equipment storage allowance to 600 equips.': '将装备数量限制增加到 600。',
  'Hoarder IV': '囤积者 IV',
  'Increases the equipment storage allowance to 800 equips.': '将装备数量限制增加到 800。',
  'Hoarder V': '囤积者 V',
  'Increases the equipment storage allowance to 1000 equips.': '将装备数量限制增加到 1000。',
  'Repair Bear Mk.1': '修理熊 Mk.1',
  'The latest invention from Moogle Dynamics, the Repair Bear will follow you around and help you keep your equipment in good shape at all times, reducing effective equipment wear by half. Does not affect charms.': '作为莫古利动力学的最新发明,修理熊会一路跟随您,帮助您随时维护装备,使装备的实际磨损降低一半。对护身符无效。',
  'Repair Bear Mk.2': '修理熊 Mk.2',
  'Further hones the skills of your Repair Bear, making it better at maintaining your equipment. Effective equipment wear is reduced to 25% of normal.': '进一步磨练您的修理熊的技巧,使它精于维护您的装备。有效装备耗损程度减少为正常值的 25%。',
  'Repair Bear Mk.3': '修理熊 Mk.3',
  'Trains your Repair Bear to the penultimate level, making those pesky forge visits (almost) a distant memory. Effective equipment wear is reduced to 10% of normal.': '将您的修理熊培训至完全体,让那些烦人的锻造次数 (几乎) 成为遥远的记忆。有效装备耗损程度减少为正常值的 10%。',
  'Repair Bear Mk.4': '修理熊 Mk.4',
  'The pinnacle of Repair Bear Technology, providing the ultimate in-the-field preventive equipment maintenance. Equipment wear is fully eliminated, and equipment durability loss on defeat is cut by half.': '修理熊科技的顶尖之作,提供实地预防性装备维护的终极方案。装备耗损完全消除,且被击败时的装备耐久度损耗减半。',
  'Dæmon Duality I': '双重守护精灵 I',
  'Increases attack damage and magic damage by 10%.': '提升攻击伤害和魔法伤害各 10%。',
  'Dæmon Duality II': '双重守护精灵 II',
  'Increases attack damage and magic damage by 15%.': '提升攻击伤害和魔法伤害各 15%。',
  'Dæmon Duality III': '双重守护精灵 III',
  'Increases attack damage and magic damage by 20%.': '提升攻击伤害和魔法伤害各 20%。',
  'Dæmon Duality IV': '双重守护精灵 IV',
  'Increases attack damage and magic damage by 25%.': '提升攻击伤害和魔法伤害各 25%。',
  'Dæmon Duality V': '双重守护精灵 V',
  'Increases attack damage and magic damage by 30%.': '提升攻击伤害和魔法伤害各 30%。',
  'Dæmon Duality VI': '双重守护精灵 VI',
  'Increases attack damage and magic damage by 35%.': '提升攻击伤害和魔法伤害各 35%。',
  'Dæmon Duality VII': '双重守护精灵 VII',
  'Increases attack damage and magic damage by 40%.': '提升攻击伤害和魔法伤害各 40%。',
  'Dæmon Duality VIII': '双重守护精灵 VIII',
  'Increases attack damage and magic damage by 45%.': '提升攻击伤害和魔法伤害各 45%。',
  'Dæmon Duality IX': '双重守护精灵 IX',
  'Increases attack damage and magic damage by 50%.': '提升攻击伤害和魔法伤害各 50%。'
});
;// ./node_modules/.pnpm/@[email protected]/node_modules/@babel/runtime/helpers/esm/typeof.js



function _typeof(o) {
  "@babel/helpers - typeof";

  return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (o) {
    return typeof o;
  } : function (o) {
    return o && "function" == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? "symbol" : typeof o;
  }, _typeof(o);
}

;// ./node_modules/.pnpm/@[email protected]/node_modules/@babel/runtime/helpers/esm/toPrimitive.js


function toPrimitive(t, r) {
  if ("object" != _typeof(t) || !t) return t;
  var e = t[Symbol.toPrimitive];
  if (void 0 !== e) {
    var i = e.call(t, r || "default");
    if ("object" != _typeof(i)) return i;
    throw new TypeError("@@toPrimitive must return a primitive value.");
  }
  return ("string" === r ? String : Number)(t);
}

;// ./node_modules/.pnpm/@[email protected]/node_modules/@babel/runtime/helpers/esm/toPropertyKey.js


function toPropertyKey(t) {
  var i = toPrimitive(t, "string");
  return "symbol" == _typeof(i) ? i : i + "";
}

;// ./node_modules/.pnpm/@[email protected]/node_modules/@babel/runtime/helpers/esm/defineProperty.js

function _defineProperty(e, r, t) {
  return (r = toPropertyKey(r)) in e ? Object.defineProperty(e, r, {
    value: t,
    enumerable: !0,
    configurable: !0,
    writable: !0
  }) : e[r] = t, e;
}

;// ./node_modules/.pnpm/@[email protected]/node_modules/@babel/runtime/helpers/esm/objectSpread2.js





function objectSpread2_ownKeys(e, r) {
  var t = Object.keys(e);
  if (Object.getOwnPropertySymbols) {
    var o = Object.getOwnPropertySymbols(e);
    r && (o = o.filter(function (r) {
      return Object.getOwnPropertyDescriptor(e, r).enumerable;
    })), t.push.apply(t, o);
  }
  return t;
}
function _objectSpread2(e) {
  for (var r = 1; r < arguments.length; r++) {
    var t = null != arguments[r] ? arguments[r] : {};
    r % 2 ? objectSpread2_ownKeys(Object(t), !0).forEach(function (r) {
      _defineProperty(e, r, t[r]);
    }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : objectSpread2_ownKeys(Object(t)).forEach(function (r) {
      Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r));
    });
  }
  return e;
}

;// ./src/services/ui-translation/data/_browsingcountry.ts
const BROWSING_COUNTRY = {
  Africa: 'Africa (非洲)',
  Afghanistan: 'Afghanistan (阿富汗)',
  'Aland Islands': 'Aland Islands (奥兰群岛)',
  Albania: 'Albania (阿尔巴尼亚)',
  Algeria: 'Algeria (阿尔及利亚)',
  'American Samoa': 'American Samoa (美属萨摩亚)',
  Andorra: 'Andorra (安道尔)',
  Angola: 'Angola (安哥拉)',
  Anguilla: 'Anguilla (安圭拉)',
  Antarctica: 'Antarctica (南极洲)',
  'Antigua and Barbuda': 'Antigua and Barbuda (安提瓜和巴布达)',
  Argentina: 'Argentina (阿根廷)',
  Armenia: 'Armenia (亚美尼亚)',
  Aruba: 'Aruba (阿鲁巴)',
  Asia: 'Asia (亚洲)',
  'Asia/Pacific Region': 'Asia/Pacific Region (亚太地区)',
  Australia: 'Australia (澳大利亚)',
  Austria: 'Austria (奥地利)',
  Azerbaijan: 'Azerbaijan (阿塞拜疆)',
  Bahamas: 'Bahamas (巴哈马)',
  Bahrain: 'Bahrain (巴林)',
  Bangladesh: 'Bangladesh (孟加拉国)',
  Barbados: 'Barbados (巴巴多斯)',
  Belarus: 'Belarus (白俄罗斯)',
  Belgium: 'Belgium (比利时)',
  Belize: 'Belize (伯利兹)',
  Benin: 'Benin (贝宁)',
  Bermuda: 'Bermuda (百慕大)',
  Bhutan: 'Bhutan (不丹)',
  Bolivia: 'Bolivia (玻利维亚)',
  'Bonaire Saint Eustatius and Saba': 'Bonaire Saint Eustatius and Saba (博内尔、圣尤斯特歇斯和萨巴)',
  'Bosnia and Herzegovina': 'Bosnia and Herzegovina (波斯尼亚和黑塞哥维那)',
  Botswana: 'Botswana (博茨瓦纳)',
  'Bouvet Island': 'Bouvet Island (布维岛)',
  Brazil: 'Brazil (巴西)',
  'British Indian Ocean Territory': 'British Indian Ocean Territory (英属印度洋领地)',
  'Brunei Darussalam': 'Brunei Darussalam (文莱)',
  Bulgaria: 'Bulgaria (保加利亚)',
  'Burkina Faso': 'Burkina Faso (布基纳法索)',
  Burundi: 'Burundi (布隆迪)',
  Cambodia: 'Cambodia (柬埔寨)',
  Cameroon: 'Cameroon (喀麦隆)',
  Canada: 'Canada (加拿大)',
  'Cape Verde': 'Cape Verde (佛得角)',
  'Cayman Islands': 'Cayman Islands (开曼群岛)',
  'Central African Republic': 'Central African Republic (中非共和国)',
  Chad: 'Chad (乍得)',
  Chile: 'Chile (智利)',
  China: 'China (中国)',
  'Chinese Dominion': 'Chinese Dominion (中国大陆)',
  'Christmas Island': 'Christmas Island (圣诞岛)',
  'Cocos Islands': 'Cocos Islands (科科斯群岛)',
  Colombia: 'Colombia (哥伦比亚)',
  Comoros: 'Comoros (科摩罗)',
  Congo: 'Congo (刚果)',
  'Cook Islands': 'Cook Islands (库克群岛)',
  'Costa Rica': 'Costa Rica (哥斯达黎加)',
  "Cote D'Ivoire": "Cote D'Ivoire (科特迪瓦)",
  Croatia: 'Croatia (克罗地亚)',
  Cuba: 'Cuba (古巴)',
  Curacao: 'Curacao (库拉索)',
  Cyprus: 'Cyprus (塞浦路斯)',
  'Czech Republic': 'Czech Republic (捷克共和国)',
  Denmark: 'Denmark (丹麦)',
  Djibouti: 'Djibouti (吉布提)',
  Dominica: 'Dominica (多米尼加)',
  'Dominican Republic': 'Dominican Republic (多米尼加共和国)',
  Ecuador: 'Ecuador (厄瓜多尔)',
  Egypt: 'Egypt (埃及)',
  'El Salvador': 'El Salvador (萨尔瓦多)',
  'Equatorial Guinea': 'Equatorial Guinea (赤道几内亚)',
  Eritrea: 'Eritrea (厄立特里亚)',
  Estonia: 'Estonia (爱沙尼亚)',
  Ethiopia: 'Ethiopia (埃塞俄比亚)',
  Europe: 'Europe (欧洲)',
  'Falkland Islands': 'Falkland Islands (马尔维纳斯群岛)',
  'Faroe Islands': 'Faroe Islands (法罗群岛)',
  Fiji: 'Fiji (斐济)',
  Finland: 'Finland (芬兰)',
  France: 'France (法国)',
  'French Guiana': 'French Guiana (法属圭亚那)',
  'French Polynesia': 'French Polynesia (法属波利尼西亚)',
  'French Southern Territories': 'French Southern Territories (法属南部领地)',
  Gabon: 'Gabon (加蓬)',
  Gambia: 'Gambia (冈比亚)',
  Georgia: 'Georgia (格鲁吉亚)',
  Germany: 'Germany (德国)',
  Ghana: 'Ghana (加纳)',
  Gibraltar: 'Gibraltar (直布罗陀)',
  Greece: 'Greece (希腊)',
  Greenland: 'Greenland (格陵兰)',
  Grenada: 'Grenada (格林纳达)',
  Guadeloupe: 'Guadeloupe (瓜德罗普)',
  Guam: 'Guam (关岛)',
  Guatemala: 'Guatemala (危地马拉)',
  Guernsey: 'Guernsey (根西岛)',
  Guinea: 'Guinea (几内亚)',
  'Guinea-Bissau': 'Guinea-Bissau (几内亚比绍)',
  Guyana: 'Guyana (圭亚那)',
  Haiti: 'Haiti (海地)',
  'Heard Island and McDonald Islands': 'Heard Island and McDonald Islands (赫德岛和麦克唐纳群岛)',
  'Holy See (Vatican City State)': 'Holy See (Vatican City State) (梵蒂冈)',
  Honduras: 'Honduras (洪都拉斯)',
  'Hong Kong': 'Hong Kong (香港特别行政区)',
  Hungary: 'Hungary (匈牙利)',
  Iceland: 'Iceland (冰岛)',
  India: 'India (印度)',
  Indonesia: 'Indonesia (印度尼西亚)',
  Iran: 'Iran (伊朗)',
  Iraq: 'Iraq (伊拉克)',
  Ireland: 'Ireland (爱尔兰)',
  'Isle of Man': 'Isle of Man (马恩岛)',
  Israel: 'Israel (以色列)',
  Italy: 'Italy (意大利)',
  Jamaica: 'Jamaica (牙买加)',
  Japan: 'Japan (日本)',
  Jersey: 'Jersey (泽西岛)',
  Jordan: 'Jordan (约旦)',
  Kazakhstan: 'Kazakhstan (哈萨克斯坦)',
  Kenya: 'Kenya (肯尼亚)',
  Kiribati: 'Kiribati (基里巴斯)',
  Kuwait: 'Kuwait (科威特)',
  Kyrgyzstan: 'Kyrgyzstan (吉尔吉斯斯坦)',
  "Lao People's Democratic Republic": "Lao People's Democratic Republic (老挝)",
  Latvia: 'Latvia (拉脱维亚)',
  Lebanon: 'Lebanon (黎巴嫩)',
  Lesotho: 'Lesotho (莱索托)',
  Liberia: 'Liberia (利比里亚)',
  Libya: 'Libya (利比亚)',
  Liechtenstein: 'Liechtenstein (列支敦士登)',
  Lithuania: 'Lithuania (立陶宛)',
  Luxembourg: 'Luxembourg (卢森堡)',
  Macau: 'Macau (澳门特别行政区)',
  Macedonia: 'Macedonia (马其顿)',
  Madagascar: 'Madagascar (马达加斯加)',
  Malawi: 'Malawi (马拉维)',
  Malaysia: 'Malaysia (马来西亚)',
  Maldives: 'Maldives (马尔代夫)',
  Mali: 'Mali (马里)',
  Malta: 'Malta (马耳他)',
  'Marshall Islands': 'Marshall Islands (马绍尔群岛)',
  Martinique: 'Martinique (马提尼克)',
  Mauritania: 'Mauritania (毛里塔尼亚)',
  Mauritius: 'Mauritius (毛里求斯)',
  Mayotte: 'Mayotte (马约特)',
  Mexico: 'Mexico (墨西哥)',
  Micronesia: 'Micronesia (密克罗尼西亚)',
  Moldova: 'Moldova (摩尔多瓦)',
  Monaco: 'Monaco (摩纳哥)',
  Mongolia: 'Mongolia (蒙古)',
  Montenegro: 'Montenegro (黑山)',
  Montserrat: 'Montserrat (蒙特塞拉特)',
  Morocco: 'Morocco (摩洛哥)',
  Mozambique: 'Mozambique (莫桑比克)',
  Myanmar: 'Myanmar (缅甸)',
  'North America': 'North America (北美洲)',
  Namibia: 'Namibia (纳米比亚)',
  Nauru: 'Nauru (瑙鲁)',
  Nepal: 'Nepal (尼泊尔)',
  Netherlands: 'Netherlands (荷兰)',
  'New Caledonia': 'New Caledonia (新喀里多尼亚)',
  'New Zealand': 'New Zealand (新西兰)',
  Nicaragua: 'Nicaragua (尼加拉瓜)',
  Niger: 'Niger (尼日尔)',
  Nigeria: 'Nigeria (尼日利亚)',
  Niue: 'Niue (纽埃)',
  'Norfolk Island': 'Norfolk Island (诺福克岛)',
  'North Korea': 'North Korea (朝鲜)',
  'Northern Mariana Islands': 'Northern Mariana Islands (北马里亚纳群岛)',
  Norway: 'Norway (挪威)',
  Oceania: 'Oceania (大洋洲)',
  Oman: 'Oman (阿曼)',
  Pakistan: 'Pakistan (巴基斯坦)',
  Palau: 'Palau (帕劳)',
  'Palestinian Territory': 'Palestinian Territory (巴勒斯坦)',
  Panama: 'Panama (巴拿马)',
  'Papua New Guinea': 'Papua New Guinea (巴布亚新几内亚)',
  Paraguay: 'Paraguay (巴拉圭)',
  Peru: 'Peru (秘鲁)',
  Philippines: 'Philippines (菲律宾)',
  'Pitcairn Islands': 'Pitcairn Islands (皮特凯恩群岛)',
  Poland: 'Poland (波兰)',
  Portugal: 'Portugal (葡萄牙)',
  'Puerto Rico': 'Puerto Rico (波多黎各)',
  Qatar: 'Qatar (卡塔尔)',
  Reunion: 'Reunion (留尼汪)',
  Romania: 'Romania (罗马尼亚)',
  'Russian Federation': 'Russian Federation (俄罗斯)',
  Rwanda: 'Rwanda (卢旺达)',
  'Saint Barthelemy': 'Saint Barthelemy (圣巴泰勒米)',
  'Saint Helena': 'Saint Helena (圣赫勒拿)',
  'Saint Kitts and Nevis': 'Saint Kitts and Nevis (圣基茨和尼维斯)',
  'Saint Lucia': 'Saint Lucia (圣卢西亚)',
  'Saint Martin': 'Saint Martin (圣马丁)',
  'Saint Pierre and Miquelon': 'Saint Pierre and Miquelon (圣皮埃尔和密克隆)',
  'Saint Vincent and the Grenadines': 'Saint Vincent and the Grenadines (圣文森特和格林纳丁斯)',
  Samoa: 'Samoa (萨摩亚)',
  'San Marino': 'San Marino (圣马力诺)',
  'Sao Tome and Principe': 'Sao Tome and Principe (圣多美和普林西比)',
  'Saudi Arabia': 'Saudi Arabia (沙特阿拉伯)',
  Senegal: 'Senegal (塞内加尔)',
  Serbia: 'Serbia (塞尔维亚)',
  Seychelles: 'Seychelles (塞舌尔)',
  'Sierra Leone': 'Sierra Leone (塞拉利昂)',
  Singapore: 'Singapore (新加坡)',
  'Sint Maarten': 'Sint Maarten (荷属圣马丁)',
  Slovakia: 'Slovakia (斯洛伐克)',
  Slovenia: 'Slovenia (斯洛文尼亚)',
  'Solomon Islands': 'Solomon Islands (所罗门群岛)',
  Somalia: 'Somalia (索马里)',
  'South Africa': 'South Africa (南非)',
  'South America': 'South America (南美洲)',
  'South Georgia and the South Sandwich Islands': 'South Georgia and the South Sandwich Islands (南乔治亚岛和南桑威奇群岛)',
  'South Korea': 'South Korea (韩国)',
  'South Sudan': 'South Sudan (南苏丹)',
  Spain: 'Spain (西班牙)',
  'Sri Lanka': 'Sri Lanka (斯里兰卡)',
  Sudan: 'Sudan (苏丹)',
  Suriname: 'Suriname (苏里南)',
  'Svalbard and Jan Mayen': 'Svalbard and Jan Mayen (斯瓦尔巴和扬马延)',
  Swaziland: 'Swaziland (斯威士兰)',
  Sweden: 'Sweden (瑞典)',
  Switzerland: 'Switzerland (瑞士)',
  'Syrian Arab Republic': 'Syrian Arab Republic (叙利亚)',
  Taiwan: 'Taiwan (中国台湾)',
  Tajikistan: 'Tajikistan (塔吉克斯坦)',
  Tanzania: 'Tanzania (坦桑尼亚)',
  Thailand: 'Thailand (泰国)',
  'Timor-Leste': 'Timor-Leste (东帝汶)',
  Togo: 'Togo (多哥)',
  Tokelau: 'Tokelau (托克劳)',
  Tonga: 'Tonga (汤加)',
  'Trinidad and Tobago': 'Trinidad and Tobago (特立尼达和多巴哥)',
  Tunisia: 'Tunisia (突尼斯)',
  Turkey: 'Turkey (土耳其)',
  Turkmenistan: 'Turkmenistan (土库曼斯坦)',
  'Turks and Caicos Islands': 'Turks and Caicos Islands (特克斯和凯科斯群岛)',
  Tuvalu: 'Tuvalu (图瓦卢)',
  Uganda: 'Uganda (乌干达)',
  Ukraine: 'Ukraine (乌克兰)',
  'United Arab Emirates': 'United Arab Emirates (阿拉伯联合酋长国)',
  'United Kingdom': 'United Kingdom (英国)',
  'United States': 'United States (美国)',
  'United States Minor Outlying Islands': 'United States Minor Outlying Islands (美国本土外小岛屿)',
  Uruguay: 'Uruguay (乌拉圭)',
  Uzbekistan: 'Uzbekistan (乌兹别克斯坦)',
  Vanuatu: 'Vanuatu (瓦努阿图)',
  Venezuela: 'Venezuela (委内瑞拉)',
  Vietnam: 'Vietnam (越南)',
  'Virgin Islands British': 'Virgin Islands British (英属维尔京群岛)',
  'Virgin Islands U.S.': 'Virgin Islands U.S. (美属维尔京群岛)',
  'Wallis and Futuna': 'Wallis and Futuna (瓦利斯和富图纳)',
  'Western Sahara': 'Western Sahara (西撒哈拉)',
  Yemen: 'Yemen (也门)',
  Zambia: 'Zambia (赞比亚)',
  Zimbabwe: 'Zimbabwe (津巴布韦)'
};
;// ./src/services/ui-translation/data/hentaiathome.ts



helper_merge(/^\/hentaiathome\.php\??$/, undefined, _objectSpread2(_objectSpread2({
  'Hentai@Home Clients': 'Hentai@Home 客户端',
  'H@H Region': 'H@H 地区',
  'Current Network Load': '当前网络负载',
  'Hits/sec': '命中/秒',
  Coverage: '覆盖率',
  'Hits/GB': '命中/GB',
  Quality: '质量'
}, BROWSING_COUNTRY), {}, {
  'North and South America': '北美洲和南美洲',
  'Europe and Africa': '欧洲和非洲',
  'Asia and Oceania': '亚洲和大洋洲',
  'Chinese Dominion': '中国大陆',
  Global: '全球',
  '\n\tHits/GB shows the current average number of hits per minute per gigabyte of allocated disk space for all online clients in the region.': '命中/GB 表示当前此区域所有在线客户端分配的每 GB 磁盘空间每分钟的平均命中次数。',
  '\n\tA high number indicates that clients are more needed in the region than other regions. A low number indicates oversaturation.\n': '较高的数值表明该地区对客户端的需求量比其他地区更高。较低的数值表明该地区已经趋于饱和。',
  'Your Active Clients': '您的活动客户端',
  'To add more clients, ': '要添加更多客户端,请',
  'PM Tenboro': '联系 Tenboro',
  '. Make sure to read the requirements first to make sure that you qualify. Include the system specifications and location the client will run at in the message, and specify whether it is a home connection or a VPS/Dedicated. Each client requires its own unique public IPv4 address to run, and must either be reachable directly from the internet, or have a port forwarded. These are technical requirements, and it is not possible to make any exceptions.': '。请务必先阅读要求以确保您符合资格。在消息中包含客户端的配置和地理位置,并说明它是家庭连接还是 VPS/独立服务器。每个客户端都需要拥有唯一的公共 IPv4 地址才能运行,并且必须可以直接从 Internet 访问,或者使用端口转发。这些都是技术要求,不可能有任何例外。',
  'Due to excess capacity, we are not taking new applications for Europe at the moment, with an exception for donators.': '由于资源过剩,我们暂时不接受欧洲地区的新申请,但捐赠者除外。',
  'If you want to run a client ': '如果您想在',
  'outside of Europe': '欧洲以外的地区',
  ', ': '运行客户端,请',
  '. Include the system specs, speedtest and location in the message.': '。在消息中包含系统配置、SpeedTest 结果和地理位置。',
  'The client will be locked to the provided location. Do not send PMs asking to run clients in Europe.': '客户端将被锁定在指定的地理位置。请勿发送私信要求在欧洲运行客户端。',
  Client: '客户端',
  Status: '状态',
  Created: '创建于',
  'Last Seen': '最后在线于',
  'Files Served': '提供的文件',
  'Client IP': '客户端 IP',
  Port: '端口',
  Version: '版本',
  'Max Speed': '最大速度',
  Trust: '信任',
  Hitrate: '命中率',
  Hathrate: 'Hath 产出率',
  Region: '地区',
  Online: '在线',
  Offline: '离线',
  'Not available when offline': '离线状态下不可用',
  'Apply for H@H participation': '参与申请 H@H',
  'For information on how to participate in the Hentai@Home Project, refer to the ': '有关如何参与 Hentai@Home 项目的信息,请参阅 ',
  'Hentai@Home Project FAQ': 'Hentai@Home 项目常见问题解答 (英文)',
  '. Read and understand the requirements BEFORE you submit an application. Your system and network speed must meet some minimum requirements to run H@H, and the client cannot be regularly shut down.': '。在提交申请之前,请确保您已阅读并理解要求。您的系统和网络速度必须满足一些最低要求才能运行 H@H,并且客户端不能经常关闭。',
  'If you have a headless server that cannot use the normal speedtest, use ': '如果您有一台无法使用寻常 SpeedTest 的无头服务器,请使用 ',
  ' instead.': ' 代替。',
  'Max Outgoing Speed': '最大出站速率',
  'The maximum outgoing speed you want to use for this client.': '此客户端允许的最大出站 (上传) 速度。',
  'This should be less than or equal to your connection speed.': '此速度应当小于等于您的连接速度。',
  'Disk Cache Size': '磁盘缓存大小',
  'The maximum allowed disk space for the image cache.': '允许缓存占用的最大磁盘空间。',
  'The allocated space must be reserved for H@H.': '分配的空间必须为 H@H 保留。',
  'Speed Test': '速度测试结果',
  'Go to ': '前往 ',
  ' and run a test against your closest server.': ' 并使用距离最近的服务器进行测试。',
  'After the test completes, paste the result URL here.': '测试完成后,将结果 URL 粘贴在此处。',
  'The resulting speedtest MUST show at least 80 Mbps upload ': '要求:至少 80 Mbps 上传速度 ',
  AND: '和',
  ' 80 Mbps download! Old tests will be rejected.': ' 80 Mbps 下载速度,使用旧的测试结果会被拒绝。',
  'The client MUST normally be running at all times. Clients with frequent/extensive downtime will be revoked.': '正常情况下客户端必须一直运行,经常/长时间离线的客户端会被吊销。',
  'BOTH measurements in my test above are at least 80 Mbps': '我的测速两个值均大于 80 Mbps',
  'This client will be hosted on a system that is usually running 24/7': '此客户端将托管在一台正常情况下 24 小时运行的系统上',
  'Submit Application': '提交申请',
  'Your application is pending. You can still make changes below if necessary.': '您的申请正在等待处理。如有必要,您仍可以在下方修改申请。',
  'If the auto-detected region is wrong, ': '如果自动检测的地区错误,请',
  ' to have an override applied. Include the correct country, client ID and IP address in your message, and ': '以进行更改。在消息中包含正确的国家/地区、客户端 ID 和 IP 地址,并',
  'make sure to keep your client running': '确保您的客户端保持运行',
  '. Having a client placed in the wrong region will cause a variety of issues, and makes it perform worse than it would otherwise do.': '。将客户端设置为错误的地区会导致各种问题,并使其性能表现不如预期。',
  'Free Archive Quota: ': '免费的存档配额:',
  ', measured in a 168-hour sliding window. Clients must be ': ',按照最近 168 小时的在线时间进行计算。客户端必须保持',
  healthy: '健康',
  ' and must have been running for more than 24 hours straight to qualify.': '并运行超过 24 小时才能获得资格。',
  'Client Download': '客户端下载',
  File: '文件',
  Size: '大小',
  'Source Code': '源代码',
  'You can find the current release notes ': '您可以在 ',
  here: '此处',
  '. You should verify that the size and cryptographic hash correspond to the files you download. Hentai@Home is an Open Source project released under the GNU General Public Licence v3. The source code and build scripts for Windows and Linux-like systems can be found above.': ' 找到当前版本的发行说明 (英文)。请验证您下载的文件的大小和哈希值与上方给出的数值相对应。Hentai@Home 是在 GNU 通用公共许可证 v3 下发布的开源项目。Windows 和类 Linux 系统的源代码和构建脚本可以在上面找到。',
  'Unfortunately, we cannot accept clients with less than 80 Mbit/s outgoing speed.': '抱歉,我们无法接受出站速率低于 80 Mbps 的客户端。',
  'Unfortunately, we cannot accept clients that are frequently offline.': '抱歉,我们无法接受经常离线的客户端。'
}), [[/^([\d.]+) \/ min$/, '$1 / 分钟'], [/^([\d.]+) \/ day$/, '$1 / 天'], [/^([\d.]+) ([KMGTP]B)\/hour$/, '$1 $2/小时'], [/^([\d.]+) ([KMGTP]B) per week$/, '每周 $1 $2'], [/^Must be at least ([\d.]+) ([KMGTP]B)\/s, which must be reserved for H@H.$/, '不小于 $1 $2/s,必须为 H@H 保留。'], [/^ Must be at least ([\d.]+) ([KMGTP]iB) but more is always better.$/, '至少为 $1 $2,但越多越好。'], [/^Max Burst Speed must be at least ([\d.]+) ([KMGTP]B)\/s.$/, '最大出站速率必须至少为 $1 $2/s。'], [/^Disk Space must be at least ([\d.]+) ([KMGTP]B).$/, '磁盘空间必须至少为 $1 $2。']]);
helper_merge(/^\/hentaiathome\.php\?.*act=settings/, undefined, {
  'You cannot reset the ranges of a client that has been online in the last 24 hours. DO NOT RESET RANGES UNLESS YOU LOST YOUR CACHE.': '您无法重置过去 24 小时内在线的客户端的静态范围。除非您丢失了缓存,否则请不要重置范围。',
  'Client ID:': '客户端 ID:',
  'Client Key:': '客户端 Key:',
  'Current Value: ': '现值:',
  'New Value: ': '新值:',
  'Port for Incoming Connections': '监听端口',
  'Can be 443 (recommended) or most numbers between 1024 and 65534. This port must be opened in your firewall. For home networks, it must also be forwarded on any NAT-based router(s) you connect to the internet through.': '可以使用 443(推荐)或 1024~65534 之间的大部分端口。此端口必须在您的防火墙中打开。如果是家庭网络,还必须在您连接到 Internet 的任何基于 NAT 的路由器上进行端口转发。',
  'Note: The port cannot be changed while the client is running.': '注意:客户端运行期间无法更改端口。',
  'Client Name': '客户端名称',
  'You can set a custom name for this client here. This will be used in the various listings this client appears in.': '您可以在这里为此客户端设置自定义名称。它会用于此客户端出现的各种列表中。',
  'Maximum Upload Rate': '最大上传速率',
  'Turning on the client-side speed limit makes the client enforce this as the maximum speed, which reduces the burstiness of the load. This will increase CPU usage and can reduce the performance of the client. You should only enable this if H@H noticeably affects your home network performance.': '打开客户端侧速度限制会使客户端以设置的最大速度运行,从而减少负载的突发性。但这会增加 CPU 使用率,降低客户端的性能。仅当 H@H 明显影响您的家庭网络性能时才应启用此功能。',
  'No high-capacity ranges are assigned if set below 10 MB/s.': '如果设置低于 10 MB/s,将不会分配大容量范围。',
  ' KBytes/s': ' KB/s',
  ' Enable Client-Side Speed Limit (recommended only for home networks)': ' 启用客户端侧的速度限制 (仅建议家庭网络开启)',
  ' Confirm removing all assigned high-capacity ranges from this client if set below 10 MB/s': ' 如果低于10 MB/s,确认删除客户端中所有大容量范围',
  'Note: 1 KB/s or KBps (Kilo': '注意:1 KB/s 或 KBps (千',
  bytes: '字节',
  ' per Second) is equivalent to 8 Kb/s or Kbps (Kilo': '每秒) 相当于 8 Kb/s 或 Kbps (千',
  bits: '比特',
  ' per Second). Internet speeds are typically advertised as the latter (Mbps or Mbit/s), and this is also what Speedtest uses, so make sure you use the right one. Do not set this higher than the upload bandwidth of your internet connection.': '每秒)。Internet 速度通常被宣传为后者 (Mbps 或 Mbit/s),Speedtest 也使用这种表示方式,因此请确保使用正确的速度。您不应将此设置为高于 Internet 连接的上行带宽。',
  'To reduce the upload rate for this client below this level, you must first shut it down, then check the "Remove static ranges if necessary" option.': '降低该客户端的上传速率需要先关闭客户端,然后勾选“必要时移除静态范围”选项。',
  'Maximum Disk Cache Size': '最大磁盘缓存大小',
  'How much disk space to reserve for this client. Must be at least 10 GiB, but the more you assign the better your client will perform. The reserved space must always be available.': '希望为此客户端保留多少磁盘空间。最少 10 GiB,但是保留的越多,客户端表现的越好。保留空间必须始终可用。',
  ' is ': ' 已',
  committed: '占用',
  'This is the minimum disk space that has currently been claimed for the H@H cache. Reducing the maximum disk cache size below this value will require removing some static ranges, which will decrease the traffic to your client.': '这是 H@H 缓存当前占用的最小磁盘空间。如果将最大磁盘缓存大小减少到此值以下,则需要移除一些静态范围,这会导致客户端流量减少。',
  ' Verify cache integrity on next startup': ' 下次启动时验证缓存完整性',
  'To reduce the disk space for this client below this level, you must first shut it down, then check the "Remove static ranges if necessary" option.': '降低该客户端所需的磁盘空间需要先关闭客户端,然后勾选“必要时移除静态范围”选项。',
  'Advanced Settings': '高级设置',
  'The settings below are optional advanced settings.': '以下设置项为可选的高级设置',
  'Monthly Data Transfer Target': '每月数据流量限制',
  Unlimited: '无限',
  ' GB per month': ' GB/月',
  'If set, Static Range allocation will be limited to 1 per 5 GB. No high-capacity ranges are assigned if set below 5 TB/month.': '若已设置,静态范围分配限制为每 5 GB 分配 1 个。若设置低于 5 TB/月,将不会分配大容量范围。',
  'To reduce the monthly data transfer target for this client below this level, you must first shut it down, then check the "Remove static ranges if necessary" option.': '降低该客户端的每月数据流量限制需要先关闭客户端,然后勾选“必要时移除静态范围”选项。',
  'You need to check the confirmation box to confirm removing these ranges to set this.': '你需要勾选确认框,确认移除这些范围才能进行设置。',
  ' Confirm removing all assigned high-capacity ranges from this client if set below 5 TB/month': ' 如果低于5 TB/月,确认删除客户端中所有大容量范围',
  'Minimum Free Disk Space': '磁盘最小剩余空间',
  'Use Default': '默认',
  'If this value is set, the client will stop running if the free space on the disk decreases below this value. The client will exit if free space drops below 1 GiB if this is not set.': '如果设置了此值,当磁盘可用空间低于该值时,客户端将停止运行。若未设置此值,当可用空间低于 1 GiB 时,客户端也会退出。',
  'Reset Client Key': '重置客户端 Key',
  'If you believe your client key has been compromised, you can reset the key by checking this box. You will have to re-enter the key the next time the client starts.': '如果您认为您的客户端 Key 已泄露,可以通过选中复选框来重置密钥。下次客户端启动时,您必须重新输入密钥。',
  ' Reset Client Key': ' 重置客户端 Key',
  'Reset Static Ranges': '重置静态范围',
  'Your client will be assigned ranges of files to cache and serve. This toggle clears these ranges. ': '您的客户端会被分配到一段文件范围用于缓存和提供服务。此复选框用于重置这些范围。',
  'DO NOT DO THIS UNLESS YOU LOST YOUR CACHE. IT WILL NOT FIX OTHER CLIENT ISSUES. DOING THIS REGULARLY WILL CAUSE YOUR CLIENT TO BECOME REVOKED.': '除非缓存丢失,否则请勿执行此操作。它无法修复客户端的其他任何问题。定期执行此操作将导致您的客户端被吊销。',
  'No ranges are assigned yet. The client must run for at least 24 hours continuously before any ranges are assigned.': '尚未分配任何范围。客户端必须连续运行至少 24 小时,才会分配范围。',
  'The following priority ranges are currently assigned: P1 = ': '当前分配的范围:P1 = ',
  ' Reset Static Ranges': ' 重置静态范围',
  'Warning: You should ': '警告:',
  never: '不要',
  ' reset your static ranges ': '重置您的静态范围,',
  unless: '除非',
  ' the cache has been deleted or is otherwise lost. But it should ': '缓存已被删除或以其他方式丢失。然而如果缓存因任何原因被清除,则',
  always: '必须',
  ' be reset if the cache has been cleared for whatever reason, or the client will encounter serious trust issues.': '重置静态范围,否则客户端将遇到严重的信任问题。',
  'Miscellaneous Toggles': '杂项开关',
  'Various toggles to optimize client behavior.': '用于优化客户端行为的各种开关。',
  ' Disable logging to disk. This will reduce disk activity by a small amount. Errors are still logged.': ' 停止向磁盘写入日志。启用后能轻微减少磁盘活动。错误仍会被记录。',
  ' Run in low-memory mode. This will somewhat reduce memory requirements, but will lead to increased disk activity.': ' 以低内存模式运行。启用后能在一定程度上减少内存占用,但会导致磁盘活动增加。',
  ' Use this client as your designated H@H Downloader. Only necessary if you have multiple clients.': ' 将此客户端用作指定的 H@H 下载器。仅当您有多个客户端时才需要。',
  'Changes will be applied within roughly two minutes. If you decrease the disk cache space, it will not take effect until next restart.': '更改将在大约两分钟内生效。如果减少了磁盘缓存空间,则需要重新启动才会生效。',
  ' Allow removing static ranges if necessary (client must be shut down)': '必要时允许移除静态范围 (需要重启客户端)',
  'Apply Settings': '应用设置',
  'Back to Overview': '返回总览'
}, [[/^This is the maximum speed the client can use to serve files, measured in kilobytes per second. Must be at least ([\d.]+) ([KMGTP]B)\/s. Actual utilization will be at most 80% of this over time.$/, '这是客户端可以用来提供文件的最大速度,以每秒千字节为单位。必须至少为 $1 $2/s。随着时间的推移,利用率最多会达到此值的 80%。'], [/^Static Range allocation is limited to 1 per ([\d.]+) MiB\.$/, '静态范围分配限制为每 $1 MiB 磁盘空间 1 组。'], [/^This client currently has ([\d.]+) static ranges assigned. Each requires at least ([\d.]+) MiB of disk space, so you cannot reduce it below ([\d.]+) GiB without removing ranges.$/, '此客户端已分配 $1 组静态范围。每组需要至少 $2 MiB 磁盘空间,所以您无法减少至低于 $3 GiB,除非移除静态范围。'], [/^This client currently has ([\d.]+) static ranges assigned. Each requires at least ([\d.]+) KB\/s of upload rate, so you cannot reduce it below ([\d.]+) KB\/s without removing ranges.$/, '此客户端已分配 $1 组静态范围。每组需要至少 $2 KB/s 上传速率,所以您无法减少至低于 $3 KB/s,除非移除静态范围。'], [/^This client currently has ([\d.]+) static ranges assigned. Each requires at least ([\d.]+) GB of monthly data transfer, so you cannot reduce it below ([\d.]+) GB without removing ranges.$/, '此客户端已分配 $1 组静态范围。每组需要至少 $2 GB 的每月数据流量,所以您无法减少至低于 $3 GB,除非移除静态范围。'], [/^This client currently has ([\d.]+) high-capacity ranges assigned. Clients with high-capacity ranges cannot have a data transfer limit set below ([\d.]+) TB\/month.$/, '此客户端已分配 $1 组大容量范围。已具有大容量范围的客户端,其每月数据流量限制不能设置为低于 $2 TB/月。'], [/^If you have a monthly data cap, you can provide it here. If the system detects that you are likely to exceed this target, it will reduce the priority of ranges on your client to reduce the load, but it is not guaranteed to stay below this value. Leave at 0 to limit with max speed alone. Must be at least ([\d.]+) GB if set.$/, '如果你有每月数据限额,请在此设置。如果系统检测到你可能超过此限额,它将会降低客户端上的静态范围的优先度,以降低网络负载,但并不能保证低于设定值。保留为 0 表示仅限制最大速度。最低限制为 $1 GB。'], [/^([\d.]+) GB per month$/, '$1 GB/月'], [/^([\d.]+) ([KMGTP]B)\/hour$/, '$1 $2/小时'], [/^([\d.]+) ([KMGTP]B)\/s$/, '$1 $2/s'], [/^Cannot set a larger Max Upload Rate than ([\d.]+) ([KMGTP]B)\/s \(([\d.]+) ([KMGTP]bit)\/s\).$/, '最大上传速率不能设置为超过 $1 $2B/s ($3 $4/s)。'], [/^Monthly Data Transfer Target must be at least ([\d.]+) ([KMGTP]B) if set\.$/, '如果设置,月数据传输目标必须至少为 $1 $2。'], [/^Disk Cache Size must be at least ([\d.]+) ([KMGTP]i?B)\.$/, '磁盘缓存大小必须至少为 $1 $2。']]);
;// ./src/services/ui-translation/data/home.ts

helper_merge(/^\/home\.php/, undefined, {
  'Image Limits': '图像配额',
  'Due to widespread usage of bulk downloaders, high-resolution images can be limited.': '由于批量下载器的滥用,高分辨率图像可能会受到限制。',
  'You are currently at ': '当前:',
  ' towards your account limit of ': ',账户限制为 ',
  '.': '。',
  'You can reset your image quota by spending ': '重置配额花费:',
  ' GP.': ' GP。',
  'Reset Quota': '重置配额',
  'You are currently using IP-based limits. No restrictions are currently in effect.': '您当前使用的是基于 IP 的限制,目前没有任何限制生效。',
  'Due to a high request rate, your IP is currently restricted to lower-resolution images.': '由于请求频率过高,您的 IP 目前只能查看低分辨率图像。',
  'You can get a Bronze Star or the More Pages hathperk to tie image limits to your account.': '您可以通过捐赠铜星或解锁 Hath Perk:「更多页面」将图像配额绑定到您的账户。',
  'Alternatively, you can unlock a high-resolution quota for 24 hours by spending ': '或者,您可以花费 GP 来解锁 24 小时的高分辨率配额:',
  'Note that for the latter, clearing your cookies will revert you to IP-based limits.': '请注意:对于后者,清除 Cookie 将使您恢复到基于 IP 的限制。',
  'Unlock Quota': '解锁配额',
  EHTracker: 'EH 种子服务器',
  ' uploaded': '上传量',
  downloaded: '下载量',
  'up/down ratio': '分享率',
  'torrent completes': '完成种子',
  'gallery completes': '完成图库',
  seedmins: '做种时长',
  'Show My Torrents': '显示我的种子',
  'If you misplace any of your personalized torrents, hit the button below to reset your key.': '如果您错误地分发了私有种子,请点击下面的按钮重置您的 Key。',
  'This will immediately invalidate all of your personalized torrents in play.': '这会立即注销您全部的私有种子。',
  'Your current key is: ': '您当前的 Key 是:',
  'Reset Torrent Key': '重置种子 Key',
  'Total GP Gained': '获得的总 GP',
  'GP from gallery visits': 'GP 来自图库浏览',
  'GP from torrent completions': 'GP 来自种子完成',
  'GP from archive downloads': 'GP 来自存档下载',
  'GP from Hentai@Home': 'GP 来自 Hentai@Home',
  '\n\t\t\tYou are currently not featured on any toplists...\n\t\t': '您当前没有上榜...',
  'You are currently: ': '您现在是:',
  'on the ': ' (在',
  ' toplist': '榜)',
  'Moderation Power': '愿力',
  'Current Moderation Power': '当前愿力',
  Base: '基础',
  Awards: '奖励',
  Tagging: '打标签',
  Level: '等级',
  'Forum Activity': '论坛活跃',
  'Uploads/H@H': '上传 / H@H',
  'Account Age': '账户资历',
  '(capped to 25)': '(不超过 25)'
});
;// ./src/services/ui-translation/data/image.ts

helper_merge(/^\/(s|mpv)\//, undefined, {
  'Show all galleries with this file': '显示所有包含此图像的图库',
  'Get forum image link': '生成用于论坛的图像链接',
  'Click here if the image fails loading': '重新加载图像',
  'Close Image Viewer': '关闭图像查看器',
  'Go Fullscreen - F11 or ESC to cancel': '全屏 - F11 或 ESC 退出',
  'Align Left, Scale Down Only': '左对齐,仅当图像大于浏览器宽度时缩放',
  'Align Center, Scale Down Only': '居中对齐,仅当图像大于浏览器宽度时缩放',
  'Align Center, Scale To Fit': '居中对齐,始终缩放图像以适应浏览器宽度',
  'Show Thumbnail Pane': '显示缩略图侧栏',
  'Hide Thumbnail Pane': '隐藏缩略图侧栏',
  'Reload broken image': '重新加载图像',
  'Open image in normal viewer': '在普通查看器中打开图像',
  'Show galleries with this image': '显示所有包含此图像的图库',
  'Get forum link to image': '生成用于论坛的图像链接'
}, [[/^Page (\d+) - /, '第 $1 页 - '], [/^Download original (.*?) source$/, '下载原图 ($1)'], [/^Download original (.*?)B$/, '下载原图 $1B']]);
;// ./src/services/ui-translation/data/karma.ts

helper_merge(/^\/karma\.php/, undefined, {
  '\n\tYou are about to imbue ': '您将要赋予 ',
  ' with ': ' ',
  ' karma.': ' karma。',
  '\n\tIf you wish, you can leave a short message below.\n': '\n\t如果您愿意,可以在下方简短留言。\n',
  Imbue: '赋予',
  '\nYou cannot imbue yourself with Karma!\n': '您不能赋予自己 Karma!',
  'Please wait longer between karma imbue attempts.': '请在赋予 Karma 之间等待更长时间。',
  'You have imbued ': '你向 ',
  'Your Karma Influence Power has been drained, and is now ': '您的 Karma 影响力已消耗,现在为 ',
  '\nYou have imbued this member with karma too recently.': '您最近赋予过此用户 Karma。',
  'Time remaining before you can imbue this member again:': '距离下次可赋予此用户的时间为:'
}, [[/^ with ([\d.]+) points? of karma.$/, '赋予了 $1 点 Karma。'], [/^([\d.]+) days and ([\d.]+) hours$/, '$1 天 $2 小时'], [/^([\d.]+) hours and ([\d.]+) minutes$/, '$1 小时 $2 分钟'], [/^([\d.]+) days$/, '$1 天'], [/^([\d.]+) hours$/, '$1 小时'], [/^([\d.]+) minutes$/, '$1 分钟']]);
;// ./src/services/ui-translation/data/lofi.ts

helper_merge(/^\/lofi\//, undefined, {
  '< Prev Page': '< 上一页',
  'Next Page >': '下一页 >',
  'E-Hentai Lo-Fi Galleries: The Mobile Hentai Experience': 'E-Hentai 低保真图库:移动 Hentai 体验',
  'Posted:': '发布:',
  'Category:': '类别:',
  'Tags:': '标签:',
  'Rating:': '评分:',
  'Go To First Page': '前往第一页',
  '\n\tImage Resolution: \xA0 ': '图像分辨率:',
  'Back to Gallery Page': '返回图库页',
  'Back to Front Page': '返回首页'
}, [[/^(\d\d\d\d-\d\d-\d\d \d\d:\d\d) by (.*)$/, '$1 \xA0 上传者:$2']]);
;// ./src/services/ui-translation/data/login.ts

helper_merge(/^\/bounce_login\.php/, undefined, {
  'This page requires you to log on.': '此页面需要登录才能访问',
  'Login!': '登录',
  '\xA0or\xA0': ' 或 ',
  Register: '注册'
});
;// ./src/services/ui-translation/data/logs.ts

helper_merge(/^\/logs\.php/, undefined, {
  Date: '日期',
  Amount: '金额',
  Information: '信息',
  'Total Karma: ': '总 Karma:',
  From: '来自',
  Topic: '主题',
  Comment: '附言',
  'Show Older >': '下一页 >'
});
;// ./src/services/ui-translation/data/mytags.ts

helper_merge(/^\/mytags/, undefined, {
  'New Tagset': '新建标签集',
  ' Enable': ' 启用',
  '#default': '#默认',
  'Enter a single tag to flag, watch or hide': '输入要标记、关注或隐藏的标签',
  ' Watched': ' 关注',
  ' Hidden': ' 隐藏',
  'Action:': '操作:',
  'Delete Selected': '删除选中项',
  'Change Tagset:': '改变标签集:',
  'Confirm Delete': '确认删除',
  'Confirm Move': '确认移动',
  'Select All': '全选',
  'Enable flagging and watching for tags in this set': '启用此标签集中标签的标记和关注',
  'Watch galleries with this tag': '关注带有此标签的图库',
  'Hide galleries with this tag': '隐藏带有此标签的图库',
  'Default tag color for this tagset. Tags in this set that do not have a set flag color will use this color. A default color will be used if neither is set.': '此标签集的默认标签颜色。如果此标签集中的标签没有设置颜色,则使用此颜色。如果两者都没有设置,则使用默认颜色。',
  '(optional) The weight of this tag. This is used to order flagged tags if several are present, as well as calculating the contribution of this tag towards the soft tag filter and watching threshold.': '(可选) 此标签的权重。如果存在多个标签,则用于对标记的标签进行排序,同时也用于计算此标签对于软标签过滤器和订阅的权重。'
});
;// ./src/services/ui-translation/data/news.ts

helper_merge(/^\/news\.php/, undefined, {
  'Site Status': '网站状态',
  'Lately we have been seeing a surge of old accounts with weak/compromised passwords being taken over by spammers, causing them to get banned.': '最近我们看到了大量旧账户被垃圾邮件发送者接管,这些账户的密码较弱或已被泄露,导致它们被封禁。',
  'If you still use a weak password or a password you ever used anywhere else, you need to change it as soon as possible.': '如果你仍在使用较弱的密码或曾在其他地方使用过的密码,你需要尽快更改它。',
  'We will ': '如果你忽略了这个警告并且发生了这种情况,我们将',
  not: '不',
  ' manually restore access to your account if you ignore this warning and it happens to you.': '会手动恢复你的账户访问权限。',
  'Scheduled Downtime & Maintenance': '计划停机和维护',
  'No maintenance is currently ongoing or scheduled.': '目前没有正在进行或计划中的维护。',
  'Automated Monitoring Status': '自动监控状态',
  'No server issues have been detected by the monitoring system.': '监控系统未检测到服务器问题。',
  'Site Changelog': '网站更新日志',
  'Changelogs: \xA0 ': '更新日志:',
  'Show Older News': '显示更早的新闻'
}, [[/^Last Monitoring Update: (\d\d\d\d-\d\d-\d\d \d\d:\d\d) UTC$/, '最后监控更新:$1 UTC'], [/^Show (\d+) comment(s)?$/, '显示 $1 条评论'], [/^Posted (.+?) UTC$/, '发布于 $1 UTC']]);
;// ./src/services/ui-translation/data/popular.ts

helper_merge(/^\/popular/, undefined, {
  'Currently Popular Recent Galleries': '当下流行的新图库'
});
;// ./src/services/ui-translation/data/search.ts

helper_merge(/^\/\?.*f_shash=.*$/, undefined, {
  'Showing galleries with file: ': '正在显示包含此文件的图库:',
  'Similarity Scan was disabled for this search. You must start a new search to alter this.': '在本次搜索中,相似性查询已禁用。要更改相似性查询设置,您必须重新搜索。',
  'Similarity Scan was enabled for this search. You must start a new search to alter this.': '在本次搜索中,相似性查询已启用。要更改相似性查询设置,您必须重新搜索。',
  'No file was uploaded, or the uploaded file was invalid.': '没有上传文件,或上传的文件无效',
  'The uploaded file was detected as monotone. Only exact file matches are displayed.': '上传的文件被检测为单色图,仅显示完全匹配的文件'
}, []);
;// ./src/services/ui-translation/data/stats.ts

helper_merge(/^\/stats\.php/, undefined, {
  'Visitor Statistics': '访客统计',
  'Your galleries have had a total of ': '你的图库共计有 ',
  'This gallery has had a total of ': '此图库共计有 ',
  ' visit.': ' 名访客。',
  ' visits.': ' 名访客。',
  Ranking: '名次',
  Score: '分数',
  ' All-Time': '所有时间',
  ' Past Year': '年排行',
  ' Past Month': '月排行',
  ' Yesterday': '日排行',
  'Not in Top 1000': '1000 名以外',
  'Yearly Stats': '年度统计',
  Visits: '访问',
  Hits: '点击',
  'Last 12 Months': '最近 12 个月',
  Jan: '1 月',
  Feb: '2 月',
  Mar: '3 月',
  Apr: '4 月',
  May: '5 月',
  Jun: '6 月',
  Jul: '7 月',
  Aug: '8 月',
  Sep: '9 月',
  Oct: '10 月',
  Nov: '11 月',
  Dec: '12 月',
  'Daily Stats': '每日统计',
  '1st': '1 日',
  '2nd': '2 日',
  '3rd': '3 日',
  '4th': '4 日',
  '5th': '5 日',
  '6th': '6 日',
  '7th': '7 日',
  '8th': '8 日',
  '9th': '9 日',
  '10th': '10 日',
  '11th': '11 日',
  '12th': '12 日',
  '13th': '13 日',
  '14th': '14 日',
  '15th': '15 日',
  '16th': '16 日',
  '17th': '17 日',
  '18th': '18 日',
  '19th': '19 日',
  '20th': '20 日',
  '21st': '21 日',
  '22nd': '22 日',
  '23rd': '23 日',
  '24th': '24 日',
  '25th': '25 日',
  '26th': '26 日',
  '27th': '27 日',
  '28th': '28 日',
  '29th': '29 日',
  '30th': '30 日',
  '31st': '31 日',
  'The number of total visits on your galleries.': '图库总访问次数',
  'The number of total image accesses on your galleries.': '图库中图像访问次数',
  'Back to Gallery': '返回图库'
});
;// ./src/services/ui-translation/data/tagjustification.ts

helper_merge(/^\/tagjustification\.php/, undefined, {
  '\nYou have no tags pending approval.\n\n': '您没有待审核的标签。',
  'New Tag Justification': '新建标签申请',
  'Make sure to provide a source for each requested tag whenever possible. ': '请尽可能地为每个申请的标签提供来源。',
  'Read this article on how to provide a good source.': '请阅读本文以了解如何提供良好的来源。',
  'If a source cannot be found, elaborate why you still think the tag should be added in the sources field.': '如果找不到来源,请在来源一栏中说明您认为应该添加此标签的理由。',
  'If you leave this page without providing the requested information, these tags will be deleted.': '如果您没有提供所需的信息就离开了页面,则添加的标签会被删除。',
  'You have provided justification for all of the added tags. You can now ': '您已经为所有添加的标签提供了理由。现在您可以 ',
  'return to the gallery': '返回图库',
  ' or close this page.': ' 或关闭此页面。',
  'My Pending Tag Requests': '我的待审核标签申请',
  'Gallery:': '图库:',
  'Tag Name:': '标签:',
  'Namespace:': '命名空间:',
  'Sources:': '来源:',
  'Describe the nature of this tag, and provide link(s) to parody/character reference, official artist/group/cosplayer profile, or anything else you may think is useful to help validate this tag.': '请描述此标签的性质,并提供原作/角色的参考来源、官方艺术家/社团/Coser 的主页地址,或其他任何您认为有助于验证此标签的链接。',
  'Comment:': '评论:',
  'Let us know what you changed with this update, or explain why you did not change anything.': '请告知您在此次更新中做了哪些修改,或者为什么没有做任何修改。',
  'Save Changes': '保存更改',
  'Tag Name': '标签',
  Namespace: '命名空间',
  Sources: '来源',
  'Last Updated': '最后更新',
  MISSING: '缺失',
  OK: '已提供'
}, [[/^You still need to provide sources for (\d+) tag. If you created it by mistake, write "created by mistake" in the sources field.$/, '您还需要为 $1 个标签提供来源。如果您是误添加的标签,请在来源一栏中填写 "created by mistake"。']]);
;// ./src/services/ui-translation/data/tools.ts

helper_merge(/^\/tools\/track_expunge/, 'repo.e-hentai.org', {
  'Expunge Tracker': '删除追踪器',
  'State: \xA0 [': '状态: [',
  All: '全部',
  Expunged: '已删除',
  'Revoked/Rejected': '已撤销/已拒绝',
  'Pending All': '待处理',
  'Pending Expunge': '待删除',
  'Pending Appeal': '待申诉',
  'Type: \xA0 ': '类型: ',
  ' Forbidden': ' 违规内容',
  ' Duplicate': ' 重复',
  ' Replaced': ' 已替换',
  ' Defaced': ' 污损',
  ' \xA0 Involving UID: ': ' \xA0 包含 UID:',
  Go: '查询',
  '< Prev Page': '< 上一页',
  'Next Page >': '下一页 >',
  'There are no recent expunges matching this filter.': '没有符合条件的最近删除记录。',
  Active: '已生效',
  Rejected: '已拒绝',
  Revoked: '已撤销',
  'Pending Expunge (Activating)': '待删除 (生效中)',
  'Pending Expunge (Rejecting)': '待删除 (拒绝中)',
  'Pending Appeal (Activating)': '待申诉 (生效中)',
  'Pending Appeal (Rejecting)': '待申诉 (拒绝中)',
  'Expunge Submitted:': '删除提交时间:',
  'Appeal Submitted:': '申诉提交时间:',
  'Expunge Type:': '删除类型:',
  'Conflict Gallery:': '冲突图库:',
  'Expunge Activated:': '删除生效时间:',
  'Expunge Rejected:': '删除拒绝时间:',
  'Expunge Revoked:': '删除撤销时间:'
}, [[/^Forbidden \(([\d+-]+)\)$/, '违规内容 ($1)'], [/^Duplicate \(([\d+-]+)\)$/, '重复 ($1)'], [/^Replaced \(([\d+-]+)\)$/, '已替换 ($1)'], [/^Defaced \(([\d+-]+)\)$/, '污损 ($1)']]);
helper_merge(/^\/tools\/track_rename/, 'repo.e-hentai.org', {
  'Rename Tracker': '重命名追踪器',
  '\nFilter: \xA0\n[': '状态: [',
  All: '全部',
  Renamed: '已重命名',
  Pending: '待处理',
  '] \xA0\nInvolving UID:\n': '] \xA0 包含 UID:',
  Go: '查询',
  '< Prev Page': '< 上一页',
  'Next Page >': '下一页 >',
  'No results found': '没有符合条件的记录。',
  'OrgE:': '原始英文标题:',
  'CurE:': '当前英文标题:',
  'OrgJ:': '原始日文标题:',
  'CurJ:': '当前日文标题:',
  '(blank)': '(空)',
  ' for ': ' 支持 ',
  'by ': '由 '
}, []);
helper_merge(/^\/tools\/tagtrack/, 'repo.e-hentai.org', {
  'Tag Tracker': '标签追踪器',
  ' downed': ' 已清除',
  ' weak': ' 弱小',
  ' active': ' 活跃',
  ' solid': ' 确定',
  ' aged galleries': ' 老旧图库',
  'Only show galleries posted more than three days ago': '只显示三天前发布的图库',
  ' revived tags': ' 重生标签',
  'Only show revived tags': '只显示重生 (之前被清除但是再次出现) 的标签',
  ' exclude expunged': ' 排除已删除图库',
  'Exclude tags on expunged galleries': '排除已删除图库上的标签',
  ' exclude autotags': ' 排除自动标签',
  'Exclude tags placed by autotagger': '排除由系统自动标记的标签',
  'Tag/NS: ': '标签/命名空间:',
  'tag, tagid, or special:namespace': '标签、标签 ID 或 special:命名空间',
  Go: '查询',
  'Show Older >': '显示更早的 >',
  'There are no tags matching this filter.': '没有符合条件的标签。',
  '(Doujinshi) \xA0': '(同人志) \xA0',
  '(Manga) \xA0': '(漫画) \xA0',
  '(Artist CG) \xA0': '(画师CG) \xA0',
  '(Game CG) \xA0': '(游戏CG) \xA0',
  '(Western) \xA0': '(西方) \xA0',
  '(Non-H) \xA0': '(无H) \xA0',
  '(Image Set) \xA0': '(图集) \xA0',
  '(Misc) \xA0': '(杂项) \xA0',
  downed: '已清除',
  weak: '弱小',
  active: '活跃',
  SOLID: '确定'
}, []);
helper_merge(/^\/tools\/taglist/, 'repo.e-hentai.org', {
  'Tagging data for user ': '',
  ' (uid=': ' 的标签数据 (UID = ',
  Started: '发起',
  Voted: '投票',
  January: '一月',
  February: '二月',
  March: '三月',
  April: '四月',
  May: '五月',
  June: '六月',
  July: '七月',
  August: '八月',
  September: '九月',
  October: '十月',
  November: '十一月',
  December: '十二月',
  Year: '年度',
  Total: '总计',
  'Show Older >': '显示更早的 >',
  'User has no recent tags on public galleries.': '用户最近没有在公开图库上标记过标签。',
  'Filter galleries with assessed bad tagvotes': '筛选具有不良标签投票的图库',
  'There are no recent tag votes assessed as bad.': '最近没有被评定为不良的标签投票。',
  'You have to provide a gid or uid': '您必须提供一个 gid 或 uid',
  'You do not have access to this function.': '您没有权限访问此功能'
}, [[/^User has (\d+) recent tags? on (\d+) public galler(ies|y).$/, '用户最近在 $2 个公开图库上标记了 $1 个标签。'], [/^Last bad tagvote assessed: /, '最近一次不良标签投票的时间:'], [/^Withdrawn bad tagvotes: /, '已撤回的不良标签投票:']]);
helper_merge(/^\/tools\/tagapprove/, 'repo.e-hentai.org', {
  'Pending Tags': '待审核标签',
  'Approved Tags': '已批准标签',
  'Rejected Tags': '已拒绝标签',
  'There are no  tags of this type': '没有此类标签',
  namespace: '命名空间',
  gallery: '图库',
  creator: '创建者',
  'time created': '创建时间',
  'time updated': '更新时间',
  'time approved': '批准时间',
  'time rejected': '拒绝时间',
  '(missing)': '(缺失)',
  'Show Older >': '显示更早的 >',
  'Tag Name:': '标签名称:',
  'Namespace:': '命名空间:',
  'Tag Group:': '标签组:',
  'Created:': '创建时间:',
  'revision requested': '需要修改',
  'Updated:': '更新时间:',
  'First Tag:': '首次标记:',
  'Tagged On:': '标记次数:',
  'Sources:': '来源:',
  'Pending Moderator Approval': '待 MOD 审核',
  REJECTED: '已拒绝',
  APPROVED: '已批准',
  ' by ': ' 由 ',
  Comments: '评论',
  'There are currently no comments for this request': '当前没有评论',
  'If you have any (useful) information about this tag, you can submit it here.': '如果您有任何 (有用的) 关于此标签的信息,可以在此提交。',
  'Submit Comment': '提交评论',
  'Back to list': '返回列表',
  '(flagged for revision)': '(标记为需要修改)'
}, [[/^Tag Request #(\d+)$/, '标签申请 #$1'], [/ \(exists in $/, ' (已存在于 '], [/^(\d+) public galler(y|ies)$/, '$1 个公开图库'], [/^ on (\d\d\d\d-\d\d-\d\d \d\d:\d\d)$/, ' 于 $1'], [/^(\d\d\d\d-\d\d-\d\d \d\d:\d\d) by $/, '$1 由 ']]);
;// ./src/services/ui-translation/data/toplist.ts

helper_merge(/^\/(toplist|home)\.php/, undefined, {
  'Galleries All-Time': '图库总排行',
  'Galleries Past Year': '图库年排行',
  'Galleries Past Month': '图库月排行',
  'Galleries Yesterday': '图库日排行',
  'Uploader All-Time': '上传总排行',
  'Uploader Past Year': '上传年排行',
  'Uploader Past Month': '上传月排行',
  'Uploader Yesterday': '上传日排行',
  'Tagging All-Time': '标签总排行',
  'Tagging Past Year': '标签年排行',
  'Tagging Past Month': '标签月排行',
  'Tagging Yesterday': '标签日排行',
  'Hentai@Home All-Time': 'Hentai@Home 总排行',
  'Hentai@Home Past Year': 'Hentai@Home 年排行',
  'Hentai@Home Past Month': 'Hentai@Home 月排行',
  'Hentai@Home Yesterday': 'Hentai@Home 日排行',
  'EHTracker All-Time': '做种总排行',
  'EHTracker Past Year': '做种年排行',
  'EHTracker Past Month': '做种月排行',
  'EHTracker Yesterday': '做种日排行',
  'Cleanup All-Time': '清理总排行',
  'Cleanup Past Year': '清理年排行',
  'Cleanup Past Month': '清理月排行',
  'Cleanup Yesterday': '清理日排行',
  'Rating & Reviewing All-Time': '评分 & 评论总排行',
  'Rating & Reviewing Past Year': '评分 & 评论年排行',
  'Rating & Reviewing Past Month': '评分 & 评论月排行',
  'Rating & Reviewing Yesterday': '评分 & 评论日排行'
});
helper_merge(/^\/toplist\.php/, undefined, {
  'EHG Toplists': 'EHG 排行榜',
  'Gallery Toplists': '图库排行',
  'Uploader Toplists': '上传排行',
  'Tagging Toplists': '标签排行',
  'Hentai@Home Toplists': 'Hentai@Home 排行',
  'EHTracker Toplists': '做种排行',
  'Cleanup Toplists': '清理排行',
  'Rating & Reviewing Toplists': '评分 & 评论排行',
  'Error: Non-existing toplist.': '错误:排行榜不存在。'
});
helper_merge(/^\/toplist\.php\?tl=1/, undefined, {
  Name: '标题'
});
helper_merge(/^\/toplist\.php\?tl=[2-7]/, undefined, {
  Rank: '排名',
  Score: '得分',
  Name: '用户名'
});
;// ./src/services/ui-translation/data/torrents.ts

helper_merge(/^\/(gallery)?torrents\.php/, undefined, {
  'Status: ': '状态:',
  All: '全部',
  Seeded: '有种',
  Unseeded: '无种',
  ' \xA0 \xA0 \xA0 \xA0 Show: ': ' |  显示:',
  'All Torrents': '全部种子',
  'Only My Torrents': '我的种子',
  'Search Torrents': '搜索种子',
  Added: '添加于',
  'Torrent Name': '种子名',
  Gallery: '图库 ID',
  Size: '文件大小',
  Seeds: '做种',
  Peers: '下载',
  DLs: '完成',
  'You cannot add torrents directly to this page. To upload torrents to this system, visit the torrent screen for a gallery.': '您无法直接将种子文件添加到此页面。要将种子文件上传到此系统,请在相应图库的种子页面上传。',
  'Posted:': '发布于:',
  'Size:': '文件大小:',
  'Seeds:': '做种:',
  'Peers:': '下载:',
  'Downloads:': '完成:',
  'Uploader:': '上传者:',
  Information: '信息',
  Modify: '修改',
  Expunged: '已删除',
  Comments: '备注',
  'There are no torrents for this gallery.': '当前图库还没有种子',
  'There are no up-to-date torrents for this gallery.': '当前图库没有最新的种子',
  'Outdated Torrents:': '过时种子:',
  'New Torrents:': '新种子:',
  '\n\t\tYou can add a torrent for this gallery by uploading it here. The maximum torrent file size is 10 MB.': '您可以在这里上传来为此图库添加种子。最大 Torrent 文件大小为 10 MB。',
  '\n\t\tIf you are creating the torrent yourself, set this as announce tracker: ': '如果您自己创建 Torrent,请将此地址设置为 Announce Tracker:',
  '\n\t\tNote that you have to download the finished torrent from this site after uploading for stats to be recorded.\n\t': '请注意,您必须在上传后从此站点下载已完成的种子,以便记录统计信息。',
  'Upload Torrent': '上传种子',
  'Close Window': '关闭窗口',
  'Delete Torrent': '删除种子',
  Posted: '发布于',
  DLers: '下载',
  Completes: '完成',
  'Personalized Torrent': '私有种子',
  '(Just For You - this makes sure to record your stats)\n': '(只属于您 - 确保记录您的下载统计信息)',
  'Redistributable Torrent': '可再分发种子',
  '(use if you want a file you can post or give to others)': '(如果您想再发布或提供给其他人使用)',
  'No comments were given for this torrent.': '此种子没有评论',
  'Vote to Expunge': '投票删除',
  'Back to Index': '返回',
  'Your torrent was successfully uploaded and processed.': '您的种子已上传并处理完毕。',
  'Note that you should now download and use the personalized torrent from this site to seed the torrent. If you do not use this torrent for seeding, it will not count against your uploading and seeding statistics.': '请注意:您现在需要下载并使用本页面提供的私有种子进行做种。若未使用此种子做种,您的上传与做种数据将不会计入统计。',
  'Change display name or comment for this torrent': '修改种子显示名称或备注',
  'Add more torrents or list torrents for this gallery.': '列出当前图库的种子或为当前图库上传更多种子',
  'The personalized torrent file will start downloading momentarily.': '私有种子即将开始下载',
  'Please wait...': '请稍侯...'
}, [[/^Showing ([\d,]+)-([\d,]+) of ([\d,]+)$/, '$1 - $2,共 $3 个结果'], [/^([\d,]+) torrents? (was|were) found for this gallery.$/, '找到了 $1 个种子。']]);
;// ./src/services/ui-translation/data/uconfig.ts



helper_merge(/^\/uconfig\.php/, undefined, _objectSpread2(_objectSpread2({
  'Selected Profile:': '当前配置:',
  'Delete Profile': '删除配置',
  'Set as Default': '设为默认',
  'Image Load Settings': '图像加载设置',
  'Do you wish to load images through the Hentai@Home Network, if available?': '如果可用,是否希望通过 Hentai@Home 网络加载图像?',
  ' Any client (Recommended)': ' 任意客户端 (推荐)',
  ' Default port clients only (Slower. Use only if behind a firewall or proxy that blocks outgoing non-standard ports.)': ' 仅限默认端口的客户端(速度较慢。仅在防火墙或代理阻止非标准出站端口时使用。)',
  ' No [Modern/HTTPS] (Donator only. You will not be able to browse as many pages. Recommended only if having severe problems.)': ' 否 [现代/HTTPS] (仅限捐赠者,配额消耗会加快,只有出现严重的问题时才启用)',
  ' No [Legacy/HTTP] (Donator only. May not work by default in modern browsers. Recommended for legacy/outdated browsers only.)': ' 否 [传统/HTTP] (仅限捐赠者,可能无法在现代浏览器中使用,只推荐在过时的浏览器中启用)',
  'You appear to be located in ': '看起来您位于 ',
  ', or use a VPN located there, and will default to load images from the ': ' ,或者使用了此处的 VPN/代理,这意味着网站会默认通过 ',
  ' H@H Region.': ' H@H 区域加载图像。',
  'If this is incorrect, or you prefer using a different region for any reason (like if you are using a split tunneling VPN), select the desired region below.': '如果此结果不正确,或者您希望通过其他 H@H 区域加载图像 (例如您正在使用分割隧道 VPN),可以在下方选择您想要的区域。',
  '\n\t\tH@H Region: ': 'H@H 区域:',
  'Auto-Detect': '自动检测'
}, BROWSING_COUNTRY), {}, {
  'Image Size Settings': '图像大小设置',
  'Images are normally resampled to 1280 pixels (desktop) or 800 pixels (mobile) horizontal resolution for online viewing. You can select one of the following alternative resolutions.': '在线浏览时,图像通常会被重采样至 1280 像素(桌面端)或 800 像素(移动端)水平分辨率。您可以从以下选项中选择替代分辨率。',
  ' Auto': ' 自动',
  'Use original images instead of the resampled versions? Resampled images will still be used if you select a horizontal resolution different than "Auto" above and the image in question is wider, or if the original image is larger than 10 MiB (or 4 MiB for galleries older than one year).': '在阅读时优先加载原图而非重采样版本?当选择了“自动”以外的分辨率且原图宽度大于设定值,或原图大于 10 MiB (一年前发布的图库 4 MiB) 时,仍会加载重采样版本。',
  ' Prefer resampled images': ' 优先加载重采样版本',
  ' Prefer original images (requires the Source Nexus perk or a silver star)': ' 优先加载原图 (需要 Hath Perk:「原始之力」或银星)',
  ' Prefer original images': ' 优先加载原图',
  'While the site will automatically scale down images to fit your screen width, you can also manually restrict the maximum display size of an image. Like the automatic scaling, this does not resample the image, as the resizing is done browser-side. (0 = no limit)': '虽然图像会自动根据窗口缩小,您也可以手动指定最大显示大小。图像仅在浏览器端缩放,并没有被重新采样。(0 为不限制)',
  'Horizontal:': '宽/横向',
  'Vertical:': '高/纵向',
  ' pixels': ' px',
  'Gallery Name Display': '图库显示名称',
  'Many galleries have both an English/Romanized title and a title in Japanese script. Which gallery name would you like as default?': '许多图库都同时拥有英文/罗马音标题和日文标题,您希望默认显示哪一个?',
  ' Default Title': ' 默认标题 (英文/罗马音)',
  ' Japanese Title (if available)': ' 日文标题 (如果有)',
  'Archiver Settings': '归档设置',
  'The default behavior for the Archiver is to confirm the cost and selection for original or resampled archive, then present a link that can be clicked or copied elsewhere. You can change this behavior here.': '默认归档下载方式为手动选择原始或重采样画质,然后手动点击或复制下载链接。您可以在这里修改归档下载方式。',
  ' Manual Select, Manual Start (Default)': ' 手动选择,手动下载 (默认)',
  ' Manual Select, Auto Start': ' 手动选择,自动下载',
  ' Auto Select Original, Manual Start': ' 自动选择原始画质,手动下载',
  ' Auto Select Original, Auto Start': ' 自动选择原始画质,自动下载',
  ' Auto Select Resample, Manual Start': ' 自动选择重采样画质,手动下载',
  ' Auto Select Resample, Auto Start': ' 自动选择重采样画质,自动下载',
  'Front Page / Search Settings': '首页 / 搜索设置',
  'What categories would you like to show by default on the front page and in searches?': '您希望首页和搜索页面默认显示哪些类别?',
  'Which display mode would you like to use on the front and search pages?': '您希望首页和搜索页面使用哪种显示模式?',
  ' Minimal': ' 最小化',
  ' Minimal+': ' 最小化 + 关注标签',
  ' Compact': ' 紧凑 + 标签',
  ' Extended': ' 扩展',
  ' Thumbnail': ' 缩略图',
  'Which display style would you like for the search range indicator?': '您希望搜索范围指示器采用哪种显示样式?',
  ' Normal': ' 普通',
  ' Disabled': ' 禁用',
  'Optional UI Elements': '可选 UI 元素',
  'Some historic UI elements are now disabled by default. You can enable those here.': '一些历史 UI 元素现在默认禁用,您可以在这里重新启用它们。',
  ' Enable thumbnail selector on gallery screen': ' 在图库详情页启用缩略图选择器',
  'Here you can choose and rename your favorite categories.': '您可以在这里重命名您的收藏夹。',
  'Default sort order for galleries on your favorites page:': '收藏页面的默认排序方式?',
  ' By last gallery update time': ' 以图库最近更新时间排序',
  ' By favorited time': ' 以收藏时间排序',
  'Search Result Count': '搜索结果数',
  'How many results would you like per page for the index/search page and torrent search pages? (Hath Perk: Paging Enlargement Required)': '索引和搜索页面每页显示多少条数据? (需要 Hath Perk:「页面扩大」)',
  ' 25 results': ' 25 个',
  ' 50 results': ' 50 个',
  ' 100 results': ' 100 个',
  'Thumbnail Settings': '缩略图设置',
  'How would you like the mouse-over thumbnails on the front page to load when using Minimal or Compact display mode?': '在最小化和紧凑列表模式下,您希望鼠标悬停缩略图何时加载?',
  ' On mouse-over (pages load faster, but there may be a slight delay before a thumb appears)': ' 鼠标悬停时 (页面加载快,缩略图加载有延迟)',
  ' On page load (pages take longer to load, but there is no delay for loading a thumb after the page has loaded)': ' 页面加载时 (页面加载时间更长,但是显示的时候无需等待)',
  'You can set a default thumbnail configuration for all galleries you visit.': '图库详情页缩略图设置。',
  'Size: ': '大小:',
  ' Small': ' 小图',
  'Rows:': '行数:',
  'Cover Scaling': '封面缩放',
  '%': ' %',
  'The cover size in gallery list views can be scaled to between 75% and 150% when using the Thumbnail or Extended display modes.': '在缩略图和扩展列表模式下,图库封面大小可以缩放为 75% 到 150% 之间的自定义值。',
  Ratings: '评分',
  'By default, galleries that you have rated will appear with red stars for ratings of 2 stars and below, green for ratings between 2.5 and 4 stars, and blue for ratings of 4.5 or 5 stars. You can customize this by entering your desired color combination below.': '默认情况下,您评为 2 星及以下的图库会显示为红星,2.5 ~ 4 星显示为绿星,4.5 ~ 5 星显示为蓝星。您可以将其设定为其他颜色组合。',
  'Each letter represents one star. The default RRGGB means R(ed) for the first and second star, G(reen) for the third and fourth, and B(lue) for the fifth. You can also use (Y)ellow for the normal stars. Any five-letter R/G/B/Y combo works.': '每个字母代表一颗星, 默认的 RRGGB 表示第一第二颗星显示为红色 R(ed),第三第四颗星显示为绿色 G(reen),第五颗星显示为蓝色 B(lue)。您也可以使用黄色 (Y)ellow。R/G/B/Y 中任何的五个字母组合都是有效的。',
  'Tag Watching Threshold': '标签订阅阈值',
  'Recently uploaded galleries will be included on the watched screen if it has at least one watched tag with positive weight, and the sum of weights on its watched tags add up to this value or higher. This threshold can be set between 0 and 9999.': '您可以将标签加入「我的标签」并设置一个正权重来关注它们。如果一个最近上传的图库所有已关注标签的权重之和大于等于设定值,则它会出现在「订阅」里。此值可以设定为 0 ~ 9999。',
  'Tag Filtering Threshold': '标签过滤阈值',
  'You can soft filter tags by adding them to ': '您可以将标签加入「',
  ' with a negative weight. If a gallery has tags that add up to weight below this value, it is filtered from view. This threshold can be set between 0 and -9999.': '」并设置一个负权重来软过滤它们。如果一个图库所有标签的权重之和小于设定值,则它会被过滤。此值可以设定为 0 ~ -9999。',
  'Show Filtered Removal Count': '显示过滤数量',
  'Show the "Your custom filters removed XX galleries from this page" readout?': '显示“您的过滤器已从此页面移除 XX 个结果”的消息?',
  ' Yes': ' 是',
  ' No': ' 否',
  'Excluded Languages': '排除语言',
  'If you wish to hide galleries in certain languages from the gallery list and searches, select them from the list below.': '如果您希望在图库列表和搜索结果中隐藏某些语言的图库,请从下面的列表中选择它们。',
  'Note that matching galleries will never appear regardless of your search query.': '请注意,无论搜索查询如何,匹配的图库都不会出现。',
  Original: '原始',
  Translated: '翻译',
  Rewrite: '改写',
  All: '所有',
  Japanese: '日语',
  English: '英语',
  Chinese: '汉语',
  Dutch: '荷兰语',
  French: '法语',
  German: '德语',
  Hungarian: '匈牙利语',
  Italian: '意大利语',
  Korean: '韩语',
  Polish: '波兰语',
  Portuguese: '葡萄牙语',
  Russian: '俄语',
  Spanish: '西班牙语',
  Thai: '泰语',
  Vietnamese: '越南语',
  'N/A': '无语言',
  Other: '其他',
  'Excluded Uploaders': '排除上传者',
  'If you wish to hide galleries from certain uploaders from the gallery list and searches, add them below. Put one username per line.': '如果您希望在图库列表和搜索结果中隐藏某些上传者上传的图库,请把他们的用户名填写在下方,每行一个。',
  'Note that galleries from these uploaders will never appear regardless of your search query.': '请注意,无论搜索查询如何,这些上传者上传的图库都不会出现。',
  'You are currently using ': '已使用 ',
  ' of ': '/',
  ' exclusion slots.\n': '。',
  'Viewport Override': '移动端虚拟宽度',
  px: ' px',
  'Allows you to override the virtual width of the site for mobile devices. This is normally determined automatically by your device based on its DPI. Sensible values at 100% thumbnail scale are between 640 and 1400.': '允许您覆盖移动设备的虚拟宽度,默认是根据 DPI 自动计算的,100% 缩略图比例下的合理值在 640 到 1400 之间。',
  'Gallery Comments': '图库评论',
  'Sort order for gallery comments:': '评论排序方式:',
  ' Oldest comments first': ' 最早的评论',
  ' Recent comments first': ' 最近的评论',
  ' By highest score': ' 分数最高',
  'Show gallery comment votes:': '显示评论投票数:',
  ' On score hover or click': ' 悬停或点击时',
  ' Always': ' 总是',
  'Gallery Tags': '图库标签',
  'Sort order for gallery tags:': '图库标签排序方式:',
  ' Alphabetical': ' 按字母排序',
  ' By tag power': ' 按标签权重',
  'Gallery Page Thumbnail Labeling': '图库缩略图标签',
  'Show label below gallery thumbnails:\n\t': '在图库详情页缩略图下方显示标签:',
  ' None': ' 无',
  ' Page Number Only': ' 仅页码',
  ' Page Number + Name': ' 页码 + 名称',
  'Multi-Page Viewer': '多页查看器',
  'Always use the Multi-Page Viewer? There will still be a link to manually start it if this is left disabled.': '总是使用多页查看器?禁用此选项时,仍可以手动启动多页查看器。',
  ' Nope': ' 否',
  ' Yup': ' 是',
  'Multi-Page Viewer Display Style:': '显示样式:',
  ' Align left; Only scale if image is larger than browser width': ' 左对齐;仅当图像大于浏览器宽度时缩放',
  ' Align center; Only scale if image is larger than browser width': ' 居中对齐;仅当图像大于浏览器宽度时缩放',
  ' Align center; Always scale images to fit browser width': ' 居中对齐;始终缩放图像以适应浏览器宽度',
  'Multi-Page Viewer Thumbnail Pane:': '显示缩略图侧栏:',
  ' Show': ' 显示',
  ' Hide': ' 隐藏',
  Apply: '应用',
  'Settings were updated': '设置更新完毕'
}), [[/ \(Default\)$/, ' (默认)']]);
;// ./src/services/ui-translation/data/upload.ts

const upload_data = {
  'Gallery List': '图库列表',
  'Manage Folders': '管理文件夹',
  'Create Gallery': '创建图库',
  'Create New Gallery': '创建新图库',
  'Unpublished Galleries': '未发布图库',
  'Published Galleries': '已发布图库',
  'Empty Galleries': '空图库',
  'Gallery Name ': '图库名称',
  'Date Added ': '添加时间 ',
  Files: '文件数',
  'Public Category': '发布类别',
  'Available Actions': '操作',
  Expunged: '已删除',
  View: '查看',
  Manage: '管理',
  Publish: '发布',
  Disown: '脱离关系',
  'Manage Replacement': '管理新版本',
  'Collapse Open Folders': '折叠文件夹',
  '+ All': '+ 全选',
  '- All': '- 全不选',
  'Loading folder, please wait...': '正在加载文件夹,请稍候...',
  'Set public category for selected galleries: ': '设置选中的发布分类: ',
  'Move selected galleries to folder: ': '移动到文件夹: ',
  Go: '执行',
  'Folder Name': '文件夹名称',
  '(No folders have been added yet.)': '(尚未创建文件夹)',
  'Display Order': '显示顺序',
  'New folder name': '新文件夹名称',
  'Create Folder': '创建文件夹',
  'Save and Auto-Reorder': '保存并自动排序',
  'Save Changes': '保存更改',
  'Saving...': '保存中...',
  'New Gallery': '新图库',
  'Main Gallery Title': '主标题',
  'The main english or romanized title for this gallery.': '图库的主标题 (英文或罗马音)。',
  'Main gallery title (English Script)': '主标题 (英语)',
  'Japanese Script Title': '日文标题',
  'The original title in Japanese script, if applicable.': '原始的日文标题 (如果有)。',
  'Original gallery title (Japanese Script) (Optional)': '原始标题 (日语) (可选)',
  'Gallery Category': '图库分类',
  'The publicly listed category for this gallery.': '图库在公开列表中所属的分类。',
  '(Private / Unlisted)': '(私有 / 不公开)',
  'Gallery Language': '图库语言',
  'The primary language for this gallery. Can only be changed here for new unpublished galleries; set with tags for published/updated galleries.': '图库的主要语言。仅新建立且未发布的图库可更改此选项,已发布/已更新的图库需要通过标签系统更改。',
  Common: '常用',
  'Japanese / No Text': '日语 / 无字',
  Chinese: '汉语',
  English: '英语',
  French: '法语',
  Korean: '韩语',
  Portuguese: '葡萄牙语',
  Russian: '俄语',
  Spanish: '西班牙语',
  Textless: '无字',
  Speechless: '无言',
  'Text Cleaned': '文字清除',
  Others: '其他',
  Albanian: '阿尔巴尼亚语',
  Arabic: '阿拉伯语',
  Burmese: '缅甸语',
  Bulgarian: '保加利亚语',
  Catalan: '加泰罗尼亚语',
  Cebuano: '宿务语',
  Croatian: '克罗地亚语',
  Czech: '捷克语',
  Danish: '丹麦语',
  Dutch: '荷兰语',
  Esperanto: '世界语',
  Finnish: '芬兰语',
  German: '德语',
  Greek: '希腊语',
  Hindi: '印地语',
  Hungarian: '匈牙利语',
  Indonesian: '印尼语',
  Italian: '意大利语',
  Javanese: '爪哇语',
  Latin: '拉丁语',
  Norwegian: '挪威语',
  Persian: '波斯语',
  Polish: '波兰语',
  Romanian: '罗马尼亚语',
  Serbian: '塞尔维亚语',
  Slovak: '斯洛伐克语',
  Swedish: '瑞典语',
  Tagalog: '他加禄语',
  Thai: '泰国语',
  Turkish: '土耳其语',
  Ukrainian: '乌克兰语',
  Vietnamese: '越南语',
  'Official / Textless': '官方 / 无字',
  'This was officially published in this language, or the gallery has no text.': '官方发布于此语言,或者图库无字',
  Translated: '翻译',
  'This is a fan translation based on the original text.': '基于原始文字翻译',
  'By a proficient human translator (not machine translated)': '由熟练的译者翻译 (非机器翻译)',
  Rewrite: '改写',
  'This is a fan rewrite with new made-up text.': '使用新的文字改写',
  'Gallery Folder': '图库文件夹',
  'The folder this gallery will be displayed under in the uploader gallery list. This is only used to help you organize your gallery uploads.': '图库文件夹仅在上传者的图库列表中显示,仅用于帮助整理上传的图库。',
  Unsorted: '未分类',
  'or new folder: ': '或新建文件夹:',
  'Uploader Comment': '上传者评论',
  'Any comments or additional relevant information for this gallery. This will always show up as the topmost comment, and cannot be voted down.': '关于此图库的任何评论或其他相关信息。将始终显示在评论的最顶部,并且不能投票。',
  'You can write an optional uploader comment here.': '您可以在此处添加上传者评论。(可选)',
  'Date Added:': '添加时间:',
  'Not created yet': '尚未创建',
  'Date Posted:': '发布时间:',
  'Not published yet': '尚未发布',
  'Uploaded Files:': '上传文件数:',
  'Total Filesize:': '总文件大小:',
  '(empty)': '(空白)',
  'Parent Gallery:': '父级图库:',
  'Child Gallery:': '子图库:',
  'Expunged:': '删除:',
  'Visible:': '可见:',
  'No (Unpublished)': '否 (未发布)',
  'Show Public Gallery': '查看图库',
  'Show Gallery Stats': '查看统计',
  'Delete Gallery': '删除图库',
  'Disown Gallery': '脱离与图库的关系',
  'I have read and agree with the ': '我已阅读并同意',
  'Publish Gallery': '发布图库',
  'Upload Files': '上传文件',
  'Accepted Images: JPG and WebP < 20 MB, PNG < 50 MB, GIF < 10 MB. Accepted Archive Formats: ZIP. Max Resolution: 20000 x 20000.': '图像:JPG 和 WebP < 20 MB, PNG < 50 MB, GIF < 10 MB;归档:ZIP。最大分辨率:20000 x 20000。',
  'Max 2,000 files and 10 GB per gallery. Do not upload more than 500MB at a time, less if you have a slow connection.': '每个图库最多包含 2000 张图像或 10 GB。一次上传的大小不应超过 500 MB,如果连接速度较慢,可以尝试以更小归档上传。',
  'Start Upload': '开始上传',
  'Select one or more image or archive files and click Start Upload to add files to this gallery.': '选择一个或多个图像或归档文件,然后点击“开始上传”,以添加文件到此图库。',
  'Uploading...': '上传中...',
  'Starting upload...': '开始上传...',
  'Finished processing ': '已处理 ',
  ' of ': ' / ',
  'Processing...': '正在处理...',
  'Processing ': '正在处理 ',
  'Finishing backend sync...': '正在完成后端同步...',
  '\n\t\tNo files have been added yet\n\t\t': '尚未添加任何文件',
  'Added ': '已添加 ',
  'Revert Changes': '撤销更改',
  'Apply Changes': '应用更改',
  'Automatic Resorting': '自动排序',
  'Select a sorting method...': '选择排序方式...',
  'Remove Exact Duplicates': '删除完全重复的图像',
  'Natural Sort': '自然排序',
  'Lexical Sort': '字典排序',
  'Time Added (Recent First), then Natural Sort': '按添加时间 (最近的在前),然后按自然排序',
  'Time Added (Recent Last), then Natural Sort': '按添加时间 (最近的在后),然后按自然排序',
  'Time Added (Recent First), then Lexical Sort': '按添加时间 (最近的在前),然后按字典排序',
  'Time Added (Recent Last), then Lexical Sort': '按添加时间 (最近的在后),然后按字典排序',
  'Time Added (Recent First), then Current Order': '按添加时间 (最近的在前),然后按当前顺序',
  'Time Added (Recent Last), then Current Order': '按添加时间 (最近的在后),然后按当前顺序',
  'Perform Auto-Sort': '执行自动排序',
  'Natural Sort will sort filenames with numbers in natural ascending order (8, 9, 10, 11, 12) regardless of padding. This is the recommended auto-sorting method.': '自然排序将按数字递增顺序 (8, 9, 10, 11, 12) 排序此图库中的图像。这是推荐的自动排序方式。',
  'Lexical Sort will sort filenames with numbers in strict lexicographic order (1, 10, 11, 12, 2). Unless numbers are zero-padded, this can lead to unexpected results.': '字典排序将按字典顺序 (1, 10, 11, 12, 2) 排序此图库中的图像。若数字不包含前导 0,使用此方式会导致错误的结果。',
  'Time Added Sort will sort the pages based on the creation time of the gallery to which they were first added. For example, sorting by Time Added (Recent First) will sort any files that were added to the current gallery first, followed by the files first added to the previous version of the gallery, and so on.': '按添加时间排序将按照图像第一次添加到图库的时间进行排序。例如,按添加时间 (最近的在前) 排序将按照图像第一次添加到当前图库的时间进行排序,然后按照图像第一次添加到上一个版本图库的时间进行排序,以此类推。',
  'Note that you can always delete the updated gallery and start over if you make a mistake.': '请注意,如果您犯了错误,可以随时删除更新后的图库并重新开始。',
  'Please confirm that you wish to publish the gallery:': '请确认您希望发布图库:',
  'Doing so will lock it for new file additions and modifications. If you wish to add or replace files in this gallery later, a copy will be created for this purpose. Published galleries can no longer be deleted, but you can disown them after a week.': '发布后将锁定图库,不再允许添加或修改图像。如果您希望在发布后继续添加或替换图像,则需要创建一个图库的新副本。发布后的图库无法删除,但您可以在一周后与其脱离关系。',
  'The gallery was successfully published. It will take a few minutes before it becomes publicly listed.': '图库已成功发布,将在几分钟后被列入公共图库列表。',
  'You will be returned to the Management Interface momentarily.': '您将在几秒后返回管理界面。',
  '(Click here to continue)': '(点此继续)',
  'Please wait...': '请稍候...',
  'This gallery has been published, and images can therefore no longer be added, deleted or rearranged.': '此图库已经发布,因此不能再添加、删除或重新排序图像。',
  'You can create an editable copy of this gallery by clicking the button below. This new version will be linked in': '您可以通过点击下方的按钮来创建一个此图库的可编辑副本。新的副本',
  'as a child gallery of the currently published one, and will also link back to the old gallery as its parent.\n': '将作为子图库关联到当前图库,同时新图库也会将当前图库关联为父图库。',
  'The old gallery will remain until the new one is published. Updates that remove valid content will be reverted.': '旧图库将保留到新图库发布。恶意删除有效内容的更改会被还原。',
  'Create New Version': '创建新版本',
  'A new version of the gallery was successfully created. The previous version will remain publicly listed while you make updates to this version.': '新版本的图库已成功创建。旧版本将保留到新版本发布。',
  'To cancel and keep the previous version, simply delete this gallery.': '要取消并保留旧版本,只需删除此图库。',
  'You cannot unlock galleries this old. Please make a new one, then request to have this one expunged.': '您无法解锁如此老旧的图库。请创建一个新图库,然后请求删除此图库。',
  'Please confirm that you wish to delete this unpublished gallery.': '请确认您希望删除此未发布的图库。',
  'This action cannot be undone.': '此操作无法撤销。',
  'The gallery was successfully deleted.': '图库已成功删除。',
  'Please confirm that you wish to disown this gallery. You will no longer be publicly listed as the uploader unless the gallery was published in the last week, and you will not be able to make further changes to it.': '请确认您希望与此图库脱离关系。在一周后,您将不再被公开列为上传者。并且您将不能再对其进行修改。',
  'Gallery not found.': '图库未找到。',
  'Rate limitation for new posters is in effect. You have to wait a while before you can post more galleries.': '针对新上传者的图库发布速率限制已生效,您必须等待一段时间才能继续发布图库。',
  'You have exceeded your rate limit for posting galleries, and have to wait a while before you can post any more.': '您已超过了发布图库的速率限制,需要等待一段时间才能继续发布。',
  'This action cannot be done right now since another operation has locked this gallery. Please wait for this operation to finish.': '由于另一个操作已锁定此图库,此操作暂时无法执行。请等待操作完成。',
  'You cannot publish an empty gallery.': '您不能发布一个空图库',
  'You must agree with the Terms of Service to continue.': '您必须同意服务条款才能继续',
  'You must give the gallery a title to continue.': '您必须给图库命名才能继续',
  'Apply or revert the active reorder before continuing.': '您必须应用或还原当前的排序才能继续',
  Continue: '继续',
  'Some errors were encountered while adding files to the gallery.': '添加文件到图库时发生了一些错误。',
  'Please review the error log above.': '请查看上方的错误日志。'
};
const regexData = [[/^Uploading: (\d+)%$/, '上传中:$1%'], [/^ images? so far\.$/, ' 张图像。'], [/^ images? so far$/, ' 张图像'], [/^ new images? to the gallery. /, ' 张新图像。'], [/^ uploaded files?, added $/, ' 个文件,已添加 '], [/You have added a total of $/, '您目前总共添加了 '], [/^Category of (.*?) can no longer be changed.$/, '无法更改 $1 的分类。'], [/^The file (.*?) is corrupt, incomplete, too large, or not an accepted image file.$/, '文件 $1 损坏 / 不完整 / 过大或是不支持的图像文件。'], [/^Failed to add the file (.*?) to the gallery. This probably means an identical file with the same filename already exists.$/, '无法将文件 $1 添加到图库。这可能意味着具有相同文件名的相同文件已经存在。'], [/^The file (.*?) was generated by this system and has been replaced with the original copy.$/, '文件 $1 由本系统生成,已替换为原始副本。'], [/^The file (.*?) is too low resolution.$/, '文件 $1 分辨率过低。']];
helper_merge(/^\/upld\//, undefined, upload_data, regexData);
helper_merge(/^\//, 'upld.e-hentai.org', upload_data, regexData);
helper_merge(/^\//, 'upload.e-hentai.org', upload_data, regexData);
;// ./src/services/ui-translation/data/watched.ts

helper_merge(/^\/watched/, undefined, {
  'Watched Tag Galleries': '关注的标签',
  'You do not have any watched tags. You can change your watched tags from ': '您还没有关注任何标签。可在此处修改关注的标签:'
}, [[/^Showing results for ([\d,]+) watched tags?$/, '关注的 $1 个标签的结果']]);
;// ./src/services/ui-translation/data/thirdparty/e-hentai-downloader.ts

// E-Hentai Downloader
helper_merge(/^\/g\//, undefined, {
  'E-Hentai Downloader ': 'E-Hentai 下载器 ',
  'Image Limits: ': '图像配额:',
  '! Account Suspended !': '! 账户已被封禁 !',
  'Download Archive': '下载档案 ',
  ' Number Images': ' 图像编号',
  'Pages Range ': '页面范围 ',
  'File Name ': '文件名 ',
  'Path Name ': '文件夹名 ',
  Basic: '基本',
  Advanced: '高级',
  Feedback: '反馈',
  'Download ': '同时下载 ',
  ' images at the same time (≤ 5 is recommended)': ' 张图像 (建议 ≤5 张)',
  'Abort downloading current image after ': '无响应 ',
  ' second(s) (0 is never abort)': ' 秒后终止当前图像下载 (0 为永不终止)',
  ' Abort downloading current image if speed is less than ': ' 当速度低于 ',
  ' KB/s in ': ' KB/s,持续 ',
  ' second(s)': ' 秒后终止当前图像下载',
  'Skip current image after retried ': '重试 ',
  ' time(s)': ' 次后跳过当前图像',
  'Delay ': '延迟 ',
  ' second(s) before requesting next image': ' 秒后请求下一张图像',
  ' Number images (001:01.jpg, 002:01_theme.jpg, 003:02.jpg...) (Separator ': ' 使用数字编号图像 (如 001:01.jpg, 002:01_theme.jpg, 003:02.jpg...) (分隔符 ',
  ' Number images with original page number if pages range is set': ' 如果设置了页面范围,则使用原始页码对图像进行编号',
  ' Retry automatically when images download failed': ' 图像下载失败后自动重试',
  ' Get downloaded images automatically when canceled downloading': ' 取消下载时自动获取已下载完成的图像',
  'Set folder name as ': '将文件夹名称设置为 ',
  ' (if you don\'t want to create folder, use "': ' (如果不想创建文件夹请使用 "',
  'Set Zip file name as ': '将 Zip 文件名设置为 ',
  ' Show inputs to recheck file name and folder name before downloading': ' 显示文件名和文件夹名的输入框以供确认',
  ' Never show notification if torrents are available': ' 不显示有种子可用的提示',
  // Never: '从不', // 与页面中收藏 Never 从未 冲突。有好的冲突解决的方案时再修改。
  'When current tab is not focused': '当前标签页失去焦点时',
  Always: '总是',
  ' show download progress in title': ' 在标题栏中显示下载进度',
  ' Disable requesting and showing image limits': ' 不显示图像配额',
  ' Disable pre-calculating image limits cost': ' 不显示预计成本',
  ' Pin download actions box at the top of the page': ' 将下载操作框固定在页面顶部',
  '\t\t\t\t\t\t\t* Available templates: \t\t\t\t\t\t\t': ' * 可用模板: ',
  ' Gallery GID | \t\t\t\t\t\t\t': ' 图库 GID | ',
  ' Gallery token | \t\t\t\t\t\t\t': ' 图库 token | ',
  ' Gallery title': '图库标题',
  ' Gallery sub-title': '图库副标题',
  ' Gallery category': '图库分类',
  ' Gallery uploader': '图库上传者',
  'Set compression level as ': '压缩级别 ',
  ' (0 ~ 9, 0 is only store) ': ' (0 ~ 9, 0 为仅存储)',
  ' Stream files and create Zip with file descriptors ': ' 流式传输文件并使用文件描述符创建 Zip ',
  ' Force download resized image (never download original image) ': ' 强制下载重采样图像 (从不下载原图) ',
  ' Never get new image URL when failed to download image ': ' 图像下载失败时,不要获取新的图像地址 ',
  ' Never send "nl" GET parameter when getting new image URL ': ' 获取新图像地址时,不带 "nl" 参数 ',
  ' Never show warning if image limits will probably used out on starting download': ' 开始下载时不显示图像配额可能不足的警告',
  " Never show warning when it's in peak hours now ": ' 在高峰时段下载时不显示警告 ',
  ' Never show warning when downloading a large gallery (>= 300 MB) ': ' 下载大型图库时不显示警告 (≥ 300 MB) ',
  ' Use File System to handle large Zip file': ' 使用文件系统处理大型 Zip 文件,',
  'when gallery is larger than ': '如果图库大于 ',
  ' MB (0 is always)': ' MB (0 为总是使用) ',
  ' Play silent music during the process to avoid downloading freeze ': ' 在下载过程中播放无声音频,避免下载冻结 ',
  'Record and save gallery info as ': '将图库信息记录并保存为 ',
  'File info.txt': '文件 info.txt',
  'Zip comment': '压缩文件注释',
  '...which includes ': '...包括 ',
  'Title & Gallery Link': '标题和图库链接',
  Metadatas: '元数据',
  'Page Links': '页面链接',
  ' Replace forbidden characters with full-width characters instead of dash (-)': ' 使用全角字符替换禁用字符,而不是使用破折号 (-)',
  ' Force drop downloaded images data when pausing download': ' 暂停下载时强制中断并删除未下载完的图像',
  ' Save as CBZ (Comic book archive) file': ' 以 CBZ (漫画归档) 文件格式保存 ',
  ' Pass cookies manually when downloading images ': ' 下载图像时手动传递 cookie ',
  'Download original images from ': '下载原图,通过 ',
  'current origin': '当前站点',
  "\t\t\t\t\t\t\t(1) Higher compression level can get smaller file without lossing any data, but may takes more time. If you have a decent CPU you can set it higher, and if you're using macOS set it to at least 1.\t\t\t\t\t\t": ' (1) 更高的压缩级别可以获得更小的文件,但可能需要更长时间。如果您的 CPU 性能较好,可以将其设置得更高;如果您使用的是 macOS,请至少设置为 1。',
  '\t\t\t\t\t\t\t(2) This may reduce memory usage but some decompress softwares may not support the Zip file. See ': ' (2) 开启后可以减少内存占用,但部分解压软件可能不支持。查看 ',
  ' for more info.\t\t\t\t\t\t': ' 获取更多信息。',
  '\t\t\t\t\t\t\t(3) Enable these option will never let you to load from regular image server (or say force loaded from H@H). This may save your image viewing limits ': ' (3) 开启这些选项可能会阻止您从源图像服务器加载图像 (即强制从 H@H 加载),可能可以节约您的图像配额 ',
  '(See wiki)': '(请看 wiki)',
  ', but may also cause some download problems, especially if your network cannot connect to specific H@H node.\t\t\t\t\t\t': ',但是可能也会导致一些下载问题,尤其是在您的网络无法连接到特定的 H@H 节点时。',
  '\t\t\t\t\t\t\t(4) If enabled you can save larger Zip files (probably ~1GB).\t\t\t\t\t\t': ' (4) 开启后可以保存更大的 Zip 文件 (约 ~1GB)',
  '\t\t\t\t\t\t\t(5) If enabled the script will play slient music to avoid downloading freeze when page is in background ': ' (5) 开启后脚本会播放无声音频以避免页面在后台时下载被冻结 ',
  '(See issue)': '(请看这里)',
  '. Only needed if you have the problem, because the audio-playing icon maybe annoying.\t\t\t\t\t\t': '。只有当您遇到相关问题时才需开启,因为音乐播放图标可能会很烦人。',
  'Comic book archive': '漫画归档 (CBZ)',
  ' is a file type to archive comic images, you can open it with some comic viewer like CDisplay/CDisplayEX, or just extract it as a Zip file. To keep the order of images, you can also enable numbering images.\t\t\t\t\t\t': ' 是一种归档漫画图像的文件类型,您可以使用 CDisplay/CDisplayEX 等漫画查看器打开它,或者直接将其视为 Zip 文件解压。为了保持图像的顺序,您还可以启用对图像进行编号。',
  "\t\t\t\t\t\t\t(7) If you cannot original images, but you've already logged in and your account is not blocked or used up your limits, it may caused by your cookies is not sent to the server. This feature may helps you to pass your current cookies to the download request, but please enable it ONLY if you cannot download any original images.\t\t\t\t\t\t": ' (7) 如果您无法下载原图,但是您已经登录并且您的账户没有被阻止或用完您的限制,这可能是因为您的 cookie 没有被发送到服务器。此功能可以帮助您将当前的 cookie 传递给下载请求,但只有当您无法下载任何原图时才应该启用它。',
  "\t\t\t\t\t\t\t(8) If you have already logged in, but the script detects that you're not logged in, you can enable this to skip login check. Please note that if you are not logged in actually, the script will not work as expect.\t\t\t\t\t\t": ' (8) 如果您已经登录,但脚本检测到您没有登录,您可以启用此功能以跳过登录检查。请注意,如果您实际没有登录,则脚本不会按预期工作。',
  '\t\t\t\t\t\t\t(9) If you have problem to download on the same site, like account session is misleading, you can force redirect original download link to another domain. Pass cookies manually may be needed.\t\t\t\t\t\t': ' (9) 如果您无法通过当前站点下载原图,例如账户会话异常,您可以强制将原始下载链接重定向到另一个域。可能需要同时开启手动传递 cookie。',
  "Peak Hours: It's in peak hours now, during peak hours, downloading original images of 90 days ago cost GPs": '高峰时段:现在是高峰时段,下载 90 天前的原图需要消耗 GP',
  'Ancient Gallery: Downloading original images of 1 year ago cost GPs': '久远图库:下载 1 年前的原图需要消耗 GP',
  'eg. -10,!8,12,14-20,!15-17,30-40/2,50-60/3,70-': '例如 -10,!8,12,14-20,!15-17,50-60/3,70-',
  'Download ranges of pages, split each range with comma (,)\rRanges prefixed with ! means negative range, pages in these range will be excluded\rExample: \r  -10:   Download from page 1 to 10\r  !8:   Exclude page 8\r  12:   Download page 12\r  14-20:   Download from page 14 to 20\r  15-17:   Exclude page 15 to 17\r  30-40/2:   Download each 2 pages in 30-40 (30, 32, 34, 36, 38, 40)\r  50-60/3:   Download each 3 pages in 50-60 (50, 53, 56, 59)\r  70-:   Download from page 70 to the last page\rPages range follows your order, a negative range can drop previous selected pages, the latter positive range can add it back\rExample: \r  !10-20:   Download every page except page 10 to 20\r  1-10,!1-8/2,!4,5:   Download page 1 to 10 but remove 1, 3, 5, 7 and 4, then add 5 back (2, 5, 6, 8, 9, 10)': '需要下载的页面范围,使用半角逗号 ( , ) 分隔\r在范围前添加半角叹号 ( ! ) 表示排除此范围不下载\r例如:\r  -10:       下载 1-10 页\r  !8:          排除第 8 页\r  12:         下载第 12 页\r  14-20:    下载 14-20 页\r  !15-17:   排除 15-17 页\r  50-60/3: 在 50-60 范围内每隔 3 页下载 (50, 53, 56, 59)\r  70-:        下载 70-最后一页\r页面范围遵循输入的顺序,排除范围可以删除前面选定的页面,后面的范围也可以将其添加回来\r例如:\r  !10-20:               下载除了 10-20 页外的所有页面\r  1-10,!1-8/2,!4,5: 下载 1-10 页,但排除 1, 3, 5, 7 和 4,然后将 5 添加回来 (2, 5, 6, 8, 9, 10)',
  'You can find GID and token at the address bar like this: exhentai.org/g/[GID]/[Token]/': '您可以在地址栏中找到 GID 和 token,如 exhentai.org/g/[GID]/[Token]/',
  'This title is the English title or Latin transliteration, you can find it as the first line of the title.': '此标题是英文标题或拉丁文音译,它是页面中第一行标题。',
  'This title is the original language title, you can find it as the second line of the title.': '此标题是原始标题,它是页面中第二行标题。',
  'This tag means the sort name of the gallery, and its output string is upper.': '此标记代表图库的分类名称,且输出的字符串为大写',
  'You can find it at the left of the gallery page.': '您可以在图库左侧找到它',
  'Pause (Downloading images will keep downloading)': '暂停 (下载中的图像会继续下载)',
  'Pause (Downloading images will be aborted)': '暂停 (下载中的图像会中断下载)',
  Resume: '继续',
  'Not download? Click here to download': '还未下载?点此开始',
  "If an error occured and script doesn't work, click ": '如果出现错误导致脚本无法工作,请点击 ',
  here: '此处',
  ' to force get your downloaded images.': ' 强制获取已下载的图像。',
  'Pages URL is MPV link': '页面 URL 是 MPV 链接',
  'MPV is available, use MPV to fetch all pages.': 'MPV 可用,通过 MPV 获取所有页面。',
  'Fetching Gallery Pages URL From MPV...': '从 MPV 获取图库页面 URL...',
  'Pending...': '等待中...',
  'Downloading...': '下载中...',
  'Succeed!': '成功!',
  'Auto Paused': '自动暂停',
  'Force Paused': '强制暂停',
  'Force Abort': '强制中止',
  'Fetch images failed.': '获取图像失败。',
  'Generating Zip file...': '生成 Zip 文件...',
  'Generating Blob object...': '生成 Blob 对象...',
  'Tags:': '标签:',
  'Uploader Comment:': '上传者评论:',
  'You have exceeded your image viewing limits, or you need GP to download.': '您已超出图像配额,或者需要 GP 才能下载。',
  'Reset Limits': '重置配额',
  'Continue Download': '继续下载',
  'Cancel Download': '取消下载'
}, [[/^Image Limits: (\d+)\/(\d+)$/, '图像配额:$1/$2'], [/^Estimated Costs: (\?\?\?|\d+|\d+ \+ \d+ GP)$/, '预计成本:$1'], [/^...or (\d+) \+ (\d+) GP if you don't have enough viewing limits.\n/, '...或者 $1 + $2 GP (如果您没有足够的图像配额)\n'], [/1 point per 0.1 MB since August 2019, less than 0.1 MB will also be counted.\nDuring peak hours, downloading original images will cost GPs.\nFor gallery uploaded 1 year ago, downloading original images will cost GPs since July 2023.\nThe GP cost is the same as resetting viewing limits.\nEstimated GP cost is a bit more than using offical archive download, in case the sum of each images will be larger than the packed.$/, '自 2019 年 8 月起,每 0.1 MB 消耗一点配额,不足 0.1 MB 也计算在内。\n高峰期下载原图将消耗 GP,自 2023 年 7 月起,下载 1 年前上传的图库\n原图也需要消耗 GP,数量与重置图像限制所需的相同。\nGP 成本预计会比直接使用官方归档下载略高,因为每张图像的体积总和比压缩包大。'], [/^ Force as logged in \(actual login state: (\w+?), uid: (-?\d+)\) $/, ' 强制登录 (实际登录状态: $1,uid: $2) '], [/^Total: (\d+) \| Downloading: (\d+) \| Succeed: (\d+) \| Failed: (\d+)$/, '总计:$1 | 下载中:$2 | 成功:$3 | 失败:$4'], [/^Start downloading at /, '下载开始于 '], [/^Finish downloading at /, '下载完成于 '], [/^Fetching Gallery Pages URL /, '获取图库页面 URL '], [/^Retrying /, '重试中 '], [/^Failed! /, '失败!'], [/^Category: /, '分类:'], [/^Uploader: /, '上传者:'], [/^Rating: /, '评分:']]);
;// ./src/services/ui-translation/data/thirdparty/ex-resurrect.ts

// ExResurrect
helper_merge(/^\/g\//, undefined, {
  'Gallery Unavailable': '图库不可用',
  'Removal:': '移除:',
  'Custom Search': '自定义搜索',
  'Search by Name': '搜索名称',
  'Search by Full Name': '搜索全名',
  'Search by Name (nhentai.net)': '搜索名称 (nhentai.net)',
  'Search by Full Name (nhentai.net)': '搜索全名 (nhentai.net)',
  'Search by Name (hitomi.la)': '搜索名称 (hitomi.la)',
  'Search by Name (chaika)': '搜索名称 (chaika)',
  'Search by Full Name (chaika)': '搜索全名 (chaika)',
  'Search by URL (chaika)': '搜索 URL (chaika)',
  'Search by JP Title (DLsite)': '搜索日文标题 (DLsite)',
  'Possible Torrents:': '可能的种子:',
  "If the torrent link doesn't work, try the magnet link.": '如果种子链接无法使用,请尝试磁力链接。',
  'Magnet Link': '磁力链接'
}, [[/^Added (\d{4}-\d{2}-\d{2} \d{2}:\d{2}:\d{2})$/, '添加于 $1']]);
;// ./src/services/ui-translation/data.ts































;// ./src/services/ui-translation/index.ts






















function hostMatches(hostname, hosts) {
  if (hosts == null) return true;
  for (const candidate of hosts) {
    if (hostname === candidate) return true;
    if (candidate.includes('*')) {
      const reg = new RegExp(`^${candidate.replace(/\\/g, '\\\\').replace(/\./g, '\\.').replace(/\*/g, '.*')}$`);
      if (reg.test(hostname)) return true;
    }
  }
  return false;
}
let UiTranslation = class UiTranslation {
  constructor(logger) {
    this.logger = logger;
  }
  get(url = location) {
    const results = {
      plainReplacements: new Map(),
      regexReplacements: new Map()
    };
    if (!url || !isValidHost(url.hostname)) {
      return results;
    }
    const path = url.pathname + url.search;
    this.logger.log('获取 UI 翻译:', path);
    dataMaps.filter(d => d.regex.test(path) && hostMatches(location.hostname, d.hosts)).forEach(d => {
      for (const [k, v] of d.plainReplacements) {
        results.plainReplacements.set(k, v);
      }
      for (const [k, v] of d.regexReplacements) {
        results.regexReplacements.set(k, v);
      }
    });
    return results;
  }
};
UiTranslation = __decorate([Service(), __metadata("design:paramtypes", [Logger])], UiTranslation);

;// ./package.json
const package_namespaceObject = /*#__PURE__*/JSON.parse('{"name":"ehsyringe","displayName":"EhSyringe","version":"3.5.1","description":"E 站注射器,将中文翻译注入到 E 站体内。包含全站 UI 翻译和超过 44000 条标签翻译,标签数据库持续更新中。","author":"EhTagTranslation","repository":{"type":"git","url":"git+https://github.com/EhTagTranslation/EhSyringe.git"},"engines":{"node":"^24.21.0"},"packageManager":"[email protected]","license":"MIT","bugs":"https://github.com/EhTagTranslation/EhSyringe/issues","homepage":"https://github.com/EhTagTranslation/EhSyringe","type":"module","scripts":{"start:monkey":"webpack serve --mode=development --env type=user-script","start:ext":"webpack --mode=development --watch --env type=web-ext","start:chrome":"pnpm run start:ext --env vendor=chrome","start:firefox":"pnpm run start:ext --env vendor=firefox","build":"webpack --mode=production","build:monkey":"pnpm run build --env type=user-script","build:ext":"pnpm run build --env type=web-ext","build:chrome":"pnpm run build:ext --env vendor=chrome","build:firefox":"pnpm run build:ext --env vendor=firefox","pack:chrome":"crx pack dist --zip-output releases/ehsyringe.chrome.zip && crx pack dist -o releases/ehsyringe.chrome.crx","pack:firefox":"web-ext build -s dist -a releases -n ehsyringe.firefox.xpi -o && web-ext build -s dist -a releases -n ehsyringe.firefox.zip -o","lint":"eslint","format":"prettier --ignore-path .gitignore --write .","clean":"rimraf dist releases"},"devDependencies":{"@babel/core":"^8.0.6","@babel/plugin-transform-runtime":"^8.0.6","@babel/preset-env":"^8.0.6","@babel/runtime":"^8.0.5","@eslint/js":"^10.0.1","@types/chrome":"^0.3.4","@types/escape-html":"^1.0.4","@types/node":"^26.6.3","@types/tampermonkey":"^5.5.0","@types/webextension-polyfill":"^0.12.6","@webextension-toolbox/webpack-webextension-plugin":"^3.3.1","babel-loader":"^10.1.1","babel-plugin-polyfill-corejs3":"^1.0.0","copy-webpack-plugin":"^14.0.0","crx":"^5.0.1","css-loader":"^7.1.5","cssnano":"^9.0.5","eslint":"^10.11.0","eslint-config-prettier":"^10.1.8","execa":"^10.0.1","glob":"^13.0.6","html-webpack-plugin":"^5.6.8","less":"^4.9.1","less-loader":"^13.0.0","postcss":"^8.5.28","postcss-import":"^17.0.0","postcss-loader":"^8.2.1","postcss-preset-env":"^11.5.4","prettier":"^3.9.9","rimraf":"^6.1.3","semver":"^7.8.5","style-loader":"^4.0.0","ts-loader":"^9.6.2","tsconfig-paths-webpack-plugin":"^4.2.0","type-fest":"^5.10.0","typescript":"^6.0.3","typescript-eslint":"^8.71.0","web-ext":"^10.7.0","webpack":"^5.111.1","webpack-bundle-analyzer":"^5.4.0","webpack-cli":"^7.2.3","webpack-dev-server":"^6.0.0","yaml-loader":"^0.9.0"},"dependencies":{"core-js":"^3.50.0","emoji-regex":"^11.0.0","escape-html":"^1.0.3","idb-keyval":"^6.3.0","lit-html":"^3.3.3","rxjs":"^7.8.2","tslib":"^2.8.1","typedi":"^0.10.0","webextension-polyfill":"^0.12.0"}}');
;// ./src/info.ts

const packageJson = package_namespaceObject;
;// ./src/services/sync-storage.ts








let SyncStorage = class SyncStorage {
  constructor(logger, async) {
    this.logger = logger;
    this.async = async;
    this.defaults = {
      version: packageJson.version,
      databaseMap: undefined,
      databaseSha: undefined,
      config: this.async.defaults.config
    };
    const oldVer = this.get('version');
    if (packageJson.version !== oldVer) {
      this.migrate();
      this.set('version', packageJson.version);
    }
  }
  get(key) {
    const value = syncStorage.get(key);
    if (value == null) return this.defaults[key];
    return value;
  }
  set(key, value) {
    if (value == null) return this.delete(key);
    return syncStorage.set(key, value);
  }
  delete(key) {
    return syncStorage.delete(key);
  }
  keys() {
    return syncStorage.keys();
  }
  migrate() {
    const keys = this.keys();
    if (keys.length === 0) return;
    this.logger.log(`迁移同步存储版本,删除 `, keys);
    for (const key of keys) {
      this.delete(key);
    }
  }
};
SyncStorage = __decorate([Service(), __metadata("design:paramtypes", [Logger, Storage])], SyncStorage);

;// ./src/services/date-time.ts

var DateTime_1;


const date_time_base = {
  hourCycle: 'h23'
};
const timeFormatter = new Intl.DateTimeFormat(undefined, _objectSpread2({
  hour: 'numeric',
  minute: 'numeric'
}, date_time_base));
const timeWithSecondFormatter = new Intl.DateTimeFormat(undefined, _objectSpread2({
  hour: 'numeric',
  minute: 'numeric',
  second: 'numeric'
}, date_time_base));
const dateTimeFormatter = new Intl.DateTimeFormat(undefined, _objectSpread2({
  year: 'numeric',
  month: 'numeric',
  day: 'numeric',
  hour: 'numeric',
  minute: 'numeric'
}, date_time_base));
const dateTimeWithSecondFormatter = new Intl.DateTimeFormat(undefined, _objectSpread2({
  year: 'numeric',
  month: 'numeric',
  day: 'numeric',
  hour: 'numeric',
  minute: 'numeric',
  second: 'numeric'
}, date_time_base));
const noYearDateTimeFormatter = new Intl.DateTimeFormat(undefined, _objectSpread2({
  month: 'numeric',
  day: 'numeric',
  hour: 'numeric',
  minute: 'numeric'
}, date_time_base));
const noYearDateTimeWithSecondFormatter = new Intl.DateTimeFormat(undefined, _objectSpread2({
  month: 'numeric',
  day: 'numeric',
  hour: 'numeric',
  minute: 'numeric',
  second: 'numeric'
}, date_time_base));
let DateTime = DateTime_1 = class DateTime {
  absolute(hisTime, withSecond = false, nowTime = Date.now()) {
    const his = new Date(hisTime);
    const now = new Date(nowTime);
    if (his.getFullYear() === now.getFullYear()) {
      if (his.getMonth() === now.getMonth() && his.getDate() === now.getDate()) {
        return `今天 ${(withSecond ? timeWithSecondFormatter : timeFormatter).format(his)}`;
      }
      return (withSecond ? noYearDateTimeWithSecondFormatter : noYearDateTimeFormatter).format(his);
    }
    return (withSecond ? dateTimeWithSecondFormatter : dateTimeFormatter).format(his);
  }
  relative(diffTime) {
    const nYear = diffTime / DateTime_1.year;
    const nMonth = diffTime / DateTime_1.month;
    const nDay = diffTime / DateTime_1.day;
    const nHour = diffTime / DateTime_1.hour;
    const nMin = diffTime / DateTime_1.minute;
    // Note: 一天前 不是 昨天,一年前 也不是 去年
    if (nYear >= 1) return `${Math.floor(nYear)} 年前`;else if (nMonth >= 1) return `${Math.floor(nMonth)} 个月前`;else if (nDay >= 1) return `${Math.floor(nDay)} 天前`;else if (nHour >= 1) return `${Math.floor(nHour)} 小时前`;else if (nMin >= 1) return `${Math.floor(nMin)} 分钟前`;else if (nMin >= 0) return '刚刚';else if (nMin > -1) return '马上';else if (nHour > -1) return `${Math.floor(-nMin)} 分钟后`;else if (nDay > -1) return `${Math.floor(-nHour)} 小时后`;else if (nMonth > -1) return `${Math.floor(-nDay)} 天后`;else if (nYear > -1) return `${Math.floor(-nMonth)} 个月后`;else return `${Math.floor(-nYear)} 年后`;
  }
  diff(hisTime = 0, withSecond = false, maxRelativeDiff = DateTime_1.day * 7, nowTime = Date.now()) {
    hisTime = typeof hisTime === 'number' ? hisTime : hisTime.getTime();
    nowTime = typeof nowTime === 'number' ? nowTime : nowTime.getTime();
    if (!hisTime) return 'N/A';
    const diffTime = nowTime - hisTime;
    if (diffTime >= maxRelativeDiff) {
      return this.absolute(hisTime, withSecond, nowTime);
    } else {
      return this.relative(diffTime);
    }
  }
};
DateTime.second = 1000;
DateTime.minute = DateTime_1.second * 60;
DateTime.hour = DateTime_1.minute * 60;
DateTime.day = DateTime_1.hour * 24;
DateTime.month = DateTime_1.day * (365.25 / 12);
DateTime.year = DateTime_1.month * 12;
DateTime = DateTime_1 = __decorate([Service()], DateTime);

// EXTERNAL MODULE: ./node_modules/.pnpm/[email protected][email protected]/node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[3].use[1]!./node_modules/.pnpm/[email protected][email protected][email protected][email protected]/node_modules/postcss-loader/dist/cjs.js??ruleSet[1].rules[3].use[2]!./node_modules/.pnpm/[email protected][email protected][email protected]/node_modules/less-loader/dist/cjs/index.js!./src/plugin/syringe/index.less
var syringe = __webpack_require__(2807);
;// ./src/plugin/syringe/index.less

      
      
      
      
      
      
      
      
      

var syringe_options = {};

syringe_options.styleTagTransform = (styleTagTransform_default()());
syringe_options.setAttributes = (setAttributesWithoutAttributes_default()());
syringe_options.insert = (insertBySelector_default()().bind)(null, ":root");
syringe_options.domAPI = (styleDomAPI_default()());
syringe_options.insertStyleElement = (insertStyleElement_default()());

var syringe_update = injectStylesIntoStyleTag_default()()(syringe/* default */.A, syringe_options);




       /* harmony default export */ const plugin_syringe = (syringe/* default */.A && syringe/* default */.A.locals ? syringe/* default */.A.locals : undefined);

;// ./src/plugin/syringe/index.ts








































function isElement(node, nodeName) {
  return node instanceof HTMLElement && (nodeName == null || node.localName === nodeName);
}
function isText(node) {
  return (node === null || node === void 0 ? void 0 : node.nodeType) === Node.TEXT_NODE;
}
function childNodes(node) {
  const iterator = document.createNodeIterator(node);
  const nodes = [];
  let childNode = iterator.nextNode();
  while (childNode) {
    nodes.push(childNode);
    childNode = iterator.nextNode();
  }
  return nodes;
}
const skipNodeName = new Set(['TITLE', 'LINK', 'META', 'HEAD', 'SCRIPT', 'BR', 'HR', 'STYLE', 'MARK']);
const ignoreClassName = `eh-syringe-ignore`;
const skipElementMatcher = `.${ignoreClassName}, .${ignoreClassName} *, [translate=no], [translate=no] :not([translate=yes])`;
// 该方案同时在 V2、V3 和 UserScript 生效
// 注意 actualCode 是在事件回调内部运行的,要挂载变量需要显式写 `window.varName = xxx`
function codePatch(window) {
  window.addOnloadHook = function (callback) {
    if (document.readyState !== 'loading') {
      setTimeout(callback, 0);
    } else {
      window.addEventListener('DOMContentLoaded', callback, {
        once: true
      });
    }
  };
  window.toggle_advsearch_pane = function toggle_advsearch_pane(b) {
    if (document.getElementById('advdiv').style.display === 'none') {
      window.show_advsearch_pane(b);
    } else {
      window.hide_advsearch_pane(b);
    }
  };
  window.toggle_filesearch_pane = function toggle_filesearch_pane(b) {
    if (document.getElementById('fsdiv').style.display === 'none') {
      window.show_filesearch_pane(b);
    } else {
      window.hide_filesearch_pane(b);
    }
  };
}
const WIKI_SEARCH_NS = ['loc', 'o', 'l', 'f', 'm', 'x', 'g', 'a', 'cos', 'p', 'c', 'r'];
const WIKI_NORMAL_TERM = new Set(['power', 'ban', 'bans', 'karma', 'banned', 'gallery', 'galleries', 'comment', 'comments', 'renaming', 'expunge', 'tag', 'archives', 'dawn', 'torrent', 'credits', 'bazaar', 'shrine', 'persona', 'contests', 'hath', 'deception', 'toplist', 'toplists', 'cosplay']);
class TagNodeRef {
  static attached(node) {
    const parentElement = isText(node) ? node.parentElement : node;
    if (!parentElement) return false;
    return parentElement.hasAttribute(this.ATTR);
  }
  static create(node, service) {
    var _node$textContent;
    const parentElement = isText(node) ? node.parentElement : node;
    if (!parentElement || parentElement.hasAttribute(this.ATTR)) {
      return true;
    }
    const aId = parentElement.id;
    const aTitle = parentElement.title;
    let fullKeyCandidate;
    if (aTitle) {
      let tag;
      if (aTitle.includes(':')) {
        tag = aTitle.split(':');
      } else if (service.isWiki) {
        if (aTitle.startsWith('series ')) {
          tag = ['parody', aTitle.slice('series '.length).trim()];
        } else if (aTitle.startsWith('character ')) {
          tag = ['character', aTitle.slice('character '.length).trim()];
        } else if (aTitle.startsWith('artist ')) {
          tag = ['artist', aTitle.slice('artist '.length).trim()];
        } else if (aTitle.startsWith('group ')) {
          tag = ['group', aTitle.slice('group '.length).trim()];
        } else {
          tag = ['', aTitle];
        }
      } else {
        tag = ['', aTitle];
      }
      const [namespace, key] = tag;
      fullKeyCandidate = service.tagging.fullKey({
        namespace,
        key
      });
    } else if (aId) {
      let id = aId;
      if (id.startsWith('ta_')) id = id.slice(3);
      const [namespace, key] = id.replace(/_/gi, ' ').split(':');
      fullKeyCandidate = key ? service.tagging.fullKey({
        namespace,
        key
      }) : service.tagging.fullKey({
        namespace: '',
        key: namespace
      });
    }
    if (!fullKeyCandidate) return false;
    const fullKey = fullKeyCandidate;
    const text = (_node$textContent = node.textContent) !== null && _node$textContent !== void 0 ? _node$textContent : '';
    return new TagNodeRef(parentElement, fullKey, text, service);
  }
  constructor(node, fullKey, original, service) {
    this.node = node;
    this.fullKey = fullKey;
    this.original = original;
    this.service = service;
    node.setAttribute(TagNodeRef.ATTR, this.original);
    node.setAttribute('lang', 'en');
    Object.defineProperty(node, 'ehs', {
      value: this
    });
    if (!node.hasAttribute('title')) {
      node.title = this.fullKey;
    }
  }
  get alive() {
    return !!this.node.parentElement;
  }
  translate(tagMap) {
    if (!this.alive) return true;
    if (!this.service.config.translateTag) {
      this.node.textContent = this.original;
      this.node.setAttribute('lang', 'en');
      return true;
    }
    if (!tagMap) {
      return false;
    }
    let value = tagMap[this.fullKey];
    if (!value && this.service.isWiki && !this.fullKey.includes(':')) {
      for (const ns of WIKI_SEARCH_NS) {
        value = tagMap[`${ns}:${this.fullKey}`];
        if (value) break;
      }
    }
    if (!value) {
      return false;
    }
    value = this.service.tagging.markImagesAndEmoji(value);
    if (this.original.includes(':')) {
      const originalNs = this.original.split(':')[0];
      if (!originalNs) value = `:${value}`;else value = `${this.service.tagging.ns(originalNs)}:${value}`;
    }
    this.node.innerHTML = value;
    this.node.setAttribute('lang', 'zh-hans');
    return true;
  }
}
TagNodeRef.ATTR = 'ehs-tag';
let Syringe = class Syringe {
  constructor(storage, uiTranslation, logger, messaging, tagging, time) {
    this.storage = storage;
    this.uiTranslation = uiTranslation;
    this.logger = logger;
    this.messaging = messaging;
    this.tagging = tagging;
    this.time = time;
    this.tags = [];
    this.documentEnd = false;
    this.config = this.getAndInitConfig();
    this.uiData = this.uiTranslation.get();
    this.isEx = isEx(location.hostname);
    this.isEh = isEh(location.hostname);
    this.isRepo = isRepo(location.hostname);
    this.isWiki = isWiki(location.hostname);
    storage.async.on('config', (k, ov, nv) => {
      if (nv) this.updateConfig(nv);
    });
    this.init();
  }
  translateTags(tagMap) {
    const tags = this.tags.filter(t => t.alive);
    this.tags = tags;
    tagMap !== null && tagMap !== void 0 ? tagMap : tagMap = this.tagMap;
    tagMap !== null && tagMap !== void 0 ? tagMap : tagMap = this.storage.get('databaseMap');
    this.tagMap = tagMap;
    tags.forEach(t => t.translate(tagMap));
  }
  updateConfig(config) {
    this.config = config;
    this.storage.set('config', config);
    this.setRootAttrs();
    this.translateTags();
  }
  getAndInitConfig() {
    this.storage.async.get('config').then(conf => {
      this.updateConfig(conf);
    }).catch(this.logger.error);
    return this.storage.get('config');
  }
  codePatch() {
    const {
      documentElement
    } = document;
    documentElement.setAttribute('onreset', `;(${codePatch.toString()})(window); return false;`);
    documentElement.dispatchEvent(new Event('reset'));
    documentElement.removeAttribute('onreset');
  }
  onObserved(mutations) {
    for (const mutation of mutations) {
      if (mutation.type === 'attributes') {
        this.translateNode(mutation.target);
        continue;
      }
      for (const node of mutation.addedNodes) {
        this.translateNode(node);
        if (this.documentEnd) {
          const nodes = childNodes(node);
          for (const childNode of nodes) {
            this.translateNode(childNode);
          }
        }
      }
    }
  }
  init() {
    ready(() => {
      var _this$observer$takeRe, _this$observer;
      this.onObserved((_this$observer$takeRe = (_this$observer = this.observer) === null || _this$observer === void 0 ? void 0 : _this$observer.takeRecords()) !== null && _this$observer$takeRe !== void 0 ? _this$observer$takeRe : []);
      this.codePatch();
      this.documentEnd = true;
    });
    this.setRootAttrs();
    const {
      body
    } = document;
    if (body) {
      const nodes = childNodes(body);
      this.logger.warn(`有 ${nodes.length} 个节点在注入前加载`, nodes);
      for (const node of nodes) {
        this.translateNode(node);
      }
    } else {
      this.logger.debug(`没有节点在注入前加载`);
    }
    this.observer = new MutationObserver(mutations => this.onObserved(mutations));
    this.observer.observe(document.documentElement, {
      attributeFilter: ['title', 'placeholder', 'label', 'value'],
      childList: true,
      subtree: true
    });
    this.updateTagMap();
    this.messaging.on('tag-updated', () => this.updateTagMap());
  }
  updateTagMap() {
    if (this.updatingTagMap) return;
    let updatingTagMap;
    updatingTagMap = (async () => {
      const timer = this.logger.time('获取替换数据');
      try {
        const currentSha = this.storage.get('databaseSha');
        const data = await this.messaging.emit('get-tag-map', {
          ifNotMatch: currentSha
        });
        if (data.map) {
          const tagMap = {};
          for (const key in data.map) {
            tagMap[key] = data.map[key].name;
          }
          this.translateTags(tagMap);
          this.storage.set('databaseMap', tagMap);
          this.storage.set('databaseSha', data.sha);
          this.logger.log('替换数据已更新', data.sha);
        } else {
          this.logger.log('替换数据已经最新', data.sha);
        }
      } catch (ex) {
        this.logger.error(ex);
      } finally {
        timer.end();
        if (this.updatingTagMap === updatingTagMap) {
          this.updatingTagMap = undefined;
          updatingTagMap = undefined;
        }
      }
    })();
    this.updatingTagMap = updatingTagMap;
  }
  setRootAttrs() {
    const node = document.documentElement;
    if (!node) return;
    node.classList.remove(...[...node.classList.values()].filter(k => k.startsWith('ehs')));
    node.classList.add('ehs-injected');
    if (this.isEx) {
      node.classList.add('ehs-ex');
    } else if (this.isEh) {
      node.classList.add('ehs-eh');
    } else if (this.isRepo) {
      node.classList.add('ehs-repo');
    } else if (this.isWiki) {
      node.classList.add('ehs-wiki');
    } else if ('matchMedia' in window) {
      const matchesDarkTheme = window.matchMedia('(prefers-color-scheme: dark)').matches;
      if (matchesDarkTheme) {
        node.classList.add('ehs-ex');
      } else {
        node.classList.add('ehs-eh');
      }
    }
    if (!this.config.showIcon) {
      node.classList.add('ehs-hide-icon');
    }
    if (this.config.translateTag) {
      node.classList.add('ehs-translate-tag');
    }
    if (this.config.translateUi) {
      node.setAttribute('lang', 'zh-hans');
    } else {
      node.setAttribute('lang', 'en');
    }
    node.classList.add(`ehs-image-level-${this.config.introduceImageLevel}`);
  }
  translateNode(node) {
    var _node$parentElement;
    const {
      nodeName
    } = node;
    if (!nodeName || skipNodeName.has(nodeName)) return;
    if (node.parentNode && skipNodeName.has(node.parentNode.nodeName)) return;
    if (isElement(node) ? node.matches(skipElementMatcher) : (_node$parentElement = node.parentElement) === null || _node$parentElement === void 0 ? void 0 : _node$parentElement.matches(skipElementMatcher)) {
      return;
    }
    const handled = this.translateTag(node);
    /* tag 处理过的ui不再处理*/
    if (!handled && (this.config.translateUi || this.config.translateTimestamp)) {
      this.translateUi(node);
    }
  }
  isTagContainer(node) {
    if (!node) {
      return false;
    }
    if (isElement(node, 'a') && node.href.startsWith('https://e-hentai.org/tag/')) {
      var _node$textContent2;
      const url = new URL(node.href);
      const urlTag = decodeURIComponent(url.pathname.split('/').pop()).replace(/_/g, ' ').replace(/\+/g, ' ');
      if (urlTag !== node.textContent) {
        return false;
      }
      node.title = (_node$textContent2 = node.textContent) !== null && _node$textContent2 !== void 0 ? _node$textContent2 : '';
      return true;
    }
    if (this.isWiki && (isElement(node, 'h1') && node.id === 'firstHeading' || isElement(node, 'a') && new URL(node.href).hostname === 'ehwiki.org')) {
      if (node.className.startsWith('oo-ui-')) {
        // 不翻译搜索框
        return false;
      }
      const tag = (node.textContent || '').replace(/[\s\u200E\u200F]+/g, ' ').trim().toLowerCase();
      if (!this.tagging.isTagName(tag) || WIKI_NORMAL_TERM.has(tag)) {
        return false;
      }
      if (node.id === 'firstHeading') {
        node.title = tag;
        return true;
      }
      if (!('href' in node)) {
        return false;
      }
      const isWikiLink =
      // wiki 内部链接
      /^https?:\/\/ehwiki.org\/wiki\/[-+._A-Za-z0-9]+($|\?)/.test(node.href) ||
      // 指向不存在页面的链接
      node.classList.contains('new') && /^https?:\/\/ehwiki.org\/action\/edit\/[-+._A-Za-z0-9]+($|\?)/.test(node.href);
      if (!isWikiLink) return false;
      const url = new URL(node.href);
      const urlTag = decodeURIComponent(url.pathname.split('/').pop()).replace(/_/g, ' ').replace(/\+/g, ' ').toLowerCase();
      if (urlTag !== tag) {
        return false;
      }
      node.title = tag;
      return true;
    }
    return node.classList.contains('gt') || node.classList.contains('gtl') || node.classList.contains('gtw');
  }
  translateTag(node) {
    const parentElement = node.parentElement;
    let ref;
    if ((parentElement === null || parentElement === void 0 ? void 0 : parentElement.id) === 'tagname_newtagcomplete-list' && isElement(node)) {
      // 翻译我的标签提示
      if (node.querySelector('.ehs-new-tag-complete-translate')) return false;
      const elTrans = document.createElement('span');
      const tag = node.getAttribute('data-value');
      if (!tag) return false;
      elTrans.id = tag;
      elTrans.classList.add('ehs-new-tag-complete-translate');
      node.appendChild(elTrans);
      ref = TagNodeRef.create(elTrans, this);
    } else if (!isText(node) || !parentElement) {
      return false;
    } else if (TagNodeRef.attached(node)) {
      return true;
    } else if (parentElement.nodeName === 'MARK' || parentElement.classList.contains('auto-complete-text')) {
      // 不翻译搜索提示的内容
      return true;
    } else if (!this.isTagContainer(parentElement) && !this.isTagContainer(parentElement === null || parentElement === void 0 ? void 0 : parentElement.parentElement)) {
      // 标签只翻译已知的位置
      return false;
    } else {
      ref = TagNodeRef.create(node, this);
    }
    if (typeof ref == 'boolean') return ref;
    ref.translate(this.tagMap);
    this.tags.push(ref);
    return true;
  }
  translateUiText(text) {
    let repText = text;
    if (this.config.translateUi) {
      const plain = this.uiData.plainReplacements.get(text);
      if (plain != null) return plain;
      for (const [k, v] of this.uiData.regexReplacements) {
        // eslint-disable-next-line @typescript-eslint/no-explicit-any
        repText = repText.replace(k, v);
      }
    }
    if (this.config.translateTimestamp &&
    // 快速判断是否有可能包含时间戳
    repText.includes(':')) {
      repText = repText.replace(/(\d\d\d\d-[0-1][0-9]-[0-3][0-9] [0-2][0-9]:[0-5][0-9](:[0-5][0-9])?)( UTC)?/g, ($, t, seconds) => {
        const date = Date.parse(t + 'Z');
        if (!date) return $;
        if (seconds) return this.time.absolute(date, true);
        return this.time.diff(date, undefined, DateTime.hour);
      });
      repText = repText.replace(/([0-3][0-9]|[1-9]) (January|February|March|April|May|June|July|August|September|October|November|December) (\d\d\d\d), ([0-2][0-9]:[0-5][0-9])( UTC)?/gi, ($, d, m, y, t) => {
        const date = Date.parse(`${d} ${m} ${y}, ${t} UTC`);
        if (!date) return $;
        return this.time.diff(date, undefined, DateTime.hour);
      });
      repText = repText.replace(/(Monday|Tuesday|Wednesday|Thursday|Friday|Saturday|Sunday), ([0-3][0-9]|[1-9])(st|nd|rd|th) of (January|February|March|April|May|June|July|August|September|October|November|December) (\d\d\d\d), ([0-2][0-9]:[0-5][0-9])( UTC)?/gi, ($, _w, d, _do, m, y, t) => {
        const date = Date.parse(`${d} ${m} ${y}, ${t} UTC`);
        if (!date) return $;
        return this.time.diff(date, undefined, DateTime.hour);
      });
    }
    if (repText !== text) return repText;
    return undefined;
  }
  translateUi(node) {
    var _node$parentElement2;
    if (isElement(node) && node.title && typeof node.title == 'string') {
      const translation = this.translateUiText(node.title);
      if (translation != null) {
        node.title = translation;
      }
    }
    if (isText(node)) {
      var _node$textContent3;
      const text = (_node$textContent3 = node.textContent) !== null && _node$textContent3 !== void 0 ? _node$textContent3 : '';
      const translation = this.translateUiText(text);
      if (translation != null) {
        node.textContent = translation;
      }
      return;
    }
    if (isElement(node, 'input') && (node.type === 'submit' || node.type === 'button' || node.type === 'reset')) {
      // 将 input[type=submit] 等按钮替换为 button[ehs-input],避免 value 属性被翻译导致提交内容错误
      const translation = this.translateUiText(node.value);
      if (translation != null) {
        const button = document.createElement('button');
        for (const attr of node.attributes) {
          button.setAttribute(attr.name, attr.value);
        }
        button.setAttribute('ehs-input', '');
        button.textContent = translation;
        node.replaceWith(button);
        // 新元素的事件派发至原元素,兼容 MEMS
        button.addEventListener('click', e => {
          if (!node.dispatchEvent(new MouseEvent('click', e))) {
            e.preventDefault();
          }
        });
      }
      return;
    }
    if (isElement(node, 'button') && node.hasAttribute('ehs-input')) {
      // 响应 button[ehs-input] 的 value 变更
      const translation = this.translateUiText(node.value);
      node.textContent = translation !== null && translation !== void 0 ? translation : node.value;
      return;
    }
    if ((isElement(node, 'input') || isElement(node, 'textarea')) && node.placeholder) {
      const translation = this.translateUiText(node.placeholder);
      if (translation != null) {
        node.placeholder = translation;
      }
      return;
    }
    if (isElement(node, 'optgroup')) {
      const translation = this.translateUiText(node.label);
      if (translation != null) {
        node.label = translation;
      }
      return;
    }
    // 导航链接,一体化处理,不再处理文本节点(原文使用子元素和媒体查询实现页面宽度改变时文本自动更改为缩写)
    if (isElement(node, 'a') && (node === null || node === void 0 || (_node$parentElement2 = node.parentElement) === null || _node$parentElement2 === void 0 || (_node$parentElement2 = _node$parentElement2.parentElement) === null || _node$parentElement2 === void 0 ? void 0 : _node$parentElement2.id) === 'nb') {
      var _node$textContent4;
      const translation = this.translateUiText((_node$textContent4 = node.textContent) !== null && _node$textContent4 !== void 0 ? _node$textContent4 : '');
      if (translation != null) {
        node.textContent = translation;
      }
    }
    if (isElement(node, 'div') && node.className === 'd' && isElement(node.parentElement, 'body')) {
      // 兼容 ExResurrect
      this.cloneAndPrependElement(node);
    }
    if (isElement(node, 'select') && node.matches('.searchnav > div > :scope')) {
      // 兼容 MEMS
      this.cloneAndPrependElement(node);
    }
    if (isElement(node, 'p') && node.classList.contains('gpc')) {
      /* 兼容熊猫书签,单独处理页码,保留原页码 Element,防止熊猫书签取不到报错 */
      this.cloneAndPrependElement(node);
    }
    if (isElement(node, 'div') && node.id === 'gdd') {
      /* E-Hentai-Downloader 兼容处理 */
      this.cloneAndPrependElement(node.firstElementChild);
    }
  }
  cloneAndPrependElement(el, cloneNode) {
    const clone = cloneNode ? cloneNode(el) : el.cloneNode(true);
    clone.classList.add(ignoreClassName);
    clone.setAttribute('hidden', '');
    if (clone.id) clone.id = `ehs-clone-${clone.id}`;
    clone.querySelectorAll('[id]').forEach(node => {
      node.id = `ehs-clone-${node.id}`;
    });
    el.before(clone);
    return clone;
  }
};
Syringe = __decorate([Service(), __metadata("design:paramtypes", [SyncStorage, UiTranslation, Logger, messaging_Messaging, Tagging, DateTime])], Syringe);

;// ./src/plugin/auto-update.ts






let AutoUpdate = class AutoUpdate {
  constructor(logger, storage, messaging) {
    this.logger = logger;
    this.storage = storage;
    this.messaging = messaging;
    this.init().catch(logger.error);
  }
  async init() {
    this.messaging.emit('check-extension', undefined, true).catch(this.logger.error);
    const conf = await this.storage.get('config');
    if (!conf.autoUpdate) return;
    this.messaging.emit('update-database', {
      force: false
    }).catch(this.logger.error);
  }
};
AutoUpdate = __decorate([Service(), __metadata("design:paramtypes", [Logger, Storage, messaging_Messaging])], AutoUpdate);

;// ./node_modules/.pnpm/[email protected]/node_modules/core-js/modules/es.array.flat-map.js
es_array_flat_map_namespaceFn();

;// ./node_modules/.pnpm/[email protected]/node_modules/core-js/modules/es.array.unscopables.flat-map.js
es_array_unscopables_flat_map_namespaceFn();

;// ./node_modules/.pnpm/[email protected]/node_modules/core-js/modules/es.iterator.flat-map.js
es_iterator_flat_map_namespaceFn();

;// ./node_modules/.pnpm/[email protected]/node_modules/core-js/modules/es.iterator.some.js
es_iterator_some_namespaceFn();

// EXTERNAL MODULE: ./node_modules/.pnpm/[email protected][email protected]/node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[3].use[1]!./node_modules/.pnpm/[email protected][email protected][email protected][email protected]/node_modules/postcss-loader/dist/cjs.js??ruleSet[1].rules[3].use[2]!./node_modules/.pnpm/[email protected][email protected][email protected]/node_modules/less-loader/dist/cjs/index.js!./src/providers/user-script/menu.less
var menu = __webpack_require__(2719);
;// ./src/providers/user-script/menu.less

      
      
      
      
      
      
      
      
      

var menu_options = {};

menu_options.styleTagTransform = (styleTagTransform_default()());
menu_options.setAttributes = (setAttributesWithoutAttributes_default()());
menu_options.insert = (insertBySelector_default()().bind)(null, ":root");
menu_options.domAPI = (styleDomAPI_default()());
menu_options.insertStyleElement = (insertStyleElement_default()());

var menu_update = injectStylesIntoStyleTag_default()()(menu/* default */.A, menu_options);




       /* harmony default export */ const user_script_menu = (menu/* default */.A && menu/* default */.A.locals ? menu/* default */.A.locals : undefined);

;// ./src/providers/user-script/menu.ts






















function matchesUrlPatterns(url, patterns) {
  return patterns.some(pattern => {
    const source = pattern.split('*').map(part => part.replace(/[.*+?^${}()|[\]\\]/g, '\\$&')).join('.*');
    return new RegExp('^' + source + '$').test(url);
  });
}
let MenuProvider = class MenuProvider {
  constructor() {
    this.menus = [];
  }
  handleEvent(ev) {
    var _this$closeMenu, _menu$querySelector;
    (_this$closeMenu = this.closeMenu) === null || _this$closeMenu === void 0 || _this$closeMenu.call(this);
    if (!(ev.target instanceof Element)) return;
    const image = ev.target.closest('img');
    const link = ev.target.closest('a[href]');
    const items = this.menus.flatMap(info => {
      const urls = [...(info.contexts.includes('image') && image ? [image.currentSrc || image.src] : []), ...(info.contexts.includes('link') && link instanceof HTMLAnchorElement ? [link.href] : [])];
      const url = urls.find(url => matchesUrlPatterns(url, info.targetUrlPatterns));
      return url ? [{
        info,
        url
      }] : [];
    });
    if (items.length === 0) return;
    ev.preventDefault();
    const menu = document.createElement('div');
    menu.className = 'ehs-context-menu';
    menu.setAttribute('role', 'menu');
    const controller = new AbortController();
    const close = () => {
      menu.remove();
      controller.abort();
      this.closeMenu = undefined;
    };
    this.closeMenu = close;
    for (const {
      info,
      url
    } of items) {
      const button = document.createElement('button');
      button.type = 'button';
      button.textContent = info.title;
      button.setAttribute('role', 'menuitem');
      button.addEventListener('click', () => {
        close();
        info.onclick({
          url
        });
      });
      menu.append(button);
    }
    document.body.append(menu);
    menu.style.left = `${Math.max(0, Math.min(ev.clientX, window.innerWidth - menu.offsetWidth))}px`;
    menu.style.top = `${Math.max(0, Math.min(ev.clientY, window.innerHeight - menu.offsetHeight))}px`;
    const options = {
      capture: true,
      signal: controller.signal
    };
    document.addEventListener('pointerdown', event => {
      if (!(event.target instanceof Node) || !menu.contains(event.target)) close();
    }, options);
    document.addEventListener('keydown', event => {
      if (event.key === 'Escape') close();
    }, options);
    document.addEventListener('scroll', close, options);
    window.addEventListener('blur', event => {
      if (event.target === window) close();
    }, options);
    (_menu$querySelector = menu.querySelector('button')) === null || _menu$querySelector === void 0 || _menu$querySelector.focus({
      preventScroll: true
    });
  }
  createMenu(info) {
    if (!matchesUrlPatterns(location.href, info.documentUrlPatterns)) {
      return;
    }
    document.addEventListener('contextmenu', this);
    this.menus.push(info);
  }
};
MenuProvider = __decorate([Service()], MenuProvider);
const provider = services_Container.get(MenuProvider);
const createMenu = provider.createMenu.bind(provider);
;// ./src/providers/user-script/utils.ts
const _notification = typeof GM_notification == 'function' ? GM_notification : function (detailsOrText, ondoneOrTitle, image, onclick) {
  var _notification$title, _notification$text, _notification$onclick, _notification$ondone;
  const notification = typeof detailsOrText == 'object' ? detailsOrText : {
    text: String(detailsOrText),
    image: image,
    onclick: onclick,
    highlight: false
  };
  notification.id = `${Math.random() * 1000000000}`;
  if (typeof ondoneOrTitle == 'function') {
    notification.ondone = ondoneOrTitle;
  } else if (ondoneOrTitle) {
    notification.title = ondoneOrTitle;
  }
  alert(`${(_notification$title = notification.title) !== null && _notification$title !== void 0 ? _notification$title : ''}\n\n${(_notification$text = notification.text) !== null && _notification$text !== void 0 ? _notification$text : ''}`);
  (_notification$onclick = notification.onclick) === null || _notification$onclick === void 0 || _notification$onclick.call(notification);
  (_notification$ondone = notification.ondone) === null || _notification$ondone === void 0 || _notification$ondone.call(notification, true);
};
const _openInTab = typeof GM_openInTab == 'function' ? GM_openInTab : function (url) {
  const opened = window.open(url);
  return {
    close() {
      var _this$onclose;
      opened === null || opened === void 0 || opened.close();
      (_this$onclose = this.onclose) === null || _this$onclose === void 0 || _this$onclose.call(this);
      this.closed = true;
    },
    closed: false
  };
};
function openInTab(url) {
  _openInTab(url, {
    active: true,
    insert: true,
    setParent: true
  });
}
function sendNotification(info) {
  _notification({
    text: info.message,
    title: info.title,
    onclick: info.action
  });
}
function setBadge(info) {
  const badge = document.getElementById('eh-syringe-popup-badge');
  if (badge) {
    if (info.text != null) {
      badge.innerText = info.text;
      badge.style.visibility = info.text ? 'visible' : 'hidden';
    }
    if (info.background != null) {
      badge.style.background = info.background;
    }
  }
}
;// ./src/plugin/tag-context-menu.ts









let TagContextMenu = class TagContextMenu {
  constructor(tagging) {
    this.tagging = tagging;
    this.documentUrlPatterns = ['*://exhentai.org/*', '*://exhentai55ld2wyap5juskbm67czulomrouspdacjamjeloj7ugjbsad.onion/*', '*://e-hentai.org/*', '*://*.exhentai.org/*', '*://*.exhentai55ld2wyap5juskbm67czulomrouspdacjamjeloj7ugjbsad.onion/*', '*://*.e-hentai.org/*'];
    this.title = '提交标签翻译';
    this.targetUrlPatterns = ['*://exhentai.org/tag/*', '*://exhentai55ld2wyap5juskbm67czulomrouspdacjamjeloj7ugjbsad.onion/tag/*', '*://e-hentai.org/tag/*', '*://*.exhentai.org/tag/*', '*://*.exhentai55ld2wyap5juskbm67czulomrouspdacjamjeloj7ugjbsad.onion/tag/*', '*://*.e-hentai.org/tag/*'];
    this.contexts = ['link'];
    this.onclick = info => {
      var _info$url, _info$url$split$pop$r, _info$url$split$pop, _seg$pop;
      if (!((_info$url = info.url) !== null && _info$url !== void 0 && _info$url.includes('/tag/'))) {
        return;
      }
      const seg = (_info$url$split$pop$r = (_info$url$split$pop = info.url.split('/').pop()) === null || _info$url$split$pop === void 0 ? void 0 : _info$url$split$pop.replace(/\+/g, ' ').split(':')) !== null && _info$url$split$pop$r !== void 0 ? _info$url$split$pop$r : [];
      const namespace = seg.length <= 1 ? 'temp' : seg[0];
      const key = (_seg$pop = seg.pop()) !== null && _seg$pop !== void 0 ? _seg$pop : '';
      openInTab(this.tagging.editorUrl({
        namespace,
        key
      }));
    };
    this.init();
  }
  init() {
    createMenu(this);
  }
};
TagContextMenu = __decorate([Service(), __metadata("design:paramtypes", [Tagging])], TagContextMenu);

;// ./node_modules/.pnpm/[email protected]/node_modules/core-js/modules/es.number.to-fixed.js
es_number_to_fixed_namespaceFn();

;// ./node_modules/.pnpm/[email protected]/node_modules/core-js/modules/es.array-buffer.constructor.js
es_array_buffer_constructor_namespaceFn();

;// ./node_modules/.pnpm/[email protected]/node_modules/core-js/modules/es.array-buffer.slice.js
es_array_buffer_slice_namespaceFn();

;// ./node_modules/.pnpm/[email protected]/node_modules/core-js/modules/es.array-buffer.detached.js
es_array_buffer_detached_namespaceFn();

;// ./node_modules/.pnpm/[email protected]/node_modules/core-js/modules/es.array-buffer.transfer.js
es_array_buffer_transfer_namespaceFn();

;// ./node_modules/.pnpm/[email protected]/node_modules/core-js/modules/es.array-buffer.transfer-to-fixed-length.js
es_array_buffer_transfer_to_fixed_length_namespaceFn();

;// ./node_modules/.pnpm/[email protected]/node_modules/core-js/modules/es.typed-array.uint8-array.js
es_typed_array_uint8_array_namespaceFn();

;// ./node_modules/.pnpm/[email protected]/node_modules/core-js/modules/es.typed-array.at.js
es_typed_array_at_namespaceFn();

;// ./node_modules/.pnpm/[email protected]/node_modules/core-js/modules/es.typed-array.fill.js
es_typed_array_fill_namespaceFn();

;// ./node_modules/.pnpm/[email protected]/node_modules/core-js/modules/es.typed-array.find-last.js
es_typed_array_find_last_namespaceFn();

;// ./node_modules/.pnpm/[email protected]/node_modules/core-js/modules/es.typed-array.find-last-index.js
es_typed_array_find_last_index_namespaceFn();

;// ./node_modules/.pnpm/[email protected]/node_modules/core-js/modules/es.typed-array.set.js
es_typed_array_set_namespaceFn();

;// ./node_modules/.pnpm/[email protected]/node_modules/core-js/modules/es.typed-array.sort.js
es_typed_array_sort_namespaceFn();

;// ./node_modules/.pnpm/[email protected]/node_modules/core-js/modules/es.typed-array.to-locale-string.js
es_typed_array_to_locale_string_namespaceFn();

;// ./node_modules/.pnpm/[email protected]/node_modules/core-js/modules/es.typed-array.to-reversed.js
es_typed_array_to_reversed_namespaceFn();

;// ./node_modules/.pnpm/[email protected]/node_modules/core-js/modules/es.typed-array.to-sorted.js
es_typed_array_to_sorted_namespaceFn();

;// ./node_modules/.pnpm/[email protected]/node_modules/core-js/modules/es.typed-array.with.js
es_typed_array_with_namespaceFn();

;// ./node_modules/.pnpm/[email protected]/node_modules/core-js/modules/es.uint8-array.set-from-base64.js
es_uint8_array_set_from_base64_namespaceFn();

;// ./node_modules/.pnpm/[email protected]/node_modules/core-js/modules/es.uint8-array.set-from-hex.js
es_uint8_array_set_from_hex_namespaceFn();

;// ./node_modules/.pnpm/[email protected]/node_modules/core-js/modules/es.uint8-array.to-base64.js
es_uint8_array_to_base64_namespaceFn();

;// ./node_modules/.pnpm/[email protected]/node_modules/core-js/modules/es.uint8-array.to-hex.js
es_uint8_array_to_hex_namespaceFn();

;// ./src/services/http.ts




























let Http = class Http {
  async json(url, method = 'GET') {
    const res = await fetch(url, {
      method
    });
    return await res.json();
  }
  async download(url, method = 'GET', progress, responseType = 'arraybuffer') {
    const res = await fetch(url, {
      method,
      redirect: 'follow',
      cache: 'no-cache'
    });
    if (res.status >= 300 || !res.body) {
      throw new Error(`${method} ${url} ${res.statusText} (${res.status})`);
    }
    const dataCache = [];
    let receivedSize = 0;
    const reader = res.body.getReader();
    for (;;) {
      const data = await reader.read();
      if (data.done) break;
      dataCache.push(data.value);
      receivedSize += data.value.byteLength;
      progress === null || progress === void 0 || progress(receivedSize);
    }
    const data = new Uint8Array(receivedSize);
    let pos = 0;
    for (const piece of dataCache) {
      data.set(piece, pos);
      pos += piece.byteLength;
    }
    if (responseType === 'arraybuffer') {
      return data.buffer;
    }
    return JSON.parse(new TextDecoder().decode(data));
  }
};
Http = __decorate([Service()], Http);

;// ./src/services/database.ts
























let Database = class Database {
  constructor(http, storage, logger) {
    this.http = http;
    this.storage = storage;
    this.logger = logger;
  }
  async getLatestVersion() {
    const githubDownloadUrl = 'https://ehtt.fly.dev/octokit/release'; // 'https://api.github.com/repos/ehtagtranslation/Database/releases/latest';
    const info = await this.http.json(githubDownloadUrl);
    if (!('target_commitish' in info)) {
      if (typeof info.message != 'string') {
        throw new Error('响应有误');
      }
      if (info.message.startsWith('API rate limit exceeded')) {
        throw new Error('GitHub API 调用次数超过限制,请稍后再试');
      }
      throw new Error(info.message);
    }
    return info;
  }
  dataUrls(version) {
    const dataJson = /<!--([^]+?)-->/gi.exec(version.body);
    if (!dataJson) throw new Error(`GitHub 发布数据无法解析,可能需要更新插件版本`);
    try {
      const data = JSON.parse(dataJson[1]);
      const sha = data.mirror;
      if (typeof sha != 'string') throw new Error();
      return [`https://fastly.jsdelivr.net/gh/EhTagTranslation/Database@${sha}/db.html.json`, `https://gcore.jsdelivr.net/gh/EhTagTranslation/Database@${sha}/db.html.json`, `https://cdn.jsdelivr.net/gh/EhTagTranslation/Database@${sha}/db.html.json`, `https://testingcf.jsdelivr.net/gh/EhTagTranslation/Database@${sha}/db.html.json`, `https://test1.jsdelivr.net/gh/EhTagTranslation/Database@${sha}/db.html.json`, `https://originfastly.jsdelivr.net/gh/EhTagTranslation/Database@${sha}/db.html.json`, `https://cdn.statically.io/gh/EhTagTranslation/Database/${sha}/db.html.json`, `https://rawcdn.githack.com/EhTagTranslation/Database/${sha}/db.html.json`];
    } catch (_unused) {
      throw new Error(`GitHub 发布数据无法解析,可能需要更新插件版本`);
    }
  }
  async fetchData(version, total, url, progress) {
    try {
      var _result$head;
      const result = await this.http.download(url, 'GET', loaded => {
        if (total > 0) progress === null || progress === void 0 || progress(loaded / total);else progress === null || progress === void 0 || progress(0);
      }, 'json');
      if (!result || !Array.isArray(result.data) || result.data.some(item => item.data == null || typeof item.data !== 'object')) {
        throw new Error(`下载的数据格式不正确: ${JSON.stringify(result)}`);
      }
      if (version && (result === null || result === void 0 || (_result$head = result.head) === null || _result$head === void 0 ? void 0 : _result$head.sha) !== version.target_commitish) {
        var _result$head2;
        throw new Error(`版本不匹配: ${result === null || result === void 0 || (_result$head2 = result.head) === null || _result$head2 === void 0 ? void 0 : _result$head2.sha} !== ${version.target_commitish}`);
      }
      this.logger.log(`从 ${url} 下载成功`);
      return result;
    } catch (ex) {
      this.logger.warn(`尝试从 ${url} 下载失败`, ex);
      throw new Error(`从 ${url} 下载失败: ${ex.message || String(ex)}`);
    }
  }
  async getOverride() {
    var _config$overrideDbUrl;
    const config = await this.storage.get('config');
    const url = config === null || config === void 0 || (_config$overrideDbUrl = config.overrideDbUrl) === null || _config$overrideDbUrl === void 0 ? void 0 : _config$overrideDbUrl.trim();
    if (!url) {
      this.logger.debug(`未配置外部数据库 URL`);
      return undefined;
    }
    try {
      const u = new URL(url);
      if (u.protocol !== 'http:' && u.protocol !== 'https:') {
        throw new Error('不支持的协议');
      }
    } catch (ex) {
      this.logger.error(`无效的外部数据库 URL ${url}:${ex.message || String(ex)}`);
    }
    this.logger.debug(`从 URL ${url} 加载外部数据库`);
    try {
      return await this.fetchData(undefined, 0, url, undefined);
    } catch (ex) {
      this.logger.error(`加载外部数据库失败:${ex.message || String(ex)}`);
      return undefined;
    }
  }
  async getData(version, progress) {
    const urls = this.dataUrls(version);
    const asset = version.assets.find(asset => asset.name === 'db.html.json');
    const total = asset != null ? asset.size : 0;
    const errors = [];
    const override = this.getOverride();
    let base;
    for (const url of urls) {
      try {
        base = await this.fetchData(version, total, url, progress);
        break;
      } catch (ex) {
        errors.push(ex);
      }
    }
    if (!base) {
      if (errors.length === 0) throw new Error('没有获取到有效的文件');
      const e = errors[errors.length - 1];
      Object.defineProperty(e, 'errors', {
        value: errors,
        enumerable: true
      });
      throw e;
    }
    return {
      base,
      override: await override
    };
  }
};
Database = __decorate([Service(), __metadata("design:paramtypes", [Http, Storage, Logger])], Database);

;// ./src/services/badge-loading.ts




let BadgeLoading = class BadgeLoading {
  constructor(logger) {
    this.logger = logger;
    this.loadingStrArr = [[''], ['⢎⠀', '⢆⡀', '⢄⡠', '⢀⡰', '⠀⡱', '⠈⠱', '⠊⠑', '⠎⠁'], ['    ', '·   ', ' ·  ', '  · ', '   ·']];
    this.frame = 0;
    this.index = 0;
    this.interval = undefined;
    this.text = '';
    this.loadingString = [''];
    this.color = '';
    this.extname = 'EhSyringe';
  }
  setColor(color = '#4A90E2') {
    setBadge({
      background: color
    });
  }
  setText(text) {
    setBadge({
      text
    });
  }
  set(text, color, loading = 0) {
    if (this.index !== loading) {
      this.index = loading;
      this.loadingString = this.loadingStrArr[this.index] || [''];
      this.frame = 0;
    }
    this.text = text;
    this.setColor(color);
    if (loading) {
      var _this$interval;
      (_this$interval = this.interval) !== null && _this$interval !== void 0 ? _this$interval : this.interval = setInterval(() => {
        this.setText(`${this.text}${this.loadingString[this.frame] || ''}`);
        this.frame++;
        if (!this.loadingString[this.frame]) {
          this.frame = 0;
        }
      }, 100);
    } else {
      this.frame = 0;
      if (this.interval) {
        clearInterval(this.interval);
        this.interval = undefined;
      }
      this.setText(this.text);
    }
  }
};
BadgeLoading = __decorate([Service(), __metadata("design:paramtypes", [Logger])], BadgeLoading);

;// ./src/utils/promise.ts

function sleep(ms) {
  return new Promise(resolve => setTimeout(resolve, ms));
}
;// ./src/utils/index.ts

;// ./src/plugin/database-updater.ts














const database_updater_defaultStatus = {
  run: false,
  progress: 0,
  info: '',
  complete: false,
  error: false
};
let DatabaseUpdater = class DatabaseUpdater {
  constructor(logger, messaging, storage, database, badge) {
    this.logger = logger;
    this.messaging = messaging;
    this.storage = storage;
    this.database = database;
    this.badge = badge;
    this._lastCheckData = {
      sha: '',
      check: 0,
      githubRelease: null
    };
    this.downloadStatus = _objectSpread2({}, database_updater_defaultStatus);
    this.checked = false;
    this.messaging.on('update-database', async ({
      force,
      recheck
    }) => {
      if (this.checked && !force) {
        this.logger.log('跳过');
        return undefined;
      }
      const version = await this.checkVersion(recheck);
      if (!(version !== null && version !== void 0 && version.sha)) {
        this.logger.log('没有数据库版本信息');
        return undefined;
      }
      if (force) {
        this.logger.log('强制更新', version);
      } else if (!(await this.messaging.emit('get-tag-sha', undefined)).startsWith(version.sha)) {
        this.logger.log('有新版本', version);
      } else {
        this.logger.log('没有新版本', version);
        return undefined;
      }
      await this.updating;
      const updating = this.update();
      this.updating = updating;
      const success = await updating;
      this.updating = undefined;
      if (success) {
        this.logger.log('有新版本并更新', version);
        return version;
      } else {
        this.logger.log('更新新版本失败', version);
        return undefined;
      }
    });
    this.messaging.on('check-database', async ({
      force
    }) => {
      return await this.checkVersion(force);
    });
    this.init().catch(logger.error);
  }
  async init() {
    const storage = await this.storage.get('release');
    if (storage && storage.check > this._lastCheckData.check) {
      Object.assign(this._lastCheckData, storage);
    }
  }
  get lastCheckData() {
    return this._lastCheckData;
  }
  set lastCheckData(value) {
    if (value && value.check > this.lastCheckData.check) {
      Object.assign(this._lastCheckData, value);
      this.storage.set('release', this._lastCheckData).catch(this.logger.error);
    }
  }
  async update() {
    // 重置下载状态
    this.initDownloadStatus();
    try {
      const {
        base,
        override
      } = await this.download();
      await this.messaging.emit('update-tag', {
        base,
        override
      });
      this.badge.set('OK', '#00C801');
      this.pushDownloadStatus({
        run: true,
        info: '更新完成',
        progress: 100,
        complete: true
      });
      void sleep(2500).then(() => {
        if (this.downloadStatus.complete) {
          this.badge.set('', '#4A90E2');
          this.initDownloadStatus();
        }
      });
      return true;
    } catch (err) {
      const e = err;
      this.logger.error(e);
      this.badge.set('ERR', '#C80000');
      this.pushDownloadStatus({
        run: false,
        error: true,
        info: e !== null && e !== void 0 && e.message ? e.message : '更新失败'
      });
      return false;
    }
  }
  initDownloadStatus() {
    this.downloadStatus = _objectSpread2({}, database_updater_defaultStatus);
    void this.messaging.emit('updating-database', this.downloadStatus, true);
  }
  pushDownloadStatus(data = {}) {
    this.downloadStatus = _objectSpread2(_objectSpread2({}, this.downloadStatus), data);
    void this.messaging.emit('updating-database', this.downloadStatus, true);
  }
  async checkVersion(force = false) {
    if (!force) {
      // 限制每 5 分钟最多请求 1 次
      const time = new Date().getTime();
      const lastCheckData = this.lastCheckData;
      if (time - lastCheckData.check <= 1000 * 60 * 5 && lastCheckData.githubRelease) {
        return lastCheckData;
      }
    }
    const info = await this.database.getLatestVersion();
    this.lastCheckData = {
      sha: info.target_commitish,
      githubRelease: info,
      check: Date.now()
    };
    this.checked = true;
    return this.lastCheckData;
  }
  async download() {
    var _checkData$githubRele;
    this.badge.set('', '#4A90E2', 2);
    this.pushDownloadStatus({
      run: true,
      info: '加载中'
    });
    const checkData = await this.checkVersion();
    if (!(checkData !== null && checkData !== void 0 && (_checkData$githubRele = checkData.githubRelease) !== null && _checkData$githubRele !== void 0 && _checkData$githubRele.target_commitish)) {
      this.logger.debug('checkData', checkData);
      throw new Error('无法获取版本信息');
    }
    const info = checkData.githubRelease;
    const timer = this.logger.time(`开始下载`);
    try {
      this.pushDownloadStatus({
        info: '0%',
        progress: 0
      });
      this.badge.set('0', '#4A90E2', 1);
      const data = await this.database.getData(info, progress => {
        const percent = Math.floor(progress * 100);
        this.pushDownloadStatus({
          info: `${percent}%`,
          progress: percent
        });
        this.badge.set(percent.toFixed(0), '#4A90E2', 1);
      });
      this.pushDownloadStatus({
        info: '下载完成',
        progress: 100
      });
      this.badge.set('100', '#4A90E2', 1);
      return _objectSpread2({
        release: info
      }, data);
    } finally {
      timer.end();
    }
  }
};
DatabaseUpdater = __decorate([Service(), __metadata("design:paramtypes", [Logger, messaging_Messaging, Storage, Database, BadgeLoading])], DatabaseUpdater);

;// ./node_modules/.pnpm/[email protected]/node_modules/core-js/modules/es.object.from-entries.js
es_object_from_entries_namespaceFn();

;// ./src/plugin/suggest/dict.yml
const dict_namespaceObject = /*#__PURE__*/JSON.parse('{"拂":["払"],"奸":["姦"],"爱":["愛"],"拔":["抜"],"罢":["罷"],"霸":["覇"],"败":["敗"],"拜":["拝"],"颁":["頒"],"饱":["飽"],"宝":["寶"],"报":["報"],"贝":["貝"],"备":["備"],"辈":["輩"],"笔":["筆"],"币":["幣"],"闭":["閉"],"边":["辺"],"编":["編"],"变":["変"],"标":["標"],"别":["別"],"宾":["賓"],"冰":["氷"],"并":["並","併"],"钵":["缽"],"补":["補"],"步":["歩"],"财":["財"],"参":["參"],"残":["殘"],"蚕":["蠶"],"惨":["慘"],"仓":["倉"],"藏":["蔵"],"册":["冊"],"侧":["側"],"测":["測"],"层":["層"],"插":["挿"],"查":["査"],"禅":["禪"],"产":["產","産"],"肠":["腸"],"偿":["償"],"场":["場"],"巢":["巣"],"车":["車"],"彻":["徹"],"陈":["陳"],"称":["稱"],"诚":["誠"],"乘":["乗"],"惩":["懲"],"吃":["喫"],"痴":["癡"],"迟":["遅"],"齿":["歯"],"耻":["恥"],"敕":["勅"],"冲":["沖","衝"],"虫":["蟲"],"铳":["銃"],"丑":["醜"],"础":["礎"],"处":["處","処"],"触":["觸"],"传":["伝"],"窗":["窓"],"创":["創"],"锤":["錘"],"纯":["純"],"词":["詞"],"辞":["辭"],"赐":["賜"],"从":["従"],"粹":["粋"],"错":["錯"],"达":["達"],"带":["帯"],"贷":["貸"],"担":["擔"],"单":["単"],"胆":["膽"],"诞":["誕"],"弹":["弾"],"当":["當"],"党":["黨"],"导":["導"],"岛":["島"],"盗":["盜"],"稻":["稲"],"德":["徳"],"灯":["燈"],"敌":["敵"],"递":["逓"],"缔":["締"],"点":["點"],"电":["電"],"钓":["釣"],"叠":["畳"],"顶":["頂"],"订":["訂"],"锭":["錠"],"东":["東"],"动":["動","働"],"冻":["凍"],"栋":["棟"],"斗":["闘"],"独":["獨"],"读":["読"],"笃":["篤"],"断":["斷"],"锻":["鍛"],"队":["隊"],"对":["対"],"钝":["鈍"],"夺":["奪"],"堕":["墮"],"额":["額"],"恶":["悪"],"饿":["餓"],"儿":["児"],"贰":["弐"],"发":["髪","発"],"罚":["罰"],"阀":["閥"],"烦":["煩"],"饭":["飯"],"范":["範"],"贩":["販"],"访":["訪"],"纺":["紡"],"飞":["飛"],"废":["廃"],"费":["費"],"纷":["紛"],"氛":["雰"],"坟":["墳"],"奋":["奮"],"愤":["憤"],"风":["風"],"缝":["縫"],"佛":["仏"],"肤":["膚"],"负":["負"],"妇":["婦"],"复":["複","復"],"赋":["賦"],"缚":["縛"],"该":["該"],"干":["幹","乾"],"绀":["紺"],"刚":["剛"],"纲":["綱"],"钢":["鋼"],"阁":["閣"],"个":["個","箇"],"给":["給"],"宫":["宮"],"贡":["貢"],"沟":["溝"],"构":["構"],"购":["購"],"谷":["穀"],"顾":["顧"],"挂":["掛"],"关":["関"],"观":["観"],"馆":["館"],"贯":["貫"],"惯":["慣"],"广":["広"],"归":["帰"],"规":["規"],"轨":["軌"],"贵":["貴"],"国":["國"],"果":["菓"],"过":["過"],"还":["還"],"汉":["漢"],"号":["號"],"贺":["賀"],"黑":["黒"],"红":["紅"],"后":["後"],"户":["戸"],"护":["護"],"华":["華"],"话":["話"],"怀":["懐"],"坏":["壊"],"欢":["歓"],"环":["環"],"缓":["緩"],"换":["換"],"唤":["喚"],"挥":["揮"],"辉":["輝"],"绘":["絵"],"贿":["賄"],"惠":["恵"],"货":["貨"],"获":["穫","獲"],"祸":["禍"],"击":["撃"],"饥":["飢"],"机":["機"],"鸡":["鶏"],"积":["積"],"级":["級"],"极":["極"],"几":["幾","机"],"计":["計"],"记":["記"],"纪":["紀"],"际":["際"],"剂":["剤"],"迹":["跡"],"济":["済"],"继":["継"],"绩":["績"],"假":["仮"],"价":["価"],"坚":["堅"],"间":["間"],"监":["監"],"茧":["繭"],"俭":["倹"],"检":["検"],"减":["減"],"简":["簡"],"见":["見"],"荐":["薦"],"剑":["剣"],"舰":["艦"],"渐":["漸"],"践":["踐"],"鉴":["鑑","鑑"],"将":["將"],"讲":["講"],"奖":["奨"],"纟":["糸"],"绞":["絞"],"矫":["矯"],"觉":["覚"],"较":["較"],"阶":["階"],"揭":["掲"],"节":["節"],"杰":["傑","傑"],"诘":["詰"],"洁":["潔"],"结":["結"],"届":["屆"],"紧":["緊"],"谨":["謹"],"尽":["盡"],"进":["進"],"经":["経"],"惊":["驚"],"鲸":["鯨"],"净":["浄"],"竞":["競"],"静":["靜"],"镜":["鏡"],"纠":["糾"],"举":["挙"],"剧":["劇"],"据":["據","拠"],"卷":["巻","巻"],"绢":["絹"],"决":["決"],"绝":["絶"],"军":["軍"],"开":["開"],"壳":["殻"],"渴":["渇"],"课":["課"],"垦":["墾"],"恳":["懇"],"库":["庫"],"夸":["誇"],"块":["塊"],"宽":["寛"],"况":["況"],"矿":["鉱"],"扩":["拡"],"来":["來"],"赖":["頼"],"濑":["瀬"],"栏":["欄"],"览":["覧"],"滥":["濫"],"劳":["労"],"乐":["楽"],"垒":["塁"],"泪":["涙"],"类":["類"],"离":["離"],"礼":["禮"],"里":["裡","裏"],"历":["歴","暦"],"丽":["麗"],"励":["勵"],"隶":["隸","隷"],"连":["連"],"练":["練"],"炼":["錬"],"恋":["戀"],"凉":["涼"],"粮":["糧"],"两":["両"],"疗":["療"],"猎":["猟"],"邻":["鄰","隣"],"临":["臨"],"赁":["賃"],"灵":["霊"],"铃":["鈴"],"龄":["齢"],"领":["領"],"泷":["滝"],"楼":["樓"],"炉":["爐"],"虏":["虜"],"陆":["陸"],"录":["録"],"乱":["亂"],"伦":["倫"],"轮":["輪"],"论":["論"],"罗":["羅"],"络":["絡"],"虑":["慮"],"绿":["緑"],"马":["馬"],"买":["買"],"麦":["麥"],"卖":["売"],"脉":["脈"],"蛮":["蠻"],"满":["満"],"猫":["貓"],"贸":["貿"],"没":["沒"],"每":["毎"],"门":["門"],"梦":["夢"],"绵":["綿"],"灭":["滅"],"鸣":["鳴"],"铭":["銘"],"默":["黙"],"谋":["謀"],"亩":["畝"],"纳":["納"],"难":["難"],"恼":["悩"],"脑":["脳"],"内":["內"],"拟":["擬"],"娘":["嬢"],"酿":["醸"],"鸟":["鳥"],"宁":["寧"],"农":["農"],"浓":["濃"],"诺":["諾"],"盘":["盤"],"赔":["賠"],"喷":["噴"],"贫":["貧"],"频":["頻"],"评":["評"],"扑":["撲"],"铺":["舗"],"仆":["僕"],"朴":["樸"],"谱":["譜"],"齐":["斉"],"骑":["騎"],"棋":["碁"],"启":["啓"],"气":["気"],"弃":["棄"],"迁":["遷"],"铅":["鉛"],"谦":["謙"],"钱":["銭"],"潜":["潛"],"浅":["淺"],"强":["強"],"缲":["繰"],"桥":["橋"],"窃":["竊"],"亲":["親"],"寝":["寢"],"轻":["軽"],"倾":["傾"],"请":["請"],"庆":["慶"],"穷":["窮"],"驱":["駆"],"圈":["圏"],"权":["権"],"劝":["勧"],"确":["確"],"壤":["壌"],"让":["譲"],"热":["熱"],"认":["認"],"荣":["栄"],"软":["軟"],"锐":["鋭"],"润":["潤"],"伞":["傘"],"丧":["喪"],"骚":["騒"],"扫":["掃"],"涩":["渋"],"杀":["殺"],"缮":["繕"],"伤":["傷"],"赏":["賞"],"烧":["焼"],"绍":["紹"],"舍":["舎","捨"],"设":["設"],"涉":["渉"],"摄":["摂"],"绅":["紳"],"审":["審"],"声":["聲"],"绳":["縄"],"圣":["聖"],"胜":["勝"],"剩":["剰"],"师":["師"],"诗":["詩"],"湿":["濕"],"时":["時"],"识":["識"],"实":["実"],"势":["勢"],"饰":["飾"],"试":["試"],"视":["視"],"适":["適"],"释":["釈"],"收":["収"],"寿":["壽"],"兽":["獣"],"书":["書"],"枢":["樞"],"疏":["疎"],"输":["輸"],"属":["屬"],"术":["術"],"树":["樹"],"数":["數"],"帅":["帥"],"双":["雙"],"税":["稅"],"顺":["順"],"说":["說","説"],"饲":["飼"],"讼":["訟"],"搜":["捜"],"诉":["訴"],"肃":["粛"],"随":["隨"],"髓":["髄"],"岁":["歳"],"碎":["砕"],"穗":["穂"],"孙":["孫"],"损":["損"],"缩":["縮"],"锁":["鎖"],"态":["態"],"坛":["壇"],"昙":["曇"],"谈":["談"],"叹":["歎","嘆"],"汤":["湯"],"讨":["討"],"腾":["騰"],"誊":["謄"],"题":["題"],"条":["條"],"调":["調"],"铁":["鐵","鉄"],"厅":["庁"],"听":["聴"],"铜":["銅"],"统":["統"],"头":["頭"],"图":["図"],"涂":["塗"],"团":["団"],"脱":["脫"],"驮":["駄"],"湾":["灣"],"顽":["頑"],"万":["萬"],"网":["網"],"为":["為"],"违":["違"],"围":["囲"],"维":["維"],"伟":["偉"],"伪":["偽"],"纬":["緯"],"卫":["衛"],"纹":["紋"],"闻":["聞"],"稳":["穏"],"问":["問"],"涡":["渦"],"污":["汚"],"无":["無"],"吴":["呉"],"务":["務"],"误":["誤"],"雾":["霧"],"溪":["渓","渓"],"习":["習"],"袭":["襲"],"玺":["璽"],"铣":["銑"],"戏":["戯"],"系":["係"],"细":["細"],"舄":["潟"],"辖":["轄"],"吓":["嚇"],"纤":["繊"],"鲜":["鮮"],"闲":["閑","閑"],"贤":["賢"],"显":["顕"],"险":["険"],"现":["現"],"宪":["憲"],"陷":["陥"],"缐":["線"],"乡":["郷"],"详":["詳"],"响":["響"],"项":["項"],"晓":["暁"],"笑":["咲"],"效":["効"],"协":["協"],"胁":["脅"],"写":["寫"],"谢":["謝"],"兴":["興"],"许":["許"],"叙":["敘"],"绪":["緒"],"续":["続"],"轩":["軒"],"悬":["懸"],"选":["選"],"勋":["勲"],"熏":["薫"],"寻":["尋"],"训":["訓"],"压":["圧"],"亚":["亜"],"烟":["煙"],"严":["厳"],"盐":["塩"],"颜":["顔"],"验":["験"],"扬":["揚"],"阳":["陽"],"养":["養"],"样":["様"],"窑":["窯"],"谣":["謡"],"摇":["揺"],"药":["薬"],"业":["業"],"叶":["葉"],"谒":["謁"],"壹":["壱"],"仪":["儀"],"遗":["遺"],"亿":["億"],"义":["義"],"忆":["憶"],"议":["議"],"异":["異"],"译":["訳"],"驿":["駅"],"阴":["陰"],"银":["銀"],"饮":["飲"],"隐":["隠"],"樱":["桜"],"萤":["蛍"],"营":["営"],"应":["応"],"拥":["擁"],"咏":["詠"],"踊":["踴"],"优":["優"],"忧":["憂"],"邮":["郵"],"犹":["猶"],"游":["遊"],"诱":["誘"],"余":["餘"],"鱼":["魚"],"娱":["娯"],"渔":["漁"],"与":["與"],"语":["語"],"狱":["獄"],"预":["預"],"谕":["諭"],"御":["禦"],"誉":["譽"],"园":["園"],"员":["員"],"缘":["縁"],"远":["遠"],"愿":["願"],"约":["約"],"阅":["閲"],"跃":["躍"],"云":["雲","伝"],"运":["運"],"韵":["韻"],"杂":["雑"],"灾":["災"],"载":["載"],"暂":["暫"],"赞":["贊","賛"],"脏":["臓"],"则":["則"],"责":["責"],"择":["択"],"泽":["沢"],"贼":["賊"],"增":["増"],"赠":["贈"],"札":["劄"],"诈":["詐"],"斋":["斎"],"债":["債"],"栈":["桟"],"战":["戦"],"张":["張"],"长":["長"],"帐":["帳"],"胀":["脹"],"诏":["詔"],"着":["著"],"贞":["貞"],"针":["針"],"侦":["偵"],"诊":["診"],"阵":["陣"],"镇":["鎮"],"争":["爭"],"证":["證","証"],"织":["織"],"执":["執"],"值":["値"],"职":["職"],"纸":["紙"],"质":["質"],"滞":["滯"],"终":["終"],"钟":["鐘"],"种":["種"],"冢":["塚"],"众":["眾","衆"],"轴":["軸"],"昼":["晝"],"诸":["諸"],"嘱":["囑"],"贮":["貯"],"驻":["駐"],"筑":["築"],"专":["専"],"转":["転"],"妆":["妝"],"庄":["荘"],"装":["裝"],"壮":["壯"],"状":["狀"],"坠":["墜"],"浊":["濁"],"咨":["諮"],"资":["資"],"姊":["姉"],"渍":["漬"],"总":["総"],"纵":["縦"],"组":["組"],"醉":["酔"],"闷":["悶"],"灌":["浣"],"仿":["倣"],"做":["作"],"划":["画"],"叛":["反"],"圆":["円"],"吊":["弔"],"雕":["彫"],"征":["徴"],"托":["託"],"采":["採"],"榨":["搾"],"拨":["発"],"升":["昇"],"晚":["晩"],"桌":["卓"],"沉":["沈"],"准":["準"],"泼":["発"],"滨":["浜"],"熔":["溶"],"牺":["犠"],"瓣":["弁"],"愈":["癒"],"炮":["砲"],"丝":["糸"],"线":["線"],"县":["県"],"缺":["欠"],"罐":["缶"],"艺":["芸"],"制":["製"],"志":["誌"],"讽":["風"],"丰":["豊"],"辨":["弁"],"辩":["弁"],"周":["週"],"醋":["酢"],"铸":["鋳"],"只":["隻"],"龙":["竜"]}');
;// ./src/plugin/suggest/dict.ts










const CN2JP = Object.freeze(dict_namespaceObject);
const JP2CN = Object.freeze(Object.fromEntries(Object.entries(CN2JP).flatMap(([k, v]) => v.map(vv => [vv, k]))));
/** 检查是否为 ASCII */
function isASCII(text) {
  for (let i = 0, n = text.length; i < n; i++) {
    if (text.charCodeAt(i) >= 0x80) return false;
  }
  return true;
}
/** 转为中文汉字 */
function toCN(text) {
  let ret = '';
  for (const ch of text) {
    ret += JP2CN[ch] || ch;
  }
  return ret;
}
const MAX_COMBINE = 16;
/** 转为日文汉字 */
function toJP(text) {
  let res = [''];
  for (const ch of text) {
    const jp = CN2JP[ch];
    let rep;
    if (jp) {
      if (jp.length > 1 && res.length < MAX_COMBINE) {
        const tmp = [];
        for (const r of res) {
          for (const j of jp) {
            tmp.push(r + j);
          }
        }
        res = tmp;
        continue;
      }
      rep = jp[0];
    } else {
      rep = ch;
    }
    for (let i = 0, n = res.length; i < n; i++) {
      res[i] += rep;
    }
  }
  return res;
}
;// ./src/plugin/suggest/index.ts






















const NS_SCORE = Object.freeze({
  o: 10,
  loc: 9,
  f: 9,
  m: 8.5,
  x: 8,
  l: 2,
  a: 2.5,
  cos: 2.4,
  g: 2.2,
  p: 3.3,
  c: 2.8,
  r: 1,
  '': 0 // rows
});
/** 生成完成项 */
function markTag(tag, search, term) {
  let score = 0;
  const match = {};
  const {
    key,
    ns,
    cn,
    introSearch
  } = tag;
  const keyIdx = key.indexOf(search);
  if (keyIdx >= 0) {
    score += NS_SCORE[ns] * (search.length + 1) / key.length * (keyIdx === 0 ? 2 : 1);
    match.key = {
      start: keyIdx,
      end: keyIdx + search.length
    };
  }
  const name = cn.toLowerCase();
  const nameIdx = name.indexOf(search);
  if (nameIdx >= 0) {
    score += NS_SCORE[ns] * (search.length + 1) / name.length * (nameIdx === 0 ? 2 : 1);
    match.cn = {
      start: nameIdx,
      end: nameIdx + search.length
    };
  }
  if (introSearch) {
    const introIdx = introSearch.indexOf(search);
    if (introIdx >= 0) {
      score += NS_SCORE[ns] * (search.length + 1) / introSearch.length * 0.5;
    }
  }
  if (score === 0) return undefined;
  return {
    tag,
    term,
    match,
    score
  };
}
let Suggest = class Suggest {
  constructor(logger, messaging, tagging) {
    this.logger = logger;
    this.messaging = messaging;
    this.tagging = tagging;
    this.tagList = [];
    this.sha = '';
    messaging.on('suggest-tag', args => {
      return this.getSuggests(args.term, args.limit);
    });
    this.update().catch(logger.error);
  }
  async update() {
    const v = await this.messaging.emit('get-tag-map', {
      ifNotMatch: this.sha
    });
    if (v.map) this.tagList = Object.values(v.map);
    this.sha = v.sha;
  }
  async getSuggests(term, limit = -1) {
    if (!term) return [];
    await this.update();
    if (!this.tagList.length) return [];
    const timer = this.logger.time(`搜索:${term}`);
    let sTerm = term.toLowerCase().normalize();
    const col = sTerm.indexOf(':');
    let tagList = this.tagList;
    if (col >= 1) {
      const ns = this.tagging.ns(sTerm.slice(0, col));
      if (ns) {
        sTerm = sTerm.slice(col + 1);
        tagList = tagList.filter(tag => tag.ns === ns);
      }
    }
    if (sTerm.startsWith('"')) {
      sTerm = sTerm.slice(1);
    }
    const suggestions = [];
    let terms = [sTerm];
    if (!isASCII(sTerm)) {
      terms.push(toCN(sTerm), ...toJP(sTerm));
      terms = [...new Set(terms)];
    }
    const nTerms = terms.length;
    for (const tag of tagList) {
      for (let i = 0; i < nTerms; i++) {
        const st = markTag(tag, terms[i], term);
        if (st) {
          suggestions.push(st);
          break;
        }
      }
    }
    suggestions.sort((st1, st2) => st2.score - st1.score);
    if (limit > 0 && suggestions.length > limit) {
      suggestions.length = limit;
    }
    this.logger.debug(`搜索:${term} (${terms.join(', ')})`, suggestions);
    timer.end();
    return suggestions;
  }
};
Suggest = __decorate([Service(), __metadata("design:paramtypes", [Logger, messaging_Messaging, Tagging])], Suggest);

;// ./node_modules/.pnpm/[email protected]/node_modules/rxjs/dist/esm5/internal/util/ObjectUnsubscribedError.js

var ObjectUnsubscribedError = createErrorClass(function (_super) {
  return function ObjectUnsubscribedErrorImpl() {
    _super(this);
    this.name = 'ObjectUnsubscribedError';
    this.message = 'object unsubscribed';
  };
});
;// ./node_modules/.pnpm/[email protected]/node_modules/rxjs/dist/esm5/internal/Subject.js







var Subject = function (_super) {
  tslib_es6_extends(Subject, _super);
  function Subject() {
    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;
  }
  Subject.prototype.lift = function (operator) {
    var subject = new AnonymousSubject(this, this);
    subject.operator = operator;
    return subject;
  };
  Subject.prototype._throwIfClosed = function () {
    if (this.closed) {
      throw new ObjectUnsubscribedError();
    }
  };
  Subject.prototype.next = function (value) {
    var _this = this;
    errorContext(function () {
      var e_1, _a;
      _this._throwIfClosed();
      if (!_this.isStopped) {
        if (!_this.currentObservers) {
          _this.currentObservers = Array.from(_this.observers);
        }
        try {
          for (var _b = __values(_this.currentObservers), _c = _b.next(); !_c.done; _c = _b.next()) {
            var observer = _c.value;
            observer.next(value);
          }
        } catch (e_1_1) {
          e_1 = {
            error: e_1_1
          };
        } finally {
          try {
            if (_c && !_c.done && (_a = _b.return)) _a.call(_b);
          } finally {
            if (e_1) throw e_1.error;
          }
        }
      }
    });
  };
  Subject.prototype.error = function (err) {
    var _this = this;
    errorContext(function () {
      _this._throwIfClosed();
      if (!_this.isStopped) {
        _this.hasError = _this.isStopped = true;
        _this.thrownError = err;
        var observers = _this.observers;
        while (observers.length) {
          observers.shift().error(err);
        }
      }
    });
  };
  Subject.prototype.complete = function () {
    var _this = this;
    errorContext(function () {
      _this._throwIfClosed();
      if (!_this.isStopped) {
        _this.isStopped = true;
        var observers = _this.observers;
        while (observers.length) {
          observers.shift().complete();
        }
      }
    });
  };
  Subject.prototype.unsubscribe = function () {
    this.isStopped = this.closed = true;
    this.observers = this.currentObservers = null;
  };
  Object.defineProperty(Subject.prototype, "observed", {
    get: function () {
      var _a;
      return ((_a = this.observers) === null || _a === void 0 ? void 0 : _a.length) > 0;
    },
    enumerable: false,
    configurable: true
  });
  Subject.prototype._trySubscribe = function (subscriber) {
    this._throwIfClosed();
    return _super.prototype._trySubscribe.call(this, subscriber);
  };
  Subject.prototype._subscribe = function (subscriber) {
    this._throwIfClosed();
    this._checkFinalizedStatuses(subscriber);
    return this._innerSubscribe(subscriber);
  };
  Subject.prototype._innerSubscribe = function (subscriber) {
    var _this = this;
    var _a = this,
      hasError = _a.hasError,
      isStopped = _a.isStopped,
      observers = _a.observers;
    if (hasError || isStopped) {
      return EMPTY_SUBSCRIPTION;
    }
    this.currentObservers = null;
    observers.push(subscriber);
    return new Subscription(function () {
      _this.currentObservers = null;
      arrRemove(observers, subscriber);
    });
  };
  Subject.prototype._checkFinalizedStatuses = function (subscriber) {
    var _a = this,
      hasError = _a.hasError,
      thrownError = _a.thrownError,
      isStopped = _a.isStopped;
    if (hasError) {
      subscriber.error(thrownError);
    } else if (isStopped) {
      subscriber.complete();
    }
  };
  Subject.prototype.asObservable = function () {
    var observable = new Observable();
    observable.source = this;
    return observable;
  };
  Subject.create = function (destination, source) {
    return new AnonymousSubject(destination, source);
  };
  return Subject;
}(Observable);

var AnonymousSubject = function (_super) {
  tslib_es6_extends(AnonymousSubject, _super);
  function AnonymousSubject(destination, source) {
    var _this = _super.call(this) || this;
    _this.destination = destination;
    _this.source = source;
    return _this;
  }
  AnonymousSubject.prototype.next = function (value) {
    var _a, _b;
    (_b = (_a = this.destination) === null || _a === void 0 ? void 0 : _a.next) === null || _b === void 0 ? void 0 : _b.call(_a, value);
  };
  AnonymousSubject.prototype.error = function (err) {
    var _a, _b;
    (_b = (_a = this.destination) === null || _a === void 0 ? void 0 : _a.error) === null || _b === void 0 ? void 0 : _b.call(_a, err);
  };
  AnonymousSubject.prototype.complete = function () {
    var _a, _b;
    (_b = (_a = this.destination) === null || _a === void 0 ? void 0 : _a.complete) === null || _b === void 0 ? void 0 : _b.call(_a);
  };
  AnonymousSubject.prototype._subscribe = function (subscriber) {
    var _a, _b;
    return (_b = (_a = this.source) === null || _a === void 0 ? void 0 : _a.subscribe(subscriber)) !== null && _b !== void 0 ? _b : EMPTY_SUBSCRIPTION;
  };
  return AnonymousSubject;
}(Subject);

;// ./node_modules/.pnpm/[email protected]/node_modules/rxjs/dist/esm5/internal/BehaviorSubject.js


var BehaviorSubject = function (_super) {
  tslib_es6_extends(BehaviorSubject, _super);
  function BehaviorSubject(_value) {
    var _this = _super.call(this) || this;
    _this._value = _value;
    return _this;
  }
  Object.defineProperty(BehaviorSubject.prototype, "value", {
    get: function () {
      return this.getValue();
    },
    enumerable: false,
    configurable: true
  });
  BehaviorSubject.prototype._subscribe = function (subscriber) {
    var subscription = _super.prototype._subscribe.call(this, subscriber);
    !subscription.closed && subscriber.next(this._value);
    return subscription;
  };
  BehaviorSubject.prototype.getValue = function () {
    var _a = this,
      hasError = _a.hasError,
      thrownError = _a.thrownError,
      _value = _a._value;
    if (hasError) {
      throw thrownError;
    }
    this._throwIfClosed();
    return _value;
  };
  BehaviorSubject.prototype.next = function (value) {
    _super.prototype.next.call(this, this._value = value);
  };
  return BehaviorSubject;
}(Subject);

;// ./node_modules/.pnpm/[email protected]/node_modules/rxjs/dist/esm5/internal/util/EmptyError.js

var EmptyError = createErrorClass(function (_super) {
  return function EmptyErrorImpl() {
    _super(this);
    this.name = 'EmptyError';
    this.message = 'no elements in sequence';
  };
});
;// ./node_modules/.pnpm/[email protected]/node_modules/rxjs/dist/esm5/internal/firstValueFrom.js



function firstValueFrom(source, config) {
  var hasConfig = typeof config === 'object';
  return new Promise(function (resolve, reject) {
    var subscriber = new SafeSubscriber({
      next: function (value) {
        resolve(value);
        subscriber.unsubscribe();
      },
      error: reject,
      complete: function () {
        if (hasConfig) {
          resolve(config.defaultValue);
        } else {
          reject(new EmptyError());
        }
      }
    });
    source.subscribe(subscriber);
  });
}
;// ./src/plugin/tag-database.ts




















/* 数据存储结构版本, 如果不同 系统会自动执行 storageTagData 重新构建数据*/
/* 注意这是本地数据结构, 主要用于 storageTagData内解析方法发生变化, 重新加载数据的, 与线上无关*/
const DATA_STRUCTURE_VERSION = 12;
let TagDatabase = class TagDatabase {
  get mapView() {
    return this.tagMap.pipe(filter_filter(v => v != null));
  }
  constructor(storage, logger, messaging, tagging) {
    this.storage = storage;
    this.logger = logger;
    this.messaging = messaging;
    this.tagging = tagging;
    this.tagMap = new BehaviorSubject(undefined);
    messaging.on('get-tag', key => {
      return firstValueFrom(this.mapView.pipe(map_map(v => v.map[key])));
    });
    messaging.on('get-tag-map', ({
      ifNotMatch
    }) => {
      return firstValueFrom(this.mapView.pipe(map_map(v => {
        if (ifNotMatch === v.sha) return {
          sha: v.sha,
          map: undefined
        };
        return {
          sha: v.sha,
          map: v.map
        };
      })));
    });
    messaging.on('get-tag-sha', () => {
      return firstValueFrom(this.mapView.pipe(map_map(v => v.sha)));
    });
    this.init().catch(logger.error);
  }
  async init() {
    const data = await this.storage.get('databaseInfo');
    const dataMap = await this.storage.get('database');
    this.messaging.on('update-tag', data => this.update(data.base, data.override));
    if ((data === null || data === void 0 ? void 0 : data.version) !== DATA_STRUCTURE_VERSION || !dataMap || !data.sha) {
      this.tagMap.next({
        sha: '',
        map: {}
      });
      const timer = this.logger.time('数据结构变化, 重新构建数据');
      await this.storage.migrate();
      await this.messaging.emit('update-database', {
        force: true
      });
      timer.end();
    } else {
      this.tagMap.next(_objectSpread2(_objectSpread2({}, data), {}, {
        map: dataMap
      }));
    }
    this.logger.log('标签数据库初始化完成');
    this.tagMap.subscribe({
      next: () => {
        void this.messaging.emit('tag-updated', undefined, true);
      }
    });
  }
  update(baseDB, overrideDb) {
    const timer = this.logger.time('构建数据');
    const sha = baseDB.head.sha + (overrideDb ? `+${overrideDb.head.sha}` : '');
    const map = {};
    const check = Date.now();
    const handleTag = (namespace, key, tag) => {
      if (typeof key != 'string') return;
      if (key.includes('_')) key = key.replace(/_/g, ' ');
      key = key.trim();
      if (!key) return;
      const fullKey = this.tagging.fullKey({
        namespace,
        key
      });
      if (map[fullKey]) return;
      const name = this.tagging.removePara(tag.name) || key;
      const ehTag = {
        ns: this.tagging.ns(namespace),
        key,
        name: name,
        cn: this.tagging.removeImagesAndEmoji(name),
        intro: '',
        links: '',
        introSearch: ''
      };
      if (tag.intro) {
        ehTag.intro = tag.intro;
        ehTag.introSearch += '\0' + this.tagging.removeHtmlTags(tag.intro).toLowerCase();
      }
      if (tag.links) {
        ehTag.links = tag.links;
        ehTag.introSearch += '\0' + this.tagging.removeHtmlTags(tag.links).toLowerCase();
      }
      map[fullKey] = ehTag;
    };
    for (const baseNsData of baseDB.data) {
      const namespace = baseNsData.namespace;
      if (namespace === 'rows') continue;
      const overrideNsData = overrideDb === null || overrideDb === void 0 ? void 0 : overrideDb.data.find(ns => ns.namespace === namespace);
      for (const key in baseNsData.data) {
        const baseTag = baseNsData.data[key];
        const overrideTag = overrideNsData === null || overrideNsData === void 0 ? void 0 : overrideNsData.data[key];
        if (overrideTag) {
          handleTag(namespace, key, {
            name: overrideTag.name || baseTag.name,
            intro: overrideTag.intro || baseTag.intro,
            links: overrideTag.links || baseTag.links
          });
        } else {
          handleTag(namespace, key, baseTag);
        }
      }
      if (overrideNsData !== null && overrideNsData !== void 0 && overrideNsData.data) {
        for (const key in overrideNsData.data) {
          const overrideTag = overrideNsData.data[key];
          handleTag(namespace, key, overrideTag);
        }
      }
    }
    this.tagMap.next({
      map,
      sha
    });
    // 后台继续处理,直接返回
    this.storage.set('databaseInfo', {
      sha,
      check,
      version: DATA_STRUCTURE_VERSION
    }).catch(this.logger.error);
    this.storage.set('database', map).catch(this.logger.error);
    timer.end();
  }
};
TagDatabase = __decorate([Service(), __metadata("design:paramtypes", [Storage, Logger, messaging_Messaging, Tagging])], TagDatabase);

;// ./src/plugin/image-context-menu.ts














let ImageContextMenu = class ImageContextMenu {
  constructor() {
    this.documentUrlPatterns = [`*://${EX}/*`, `*://${EXU}/*`, `*://${EH}/*`, `*://*.${EX}/*`, `*://*.${EXU}/*`, `*://*.${EH}/*`];
    this.title = `显示所有包含此图像的图库`;
    this.targetUrlPatterns = [`*://${EX}/t/*.jpg`, `*://${EXU}/t/*.jpg`, `*://s.${EX}/t/*.jpg`, `*://s.${EXU}/t/*.jpg`, `*://${EHGT}/*.jpg`, `*://ul.${EHGT}/*.jpg`, `*://*.${HATH}:*/h/*`, `*://*.${HATH}/h/*`];
    this.contexts = ['image', 'link'];
    this.onclick = info => {
      if (!info.url) return;
      const url = new URL(info.url);
      const match = /[a-f0-9]{40}/i.exec(url.pathname);
      if (!match) return;
      let base = `https://${EX}`;
      if (isEhGt(url.hostname)) base = `https://${EH}`;else if (isUnion(url.hostname)) base = `http://${EXU}`;
      openInTab(`${base}/?f_shash=${match[0]}`);
    };
    this.init();
  }
  init() {
    createMenu(this);
  }
};
ImageContextMenu = __decorate([Service(), __metadata("design:paramtypes", [])], ImageContextMenu);

;// ./node_modules/.pnpm/[email protected]/node_modules/core-js/modules/es.number.parse-float.js
es_number_parse_float_namespaceFn();

;// ./node_modules/.pnpm/[email protected]/node_modules/core-js/modules/es.parse-int.js
es_parse_int_namespaceFn();

// EXTERNAL MODULE: ./node_modules/.pnpm/[email protected]/node_modules/core-js/modules/es.reflect.set.js
var es_reflect_set = __webpack_require__(5385);
;// ./node_modules/.pnpm/[email protected]/node_modules/core-js/modules/es.string.split.js
es_string_split_namespaceFn();

// EXTERNAL MODULE: ./node_modules/.pnpm/[email protected]/node_modules/core-js/modules/es.weak-map.js
var es_weak_map = __webpack_require__(5643);
;// ./node_modules/.pnpm/[email protected]/node_modules/core-js/modules/es.weak-map.get-or-insert.js
es_weak_map_get_or_insert_namespaceFn();

;// ./node_modules/.pnpm/[email protected]/node_modules/core-js/modules/es.weak-map.get-or-insert-computed.js
es_weak_map_get_or_insert_computed_namespaceFn();

;// ./node_modules/.pnpm/[email protected]/node_modules/lit-html/lit-html.js
var _t$litHtmlVersions;

















/**
 * @license
 * Copyright 2017 Google LLC
 * SPDX-License-Identifier: BSD-3-Clause
 */
const lit_html_t = globalThis,
  lit_html_i = t => t,
  lit_html_s = lit_html_t.trustedTypes,
  lit_html_e = lit_html_s ? lit_html_s.createPolicy("lit-html", {
    createHTML: t => t
  }) : void 0,
  lit_html_h = "$lit$",
  o = `lit$${Math.random().toFixed(9).slice(2)}$`,
  lit_html_n = "?" + o,
  lit_html_r = `<${lit_html_n}>`,
  l = document,
  lit_html_c = () => l.createComment(""),
  lit_html_a = t => null === t || "object" != typeof t && "function" != typeof t,
  lit_html_u = Array.isArray,
  lit_html_d = t => lit_html_u(t) || "function" == typeof (t === null || t === void 0 ? void 0 : t[Symbol.iterator]),
  lit_html_f = "[ \t\n\f\r]",
  lit_html_v = /<(?:(!--|\/[^a-zA-Z])|(\/?[a-zA-Z][^>\s]*)|(\/?$))/g,
  _ = /-->/g,
  m = />/g,
  lit_html_p = RegExp(`>|${lit_html_f}(?:([^\\s"'>=/]+)(${lit_html_f}*=${lit_html_f}*(?:[^ \t\n\f\r"'\`<>=]|("|')|))|$)`, "g"),
  lit_html_g = /'/g,
  lit_html_$ = /"/g,
  lit_html_y = /^(?:script|style|textarea|title)$/i,
  lit_html_x = t => (i, ...s) => ({
    _$litType$: t,
    strings: i,
    values: s
  }),
  lit_html_b = lit_html_x(1),
  w = lit_html_x(2),
  T = lit_html_x(3),
  lit_html_E = Symbol.for("lit-noChange"),
  lit_html_A = Symbol.for("lit-nothing"),
  lit_html_C = new WeakMap(),
  lit_html_P = l.createTreeWalker(l, 129);
function V(t, i) {
  if (!lit_html_u(t) || !t.hasOwnProperty("raw")) throw Error("invalid template strings array");
  return void 0 !== lit_html_e ? lit_html_e.createHTML(i) : i;
}
const lit_html_N = (t, i) => {
  const s = t.length - 1,
    e = [];
  let n,
    l = 2 === i ? "<svg>" : 3 === i ? "<math>" : "",
    c = lit_html_v;
  for (let i = 0; i < s; i++) {
    const s = t[i];
    let a,
      u,
      d = -1,
      f = 0;
    for (; f < s.length && (c.lastIndex = f, u = c.exec(s), null !== u);) f = c.lastIndex, c === lit_html_v ? "!--" === u[1] ? c = _ : void 0 !== u[1] ? c = m : void 0 !== u[2] ? (lit_html_y.test(u[2]) && (n = RegExp("</" + u[2], "g")), c = lit_html_p) : void 0 !== u[3] && (c = lit_html_p) : c === lit_html_p ? ">" === u[0] ? (c = n !== null && n !== void 0 ? n : lit_html_v, d = -1) : void 0 === u[1] ? d = -2 : (d = c.lastIndex - u[2].length, a = u[1], c = void 0 === u[3] ? lit_html_p : '"' === u[3] ? lit_html_$ : lit_html_g) : c === lit_html_$ || c === lit_html_g ? c = lit_html_p : c === _ || c === m ? c = lit_html_v : (c = lit_html_p, n = void 0);
    const x = c === lit_html_p && t[i + 1].startsWith("/>") ? " " : "";
    l += c === lit_html_v ? s + lit_html_r : d >= 0 ? (e.push(a), s.slice(0, d) + lit_html_h + s.slice(d) + o + x) : s + o + (-2 === d ? i : x);
  }
  return [V(t, l + (t[s] || "<?>") + (2 === i ? "</svg>" : 3 === i ? "</math>" : "")), e];
};
class lit_html_S {
  constructor({
    strings: t,
    _$litType$: i
  }, e) {
    let r;
    this.parts = [];
    let l = 0,
      a = 0;
    const u = t.length - 1,
      d = this.parts,
      [f, v] = lit_html_N(t, i);
    if (this.el = lit_html_S.createElement(f, e), lit_html_P.currentNode = this.el.content, 2 === i || 3 === i) {
      const t = this.el.content.firstChild;
      t.replaceWith(...t.childNodes);
    }
    for (; null !== (r = lit_html_P.nextNode()) && d.length < u;) {
      if (1 === r.nodeType) {
        if (r.hasAttributes()) for (const t of r.getAttributeNames()) if (t.endsWith(lit_html_h)) {
          const i = v[a++],
            s = r.getAttribute(t).split(o),
            e = /([.?@])?(.*)/.exec(i);
          d.push({
            type: 1,
            index: l,
            name: e[2],
            strings: s,
            ctor: "." === e[1] ? I : "?" === e[1] ? L : "@" === e[1] ? lit_html_z : H
          }), r.removeAttribute(t);
        } else t.startsWith(o) && (d.push({
          type: 6,
          index: l
        }), r.removeAttribute(t));
        if (lit_html_y.test(r.tagName)) {
          const t = r.textContent.split(o),
            i = t.length - 1;
          if (i > 0) {
            r.textContent = lit_html_s ? lit_html_s.emptyScript : "";
            for (let s = 0; s < i; s++) r.append(t[s], lit_html_c()), lit_html_P.nextNode(), d.push({
              type: 2,
              index: ++l
            });
            r.append(t[i], lit_html_c());
          }
        }
      } else if (8 === r.nodeType) if (r.data === lit_html_n) d.push({
        type: 2,
        index: l
      });else {
        let t = -1;
        for (; -1 !== (t = r.data.indexOf(o, t + 1));) d.push({
          type: 7,
          index: l
        }), t += o.length - 1;
      }
      l++;
    }
  }
  static createElement(t, i) {
    const s = l.createElement("template");
    return s.innerHTML = t, s;
  }
}
function M(t, i, s = t, e) {
  var _s$_$Co, _h, _h2, _h2$_$AO, _s$_$Co2;
  if (i === lit_html_E) return i;
  let h = void 0 !== e ? (_s$_$Co = s._$Co) === null || _s$_$Co === void 0 ? void 0 : _s$_$Co[e] : s._$Cl;
  const o = lit_html_a(i) ? void 0 : i._$litDirective$;
  return ((_h = h) === null || _h === void 0 ? void 0 : _h.constructor) !== o && ((_h2 = h) !== null && _h2 !== void 0 && (_h2$_$AO = _h2._$AO) !== null && _h2$_$AO !== void 0 && _h2$_$AO.call(_h2, !1), void 0 === o ? h = void 0 : (h = new o(t), h._$AT(t, s, e)), void 0 !== e ? ((_s$_$Co2 = s._$Co) !== null && _s$_$Co2 !== void 0 ? _s$_$Co2 : s._$Co = [])[e] = h : s._$Cl = h), void 0 !== h && (i = M(t, h._$AS(t, i.values), h, e)), i;
}
class R {
  constructor(t, i) {
    this._$AV = [], this._$AN = void 0, this._$AD = t, this._$AM = i;
  }
  get parentNode() {
    return this._$AM.parentNode;
  }
  get _$AU() {
    return this._$AM._$AU;
  }
  u(t) {
    var _t$creationScope;
    const {
        el: {
          content: i
        },
        parts: s
      } = this._$AD,
      e = ((_t$creationScope = t === null || t === void 0 ? void 0 : t.creationScope) !== null && _t$creationScope !== void 0 ? _t$creationScope : l).importNode(i, !0);
    lit_html_P.currentNode = e;
    let h = lit_html_P.nextNode(),
      o = 0,
      n = 0,
      r = s[0];
    for (; void 0 !== r;) {
      var _r;
      if (o === r.index) {
        let i;
        2 === r.type ? i = new lit_html_k(h, h.nextSibling, this, t) : 1 === r.type ? i = new r.ctor(h, r.name, r.strings, this, t) : 6 === r.type && (i = new Z(h, this, t)), this._$AV.push(i), r = s[++n];
      }
      o !== ((_r = r) === null || _r === void 0 ? void 0 : _r.index) && (h = lit_html_P.nextNode(), o++);
    }
    return lit_html_P.currentNode = l, e;
  }
  p(t) {
    let i = 0;
    for (const s of this._$AV) void 0 !== s && (void 0 !== s.strings ? (s._$AI(t, s, i), i += s.strings.length - 2) : s._$AI(t[i])), i++;
  }
}
class lit_html_k {
  get _$AU() {
    var _this$_$AM$_$AU, _this$_$AM;
    return (_this$_$AM$_$AU = (_this$_$AM = this._$AM) === null || _this$_$AM === void 0 ? void 0 : _this$_$AM._$AU) !== null && _this$_$AM$_$AU !== void 0 ? _this$_$AM$_$AU : this._$Cv;
  }
  constructor(t, i, s, e) {
    var _e$isConnected;
    this.type = 2, this._$AH = lit_html_A, this._$AN = void 0, this._$AA = t, this._$AB = i, this._$AM = s, this.options = e, this._$Cv = (_e$isConnected = e === null || e === void 0 ? void 0 : e.isConnected) !== null && _e$isConnected !== void 0 ? _e$isConnected : !0;
  }
  get parentNode() {
    var _t;
    let t = this._$AA.parentNode;
    const i = this._$AM;
    return void 0 !== i && 11 === ((_t = t) === null || _t === void 0 ? void 0 : _t.nodeType) && (t = i.parentNode), t;
  }
  get startNode() {
    return this._$AA;
  }
  get endNode() {
    return this._$AB;
  }
  _$AI(t, i = this) {
    t = M(this, t, i), lit_html_a(t) ? t === lit_html_A || null == t || "" === t ? (this._$AH !== lit_html_A && this._$AR(), this._$AH = lit_html_A) : t !== this._$AH && t !== lit_html_E && this._(t) : void 0 !== t._$litType$ ? this.$(t) : void 0 !== t.nodeType ? this.T(t) : lit_html_d(t) ? this.k(t) : this._(t);
  }
  O(t) {
    return this._$AA.parentNode.insertBefore(t, this._$AB);
  }
  T(t) {
    this._$AH !== t && (this._$AR(), this._$AH = this.O(t));
  }
  _(t) {
    this._$AH !== lit_html_A && lit_html_a(this._$AH) ? this._$AA.nextSibling.data = t : this.T(l.createTextNode(t)), this._$AH = t;
  }
  $(t) {
    var _this$_$AH;
    const {
        values: i,
        _$litType$: s
      } = t,
      e = "number" == typeof s ? this._$AC(t) : (void 0 === s.el && (s.el = lit_html_S.createElement(V(s.h, s.h[0]), this.options)), s);
    if (((_this$_$AH = this._$AH) === null || _this$_$AH === void 0 ? void 0 : _this$_$AH._$AD) === e) this._$AH.p(i);else {
      const t = new R(e, this),
        s = t.u(this.options);
      t.p(i), this.T(s), this._$AH = t;
    }
  }
  _$AC(t) {
    let i = lit_html_C.get(t.strings);
    return void 0 === i && lit_html_C.set(t.strings, i = new lit_html_S(t)), i;
  }
  k(t) {
    lit_html_u(this._$AH) || (this._$AH = [], this._$AR());
    const i = this._$AH;
    let s,
      e = 0;
    for (const h of t) e === i.length ? i.push(s = new lit_html_k(this.O(lit_html_c()), this.O(lit_html_c()), this, this.options)) : s = i[e], s._$AI(h), e++;
    e < i.length && (this._$AR(s && s._$AB.nextSibling, e), i.length = e);
  }
  _$AR(t = this._$AA.nextSibling, s) {
    for ((_this$_$AP = this._$AP) === null || _this$_$AP === void 0 ? void 0 : _this$_$AP.call(this, !1, !0, s); t !== this._$AB;) {
      var _this$_$AP;
      const s = lit_html_i(t).nextSibling;
      lit_html_i(t).remove(), t = s;
    }
  }
  setConnected(t) {
    var _this$_$AP2;
    void 0 === this._$AM && (this._$Cv = t, (_this$_$AP2 = this._$AP) === null || _this$_$AP2 === void 0 ? void 0 : _this$_$AP2.call(this, t));
  }
}
class H {
  get tagName() {
    return this.element.tagName;
  }
  get _$AU() {
    return this._$AM._$AU;
  }
  constructor(t, i, s, e, h) {
    this.type = 1, this._$AH = lit_html_A, this._$AN = void 0, this.element = t, this.name = i, this._$AM = e, this.options = h, s.length > 2 || "" !== s[0] || "" !== s[1] ? (this._$AH = Array(s.length - 1).fill(new String()), this.strings = s) : this._$AH = lit_html_A;
  }
  _$AI(t, i = this, s, e) {
    const h = this.strings;
    let o = !1;
    if (void 0 === h) t = M(this, t, i, 0), o = !lit_html_a(t) || t !== this._$AH && t !== lit_html_E, o && (this._$AH = t);else {
      const e = t;
      let n, r;
      for (t = h[0], n = 0; n < h.length - 1; n++) r = M(this, e[s + n], i, n), r === lit_html_E && (r = this._$AH[n]), o || (o = !lit_html_a(r) || r !== this._$AH[n]), r === lit_html_A ? t = lit_html_A : t !== lit_html_A && (t += (r !== null && r !== void 0 ? r : "") + h[n + 1]), this._$AH[n] = r;
    }
    o && !e && this.j(t);
  }
  j(t) {
    t === lit_html_A ? this.element.removeAttribute(this.name) : this.element.setAttribute(this.name, t !== null && t !== void 0 ? t : "");
  }
}
class I extends H {
  constructor() {
    super(...arguments), this.type = 3;
  }
  j(t) {
    this.element[this.name] = t === lit_html_A ? void 0 : t;
  }
}
class L extends H {
  constructor() {
    super(...arguments), this.type = 4;
  }
  j(t) {
    this.element.toggleAttribute(this.name, !!t && t !== lit_html_A);
  }
}
class lit_html_z extends H {
  constructor(t, i, s, e, h) {
    super(t, i, s, e, h), this.type = 5;
  }
  _$AI(t, i = this) {
    var _M;
    if ((t = (_M = M(this, t, i, 0)) !== null && _M !== void 0 ? _M : lit_html_A) === lit_html_E) return;
    const s = this._$AH,
      e = t === lit_html_A && s !== lit_html_A || t.capture !== s.capture || t.once !== s.once || t.passive !== s.passive,
      h = t !== lit_html_A && (s === lit_html_A || e);
    e && this.element.removeEventListener(this.name, this, s), h && this.element.addEventListener(this.name, this, t), this._$AH = t;
  }
  handleEvent(t) {
    var _this$options$host, _this$options;
    "function" == typeof this._$AH ? this._$AH.call((_this$options$host = (_this$options = this.options) === null || _this$options === void 0 ? void 0 : _this$options.host) !== null && _this$options$host !== void 0 ? _this$options$host : this.element, t) : this._$AH.handleEvent(t);
  }
}
class Z {
  constructor(t, i, s) {
    this.element = t, this.type = 6, this._$AN = void 0, this._$AM = i, this.options = s;
  }
  get _$AU() {
    return this._$AM._$AU;
  }
  _$AI(t) {
    M(this, t);
  }
}
const lit_html_j = (/* unused pure expression or super */ null && ({
    M: lit_html_h,
    P: o,
    A: lit_html_n,
    C: 1,
    L: lit_html_N,
    R,
    D: lit_html_d,
    V: M,
    I: lit_html_k,
    H,
    N: L,
    U: lit_html_z,
    B: I,
    F: Z
  })),
  B = lit_html_t.litHtmlPolyfillSupport;
B !== null && B !== void 0 && B(lit_html_S, lit_html_k), ((_t$litHtmlVersions = lit_html_t.litHtmlVersions) !== null && _t$litHtmlVersions !== void 0 ? _t$litHtmlVersions : lit_html_t.litHtmlVersions = []).push("3.3.3");
const D = (t, i, s) => {
  var _s$renderBefore;
  const e = (_s$renderBefore = s === null || s === void 0 ? void 0 : s.renderBefore) !== null && _s$renderBefore !== void 0 ? _s$renderBefore : i;
  let h = e._$litPart$;
  if (void 0 === h) {
    var _s$renderBefore2;
    const t = (_s$renderBefore2 = s === null || s === void 0 ? void 0 : s.renderBefore) !== null && _s$renderBefore2 !== void 0 ? _s$renderBefore2 : null;
    e._$litPart$ = h = new lit_html_k(i.insertBefore(lit_html_c(), t), t, void 0, s !== null && s !== void 0 ? s : {});
  }
  return h._$AI(t), h;
};

// EXTERNAL MODULE: ./node_modules/.pnpm/[email protected][email protected]/node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[3].use[1]!./node_modules/.pnpm/[email protected][email protected][email protected][email protected]/node_modules/postcss-loader/dist/cjs.js??ruleSet[1].rules[3].use[2]!./node_modules/.pnpm/[email protected][email protected][email protected]/node_modules/less-loader/dist/cjs/index.js!./src/plugin/popup/index.less
var popup = __webpack_require__(284);
;// ./src/plugin/popup/index.less

      
      
      
      
      
      
      
      
      

var popup_options = {};

popup_options.styleTagTransform = (styleTagTransform_default()());
popup_options.setAttributes = (setAttributesWithoutAttributes_default()());
popup_options.insert = (insertBySelector_default()().bind)(null, ":root");
popup_options.domAPI = (styleDomAPI_default()());
popup_options.insertStyleElement = (insertStyleElement_default()());

var popup_update = injectStylesIntoStyleTag_default()()(popup/* default */.A, popup_options);




       /* harmony default export */ const plugin_popup = (popup/* default */.A && popup/* default */.A.locals ? popup/* default */.A.locals : undefined);

;// ./src/plugin/popup/index.ts

let popup_ = t => t,
  _t,
  _t2,
  _t3,
  _t4,
  _t5;

























let Popup = class Popup {
  constructor(logger, messaging, storage, time) {
    this.logger = logger;
    this.messaging = messaging;
    this.storage = storage;
    this.time = time;
    this.defaults = () => ({
      sha: '',
      info: '',
      updateTime: '',
      updateTimeFull: '',
      newSha: '',
      versionInfo: '',
      updateAvailable: false,
      updateButtonDisabled: false,
      showSettingPanel: false,
      progress: 0,
      animationState: 0,
      configValue: _objectSpread2({}, this.configOriginal)
    });
    this.testAnimationIndex = 0;
    this.testAnimationList = [[1, 0], [1, 10], [1, 30], [1, 80], [1, 100], [2, 100], [2, 5], [1, 5], [0, 0]];
    this.openLink = ev => {
      if (ev.target instanceof HTMLAnchorElement) {
        const href = ev.target.href;
        if (href && !href.startsWith(document.location.origin + document.location.pathname)) {
          ev.preventDefault();
          openInTab(href);
          this.provider.close();
        }
      }
    };
    this.downloadStatus = async data => {
      this.state.updateButtonDisabled = data.run;
      this.state.animationState = data.run ? 1 : 0;
      this.state.info = data.info;
      this.state.progress = data.progress || 0;
      if (data.complete) {
        await sleep(1000);
        this.state.progress = 100;
        this.state.animationState = 2;
        this.state.updateButtonDisabled = false;
        await this.checkVersion();
        await sleep(500);
        this.state.progress = 5;
        await sleep(500);
        this.state.animationState = 1;
      }
    };
  }
  async loadConfig() {
    this.configOriginal = _objectSpread2(_objectSpread2({}, this.storage.defaults.config), await this.storage.get('config'));
    this.state.configValue = _objectSpread2({}, this.configOriginal);
  }
  testAnimation() {
    const a = this.testAnimationList[this.testAnimationIndex];
    this.testAnimationIndex++;
    if (!this.testAnimationList[this.testAnimationIndex]) {
      this.testAnimationIndex = 0;
    }
    this.state.animationState = a[0];
    this.state.progress = a[1];
  }
  async checkVersion() {
    var _await$this$storage$g;
    this.state.versionInfo = '检查中...';
    const currentSha = await this.messaging.emit('get-tag-sha', undefined);
    const updateTime = (_await$this$storage$g = await this.storage.get('databaseInfo')) === null || _await$this$storage$g === void 0 ? void 0 : _await$this$storage$g.check;
    this.state.sha = currentSha ? currentSha.slice(0, 7) : 'N/A';
    this.state.updateTime = updateTime ? this.time.diff(updateTime) : 'N/A';
    this.state.updateTimeFull = updateTime ? new Date(updateTime).toLocaleString() : 'N/A';
    try {
      const data = await this.messaging.emit('check-database', {
        force: true
      });
      this.logger.log('Release Data', data);
      const hasNewData = this.state.updateAvailable = !currentSha.startsWith(data.sha);
      if (hasNewData) {
        this.state.newSha = data.sha.slice(0, 7);
        this.state.versionInfo = `有更新!`;
      } else {
        this.state.versionInfo = '已是最新版本';
      }
    } catch (ex) {
      this.logger.error('获取失败', ex);
      const message = (ex instanceof Error ? ex.message : '未知错误') || '未知错误';
      this.state.versionInfo = `获取失败:${message}`;
    }
  }
  async updateButtonClick() {
    this.state.updateButtonDisabled = true;
    await this.messaging.emit('update-database', {
      force: true,
      recheck: false
    });
  }
  logoTemplate(progress = 0) {
    const PushRodStyle = `transform: translate(${progress / 400 * 70}px, 0)`;
    const EnemaStyle = `transform: scaleX(${progress / 100})`;
    return w(_t || (_t = popup_`<svg width="160" height="160" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 200 200">
            <defs>
                <clipPath id="clip">
                    <rect width="200" height="200" />
                </clipPath>
            </defs>
            <g id="Syringe" clip-path="url(#clip)">
                <g id="PushRod" style="${0}">
                    <g transform="translate(-39 -312)">
                        <g transform="translate(131 403)" fill-bg stroke-accent stroke-width="6">
                            <rect width="78" height="18" rx="6" stroke="none" />
                            <rect x="3" y="3" width="72" height="12" rx="3" fill="none" />
                        </g>
                        <g transform="translate(203 391)" fill-bg stroke-accent stroke-width="6">
                            <rect width="18" height="43" rx="9" stroke="none" />
                            <rect x="3" y="3" width="12" height="37" rx="6" fill="none" />
                        </g>
                    </g>
                </g>
                <g transform="translate(56 85)" fill-bg stroke-accent stroke-width="6">
                    <rect width="83" height="30" rx="6" stroke="none" />
                    <rect x="3" y="3" width="77" height="24" rx="3" fill="none" />
                </g>
                <g id="Enema" style="${0}">
                    <rect width="70" height="27" transform="translate(61 86)" fill-sa />
                </g>
                <path
                    id="Enema2"
                    d="M27.426,86.36s5.65.007,13.6.006S57.64,83.357,57.64,83.357L38.015,102.982,24.409,89.377l3.015-3.015Z"
                    transform="translate(107.906 10.036) rotate(45)"
                    fill-sa
                />
                <g transform="translate(-39 -312)">
                    <g transform="translate(95 397)" fill="none" stroke-accent stroke-width="6">
                        <rect width="83" height="30" rx="6" stroke="none" />
                        <rect x="3" y="3" width="77" height="24" rx="3" fill="none" />
                    </g>
                    <g transform="translate(82 403)" fill-sa stroke-accent stroke-width="6">
                        <rect width="19" height="18" rx="6" stroke="none" />
                        <rect x="3" y="3" width="13" height="12" rx="3" fill="none" />
                    </g>
                    <rect width="29" height="6" rx="3" transform="translate(58 409)" fill-accent />
                    <g transform="translate(172 381)" fill-bg stroke-accent stroke-width="6">
                        <rect width="18" height="62" rx="9" stroke="none" />
                        <rect x="3" y="3" width="12" height="56" rx="6" fill="none" />
                    </g>
                    <g transform="translate(119 398)" fill-bg stroke-accent stroke-width="3">
                        <rect width="4" height="11" rx="2" stroke="none" />
                        <rect x="1.5" y="1.5" width="1" height="8" rx="0.5" fill="none" />
                    </g>
                    <g transform="translate(131 398)" fill-bg stroke-accent stroke-width="3">
                        <rect width="4" height="11" rx="2" stroke="none" />
                        <rect x="1.5" y="1.5" width="1" height="8" rx="0.5" fill="none" />
                    </g>
                    <g transform="translate(144 398)" fill-bg stroke-accent stroke-width="3">
                        <rect width="4" height="11" rx="2" stroke="none" />
                        <rect x="1.5" y="1.5" width="1" height="8" rx="0.5" fill="none" />
                    </g>
                    <g transform="translate(156 398)" fill-bg stroke-accent stroke-width="3">
                        <rect width="4" height="11" rx="2" stroke="none" />
                        <rect x="1.5" y="1.5" width="1" height="8" rx="0.5" fill="none" />
                    </g>
                </g>
            </g>
        </svg>`), PushRodStyle, EnemaStyle);
  }
  changeConfigValue(key, value) {
    this.state.configValue = _objectSpread2(_objectSpread2({}, this.state.configValue), {}, {
      [key]: value
    });
  }
  changeConfigUnsaved() {
    if (!this.configOriginal) return false;
    const keys = [...Object.keys(this.configOriginal), ...Object.keys(this.state.configValue)];
    return keys.some(key => this.configOriginal[key] !== this.state.configValue[key]);
  }
  async saveConfig() {
    await this.storage.set('config', this.state.configValue);
    await this.loadConfig();
    await sleep(200);
    this.provider.close();
  }
  settingPanelTemplate() {
    const state = this.state;
    const checkboxList = [{
      key: 'translateUi',
      name: '翻译界面'
    }, {
      key: 'translateTag',
      name: '翻译标签'
    }, {
      key: 'translateTimestamp',
      name: '翻译时间戳'
    }, {
      key: 'showIntroduce',
      name: '标签介绍'
    }, {
      key: 'showIcon',
      name: '显示标签图标'
    }, {
      key: 'tagTip',
      name: '搜索提示'
    }, {
      key: 'autoUpdate',
      name: '自动更新'
    }];
    return lit_html_b(_t2 || (_t2 = popup_`
            <div id="ehs-setting-panel" class="ehs-panel ${0}">
                <div class="header">
                    <div>设置</div>
                    <div class="cushion"></div>
                    <div>
                        <a
                            href="#"
                            @click="${0}"
                            >✕</a
                        >
                    </div>
                </div>
                <form id="settingForm" class="content">
                    ${0}
                    <div class="image-level">
                        <p class="range-title">
                            介绍图片:
                            <span
                                >${0}</span
                            >
                        </p>
                        <div class="range-box">
                            <input
                                type="range"
                                min="0"
                                max="300"
                                @change=${0}
                                .value="${0}"
                            />
                        </div>
                        <div class="range-label" @click="${0}">
                            <a href="#" @click="${0}"
                                >禁用</a
                            >
                            <a href="#" @click="${0}"
                                >非H</a
                            >
                            <a href="#" @click="${0}"
                                >R18</a
                            >
                            <a href="#" @click="${0}"
                                >R18G</a
                            >
                        </div>
                    </div>
                    <div class="override-db">
                        <label for="overrideDbUrl">外部数据库: </label>
                        <input
                            id="overrideDbUrl"
                            type="text"
                            pattern="https?://.+|"
                            value="${0}"
                            placeholder="https://eg.com/data.html.json"
                            @change="${0}"
                        />
                    </div>
                </form>
                <button
                    @click="${0}"
                    class="action ${0}"
                >
                    保存
                </button>
            </div>
        `), state.showSettingPanel ? 'ehs-show' : '', ev => {
      state.showSettingPanel = false;
      ev.preventDefault();
    }, checkboxList.map(item => lit_html_b(_t3 || (_t3 = popup_`
                            <div class="checkbox-item">
                                <label>
                                    <input
                                        type="checkbox"
                                        @change=${0}
                                        ?checked="${0}"
                                    />
                                    ${0}
                                    <svg
                                        class="${0}"
                                        viewBox="0 0 100 100"
                                        xmlns="http://www.w3.org/2000/svg"
                                    >
                                        <path d="M 10 10 L 90 90"></path>
                                        <path d="M 90 10 L 10 90"></path>
                                    </svg>
                                </label>
                            </div>
                        `), e => this.changeConfigValue(item.key, e.target.checked), this.state.configValue[item.key], item.name, this.state.configValue[item.key] ? 'checked' : '')), ['隐藏全部', '隐藏色情图片', '隐藏引起不适的图片', '全部显示'][state.configValue.introduceImageLevel], e => {
      const value = Math.round(parseInt(e.target.value, 10) / 100);
      this.changeConfigValue('introduceImageLevel', value + 1);
      this.changeConfigValue('introduceImageLevel', value);
    }, String(state.configValue.introduceImageLevel * 100), ev => ev.preventDefault(), () => this.changeConfigValue('introduceImageLevel', ImageLevel.hide), () => this.changeConfigValue('introduceImageLevel', ImageLevel.nonH), () => this.changeConfigValue('introduceImageLevel', ImageLevel.r18), () => this.changeConfigValue('introduceImageLevel', ImageLevel.r18g), this.state.configValue.overrideDbUrl || '', e => {
      const el = e.target;
      const value = String(el.value || '').trim();
      el.value = value;
      let valid = true;
      if (value) {
        try {
          const u = new URL(value);
          if (u.protocol !== 'http:' && u.protocol !== 'https:') {
            valid = false;
          }
        } catch (_unused) {
          valid = false;
        }
      }
      el.classList.toggle('invalid', !valid);
      if (valid) {
        this.changeConfigValue('overrideDbUrl', value);
      }
    }, async () => {
      await this.saveConfig();
    }, this.changeConfigUnsaved() ? 'primary' : '');
  }
  mainPanelTemplate() {
    const state = this.state;
    return lit_html_b(_t4 || (_t4 = popup_`<div id="ehs-main-panel" class="ehs-panel ${0}">
            <div class="header">
                <div>
                    <a href="${0}" class="monospace minor">v${0}</a>
                </div>
                <div class="cushion"></div>
                <div>
                    <a
                        id="settingSwitch"
                        href="#"
                        @click="${0}"
                        >设置</a
                    >
                </div>
            </div>
            <div class="content">
                <div class="logo-box" style="height: 205px;">
                    <div
                        class="logo ${0}"
                        @click="${0}"
                    >
                        ${0}
                    </div>
                    <div id="info">${0}</div>
                </div>
                <table>
                    <tr>
                        <th>标签版本:</th>
                        <td>
                            <a href="https://github.com/EhTagTranslation/Database/tree/${0}" class="monospace"
                                >${0}</a
                            >
                        </td>
                    </tr>
                    <tr>
                        <th>上次更新:</th>
                        <td>
                            <span>${0}</span>
                        </td>
                    </tr>
                    <tr>
                        <th>更新检查:</th>
                        <td>
                            <span class="${0}">
                                ${0}
                                <a
                                    class="monospace ${0}"
                                    href="https://github.com/EhTagTranslation/Database/tree/${0}"
                                >
                                    ${0}
                                </a>
                            </span>
                        </td>
                    </tr>
                </table>
            </div>
            <button
                @click="${0}"
                ?disabled=${0}
                class="action ${0}"
                id="updateButton"
            >
                更新
            </button>
        </div>`), state.showSettingPanel ? 'ehs-hide' : '', packageJson.homepage, packageJson.version, ev => {
      state.showSettingPanel = true;
      ev.preventDefault();
    }, ['', 'prominent', 'prominent injection'][state.animationState] || '', () => {
      this.testAnimation();
    }, this.logoTemplate(state.progress), state.info, state.sha, state.sha || ' --- ', state.updateTime || ' --- ', state.updateAvailable ? 'hasNew' : '', state.versionInfo, state.updateAvailable ? '' : 'hidden', state.newSha, state.newSha || '', () => this.updateButtonClick(), state.updateButtonDisabled, state.updateAvailable ? 'primary' : '');
  }
  template() {
    const state = this.state;
    return lit_html_b(_t5 || (_t5 = popup_` <div id="eh-syringe-popup-root">
            ${0} ${0}
        </div>`), this.mainPanelTemplate(), state.configValue ? this.settingPanelTemplate() : lit_html_A);
  }
  mount(el, provider) {
    if (this.el != null) throw new Error('Injected twice');
    this.el = el;
    this.provider = provider;
    this.resetState();
    this.updateView();
    provider.onopen(() => this.onopen().catch(this.logger.error));
    provider.onclose(() => this.onclose());
  }
  resetState() {
    this.state = new Proxy(this.defaults(), {
      set: (target, key, value, receiver) => {
        const r = Reflect.set(target, key, value, receiver);
        this.updateView();
        return r;
      }
    });
  }
  async onopen() {
    var _this$downloadStatusS;
    this.resetState();
    await this.loadConfig();
    this.updateView();
    await sleep(0);
    await this.checkVersion();
    (_this$downloadStatusS = this.downloadStatusSub) !== null && _this$downloadStatusS !== void 0 ? _this$downloadStatusS : this.downloadStatusSub = this.messaging.on('updating-database', this.downloadStatus);
    this.el.addEventListener('click', this.openLink);
  }
  onclose() {
    if (this.downloadStatusSub) {
      this.messaging.off(this.downloadStatusSub);
      this.downloadStatusSub = undefined;
    }
    this.el.removeEventListener('click', this.openLink);
    this.state.showSettingPanel = false;
  }
  updateView() {
    D(this.template(), this.el);
  }
};
Popup = __decorate([Service(), __metadata("design:paramtypes", [Logger, messaging_Messaging, Storage, DateTime])], Popup);

// EXTERNAL MODULE: ./node_modules/.pnpm/[email protected][email protected]/node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[3].use[1]!./node_modules/.pnpm/[email protected][email protected][email protected][email protected]/node_modules/postcss-loader/dist/cjs.js??ruleSet[1].rules[3].use[2]!./node_modules/.pnpm/[email protected][email protected][email protected]/node_modules/less-loader/dist/cjs/index.js!./src/user-script/popup-host.less
var popup_host = __webpack_require__(64);
;// ./src/user-script/popup-host.less

      
      
      
      
      
      
      
      
      

var popup_host_options = {};

popup_host_options.styleTagTransform = (styleTagTransform_default()());
popup_host_options.setAttributes = (setAttributesWithoutAttributes_default()());
popup_host_options.insert = (insertBySelector_default()().bind)(null, ":root");
popup_host_options.domAPI = (styleDomAPI_default()());
popup_host_options.insertStyleElement = (insertStyleElement_default()());

var popup_host_update = injectStylesIntoStyleTag_default()()(popup_host/* default */.A, popup_host_options);




       /* harmony default export */ const user_script_popup_host = (popup_host/* default */.A && popup_host/* default */.A.locals ? popup_host/* default */.A.locals : undefined);

;// ./src/user-script/popup-host.ts










function getNumber(key, defaultValue) {
  const value = localStorage.getItem(key);
  if (!value) return defaultValue;
  const parsed = Number.parseFloat(value);
  if (Number.isNaN(parsed)) return defaultValue;
  return parsed;
}
function clamp(value, min, max) {
  if (value < min) value = min;else if (value > max) value = max;
  return value;
}
const clampX = value => clamp(value, 4, document.documentElement.clientWidth - 44);
const clampY = value => clamp(value, 4, document.documentElement.clientHeight - 44);
function dragButton(el, click) {
  const initX = clampX(getNumber(`eh-popup-button-x`, 0.02) * document.documentElement.clientWidth);
  const initY = clampY(getNumber(`eh-popup-button-y`, 0.02) * document.documentElement.clientHeight);
  // set the element's init position:
  el.style.bottom = `${initY}px`;
  el.style.right = `${initX}px`;
  let mouseX = 0,
    mouseY = 0,
    startX = 0,
    startY = 0;
  el.addEventListener('pointerdown', dragMouseDown, {
    passive: false
  });
  el.addEventListener('click', elementClick, {
    passive: false
  });
  let moved = false;
  function dragMouseDown(e) {
    e.preventDefault();
    // get the mouse cursor position at startup:
    startX = mouseX = e.clientX;
    startY = mouseY = e.clientY;
    moved = false;
    document.addEventListener('pointerup', closeDragElement, {
      passive: false
    });
    document.addEventListener('pointermove', elementDrag, {
      passive: false
    });
  }
  function elementDrag(e) {
    e.preventDefault();
    const currentX = Number.parseFloat(el.style.right);
    const currentY = Number.parseFloat(el.style.bottom);
    // calculate the new cursor position:
    const diffX = mouseX - e.clientX;
    const diffY = mouseY - e.clientY;
    mouseX = e.clientX;
    mouseY = e.clientY;
    const nextX = clampX(currentX + diffX);
    const nextY = clampY(currentY + diffY);
    // set the element's new position:
    el.style.right = `${nextX}px`;
    el.style.bottom = `${nextY}px`;
    if (Math.abs(mouseX - startX) + Math.abs(mouseY - startY) > 10) {
      moved = true;
    }
  }
  function closeDragElement(e) {
    e.preventDefault();
    // stop moving when mouse button is released:
    document.removeEventListener('pointerup', closeDragElement);
    document.removeEventListener('pointermove', elementDrag);
    const finalX = clampX(Number.parseFloat(el.style.right));
    const finalY = clampY(Number.parseFloat(el.style.bottom));
    el.style.right = `${finalX}px`;
    el.style.bottom = `${finalY}px`;
    localStorage.setItem(`eh-popup-button-x`, String(finalX / document.documentElement.clientWidth));
    localStorage.setItem(`eh-popup-button-y`, String(finalY / document.documentElement.clientHeight));
  }
  function elementClick(e) {
    if (moved) {
      moved = false;
      return;
    }
    click(e);
  }
}
function shouldShowPopup() {
  if (isHathNetwork(location.hostname)) return false;
  if (/^\/mpv\//i.test(location.pathname) || location.pathname === '/archiver.php' || location.pathname === '/gallerytorrents.php' || location.pathname === '/gallerypopups.php') return false;
  return true;
}
function createPopup() {
  if (!shouldShowPopup()) {
    return;
  }
  const button = document.body.appendChild(document.createElement('div'));
  button.id = 'eh-syringe-popup-button';
  button.title = packageJson.displayName;
  const badge = button.appendChild(document.createElement('div'));
  badge.id = 'eh-syringe-popup-badge';
  setBadge({
    text: ''
  });
  const popupBack = document.body.appendChild(document.createElement('div'));
  popupBack.id = 'eh-syringe-popup-back';
  popupBack.lang = 'zh-hans';
  const popup = popupBack.appendChild(document.createElement('div'));
  popup.id = 'eh-syringe-popup';
  const closeListeners = [];
  const openListeners = [];
  popupBack.classList.add('close');
  popupBack.ontransitionend = ev => {
    if (ev.target !== popupBack) return;
    if (popupBack.classList.contains('opening')) {
      popupBack.classList.remove('opening', 'close');
      popupBack.classList.add('open');
    }
    if (popupBack.classList.contains('closing')) {
      popupBack.classList.remove('closing', 'open');
      popupBack.classList.add('close');
      closeListeners.forEach(l => l());
    }
  };
  const open = () => {
    openListeners.forEach(l => l());
    popupBack.classList.add('opening');
  };
  const close = () => {
    popupBack.classList.add('closing');
  };
  services_Container.get(Popup).mount(popup, {
    close: close,
    onopen(listener) {
      openListeners.push(listener);
    },
    onclose(listener) {
      closeListeners.push(listener);
    }
  });
  popupBack.addEventListener('click', ev => {
    if (ev.target === popupBack && popupBack.classList.contains('open')) close();
  });
  dragButton(button, () => {
    if (popupBack.classList.contains('close')) open();
  });
}
;// ./src/user-script/index.ts













function main() {
  services_Container.get(DatabaseUpdater);
  services_Container.get(TagDatabase);
  services_Container.get(Syringe);
  function start() {
    services_Container.get(TagContextMenu);
    services_Container.get(ImageContextMenu);
    services_Container.get(Suggest);
    services_Container.get(AutoUpdate);
    services_Container.get(TagTip);
    services_Container.get(Introduce);
    createPopup();
  }
  ready(start);
}
// 为轻型用户脚本实现添加简单过滤
const LOADED_KEY = `EhTagTranslation:EhSyringeLoaded`;
if (!(LOADED_KEY in window)) {
  Object.defineProperty(window, LOADED_KEY, {
    value: true
  });
  if (isValidHost(location.hostname)) {
    main();
  }
}
/******/ })()
;
//# sourceMappingURL=https://github.com/EhTagTranslation/EhSyringe/releases/download/v3.5.1/ehsyringe.user.js.map